@g1cloud/bpmn-modeler-next 5.0.0-alpha.73 → 5.0.0-alpha.74
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/bpmn-modeler.js +6748 -6729
- package/dist/bpmn-modeler.umd.cjs +60 -60
- package/package.json +1 -1
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
(function(se,It){typeof exports=="object"&&typeof module<"u"?It(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],It):(se=typeof globalThis<"u"?globalThis:se||self,It(se.BpmnModeler={},se.Vue))})(this,(function(se,It){"use strict";var IL=Object.defineProperty;var BL=(se,It,Ar)=>It in se?IL(se,It,{enumerable:!0,configurable:!0,writable:!0,value:Ar}):se[It]=Ar;var to=(se,It,Ar)=>BL(se,typeof It!="symbol"?It+"":It,Ar);const Ar=["startEvent","endEvent","userTask","serviceTask","task","sendTask","receiveTask","exclusiveGateway","parallelGateway","subProcess","boundaryEvent"],cs=["startEvent","endEvent","userTask","serviceTask","task","sendTask","receiveTask","exclusiveGateway","parallelGateway"];function gd(e){return Ar.includes(e)}function yd(e){return cs.includes(e)}const vd="http://g1project.net/spec/bpmn/bwl/1.0",ju="bwl",Hu=["top-left","top","top-right","right","bottom-right","bottom","bottom-left","left"],bd={name:"bwl-hints",uri:vd,prefix:ju,xml:{tagAlias:"lowerCase"},types:[{name:"Placement",superClass:["Element"],properties:[{name:"anchor",isAttr:!0,type:"String"},{name:"side",isAttr:!0,type:"String"},{name:"offset",isAttr:!0,type:"Real"}]},{name:"Members",superClass:["Element"],properties:[{name:"refs",isAttr:!0,type:"String"}]},{name:"BandHint",extends:["bpmn:FlowNode"],properties:[{name:"band",isAttr:!0,type:"Integer"}]},{name:"PoolOrderHint",extends:["bpmn:Participant"],properties:[{name:"poolOrder",isAttr:!0,type:"Integer"}]}]},zu="bwl.undoEpisode",xd=new WeakSet;function H0(e){xd.has(e)||(e.register(zu,{preExecute(t){try{t.run()}catch(n){t.error=n}}}),xd.add(e))}function _d(e,t){H0(e);const n={run:t};if(e.execute(zu,n),n.error!==void 0)throw e.canUndo()&&e.undo(),n.error}const wd=["participant.add","participant.update","node.add","node.update","sequenceFlow.add","sequenceFlow.update","messageFlow.add","messageFlow.update","dataStore.add","dataStore.update","dataAssociation.add","association.add","annotation.add","annotation.update","group.add","group.update","element.remove"],z0={description:"생략 = 보존, null = 제거.",anyOf:[{type:"string"},{type:"null"}]},G0={type:"object",description:"레인. 배열 선언 순서 = 풀 내 상→하 순서.",properties:{id:{type:"string"},name:{type:"string"}},required:["id"],additionalProperties:!1},V0={type:"object",description:"풀(participant). 레인은 여기 선언하고 노드가 lane 인자로 배정된다 — 별도 레인 op 없음.",properties:{id:{type:"string",description:"문서 내 유일, XML NCName(공백 없이 문자/밑줄로 시작)."},name:{type:"string"},blackBox:{type:"boolean",description:"true = 내부 프로세스 없는 블랙박스 풀."},lanes:{type:"array",items:{$ref:"#/$defs/irLane"}}},required:["id"],additionalProperties:!1},W0={type:"object",description:"플로우 노드. 좌표는 지정하지 않는다 — 배치는 resolver 가 결정한다. ⚠ type 집합은 **읽을 수 있는 것보다 좁다** — describe 는 subProcess·boundaryEvent 도 노드로 내지만 그 둘을 새로 만드는 배치는 미실증이라 여기서 받지 않는다(B-87 ⓐ).",properties:{id:{type:"string"},type:{type:"string",enum:[...cs]},name:{type:"string"},participant:{type:"string",description:"소속 풀 id(협업 문서)."},lane:{type:"string",description:"소속 레인 id(풀 정의에 선언된 것)."}},required:["id","type"],additionalProperties:!1},U0={type:"object",description:"분기 조건 — 게이트웨이가 아닌 플로우에 붙인다. MVP 는 label 만.",properties:{label:{type:"string"}},required:["label"],additionalProperties:!1},Y0={type:"object",description:"시퀀스 플로우(같은 풀 안 노드 간).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"},name:{type:"string"},condition:{$ref:"#/$defs/irFlowCondition"}},required:["id","source","target"],additionalProperties:!1},q0={type:"object",description:"메시지 플로우(풀 경계를 넘는 연결 — 노드 또는 블랙박스 풀 자체가 끝점).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"},name:{type:"string"}},required:["id","source","target"],additionalProperties:!1},K0={type:"object",properties:{id:{type:"string"},name:{type:"string"}},required:["id"],additionalProperties:!1},X0={type:"object",description:"데이터 입출력 연관. 방향 = source→target(태스크→스토어 = 쓰기, 스토어→태스크 = 읽기).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"}},required:["source","target"],additionalProperties:!1},Z0={type:"object",properties:{id:{type:"string"},text:{type:"string"}},required:["id","text"],additionalProperties:!1},Q0={type:"object",description:"연관선(주석 ↔ 요소).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"}},required:["source","target"],additionalProperties:!1},J0={type:"object",description:"그룹 — members(요소 id 목록)가 bwl:members 힌트로 기록되고 바운즈는 멤버 bbox 로 산출된다.",properties:{id:{type:"string"},name:{type:"string"},members:{type:"array",items:{type:"string"}}},required:["id"],additionalProperties:!1},ew={type:"object",description:"주석 방위 힌트 — 앵커 요소 기준 상대 배치. 있으면 결정적 배치, 없으면 휴리스틱.",properties:{anchor:{type:"string",description:"기준 요소 id."},side:{type:"string",enum:[...Hu]},offset:{type:"number",description:"앵커 가장자리 → 주석 가장자리 간격(px). 생략 시 50."}},required:["anchor","side"],additionalProperties:!1};function ln(e,t){return{type:"object",description:t.description,properties:{kind:{const:e},...t.properties},required:["kind",...t.required??[]],additionalProperties:!1}}const tw={"participant.add":ln("participant.add",{description:"풀 추가. order = 풀 세로 순서 힌트 — **작을수록 위**(생략 시 op 순서가 곧 배치 순서). 값은 상대 순서만 쓰므로 1,2,3… 연속이든 10,20,30 간격이든 같다.",properties:{participant:{$ref:"#/$defs/irParticipant"},order:{type:"integer"}},required:["participant"]}),"participant.update":ln("participant.update",{description:"풀 이름/레인 갱신. lanes 는 전체 재선언(생략 = 보존) — 기존 레인을 유지하려면 함께 다시 나열한다.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},lanes:{type:"array",items:{$ref:"#/$defs/irLane"}}},required:["id"]}),"node.add":ln("node.add",{description:'플로우 노드 추가. band = 가로 밴드 순번 힌트(주 흐름 0, 갈래 1, 2…) — 위/아래가 아니라 "주 흐름에서 몇 번째 갈래"다. 행 배치(어느 갈래가 위/아래인지)는 호스트가 정한다(대칭·메시지 방향). 레인이 있으면 그 레인 안의 밴드다 — 한 레인 안에서 게이트웨이 출구를 갈라 놓을 때 쓴다. 컨테이너(풀·레인)는 밴드 수만큼 자란다.',properties:{node:{$ref:"#/$defs/irNode"},band:{type:"integer",description:"0 이상 정수(음수는 payload-invalid 로 거부)."}},required:["node"]}),"node.update":ln("node.update",{description:"노드 이름/레인/타입/밴드 갱신. lane = 레인 재배정(이동), type = 태스크·이벤트 타입 전환, band = 행 재지정. 🔴 **기존 문서에서 band 는 「몇 번째 갈래」가 아니라 그 컨테이너의 행 번호**다(describe 의 hints.bands 가 보여 주는 값) — 신규 배치의 band 가 대칭으로 펴지는 것과 다르다. 간선이 도형을 가로지르거나 반대 방향으로 겹칠 때 그 노드를 다른 행으로 옮기는 채널이다.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},lane:{type:"string"},type:{type:"string",enum:[...cs]},band:{type:"integer",description:"0 이상 정수(음수는 payload-invalid 로 거부)."}},required:["id"]}),"sequenceFlow.add":ln("sequenceFlow.add",{description:"시퀀스 플로우 추가. 분기 조건은 게이트웨이가 아닌 플로우의 condition 에 싣는다.",properties:{flow:{$ref:"#/$defs/irSequenceFlow"}},required:["flow"]}),"sequenceFlow.update":ln("sequenceFlow.update",{description:"시퀀스 플로우 이름/조건/끝점 갱신. condition: null = 조건 제거. source/target = 끝점 재배선 — 중간 삽입은 기존 플로우를 지우지 말고 이것으로 한쪽 끝을 옮긴 뒤 새 플로우를 추가한다.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},condition:{description:"생략 = 보존, null = 제거.",anyOf:[{$ref:"#/$defs/irFlowCondition"},{type:"null"}]},source:{description:"새 출발 노드 id(생략 = 보존). 같은 배치에서 추가한 노드도 지목할 수 있다.",type:"string"},target:{description:"새 도착 노드 id(생략 = 보존). 같은 배치에서 추가한 노드도 지목할 수 있다.",type:"string"}},required:["id"]}),"messageFlow.add":ln("messageFlow.add",{description:"메시지 플로우 추가(풀 경계를 넘는 연결).",properties:{flow:{$ref:"#/$defs/irMessageFlow"}},required:["flow"]}),"messageFlow.update":ln("messageFlow.update",{description:"메시지 플로우 이름 갱신.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"}},required:["id"]}),"dataStore.add":ln("dataStore.add",{description:"데이터 스토어 추가(+ 입출력 연관 동반 가능).",properties:{dataStore:{$ref:"#/$defs/irDataStore"},associations:{type:"array",items:{$ref:"#/$defs/irDataAssociation"}}},required:["dataStore"]}),"dataStore.update":ln("dataStore.update",{description:"데이터 스토어 이름 갱신.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"}},required:["id"]}),"dataAssociation.add":ln("dataAssociation.add",{description:"기존 노드 ↔ 기존 데이터 스토어의 입출력 연관 추가.",properties:{association:{$ref:"#/$defs/irDataAssociation"}},required:["association"]}),"association.add":ln("association.add",{description:"주석 ↔ 요소 연관 추가(한쪽 끝은 주석). 주석 신설과 함께면 annotation.add 의 association 을 쓰고, 이 op 는 추가 연관(한 주석에 여러 연관)용.",properties:{association:{$ref:"#/$defs/irAssociation"}},required:["association"]}),"annotation.add":ln("annotation.add",{description:"텍스트 주석 추가. association 으로 대상 요소와 연결하고, placement 로 방위를 지정하면 결정적 배치된다.",properties:{annotation:{$ref:"#/$defs/irTextAnnotation"},association:{$ref:"#/$defs/irAssociation"},placement:{$ref:"#/$defs/bwlPlacement"}},required:["annotation"]}),"annotation.update":ln("annotation.update",{description:"주석 본문/방위 힌트 갱신. placement: null = 힌트 제거(휴리스틱 복귀). 주석 삭제는 element.remove.",properties:{id:{type:"string"},text:{type:"string"},placement:{description:"생략 = 보존, null = 힌트 제거.",anyOf:[{$ref:"#/$defs/bwlPlacement"},{type:"null"}]}},required:["id"]}),"group.add":ln("group.add",{description:"그룹 추가 — 바운즈는 members 의 bbox 로 산출되므로 좌표를 지정하지 않는다.",properties:{group:{$ref:"#/$defs/irGroup"}},required:["group"]}),"group.update":ln("group.update",{description:"그룹 이름/멤버 갱신. members 는 전체 재선언(생략 = 보존).",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},members:{type:"array",items:{type:"string"}}},required:["id"]}),"element.remove":ln("element.remove",{description:"요소 제거(카테고리 무관). 부착된 연결선은 함께 제거된다.",properties:{id:{type:"string"}},required:["id"]})},Ed={anyOf:wd.map(e=>tw[e])},nw={type:"object",description:"BPMN 문서에 요소를 추가·수정·삭제할 때 호출한다. 기존 요소는 describeProcess 가 노출하는 id 로 지정하고, 신규 요소 id 는 문서 내 유일한 XML NCName(공백 없이 문자/밑줄 시작)으로 짓는다. 좌표는 지정하지 않는다 — 배치는 서버가 결정하며, 필요하면 힌트(placement/band/order)로 의도만 전달하라.",properties:{ops:{type:"array",items:{$ref:"#/$defs/symbolicOp"}}},required:["ops"],additionalProperties:!1,$defs:{irLane:G0,irParticipant:V0,irNode:W0,irFlowCondition:U0,irSequenceFlow:Y0,irMessageFlow:q0,irDataStore:K0,irDataAssociation:X0,irTextAnnotation:Z0,irAssociation:Q0,irGroup:J0,bwlPlacement:ew,nullableString:z0,symbolicOp:Ed}};function Gu(e){return Array.prototype.concat.apply([],e)}const Zo=Object.prototype.toString,iw=Object.prototype.hasOwnProperty;function Tr(e){return e===void 0}function Vt(e){return e!==void 0}function no(e){return e==null}function De(e){return Zo.call(e)==="[object Array]"}function Xt(e){return Zo.call(e)==="[object Object]"}function Be(e){return Zo.call(e)==="[object Number]"}function Zt(e){const t=Zo.call(e);return t==="[object Function]"||t==="[object AsyncFunction]"||t==="[object GeneratorFunction]"||t==="[object AsyncGeneratorFunction]"||t==="[object Proxy]"}function Pn(e){return Zo.call(e)==="[object String]"}function rw(e){if(!De(e))throw new Error("must supply array")}function An(e,t){return!no(e)&&iw.call(e,t)}function ht(e,t){const n=ls(t);let i;return F(e,function(r,o){if(n(r,o))return i=r,!1}),i}function Sd(e,t){const n=ls(t);let i=De(e)?-1:void 0;return F(e,function(r,o){if(n(r,o))return i=o,!1}),i}function Ye(e,t){const n=ls(t);let i=[];return F(e,function(r,o){n(r,o)&&i.push(r)}),i}function F(e,t){let n,i;if(Tr(e))return;const r=De(e)?uw:cw;for(let o in e)if(An(e,o)&&(n=e[o],i=t(n,r(o)),i===!1))return n}function ow(e,t){if(Tr(e))return[];rw(e);const n=ls(t);return e.filter(function(i,r){return!n(i,r)})}function Tn(e,t,n){return F(e,function(i,r){n=t(n,i,r)}),n}function Mr(e,t){return!!Tn(e,function(n,i,r){return n&&t(i,r)},!0)}function Ki(e,t){return!!ht(e,t)}function pn(e,t){let n=[];return F(e,function(i,r){n.push(t(i,r))}),n}function us(e){return e&&Object.keys(e)||[]}function aw(e){return us(e).length}function io(e){return pn(e,t=>t)}function ro(e,t,n={}){return t=Vu(t),F(e,function(i){let r=t(i)||"_",o=n[r];o||(o=n[r]=[]),o.push(i)}),n}function Rd(e,...t){e=Vu(e);let n={};return F(t,r=>ro(r,e,n)),pn(n,function(r,o){return r[0]})}const sw=Rd;function fi(e,t){t=Vu(t);let n=[];return F(e,function(i,r){let o=t(i,r),a={d:o,v:i};for(var s=0;s<n.length;s++){let{d:c}=n[s];if(o<c){n.splice(s,0,a);return}}n.push(a)}),pn(n,i=>i.v)}function oo(e){return function(t){return Mr(e,function(n,i){return t[i]===n})}}function Vu(e){return Zt(e)?e:t=>t[e]}function ls(e){return Zt(e)?e:t=>t===e}function cw(e){return e}function uw(e){return Number(e)}function Wu(e,t){let n,i,r,o;function a(p){let f=Date.now(),d=p?0:o+t-f;if(d>0)return s(d);e.apply(r,i),c()}function s(p){n=setTimeout(a,p)}function c(){n&&clearTimeout(n),n=o=i=r=void 0}function u(){n&&a(!0),c()}function l(...p){o=Date.now(),i=p,r=this,n||s(t)}return l.flush=u,l.cancel=c,l}function Sn(e,t){return e.bind(t)}function V(e,...t){return Object.assign(e,...t)}function lw(e,t,n){let i=e;return F(t,function(r,o){if(typeof r!="number"&&typeof r!="string")throw new Error("illegal key type: "+typeof r+". Key should be of type number or string.");if(r==="constructor")throw new Error("illegal key: constructor");if(r==="__proto__")throw new Error("illegal key: __proto__");let a=t[o+1],s=i[r];Vt(a)&&no(s)&&(s=i[r]=isNaN(+a)?{}:[]),Tr(a)?Tr(n)?delete i[r]:i[r]=n:i=s}),e}function ci(e,t){let n={},i=Object(e);return F(t,function(r){r in i&&(n[r]=e[r])}),n}function di(e,t){let n={},i=Object(e);return F(i,function(r,o){t.indexOf(o)===-1&&(n[o]=r)}),n}function Uu(){}Uu.prototype.get=function(e){return this.$model.properties.get(this,e)},Uu.prototype.set=function(e,t){this.$model.properties.set(this,e,t)};function Cd(e,t){this.model=e,this.properties=t}Cd.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(Uu.prototype);F(e.properties,function(a){!a.isMany&&a.default!==void 0&&(i[a.name]=a.default)}),n.defineModel(i,t),n.defineDescriptor(i,e);var r=e.ns.name;function o(a){n.define(this,"$type",{value:r,enumerable:!0}),n.define(this,"$attrs",{value:{}}),n.define(this,"$parent",{writable:!0}),F(a,Sn(function(s,c){this.set(c,s)},this))}return o.prototype=i,o.hasType=i.$instanceOf=this.model.hasType,n.defineModel(o,t),n.defineDescriptor(o,e),o};var pw=V(Object.create(null),{String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0}),Pd=V(Object.create(null),{String:function(e){return e},Boolean:function(e){return e==="true"},Integer:function(e){return parseInt(e,10)},Real:function(e){return parseFloat(e)}});function Yu(e,t){var n=Pd[e];return n?n(t):t}function qu(e){return!!pw[e]}function Ad(e){return!!Pd[e]}function fn(e,t){var n=e.split(/:/),i,r;if(n.length===1)i=e,r=t;else if(n.length===2)i=n[1],r=n[0];else throw new Error("expected <prefix:localName> or <localName>, got "+e);return e=(r?r+":":"")+i,{name:e,prefix:r,localName:i}}function Hn(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName=Object.create(null),this.properties=[],this.propertiesByName=Object.create(null)}Hn.prototype.build=function(){return ci(this,["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"])},Hn.prototype.addProperty=function(e,t,n){typeof t=="boolean"&&(n=t,t=void 0),this.addNamedProperty(e,n!==!1);var i=this.properties;t!==void 0?i.splice(t,0,e):i.push(e)},Hn.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(s===-1)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},Hn.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=fn(r[0],i),a=fn(r[1],o.prefix).name,s=this.propertiesByName[a];if(s)this.replaceProperty(s,e,n);else throw new Error("refined property <"+a+"> not found");delete e.redefines},Hn.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},Hn.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},Hn.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},Hn.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},Hn.prototype.assertNotTrait=function(e){if((e.extends||[]).length)throw new Error(`cannot create <${e.name}> extending <${e.extends}>`)},Hn.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")},Hn.prototype.hasProperty=function(e){return this.propertiesByName[e]},Hn.prototype.addTrait=function(e,t){t&&this.assertNotTrait(e);var n=this.allTypesByName,i=this.allTypes,r=e.name;r in n||(F(e.properties,Sn(function(o){o=V({},o,{name:o.ns.localName,inherited:t}),Object.defineProperty(o,"definedBy",{value:e});var a=o.replaces,s=o.redefines;a||s?this.redefineProperty(o,a||s,a):(o.isBody&&this.setBodyProperty(o),o.isId&&this.setIdProperty(o),this.addProperty(o))},this)),i.push(e),n[r]=e)};function Xi(e,t){this.packageMap=Object.create(null),this.typeMap=Object.create(null),this.packages=[],this.properties=t,F(e,Sn(this.registerPackage,this))}Xi.prototype.getPackage=function(e){return this.packageMap[e]},Xi.prototype.getPackages=function(){return this.packages},Xi.prototype.registerPackage=function(e){e=V({},e);var t=this.packageMap;Td(t,e,"prefix"),Td(t,e,"uri"),F(e.types,Sn(function(n){this.registerType(n,e)},this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},Xi.prototype.registerType=function(e,t){e=V({},e,{superClass:(e.superClass||[]).slice(),extends:(e.extends||[]).slice(),properties:(e.properties||[]).slice(),meta:V({},e.meta||{})});var n=fn(e.name,t.prefix),i=n.name,r=Object.create(null);F(e.properties,Sn(function(o){var a=fn(o.name,n.prefix),s=a.name;qu(o.type)||(o.type=fn(o.type,a.prefix).name),V(o,{ns:a,name:s}),r[s]=o},this)),V(e,{ns:n,name:i,propertiesByName:r}),F(e.extends,Sn(function(o){var a=fn(o,n.prefix),s=this.typeMap[a.name];s.traits=s.traits||[],s.traits.push(i)},this)),this.definePackage(e,t),this.typeMap[i]=e},Xi.prototype.mapTypes=function(e,t,n){var i=qu(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(c,u){var l=fn(c,qu(c)?"":e.prefix);r.mapTypes(l,t,u)}function a(c){return o(c,!0)}function s(c){return o(c,!1)}if(!i)throw new Error("unknown type <"+e.name+">");F(i.superClass,n?a:s),t(i,!n),F(i.traits,a)},Xi.prototype.getEffectiveDescriptor=function(e){var t=fn(e),n=new Hn(t);this.mapTypes(t,function(r,o){n.addTrait(r,o)});var i=n.build();return this.definePackage(i,i.allTypes[i.allTypes.length-1].$pkg),i},Xi.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})};function Td(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function kr(e){this.model=e}kr.prototype.set=function(e,t,n){if(!Pn(t)||!t.length)throw new TypeError("property name must be a non-empty string");var i=this.getProperty(e,t),r=i&&i.name;fw(n)?i?delete e[r]:delete e.$attrs[Ku(t)]:i?r in e?e[r]=n:Md(e,i,n):e.$attrs[Ku(t)]=n},kr.prototype.get=function(e,t){var n=this.getProperty(e,t);if(!n)return e.$attrs[Ku(t)];var i=n.name;return!e[i]&&n.isMany&&Md(e,n,[]),e[i]},kr.prototype.define=function(e,t,n){if(!n.writable){var i=n.value;n=V({},n,{get:function(){return i}}),delete n.value}Object.defineProperty(e,t,n)},kr.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},kr.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},kr.prototype.getProperty=function(e,t){var n=this.model,i=n.getPropertyDescriptor(e,t);if(i)return i;if(t.includes(":"))return null;const r=n.config.strict;if(typeof r<"u"){const o=new TypeError(`unknown property <${t}> on <${e.$type}>`);if(r)throw o;typeof console<"u"&&console.warn(o)}return null};function fw(e){return typeof e>"u"}function Md(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function Ku(e){return e.replace(/^:/,"")}function Kn(e,t={}){this.properties=new kr(this),this.factory=new Cd(this,this.properties),this.registry=new Xi(e,this.properties),this.typeCache=Object.create(null),this.config=t}Kn.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},Kn.prototype.getType=function(e){var t=this.typeCache,n=Pn(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},Kn.prototype.createAny=function(e,t,n){var i=fn(e),r={$type:e,$instanceOf:function(a){return a===this.$type},get:function(a){return this[a]},set:function(a,s){lw(this,[a],s)}},o={name:e,isGeneric:!0,ns:{prefix:i.prefix,localName:i.localName,uri:t}};return this.properties.defineDescriptor(r,o),this.properties.defineModel(r,this),this.properties.define(r,"get",{enumerable:!1,writable:!0}),this.properties.define(r,"set",{enumerable:!1,writable:!0}),this.properties.define(r,"$parent",{enumerable:!1,writable:!0}),this.properties.define(r,"$instanceOf",{enumerable:!1,writable:!0}),F(n,function(a,s){Xt(a)&&a.value!==void 0?r[a.name]=a.value:r[s]=a}),r},Kn.prototype.getPackage=function(e){return this.registry.getPackage(e)},Kn.prototype.getPackages=function(){return this.registry.getPackages()},Kn.prototype.getElementDescriptor=function(e){return e.$descriptor},Kn.prototype.hasType=function(e,t){t===void 0&&(t=e,e=this);var n=e.$model.getElementDescriptor(e);return t in n.allTypesByName},Kn.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},Kn.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var kd=String.fromCharCode,dw=Object.prototype.hasOwnProperty,hw=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/ig,Qo={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};Object.keys(Qo).forEach(function(e){Qo[e.toUpperCase()]=Qo[e]});function mw(e,t,n,i){return i?dw.call(Qo,i)?Qo[i]:"&"+i+";":kd(t||parseInt(n,16))}function Or(e){return e.length>3&&e.indexOf("&")!==-1?e.replace(hw,mw):e}var Od="non-whitespace outside of root node";function Zi(e){return new Error(e)}function gw(e){return"missing namespace for prefix <"+e+">"}function ps(e){return{get:e,enumerable:!0}}function yw(e){var t=Object.create(null),n;for(n in e)t[n]=e[n];return t}var Dd=Symbol("nameCache");function Xu(e){return e+"$uri"}function vw(e){var t=Object.create(null),n,i;for(n in e)i=e[n],t[i]=i,t[Xu(i)]=n;return t}function fs(){return{line:0,column:0}}function bw(e){throw e}function Ld(e){if(!this)return new Ld(e);var t=e&&e.proxy,n,i,r,o,a=bw,s,c,u,l,p=fs,f=!1,d=!1,m="",h=!1,y=!1,g=null,v=!1,b,x,C,T;function k(L){L instanceof Error||(L=Zi(L)),g=L,a(L,p)}function A(L){s&&(L instanceof Error||(L=Zi(L)),s(L,p))}this.on=function(L,z){if(typeof z!="function")throw Zi("required args <name, cb>");switch(L){case"openTag":i=z;break;case"text":n=z;break;case"closeTag":r=z;break;case"error":a=z;break;case"warn":s=z;break;case"cdata":o=z;break;case"attention":l=z;break;case"question":u=z;break;case"comment":c=z;break;default:throw Zi("unsupported event: "+L)}return this},this.ns=function(L){if(typeof L>"u"&&(L={}),typeof L!="object")throw Zi("required args <nsMap={}>");var z=Object.create(null),re;for(re in L)z[re]=L[re];return y=!0,T=z,this};function I(){b=y?[]:null,x=y?vw(T):null,C=[],p=fs,v=!1,g=null,d=!1,m=""}this.parse=function(L){if(typeof L!="string")throw Zi("required args <xml=string>");if(f)throw Zi("parse during stream; call end() first");return I(),D(L),p=fs,v=!1,g},this.write=function(L){if(typeof L!="string")throw Zi("required args <xml=string>");return f||(I(),f=!0),g||(m=D(m+L,!0)||""),this},this.end=function(){return f||I(),f=!1,g||D(m),m="",p=fs,v=!1,g},this.stop=function(){v=!0};function D(L,z=!1){var re=null,de=null,Ue,je=0,q=!1,le=!1,ae=0,he=0,Pe,W,Y,ee,Re,mt,M,E,w,G="",U=0,X;function Ee(ct,zt){var en=ct.indexOf(":");if(en===-1)return ct;var tn=x[ct.substring(0,en)];return tn?zt===tn?ct.substr(en+1):tn+ct.substr(en):(A(gw(ct.substring(0,en))),null)}function ze(){if(X!==null)return X;var ct,zt,en=y&&x.xmlns,tn=y&&h?[]:null,vt=U,Tt=G,yn=Tt.length,Pr,Fn,Ti,jn,Dt,qn={},Lu=new Set,Gt,Ze,it;e:for(;vt<yn;vt++)if(Gt=!1,Ze=Tt.charCodeAt(vt),!(Ze===32||Ze<14&&Ze>8)){for((Ze<65||Ze>122||Ze>90&&Ze<97)&&Ze!==95&&Ze!==58&&(A("illegal first char attribute name"),Gt=!0),it=vt+1;it<yn;it++)if(Ze=Tt.charCodeAt(it),!(Ze>96&&Ze<123||Ze>64&&Ze<91||Ze>47&&Ze<59||Ze===46||Ze===45||Ze===95)){if(Ze===32||Ze<14&&Ze>8){A("missing attribute value"),vt=it;continue e}if(Ze===61)break;A("illegal attribute name char"),Gt=!0}if(Dt=Tt.substring(vt,it),Dt==="xmlns:xmlns"&&(A("illegal declaration of xmlns"),Gt=!0),Ze=Tt.charCodeAt(it+1),Ze===34)it=Tt.indexOf('"',vt=it+2),it===-1&&(it=Tt.indexOf("'",vt),it!==-1&&(A("attribute value quote missmatch"),Gt=!0));else if(Ze===39)it=Tt.indexOf("'",vt=it+2),it===-1&&(it=Tt.indexOf('"',vt),it!==-1&&(A("attribute value quote missmatch"),Gt=!0));else for(A("missing attribute value quotes"),Gt=!0,it=it+1;it<yn&&(Ze=Tt.charCodeAt(it+1),!(Ze===32||Ze<14&&Ze>8));it++);for(it===-1&&(A("missing closing quotes"),it=yn,Gt=!0),Gt||(Ti=Tt.substring(vt,it)),vt=it;it+1<yn&&(Ze=Tt.charCodeAt(it+1),!(Ze===32||Ze<14&&Ze>8));it++)vt===it&&(A("illegal character after attribute end"),Gt=!0);if(vt=it+1,Gt)continue e;if(Lu.has(Dt)){A("attribute <"+Dt+"> already defined");continue}if(Lu.add(Dt),!y){qn[Dt]=Ti;continue}if(h){if(Fn=Dt==="xmlns"?"xmlns":Dt.charCodeAt(0)===120&&Dt.substr(0,6)==="xmlns:"?Dt.substr(6):null,Fn!==null){if(ct=Or(Ti),zt=Xu(Fn),jn=T[ct],!jn){if(Fn==="xmlns"||zt in x&&x[zt]!==ct)do jn="ns"+je++;while(typeof x[jn]<"u");else jn=Fn;T[ct]=jn}x[Fn]!==jn&&(Pr||(x=yw(x),Pr=!0),x[Fn]=jn,Fn==="xmlns"&&(x[Xu(jn)]=ct,en=jn),x[zt]=ct),qn[Dt]=Ti;continue}tn.push(Dt,Ti);continue}Dt=Ee(Dt,en),Dt!==null&&(qn[Dt]=Ti)}if(h)for(vt=0,yn=tn.length;vt<yn;vt++)Dt=Ee(tn[vt++],en),Ti=tn[vt],Dt!==null&&(qn[Dt]=Ti);return X=qn}function tt(){for(var ct=/(\r\n|\r|\n)/g,zt=0,en=0,tn=0,vt=he,Tt,yn;ae>=tn&&(Tt=ct.exec(L),!(!Tt||(vt=Tt[0].length+Tt.index,vt>ae)));)zt+=1,tn=vt;return ae==-1?(en=vt,yn=L.substring(he)):he===0?yn=L.substring(he,ae):(en=ae-tn,yn=he==-1?L.substring(ae):L.substring(ae,he+1)),{data:yn,line:zt,column:en}}for(p=tt,t&&(w=Object.create({},{name:ps(function(){return M}),originalName:ps(function(){return E}),attrs:ps(ze),ns:ps(function(){return x})}));he!==-1;){if(L.charCodeAt(he)===60?ae=he:ae=L.indexOf("<",he),ae===-1){if(z)return L.substring(he);if(C.length)return k("unexpected end of file");if(!d)return k("missing start tag");he<L.length&&L.substring(he).trim()&&A(Od);return}if(d||(d=!0),he!==ae){if(C.length){if(n&&(n(L.substring(he,ae),Or,p),v))return}else if(L.substring(he,ae).trim()&&(A(Od),v))return}if(ee=L.charCodeAt(ae+1),ee===33){if(Y=L.charCodeAt(ae+2),Y===91&&L.substr(ae+3,6)==="CDATA["){if(he=L.indexOf("]]>",ae),he===-1)return z?L.substring(ae):k("unclosed cdata");if(o&&(o(L.substring(ae+9,he),p),v))return;he+=3;continue}if(Y===45&&L.charCodeAt(ae+3)===45){if(he=L.indexOf("-->",ae),he===-1)return z?L.substring(ae):k("unclosed comment");if(c&&(c(L.substring(ae+4,he),Or,p),v))return;he+=3;continue}}if(ee===63){if(he=L.indexOf("?>",ae),he===-1)return z?L.substring(ae):k("unclosed question");if(u&&(u(L.substring(ae,he+2),p),v))return;he+=2;continue}for(Pe=ae+1;;Pe++){if(Re=L.charCodeAt(Pe),isNaN(Re))return z?L.substring(ae):(he=-1,k("unclosed tag"));if(Re===34)Y=L.indexOf('"',Pe+1),Pe=Y!==-1?Y:Pe;else if(Re===39)Y=L.indexOf("'",Pe+1),Pe=Y!==-1?Y:Pe;else if(Re===62){he=Pe;break}}if(ee===33){if(l&&(l(L.substring(ae,he+1),Or,p),v))return;he+=1;continue}if(X={},ee===47){if(q=!1,le=!0,!C.length)return k("missing open tag");if(Pe=M=C.pop(),Y=ae+2+Pe.length,L.substring(ae+2,Y)!==Pe)return k("closing tag mismatch");for(;Y<he;Y++)if(ee=L.charCodeAt(Y),!(ee===32||ee>8&&ee<14))return k("close tag")}else{if(L.charCodeAt(he-1)===47?(Pe=M=L.substring(ae+1,he-1),q=!0,le=!0):(Pe=M=L.substring(ae+1,he),q=!0,le=!1),!(ee>96&&ee<123||ee>64&&ee<91||ee===95||ee===58))return k("illegal first char nodeName");for(Y=1,W=Pe.length;Y<W;Y++)if(ee=Pe.charCodeAt(Y),!(ee>96&&ee<123||ee>64&&ee<91||ee>47&&ee<59||ee===45||ee===95||ee==46)){if(ee===32||ee<14&&ee>8){M=Pe.substring(0,Y),X=null;break}return k("invalid nodeName")}le||C.push(M)}if(y){Ue=x,q&&(le||b.push(Ue),X===null&&(h=Pe.indexOf("xmlns",Y)!==-1)&&(U=Y,G=Pe,ze(),h=!1)),E=M,de!==x&&(re=x[Dd],re===void 0&&(re=x[Dd]=Object.create(null)),de=x);var At=re[M];if(At!==void 0)M=At;else{if(ee=M.indexOf(":"),ee!==-1){if(mt=x[M.substring(0,ee)],!mt)return k("missing namespace on <"+E+">");M=M.substr(ee+1)}else mt=x.xmlns;mt&&(M=mt+":"+M),re[E]=M}}if(q&&(U=Y,G=Pe,i&&(t?i(w,Or,le,p):i(M,ze,Or,le,p),v)))return;if(le){if(r&&(r(t?w:M,Or,q,p),v))return;y&&(q?x=Ue:x=b.pop())}he+=1}}}function Id(e){return e.xml&&e.xml.tagAlias==="lowerCase"}var Zu={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},Bd="property";function Nd(e){return e.xml&&e.xml.serialize}function xw(e){const t=Nd(e);return t!==Bd&&(t||null)}function _w(e){return e.charAt(0).toUpperCase()+e.slice(1)}function $d(e,t){return Id(t)?e.prefix+":"+_w(e.localName):e.name}function ww(e,t){var n=e.name,i=e.localName,r=t&&t.xml&&t.xml.typePrefix;return r&&i.indexOf(r)===0?e.prefix+":"+i.slice(r.length):n}function Ew(e,t,n){const i=fn(e,t.xmlns),r=`${t[i.prefix]||i.prefix}:${i.localName}`,o=fn(r);var a=n.getPackage(o.prefix);return ww(o,a)}function Qi(e){return new Error(e)}function Mi(e){return e.$descriptor}function Sw(e){V(this,e),this.elementsById={},this.references=[],this.warnings=[],this.addReference=function(t){this.references.push(t)},this.addElement=function(t){if(!t)throw Qi("expected element");var n=this.elementsById,i=Mi(t),r=i.idProperty,o;if(r&&(o=t.get(r.name),o)){if(!/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i.test(o))throw new Error("illegal ID <"+o+">");if(n[o])throw Qi("duplicate ID <"+o+">");n[o]=t}},this.addWarning=function(t){this.warnings.push(t)}}function Jo(){}Jo.prototype.handleEnd=function(){},Jo.prototype.handleText=function(){},Jo.prototype.handleNode=function(){};function Qu(){}Qu.prototype=Object.create(Jo.prototype),Qu.prototype.handleNode=function(){return this};function ao(){}ao.prototype=Object.create(Jo.prototype),ao.prototype.handleText=function(e){this.body=(this.body||"")+e};function ea(e,t){this.property=e,this.context=t}ea.prototype=Object.create(ao.prototype),ea.prototype.handleNode=function(e){if(this.element)throw Qi("expected no sub nodes");return this.element=this.createReference(e),this},ea.prototype.handleEnd=function(){this.element.id=this.body},ea.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}};function Ju(e,t){this.element=t,this.propertyDesc=e}Ju.prototype=Object.create(ao.prototype),Ju.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=Yu(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)};function ds(){}ds.prototype=Object.create(ao.prototype),ds.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};function vn(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}vn.prototype=Object.create(ds.prototype),vn.prototype.addReference=function(e){this.context.addReference(e)},vn.prototype.handleText=function(e){var t=this.element,n=Mi(t),i=n.bodyProperty;if(!i)throw Qi("unexpected body text <"+e+">");ao.prototype.handleText.call(this,e)},vn.prototype.handleEnd=function(){var e=this.body,t=this.element,n=Mi(t),i=n.bodyProperty;i&&e!==void 0&&(e=Yu(i.type,e),t.set(i.name,e))},vn.prototype.createElement=function(e){var t=e.attributes,n=this.type,i=Mi(n),r=this.context,o=new n({}),a=this.model,s;return F(t,function(c,u){var l=i.propertiesByName[u],p;l&&l.isReference?l.isMany?(p=c.split(" "),F(p,function(f){r.addReference({element:o,property:l.ns.name,id:f})})):r.addReference({element:o,property:l.ns.name,id:c}):(l?c=Yu(l.type,c):u==="xmlns"?u=":"+u:(s=fn(u,i.ns.prefix),a.getPackage(s.prefix)&&r.addWarning({message:"unknown attribute <"+u+">",element:o,property:u,value:c})),o.set(u,c))}),o},vn.prototype.getPropertyForNode=function(e){var t=e.name,n=fn(t),i=this.type,r=this.model,o=Mi(i),a=n.name,s=o.propertiesByName[a];if(s&&!s.isAttr){const u=xw(s);if(u){const l=e.attributes[u];if(l){const p=Ew(l,e.ns,r),f=r.getType(p);return V({},s,{effectiveType:Mi(f).name})}}return s}var c=r.getPackage(n.prefix);if(c){const u=$d(n,c),l=r.getType(u);if(s=ht(o.properties,function(p){return!p.isVirtual&&!p.isReference&&!p.isAttribute&&l.hasType(p.type)}),s)return V({},s,{effectiveType:Mi(l).name})}else if(s=ht(o.properties,function(u){return!u.isReference&&!u.isAttribute&&u.type==="Element"}),s)return s;throw Qi("unrecognized element <"+n.name+">")},vn.prototype.toString=function(){return"ElementDescriptor["+Mi(this.type).name+"]"},vn.prototype.valueHandler=function(e,t){return new Ju(e,t)},vn.prototype.referenceHandler=function(e){return new ea(e,this.context)},vn.prototype.handler=function(e){return e==="Element"?new so(this.model,e,this.context):new vn(this.model,e,this.context)},vn.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,n=t.effectiveType||t.type,Ad(n))return this.valueHandler(t,i);t.isReference?r=this.referenceHandler(t).handleNode(e):r=this.handler(n).handleNode(e);var o=r.element;return o!==void 0&&(t.isMany?i.get(t.name).push(o):i.set(t.name,o),t.isReference?(V(o,{element:i}),this.context.addReference(o)):o.$parent=i),r};function el(e,t,n){vn.call(this,e,t,n)}el.prototype=Object.create(vn.prototype),el.prototype.createElement=function(e){var t=e.name,n=fn(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),a=o&&$d(n,o)||t;if(!r.hasType(a))throw Qi("unexpected element <"+e.originalName+">");return vn.prototype.createElement.call(this,e)};function so(e,t,n){this.model=e,this.context=n}so.prototype=Object.create(ds.prototype),so.prototype.createElement=function(e){var t=e.name,n=fn(t),i=n.prefix,r=e.ns[i+"$uri"],o=e.attributes;return this.model.createAny(t,r,o)},so.prototype.handleChild=function(e){var t=new so(this.model,"Element",this.context).handleNode(e),n=this.element,i=t.element,r;return i!==void 0&&(r=n.$children=n.$children||[],r.push(i),i.$parent=n),t},so.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)};function tl(e){e instanceof Kn&&(e={model:e}),V(this,{lax:!1},e)}tl.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof vn?(i=t,t={}):typeof t=="string"?(i=this.handler(t),t={}):typeof i=="string"&&(i=this.handler(i));var r=this.model,o=this.lax,a=new Sw(V({},t,{rootHandler:i})),s=new Ld({proxy:!0}),c=Rw();i.context=a,c.push(i);function u(C,T,k){var A=T(),I=A.line,D=A.column,L=A.data;L.charAt(0)==="<"&&L.indexOf(" ")!==-1&&(L=L.slice(0,L.indexOf(" "))+">");var z="unparsable content "+(L?L+" ":"")+`detected
|
|
1
|
+
(function(se,It){typeof exports=="object"&&typeof module<"u"?It(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],It):(se=typeof globalThis<"u"?globalThis:se||self,It(se.BpmnModeler={},se.Vue))})(this,(function(se,It){"use strict";var BL=Object.defineProperty;var NL=(se,It,Tr)=>It in se?BL(se,It,{enumerable:!0,configurable:!0,writable:!0,value:Tr}):se[It]=Tr;var no=(se,It,Tr)=>NL(se,typeof It!="symbol"?It+"":It,Tr);const Tr=["startEvent","endEvent","userTask","serviceTask","task","sendTask","receiveTask","exclusiveGateway","parallelGateway","subProcess","boundaryEvent"],us=["startEvent","endEvent","userTask","serviceTask","task","sendTask","receiveTask","exclusiveGateway","parallelGateway"];function yd(e){return Tr.includes(e)}function vd(e){return us.includes(e)}const bd="http://g1project.net/spec/bpmn/bwl/1.0",Hu="bwl",zu=["top-left","top","top-right","right","bottom-right","bottom","bottom-left","left"],xd={name:"bwl-hints",uri:bd,prefix:Hu,xml:{tagAlias:"lowerCase"},types:[{name:"Placement",superClass:["Element"],properties:[{name:"anchor",isAttr:!0,type:"String"},{name:"side",isAttr:!0,type:"String"},{name:"offset",isAttr:!0,type:"Real"}]},{name:"Members",superClass:["Element"],properties:[{name:"refs",isAttr:!0,type:"String"}]},{name:"BandHint",extends:["bpmn:FlowNode"],properties:[{name:"band",isAttr:!0,type:"Integer"}]},{name:"PoolOrderHint",extends:["bpmn:Participant"],properties:[{name:"poolOrder",isAttr:!0,type:"Integer"}]}]},Gu="bwl.undoEpisode",_d=new WeakSet;function z0(e){_d.has(e)||(e.register(Gu,{preExecute(t){try{t.run()}catch(n){t.error=n}}}),_d.add(e))}function wd(e,t){z0(e);const n={run:t};if(e.execute(Gu,n),n.error!==void 0)throw e.canUndo()&&e.undo(),n.error}const Ed=["participant.add","participant.update","node.add","node.update","sequenceFlow.add","sequenceFlow.update","messageFlow.add","messageFlow.update","dataStore.add","dataStore.update","dataAssociation.add","association.add","annotation.add","annotation.update","group.add","group.update","element.remove"],G0={description:"생략 = 보존, null = 제거.",anyOf:[{type:"string"},{type:"null"}]},V0={type:"object",description:"레인. 배열 선언 순서 = 풀 내 상→하 순서.",properties:{id:{type:"string"},name:{type:"string"}},required:["id"],additionalProperties:!1},W0={type:"object",description:"풀(participant). 레인은 여기 선언하고 노드가 lane 인자로 배정된다 — 별도 레인 op 없음.",properties:{id:{type:"string",description:"문서 내 유일, XML NCName(공백 없이 문자/밑줄로 시작)."},name:{type:"string"},blackBox:{type:"boolean",description:"true = 내부 프로세스 없는 블랙박스 풀."},lanes:{type:"array",items:{$ref:"#/$defs/irLane"}}},required:["id"],additionalProperties:!1},U0={type:"object",description:"플로우 노드. 좌표는 지정하지 않는다 — 배치는 resolver 가 결정한다. ⚠ type 집합은 **읽을 수 있는 것보다 좁다** — describe 는 subProcess·boundaryEvent 도 노드로 내지만 그 둘을 새로 만드는 배치는 미실증이라 여기서 받지 않는다(B-87 ⓐ).",properties:{id:{type:"string"},type:{type:"string",enum:[...us]},name:{type:"string"},participant:{type:"string",description:"소속 풀 id(협업 문서)."},lane:{type:"string",description:"소속 레인 id(풀 정의에 선언된 것)."}},required:["id","type"],additionalProperties:!1},Y0={type:"object",description:"분기 조건 — 게이트웨이가 아닌 플로우에 붙인다. MVP 는 label 만.",properties:{label:{type:"string"}},required:["label"],additionalProperties:!1},q0={type:"object",description:"시퀀스 플로우(같은 풀 안 노드 간).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"},name:{type:"string"},condition:{$ref:"#/$defs/irFlowCondition"}},required:["id","source","target"],additionalProperties:!1},K0={type:"object",description:"메시지 플로우(풀 경계를 넘는 연결 — 노드 또는 블랙박스 풀 자체가 끝점).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"},name:{type:"string"}},required:["id","source","target"],additionalProperties:!1},X0={type:"object",properties:{id:{type:"string"},name:{type:"string"}},required:["id"],additionalProperties:!1},Z0={type:"object",description:"데이터 입출력 연관. 방향 = source→target(태스크→스토어 = 쓰기, 스토어→태스크 = 읽기).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"}},required:["source","target"],additionalProperties:!1},Q0={type:"object",properties:{id:{type:"string"},text:{type:"string"}},required:["id","text"],additionalProperties:!1},J0={type:"object",description:"연관선(주석 ↔ 요소).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"}},required:["source","target"],additionalProperties:!1},ew={type:"object",description:"그룹 — members(요소 id 목록)가 bwl:members 힌트로 기록되고 바운즈는 멤버 bbox 로 산출된다.",properties:{id:{type:"string"},name:{type:"string"},members:{type:"array",items:{type:"string"}}},required:["id"],additionalProperties:!1},tw={type:"object",description:"주석 방위 힌트 — 앵커 요소 기준 상대 배치. 있으면 결정적 배치, 없으면 휴리스틱.",properties:{anchor:{type:"string",description:"기준 요소 id."},side:{type:"string",enum:[...zu]},offset:{type:"number",description:"앵커 가장자리 → 주석 가장자리 간격(px). 생략 시 50."}},required:["anchor","side"],additionalProperties:!1};function pn(e,t){return{type:"object",description:t.description,properties:{kind:{const:e},...t.properties},required:["kind",...t.required??[]],additionalProperties:!1}}const nw={"participant.add":pn("participant.add",{description:"풀 추가. order = 풀 세로 순서 힌트 — **작을수록 위**(생략 시 op 순서가 곧 배치 순서). 값은 상대 순서만 쓰므로 1,2,3… 연속이든 10,20,30 간격이든 같다.",properties:{participant:{$ref:"#/$defs/irParticipant"},order:{type:"integer"}},required:["participant"]}),"participant.update":pn("participant.update",{description:"풀 이름/레인 갱신. lanes 는 전체 재선언(생략 = 보존) — 기존 레인을 유지하려면 함께 다시 나열한다.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},lanes:{type:"array",items:{$ref:"#/$defs/irLane"}}},required:["id"]}),"node.add":pn("node.add",{description:'플로우 노드 추가. band = 가로 밴드 순번 힌트(주 흐름 0, 갈래 1, 2…) — 위/아래가 아니라 "주 흐름에서 몇 번째 갈래"다. 행 배치(어느 갈래가 위/아래인지)는 호스트가 정한다(대칭·메시지 방향). 레인이 있으면 그 레인 안의 밴드다 — 한 레인 안에서 게이트웨이 출구를 갈라 놓을 때 쓴다. 컨테이너(풀·레인)는 밴드 수만큼 자란다.',properties:{node:{$ref:"#/$defs/irNode"},band:{type:"integer",description:"0 이상 정수(음수는 payload-invalid 로 거부)."}},required:["node"]}),"node.update":pn("node.update",{description:"노드 이름/레인/타입/밴드 갱신. lane = 레인 재배정(이동), type = 태스크·이벤트 타입 전환, band = 행 재지정. 🔴 **기존 문서에서 band 는 「몇 번째 갈래」가 아니라 그 컨테이너의 행 번호**다(describe 의 hints.bands 가 보여 주는 값) — 신규 배치의 band 가 대칭으로 펴지는 것과 다르다. 간선이 도형을 가로지르거나 반대 방향으로 겹칠 때 그 노드를 다른 행으로 옮기는 채널이다.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},lane:{type:"string"},type:{type:"string",enum:[...us]},band:{type:"integer",description:"0 이상 정수(음수는 payload-invalid 로 거부)."}},required:["id"]}),"sequenceFlow.add":pn("sequenceFlow.add",{description:"시퀀스 플로우 추가. 분기 조건은 게이트웨이가 아닌 플로우의 condition 에 싣는다.",properties:{flow:{$ref:"#/$defs/irSequenceFlow"}},required:["flow"]}),"sequenceFlow.update":pn("sequenceFlow.update",{description:"시퀀스 플로우 이름/조건/끝점 갱신. condition: null = 조건 제거. source/target = 끝점 재배선 — 중간 삽입은 기존 플로우를 지우지 말고 이것으로 한쪽 끝을 옮긴 뒤 새 플로우를 추가한다.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},condition:{description:"생략 = 보존, null = 제거.",anyOf:[{$ref:"#/$defs/irFlowCondition"},{type:"null"}]},source:{description:"새 출발 노드 id(생략 = 보존). 같은 배치에서 추가한 노드도 지목할 수 있다.",type:"string"},target:{description:"새 도착 노드 id(생략 = 보존). 같은 배치에서 추가한 노드도 지목할 수 있다.",type:"string"}},required:["id"]}),"messageFlow.add":pn("messageFlow.add",{description:"메시지 플로우 추가(풀 경계를 넘는 연결).",properties:{flow:{$ref:"#/$defs/irMessageFlow"}},required:["flow"]}),"messageFlow.update":pn("messageFlow.update",{description:"메시지 플로우 이름 갱신.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"}},required:["id"]}),"dataStore.add":pn("dataStore.add",{description:"데이터 스토어 추가(+ 입출력 연관 동반 가능).",properties:{dataStore:{$ref:"#/$defs/irDataStore"},associations:{type:"array",items:{$ref:"#/$defs/irDataAssociation"}}},required:["dataStore"]}),"dataStore.update":pn("dataStore.update",{description:"데이터 스토어 이름 갱신.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"}},required:["id"]}),"dataAssociation.add":pn("dataAssociation.add",{description:"기존 노드 ↔ 기존 데이터 스토어의 입출력 연관 추가.",properties:{association:{$ref:"#/$defs/irDataAssociation"}},required:["association"]}),"association.add":pn("association.add",{description:"주석 ↔ 요소 연관 추가(한쪽 끝은 주석). 주석 신설과 함께면 annotation.add 의 association 을 쓰고, 이 op 는 추가 연관(한 주석에 여러 연관)용.",properties:{association:{$ref:"#/$defs/irAssociation"}},required:["association"]}),"annotation.add":pn("annotation.add",{description:"텍스트 주석 추가. association 으로 대상 요소와 연결하고, placement 로 방위를 지정하면 결정적 배치된다.",properties:{annotation:{$ref:"#/$defs/irTextAnnotation"},association:{$ref:"#/$defs/irAssociation"},placement:{$ref:"#/$defs/bwlPlacement"}},required:["annotation"]}),"annotation.update":pn("annotation.update",{description:"주석 본문/방위 힌트 갱신. placement: null = 힌트 제거(휴리스틱 복귀). 주석 삭제는 element.remove.",properties:{id:{type:"string"},text:{type:"string"},placement:{description:"생략 = 보존, null = 힌트 제거.",anyOf:[{$ref:"#/$defs/bwlPlacement"},{type:"null"}]}},required:["id"]}),"group.add":pn("group.add",{description:"그룹 추가 — 바운즈는 members 의 bbox 로 산출되므로 좌표를 지정하지 않는다.",properties:{group:{$ref:"#/$defs/irGroup"}},required:["group"]}),"group.update":pn("group.update",{description:"그룹 이름/멤버 갱신. members 는 전체 재선언(생략 = 보존).",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},members:{type:"array",items:{type:"string"}}},required:["id"]}),"element.remove":pn("element.remove",{description:"요소 제거(카테고리 무관). 부착된 연결선은 함께 제거된다.",properties:{id:{type:"string"}},required:["id"]})},Sd={anyOf:Ed.map(e=>nw[e])},iw={type:"object",description:"BPMN 문서에 요소를 추가·수정·삭제할 때 호출한다. 기존 요소는 describeProcess 가 노출하는 id 로 지정하고, 신규 요소 id 는 문서 내 유일한 XML NCName(공백 없이 문자/밑줄 시작)으로 짓는다. 좌표는 지정하지 않는다 — 배치는 서버가 결정하며, 필요하면 힌트(placement/band/order)로 의도만 전달하라.",properties:{ops:{type:"array",items:{$ref:"#/$defs/symbolicOp"}}},required:["ops"],additionalProperties:!1,$defs:{irLane:V0,irParticipant:W0,irNode:U0,irFlowCondition:Y0,irSequenceFlow:q0,irMessageFlow:K0,irDataStore:X0,irDataAssociation:Z0,irTextAnnotation:Q0,irAssociation:J0,irGroup:ew,bwlPlacement:tw,nullableString:G0,symbolicOp:Sd}};function Vu(e){return Array.prototype.concat.apply([],e)}const Qo=Object.prototype.toString,rw=Object.prototype.hasOwnProperty;function Mr(e){return e===void 0}function Wt(e){return e!==void 0}function io(e){return e==null}function De(e){return Qo.call(e)==="[object Array]"}function Xt(e){return Qo.call(e)==="[object Object]"}function Be(e){return Qo.call(e)==="[object Number]"}function Zt(e){const t=Qo.call(e);return t==="[object Function]"||t==="[object AsyncFunction]"||t==="[object GeneratorFunction]"||t==="[object AsyncGeneratorFunction]"||t==="[object Proxy]"}function An(e){return Qo.call(e)==="[object String]"}function ow(e){if(!De(e))throw new Error("must supply array")}function Tn(e,t){return!io(e)&&rw.call(e,t)}function mt(e,t){const n=ps(t);let i;return F(e,function(r,o){if(n(r,o))return i=r,!1}),i}function Rd(e,t){const n=ps(t);let i=De(e)?-1:void 0;return F(e,function(r,o){if(n(r,o))return i=o,!1}),i}function Ye(e,t){const n=ps(t);let i=[];return F(e,function(r,o){n(r,o)&&i.push(r)}),i}function F(e,t){let n,i;if(Mr(e))return;const r=De(e)?lw:uw;for(let o in e)if(Tn(e,o)&&(n=e[o],i=t(n,r(o)),i===!1))return n}function aw(e,t){if(Mr(e))return[];ow(e);const n=ps(t);return e.filter(function(i,r){return!n(i,r)})}function Mn(e,t,n){return F(e,function(i,r){n=t(n,i,r)}),n}function kr(e,t){return!!Mn(e,function(n,i,r){return n&&t(i,r)},!0)}function Xi(e,t){return!!mt(e,t)}function fn(e,t){let n=[];return F(e,function(i,r){n.push(t(i,r))}),n}function ls(e){return e&&Object.keys(e)||[]}function sw(e){return ls(e).length}function ro(e){return fn(e,t=>t)}function oo(e,t,n={}){return t=Wu(t),F(e,function(i){let r=t(i)||"_",o=n[r];o||(o=n[r]=[]),o.push(i)}),n}function Cd(e,...t){e=Wu(e);let n={};return F(t,r=>oo(r,e,n)),fn(n,function(r,o){return r[0]})}const cw=Cd;function di(e,t){t=Wu(t);let n=[];return F(e,function(i,r){let o=t(i,r),a={d:o,v:i};for(var s=0;s<n.length;s++){let{d:c}=n[s];if(o<c){n.splice(s,0,a);return}}n.push(a)}),fn(n,i=>i.v)}function ao(e){return function(t){return kr(e,function(n,i){return t[i]===n})}}function Wu(e){return Zt(e)?e:t=>t[e]}function ps(e){return Zt(e)?e:t=>t===e}function uw(e){return e}function lw(e){return Number(e)}function Uu(e,t){let n,i,r,o;function a(p){let f=Date.now(),d=p?0:o+t-f;if(d>0)return s(d);e.apply(r,i),c()}function s(p){n=setTimeout(a,p)}function c(){n&&clearTimeout(n),n=o=i=r=void 0}function u(){n&&a(!0),c()}function l(...p){o=Date.now(),i=p,r=this,n||s(t)}return l.flush=u,l.cancel=c,l}function Sn(e,t){return e.bind(t)}function V(e,...t){return Object.assign(e,...t)}function pw(e,t,n){let i=e;return F(t,function(r,o){if(typeof r!="number"&&typeof r!="string")throw new Error("illegal key type: "+typeof r+". Key should be of type number or string.");if(r==="constructor")throw new Error("illegal key: constructor");if(r==="__proto__")throw new Error("illegal key: __proto__");let a=t[o+1],s=i[r];Wt(a)&&io(s)&&(s=i[r]=isNaN(+a)?{}:[]),Mr(a)?Mr(n)?delete i[r]:i[r]=n:i=s}),e}function ui(e,t){let n={},i=Object(e);return F(t,function(r){r in i&&(n[r]=e[r])}),n}function hi(e,t){let n={},i=Object(e);return F(i,function(r,o){t.indexOf(o)===-1&&(n[o]=r)}),n}function Yu(){}Yu.prototype.get=function(e){return this.$model.properties.get(this,e)},Yu.prototype.set=function(e,t){this.$model.properties.set(this,e,t)};function Pd(e,t){this.model=e,this.properties=t}Pd.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(Yu.prototype);F(e.properties,function(a){!a.isMany&&a.default!==void 0&&(i[a.name]=a.default)}),n.defineModel(i,t),n.defineDescriptor(i,e);var r=e.ns.name;function o(a){n.define(this,"$type",{value:r,enumerable:!0}),n.define(this,"$attrs",{value:{}}),n.define(this,"$parent",{writable:!0}),F(a,Sn(function(s,c){this.set(c,s)},this))}return o.prototype=i,o.hasType=i.$instanceOf=this.model.hasType,n.defineModel(o,t),n.defineDescriptor(o,e),o};var fw=V(Object.create(null),{String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0}),Ad=V(Object.create(null),{String:function(e){return e},Boolean:function(e){return e==="true"},Integer:function(e){return parseInt(e,10)},Real:function(e){return parseFloat(e)}});function qu(e,t){var n=Ad[e];return n?n(t):t}function Ku(e){return!!fw[e]}function Td(e){return!!Ad[e]}function dn(e,t){var n=e.split(/:/),i,r;if(n.length===1)i=e,r=t;else if(n.length===2)i=n[1],r=n[0];else throw new Error("expected <prefix:localName> or <localName>, got "+e);return e=(r?r+":":"")+i,{name:e,prefix:r,localName:i}}function zn(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName=Object.create(null),this.properties=[],this.propertiesByName=Object.create(null)}zn.prototype.build=function(){return ui(this,["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"])},zn.prototype.addProperty=function(e,t,n){typeof t=="boolean"&&(n=t,t=void 0),this.addNamedProperty(e,n!==!1);var i=this.properties;t!==void 0?i.splice(t,0,e):i.push(e)},zn.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(s===-1)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},zn.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=dn(r[0],i),a=dn(r[1],o.prefix).name,s=this.propertiesByName[a];if(s)this.replaceProperty(s,e,n);else throw new Error("refined property <"+a+"> not found");delete e.redefines},zn.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},zn.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},zn.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},zn.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},zn.prototype.assertNotTrait=function(e){if((e.extends||[]).length)throw new Error(`cannot create <${e.name}> extending <${e.extends}>`)},zn.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")},zn.prototype.hasProperty=function(e){return this.propertiesByName[e]},zn.prototype.addTrait=function(e,t){t&&this.assertNotTrait(e);var n=this.allTypesByName,i=this.allTypes,r=e.name;r in n||(F(e.properties,Sn(function(o){o=V({},o,{name:o.ns.localName,inherited:t}),Object.defineProperty(o,"definedBy",{value:e});var a=o.replaces,s=o.redefines;a||s?this.redefineProperty(o,a||s,a):(o.isBody&&this.setBodyProperty(o),o.isId&&this.setIdProperty(o),this.addProperty(o))},this)),i.push(e),n[r]=e)};function Zi(e,t){this.packageMap=Object.create(null),this.typeMap=Object.create(null),this.packages=[],this.properties=t,F(e,Sn(this.registerPackage,this))}Zi.prototype.getPackage=function(e){return this.packageMap[e]},Zi.prototype.getPackages=function(){return this.packages},Zi.prototype.registerPackage=function(e){e=V({},e);var t=this.packageMap;Md(t,e,"prefix"),Md(t,e,"uri"),F(e.types,Sn(function(n){this.registerType(n,e)},this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},Zi.prototype.registerType=function(e,t){e=V({},e,{superClass:(e.superClass||[]).slice(),extends:(e.extends||[]).slice(),properties:(e.properties||[]).slice(),meta:V({},e.meta||{})});var n=dn(e.name,t.prefix),i=n.name,r=Object.create(null);F(e.properties,Sn(function(o){var a=dn(o.name,n.prefix),s=a.name;Ku(o.type)||(o.type=dn(o.type,a.prefix).name),V(o,{ns:a,name:s}),r[s]=o},this)),V(e,{ns:n,name:i,propertiesByName:r}),F(e.extends,Sn(function(o){var a=dn(o,n.prefix),s=this.typeMap[a.name];s.traits=s.traits||[],s.traits.push(i)},this)),this.definePackage(e,t),this.typeMap[i]=e},Zi.prototype.mapTypes=function(e,t,n){var i=Ku(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(c,u){var l=dn(c,Ku(c)?"":e.prefix);r.mapTypes(l,t,u)}function a(c){return o(c,!0)}function s(c){return o(c,!1)}if(!i)throw new Error("unknown type <"+e.name+">");F(i.superClass,n?a:s),t(i,!n),F(i.traits,a)},Zi.prototype.getEffectiveDescriptor=function(e){var t=dn(e),n=new zn(t);this.mapTypes(t,function(r,o){n.addTrait(r,o)});var i=n.build();return this.definePackage(i,i.allTypes[i.allTypes.length-1].$pkg),i},Zi.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})};function Md(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function Or(e){this.model=e}Or.prototype.set=function(e,t,n){if(!An(t)||!t.length)throw new TypeError("property name must be a non-empty string");var i=this.getProperty(e,t),r=i&&i.name;dw(n)?i?delete e[r]:delete e.$attrs[Xu(t)]:i?r in e?e[r]=n:kd(e,i,n):e.$attrs[Xu(t)]=n},Or.prototype.get=function(e,t){var n=this.getProperty(e,t);if(!n)return e.$attrs[Xu(t)];var i=n.name;return!e[i]&&n.isMany&&kd(e,n,[]),e[i]},Or.prototype.define=function(e,t,n){if(!n.writable){var i=n.value;n=V({},n,{get:function(){return i}}),delete n.value}Object.defineProperty(e,t,n)},Or.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},Or.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},Or.prototype.getProperty=function(e,t){var n=this.model,i=n.getPropertyDescriptor(e,t);if(i)return i;if(t.includes(":"))return null;const r=n.config.strict;if(typeof r<"u"){const o=new TypeError(`unknown property <${t}> on <${e.$type}>`);if(r)throw o;typeof console<"u"&&console.warn(o)}return null};function dw(e){return typeof e>"u"}function kd(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function Xu(e){return e.replace(/^:/,"")}function Xn(e,t={}){this.properties=new Or(this),this.factory=new Pd(this,this.properties),this.registry=new Zi(e,this.properties),this.typeCache=Object.create(null),this.config=t}Xn.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},Xn.prototype.getType=function(e){var t=this.typeCache,n=An(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},Xn.prototype.createAny=function(e,t,n){var i=dn(e),r={$type:e,$instanceOf:function(a){return a===this.$type},get:function(a){return this[a]},set:function(a,s){pw(this,[a],s)}},o={name:e,isGeneric:!0,ns:{prefix:i.prefix,localName:i.localName,uri:t}};return this.properties.defineDescriptor(r,o),this.properties.defineModel(r,this),this.properties.define(r,"get",{enumerable:!1,writable:!0}),this.properties.define(r,"set",{enumerable:!1,writable:!0}),this.properties.define(r,"$parent",{enumerable:!1,writable:!0}),this.properties.define(r,"$instanceOf",{enumerable:!1,writable:!0}),F(n,function(a,s){Xt(a)&&a.value!==void 0?r[a.name]=a.value:r[s]=a}),r},Xn.prototype.getPackage=function(e){return this.registry.getPackage(e)},Xn.prototype.getPackages=function(){return this.registry.getPackages()},Xn.prototype.getElementDescriptor=function(e){return e.$descriptor},Xn.prototype.hasType=function(e,t){t===void 0&&(t=e,e=this);var n=e.$model.getElementDescriptor(e);return t in n.allTypesByName},Xn.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},Xn.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var Od=String.fromCharCode,hw=Object.prototype.hasOwnProperty,mw=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/ig,Jo={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};Object.keys(Jo).forEach(function(e){Jo[e.toUpperCase()]=Jo[e]});function gw(e,t,n,i){return i?hw.call(Jo,i)?Jo[i]:"&"+i+";":Od(t||parseInt(n,16))}function Dr(e){return e.length>3&&e.indexOf("&")!==-1?e.replace(mw,gw):e}var Dd="non-whitespace outside of root node";function Qi(e){return new Error(e)}function yw(e){return"missing namespace for prefix <"+e+">"}function fs(e){return{get:e,enumerable:!0}}function vw(e){var t=Object.create(null),n;for(n in e)t[n]=e[n];return t}var Ld=Symbol("nameCache");function Zu(e){return e+"$uri"}function bw(e){var t=Object.create(null),n,i;for(n in e)i=e[n],t[i]=i,t[Zu(i)]=n;return t}function ds(){return{line:0,column:0}}function xw(e){throw e}function Id(e){if(!this)return new Id(e);var t=e&&e.proxy,n,i,r,o,a=xw,s,c,u,l,p=ds,f=!1,d=!1,m="",h=!1,y=!1,g=null,v=!1,b,x,C,T;function k(L){L instanceof Error||(L=Qi(L)),g=L,a(L,p)}function A(L){s&&(L instanceof Error||(L=Qi(L)),s(L,p))}this.on=function(L,z){if(typeof z!="function")throw Qi("required args <name, cb>");switch(L){case"openTag":i=z;break;case"text":n=z;break;case"closeTag":r=z;break;case"error":a=z;break;case"warn":s=z;break;case"cdata":o=z;break;case"attention":l=z;break;case"question":u=z;break;case"comment":c=z;break;default:throw Qi("unsupported event: "+L)}return this},this.ns=function(L){if(typeof L>"u"&&(L={}),typeof L!="object")throw Qi("required args <nsMap={}>");var z=Object.create(null),ne;for(ne in L)z[ne]=L[ne];return y=!0,T=z,this};function I(){b=y?[]:null,x=y?bw(T):null,C=[],p=ds,v=!1,g=null,d=!1,m=""}this.parse=function(L){if(typeof L!="string")throw Qi("required args <xml=string>");if(f)throw Qi("parse during stream; call end() first");return I(),D(L),p=ds,v=!1,g},this.write=function(L){if(typeof L!="string")throw Qi("required args <xml=string>");return f||(I(),f=!0),g||(m=D(m+L,!0)||""),this},this.end=function(){return f||I(),f=!1,g||D(m),m="",p=ds,v=!1,g},this.stop=function(){v=!0};function D(L,z=!1){var ne=null,me=null,Ue,je=0,q=!1,le=!1,ae=0,ge=0,Ae,W,Y,ee,Ce,gt,M,E,w,G="",U=0,X;function Ee(ut,zt){var en=ut.indexOf(":");if(en===-1)return ut;var tn=x[ut.substring(0,en)];return tn?zt===tn?ut.substr(en+1):tn+ut.substr(en):(A(yw(ut.substring(0,en))),null)}function He(){if(X!==null)return X;var ut,zt,en=y&&x.xmlns,tn=y&&h?[]:null,vt=U,At=G,vn=At.length,Ar,jn,Mi,Hn,Dt,Kn={},Iu=new Set,Gt,Ze,at;e:for(;vt<vn;vt++)if(Gt=!1,Ze=At.charCodeAt(vt),!(Ze===32||Ze<14&&Ze>8)){for((Ze<65||Ze>122||Ze>90&&Ze<97)&&Ze!==95&&Ze!==58&&(A("illegal first char attribute name"),Gt=!0),at=vt+1;at<vn;at++)if(Ze=At.charCodeAt(at),!(Ze>96&&Ze<123||Ze>64&&Ze<91||Ze>47&&Ze<59||Ze===46||Ze===45||Ze===95)){if(Ze===32||Ze<14&&Ze>8){A("missing attribute value"),vt=at;continue e}if(Ze===61)break;A("illegal attribute name char"),Gt=!0}if(Dt=At.substring(vt,at),Dt==="xmlns:xmlns"&&(A("illegal declaration of xmlns"),Gt=!0),Ze=At.charCodeAt(at+1),Ze===34)at=At.indexOf('"',vt=at+2),at===-1&&(at=At.indexOf("'",vt),at!==-1&&(A("attribute value quote missmatch"),Gt=!0));else if(Ze===39)at=At.indexOf("'",vt=at+2),at===-1&&(at=At.indexOf('"',vt),at!==-1&&(A("attribute value quote missmatch"),Gt=!0));else for(A("missing attribute value quotes"),Gt=!0,at=at+1;at<vn&&(Ze=At.charCodeAt(at+1),!(Ze===32||Ze<14&&Ze>8));at++);for(at===-1&&(A("missing closing quotes"),at=vn,Gt=!0),Gt||(Mi=At.substring(vt,at)),vt=at;at+1<vn&&(Ze=At.charCodeAt(at+1),!(Ze===32||Ze<14&&Ze>8));at++)vt===at&&(A("illegal character after attribute end"),Gt=!0);if(vt=at+1,Gt)continue e;if(Iu.has(Dt)){A("attribute <"+Dt+"> already defined");continue}if(Iu.add(Dt),!y){Kn[Dt]=Mi;continue}if(h){if(jn=Dt==="xmlns"?"xmlns":Dt.charCodeAt(0)===120&&Dt.substr(0,6)==="xmlns:"?Dt.substr(6):null,jn!==null){if(ut=Dr(Mi),zt=Zu(jn),Hn=T[ut],!Hn){if(jn==="xmlns"||zt in x&&x[zt]!==ut)do Hn="ns"+je++;while(typeof x[Hn]<"u");else Hn=jn;T[ut]=Hn}x[jn]!==Hn&&(Ar||(x=vw(x),Ar=!0),x[jn]=Hn,jn==="xmlns"&&(x[Zu(Hn)]=ut,en=Hn),x[zt]=ut),Kn[Dt]=Mi;continue}tn.push(Dt,Mi);continue}Dt=Ee(Dt,en),Dt!==null&&(Kn[Dt]=Mi)}if(h)for(vt=0,vn=tn.length;vt<vn;vt++)Dt=Ee(tn[vt++],en),Mi=tn[vt],Dt!==null&&(Kn[Dt]=Mi);return X=Kn}function nt(){for(var ut=/(\r\n|\r|\n)/g,zt=0,en=0,tn=0,vt=ge,At,vn;ae>=tn&&(At=ut.exec(L),!(!At||(vt=At[0].length+At.index,vt>ae)));)zt+=1,tn=vt;return ae==-1?(en=vt,vn=L.substring(ge)):ge===0?vn=L.substring(ge,ae):(en=ae-tn,vn=ge==-1?L.substring(ae):L.substring(ae,ge+1)),{data:vn,line:zt,column:en}}for(p=nt,t&&(w=Object.create({},{name:fs(function(){return M}),originalName:fs(function(){return E}),attrs:fs(He),ns:fs(function(){return x})}));ge!==-1;){if(L.charCodeAt(ge)===60?ae=ge:ae=L.indexOf("<",ge),ae===-1){if(z)return L.substring(ge);if(C.length)return k("unexpected end of file");if(!d)return k("missing start tag");ge<L.length&&L.substring(ge).trim()&&A(Dd);return}if(d||(d=!0),ge!==ae){if(C.length){if(n&&(n(L.substring(ge,ae),Dr,p),v))return}else if(L.substring(ge,ae).trim()&&(A(Dd),v))return}if(ee=L.charCodeAt(ae+1),ee===33){if(Y=L.charCodeAt(ae+2),Y===91&&L.substr(ae+3,6)==="CDATA["){if(ge=L.indexOf("]]>",ae),ge===-1)return z?L.substring(ae):k("unclosed cdata");if(o&&(o(L.substring(ae+9,ge),p),v))return;ge+=3;continue}if(Y===45&&L.charCodeAt(ae+3)===45){if(ge=L.indexOf("-->",ae),ge===-1)return z?L.substring(ae):k("unclosed comment");if(c&&(c(L.substring(ae+4,ge),Dr,p),v))return;ge+=3;continue}}if(ee===63){if(ge=L.indexOf("?>",ae),ge===-1)return z?L.substring(ae):k("unclosed question");if(u&&(u(L.substring(ae,ge+2),p),v))return;ge+=2;continue}for(Ae=ae+1;;Ae++){if(Ce=L.charCodeAt(Ae),isNaN(Ce))return z?L.substring(ae):(ge=-1,k("unclosed tag"));if(Ce===34)Y=L.indexOf('"',Ae+1),Ae=Y!==-1?Y:Ae;else if(Ce===39)Y=L.indexOf("'",Ae+1),Ae=Y!==-1?Y:Ae;else if(Ce===62){ge=Ae;break}}if(ee===33){if(l&&(l(L.substring(ae,ge+1),Dr,p),v))return;ge+=1;continue}if(X={},ee===47){if(q=!1,le=!0,!C.length)return k("missing open tag");if(Ae=M=C.pop(),Y=ae+2+Ae.length,L.substring(ae+2,Y)!==Ae)return k("closing tag mismatch");for(;Y<ge;Y++)if(ee=L.charCodeAt(Y),!(ee===32||ee>8&&ee<14))return k("close tag")}else{if(L.charCodeAt(ge-1)===47?(Ae=M=L.substring(ae+1,ge-1),q=!0,le=!0):(Ae=M=L.substring(ae+1,ge),q=!0,le=!1),!(ee>96&&ee<123||ee>64&&ee<91||ee===95||ee===58))return k("illegal first char nodeName");for(Y=1,W=Ae.length;Y<W;Y++)if(ee=Ae.charCodeAt(Y),!(ee>96&&ee<123||ee>64&&ee<91||ee>47&&ee<59||ee===45||ee===95||ee==46)){if(ee===32||ee<14&&ee>8){M=Ae.substring(0,Y),X=null;break}return k("invalid nodeName")}le||C.push(M)}if(y){Ue=x,q&&(le||b.push(Ue),X===null&&(h=Ae.indexOf("xmlns",Y)!==-1)&&(U=Y,G=Ae,He(),h=!1)),E=M,me!==x&&(ne=x[Ld],ne===void 0&&(ne=x[Ld]=Object.create(null)),me=x);var Pt=ne[M];if(Pt!==void 0)M=Pt;else{if(ee=M.indexOf(":"),ee!==-1){if(gt=x[M.substring(0,ee)],!gt)return k("missing namespace on <"+E+">");M=M.substr(ee+1)}else gt=x.xmlns;gt&&(M=gt+":"+M),ne[E]=M}}if(q&&(U=Y,G=Ae,i&&(t?i(w,Dr,le,p):i(M,He,Dr,le,p),v)))return;if(le){if(r&&(r(t?w:M,Dr,q,p),v))return;y&&(q?x=Ue:x=b.pop())}ge+=1}}}function Bd(e){return e.xml&&e.xml.tagAlias==="lowerCase"}var Qu={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},Nd="property";function $d(e){return e.xml&&e.xml.serialize}function _w(e){const t=$d(e);return t!==Nd&&(t||null)}function ww(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Fd(e,t){return Bd(t)?e.prefix+":"+ww(e.localName):e.name}function Ew(e,t){var n=e.name,i=e.localName,r=t&&t.xml&&t.xml.typePrefix;return r&&i.indexOf(r)===0?e.prefix+":"+i.slice(r.length):n}function Sw(e,t,n){const i=dn(e,t.xmlns),r=`${t[i.prefix]||i.prefix}:${i.localName}`,o=dn(r);var a=n.getPackage(o.prefix);return Ew(o,a)}function Ji(e){return new Error(e)}function ki(e){return e.$descriptor}function Rw(e){V(this,e),this.elementsById={},this.references=[],this.warnings=[],this.addReference=function(t){this.references.push(t)},this.addElement=function(t){if(!t)throw Ji("expected element");var n=this.elementsById,i=ki(t),r=i.idProperty,o;if(r&&(o=t.get(r.name),o)){if(!/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i.test(o))throw new Error("illegal ID <"+o+">");if(n[o])throw Ji("duplicate ID <"+o+">");n[o]=t}},this.addWarning=function(t){this.warnings.push(t)}}function ea(){}ea.prototype.handleEnd=function(){},ea.prototype.handleText=function(){},ea.prototype.handleNode=function(){};function Ju(){}Ju.prototype=Object.create(ea.prototype),Ju.prototype.handleNode=function(){return this};function so(){}so.prototype=Object.create(ea.prototype),so.prototype.handleText=function(e){this.body=(this.body||"")+e};function ta(e,t){this.property=e,this.context=t}ta.prototype=Object.create(so.prototype),ta.prototype.handleNode=function(e){if(this.element)throw Ji("expected no sub nodes");return this.element=this.createReference(e),this},ta.prototype.handleEnd=function(){this.element.id=this.body},ta.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}};function el(e,t){this.element=t,this.propertyDesc=e}el.prototype=Object.create(so.prototype),el.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=qu(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)};function hs(){}hs.prototype=Object.create(so.prototype),hs.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};function bn(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}bn.prototype=Object.create(hs.prototype),bn.prototype.addReference=function(e){this.context.addReference(e)},bn.prototype.handleText=function(e){var t=this.element,n=ki(t),i=n.bodyProperty;if(!i)throw Ji("unexpected body text <"+e+">");so.prototype.handleText.call(this,e)},bn.prototype.handleEnd=function(){var e=this.body,t=this.element,n=ki(t),i=n.bodyProperty;i&&e!==void 0&&(e=qu(i.type,e),t.set(i.name,e))},bn.prototype.createElement=function(e){var t=e.attributes,n=this.type,i=ki(n),r=this.context,o=new n({}),a=this.model,s;return F(t,function(c,u){var l=i.propertiesByName[u],p;l&&l.isReference?l.isMany?(p=c.split(" "),F(p,function(f){r.addReference({element:o,property:l.ns.name,id:f})})):r.addReference({element:o,property:l.ns.name,id:c}):(l?c=qu(l.type,c):u==="xmlns"?u=":"+u:(s=dn(u,i.ns.prefix),a.getPackage(s.prefix)&&r.addWarning({message:"unknown attribute <"+u+">",element:o,property:u,value:c})),o.set(u,c))}),o},bn.prototype.getPropertyForNode=function(e){var t=e.name,n=dn(t),i=this.type,r=this.model,o=ki(i),a=n.name,s=o.propertiesByName[a];if(s&&!s.isAttr){const u=_w(s);if(u){const l=e.attributes[u];if(l){const p=Sw(l,e.ns,r),f=r.getType(p);return V({},s,{effectiveType:ki(f).name})}}return s}var c=r.getPackage(n.prefix);if(c){const u=Fd(n,c),l=r.getType(u);if(s=mt(o.properties,function(p){return!p.isVirtual&&!p.isReference&&!p.isAttribute&&l.hasType(p.type)}),s)return V({},s,{effectiveType:ki(l).name})}else if(s=mt(o.properties,function(u){return!u.isReference&&!u.isAttribute&&u.type==="Element"}),s)return s;throw Ji("unrecognized element <"+n.name+">")},bn.prototype.toString=function(){return"ElementDescriptor["+ki(this.type).name+"]"},bn.prototype.valueHandler=function(e,t){return new el(e,t)},bn.prototype.referenceHandler=function(e){return new ta(e,this.context)},bn.prototype.handler=function(e){return e==="Element"?new co(this.model,e,this.context):new bn(this.model,e,this.context)},bn.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,n=t.effectiveType||t.type,Td(n))return this.valueHandler(t,i);t.isReference?r=this.referenceHandler(t).handleNode(e):r=this.handler(n).handleNode(e);var o=r.element;return o!==void 0&&(t.isMany?i.get(t.name).push(o):i.set(t.name,o),t.isReference?(V(o,{element:i}),this.context.addReference(o)):o.$parent=i),r};function tl(e,t,n){bn.call(this,e,t,n)}tl.prototype=Object.create(bn.prototype),tl.prototype.createElement=function(e){var t=e.name,n=dn(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),a=o&&Fd(n,o)||t;if(!r.hasType(a))throw Ji("unexpected element <"+e.originalName+">");return bn.prototype.createElement.call(this,e)};function co(e,t,n){this.model=e,this.context=n}co.prototype=Object.create(hs.prototype),co.prototype.createElement=function(e){var t=e.name,n=dn(t),i=n.prefix,r=e.ns[i+"$uri"],o=e.attributes;return this.model.createAny(t,r,o)},co.prototype.handleChild=function(e){var t=new co(this.model,"Element",this.context).handleNode(e),n=this.element,i=t.element,r;return i!==void 0&&(r=n.$children=n.$children||[],r.push(i),i.$parent=n),t},co.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)};function nl(e){e instanceof Xn&&(e={model:e}),V(this,{lax:!1},e)}nl.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof bn?(i=t,t={}):typeof t=="string"?(i=this.handler(t),t={}):typeof i=="string"&&(i=this.handler(i));var r=this.model,o=this.lax,a=new Rw(V({},t,{rootHandler:i})),s=new Id({proxy:!0}),c=Cw();i.context=a,c.push(i);function u(C,T,k){var A=T(),I=A.line,D=A.column,L=A.data;L.charAt(0)==="<"&&L.indexOf(" ")!==-1&&(L=L.slice(0,L.indexOf(" "))+">");var z="unparsable content "+(L?L+" ":"")+`detected
|
|
2
2
|
line: `+I+`
|
|
3
3
|
column: `+D+`
|
|
4
|
-
nested error: `+C.message;if(k)return a.addWarning({message:z,error:C}),!0;throw
|
|
5
|
-
`,
|
|
6
|
-
`),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 zw(e){e=V({format:!1,preamble:!0},e||{});function t(n,i){var r=i||new jw,o=new Hw(r,e.format);e.preamble&&o.append(Cw);var a=new wt,s=n.$model;if(a.getNamespaces().mapDefaultPrefixes(Gw(s)),a.build(n).serializeTo(o),!i)return r.value}return{toXML:t}}function Gw(e){const t=e.config&&e.config.nsMap||{},n={};for(const i in Zu)n[i]=Zu[i];for(const i in t){const r=t[i];n[r]=i}for(const i of e.getPackages())n[i.prefix]=i.uri;return n}function ms(e,t){Kn.call(this,e,t)}ms.prototype=Object.create(Kn.prototype),ms.prototype.fromXML=function(e,t,n){Pn(t)||(n=t,t="bpmn:Definitions");var i=new tl(V({model:this,lax:!0},n)),r=i.handler(t);return i.fromXML(e,r)},ms.prototype.toXML=function(e,t){var n=new zw(t);return new Promise(function(i,r){try{var o=n.toXML(e);return i({xml:o})}catch(a){return r(a)}})};var Vw="BPMN20",Ww="http://www.omg.org/spec/BPMN/20100524/MODEL",Uw="bpmn",Yw=[],qw=[{name:"Interface",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"operations",type:"Operation",isMany:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"Operation",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"inMessageRef",type:"Message",isReference:!0},{name:"outMessageRef",type:"Message",isReference:!0},{name:"errorRef",type:"Error",isMany:!0,isReference:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"EndPoint",superClass:["RootElement"]},{name:"Auditing",superClass:["BaseElement"]},{name:"GlobalTask",superClass:["CallableElement"],properties:[{name:"resources",type:"ResourceRole",isMany:!0}]},{name:"Monitoring",superClass:["BaseElement"]},{name:"Performer",superClass:["ResourceRole"]},{name:"Process",superClass:["FlowElementsContainer","CallableElement"],properties:[{name:"processType",type:"ProcessType",isAttr:!0},{name:"isClosed",isAttr:!0,type:"Boolean"},{name:"auditing",type:"Auditing"},{name:"monitoring",type:"Monitoring"},{name:"properties",type:"Property",isMany:!0},{name:"laneSets",isMany:!0,replaces:"FlowElementsContainer#laneSets",type:"LaneSet"},{name:"flowElements",isMany:!0,replaces:"FlowElementsContainer#flowElements",type:"FlowElement"},{name:"artifacts",type:"Artifact",isMany:!0},{name:"resources",type:"ResourceRole",isMany:!0},{name:"correlationSubscriptions",type:"CorrelationSubscription",isMany:!0},{name:"supports",type:"Process",isMany:!0,isReference:!0},{name:"definitionalCollaborationRef",type:"Collaboration",isAttr:!0,isReference:!0},{name:"isExecutable",isAttr:!0,type:"Boolean"}]},{name:"LaneSet",superClass:["BaseElement"],properties:[{name:"lanes",type:"Lane",isMany:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Lane",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"partitionElementRef",type:"BaseElement",isAttr:!0,isReference:!0},{name:"partitionElement",type:"BaseElement"},{name:"flowNodeRef",type:"FlowNode",isMany:!0,isReference:!0},{name:"childLaneSet",type:"LaneSet",xml:{serialize:"xsi:type"}}]},{name:"GlobalManualTask",superClass:["GlobalTask"]},{name:"ManualTask",superClass:["Task"]},{name:"UserTask",superClass:["Task"],properties:[{name:"renderings",type:"Rendering",isMany:!0},{name:"implementation",isAttr:!0,type:"String"}]},{name:"Rendering",superClass:["BaseElement"]},{name:"HumanPerformer",superClass:["Performer"]},{name:"PotentialOwner",superClass:["HumanPerformer"]},{name:"GlobalUserTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"renderings",type:"Rendering",isMany:!0}]},{name:"Gateway",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"gatewayDirection",type:"GatewayDirection",default:"Unspecified",isAttr:!0}]},{name:"EventBasedGateway",superClass:["Gateway"],properties:[{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"eventGatewayType",type:"EventBasedGatewayType",isAttr:!0,default:"Exclusive"}]},{name:"ComplexGateway",superClass:["Gateway"],properties:[{name:"activationCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ExclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"InclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ParallelGateway",superClass:["Gateway"]},{name:"RootElement",isAbstract:!0,superClass:["BaseElement"]},{name:"Relationship",superClass:["BaseElement"],properties:[{name:"type",isAttr:!0,type:"String"},{name:"direction",type:"RelationshipDirection",isAttr:!0},{name:"source",isMany:!0,isReference:!0,type:"Element"},{name:"target",isMany:!0,isReference:!0,type:"Element"}]},{name:"BaseElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,type:"String",isId:!0},{name:"documentation",type:"Documentation",isMany:!0},{name:"extensionDefinitions",type:"ExtensionDefinition",isMany:!0,isReference:!0},{name:"extensionElements",type:"ExtensionElements"}]},{name:"Extension",properties:[{name:"mustUnderstand",default:!1,isAttr:!0,type:"Boolean"},{name:"definition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"extensionAttributeDefinitions",type:"ExtensionAttributeDefinition",isMany:!0}]},{name:"ExtensionAttributeDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"type",isAttr:!0,type:"String"},{name:"isReference",default:!1,isAttr:!0,type:"Boolean"},{name:"extensionDefinition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionElements",properties:[{name:"valueRef",isAttr:!0,isReference:!0,type:"Element"},{name:"values",type:"Element",isMany:!0},{name:"extensionAttributeDefinition",type:"ExtensionAttributeDefinition",isAttr:!0,isReference:!0}]},{name:"Documentation",superClass:["BaseElement"],properties:[{name:"text",type:"String",isBody:!0},{name:"textFormat",default:"text/plain",isAttr:!0,type:"String"}]},{name:"Event",isAbstract:!0,superClass:["FlowNode","InteractionNode"],properties:[{name:"properties",type:"Property",isMany:!0}]},{name:"IntermediateCatchEvent",superClass:["CatchEvent"]},{name:"IntermediateThrowEvent",superClass:["ThrowEvent"]},{name:"EndEvent",superClass:["ThrowEvent"]},{name:"StartEvent",superClass:["CatchEvent"],properties:[{name:"isInterrupting",default:!0,isAttr:!0,type:"Boolean"}]},{name:"ThrowEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"dataInputs",type:"DataInput",isMany:!0},{name:"dataInputAssociations",type:"DataInputAssociation",isMany:!0},{name:"inputSet",type:"InputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"CatchEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"parallelMultiple",isAttr:!0,type:"Boolean",default:!1},{name:"dataOutputs",type:"DataOutput",isMany:!0},{name:"dataOutputAssociations",type:"DataOutputAssociation",isMany:!0},{name:"outputSet",type:"OutputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"BoundaryEvent",superClass:["CatchEvent"],properties:[{name:"cancelActivity",default:!0,isAttr:!0,type:"Boolean"},{name:"attachedToRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"EventDefinition",isAbstract:!0,superClass:["RootElement"]},{name:"CancelEventDefinition",superClass:["EventDefinition"]},{name:"ErrorEventDefinition",superClass:["EventDefinition"],properties:[{name:"errorRef",type:"Error",isAttr:!0,isReference:!0}]},{name:"TerminateEventDefinition",superClass:["EventDefinition"]},{name:"EscalationEventDefinition",superClass:["EventDefinition"],properties:[{name:"escalationRef",type:"Escalation",isAttr:!0,isReference:!0}]},{name:"Escalation",properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"escalationCode",isAttr:!0,type:"String"}],superClass:["RootElement"]},{name:"CompensateEventDefinition",superClass:["EventDefinition"],properties:[{name:"waitForCompletion",isAttr:!0,type:"Boolean",default:!0},{name:"activityRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"TimerEventDefinition",superClass:["EventDefinition"],properties:[{name:"timeDate",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeCycle",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeDuration",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"LinkEventDefinition",superClass:["EventDefinition"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"target",type:"LinkEventDefinition",isReference:!0},{name:"source",type:"LinkEventDefinition",isMany:!0,isReference:!0}]},{name:"MessageEventDefinition",superClass:["EventDefinition"],properties:[{name:"messageRef",type:"Message",isAttr:!0,isReference:!0},{name:"operationRef",type:"Operation",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"}]}],Kw=[{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"}]}],Xw={tagAlias:"lowerCase",typePrefix:"t"},Zw={name:Vw,uri:Ww,prefix:Uw,associations:Yw,types:qw,enumerations:Kw,xml:Xw},Qw="BPMNDI",Jw="http://www.omg.org/spec/BPMN/20100524/DI",eE="bpmndi",tE=[{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"]}],nE=[{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"}]}],iE=[],rE={name:Qw,uri:Jw,prefix:eE,types:tE,enumerations:nE,associations:iE},oE="DC",aE="http://www.omg.org/spec/DD/20100524/DC",sE="dc",cE=[{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}]}],uE=[],lE={name:oE,uri:aE,prefix:sE,types:cE,associations:uE},pE="DI",fE="http://www.omg.org/spec/DD/20100524/DI",dE="di",hE=[{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"}]}],mE=[],gE={tagAlias:"lowerCase"},yE={name:pE,uri:fE,prefix:dE,types:hE,associations:mE,xml:gE},vE="bpmn.io colors for BPMN",bE="http://bpmn.io/schema/bpmn/biocolor/1.0",xE="bioc",_E=[{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"}]}],wE=[],EE=[],SE={name:vE,uri:bE,prefix:xE,types:_E,enumerations:wE,associations:EE},RE="BPMN in Color",CE="http://www.omg.org/spec/BPMN/non-normative/color/1.0",PE="color",AE=[{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"}]}],TE=[],ME=[],kE={name:RE,uri:CE,prefix:PE,types:AE,enumerations:TE,associations:ME};const OE={bpmn:Zw,bpmndi:rE,dc:lE,di:yE,bioc:SE,color:kE};function Gd(e,t){const n=V({},OE,e);return new ms(n,t)}const DE={name:"bpmn-i18n",uri:"http://www.omg.org/spec/BPMN/non-normative/extensions/i18n/1.0",prefix:"i18n",types:[{name:"Translation",superClass:["Element"],properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"body",isBody:!0,type:"String"},{name:"target",isAttr:!0,type:"String",default:"@name"},{name:"textFormat",isAttr:"true",type:"String",default:"text/plain"}]}],enumerations:[],associations:[],xml:{tagAlias:"lowerCase",typePrefix:"t"}},LE="http://www.omg.org/spec/BPMN/non-normative/extensions/i18n/1.0",Vd="i18n",gs={[Vd]:DE,[ju]:bd};function Wd(){return Gd(gs)}const Ud=Wd();async function rl(e){const{rootElement:t,warnings:n}=await Ud.fromXML(e,"bpmn:Definitions");return{definitions:t,warnings:n}}async function IE(e){const{xml:t}=await Ud.toXML(e,{format:!0});return t}function ol(e){return e.map(t=>typeof t=="string"?t:t.message??String(t))}const co={cjkEm:.865,upperEm:.68,lowerEm:.5,digitEm:.556,spaceEm:.278,otherEm:.35,ascentEm:.9,descentEm:.25},BE=/[ᄀ-ᇿ -〿-ヿ㐀-鿿가--⦆]/;function NE(e){const t=co;return BE.test(e)?t.cjkEm:e===" "?t.spaceEm:e>="0"&&e<="9"?t.digitEm:e>="A"&&e<="Z"?t.upperEm:e>="a"&&e<="z"?t.lowerEm:t.otherEm}function uo(e,t){let n=0;for(const i of e)n+=t*NE(i);return n}function Yd(e=globalThis,{textMeasurement:t="approximate"}={}){if(!(e!=null&&e.SVGElement))throw new Error("installHeadlessBpmnDom: DOM 전역이 없다 — jsdom window 를 전역에 올린 뒤 호출할 것");t==="approximate"&&$E(e),FE(e),jE(e),HE(e)}function $E(e){var i;const t=(i=e.HTMLCanvasElement)==null?void 0:i.prototype;if(!t||t.__headlessTextMeasurement)return;t.__headlessTextMeasurement=!0;const n={font:"12px sans-serif",letterSpacing:"0px",measureText(r){var a;const o=Number.parseFloat(((a=String(n.font).match(/(\d+(?:\.\d+)?)px/))==null?void 0:a[1])??"12");return{width:uo(r,o),fontBoundingBoxAscent:o*co.ascentEm,fontBoundingBoxDescent:o*co.descentEm,actualBoundingBoxAscent:o*co.ascentEm,actualBoundingBoxDescent:o*co.descentEm}}};t.getContext=()=>n}function FE(e){if(e.SVGMatrix)return;class t{constructor(){to(this,"a",1);to(this,"b",0);to(this,"c",0);to(this,"d",1);to(this,"e",0);to(this,"f",0)}static of(i,r,o,a,s,c){return Object.assign(new t,{a:i,b:r,c:o,d:a,e:s,f:c})}multiply(i){return t.of(this.a*i.a+this.c*i.b,this.b*i.a+this.d*i.b,this.a*i.c+this.c*i.d,this.b*i.c+this.d*i.d,this.a*i.e+this.c*i.f+this.e,this.b*i.e+this.d*i.f+this.f)}translate(i,r){return this.multiply(t.of(1,0,0,1,i,r))}scale(i,r=i){return this.multiply(t.of(i,0,0,r,0,0))}inverse(){const i=this.a*this.d-this.b*this.c;return t.of(this.d/i,-this.b/i,-this.c/i,this.a/i,(this.c*this.f-this.d*this.e)/i,(this.b*this.e-this.a*this.f)/i)}}e.SVGMatrix=t}function jE(e){var o;const t=()=>{const a=new e.SVGMatrix;return{type:0,matrix:a,setTranslate(s,c){a.e=s,a.f=c},setScale(s,c){a.a=s,a.d=c},setRotate(s,c=0,u=0){const l=s*Math.PI/180,p=Math.cos(l),f=Math.sin(l);a.a=p,a.b=f,a.c=-f,a.d=p,a.e=c-p*c+f*u,a.f=u-f*c-p*u},setMatrix(s){Object.assign(a,s)}}},n=a=>{const s=t();return Object.assign(s.matrix,a),s},i=(o=e.SVGSVGElement)==null?void 0:o.prototype;i&&!i.createSVGTransform&&(i.createSVGTransform=t,i.createSVGTransformFromMatrix=n,i.createSVGMatrix=()=>new e.SVGMatrix,i.createSVGPoint=()=>({x:0,y:0,matrixTransform:()=>({x:0,y:0})}));const r=e.SVGElement.prototype;Object.getOwnPropertyDescriptor(r,"transform")||Object.defineProperty(r,"transform",{configurable:!0,get(){if(!this.__headlessTransformList){const a=[];this.__headlessTransformList={baseVal:{get numberOfItems(){return a.length},clear:()=>{a.length=0},appendItem:s=>(a.push(s),s),getItem:s=>a[s],createSVGTransformFromMatrix:n,consolidate:()=>a[a.length-1]??null}}}return this.__headlessTransformList}})}function HE(e){const t=e.SVGElement.prototype;if(!t.getCTM){const n=()=>new e.SVGMatrix;t.getCTM=n,t.getScreenCTM=n}t.getBBox||(t.getBBox=function(){const n=String(this.textContent??"");return{x:0,y:0,width:uo(n,12),height:14}})}const ys=new Set(["bpmn:Participant","bpmn:Lane","bpmn:Group","bpmn:SubProcess","bpmn:AdHocSubProcess","bpmn:Transaction"]),zE=new Set(["bpmn:SubProcess","bpmn:AdHocSubProcess","bpmn:Transaction"]),GE=1,al=new Set(["bpmn:TextAnnotation","bpmn:DataStoreReference","bpmn:DataObjectReference","bpmn:DataInput","bpmn:DataOutput"]),VE=2;function bn(e){switch(e.kind){case"label-over-line":return`L|${e.edge}|${e.line}`;case"edge-crosses-shape":return`x|${e.edge}|${e.shape}`;case"edge-endpoint-detached":return`d|${e.edge}|${e.shape}`;case"shape-overlap":return`o|${e.shapes[0]}|${e.shapes[1]}`;case"shape-outside-container":return`c|${e.shape}|${e.container}`;case"edge-overlap-opposite":return`p|${e.edges[0]}|${e.edges[1]}`;case"edge-overlap-mixed":return`m|${e.edges[0]}|${e.edges[1]}`;case"edge-overlap-unrelated":return`u|${e.edges[0]}|${e.edges[1]}`;case"label-on-shared-segment":return`l|${e.edge}|${e.other}`;case"annotation-over-label":return`a|${e.annotation}|${e.label}`;case"pool-overlap":return`P|${e.pools[0]}|${e.pools[1]}`;case"edge-crosses-subprocess":return`S|${e.edge}|${e.subProcess}`;case"group-overlap-unintended":return`g|${e.groups[0]}|${e.groups[1]}${e.container?`|⊃${e.container}`:""}`;case"group-overlap-unreadable":return e.reason==="minority"?`gu*|${e.group}|${e.shapes.join(",")}`:e.reason==="throughpass"?`gu>|${e.group}|${e.shapes.join(",")}`:`gu|${e.groups[0]}|${e.groups[1]}|${e.shapes.join(",")}`;case"group-stack-unreadable":return`gs|${e.groups.join("|")}|${e.shapes.join(",")}`;case"group-on-container-boundary":return`gb|${e.group}|${e.container}|${e.side}`;case"group-on-group-boundary":return`gg|${e.groups[0]}|${e.groups[1]}|${e.axis}`;case"group-cuts-shape":return`gc|${e.group}|${e.shape}|${e.side}`;case"pool-name-over-label":return`pn|${e.pool}|${e.label}`}}const qd=20,vs=5,Kd=3,WE=8,Xd=12,UE=Xd*1.2;function sl(e,t){const n=t.split(/\r?\n/),i=Math.max(...n.map(o=>uo(o,Xd))),r=n.length*UE;return{x:e.x+e.width/2-i/2,y:e.y+e.height/2-r/2,width:i,height:r}}const Zd=1;function xn(e){const t=[];for(let n=0;n+1<e.waypoints.length;n++){const i=e.waypoints[n],r=e.waypoints[n+1];Math.abs(i.y-r.y)<.5&&Math.abs(i.x-r.x)>=.5?t.push({axis:"h",at:i.y,lo:Math.min(i.x,r.x),hi:Math.max(i.x,r.x),dir:r.x>i.x?1:-1}):Math.abs(i.x-r.x)<.5&&Math.abs(i.y-r.y)>=.5&&t.push({axis:"v",at:i.x,lo:Math.min(i.y,r.y),hi:Math.max(i.y,r.y),dir:r.y>i.y?1:-1})}return t}function lo(e,t){let n=null;const i=e.type!==t.type,o=!!(e.source&&e.target&&t.source&&t.target)&&e.source!==t.source&&e.source!==t.target&&e.target!==t.source&&e.target!==t.target;for(const a of xn(e))for(const s of xn(t)){if(a.axis!==s.axis||Math.abs(a.at-s.at)>Zd)continue;const c=a.dir!==s.dir?"opposite":i?"mixed":o?"unrelated":null;if(!c)continue;const u=Math.min(a.hi,s.hi)-Math.max(a.lo,s.lo);u>=qd&&(!n||u>n.length)&&(n={axis:a.axis,length:u,kind:c})}return n}function cl(e){return e.kind==="edge-overlap-opposite"||e.kind==="edge-overlap-mixed"||e.kind==="edge-overlap-unrelated"}function Qd(e,t){const n=lo(e,t);return n&&n.kind==="opposite"?{axis:n.axis,length:n.length}:null}function YE(e,t){let n=0;for(const i of t)i.id!==e.id&&Qd(e,i)&&n++;return n}function zn(e,t){let n=0;for(const i of t)i.id!==e.id&&lo(e,i)&&n++;return n}const Jd=15,eh=20;function qE(e,t){const n=t.axis==="v"?[e.x,e.x+e.width]:[e.y,e.y+e.height];if(t.at<n[0]-eh||t.at>n[1]+eh)return null;const i=t.axis==="v"?[e.y,e.y+e.height]:[e.x,e.x+e.width],r=Math.max(i[0],t.lo),o=Math.min(i[1],t.hi);return o>r?[r,o]:null}const ul=20;function bs(e,t){const n=[];for(const i of t){if(i.axis!==e.axis||Math.abs(i.at-e.at)>Zd)continue;const r=Math.max(e.lo,i.lo),o=Math.min(e.hi,i.hi);o-r<qd||n.push([r-ul,o+ul])}return n}function xs(e,t){const n=e.label;if(!n)return null;let i=null;for(const r of xn(e)){const o=qE(n,r);if(o){for(const a of t)if(a.id!==e.id&&!(i&&a.id>=i.other)){for(const[s,c]of bs(r,xn(a)))if(Math.min(c,o[1])>Math.max(s,o[0])){i={other:a.id,axis:r.axis};break}}}}return i}const KE=10,XE=1,ZE=(e,t,n)=>t.x>=e.x-n&&t.y>=e.y-n&&t.x+t.width<=e.x+e.width+n&&t.y+t.height<=e.y+e.height+n;function QE(e,t,n,i){const r=n.x+i,o=n.y+i,a=n.x+n.width-i,s=n.y+n.height-i;if(a<=r||s<=o)return!1;const c=t.x-e.x,u=t.y-e.y;let l=0,p=1;const f=(d,m)=>{if(m===0)return d<=0;const h=d/m;if(m>0){if(h>p)return!1;h>l&&(l=h)}else{if(h<l)return!1;h<p&&(p=h)}return!0};return f(r-e.x,c)&&f(e.x-a,-c)&&f(o-e.y,u)&&f(e.y-s,-u)&&p>l}function ll(e,t,n){return e.x+n<t.x+t.width-n&&t.x+n<e.x+e.width-n&&e.y+n<t.y+t.height-n&&t.y+n<e.y+e.height-n}const JE=(e,t)=>e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height,po=1;function ki(e,t){const n=e.x+po,i=e.x+e.width-po,r=e.y+po,o=e.y+e.height-po;return t.axis==="h"?t.at>r&&t.at<o&&t.lo<i&&t.hi>n:t.at>n&&t.at<i&&t.lo<o&&t.hi>r}function ta(e){return[{axis:"h",at:e.y,lo:e.x,hi:e.x+e.width,dir:1},{axis:"h",at:e.y+e.height,lo:e.x,hi:e.x+e.width,dir:1},{axis:"v",at:e.x,lo:e.y,hi:e.y+e.height,dir:1},{axis:"v",at:e.x+e.width,lo:e.y,hi:e.y+e.height,dir:1}]}function th(e,t){const n=e.label;if(!n)return null;if(xn(e).some(i=>ki(n,i)))return e.id;for(const i of[...t.edges].filter(r=>r.id!==e.id).sort((r,o)=>r.id.localeCompare(o.id)))if(xn(i).some(r=>ki(n,r)))return i.id;for(const i of t.shapes.filter(r=>r.container).sort((r,o)=>r.id.localeCompare(o.id)))if(ta(i).some(r=>ki(n,r)))return i.id;return null}function rn(e,t){const n=new Set(e.endpoints),i=[];for(const r of t)if(!n.has(r.id)){for(let o=0;o+1<e.waypoints.length;o++)if(QE(e.waypoints[o],e.waypoints[o+1],r,VE)){i.push(r);break}}return i}function e1(e,t,n,i){const r=(u,l,p)=>(l.x-u.x)*(p.y-u.y)-(l.y-u.y)*(p.x-u.x),o=r(n,i,e),a=r(n,i,t),s=r(e,t,n),c=r(e,t,i);return o*a<0&&s*c<0}const nh=(e,t)=>e.endpoints.some(n=>t.endpoints.includes(n));function na(e,t){let n=0;for(const i of t){if(i.id===e.id||nh(e,i))continue;let r=!1;for(let o=0;o+1<e.waypoints.length&&!r;o++)for(let a=0;a+1<i.waypoints.length&&!r;a++)e1(e.waypoints[o],e.waypoints[o+1],i.waypoints[a],i.waypoints[a+1])&&(r=!0);r&&n++}return n}function Gn(e,t){let n=0;for(const i of t)i.id===e.id||nh(e,i)||na(e,[i])>0&&(n+=i.type===e.type?2:1);return n}function ih(e){let t=0;const n=e.edges;for(let i=0;i<n.length;i++)for(let r=i+1;r<n.length;r++)na(n[i],[n[r]])>0&&(t+=n[i].type===n[r].type?2:1);return t}function _s(e){const t=[],n=e.edges;for(let i=0;i<n.length;i++)for(let r=i+1;r<n.length;r++)if(na(n[i],[n[r]])>0){const o=n[i].id,a=n[r].id;t.push(o<a?[o,a]:[a,o])}return t.sort((i,r)=>`${i[0]}|${i[1]}`.localeCompare(`${r[0]}|${r[1]}`))}function rh(e){const t=_s(e),n=a=>a==="bpmn:MessageFlow"||a.endsWith("Association")?"dashed":"solid",i=new Map(e.edges.map(a=>[a.id,a]));let r=0,o=0;for(const[a,s]of t){const c=i.get(a),u=i.get(s);if(!c||!u)continue;const l=n(c.type),p=n(u.type);l==="solid"&&p==="solid"?r++:l==="dashed"&&p==="dashed"&&o++}return{pairs:t,solidPairs:r,dashedPairs:o,mixedPairs:t.length-r-o,crossPoolMessages:t1(e)}}function t1(e){const t=e.shapes.filter(r=>r.type==="bpmn:Participant");if(t.length<3)return 0;const n=r=>{const o=e.shapes.find(a=>a.id===r);if(o)return t.find(a=>o.x>=a.x&&o.y>=a.y&&o.x+o.width<=a.x+a.width&&o.y+o.height<=a.y+a.height)};let i=0;for(const r of e.edges){if(r.type!=="bpmn:MessageFlow"||r.endpoints.length<2)continue;const o=n(r.endpoints[0]),a=n(r.endpoints[1]);if(!o||!a||o.id===a.id)continue;const s=Math.min(o.y,a.y),c=Math.max(o.y+o.height,a.y+a.height);t.some(u=>u.id!==o.id&&u.id!==a.id&&u.y>s&&u.y+u.height<c)&&i++}return i}function oh(e,t,n){const i=new Set(t.flatMap(r=>[...r.members]));return e.shapes.filter(r=>!r.container&&!al.has(r.type)&&!i.has(r.id)&&r.x>=n.x&&r.y>=n.y&&r.x+r.width<=n.right&&r.y+r.height<=n.bottom).map(r=>r.id).sort()}function ah(e){var n;const t=(n=_t(e==null?void 0:e.extensionElements))==null?void 0:n.values;if(Array.isArray(t))for(const i of t){const r=_t(i);if((r==null?void 0:r.$type)!=="bwl:Members"||typeof r.refs!="string")continue;const o=r.refs.split(/\s+/).filter(Boolean);return o.length?o:void 0}}const sh=e=>e?{members:e}:{},Vn=e=>e.shapes.filter(t=>!t.container);function n1(e,t,n){if(e.type==="bpmn:TextAnnotation")for(const i of t.edges){if(!/Association$/.test(i.type)||!i.endpoints.includes(e.id))continue;const r=i.endpoints.find(a=>a!==e.id),o=r?n.get(r):void 0;if(o){if(o.container)return o.id;if(o.parent)return o.parent}}}function ch(e,t){const n=e.label;if(!n)return null;for(const i of[...t.edges].sort((r,o)=>r.id.localeCompare(o.id)))if(xn(i).some(r=>ki(n,r)))return i.id;for(const i of[...t.shapes].filter(r=>r.container).sort((r,o)=>r.id.localeCompare(o.id)))if(ta(i).some(r=>ki(n,r)))return i.id;return null}function fo(e){const t=[];for(const n of e.shapes)n.label&&t.push({owner:n.id,rect:n.label});for(const n of e.edges)n.label&&t.push({owner:n.id,rect:n.label});return t}function dn(e){const t=[],n=e.shapes.filter(g=>!g.container);for(const g of e.edges)for(const v of rn(g,n))t.push({kind:"edge-crosses-shape",edge:g.id,shape:v.id});const i=e.shapes.filter(g=>g.container&&zE.has(g.type));if(i.length){const g=(v,b)=>{const x=e.shapes.find(C=>C.id===b);return!!x&&x.x>=v.x&&x.y>=v.y&&x.x+x.width<=v.x+v.width&&x.y+x.height<=v.y+v.height};for(const v of e.edges)for(const b of rn(v,i))v.endpoints.includes(b.id)||v.endpoints.some(x=>g(b,x))||t.push({kind:"edge-crosses-subprocess",edge:v.id,subProcess:b.id})}for(const g of e.edges){if(g.waypoints.length<2)continue;const v=[[g.source,g.waypoints[0]],[g.target,g.waypoints[g.waypoints.length-1]]];for(const[b,x]of v){if(!b)continue;const C=e.shapes.find(I=>I.id===b);if(!C||C.container)continue;const T=Math.max(C.x-x.x,x.x-(C.x+C.width),0),k=Math.max(C.y-x.y,x.y-(C.y+C.height),0),A=Math.hypot(T,k);A>KE&&t.push({kind:"edge-endpoint-detached",edge:g.id,shape:b,distance:Math.round(A)})}}const r=e.shapes.filter(g=>g.type==="bpmn:Participant");for(let g=0;g<r.length;g++)for(let v=g+1;v<r.length;v++){const b=r[g],x=r[v];if(b.x+b.width<=x.x||x.x+x.width<=b.x||b.y+b.height<=x.y||x.y+x.height<=b.y)continue;const C=(T,k)=>T.x<=k.x&&T.y<=k.y&&T.x+T.width>=k.x+k.width&&T.y+T.height>=k.y+k.height;t.push({kind:"pool-overlap",pools:[b.id,x.id],contained:C(b,x)||C(x,b)})}const o=n.filter(g=>!g.attached);for(let g=0;g<o.length;g++)for(let v=g+1;v<o.length;v++){const b=o[g],x=o[v];if(!ll(b,x,GE))continue;const C=b.id<x.id?[b.id,x.id]:[x.id,b.id];t.push({kind:"shape-overlap",shapes:C,identical:JE(b,x)})}const a=e.shapes.filter(g=>g.type==="bpmn:Group"&&Array.isArray(g.members)&&g.members.length>0);for(let g=0;g<a.length;g++)for(let v=g+1;v<a.length;v++){const b=a[g],x=a[v],C=Math.min(b.x+b.width,x.x+x.width)-Math.max(b.x,x.x),T=Math.min(b.y+b.height,x.y+x.height)-Math.max(b.y,x.y);if(C<=vs||T<=vs)continue;const k=b.id<x.id?[b.id,x.id]:[x.id,b.id],A=new Set(x.members);if(b.members.some(D=>A.has(D))){const D=oh(e,a,{x:Math.max(b.x,x.x),y:Math.max(b.y,x.y),right:Math.min(b.x+b.width,x.x+x.width),bottom:Math.min(b.y+b.height,x.y+x.height)});D.length&&t.push({kind:"group-overlap-unreadable",reason:"orphan",groups:k,shapes:D});continue}const I=b.x<=x.x&&b.y<=x.y&&b.x+b.width>=x.x+x.width&&b.y+b.height>=x.y+x.height?b.id:x.x<=b.x&&x.y<=b.y&&x.x+x.width>=b.x+b.width&&x.y+x.height>=b.y+b.height?x.id:void 0;t.push({kind:"group-overlap-unintended",groups:k,...I?{container:I}:{}})}const s=new Set(a.flatMap(g=>[...g.members])),c=g=>e.shapes.filter(v=>!v.container&&!al.has(v.type)&&v.x>=g.x&&v.y>=g.y&&v.x+v.width<=g.x+g.width&&v.y+v.height<=g.y+g.height);for(const g of a){const v=c(g);if(!v.length)continue;const b=new Set(g.members),x=v.filter(C=>!b.has(C.id));x.some(C=>s.has(C.id))&&(x.length*2<v.length||t.push({kind:"group-overlap-unreadable",reason:"minority",group:g.id,shapes:x.map(C=>C.id).sort()}))}for(const g of a){const v=new Set(c(g).map(A=>A.id)),b=new Set(g.members),x=new Set([...v].filter(A=>!b.has(A)&&s.has(A)));if(!x.size)continue;let C=!1,T=!1,k=!1;for(const A of e.edges){if(A.type!=="bpmn:SequenceFlow"||!A.source||!A.target)continue;const I=x.has(A.source),D=x.has(A.target);!I&&D&&!v.has(A.source)?C=!0:I&&!D&&!v.has(A.target)?T=!0:I&&D&&(k=!0)}C&&T&&k&&t.push({kind:"group-overlap-unreadable",reason:"throughpass",group:g.id,shapes:[...x].sort()})}const u=e.shapes.filter(g=>g.type==="bpmn:Group");for(let g=0;g<u.length;g++)for(let v=g+1;v<u.length;v++)for(let b=v+1;b<u.length;b++){const x=[u[g],u[v],u[b]],C={x:Math.max(...x.map(A=>A.x)),y:Math.max(...x.map(A=>A.y)),right:Math.min(...x.map(A=>A.x+A.width)),bottom:Math.min(...x.map(A=>A.y+A.height))};if(C.right-C.x<=vs||C.bottom-C.y<=vs)continue;const T=oh(e,[],C);if(!T.length)continue;const k=x.map(A=>A.id).sort();t.push({kind:"group-stack-unreadable",groups:k,shapes:T})}for(const g of e.shapes.filter(v=>v.type==="bpmn:Group"))for(const v of e.shapes){if(v.container||v.attached||al.has(v.type)||v.width<=0||v.height<=0)continue;const b=[["top",g.y,"h",g.x,g.x+g.width],["bottom",g.y+g.height,"h",g.x,g.x+g.width],["left",g.x,"v",g.y,g.y+g.height],["right",g.x+g.width,"v",g.y,g.y+g.height]];for(const[x,C,T,k,A]of b){const I=T==="h"?v.x:v.y,D=T==="h"?v.x+v.width:v.y+v.height;if(!(I<A&&k<D))continue;const L=T==="h"?v.y:v.x,z=T==="h"?v.y+v.height:v.x+v.width;if(!(L<C&&C<z))continue;const re=Math.min(C-L,z-C);re<WE||t.push({kind:"group-cuts-shape",group:g.id,shape:v.id,side:x,depth:re})}}const l=e.shapes.filter(g=>g.container&&g.type!=="bpmn:Group"&&g.type!=="bpmn:Lane");for(const g of e.shapes.filter(v=>v.type==="bpmn:Group"))for(const v of l){const b=g.x<v.x+v.width&&v.x<g.x+g.width,x=g.y<v.y+v.height&&v.y<g.y+g.height,C=[["top",g.y,v.y,b],["bottom",g.y+g.height,v.y+v.height,b],["left",g.x,v.x,x],["right",g.x+g.width,v.x+v.width,x]];for(const[T,k,A,I]of C)I&&Math.abs(k-A)<=Kd&&t.push({kind:"group-on-container-boundary",group:g.id,container:v.id,side:T})}const p=e.shapes.filter(g=>g.type==="bpmn:Group");for(let g=0;g<p.length;g++)for(let v=g+1;v<p.length;v++){const b=p[g],x=p[v],C=b.x<x.x+x.width&&x.x<b.x+b.width,T=b.y<x.y+x.height&&x.y<b.y+b.height,k=[["x",b.x+b.width,x.x,T],["x",x.x+x.width,b.x,T],["y",b.y+b.height,x.y,C],["y",x.y+x.height,b.y,C]];for(const[A,I,D,L]of k)if(L&&Math.abs(I-D)<=Kd){t.push({kind:"group-on-group-boundary",groups:b.id<x.id?[b.id,x.id]:[x.id,b.id],axis:A});break}}for(let g=0;g<e.edges.length;g++)for(let v=g+1;v<e.edges.length;v++){const b=e.edges[g],x=e.edges[v],C=lo(b,x);if(!C)continue;const T=b.id<x.id?[b.id,x.id]:[x.id,b.id];t.push({kind:C.kind==="opposite"?"edge-overlap-opposite":C.kind==="mixed"?"edge-overlap-mixed":"edge-overlap-unrelated",edges:T,axis:C.axis,length:Math.round(C.length)})}for(const g of e.edges){if(!g.label)continue;const v=xs(g,e.edges);v&&t.push({kind:"label-on-shared-segment",edge:g.id,other:v.other,axis:v.axis})}for(const g of e.edges){if(!g.label)continue;const v=th(g,e);v&&t.push({kind:"label-over-line",edge:g.id,line:v})}const f=new Set(n.map(g=>g.id)),d=e.shapes.filter(g=>g.type==="bpmn:Participant"&&g.label);for(const g of[...n,...d.filter(v=>!f.has(v.id))]){if(!g.label)continue;const v=ch(g,e);v&&t.push({kind:"label-over-line",edge:g.id,line:v})}const m=new Set(e.shapes.filter(g=>g.type==="bpmn:TextAnnotation").map(g=>g.id));for(const g of d)for(const{owner:v,rect:b}of fo(e))v===g.id||m.has(v)||ll(g.label,b,po)&&t.push({kind:"pool-name-over-label",pool:g.id,label:v});const h=fo(e);for(const g of n)if(g.type==="bpmn:TextAnnotation")for(const{owner:v,rect:b}of h)v!==g.id&&ll(g,b,po)&&t.push({kind:"annotation-over-label",annotation:g.id,label:v});const y=new Map(e.shapes.map(g=>[g.id,g]));for(const g of n){const v=g.parent??n1(g,e,y);if(!v)continue;const b=y.get(v);!b||!b.container||ZE(b,g,XE)||t.push({kind:"shape-outside-container",shape:g.id,container:b.id})}return t.sort((g,v)=>bn(g).localeCompare(bn(v)))}const _t=e=>typeof e=="object"&&e!==null?e:void 0,Mt=e=>typeof e=="number"?e:0,Oi=e=>{const t=_t(e);return typeof(t==null?void 0:t.id)=="string"?t.id:void 0};function i1(e){const t=_t(e);if(!t)return[];const n=[];for(const i of["sourceRef","targetRef"]){const r=t[i];for(const o of Array.isArray(r)?r:[r]){const a=Oi(o);a&&n.push(a)}}return n}function r1(e){const t=_t(e);if(!t)return{};const n=Array.isArray(t.sourceRef)?void 0:Oi(t.sourceRef),i=Array.isArray(t.targetRef)?void 0:Oi(t.targetRef);return n&&i?{source:n,target:i}:{}}function o1(e,t){const n=_t(e.$parent);if(!n)return;const i=typeof n.$type=="string"?n.$type:"";if(i==="bpmn:Process"){const r=Oi(n);return r?t.get(r):void 0}if(ys.has(i)&&i!=="bpmn:Lane"&&i!=="bpmn:Group")return Oi(n)}function uh(e){var a,s,c,u,l;const t=[],n=[],i=((a=_t(e))==null?void 0:a.diagrams)??[],r=new Map,o=new Set;for(const p of((s=_t(e))==null?void 0:s.rootElements)??[]){const f=_t(p);if((f==null?void 0:f.$type)==="bpmn:Collaboration")for(const d of f.participants??[]){const m=_t(d),h=Oi(m),y=Oi(m==null?void 0:m.processRef);h&&y?r.set(y,h):h&&o.add(h)}}for(const p of i){const f=_t((c=_t(p))==null?void 0:c.plane),d=(f==null?void 0:f.planeElement)??[];for(const m of d){const h=_t(m);if(!h)continue;const y=_t(h.bpmnElement),g=typeof(y==null?void 0:y.id)=="string"?y.id:void 0;if(!g)continue;const v=typeof(y==null?void 0:y.$type)=="string"?y.$type:"",b=_t(h.bounds);if(b){const C=h.isExpanded===!1&&v!=="bpmn:Participant",T=_t((u=_t(h.label))==null?void 0:u.bounds),k={id:g,type:v,x:Mt(b.x),y:Mt(b.y),width:Mt(b.width),height:Mt(b.height),container:ys.has(v)&&!C,attached:(y==null?void 0:y.attachedToRef)!==void 0,...y?{parent:o1(y,r)}:{},...T?{label:{x:Mt(T.x),y:Mt(T.y),width:Mt(T.width),height:Mt(T.height)}}:{},...v==="bpmn:Group"?sh(ah(y)):{}},A=h.isHorizontal!==!1,I=typeof(y==null?void 0:y.name)=="string"?y.name:"";o.has(g)&&A&&I&&(k.label=sl(k,I)),t.push(k);continue}const x=h.waypoint;if(Array.isArray(x)){const C=_t((l=_t(h.label))==null?void 0:l.bounds);n.push({id:g,type:v,waypoints:x.map(T=>{var k,A;return{x:Mt((k=_t(T))==null?void 0:k.x),y:Mt((A=_t(T))==null?void 0:A.y)}}),endpoints:i1(y),...r1(y),...C?{label:{x:Mt(C.x),y:Mt(C.y),width:Mt(C.width),height:Mt(C.height)}}:{}})}}}return{shapes:t,edges:n}}function lh(e){return dn(uh(e))}async function a1(e){const{definitions:t,warnings:n}=await rl(e);return{findings:lh(t),warnings:n}}function ot(e){var i;const t=[],n=[];for(const r of e.getAll()){const o=r;if(o.type==="label"||o.labelTarget)continue;const a=typeof o.type=="string"?o.type:"";if(a==="bpmn:Definitions"||a.startsWith("bpmndi:"))continue;const s=o.waypoints;if(s){const h=_t(o.label),y=Oi(o.source),g=Oi(o.target);n.push({id:o.id,type:a,waypoints:s.map(v=>({x:Mt(v.x),y:Mt(v.y)})),endpoints:[y,g].filter(v=>!!v),...y&&g?{source:y,target:g}:{},...h&&typeof h.x=="number"?{label:{x:h.x,y:Mt(h.y),width:Mt(h.width),height:Mt(h.height)}}:{}});continue}if(typeof o.x!="number"||typeof o.y!="number")continue;const c=_t(o.businessObject),u=_t(o.label);let l=_t(o.parent);for(;l&&l.type==="bpmn:Lane";)l=_t(l.parent);const p=typeof(l==null?void 0:l.type)=="string"?l.type:"",f=l&&ys.has(p)&&p!=="bpmn:Group"&&typeof l.id=="string"?l.id:void 0,d={id:o.id,type:a,x:o.x,y:o.y,width:Mt(o.width),height:Mt(o.height),container:ys.has(a)&&(a==="bpmn:Participant"||o.collapsed!==!0),attached:(c==null?void 0:c.attachedToRef)!==void 0,...f!==void 0?{parent:f}:{},...u&&typeof u.x=="number"?{label:{x:u.x,y:Mt(u.y),width:Mt(u.width),height:Mt(u.height)}}:{},...a==="bpmn:Group"?sh(ah(c)):{}},m=typeof(c==null?void 0:c.name)=="string"?c.name:"";a==="bpmn:Participant"&&!(c!=null&&c.processRef)&&m&&((i=_t(o.di))==null?void 0:i.isHorizontal)!==!1&&(d.label=sl(d,m)),t.push(d)}return{shapes:t,edges:n}}const s1={"bpmn:Participant":"participant","bpmn:Lane":"lane","bpmn:SequenceFlow":"sequenceFlow","bpmn:MessageFlow":"messageFlow","bpmn:DataStoreReference":"dataStore","bpmn:DataInputAssociation":"dataAssociation","bpmn:DataOutputAssociation":"dataAssociation","bpmn:TextAnnotation":"annotation","bpmn:Association":"association","bpmn:Group":"group"};function c1(e,t){const n=s1[e];return n||(e==="label"||e.startsWith("bpmndi:")?"other":e.startsWith("bpmn:")&&!("waypoints"in t&&t.waypoints)?"flowNode":"other")}function ph(e){let t=e.parent;for(;t;){if(t.type==="bpmn:Participant")return t.id;t=t.parent}}function fh(e){const t=()=>e.getAll().filter(n=>n.type!=="label"&&!("labelTarget"in n&&n.labelTarget));return{isCollaboration:()=>t().some(n=>n.type==="bpmn:Participant"),categoryOf:n=>{const i=e.get(n);if(!(!i||i.type==="label"))return c1(i.type,i)},lanesOf:n=>t().filter(i=>i.type==="bpmn:Lane"&&ph(i)===n).sort((i,r)=>i.y-r.y).map(i=>i.id),participantOf:n=>{const i=e.get(n);return i?ph(i):void 0},endpointsOf:n=>{var r,o;const i=e.get(n);if(!(!i||i.type==="label")&&"waypoints"in i)return{source:(r=i.source)==null?void 0:r.id,target:(o=i.target)==null?void 0:o.id}}}}const pl=20,u1=4,yt=(e,t)=>Math.abs(e-t)<.5;function ws(e,t,n,i=pl){if(yt(e.y,t.y)&&!yt(e.x,t.x)){const r=Math.min(e.x,t.x),o=Math.max(e.x,t.x);if(!(r<n.x-i&&n.x+n.width+i<o))return null;const a=e.x<t.x?n.x-i:n.x+n.width+i,s=e.x<t.x?n.x+n.width+i:n.x-i,c=u=>[{x:a,y:e.y},{x:a,y:u},{x:s,y:u},{x:s,y:e.y}];return[c(n.y-i),c(n.y+n.height+i)]}if(yt(e.x,t.x)&&!yt(e.y,t.y)){const r=Math.min(e.y,t.y),o=Math.max(e.y,t.y);if(!(r<n.y-i&&n.y+n.height+i<o))return null;const a=e.y<t.y?n.y-i:n.y+n.height+i,s=e.y<t.y?n.y+n.height+i:n.y-i,c=u=>[{x:e.x,y:a},{x:u,y:a},{x:u,y:s},{x:e.x,y:s}];return[c(n.x-i),c(n.x+n.width+i)]}return null}function dh(e,t,n,i=pl){if(n.length<2)return null;if(yt(e.y,t.y)&&!yt(e.x,t.x)){const r=Math.min(e.x,t.x),o=Math.max(e.x,t.x),a=Math.min(...n.map(d=>d.x))-i,s=Math.max(...n.map(d=>d.x+d.width))+i;if(!(r<a&&s<o))return null;const c=e.x<t.x?a:s,u=e.x<t.x?s:a,l=Math.min(...n.map(d=>d.y))-i,p=Math.max(...n.map(d=>d.y+d.height))+i,f=d=>[{x:c,y:e.y},{x:c,y:d},{x:u,y:d},{x:u,y:e.y}];return[f(l),f(p)]}if(yt(e.x,t.x)&&!yt(e.y,t.y)){const r=Math.min(e.y,t.y),o=Math.max(e.y,t.y),a=Math.min(...n.map(d=>d.y))-i,s=Math.max(...n.map(d=>d.y+d.height))+i;if(!(r<a&&s<o))return null;const c=e.y<t.y?a:s,u=e.y<t.y?s:a,l=Math.min(...n.map(d=>d.x))-i,p=Math.max(...n.map(d=>d.x+d.width))+i,f=d=>[{x:e.x,y:c},{x:d,y:c},{x:d,y:u},{x:e.x,y:u}];return[f(l),f(p)]}return null}function hh(e,t,n=pl){if(e.length!==4)return null;const[i,r,o,a]=e;if(yt(i.y,r.y)&&yt(r.x,o.x)&&yt(o.y,a.y)){const s=c=>[i,{x:c,y:i.y},{x:c,y:a.y},a];return[s(t.x-n),s(t.x+t.width+n)]}if(yt(i.x,r.x)&&yt(r.y,o.y)&&yt(o.x,a.x)){const s=c=>[i,{x:i.x,y:c},{x:a.x,y:c},a];return[s(t.y-n),s(t.y+t.height+n)]}return null}function Es(e,t){if(e.endpoints.length!==2)return[];const n=t.find(p=>p.id===e.endpoints[0]),i=t.find(p=>p.id===e.endpoints[1]);if(!n||!i)return[];if(i.x<=n.x+n.width)return[];const r=n.y+n.height/2,o=i.y+i.height/2;if(r>=i.y&&r<=i.y+i.height)return[];const a=i.x+i.width/2,s=n.x+n.width/2,c=r>o,u=[{x:n.x+n.width,y:r},{x:a,y:r},{x:a,y:c?i.y+i.height:i.y}],l=[{x:s,y:c?n.y:n.y+n.height},{x:s,y:o},{x:i.x,y:o}];return[u,l]}const mh=30,l1=[0,-25,25,-40,40];function p1(e,t){if(e.type!=="bpmn:MessageFlow"||e.endpoints.length!==2)return[];const n=t.find(f=>f.id===e.endpoints[0]),i=t.find(f=>f.id===e.endpoints[1]);if(!n||!i)return[];const r=n.y+n.height/2,o=i.y+i.height/2;if(i.y<n.y+n.height&&i.y+i.height>n.y)return[];const a=o<r,s=a?n.y+n.height:n.y,c=a?s+mh:s-mh,u=a?i.y+i.height:i.y,l=n.x+n.width/2,p=i.x+i.width/2;return l1.map(f=>[{x:l,y:s},{x:l,y:c},{x:p+f,y:c},{x:p+f,y:u}])}const fl=(e,t,n)=>[...e.slice(0,t+1),...n,...e.slice(t+1)],ho=(e,t,n)=>rn({...e,waypoints:t},n).length;function dl(e,t,n,i){let r=[...e.waypoints],o=ho(e,r,t);if(o===0)return null;let a=!1;for(const p of Es(e,t))if(ho(e,p,t)===0)return p;const s=(i??[]).filter(p=>p.id!==e.id).flatMap(xn),c=p=>xn({...e,waypoints:p}).some(f=>bs(f,s).length>0),u=p1(e,t).filter(p=>ho(e,p,t)===0);if(u.length)return u.find(p=>!c(p))??u[0];const l=p=>!n||p.every(f=>f.x>=n.x&&f.x<=n.x+n.width&&f.y>=n.y&&f.y<=n.y+n.height);if(e.endpoints.length===2&&r.length>2){const p=t.find(d=>d.id===e.endpoints[0]),f=t.find(d=>d.id===e.endpoints[1]);if(p&&f&&yt(p.y+p.height/2,f.y+f.height/2)){const d=[r[0],r[r.length-1]];if(yt(d[0].y,d[1].y)&&!yt(d[0].x,d[1].x)){const m=t.filter(v=>!e.endpoints.includes(v.id)&&rn({...e,waypoints:d},[v]).length>0),h=m.length>=2?dh(d[0],d[1],m):null,g=(h?h.map(v=>[d[0],...v,d[1]]):m.length===1?(ws(d[0],d[1],m[0])??[]).map(v=>[d[0],...v,d[1]]):m.length===0?[d]:[]).filter(v=>ho(e,v,t)===0&&v.length<=r.length).sort((v,b)=>Number(l(b))-Number(l(v)));if(g.length)return g.find(v=>!c(v))??g[0]}}}for(let p=0;p+1<r.length;p++){const f=r[p],d=r[p+1],m=t.filter(g=>!e.endpoints.includes(g.id)&&rn({...e,waypoints:[f,d]},[g]).length>0);if(m.length<2)continue;const h=dh(f,d,m);if(!h)continue;const y=h.map(g=>fl(r,p,g)).filter(g=>ho(e,g,t)===0).sort((g,v)=>Number(l(v))-Number(l(g)));if(y.length)return y.find(g=>!c(g))??y[0]}for(let p=0;p<u1&&o>0;p++){let f=!1;for(let d=0;d+1<r.length&&!f;d++){const m=r[d],h=r[d+1];for(const y of t){if(e.endpoints.includes(y.id)||rn({...e,waypoints:[m,h]},[y]).length===0)continue;const g=ws(m,h,y),v=g?g.map(x=>fl(r,d,x)):hh(r,y)??[];if(!v.length)continue;const b=[...v].sort((x,C)=>Number(l(C))-Number(l(x)));for(const x of b){const C=ho(e,x,t);if(C<o){r=x,o=C,f=!0,a=!0;break}}if(f)break}}if(!f)break}return a&&o===0?r:null}function hl(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=Vn(o),s=new Set,c=dn(o).filter(l=>l.kind==="edge-crosses-shape"&&!t.has(bn(l)));if(!c.length)return s;const u=new Map;for(const l of c){if(l.kind!=="edge-crosses-shape"||u.has(l.edge))continue;const p=o.edges.find(f=>f.id===l.edge);p&&u.set(l.edge,p)}for(const[l,p]of u){if(n&&!n.has(l))continue;const f=i.get(l);if(!f)continue;const d=f.parent,m=d&&typeof d.x=="number"&&typeof d.width=="number"?{x:d.x,y:d.y,width:d.width,height:d.height}:void 0,h=dl(p,a,m,o.edges);if(!h){rn(p,a).some(b=>b.type==="bpmn:TextAnnotation")&&s.add(l);continue}const y=o.edges.filter(b=>b.id!==l),g=zn(p,y);zn({...p,waypoints:h},y)>g||r.updateWaypoints(f,h)}return s}const f1=e=>{const t=[];for(let n=0;n+1<e.waypoints.length;n++){const i=e.waypoints[n],r=e.waypoints[n+1];t.push({id:`__ghost:${e.id}:${n}`,type:"bpmn:Task",x:Math.min(i.x,r.x)-1,y:Math.min(i.y,r.y)-1,width:Math.max(2,Math.abs(r.x-i.x)+2),height:Math.max(2,Math.abs(r.y-i.y)+2),container:!1,attached:!1})}return t},ml=(e,t)=>na(e,[t])>0;function gh(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=Vn(o);let s=o;const c=new Set(dn(o).map(bn));for(const[u,l]of _s(o))if(!t.has(`${u}|${l}`))for(const[p,f]of[[u,l],[l,u]]){if(n.has(p))continue;const d=s.edges.find(I=>I.id===p),m=s.edges.find(I=>I.id===f);if(!d||!m)continue;const h=i.get(p);if(!h)continue;const y=h.parent,g=y&&typeof y.x=="number"&&typeof y.width=="number"?{x:y.x,y:y.y,width:y.width,height:y.height}:void 0,v=f1(m),b=[...Es(d,a)??[]],x=dl(d,[...a,...v],g,o.edges);x&&b.push(x);for(let I=0;I+1<d.waypoints.length;I++)for(const D of v)for(const L of ws(d.waypoints[I],d.waypoints[I+1],D)??[])b.push(fl(d.waypoints,I,L));const C=s.edges.filter(I=>I.id!==p),T=I=>({...s,edges:s.edges.map(D=>D.id===p?{...D,waypoints:I}:D)}),k=I=>!g||I.every(D=>D.x>=g.x&&D.x<=g.x+g.width&&D.y>=g.y&&D.y<=g.y+g.height),A=b.find(I=>{const D={...d,waypoints:I};return ml(D,m)||!k(I)||C.some(L=>L.id!==f&&!ml(d,L)&&ml(D,L))?!1:dn(T(I)).every(L=>c.has(bn(L)))});if(A){r.updateWaypoints(h,A),s=T(A);break}}}const d1=10;function yh(e,t){if(e.parent){const r=t.find(o=>o.id===e.parent);if(r)return r}const n=e.x+e.width/2,i=e.y+e.height/2;return t.find(r=>n>=r.x&&n<=r.x+r.width&&i>=r.y&&i<=r.y+r.height)}function vh(e,t){if(e.waypoints.length<2||e.endpoints.length!==2)return null;const n=t.shapes.filter(z=>z.type==="bpmn:Participant"&&z.container),i=t.shapes.find(z=>z.id===e.endpoints[0]),r=t.shapes.find(z=>z.id===e.endpoints[1]);if(!i||!r)return null;const o=yh(i,n),a=yh(r,n);if(!o||!a||o.id===a.id)return null;const s=a.y>o.y,c=s?o:a,u=s?a:o,l=n.filter(z=>z.id!==o.id&&z.id!==a.id&&z.y>=c.y+c.height&&z.y+z.height<=u.y).sort((z,re)=>z.y-re.y);if(!l.length)return null;const p=l[0],f=l[l.length-1],d=(c.y+c.height+p.y)/2,m=(f.y+f.height+u.y)/2,h=s?d:m,y=s?m:d,g=e.waypoints[0],v=e.waypoints[e.waypoints.length-1],b=Vn(t),x=t.edges.filter(z=>z.id!==e.id),C=Gn(e,x),T=rn(e,b).length;if(C===0&&T===0||T===0&&e.waypoints.length===2)return null;const k=Math.min(...l.map(z=>z.x)),A=Math.max(...l.map(z=>z.x+z.width)),I=(g.x+v.x)/2,D=z=>z.filter((re,de)=>de===0||!(yt(re.x,z[de-1].x)&&yt(re.y,z[de-1].y)));let L;for(let z=k;z<=A;z+=d1){const re=D([g,{x:g.x,y:h},{x:z,y:h},{x:z,y},{x:v.x,y},v]),de={...e,waypoints:re};if(rn(de,b).length>0)continue;const Ue=Gn(de,x),je=Math.abs(z-I);(!L||Ue<L.cross||Ue===L.cross&&je<L.detour)&&(L={pts:re,cross:Ue,detour:je})}return L&&(T>0?L.cross<=C:L.cross<C)?L.pts:null}function bh(e,t){const{elementRegistry:n}=e,i=e.modeling,r=ot(n);for(const o of r.edges){if(o.type!=="bpmn:MessageFlow"||t.has(o.id))continue;const a=ot(n),s=a.edges.find(l=>l.id===o.id);if(!s)continue;const c=vh(s,a);if(!c)continue;const u=n.get(o.id);u&&i.updateWaypoints(u,c)}}const mi=[25,-25,40,-40],mo=35;function h1(e,t){const n=e.x+e.width/2,i=t.x+t.width/2,r=[];for(const o of[!0,!1]){const a=o?e.y:e.y+e.height,s=o?t.y:t.y+t.height,c=o?Math.min(e.y,t.y)-mo:Math.max(e.y+e.height,t.y+t.height)+mo;for(const u of[0,...mi])if(!(Math.abs(u)>=e.width/2-5))for(const l of[0,...mi]){if(Math.abs(l)>=t.width/2-5)continue;const p=n+u,f=i+l;r.push({pts:[{x:p,y:a},{x:p,y:c},{x:f,y:c},{x:f,y:s}],cost:Math.abs(l)+Math.abs(u)})}}return r}function Ss(e,t){if(e.type!=="bpmn:SequenceFlow")return[];const n=t.get(e.endpoints[0]??""),i=t.get(e.endpoints[1]??"");if(!n||!i)return[];if(i.x+i.width>n.x)return[];const r=n.y+n.height/2;if(r>=i.y&&r<=i.y+i.height)return h1(n,i);const o=i.x+i.width/2,a=n.x+n.width/2,s=r<i.y,c=s?i.y:i.y+i.height,u=s?n.y:n.y+n.height,l=s?n.y-mo:n.y+n.height+mo,p=[];for(const v of[0,...mi]){if(Math.abs(v)>=i.width/2-5)continue;const b=o+v;p.push({pts:[{x:n.x,y:r},{x:b,y:r},{x:b,y:c}],cost:Math.abs(v)});for(const x of[0,...mi]){if(Math.abs(x)>=n.width/2-5)continue;const C=a+x;p.push({pts:[{x:C,y:u},{x:C,y:l},{x:b,y:l},{x:b,y:c}],cost:Math.abs(v)+Math.abs(x)})}}const f=50,d=i.y+i.height/2,m=s?n.y+n.height:n.y;for(const v of[0,...mi]){if(Math.abs(v)>=n.width/2-5)continue;const b=a+v;p.push({pts:[{x:b,y:m},{x:b,y:d},{x:i.x+i.width,y:d}],cost:f+Math.abs(v)})}const h=60,y=s?i.y+i.height:i.y,g=s?i.y+i.height+mo:i.y-mo;for(const v of[0,...mi]){if(Math.abs(v)>=i.width/2-5)continue;const b=o+v;for(const x of[0,...mi]){if(Math.abs(x)>=n.width/2-5)continue;const C=a+x;p.push({pts:[{x:C,y:m},{x:C,y:g},{x:b,y:g},{x:b,y}],cost:h+Math.abs(v)+Math.abs(x)})}}return p}const Rs=30;function xh(e,t){for(let n=1;n<e.length-2;n++){const i=e[n],r=e[n+1],o=yt(i.y,r.y)&&!yt(i.x,r.x),a=yt(i.x,r.x)&&!yt(i.y,r.y);if(!(!o&&!a))for(const s of t)if(o){const c=Math.min(i.x,r.x);if(Math.max(i.x,r.x)<=s.x||c>=s.x+s.width)continue;if(Math.abs(i.y-s.y)<Rs||Math.abs(i.y-(s.y+s.height))<Rs)return!0}else{const c=Math.min(i.y,r.y);if(Math.max(i.y,r.y)<=s.y||c>=s.y+s.height)continue;if(Math.abs(i.x-s.x)<Rs||Math.abs(i.x-(s.x+s.width))<Rs)return!0}}return!1}const Cs=40;function m1(e,t,n){let i=0;for(const r of t){if(r.container||n.includes(r.id))continue;const o=r.x-Cs,a=r.x+r.width+Cs,s=r.y-Cs,c=r.y+r.height+Cs;for(let u=1;u<e.length-2;u++){const l=e[u],p=e[u+1],f={x:Math.min(l.x,p.x),y:Math.min(l.y,p.y)},d={x:Math.max(l.x,p.x),y:Math.max(l.y,p.y)};if(f.x<a&&d.x>o&&f.y<c&&d.y>s){i++;break}}}return i}function _h(e,t){if(e.type!=="bpmn:SequenceFlow")return null;const n=t.shapes.filter(T=>T.container),i=new Map(t.shapes.map(T=>[T.id,T])),r=Vn(t),o=t.edges.filter(T=>T.id!==e.id),a=zn(e,o),s=Gn(e,o),c=T=>m1(T,t.shapes,e.endpoints)+(xh(T,n)?1:0),u=c(e.waypoints),l=T=>{if(!T)return;const k=T.x+T.width/2,A=T.y+T.height/2;return n.find(I=>I.type==="bpmn:Lane"&&k>=I.x&&k<=I.x+I.width&&A>=I.y&&A<=I.y+I.height)},p=l(i.get(e.endpoints[0]??"")),f=l(i.get(e.endpoints[1]??"")),d=!!p&&!!f&&p.id!==f.id,m=T=>{if(!d||!f)return!1;for(let k=1;k<T.length-2;k++){const A=T[k],I=T[k+1];if(yt(A.y,I.y)&&!yt(A.x,I.x)&&A.y>f.y&&A.y<f.y+f.height)return!0}return!1},h=m(e.waypoints),g=(T=>{if(!T)return;const k=T.x+T.width/2,A=T.y+T.height/2;return n.filter(I=>I.type==="bpmn:Participant"&&k>=I.x&&k<=I.x+I.width&&A>=I.y&&A<=I.y+I.height).sort((I,D)=>I.width*I.height-D.width*D.height)[0]})(i.get(e.endpoints[0]??"")),v=T=>{if(!g)return 0;let k=0;for(let A=1;A<T.length-1;A++){const I=T[A];(I.x<g.x||I.x>g.x+g.width||I.y<g.y||I.y>g.y+g.height)&&k++}return k},b=v(e.waypoints);if(!xh(e.waypoints,n)&&!(d&&!h)&&b===0)return null;const x=T=>T.reduce((k,A,I)=>I?k+Math.abs(A.x-T[I-1].x)+Math.abs(A.y-T[I-1].y):0,0);let C;for(const{pts:T,cost:k}of Ss(e,i)){const A={...e,waypoints:T};if(rn(A,r).length>0)continue;const I=zn(A,o);if(I>a)continue;const D=v(T);if(D>b)continue;const L=D<b&&I===0;if(!L&&Gn(A,o)>s)continue;const z=c(T),re=m(T);if(!L&&!(re&&!h)&&z>=u)continue;const Ue=re?0:1,je=x(T);(!C||D<C.out||D===C.out&&(Ue<C.lane||Ue===C.lane&&(I<C.opp||I===C.opp&&(z<C.sc||z===C.sc&&(k<C.cost||k===C.cost&&je<C.len)))))&&(C={pts:T,out:D,sc:z,lane:Ue,opp:I,cost:k,len:je})}return(C==null?void 0:C.pts)??null}function g1(e,t){const{elementRegistry:n}=e,i=e.modeling,r=ot(n).edges.filter(o=>!t.has(o.id)&&o.waypoints.length>=4).map(o=>o.id).sort();for(const o of r){const a=ot(n),s=a.edges.find(d=>d.id===o);if(!s||s.waypoints.length<4)continue;const c=Vn(a),u=a.edges.filter(d=>d.id!==o),l=rn(s,c).length,p=zn(s,u),f=Gn(s,u);for(const d of Es(s,a.shapes)){if(d.length>=s.waypoints.length)continue;const m={...s,waypoints:d};if(rn(m,c).length>l||zn(m,u)>p||Gn(m,u)>f)continue;const h=n.get(o);h&&i.updateWaypoints(h,d);break}}}function wh(e,t){const{elementRegistry:n}=e,i=e.modeling,r=ot(n).edges.filter(o=>o.type==="bpmn:SequenceFlow"&&!t.has(o.id)).map(o=>o.id).sort();for(const o of r){const a=ot(n),s=a.edges.find(l=>l.id===o);if(!s)continue;const c=_h(s,a);if(!c)continue;const u=n.get(o);u&&i.updateWaypoints(u,c)}}function gl(e,t){const n=e.waypoints;if(n.length<3)return[];const i=[],r=t.get(e.endpoints[0]??""),o=t.get(e.endpoints[1]??""),a=yt(n[0].x,n[1].x)&&!yt(n[0].y,n[1].y),s=yt(n[n.length-1].x,n[n.length-2].x)&&!yt(n[n.length-1].y,n[n.length-2].y);for(const c of mi){if(a&&r&&Math.abs(c)<r.width/2-5){const u=n.map(l=>({...l}));u[0].x+=c,u[1].x+=c,i.push({pts:u,cost:Math.abs(c)})}if(s&&o&&Math.abs(c)<o.width/2-5){const u=n.map(l=>({...l}));u[u.length-1].x+=c,u[u.length-2].x+=c,i.push({pts:u,cost:Math.abs(c)})}}return i}function y1(e,t){if(e.type!=="bpmn:SequenceFlow")return[];const n=t.get(e.endpoints[0]??""),i=t.get(e.endpoints[1]??"");if(!n||!i)return[];if(Math.min(n.x+n.width,i.x+i.width)-Math.max(n.x,i.x)>=1)return[];const r=i.y+i.height<=n.y,o=n.y+n.height<=i.y;if(!r&&!o)return[];const a=i.x>=n.x+n.width,s=i.x+i.width<=n.x;if(!a&&!s)return[];const c=n.x+n.width/2,u=n.y+n.height/2,l=i.x+i.width/2,p=i.y+i.height/2,f=a?n.x+n.width:n.x,d=o?n.y+n.height:n.y,m=a?i.x:i.x+i.width,h=o?i.y:i.y+i.height,y=[];for(const g of[0,...mi])Math.abs(g)<i.width/2-5&&y.push({pts:[{x:f,y:u},{x:l+g,y:u},{x:l+g,y:h}],cost:Math.abs(g)}),Math.abs(g)<i.height/2-5&&y.push({pts:[{x:c,y:d},{x:c,y:p+g},{x:m,y:p+g}],cost:Math.abs(g)});return y}function yl(e,t){if(e.type!=="bpmn:SequenceFlow")return[];const n=t.get(e.endpoints[0]??""),i=t.get(e.endpoints[1]??"");if(!n||!i)return[];const r=Math.max(n.x,i.x),o=Math.min(n.x+n.width,i.x+i.width);if(o-r<1)return[];const a=i.y+i.height<=n.y,s=n.y+n.height<=i.y;if(!a&&!s)return[];const c=a?n.y:n.y+n.height,u=a?i.y+i.height:i.y,l=(r+o)/2,p=[];for(const f of[0,...mi]){const d=l+f;d<=r||d>=o||p.push({pts:[{x:d,y:c},{x:d,y:u}],cost:Math.abs(f)})}return p}function Eh(e,t){const n=new Map(t.shapes.map(d=>[d.id,d])),i=Vn(t),r=t.edges.filter(d=>d.id!==e.id),o=zn(e,r);if(o===0)return null;const a=Gn(e,r);let s;const c=d=>d.reduce((m,h,y)=>y?m+Math.abs(h.x-d[y-1].x)+Math.abs(h.y-d[y-1].y):0,0),u=3,l=d=>{const m=d[0],h=d[d.length-1],y=Math.hypot(h.x-m.x,h.y-m.y);return y>=1&&c(d)/y>=u?1:0},p=l(e.waypoints),f=[...Ss(e,n),...yl(e,n),...gl(e,n)];for(const{pts:d,cost:m}of f){const h={...e,waypoints:d};if(rn(h,i).length>0)continue;const y=zn(h,r),g=Gn(h,r),v=o-y+(p-l(d));if(y>=o||g-a>v)continue;const b=c(d);(!s||y<s.opposite||y===s.opposite&&(g<s.cross||g===s.cross&&(m<s.cost||m===s.cost&&b<s.len)))&&(s={pts:d,opposite:y,cross:g,cost:m,len:b})}return(s==null?void 0:s.pts)??null}function Sh(e,t){var i;let n=0;for(const r of t)r.id!==e.id&&((i=lo(e,r))==null?void 0:i.kind)==="unrelated"&&n++;return n}function v1(e,t){const n=new Map(t.shapes.map(f=>[f.id,f])),i=Vn(t),r=t.edges.filter(f=>f.id!==e.id),o=Sh(e,r);if(o===0)return null;const a=zn(e,r),s=Gn(e,r),c=f=>f.reduce((d,m,h)=>h?d+Math.abs(m.x-f[h-1].x)+Math.abs(m.y-f[h-1].y):0,0),u=2;let l;const p=[...Ss(e,n),...yl(e,n),...y1(e,n),...gl(e,n)];for(const{pts:f,cost:d}of p){const m={...e,waypoints:f};if(rn(m,i).length>0)continue;const h=Sh(m,r);if(h>=o)continue;const y=zn(m,r);if(y-h>a-o)continue;const g=Gn(m,r);if(g-s>(o-h)*u)continue;const v=c(f);(!l||h<l.fake||h===l.fake&&(y<l.unreadable||y===l.unreadable&&(g<l.cross||g===l.cross&&(d<l.cost||d===l.cost&&v<l.length))))&&(l={pts:f,fake:h,unreadable:y,cross:g,cost:d,length:v})}return(l==null?void 0:l.pts)??null}function Rh(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=dn(ot(i)).filter(s=>s.kind==="edge-overlap-unrelated"&&!t.has(bn(s)));if(!o.length)return;const a=new Set;for(const s of o)if(s.kind==="edge-overlap-unrelated")for(const c of s.edges)n.has(c)||a.add(c);for(const s of[...a].sort()){const c=ot(i),u=c.edges.find(f=>f.id===s);if(!u)continue;const l=v1(u,c);if(!l)continue;const p=i.get(s);p&&r.updateWaypoints(p,l)}}function Ch(e,t){const n=t.get(e.endpoints[0]??""),i=t.get(e.endpoints[1]??"");return!!n&&!!i&&i.x+i.width>n.x}function Ph(e,t,n){var u;if(e.type!=="bpmn:SequenceFlow"||t.type!=="bpmn:SequenceFlow"||((u=lo(e,t))==null?void 0:u.kind)!=="opposite")return!1;const[i,r]=e.endpoints,[o,a]=t.endpoints,s=[i,r].filter(l=>l&&(l===o||l===a)).length;return!(!!r&&r===o||!!a&&a===i)||s!==1?!1:Ch(e,n)&&Ch(t,n)}function Ah(e,t,n){let i=0;for(const r of t)r.id!==e.id&&Ph(e,r,n)&&i++;return i}function b1(e,t){const n=new Map(t.shapes.map(f=>[f.id,f])),i=Vn(t),r=t.edges.filter(f=>f.id!==e.id),o=Ah(e,r,n);if(o===0)return null;const a=zn(e,r),s=Gn(e,r),c=f=>f.reduce((d,m,h)=>h?d+Math.abs(m.x-f[h-1].x)+Math.abs(m.y-f[h-1].y):0,0),u=2;let l;const p=[...Ss(e,n),...yl(e,n),...gl(e,n)];for(const{pts:f,cost:d}of p){const m={...e,waypoints:f};if(rn(m,i).length>0)continue;const h=Ah(m,r,n);if(h>=o)continue;const y=zn(m,r);if(y-h>a-o)continue;const g=Gn(m,r);if(g-s>(o-h)*u)continue;const v=c(f);(!l||h<l.chain||h===l.chain&&(y<l.unreadable||y===l.unreadable&&(g<l.cross||g===l.cross&&(d<l.cost||d===l.cost&&v<l.length))))&&(l={pts:f,chain:h,unreadable:y,cross:g,cost:d,length:v})}return(l==null?void 0:l.pts)??null}function x1(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=new Map(o.shapes.map(u=>[u.id,u])),s=dn(o).filter(u=>u.kind==="edge-overlap-opposite"&&!t.has(bn(u)));if(!s.length)return;const c=new Set;for(const u of s){if(u.kind!=="edge-overlap-opposite")continue;const[l,p]=u.edges.map(f=>o.edges.find(d=>d.id===f));if(!(!l||!p||!Ph(l,p,a)))for(const f of u.edges)n.has(f)||c.add(f)}for(const u of[...c].sort()){const l=ot(i),p=l.edges.find(m=>m.id===u);if(!p)continue;const f=b1(p,l);if(!f)continue;const d=i.get(u);d&&r.updateWaypoints(d,f)}}function Th(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=dn(o).filter(l=>cl(l)&&!t.has(bn(l)));if(!a.length)return;const s=new Set;for(const l of a)if(cl(l))for(const p of l.edges)n.has(p)||s.add(p);const c=l=>{var p;return((p=o.edges.find(f=>f.id===l))==null?void 0:p.type)??""},u=[...s].sort((l,p)=>{const f=c(l)==="bpmn:SequenceFlow"?0:1,d=c(p)==="bpmn:SequenceFlow"?0:1;return f!==d?f-d:l.localeCompare(p)});for(const l of u){const p=ot(i),f=p.edges.find(h=>h.id===l);if(!f)continue;const d=Eh(f,p);if(!d)continue;const m=i.get(l);m&&r.updateWaypoints(m,d)}}const _1=10,w1=(e,t)=>e.x<t.x+t.width&&t.x<e.x+e.width&&e.y<t.y+t.height&&t.y<e.y+e.height;function Mh(e,t){const n=e.label;if(!n)return null;const i=t.edges.filter(a=>a.id!==e.id);if(!xs(e,i))return null;const r=Vn(t),o=i.flatMap(xn);for(const a of xn(e)){let s=[[a.lo,a.hi]];for(const[d,m]of bs(a,o))s=s.flatMap(([h,y])=>{const g=[];return d>h&&g.push([h,Math.min(y,d)]),m<y&&g.push([Math.max(h,m),y]),g.filter(([v,b])=>b>v)});const c=a.axis==="h"?n.width:n.height,u=s.find(([d,m])=>m-d>=c+_1*2);if(!u)continue;const l=(u[0]+u[1])/2,p=a.axis==="h"?{x:l,y:a.at-Jd}:{x:a.at+Mn+n.width/2,y:l},f={x:p.x-n.width/2,y:p.y-n.height/2,width:n.width,height:n.height};if(!xs({...e,label:f},i)&&!r.some(d=>!e.endpoints.includes(d.id)&&w1(f,d)))return f}return null}const Mn=8;function kh(e,t){const n=e.label;if(!n)return null;const i=xn(e);if(!i.length)return null;const r=n.x+n.width/2,o=n.y+n.height/2,a=f=>{const d=f.axis==="h"?r:o,m=f.axis==="h"?o-f.at:r-f.at,h=d<f.lo?f.lo-d:d>f.hi?d-f.hi:0;return Math.hypot(m,h)},s=i.reduce((f,d)=>a(d)<a(f)?d:f,i[0]),c=[...i,...t.edges.filter(f=>f.id!==e.id).flatMap(xn),...t.shapes.filter(f=>f.container).flatMap(ta)],u=f=>!c.some(d=>ki(f,d));if(u(n))return null;const l=(s.axis==="v"?n.height:n.width)+Mn,p=[0,-l,l,-2*l,2*l];if(s.axis==="v")for(const f of[s.at+Mn,s.at-Mn-n.width])for(const d of p){const m=n.y+d;if(m<s.lo||m+n.height>s.hi)continue;const h={...n,x:f,y:m};if(u(h))return h}else for(const f of[s.at-Mn-n.height,s.at+Mn])for(const d of p){const m=n.x+d;if(m<s.lo||m+n.width>s.hi)continue;const h={...n,x:m,y:f};if(u(h))return h}return null}function Oh(e,t){const{elementRegistry:n}=e,i=e.modeling,r=ot(n);for(const o of r.edges){if(!o.label||t.has(o.id))continue;const a=kh(o,r);if(!a)continue;const s=n.get(o.id),c=s==null?void 0:s.label;c&&i.moveElements([c],{x:a.x-c.x,y:a.y-c.y})}}function Dh(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=dn(o).filter(s=>s.kind==="label-on-shared-segment"&&!t.has(bn(s)));for(const s of a){if(s.kind!=="label-on-shared-segment"||n.has(s.edge))continue;const c=o.edges.find(f=>f.id===s.edge);if(!c)continue;const u=Mh(c,o);if(!u)continue;const l=i.get(s.edge),p=l==null?void 0:l.label;p&&r.moveElements([p],{x:u.x-p.x,y:u.y-p.y})}}function Lh(e,t){const n=e.label;if(!n)return null;const i=[...t.edges.flatMap(xn),...t.shapes.filter(f=>f.container).flatMap(ta)],r=i.filter(f=>ki(n,f));if(!r.length)return null;const o=t.shapes.filter(f=>!f.container&&f.id!==e.id),a=fo(t).filter(f=>f.owner!==e.id).map(f=>f.rect),s=(f,d)=>f.x<d.x+d.width&&d.x<f.x+f.width&&f.y<d.y+d.height&&d.y<f.y+f.height,c=f=>!i.some(d=>ki(f,d))&&!o.some(d=>s(f,d))&&!a.some(d=>s(f,d)),u=[];for(const f of r)f.axis==="h"?u.push({...n,y:f.at-Mn-n.height},{...n,y:f.at+Mn}):u.push({...n,x:f.at-Mn-n.width},{...n,x:f.at+Mn});const l=e.x+e.width/2,p=e.y+e.height/2;return u.push({...n,x:l-n.width/2,y:e.y+e.height+Mn},{...n,x:l-n.width/2,y:e.y-Mn-n.height},{...n,x:e.x+e.width+Mn,y:p-n.height/2},{...n,x:e.x-Mn-n.width,y:p-n.height/2}),u.find(c)??null}function Ih(e,t){const{elementRegistry:n}=e,i=e.modeling,r=ot(n);for(const o of r.shapes){if(o.container||!o.label||t.has(o.id))continue;const a=Lh(o,ot(n));if(!a)continue;const s=n.get(o.id),c=s==null?void 0:s.label;c&&i.moveElements([c],{x:a.x-c.x,y:a.y-c.y})}}const E1=/^[\p{L}_][\p{L}\p{N}_.\-]*$/u,Bh=new Set(["sequenceFlow","messageFlow","dataAssociation","association"]),Nh={"participant.add":[{path:"participant",shape:["id"]},{path:"participant.lanes[]",shape:["id"],optional:!0}],"participant.update":[{path:"id",shape:null},{path:"lanes[]",shape:["id"],optional:!0}],"node.add":[{path:"node",shape:["id","type"]}],"node.update":[{path:"id",shape:null}],"sequenceFlow.add":[{path:"flow",shape:["id","source","target"]}],"sequenceFlow.update":[{path:"id",shape:null}],"messageFlow.add":[{path:"flow",shape:["id","source","target"]}],"messageFlow.update":[{path:"id",shape:null}],"dataStore.add":[{path:"dataStore",shape:["id"]},{path:"associations[]",shape:["source","target"],optional:!0}],"dataStore.update":[{path:"id",shape:null}],"dataAssociation.add":[{path:"association",shape:["source","target"]}],"association.add":[{path:"association",shape:["source","target"]}],"annotation.add":[{path:"annotation",shape:["id","text"]},{path:"association",shape:["source","target"],optional:!0},{path:"placement",shape:["anchor","side"],optional:!0}],"annotation.update":[{path:"id",shape:null},{path:"placement",shape:["anchor","side"],optional:!0}],"group.add":[{path:"group",shape:["id"]},{path:"group.members[]",shape:null,optional:!0}],"group.update":[{path:"id",shape:null},{path:"members[]",shape:null,optional:!0}],"element.remove":[{path:"id",shape:null}]},Ps=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),vl=e=>typeof e=="string"&&e!=="";function S1(e){const t=[];function n(i,r,o,a){if(a===null){vl(o)||t.push({kind:"payload-invalid",opIndex:i,field:r});return}if(!Ps(o)){t.push({kind:"payload-invalid",opIndex:i,field:r});return}for(const s of a)vl(o[s])||t.push({kind:"payload-invalid",opIndex:i,field:`${r}.${s}`})}return e.forEach((i,r)=>{var o,a;if(!Ps(i)||!vl(i.kind)||!(i.kind in Nh)){t.push({kind:"payload-invalid",opIndex:r,field:"kind"});return}for(const s of Nh[i.kind]){const c=s.path.endsWith("[]"),u=c?s.path.slice(0,-2):s.path,l=u.split(".");let p=i;for(const d of l.slice(0,-1)){if(!Ps(p))break;p=p[d]}if(!Ps(p))continue;const f=p[l[l.length-1]];if(!(f===void 0&&s.optional)&&!(f===null&&s.optional)){if(!c){n(r,s.path,f,s.shape);continue}if(!Array.isArray(f)){t.push({kind:"payload-invalid",opIndex:r,field:s.path});continue}f.forEach((d,m)=>n(r,`${u}[${m}]`,d,s.shape))}}if(i.kind==="node.add"||i.kind==="node.update"){const s=i.band;s!==void 0&&(!Number.isInteger(s)||s<0)&&t.push({kind:"payload-invalid",opIndex:r,field:"band"});const c=i.kind==="node.add"?(o=i.node)==null?void 0:o.type:i.type;typeof c=="string"&&!yd(c)&&t.push({kind:"node-type-unsupported",opIndex:r,id:(i.kind==="node.add"?(a=i.node)==null?void 0:a.id:i.id)??"",type:c})}}),t}function $h(e,t){const n=S1(e);if(n.length>0)return n;const i=[],r=new Map,o=new Map;function a(f,d,m){if(!E1.test(d)){i.push({kind:"id-invalid",opIndex:f,id:d});return}if(t.categoryOf(d)!==void 0||r.has(d)){i.push({kind:"id-duplicate",opIndex:f,id:d});return}r.set(d,{...m,opIndex:f})}e.forEach((f,d)=>{var m;switch(f.kind){case"participant.add":a(d,f.participant.id,{category:"participant",lanes:(f.participant.lanes??[]).map(h=>h.id)});for(const h of f.participant.lanes??[])a(d,h.id,{category:"lane"});break;case"node.add":a(d,f.node.id,{category:"flowNode",participant:f.node.participant});break;case"sequenceFlow.add":a(d,f.flow.id,{category:"sequenceFlow"});break;case"messageFlow.add":a(d,f.flow.id,{category:"messageFlow"});break;case"dataStore.add":a(d,f.dataStore.id,{category:"dataStore"});for(const h of f.associations??[])h.id&&a(d,h.id,{category:"dataAssociation"});break;case"dataAssociation.add":f.association.id&&a(d,f.association.id,{category:"dataAssociation"});break;case"association.add":f.association.id&&a(d,f.association.id,{category:"association"});break;case"annotation.add":a(d,f.annotation.id,{category:"annotation"}),(m=f.association)!=null&&m.id&&a(d,f.association.id,{category:"association"});break;case"group.add":a(d,f.group.id,{category:"group"});break;case"participant.update":if(f.lanes){o.set(f.id,f.lanes.map(h=>h.id));for(const h of f.lanes)t.categoryOf(h.id)===void 0&&a(d,h.id,{category:"lane"})}break}});const s=f=>{var d;return((d=r.get(f))==null?void 0:d.category)??t.categoryOf(f)},c=f=>{const d=r.get(f);return d?d.category==="participant"?f:d.participant:t.categoryOf(f)==="participant"?f:t.participantOf(f)};function u(f,d,m,h){const y=s(d);if(y===void 0){i.push({kind:"ref-missing",opIndex:f,ref:d,role:m});return}if(h&&!h.includes(y)){i.push({kind:"ref-category",opIndex:f,ref:d,role:m,expected:h.join("|"),actual:y});return}return y}const l=t.isCollaboration()||e.some(f=>f.kind==="participant.add");return e.forEach((f,d)=>{var m;switch(f.kind){case"participant.add":break;case"node.add":{const{participant:h,lane:y}=f.node;if(h===void 0){(l||y!==void 0)&&i.push({kind:"participant-required",opIndex:d,id:f.node.id});break}if(u(d,h,"participant",["participant"])===void 0)break;y!==void 0&&((((m=r.get(h))==null?void 0:m.lanes)??o.get(h)??t.lanesOf(h)).includes(y)||i.push({kind:"lane-unknown",opIndex:d,lane:y,participant:h}));break}case"sequenceFlow.add":{const{id:h,source:y,target:g,name:v,condition:b}=f.flow,x=u(d,y,"source",["flowNode"]),C=u(d,g,"target",["flowNode"]);x&&C&&c(y)!==c(g)&&i.push({kind:"flow-cross-pool",opIndex:d,id:h}),v!==void 0&&b!==void 0&&i.push({kind:"condition-name-conflict",opIndex:d,id:h});break}case"messageFlow.add":{const{id:h,source:y,target:g}=f.flow,v=u(d,y,"source",["flowNode","participant"]),b=u(d,g,"target",["flowNode","participant"]);if(v&&b){const x=c(y),C=c(g);x!==void 0&&x===C&&i.push({kind:"message-flow-same-pool",opIndex:d,id:h})}break}case"dataStore.add":{for(const h of f.associations??[]){if([h.source,h.target].filter(v=>v===f.dataStore.id).length!==1){i.push({kind:"data-association-ends",opIndex:d,source:h.source,target:h.target});continue}const g=h.source===f.dataStore.id?h.target:h.source;u(d,g,"dataAssociation",["flowNode"])}break}case"dataAssociation.add":{const{source:h,target:y}=f.association,g=u(d,h,"source"),v=u(d,y,"target");if(g&&v){const b=new Set([g,v]);b.has("dataStore")&&b.has("flowNode")||i.push({kind:"data-association-ends",opIndex:d,source:h,target:y})}break}case"association.add":{const{id:h,source:y,target:g}=f.association,v=u(d,y,"source"),b=u(d,g,"target");v&&b&&v!=="annotation"&&b!=="annotation"&&i.push({kind:"association-detached",opIndex:d,annotation:h??`${y}->${g}`});break}case"annotation.add":{if(f.association){const{source:h,target:y}=f.association;if(h!==f.annotation.id&&y!==f.annotation.id)i.push({kind:"association-detached",opIndex:d,annotation:f.annotation.id});else{const g=h===f.annotation.id?y:h;u(d,g,"association")}}f.placement&&u(d,f.placement.anchor,"anchor");break}case"group.add":{for(const h of f.group.members??[]){const y=u(d,h,"member");y&&Bh.has(y)&&i.push({kind:"ref-category",opIndex:d,ref:h,role:"member",expected:"shape",actual:y})}break}case"participant.update":{if(p(d,f.id,"participant")===void 0)break;if(f.lanes){const h=t.lanesOf(f.id),y=f.lanes.map(v=>v.id);for(const v of h)y.includes(v)||i.push({kind:"lane-shrink-unsupported",opIndex:d,participant:f.id,lane:v});for(const v of y)t.categoryOf(v)!==void 0&&!h.includes(v)&&i.push({kind:"id-duplicate",opIndex:d,id:v});const g=y.filter(v=>h.includes(v));g.length===h.length&&g.some((v,b)=>v!==h[b])&&i.push({kind:"lane-reorder-unsupported",opIndex:d,participant:f.id})}break}case"node.update":{if(p(d,f.id,"flowNode")===void 0)break;if(f.lane!==void 0){const h=t.participantOf(f.id);(h?o.get(h)??t.lanesOf(h):[]).includes(f.lane)||i.push({kind:"lane-unknown",opIndex:d,lane:f.lane,participant:h??""})}break}case"sequenceFlow.update":{if(p(d,f.id,"sequenceFlow")===void 0)break;if(f.name!==void 0&&f.condition!==void 0&&i.push({kind:"condition-name-conflict",opIndex:d,id:f.id}),f.source!==void 0||f.target!==void 0){const h=f.source===void 0||u(d,f.source,"source",["flowNode"])!==void 0,y=f.target===void 0||u(d,f.target,"target",["flowNode"])!==void 0,g=t.endpointsOf(f.id),v=f.source??(g==null?void 0:g.source),b=f.target??(g==null?void 0:g.target);h&&y&&v!==void 0&&b!==void 0&&new Set([c(v),c(b),c(f.id)]).size>1&&i.push({kind:"flow-cross-pool",opIndex:d,id:f.id})}break}case"messageFlow.update":p(d,f.id,"messageFlow");break;case"dataStore.update":p(d,f.id,"dataStore");break;case"annotation.update":{if(p(d,f.id,"annotation")===void 0)break;f.placement&&u(d,f.placement.anchor,"anchor");break}case"group.update":{if(p(d,f.id,"group")===void 0)break;for(const h of f.members??[]){const y=u(d,h,"member");y&&Bh.has(y)&&i.push({kind:"ref-category",opIndex:d,ref:h,role:"member",expected:"shape",actual:y})}break}case"element.remove":{p(d,f.id)==="lane"&&i.push({kind:"ref-category",opIndex:d,ref:f.id,role:"target",expected:"removable",actual:"lane"});break}}}),i;function p(f,d,m){if(r.has(d)){i.push({kind:"target-added-in-batch",opIndex:f,id:d});return}const h=t.categoryOf(d);if(h===void 0){i.push({kind:"ref-missing",opIndex:f,ref:d,role:"target"});return}if(m&&h!==m){i.push({kind:"ref-category",opIndex:f,ref:d,role:"target",expected:m,actual:h});return}return h}}function Fh(e){return{modeling:e.get("modeling"),bpmnFactory:e.get("bpmnFactory"),elementFactory:e.get("elementFactory"),elementRegistry:e.get("elementRegistry"),canvas:e.get("canvas"),autoPlace:e.get("autoPlace"),bpmnReplace:e.get("bpmnReplace"),spaceTool:e.get("spaceTool")}}function As(e){return`bpmn:${e[0].toUpperCase()}${e.slice(1)}`}const Ts={"top-left":[-1,-1],top:[0,-1],"top-right":[1,-1],right:[1,0],"bottom-right":[1,1],bottom:[0,1],"bottom-left":[-1,1],left:[-1,0]},on=10,jh=40,R1=10;function bl(e,t,n,i,r){const o=n,a=(D,L)=>{const[z,re]=Ts[D];let de={x:t.x+t.width/2+z*(t.width/2+o.width/2+L),y:t.y+t.height/2+re*(t.height/2+o.height/2+L)};const Ue=i.x+on+o.width/2,je=i.x+i.width-on-o.width/2,q=i.y+on+o.height/2,le=i.y+i.height-on-o.height/2,ae={x:Math.min(je,Math.max(Ue,de.x)),y:Math.min(le,Math.max(q,de.y))};return(ae.x!==de.x||ae.y!==de.y)&&(de=Math.abs(ae.x-(t.x+t.width/2))<(t.width+o.width)/2+on&&Math.abs(ae.y-(t.y+t.height/2))<(t.height+o.height)/2+on?{x:t.x+t.width+on+o.width/2,y:ae.y}:ae),de},s=(i.children??[]).filter(D=>!("waypoints"in D&&D.waypoints)&&D.type!=="bpmn:Lane"&&D.type!=="label"&&typeof D.x=="number"&&D.id!==r.selfId),c=ot(e),u=D=>{var z,re;if(!r.selfId)return!1;const L=e.get(D);return!!L&&(((z=L.source)==null?void 0:z.id)===r.selfId||((re=L.target)==null?void 0:re.id)===r.selfId)},l=c.edges.filter(D=>!u(D.id)).flatMap(xn),p=fo(c).filter(D=>D.owner!==r.selfId).map(D=>D.rect),f=D=>({x0:D.x-o.width/2-on,x1:D.x+o.width/2+on,y0:D.y-o.height/2-on,y1:D.y+o.height/2+on}),d=D=>{const L=f(D);return s.some(z=>L.x0<z.x+z.width&&L.x1>z.x&&L.y0<z.y+z.height&&L.y1>z.y)},m=D=>{const L=f(D);return l.some(z=>z.axis==="h"?z.at>L.y0&&z.at<L.y1&&z.lo<L.x1&&z.hi>L.x0:z.at>L.x0&&z.at<L.x1&&z.lo<L.y1&&z.hi>L.y0)},h=D=>{const L=f(D);return p.some(z=>L.x0<z.x+z.width&&L.x1>z.x&&L.y0<z.y+z.height&&L.y1>z.y)},y=c.shapes.filter(D=>D.type==="bpmn:Group").flatMap(D=>[{axis:"h",at:D.y,lo:D.x,hi:D.x+D.width},{axis:"h",at:D.y+D.height,lo:D.x,hi:D.x+D.width},{axis:"v",at:D.x,lo:D.y,hi:D.y+D.height},{axis:"v",at:D.x+D.width,lo:D.y,hi:D.y+D.height}]),g=D=>{const L=f(D);return y.some(z=>z.axis==="h"?z.at>L.y0&&z.at<L.y1&&z.lo<L.x1&&z.hi>L.x0:z.at>L.x0&&z.at<L.x1&&z.lo<L.y1&&z.hi>L.y0)},v=D=>d(D)||m(D)||h(D)||g(D),b=D=>D.x-o.width/2>=i.x&&D.x+o.width/2<=i.x+i.width&&D.y-o.height/2>=i.y&&D.y+o.height/2<=i.y+i.height;if(r.placement){const D=je=>je.startsWith("top")?je.replace(/^top/,"bottom"):je.replace(/^bottom/,"top"),L=je=>je.endsWith("left")?je.replace(/left$/,"right"):je.replace(/right$/,"left"),z=r.placement.side,re=[z,D(z),L(z),D(L(z)),"top","bottom","left","right","top-left","top-right","bottom-left","bottom-right"],de=r.placement.offset??50;let Ue=a(z,de);if(v(Ue)){const je=new Set;for(const q of re){if(je.has(q))continue;je.add(q);const le=a(q,de);if(b(le)&&!v(le)){Ue=le;break}}}return Ue}const x=r.from,C=i.x+on+o.width/2,T=i.x+i.width-on-o.width/2,k=i.y+on+o.height/2,A=i.y+i.height-on-o.height/2;let I={x:Math.min(T,Math.max(C,x.x)),y:Math.min(A,Math.max(k,x.y))};if(v(I)){const D=(t.width+o.width)/2+on,z=[{x:I.x+D,y:I.y},{x:I.x-D,y:I.y},{x:I.x,y:I.y-o.height-on},{x:I.x,y:I.y+o.height+on}].filter(b).find(re=>!v(re));z&&(I=z)}return I}function Qt(e,t){return e.filter(n=>n.kind===t)}function Hh(e,t){var v0,b0,x0,_0,w0,E0,S0,R0,C0,P0,A0,T0,M0,k0,O0,D0,L0,I0,B0,N0,$0,F0,j0;const{modeling:n,bpmnFactory:i,elementFactory:r,elementRegistry:o,canvas:a,autoPlace:s,bpmnReplace:c,spaceTool:u}=t,l=()=>a.getRootElement(),p=_=>o.get(_),f=_=>{const R=p(_);if(!R)throw new Error(`하강 참조 해소 실패: ${_}`);return R},d=_=>{let R=_.parent;for(;R;){if(R.type==="bpmn:Participant")return R;R=R.parent}},m=new Map;for(const _ of o.filter(R=>!("waypoints"in R&&R.waypoints)&&R.type!=="bpmn:Lane"&&R.type!=="label"&&typeof R.x=="number"))m.set(_.id,{x:_.x,y:_.y});const h=Qt(e,"participant.add"),y=Qt(e,"node.add"),g=Qt(e,"sequenceFlow.add"),v=Qt(e,"messageFlow.add"),b=Qt(e,"dataStore.add"),x=Qt(e,"dataAssociation.add"),C=Qt(e,"annotation.add"),T=Qt(e,"group.add"),k=new Map(y.map(_=>[_.node.id,_])),A=(_,R,P)=>{var j;const O=_.businessObject,N=(((j=O.extensionElements)==null?void 0:j.values)??[]).filter(H=>H.$type!==R),B=P?[...N,i.create(R,P)]:N;if(!B.length){O.extensionElements&&n.updateProperties(_,{extensionElements:void 0});return}const $=i.create("bpmn:ExtensionElements",{values:B});B.forEach(H=>{H.$parent=$}),n.updateProperties(_,{extensionElements:$})},I=_=>({anchor:_.anchor,side:_.side,..._.offset!==void 0?{offset:_.offset}:{}});for(const _ of Qt(e,"element.remove")){const R=p(_.id);R&&n.removeElements([R])}const D=_=>o.filter(R=>{var P;return R.type==="bpmn:Lane"&&((P=d(R))==null?void 0:P.id)===_}).sort((R,P)=>R.y-P.y);for(const _ of Qt(e,"participant.update")){const R=f(_.id);if(_.name!==void 0&&n.updateProperties(R,{name:_.name??void 0}),!_.lanes)continue;const P=D(_.id);if(!P.length){n.splitLane(R,_.lanes.length),D(_.id).forEach((N,B)=>{const $=_.lanes[B];$&&n.updateProperties(N,{id:$.id,name:$.name})});continue}const O=new Set(P.map(N=>N.id));_.lanes.forEach((N,B)=>{if(O.has(N.id)){n.updateProperties(f(N.id),{name:N.name});return}const $=B===0?n.addLane(D(_.id)[0],"top"):n.addLane(f(_.lanes[B-1].id),"bottom");n.updateProperties($,{id:N.id,name:N.name})})}const L=150,z=130,re=80,de=90,Ue=180,je=30,q=30,le=(_,R,P,O,N)=>{const B=P-R.width/2,$=O-R.height/2;return(_.children??[]).find(j=>!("waypoints"in j&&j.waypoints)&&j.type!=="bpmn:Lane"&&j.type!=="label"&&!(N!=null&&N.has(j.id))&&typeof j.x=="number"&&B<j.x+j.width+q&&B+R.width+q>j.x&&$<j.y+j.height&&$+R.height>j.y)},ae=new Set;for(const _ of h){ae.add(`pool:${_.participant.id}`);for(const R of _.participant.lanes??[])ae.add(R.id)}const he=new Map;for(const _ of y){const R=_.node.lane??`pool:${_.node.participant??""}`;let P=he.get(R);P||he.set(R,P=new Set([0])),_.band!==void 0&&P.add(_.band)}const Pe=new Map;for(const[_,R]of he){if(!ae.has(_))continue;const P=[...R].sort((B,$)=>B-$),O=P.map((B,$)=>$===0?0:$%2===1?Math.ceil($/2):-($/2)),N=Math.min(...O);Pe.set(_,new Map(P.map((B,$)=>[B,O[$]-N])))}{const _=new Map;for(const R of h)(R.participant.lanes??[]).forEach((P,O)=>_.set(P.id,O));for(const[R,P]of Pe){if(!_.has(R)||P.size<2)continue;const O=_.get(R),N=P.get(0)??0,B=new Set;for(const oe of y){if(oe.node.lane!==R||(oe.band??0)!==0||!oe.node.type.endsWith("Gateway"))continue;const Oe={in:new Set,out:new Set,cross:new Set};for(const be of g){const Ce=be.flow.source===oe.node.id;if(!Ce&&be.flow.target!==oe.node.id)continue;const lt=k.get(Ce?be.flow.target:be.flow.source);if(!lt||lt.node.participant!==oe.node.participant||!lt.node.lane)continue;let ue,ge=!1;if(lt.node.lane!==R){const Se=_.get(lt.node.lane);if(Se===void 0)continue;ue=Se>O?"down":"up",ge=!0}else{const Se=P.get(lt.band??0)??N;ue=Se>N?"down":Se<N?"up":void 0}ue&&(Oe[Ce?"out":"in"].add(ue),ge&&Oe.cross.add(ue))}for(const be of["up","down"])Oe.in.has(be)&&Oe.out.has(be)&&Oe.cross.has(be)&&B.add(be)}if(B.size!==1)continue;const[$]=B,j=Math.max(...P.values()),H=$==="down"?j:0;if(N===H)continue;const K=[...P.entries()].filter(([oe])=>oe!==0).sort((oe,Oe)=>oe[1]-Oe[1]),pe=[...Array(j+1).keys()].filter(oe=>oe!==H),_e=new Map([[0,H]]);K.forEach(([oe],Oe)=>_e.set(oe,pe[Oe])),Pe.set(R,_e)}}const W=_=>{var R;return(((R=he.get(_))==null?void 0:R.size)??0)>1},Y=_=>_.band??(_.node.lane||!W(`pool:${_.node.participant??""}`)?void 0:0),ee=new Map,Re=_=>ee.get(_.node.id)??Y(_),mt=new Set,M=new Set;{const _=new Map;for(const O of g)_.set(O.flow.target,(_.get(O.flow.target)??0)+1);const R=O=>{const N=[],B=new Set([O]),$=[O];for(;$.length;){const j=$.shift();N.push(j);for(const H of g)H.flow.source!==j||B.has(H.flow.target)||(_.get(H.flow.target)??0)!==1||(B.add(H.flow.target),$.push(H.flow.target))}return N},P=(O,N)=>{var B;return((B=Pe.get(O))==null?void 0:B.get(N))??N};for(const O of y){if(!O.node.type.endsWith("Gateway"))continue;const N=O.node.lane??`pool:${O.node.participant??""}`,B=Pe.get(N);if(!B||B.size<2)continue;const $=Re(O);if($===void 0||P(N,$)!==P(N,0))continue;const j=P(N,$),H=g.filter(be=>be.flow.source===O.node.id).map(be=>k.get(be.flow.target)).filter(be=>!!be&&(be.node.lane??`pool:${be.node.participant??""}`)===N),K=H.filter(be=>{const Ce=Re(be);return Ce!==void 0&&P(N,Ce)===j&&(_.get(be.node.id)??0)===1}),pe=H.some(be=>{const Ce=Re(be);return Ce!==void 0&&P(N,Ce)>j});if(K.length!==1||!pe)continue;const _e=new Set(H.flatMap(be=>R(be.node.id)));if(!g.some(be=>be.flow.target===O.node.id&&_e.has(be.flow.source)))continue;const Oe=new Map;for(const[be,Ce]of B)Oe.set(be,Ce+1);Oe.set(-1,0),Pe.set(N,Oe);for(const be of R(K[0].node.id))k.has(be)&&(ee.set(be,-1),M.add(be));mt.add(O.node.id)}}const E=(_,R)=>{var P;return((P=Pe.get(_))==null?void 0:P.get(R))??R},w=(_,R,P,O)=>{const N=_?p(_):R?p(R):void 0;if(!N)return!1;const B=_?N.y+Math.min(N.height/2,de):N.y+re;return Math.abs(B+E(_??`pool:${R??""}`,P)*L-O)<=L/2},G=new Map;for(const[_,R]of he){let P=0;for(const O of R)P=Math.max(P,E(_,O));G.set(_,P)}const U=_=>Ue+L*_,X=(_,R,P)=>{const O=l().children.filter(N=>!("waypoints"in N&&N.waypoints)&&N.id!==R&&typeof N.y=="number"&&N.y>=_);O.length&&n.moveElements(O,{x:0,y:P})},Ee=(_,R,P)=>{const O=_.type==="bpmn:Participant"?_:void 0;if(!O||O.children.some(j=>j.type==="bpmn:Lane"))return;const N=P+R.height/2+je-O.y;if(O.height>=N)return;const B=N-O.height,$=O.y+O.height;n.resizeShape(O,{x:O.x,y:O.y,width:O.width,height:N}),X($,O.id,B)},ze=(_,R)=>{const P=R-_.height;if(P<=0)return;const O=d(_)??_,N=[],B=H=>{N.push(H);for(const K of H.children??[])B(K)};B(O);const $=_.y+_.height-10,j=u.calculateAdjustments(N,"y",P,$);u.makeSpace(j.movingShapes,j.resizingShapes,{x:0,y:P},"s",$)},tt=(_,R,P)=>{if(_){const $=f(_),j=U(R);if($.height>=j)return;const H=j-$.height,K=d($),pe=K?K.y+K.height:$.y+$.height;ze($,j),X(pe,K==null?void 0:K.id,H);return}if(!P)return;const O=L*(R+1);if(P.height>=O)return;const N=O-P.height,B=P.y+P.height;n.resizeShape(P,{x:P.x,y:P.y,width:P.width,height:O}),X(B,P.id,N)},At=new Map;for(const _ of g)At.set(_.flow.target,(At.get(_.flow.target)??0)+1);const ct=_=>(At.get(_)??0)<=1,zt=(_,R,P)=>{if(!_)return!0;const O=p(_);return O?P-R.height/2>=O.y&&P+R.height/2<=O.y+O.height:!0},en=h.map((_,R)=>({op:_,declared:R}));en.sort((_,R)=>{const P=_.op.order??Number.POSITIVE_INFINITY,O=R.op.order??Number.POSITIVE_INFINITY;return P!==O?P-O:_.declared-R.declared});let tn=80;for(const _ of o.getAll())_.parent===l()&&"height"in _&&typeof _.y=="number"&&(tn=Math.max(tn,_.y+_.height+60));for(const{op:_}of en){const R=_.participant,P=y.filter(oe=>oe.node.participant===R.id).length,O=((v0=R.lanes)==null?void 0:v0.length)??0,N=Math.max(1200,P*160+300),B=(R.lanes??[]).map(oe=>U(G.get(oe.id)??0)),$=B.reduce((oe,Oe)=>oe+Oe,0);O&&$<300&&(B[O-1]+=300-$);const j=Math.max(300,L*((G.get(`pool:${R.id}`)??0)+1)),H=R.blackBox||P+O===0?120:O?Math.max(300,$):j,K=r.createShape({type:"bpmn:Participant",businessObject:i.create("bpmn:Participant",{id:R.id,name:R.name,..._.order!==void 0?{"bwl:poolOrder":_.order}:{},...R.blackBox?{}:{processRef:i.create("bpmn:Process")}}),width:N,height:H,isExpanded:!0}),pe=n.createShape(K,{x:100+N/2,y:tn+H/2},l()),_e=R.lanes??[];if(_e.length&&n.splitLane(pe,_e.length),_e.length){const oe=o.filter(Oe=>{var be;return Oe.type==="bpmn:Lane"&&((be=d(Oe))==null?void 0:be.id)===R.id}).sort((Oe,be)=>Oe.y-be.y);if(oe.forEach((Oe,be)=>{const Ce=_e[be];Ce&&n.updateProperties(Oe,{id:Ce.id,name:Ce.name})}),B.some(Oe=>Oe!==pe.height/O)){let Oe=pe.y;oe.forEach((be,Ce)=>{const lt=B[Ce];n.resizeShape(be,{x:be.x,y:Oe,width:be.width,height:lt}),Oe+=lt})}}tn=pe.y+pe.height+60}const vt=_=>{var O;const R=k.get(_);if(R)return R.node.participant??"";const P=p(_);return P?P.type==="bpmn:Participant"?P.id:((O=d(P))==null?void 0:O.id)??"":""},Tt=new Map,yn=_=>{let R=Tt.get(_);return R||Tt.set(_,R={nodes:[],flows:[]}),R};for(const _ of y)yn(_.node.participant??"").nodes.push(_);for(const _ of g)yn(vt(_.flow.source)).flows.push(_);const Pr=_=>{var R;return i.create("bpmn:SequenceFlow",{id:_.id,name:_.name??((R=_.condition)==null?void 0:R.label)})},Fn=(_,R)=>r.createShape({type:As(_.type),businessObject:i.create(As(_.type),{id:_.id,name:_.name,...R!==void 0?{"bwl:band":R}:{}})}),Ti=[...en.map(({op:_})=>_.participant.id).filter(_=>Tt.has(_)),...[...Tt.keys()].filter(_=>!h.some(R=>R.participant.id===_))],jn=_=>_.endsWith("Gateway");for(const _ of Ti){const R=Tt.get(_),P=_?f(_):void 0,O=P?P.x+150:250;let N=P?P.y+80:120;const B=(ue,ge,Se)=>{if(ue){const Te=f(ue);return Te.y+Math.min(Te.height/2,de)+E(ue,ge??0)*L}return ge!==void 0&&P?P.y+re+E(`pool:${_}`,ge)*L:Se},$=(ue,ge,Se)=>{if(ue){const Te=f(ue);return Te.y+Math.min(Te.height/2,de)+ge*L}return P?P.y+re+ge*L:Se},j=ue=>ue.participant?f(ue.participant):l(),H=(ue,ge,Se,Te,rt,He,Ve)=>{const gt=Se!==void 0||Te!==void 0,xe=E(Se??`pool:${_}`,Te??0);if((Te===void 0||w(Se,_,Te,Ve??Number.NaN))&&Ve!==void 0&&zt(Se,ge,Ve)&&!le(ue,ge,rt,Ve))return{x:rt,y:Ve};if(gt)for(let Z=0;Z<4;Z++){const ne=$(Se,xe+Z,He);if(!le(ue,ge,rt,ne))return tt(Se,xe+Z,P),{x:rt,y:ne}}const nt=B(Se,Te,He);gt?tt(Se,xe,P):Ee(ue,ge,nt);let ie=rt;for(let Z=0;Z<64;Z++){const ne=le(ue,ge,ie,nt);if(!ne)break;ie=ne.x+ne.width+z+ge.width/2}return{x:ie,y:nt}},K=new Set(R.flows.map(ue=>ue.flow.target)),pe=new Map;for(const ue of R.nodes){if(K.has(ue.node.id))continue;const ge=Fn(ue.node,ue.band),Se=Y(ue),Te=ue.node.lane?`${ue.node.lane}|${Se??""}`:Se!==void 0?`band:${Se}`:"",rt=j(ue.node),He=H(rt,ge,ue.node.lane,Se,pe.get(Te)??O,N);n.createShape(ge,He,rt),pe.set(Te,He.x+ge.width+z),!ue.node.lane&&Se===void 0&&(N+=160)}const _e=new Set,oe=new Map,Oe=new Map,be=new Map;if(_&&ae.has(`pool:${_}`)){const ue=new Map;for(const xe of R.flows)ue.set(xe.flow.target,(ue.get(xe.flow.target)??0)+1);const ge=xe=>B(xe.node.lane,Re(xe),Number.NaN),Se=new Set,Te=xe=>{var Z;const nt=(Z=k.get(xe))==null?void 0:Z.node.participant;if(nt)return p(nt);const ie=p(xe);if(ie)return ie.type==="bpmn:Participant"?ie:d(ie)},rt=xe=>{const nt=[],ie=new Set([xe]),Z=[xe];for(;Z.length;){const ne=Z.shift(),we=k.get(ne);we&&nt.push(we);for(const fe of R.flows)fe.flow.source!==ne||ie.has(fe.flow.target)||(ue.get(fe.flow.target)??0)!==1||(ie.add(fe.flow.target),Z.push(fe.flow.target))}return nt},He=xe=>{if(!P)return;const nt=new Set(xe.map(ne=>ne.node.id));let ie=!1,Z=!1;for(const ne of v){if(!nt.has(ne.flow.source))continue;const we=Te(ne.flow.target);!we||we.id===P.id||(we.y<P.y?ie=!0:Z=!0)}return ie&&!Z?"up":Z&&!ie?"down":void 0};for(const xe of R.nodes){if(!jn(xe.node.type))continue;const nt=B(xe.node.lane,Y(xe),Number.NaN);if(Number.isNaN(nt))continue;const ie=[];for(const fe of R.flows){if(fe.flow.source!==xe.node.id)continue;const ce=k.get(fe.flow.target);if(!ce||ce.node.lane!==xe.node.lane||(ue.get(ce.node.id)??0)!==1)continue;const Me=Y(ce);if(Me===void 0)continue;const at=B(ce.node.lane,Me,Number.NaN);if(Number.isNaN(at))continue;const xt=rt(ce.node.id),st=He(xt);st&&ie.push({subtree:xt,band:Me,row:at,dir:st})}if(!ie.some(fe=>fe.dir==="up")||!ie.some(fe=>fe.dir==="down")||!ie.some(fe=>fe.dir==="up"&&ie.some(ce=>ce.dir==="down"&&ce.row<fe.row)))continue;const ne=[...ie].sort((fe,ce)=>fe.row-ce.row);[...ie.filter(fe=>fe.dir==="up"),...ie.filter(fe=>fe.dir==="down")].sort((fe,ce)=>fe.dir===ce.dir?fe.row-ce.row:fe.dir==="up"?-1:1).forEach((fe,ce)=>{const Me=ne[ce].band;if(Me!==fe.band){Se.add(xe.node.id);for(const at of fe.subtree)Y(at)===fe.band&&ee.set(at.node.id,Me)}})}const Ve=xe=>{if(!P)return;const nt=new Set(xe.map(ne=>ne.node.id));let ie=!1,Z=!1;for(const ne of v){if(!nt.has(ne.flow.target))continue;const we=Te(ne.flow.source);!we||we.id===P.id||(we.y<P.y?ie=!0:Z=!0)}return ie&&!Z?"up":Z&&!ie?"down":void 0};for(const xe of R.nodes){if(!jn(xe.node.type))continue;const nt=xe.node.lane??`pool:${_}`,ie=Pe.get(nt);if(!ie||ie.size<2)continue;const Z=ie.get(0);if(Z===void 0)continue;const ne=Math.max(...ie.values()),we=Z===ne&&Z!==0?"down":void 0;if(!we)continue;const fe=[];for(const st of R.flows){if(st.flow.source!==xe.node.id)continue;const qe=k.get(st.flow.target);if(!qe||qe.node.lane!==xe.node.lane||(ue.get(qe.node.id)??0)!==1)continue;const Kt=Re(qe);Kt!==void 0&&fe.push({t:qe,subtree:rt(qe.node.id),band:Kt})}const ce=fe.find(st=>(ie.get(st.band)??st.band)===Z);if(!ce||Ve(ce.subtree)===we||He(ce.subtree)===we)continue;const Me=fe.find(st=>st!==ce&&Ve(st.subtree)===we);if(!Me)continue;const at=ce.band,xt=Me.band;for(const st of ce.subtree)Re(st)===at&&ee.set(st.node.id,xt);for(const st of Me.subtree)Re(st)===xt&&ee.set(st.node.id,at);Se.add(xe.node.id)}for(const xe of R.nodes){if(!jn(xe.node.type))continue;const nt=ge(xe);if(Number.isNaN(nt)||C.some(fe=>{var ce,Me;return(((ce=fe.placement)==null?void 0:ce.anchor)??(fe.association?fe.association.source===fe.annotation.id?fe.association.target:fe.association.source:void 0))===xe.node.id&&((Me=fe.placement)==null?void 0:Me.side.startsWith("bottom"))}))continue;let Z,ne=!1,we;for(const fe of R.flows){if(fe.flow.source!==xe.node.id)continue;const ce=k.get(fe.flow.target);if(!ce||!ce.node.lane&&Y(ce)===void 0)continue;const Me=ge(ce);Number.isNaN(Me)||(Math.abs(Me-nt)<.5&&(ne=!0),Me>nt?!Z||Me>Z.row?Z={id:ce.node.id,row:Me,count:1}:Me===Z.row&&Z.count++:Me<nt&&ce.node.lane===xe.node.lane&&(!we||Me>we.row?we={op:ce,row:Me,count:1}:Me===we.row&&we.count++))}Z&&Z.count===1&&(ue.get(Z.id)??0)===1&&!Se.has(xe.node.id)&&_e.add(Z.id),!ne&&we&&we.count===1&&(ue.get(we.op.node.id)??0)===1&&!mt.has(xe.node.id)&&oe.set(we.op.node.id,{lane:xe.node.lane,band:Re(xe)})}const gt=new Map;for(const xe of v)gt.set(xe.flow.target,[...gt.get(xe.flow.target)??[],xe]);for(const xe of R.nodes){const nt=gt.get(xe.node.id);if(!nt||nt.length!==1||!ue.get(xe.node.id)||!xe.node.lane&&Y(xe)===void 0||M.has(xe.node.id))continue;const ie=(b0=k.get(nt[0].flow.source))==null?void 0:b0.node.participant,Z=ie?p(ie):void 0;if(!Z||!P||Z.id===P.id)continue;const ne=xe.node.lane??`pool:${_}`,we=Pe.get(ne);if(!we)continue;const fe=we.get(0)??0,ce=(we.get(Re(xe)??0)??fe)-fe;if(ce===0)continue;const Me=Z.y<P.y;if(Me&&ce<0||!Me&&ce>0)continue;let at;for(const[xt,st]of we){const qe=st-fe;(Me&&qe<0&&(!at||qe<at.row)||!Me&&qe>0&&(!at||qe>at.row))&&(at={band:xt,row:qe})}at&&Oe.set(xe.node.id,{lane:xe.node.lane,band:at.band})}}const Ce=new Set;let lt=0;for(;lt++<R.nodes.length+2;){for(let Se=0;Se<R.nodes.length+R.flows.length+2;Se++){let Te=!1;for(const rt of R.flows){const He=rt.flow;if(Ce.has(He.id))continue;const Ve=p(He.source);if(!Ve)continue;const gt=p(He.target),xe=k.get(He.target);if(!gt&&xe){const nt=Fn(xe.node,xe.band),ie=Re(xe);if(xe.node.lane||ie!==void 0){const Z=j(xe.node),ne=Ve,we=ne.x+(be.get(He.source)??0)+ne.width+z,fe=oe.get(He.target)??Oe.get(He.target),ce=H(Z,nt,fe?fe.lane:xe.node.lane,fe?fe.band:ie,_e.has(He.target)?ne.x+ne.width/2:we,Number.NaN,fe||!ct(He.target)?void 0:ne.y+ne.height/2),Me=n.createShape(nt,ce,Z);_e.has(He.target)&&be.set(He.target,we-(Me.x+Me.width/2)),n.connect(Ve,Me,{type:"bpmn:SequenceFlow",businessObject:Pr(He)})}else s.append(Ve,nt,{connection:{type:"bpmn:SequenceFlow",businessObject:Pr(He)}})}else if(gt)n.connect(Ve,gt,{type:"bpmn:SequenceFlow",businessObject:Pr(He)});else continue;Ce.add(He.id),Te=!0}if(!Te)break}const ue=R.nodes.filter(Se=>!p(Se.node.id));if(!ue.length)break;const ge=ue[0];{const Se=Fn(ge.node,ge.band),Te=j(ge.node),rt=Y(ge);n.createShape(Se,H(Te,Se,ge.node.lane,rt,O,N),Te),!ge.node.lane&&rt===void 0&&(N+=160)}}}const Dt=40,qn=(_,R=()=>!0)=>{const P=p(_);if(!P)return[];const O=[P],N=new Set([_]);for(let B=0;B<O.length;B++){const $=O[B].id;for(const j of g){const H=j.flow.target;if(j.flow.source!==$||N.has(H)||!k.has(H))continue;N.add(H);const K=p(H);K&&R(K)&&O.push(K)}}return O},Lu=(_,R=()=>!0)=>{const P=p(_);if(!P)return[];const O=[P],N=new Set([_]);for(let B=0;B<O.length;B++){const $=O[B].id;for(const j of g){const H=j.flow.source;if(j.flow.target!==$||N.has(H)||!k.has(H))continue;N.add(H);const K=p(H);K&&R(K)&&O.push(K)}}return O},Gt=30,Ze=_=>!("waypoints"in _&&_.waypoints)&&_.type!=="bpmn:Lane"&&_.type!=="label"&&typeof _.x=="number",it=(_,R)=>{const P=new Set(_.flatMap($=>$.subtree.map(j=>j.id)));for(const $ of _){const j=($.pool.children??[]).filter(Ze).filter(K=>!P.has(K.id));if($.subtree.some(K=>j.some(pe=>K.x+R<pe.x+pe.width+Gt&&K.x+R+K.width+Gt>pe.x&&K.y<pe.y+pe.height&&K.y+K.height>pe.y)))return null}const O=_.map($=>$.pool.width),N=o.filter($=>$.type==="label").map($=>({label:$,x:$.x,y:$.y}));n.moveElements(_.flatMap($=>$.subtree),{x:R,y:0});const B=_.map($=>{const H=Math.max(...$.subtree.map(K=>K.x+K.width))+150-($.pool.x+$.pool.width);return H>0&&n.resizeShape($.pool,{x:$.pool.x,y:$.pool.y,width:$.pool.width+H,height:$.pool.height}),H});return()=>{n.moveElements(_.flatMap($=>$.subtree),{x:-R,y:0}),_.forEach(($,j)=>{B[j]>0&&n.resizeShape($.pool,{x:$.pool.x,y:$.pool.y,width:O[j],height:$.pool.height})});for(let $=0;$<3;$++){let j=0;for(const H of N){const K=H.x-H.label.x,pe=H.y-H.label.y;Math.abs(K)<=.5&&Math.abs(pe)<=.5||(n.moveElements([H.label],{x:K,y:pe}),j++)}if(!j)break}}},Z_=_=>{var N,B;const R=new Map,P=new Map;for(const $ of o.getAll()){if($.type!=="bpmn:Participant")continue;const j=$;(j.children??[]).length||(R.set(j.id,j),P.set(j.id,[]))}for(const $ of o.getAll()){if($.type!=="bpmn:MessageFlow")continue;const j=$,H=(N=j.source)==null?void 0:N.id,K=(B=j.target)==null?void 0:B.id;H&&K&&P.has(H)&&P.get(H).push(K),H&&K&&P.has(K)&&P.get(K).push(H)}const O=[];for(const[$,j]of P)j.length&&j.every(H=>_.has(H))&&O.push(R.get($));return O},Q_=(_,R)=>{if(!_.length)return null;const P=new Set(_.map($=>$.id)),O=o.getAll().filter($=>$.type==="bpmn:Participant"&&!P.has($.id));if(_.some($=>O.some(j=>$.x+R<j.x+j.width+Gt&&$.x+R+$.width+Gt>j.x&&$.y<j.y+j.height&&$.y+$.height>j.y)))return null;const B=o.filter($=>$.type==="label").map($=>({label:$,x:$.x,y:$.y}));return n.moveElements(_,{x:R,y:0}),()=>{n.moveElements(_,{x:-R,y:0});for(let $=0;$<3;$++){let j=0;for(const H of B){const K=H.x-H.label.x,pe=H.y-H.label.y;Math.abs(K)<=.5&&Math.abs(pe)<=.5||(n.moveElements([H.label],{x:K,y:pe}),j++)}if(!j)break}}},J_=()=>{let _=0;for(const R of o.getAll()){if(R.type!=="bpmn:DataInputAssociation"&&R.type!=="bpmn:DataOutputAssociation")continue;const P=R.waypoints??[];for(let O=1;O<P.length;O++)_+=Math.hypot(P[O].x-P[O-1].x,P[O].y-P[O-1].y)}return _},e0=()=>{let _=0;for(const R of o.getAll()){if(R.type!=="bpmn:Association")continue;const P=R.waypoints??[];for(let O=1;O<P.length;O++)_+=Math.hypot(P[O].x-P[O-1].x,P[O].y-P[O-1].y)}return _},gL=_=>{const R=[];for(const P of o.getAll()){if(P.type!=="bpmn:TextAnnotation")continue;const O=P;if(_.has(O.id))continue;const B=[...O.incoming??[],...O.outgoing??[]].filter(H=>H.type==="bpmn:Association").map(H=>H.source===O?H.target:H.source);if(!B.length||B.some(H=>H===void 0))continue;const $=H=>{if(!("waypoints"in H&&H.waypoints))return[H.id];const K=H,pe=[K.source,K.target];return pe.some(_e=>!_e)?[]:pe.map(_e=>_e.id)},j=B.flatMap(H=>$(H));j.length&&j.every(H=>_.has(H))&&R.push(O)}return R},t0=()=>dn(ot(o)).filter(_=>_.kind==="edge-crosses-shape").length,n0=_=>{const R=(_.children??[]).filter(Ze);let P=0;for(let O=0;O<R.length;O++)for(let N=O+1;N<R.length;N++){const B=R[O],$=R[N];B.x<$.x+$.width&&B.x+B.width>$.x&&B.y<$.y+$.height&&B.y+B.height>$.y&&P++}return P},qo=()=>{const _=ot(o),R=P=>P.length>=2&&(P.every(O=>Math.abs(O.x-P[0].x)<.01)||P.every(O=>Math.abs(O.y-P[0].y)<.01));return{messages:_.edges.filter(P=>P.type==="bpmn:MessageFlow"&&P.waypoints.length===2).length,lines:_.edges.filter(P=>R(P.waypoints)).length}},yL=_=>{const R=new Map;for(const O of o.getAll()){if(O.type!=="bpmn:MessageFlow")continue;const N=O;if(!N.waypoints||N.waypoints.length!==2)continue;const B=N.source,$=N.target;if(!B||!$)continue;const j=_.has(B.id);if(j===_.has($.id))continue;const H=j?$:B,K=d(H);if(!K||_.has(H.id))continue;const pe=R.get(K.id);pe?H.x<pe.minX&&(pe.minX=H.x):R.set(K.id,{pool:K,minX:H.x})}const P=[];for(const{pool:O,minX:N}of R.values()){const B=(O.children??[]).filter($=>Ze($)&&!_.has($.id)&&$.x>=N);B.length&&P.push({subtree:B,pool:O})}return P};for(const _ of Qt(e,"sequenceFlow.update")){if(_.target===void 0)continue;const R=k.get(_.target);if(!R)continue;const P=p(_.target),O=p(_.id);if(!P||!O)continue;const N=_.source!==void 0?p(_.source):O.source,B=O.target;if(!N||!B||B.id===P.id)continue;const $=qn(_.target),j=new Set($.map(Ve=>Ve.id)),H=Math.min(...$.map(Ve=>Ve.x)),K=Math.max(...$.map(Ve=>Ve.x+Ve.width)),pe=N.x+N.width,_e=K-H+Dt*2-(B.x-pe);let oe=[];if(_e>0){const Ve=d(P),gt=(Ve==null?void 0:Ve.children)??[],xe=ne=>ne.type==="bpmn:Lane";oe=(()=>{const ne=new Set;for(const fe of gt)Ze(fe)&&!j.has(fe.id)&&fe.id!==N.id&&fe.x>=B.x&&ne.add(fe.id);const we=[];for(const fe of gt){if(fe.type!=="bpmn:DataStoreReference"&&fe.type!=="bpmn:DataObjectReference")continue;const ce=fe,at=[...ce.incoming??[],...ce.outgoing??[]].filter(xt=>xt.type==="bpmn:DataInputAssociation"||xt.type==="bpmn:DataOutputAssociation").map(xt=>xt.source===ce?xt.target:xt.source);at.length&&at.every(xt=>xt!==void 0&&ne.has(xt.id))&&we.push(ce)}return we})();const ie=gt.filter(ne=>!("waypoints"in ne&&ne.waypoints)&&!xe(ne)&&!j.has(ne.id)&&ne.id!==N.id&&ne.x>=B.x),Z=Ve?[Ve,...gt.filter(ne=>xe(ne))]:[];if(ie.length){const ne=new Set(ie.map(qe=>qe.id)),we=yL(ne),fe=new Set(ne);for(const qe of we)for(const Kt of qe.subtree)fe.add(Kt.id);const ce=gL(fe),Me=Z_(ne),at=new Set(ne);for(const qe of we)for(const Kt of qe.subtree)at.add(Kt.id);const xt=we.length?Z_(at):Me;n.createSpace(ie,Z,{x:_e,y:0},"e",B.x-1);let st=!1;if(we.length){const qe=qo(),Kt=it(we,_e);if(Kt){const En=xt.length?Q_(xt,_e):null,eo=qo();eo.messages>qe.messages&&eo.lines>=qe.lines?st=!0:(En==null||En(),Kt())}}if(!st){for(const qe of we){const Kt=qo(),En=it([qe],_e);if(!En)continue;const eo=qo();(eo.messages<=Kt.messages||eo.lines<Kt.lines)&&En()}if(Me.length){const qe=qo(),Kt=Q_(Me,_e);if(Kt){const En=qo();(En.messages<=qe.messages||En.lines<qe.lines)&&Kt()}}}if(ce.length){const qe=()=>new Set(dn(ot(o)).map(En=>bn(En))),Kt=En=>{const eo=e0(),kL=qe(),OL=En.map(Lt=>({a:Lt,x:Lt.x,y:Lt.y})),DL=o.filter(Lt=>Lt.type==="label").map(Lt=>({label:Lt,x:Lt.x,y:Lt.y}));n.moveElements(En,{x:_e,y:0});const LL=[...qe()].filter(Lt=>!kL.has(Lt));if(e0()<eo&&LL.length===0)return!0;for(const{a:Lt,x:as,y:ss}of OL)(Lt.x!==as||Lt.y!==ss)&&n.moveElements([Lt],{x:as-Lt.x,y:ss-Lt.y});for(const Lt of DL){const as=Lt.x-Lt.label.x,ss=Lt.y-Lt.label.y;(as!==0||ss!==0)&&n.moveElements([Lt.label],{x:as,y:ss})}return!1};if(!Kt(ce)&&ce.length>1)for(const En of ce)Kt([En])}}}const Oe=R.node.lane!==void 0?p(R.node.lane):R.node.participant!==void 0?p(R.node.participant):void 0,be=Ve=>{if(!Oe)return!0;const gt=Ve.y+Ve.height/2;return gt>=Oe.y&><=Oe.y+Oe.height},Ce=!be(N)&&be(B)?B:N,lt=Ce.y+Ce.height/2,ue=lt-(P.y+P.height/2),ge=R.band!==void 0,Se=ge?[P]:$,Te=(R.band===void 0||w(R.node.lane,R.node.participant,R.band,lt))&&ct(_.target)&&Se.every(Ve=>{var gt;return zt((gt=k.get(Ve.id))==null?void 0:gt.node.lane,Ve,Ve.y+Ve.height/2+ue)});Te&&ge?(n.moveElements($,{x:pe+Dt-H,y:0}),n.moveElements([P],{x:0,y:ue})):n.moveElements($,{x:pe+Dt-H,y:Te?ue:0});const rt=d(P);if(!Te&&R.node.lane===void 0&&R.band!==void 0&&rt){const Ve=rt.y+re+E(`pool:${R.node.participant??""}`,R.band)*L,gt=Ve-(P.y+P.height/2);gt!==0&&!le(rt,P,P.x+P.width/2,Ve,j)&&n.moveElements([P],{x:0,y:gt})}const He=oe.length?d(oe[0]):void 0;if(He){const Ve={assoc:J_(),overlaps:n0(He),crosses:t0()},gt=oe.map(ce=>({st:ce,x:ce.x})),xe=o.filter(ce=>ce.type==="label").map(ce=>({label:ce,x:ce.x,y:ce.y})),nt=Math.min(...oe.flatMap(ce=>[...ce.incoming??[],...ce.outgoing??[]].filter(Me=>Me.type==="bpmn:DataInputAssociation"||Me.type==="bpmn:DataOutputAssociation").map(Me=>(Me.source===ce?Me.target:Me.source).x))),ie=new Set(oe.map(ce=>ce.id)),Z=(He.children??[]).filter(Ze).filter(ce=>!ie.has(ce.id));let ne=nt;for(const ce of[...oe].sort((Me,at)=>Me.x-at.x)){let Me=ne;for(let at=0;at<100;at++){const xt=Z.find(st=>Me<st.x+st.width+Gt&&Me+ce.width+Gt>st.x&&ce.y<st.y+st.height&&ce.y+ce.height>st.y);if(!xt)break;Me=xt.x+xt.width+Gt}Me!==ce.x&&n.moveElements([ce],{x:Me-ce.x,y:0}),ne=Me+ce.width+Gt}const we=ne+150-(He.x+He.width);we>0&&n.resizeShape(He,{x:He.x,y:He.y,width:He.width+we,height:He.height});const fe={assoc:J_(),overlaps:n0(He),crosses:t0()};if(fe.assoc>=Ve.assoc||fe.overlaps>Ve.overlaps||fe.crosses>Ve.crosses){for(const{st:ce,x:Me}of gt)ce.x!==Me&&n.moveElements([ce],{x:Me-ce.x,y:0});we>0&&n.resizeShape(He,{x:He.x,y:He.y,width:He.width-we,height:He.height});for(const ce of xe){const Me=ce.x-ce.label.x,at=ce.y-ce.label.y;(Me!==0||at!==0)&&n.moveElements([ce.label],{x:Me,y:at})}}}}const i0=(_,R)=>{const P=R.target===_,O=f(R.source),N=f(R.target),B=P?"bpmn:DataOutputAssociation":"bpmn:DataInputAssociation";n.connect(O,N,R.id?{type:B,businessObject:i.create(B,{id:R.id})}:{type:B})},vL=100,r0=_=>{for(const R of h){if(!R.participant.blackBox)continue;const P=p(R.participant.id);if(!P)continue;const O=[];for(const B of v){const $=B.flow.source===R.participant.id?B.flow.target:B.flow.target===R.participant.id?B.flow.source:void 0,j=$?p($):void 0;j&&typeof j.x=="number"&&j.type!=="bpmn:Participant"&&O.push(j)}if(!O.length)continue;const N=Math.max(...O.map(B=>B.x+B.width/2))+vL;if(N>P.x+P.width&&n.resizeShape(P,{x:P.x,y:P.y,width:N-P.x,height:P.height}),!!_)for(const B of v){const $=p(B.flow.id),j=B.flow.source===R.participant.id?B.flow.target:B.flow.target===R.participant.id?B.flow.source:void 0,H=j?p(j):void 0;if(!$||!H||H.type==="bpmn:Participant")continue;const K=H.x+H.width/2;if(K<P.x+10||K>P.x+P.width-10)continue;const pe=P.y>H.y,_e=pe?H.y+H.height:H.y,oe=pe?P.y:P.y+P.height,Oe=B.flow.source===R.participant.id?[{x:K,y:oe},{x:K,y:_e}]:[{x:K,y:_e},{x:K,y:oe}],be=ot(o),Ce={...be.edges.find(lt=>lt.id===B.flow.id),waypoints:Oe};rn(Ce,Vn(be)).length||n.updateWaypoints($,Oe)}}};r0(!1);for(const _ of v){const R=_.flow;n.connect(f(R.source),f(R.target),{type:"bpmn:MessageFlow",businessObject:i.create("bpmn:MessageFlow",{id:R.id,name:R.name})})}{const P=new Set([...g.map(H=>H.flow.id),...v.map(H=>H.flow.id)].filter(H=>!!H)),O=o.filter(H=>!!H.waypoints),N=(H,K)=>Math.abs(K.x-H.x)<2?"L":Math.abs(K.x-(H.x+H.width))<2?"R":Math.abs(K.y-H.y)<2?"T":Math.abs(K.y-(H.y+H.height))<2?"B":void 0,B=new Map,$=(H,K,pe)=>{if(!H||!K||typeof H.x!="number")return;const _e=N(H,K);if(!_e)return;let oe=B.get(H.id);oe||B.set(H.id,oe=new Map),oe.set(_e,[...oe.get(_e)??[],pe])};for(const H of O){const K=H.waypoints;!K||K.length<2||($(H.source,K[0],{id:H.id,dir:"out"}),$(H.target,K[K.length-1],{id:H.id,dir:"in"}))}const j=new Set;for(const[H,K]of B){const pe=p(H);if(!pe||typeof pe.x!="number"||![...K.values()].some(ge=>{const Se=ge.filter(Te=>Te.dir==="in");return ge.length>=3&&Se.length>=1&&ge.some(Te=>Te.dir==="out")&&Se.some(Te=>P.has(Te.id))}))continue;const oe=d(pe);if(!oe||j.has(oe.id)||(oe.children??[]).some(ge=>ge.type==="bpmn:Lane"))continue;const Oe=(x0=K.get("T"))!=null&&x0.length?(_0=K.get("B"))!=null&&_0.length?void 0:"B":"T";if(!Oe||(Oe==="T"?pe.y-oe.y:oe.y+oe.height-(pe.y+pe.height))>=L)continue;const Ce=(oe.children??[]).filter(ge=>!("waypoints"in ge&&ge.waypoints)&&ge.type!=="label"&&typeof ge.x=="number"),lt=oe.y+oe.height;n.resizeShape(oe,{x:oe.x,y:oe.y,width:oe.width,height:oe.height+L});const ue=l().children.filter(ge=>!("waypoints"in ge&&ge.waypoints)&&ge.id!==oe.id&&typeof ge.y=="number"&&ge.y>=lt);ue.length&&n.moveElements(ue,{x:0,y:L}),Oe==="T"&&Ce.length&&n.moveElements(Ce,{x:0,y:L}),j.add(oe.id)}}const pd=20,o0=4,bL=2,xL=[10,30,80],Ko=()=>{const _=ot(o);return{bad:dn(_).filter(R=>R.kind==="edge-crosses-shape"||R.kind==="edge-overlap-opposite"||R.kind==="edge-overlap-mixed").length,crossings:ih(_),straight:_.edges.filter(R=>R.type==="bpmn:MessageFlow"&&R.waypoints.length===2).length}},Xo=_=>{const R=ot(o),P=R.edges.find(O=>O.id===_);return P?rn(P,Vn(R)).length:0},Iu=_=>Xo(_)>0,Bu=_=>ot(o).edges.filter(R=>R.type==="bpmn:MessageFlow"&&R.id!==_&&R.waypoints.length===2).length,_L=(_,R,P)=>it([{subtree:_,pool:R}],P),a0=(_,R)=>R.bad>_.bad||R.crossings>_.crossings&&R.straight<=_.straight&&R.bad>=_.bad,Nu=(_,R)=>a0(_,R)||R.straight<_.straight,$u=(_,R,P=()=>!0,O=a0)=>{const N=Ko(),B=it(_,R);if(!B)return!1;const $=Ko();return O(N,$)||!P()?(B(),!1):!0},s0=(_,R,P,O=()=>!0)=>$u([{subtree:_,pool:R}],P,O),Zr=_=>{var R;return!!((R=k.get(_))!=null&&R.node.participant)},rs=new Map;for(const _ of v){if(!Zr(_.flow.target))continue;const R=rs.get(_.flow.target)??[];R.push(_),rs.set(_.flow.target,R)}const Fu=[...rs.keys()],fd=new Set(g.map(_=>_.flow.target)),c0=_=>en.findIndex(({op:R})=>R.participant.id===_);Fu.sort((_,R)=>{var N,B;const P=fd.has(_)?1:0,O=fd.has(R)?1:0;return P!==O?P-O:c0((N=k.get(_))==null?void 0:N.node.participant)-c0((B=k.get(R))==null?void 0:B.node.participant)});const Qr=_=>_.x+_.width/2,wL=_=>{const R=new Map;for(const N of o.getAll()){const B=N;if(!B.waypoints||!B.source||!B.target)continue;(R.get(B.source.id)??R.set(B.source.id,[]).get(B.source.id)).push(B.target.id)}const P=new Set([_]),O=[_];for(let N=0;N<O.length;N++)for(const B of R.get(O[N])??[])P.has(B)||(P.add(B),O.push(B));return P},EL=(_,R)=>{const P=wL(R);let O;for(const N of o.getAll()){const B=N;if(B.type!=="bpmn:MessageFlow"||!B.source||!B.target||B.target.id!==_||P.has(B.source.id))continue;const $=B.source;if(typeof $.x!="number"||$.type==="bpmn:Participant")continue;const j=Qr($);(O===void 0||j>O)&&(O=j)}return O},dd=(_,R)=>{const P=p(_.flow.source);if(P)return P.type==="bpmn:Participant"?EL(P.id,R):Qr(P)},u0=_=>{let R;for(const P of rs.get(_)??[]){const O=dd(P,_);O!==void 0&&(!R||O>R.cx)&&(R={op:P,cx:O})}return R==null?void 0:R.op},SL=_=>{const R=u0(_),P=p(_),O=R?dd(R,_):void 0;return P&&O!==void 0?O-Qr(P):void 0},RL=_=>{const R=SL(_);return R!==void 0&&Math.abs(R)<pd},l0=(_,R,P,O,N)=>{var B;for(let $=!0;$;){$=!1;for(const j of v){if(j.flow.id===P)continue;const H=R.has(j.flow.source),K=R.has(j.flow.target);if(H===K||O(H?j.flow.source:j.flow.target))continue;const pe=H?j.flow.target:j.flow.source;if(N(pe)||!Zr(pe))continue;const _e=p(j.flow.id);if(!(_e!=null&&_e.waypoints)||_e.waypoints.length!==2)continue;const oe=p(pe),Oe=(B=k.get(pe))==null?void 0:B.node.participant;if(!oe||!Oe)continue;const be=qn(pe,Ce=>Ce.x>=oe.x).filter(Ce=>!R.has(Ce.id));if(!(!be.length||be.some(Ce=>N(Ce.id)))){for(const Ce of be)R.add(Ce.id);_.set(Oe,[..._.get(Oe)??[],...be]),$=!0}}}return[..._].map(([$,j])=>({subtree:j,pool:f($)}))},p0=(_,R,P,O,N)=>l0(new Map([[R,[..._]]]),new Set(_.map(B=>B.id)),O,B=>B===P,B=>B===N),hd=_=>{const R=u0(_);if(!R)return null;const P=p(_),O=p(R.flow.source),N=dd(R,_);if(!P||!O||N===void 0)return null;const B=N-Qr(P);if(B>=pd){const $=k.get(_).node.participant,j=qn(_,H=>H.x>=P.x);return{groups:p0(j,$,_,R.flow.id,R.flow.source),dx:B}}if(-B>=pd&&Zr(R.flow.source)){const $=k.get(R.flow.source).node.participant,j=qn(R.flow.source,H=>H.x>=O.x&&!RL(H.id));return{groups:p0(j,$,R.flow.source,R.flow.id,_),dx:-B}}return null},f0=()=>Fu.map(_=>({id:_,plan:hd(_)})).filter(_=>!!_.plan).sort((_,R)=>Math.min(..._.plan.groups.flatMap(P=>P.subtree.map(O=>O.x)))-Math.min(...R.plan.groups.flatMap(P=>P.subtree.map(O=>O.x)))).map(_=>_.id);for(let _=0;_<3;_++){const R=Ko(),P=[];for(const N of f0()){const B=hd(N);if(!B)continue;const $=it(B.groups,B.dx);$&&P.push($)}if(!P.length)break;if(!Nu(R,Ko()))continue;for(const N of P.reverse())N();let O=!1;for(const N of f0()){const B=hd(N);B&&$u(B.groups,B.dx,()=>!0,Nu)&&(O=!0)}if(!O)break}for(const _ of Fu){if(fd.has(_))continue;const R=k.get(_);if(!R||R.node.lane!==void 0)continue;const P=Y(R);if(P===void 0)continue;const O=p(_),N=O?d(O):void 0;if(!O||!N)continue;const B=N.y+re+E(`pool:${R.node.participant??""}`,P)*L,$=B-(O.y+O.height/2);$!==0&&!le(N,O,O.x+O.width/2,B)&&n.moveElements([O],{x:0,y:$})}for(const _ of Fu.flatMap(R=>rs.get(R)??[])){if(!Iu(_.flow.id))continue;const R=p(_.flow.target);if(!R)continue;const P=f(k.get(_.flow.target).node.participant),O=qn(_.flow.target,j=>j.x>=R.x),N=R.width+z,B=Xo(_.flow.id),$=Bu(_.flow.id);for(let j=1;j<=o0;j++){const H=()=>Xo(_.flow.id)<B&&Bu(_.flow.id)>=$;if(s0(O,P,N*j,H))break}}for(const _ of v){if(!Iu(_.flow.id))continue;const R=p(_.flow.source),P=p(_.flow.target);if(!R||!P||R.type==="bpmn:Participant"||P.type==="bpmn:Participant")continue;const O=R.x+R.width/2;if(Math.abs(O-(P.x+P.width/2))>15)continue;const[N,B]=R.y<P.y?[R.y+R.height,P.y]:[P.y+P.height,R.y],$=[...k.values()].map(j=>p(j.node.id)).filter(j=>!!j&&j.id!==R.id&&j.id!==P.id).filter(j=>j.x<=O&&O<=j.x+j.width&&j.y+j.height>N&&j.y<B).sort((j,H)=>j.x-H.x);for(const j of $){const H=(w0=k.get(j.id))==null?void 0:w0.node.participant,K=H?p(H):void 0;if(!K)continue;const pe=[...k.values()].filter(Se=>Se.node.participant===H).map(Se=>Se.node.id),_e=Se=>Se.map(Te=>p(Te)).filter(Te=>!!Te),Oe=[Lu(j.id,Se=>{var Te;return((Te=k.get(Se.id))==null?void 0:Te.node.participant)===H}),_e(pe)].filter(Se=>Se.length),be=j.width+z,Ce=Xo(_.flow.id),lt=Bu(_.flow.id),ue=()=>Xo(_.flow.id)<Ce&&Bu(_.flow.id)>=lt;let ge=!1;for(const Se of Oe){for(let Te=1;Te<=o0;Te++)if(s0(Se,K,be*Te,ue)){ge=!0;break}if(ge)break}if(!Iu(_.flow.id))break}}for(const _ of v){if(!Iu(_.flow.id))continue;const R=p(_.flow.id);if(((E0=R==null?void 0:R.waypoints)==null?void 0:E0.length)!==2)continue;const P=p(_.flow.source),O=p(_.flow.target);if(!P||!O||P.type==="bpmn:Participant"||O.type==="bpmn:Participant"||!Zr(_.flow.source)||!Zr(_.flow.target)||Math.abs(Qr(P)-Qr(O))>bL)continue;const N=Qr(P),B=R.waypoints.map(Ce=>Ce.y),[$,j]=[Math.min(...B),Math.max(...B)],H=Vn(ot(o)).filter(Ce=>Ce.id!==P.id&&Ce.id!==O.id&&Ce.x<N&&N<Ce.x+Ce.width&&$<Ce.y+Ce.height&&Ce.y<j);if(!H.length)continue;const K=(S0=k.get(_.flow.source))==null?void 0:S0.node.participant,pe=(R0=k.get(_.flow.target))==null?void 0:R0.node.participant;if(!K||!pe)continue;const _e=new Map;for(const[Ce,lt,ue]of[[_.flow.source,P,K],[_.flow.target,O,pe]]){const ge=_e.get(ue)??[],Se=qn(Ce,Te=>Te.x>=lt.x).filter(Te=>!ge.some(rt=>rt.id===Te.id));_e.set(ue,[...ge,...Se])}const oe=new Set([..._e.values()].flat().map(Ce=>Ce.id)),Oe=l0(_e,oe,_.flow.id,Ce=>Ce===_.flow.source||Ce===_.flow.target,()=>!1),be=Math.max(...H.map(Ce=>Ce.x+Ce.width));for(const Ce of xL){const lt=be+Ce-N;if(lt<=0)continue;if($u(Oe,lt,()=>{var ge,Se;return Xo(_.flow.id)===0&&((Se=(ge=p(_.flow.id))==null?void 0:ge.waypoints)==null?void 0:Se.length)===2},Nu))break}}{const _=P=>P.y+P.height/2,R=[];for(const P of k.keys()){if(!Zr(P))continue;const O=g.filter($=>$.flow.target===P);if(O.length!==1)continue;const N=p(O[0].flow.source),B=p(P);!N||!B||!k.has(N.id)||Math.abs(_(N)-_(B))>1||B.x-(N.x+N.width)<=z+1||R.push({id:P,pred:N,node:B})}R.sort((P,O)=>P.node.x-O.node.x);for(const{id:P}of R){const O=k.get(P),N=p(P),B=p(g.find(oe=>oe.flow.target===P).flow.source);if(!N||!B)continue;const $=N.x-(B.x+B.width);if($<=z+1)continue;const j=f(O.node.participant),H=qn(P,oe=>oe.x>=N.x),K=Ko(),pe=_L(H,j,-($-z));if(!pe)continue;const _e=Ko();(_e.bad>K.bad||_e.crossings>=K.crossings||_e.straight<K.straight)&&pe()}}r0(!0);for(const _ of b){const R=_.associations??[],P=R.map(B=>B.source===_.dataStore.id?B.target:B.source).map(p).find(Boolean),O=P?d(P)??l():l(),N=P?{x:P.x+P.width/2,y:P.y+P.height+110}:{x:200,y:tn+60};n.createShape({type:"bpmn:DataStoreReference",businessObject:i.create("bpmn:DataStoreReference",{id:_.dataStore.id,name:_.dataStore.name})},N,O);for(const B of R)i0(_.dataStore.id,B)}for(const _ of x){const P=f(_.association.target).type==="bpmn:DataStoreReference"?_.association.target:_.association.source;i0(P,_.association)}let d0=0;const Jr=10,h0=40,CL=(_,R)=>{const P=R.map(H=>d(H)).filter(H=>!!H);for(const H of P){const K=Jr,pe=H.y,_e=H.y+H.height,oe=H.x,Oe=H.x+H.width;if(Math.abs(_.y-pe)<K){const be=pe+K-_.y;_.y+=be,_.height-=be}if(Math.abs(_.y+_.height-_e)<K&&(_.height=_e-K-_.y),Math.abs(_.x-oe)<K){const be=oe+K-_.x;_.x+=be,_.width-=be}Math.abs(_.x+_.width-Oe)<K&&(_.width=Oe-K-_.x)}if(!P.length)return;const O=Math.min(...P.map(H=>H.y)),N=Math.max(...P.map(H=>H.y+H.height)),B=O-_.y,$=_.y+_.height-N,j=h0-Jr;if(B>0!=$>0)if(B>0&&B<j){const H=B+Jr;_.y+=H,_.height-=H}else $>0&&$<j&&(_.height-=$+Jr)},PL=(_,R)=>{const P=Jr,O=30,N=o.filter(B=>B.type==="bpmn:Group"&&B.id!==R);for(const B of N){const $=B.x,j=B.x+B.width,H=B.y,K=B.y+B.height,pe=_.y<K&&H<_.y+_.height,_e=_.x<j&&$<_.x+_.width;if(pe){if(Math.abs(_.x-j)<P){const oe=Math.min(j+P-_.x,O);oe>0&&_.width-oe>0&&(_.x+=oe,_.width-=oe)}if(Math.abs(_.x+_.width-$)<P){const oe=Math.min(_.x+_.width-($-P),O);oe>0&&_.width-oe>0&&(_.width-=oe)}}if(_e){if(Math.abs(_.y-K)<P){const oe=Math.min(K+P-_.y,O);oe>0&&_.height-oe>0&&(_.y+=oe,_.height-=oe)}if(Math.abs(_.y+_.height-H)<P){const oe=Math.min(_.y+_.height-(H-P),O);oe>0&&_.height-oe>0&&(_.height-=oe)}}}},md=(_,R)=>{const P=h0,O=Math.min(..._.map(H=>H.x))-P,N=Math.min(..._.map(H=>H.y))-P,B=Math.max(..._.map(H=>H.x+H.width))+P,$=Math.max(..._.map(H=>H.y+H.height))+P,j={x:O,y:N,width:B-O,height:$-N};return CL(j,_),PL(j,R),j};for(const _ of T){const R=(_.group.members??[]).map(p).filter(N=>!!N);let P;R.length?P=md(R,_.group.id):(P={x:300+d0*350,y:40,width:300,height:200},d0++);const O=n.createShape({type:"bpmn:Group",businessObject:i.create("bpmn:Group",{id:_.group.id}),width:P.width,height:P.height},{x:P.x+P.width/2,y:P.y+P.height/2},l());_.group.name&&n.updateLabel(O,_.group.name),(C0=_.group.members)!=null&&C0.length&&A(O,"bwl:Members",{refs:_.group.members.join(" ")})}{const _=o.filter(N=>!!N.waypoints),R=new Map,P=(N,B)=>{!N||!B||(R.has(N)||R.set(N,new Set),R.get(N).add(B))};for(const N of _){const B=(P0=N.source)==null?void 0:P0.id,$=(A0=N.target)==null?void 0:A0.id;P(B,$),((T0=N.type)!=null&&T0.includes("DataOutputAssociation")||(M0=N.type)!=null&&M0.includes("DataInputAssociation")||N.type==="bpmn:Association")&&P($,B)}const O=o.filter(N=>N.type==="bpmn:Group");for(const N of O){const $=(((k0=N.businessObject.extensionElements)==null?void 0:k0.values)??[]).find(ue=>ue.$type==="bwl:Members"),j=(($==null?void 0:$.refs)??"").split(" ").filter(Boolean);if(!j.length)continue;const H=new Set(j),K=[...j];for(;K.length;){const ue=K.shift();for(const ge of R.get(ue)??[])H.has(ge)||(H.add(ge),K.push(ge))}const pe=N.x,_e=N.x+N.width,oe=N.y,Oe=N.y+N.height,be=ue=>g.filter(ge=>ge.flow.target===ue).length,Ce=ue=>{var Se;const ge=((Se=p(ue))==null?void 0:Se.type)??"";if(ge==="bpmn:StartEvent"&&be(ue)===0)return!1;if(ge.endsWith("Gateway")){const Te=g.filter(rt=>rt.flow.target===ue).map(rt=>rt.flow.source);if(Te.length&&Te.every(rt=>{var He;return((He=p(rt))==null?void 0:He.type)==="bpmn:StartEvent"&&be(rt)===0}))return!1}return!0},lt=o.filter(ue=>Ze(ue)).filter(ue=>ue.type!=="bpmn:Group"&&ue.type!=="bpmn:Participant"&&ue.type!=="bpmn:TextAnnotation"&&!H.has(ue.id)&&Zr(ue.id)&&Ce(ue.id)&&ue.x<_e&&ue.x+ue.width>pe&&ue.y<Oe&&ue.y+ue.height>oe);if(lt.length)for(const ue of[-1,1]){const ge=lt.filter(ie=>(ie.x+ie.width-pe<=_e-ie.x?-1:1)===ue);if(!ge.length)continue;const Se=[];for(const ie of ge){const Z=Se.find(ne=>ne.some(we=>ie.y<we.y+we.height&&ie.y+ie.height>we.y));Z?Z.push(ie):Se.push([ie])}const Te=new Map;for(const ie of Se){let Z=ue<0?pe-Jr:_e+Jr;for(const ne of[...ie].sort((we,fe)=>ue<0?fe.x-we.x:we.x-fe.x)){const we=ue<0?Math.min(ne.x,Z-ne.width):Math.max(ne.x,Z);Z=ue<0?we-Gt:we+ne.width+Gt,we!==ne.x&&Math.sign(we-ne.x)===ue&&Te.set(ne.id,we-ne.x)}}const rt=new Map,He=ie=>rt.get(ie)===ie||!rt.get(ie)?ie:He(rt.get(ie));for(const ie of ge)rt.set(ie.id,ie.id);for(const ie of v){const Z=Te.has(ie.flow.source)?ie.flow.source:void 0,ne=Te.has(ie.flow.target)?ie.flow.target:void 0;if(!Z||!ne)continue;const we=p(ie.flow.id);((O0=we==null?void 0:we.waypoints)==null?void 0:O0.length)===2&&rt.set(He(Z),He(ne))}const Ve=new Map;for(const ie of ge){if(!Te.has(ie.id))continue;const Z=He(ie.id);Ve.set(Z,[...Ve.get(Z)??[],ie])}const gt=[...Ve.values()].sort((ie,Z)=>ue<0?Math.min(...ie.map(ne=>ne.x))-Math.min(...Z.map(ne=>ne.x)):Math.max(...Z.map(ne=>ne.x))-Math.max(...ie.map(ne=>ne.x))),xe=[];let nt=!0;for(const ie of gt){const Z=ie.map(fe=>Te.get(fe.id)??0).reduce((fe,ce)=>Math.abs(ce)>Math.abs(fe)?ce:fe,0),ne=new Map;let we=!0;for(const fe of ie){const ce=d(fe);if(!ce){we=!1;break}ne.has(ce.id)||ne.set(ce.id,{subtree:[],pool:ce}),ne.get(ce.id).subtree.push(fe)}we&&$u([...ne.values()],Z,()=>!0,Nu)?xe.push({shapes:ie,dx:Z}):nt=!1}if(!nt)for(const ie of xe.reverse())n.moveElements(ie.shapes,{x:-ie.dx,y:0})}}}{const _=new Set([...T.map(R=>R.group.id),...Qt(e,"group.update").map(R=>R.id)]);for(const R of o.filter(P=>P.type==="bpmn:Group")){if(_.has(R.id))continue;const O=(((D0=R.businessObject.extensionElements)==null?void 0:D0.values)??[]).find(j=>j.$type==="bwl:Members"),N=((O==null?void 0:O.refs)??"").split(" ").filter(Boolean).map(p).filter(j=>!!j);!N.length||!N.some(j=>{const H=m.get(j.id);return!H||H.x!==j.x||H.y!==j.y})||!N.some(j=>j.x<R.x||j.y<R.y||j.x+j.width>R.x+R.width||j.y+j.height>R.y+R.height)||n.resizeShape(R,md(N,R.id))}}{const R=new Map(fo(ot(o)).map(j=>[j.owner,j.rect])),P=o.filter(j=>!!j.waypoints),O=new Map,N=(j,H)=>{!j||!H||(O.has(j)||O.set(j,new Set),O.get(j).add(H))};for(const j of P){const H=(L0=j.source)==null?void 0:L0.id,K=(I0=j.target)==null?void 0:I0.id;N(H,K),((B0=j.type)!=null&&B0.includes("DataOutputAssociation")||(N0=j.type)!=null&&N0.includes("DataInputAssociation")||j.type==="bpmn:Association")&&N(K,H)}const B=j=>g.filter(H=>H.flow.target===j).length,$=j=>{var K;const H=((K=p(j))==null?void 0:K.type)??"";if(H==="bpmn:StartEvent"&&B(j)===0)return!1;if(H.endsWith("Gateway")){const pe=g.filter(_e=>_e.flow.target===j).map(_e=>_e.flow.source);if(pe.length&&pe.every(_e=>{var oe;return((oe=p(_e))==null?void 0:oe.type)==="bpmn:StartEvent"&&B(_e)===0}))return!1}return!0};for(const j of o.filter(H=>H.type==="bpmn:Group")){const K=((($0=j.businessObject.extensionElements)==null?void 0:$0.values)??[]).find(Z=>Z.$type==="bwl:Members"),pe=((K==null?void 0:K.refs)??"").split(" ").filter(Boolean);if(!pe.length)continue;const _e=pe.map(p).filter(Z=>!!Z);if(!_e.length||!(T.some(Z=>Z.group.id===j.id)||Qt(e,"group.update").some(Z=>Z.id===j.id)||_e.some(Z=>{const ne=m.get(Z.id);return!ne||ne.x!==Z.x||ne.y!==Z.y})))continue;const Oe=new Set(pe),be=[...pe];for(;be.length;){const Z=be.shift();for(const ne of O.get(Z)??[])Oe.has(ne)||(Oe.add(ne),be.push(ne))}const Ce=j.x,lt=j.x+j.width,ue=j.y,ge=j.y+j.height,Se=Z=>{const ne=R.get(Z.id),we={x:Z.x,y:Z.y,width:Z.width,height:Z.height};return ne?[we,{x:ne.x,y:ne.y,width:ne.width,height:ne.height}]:[we]},Te=_e.flatMap(Se),rt=Math.min(...Te.map(Z=>Z.x)),He=Math.max(...Te.map(Z=>Z.x+Z.width)),Ve=Math.min(...Te.map(Z=>Z.y)),gt=Math.max(...Te.map(Z=>Z.y+Z.height)),xe={L:rt-Ce,R:lt-He,T:Ve-ue,B:ge-gt},nt=o.filter(Z=>Ze(Z)).filter(Z=>Z.type!=="bpmn:Group"&&Z.type!=="bpmn:Participant"&&Z.type!=="bpmn:TextAnnotation"&&!Oe.has(Z.id)&&$(Z.id)&&Z.x<lt&&Z.x+Z.width>Ce&&Z.y<ge&&Z.y+Z.height>ue);if(!nt.length)continue;const ie={L:0,R:0,T:0,B:0};for(const Z of nt){const ne=Se(Z),we=Math.min(...ne.map(qe=>qe.x)),fe=Math.max(...ne.map(qe=>qe.x+qe.width)),ce=Math.min(...ne.map(qe=>qe.y)),Me=Math.max(...ne.map(qe=>qe.y+qe.height)),at={L:fe-Ce,R:lt-we,T:Me-ue,B:ge-ce},xt=["L","R","T","B"].filter(qe=>at[qe]<=xe[qe]+.001);if(!xt.length)continue;const st=xt.reduce((qe,Kt)=>at[Kt]<at[qe]?Kt:qe,xt[0]);ie[st]=Math.max(ie[st],Math.min(at[st]+10,xe[st]))}!ie.L&&!ie.R&&!ie.T&&!ie.B||n.resizeShape(j,{x:j.x+ie.L,y:j.y+ie.T,width:j.width-ie.L-ie.R,height:j.height-ie.T-ie.B})}}const m0=_=>{const R=_.waypoints;if(R!=null&&R.length){const O=R[Math.floor((R.length-1)/2)];return{x:O.x,y:O.y,width:0,height:0}}const P=_;return{x:P.x,y:P.y,width:P.width,height:P.height}};let os=0;const g0=12,y0=14,AL=15,TL=300,ML=_=>{const R=_.split(`
|
|
7
|
-
`),P=Math.max(...R.map(B=>uo(B,g0))),O=Math.max(100,Math.min(TL,Math.ceil(P)+y0)),N=R.reduce((B,$)=>B+Math.max(1,Math.ceil((uo($,g0)+y0)/O)),0);return{width:O,height:Math.max(30,N*AL+10)}};for(const _ of C){const R=_.association,P=((F0=_.placement)==null?void 0:F0.anchor)??(R?R.source===_.annotation.id?R.target:R.source:void 0),O=P?p(P):void 0,N=O?m0(O):void 0,B=ML(_.annotation.text??"");let $;if(N&&_.placement){const[pe,_e]=Ts[_.placement.side],oe=_.placement.offset??50;$={x:N.x+N.width/2+pe*(N.width/2+B.width/2+oe),y:N.y+N.height/2+_e*(N.height/2+B.height/2+oe)}}else N?($={x:N.x+N.width/2+180+os%3*260,y:N.y-110-os%2*95},os++):($={x:300+os*260,y:60},os++);const j=O?d(O)??l():l(),H=j;N&&typeof H.x=="number"&&typeof H.width=="number"&&H.type==="bpmn:Participant"&&($=bl(o,N,B,H,_.placement?{placement:_.placement}:{from:$}));const K=n.createShape({type:"bpmn:TextAnnotation",width:B.width,height:B.height,businessObject:i.create("bpmn:TextAnnotation",{id:_.annotation.id,text:_.annotation.text})},$,j);if(R){const pe=_e=>_e===_.annotation.id?K:f(_e);n.connect(pe(R.source),pe(R.target),R.id?{type:"bpmn:Association",businessObject:i.create("bpmn:Association",{id:R.id})}:{type:"bpmn:Association"})}_.placement&&A(K,"bwl:Placement",I(_.placement))}for(const _ of Qt(e,"association.add")){const R=_.association;n.connect(f(R.source),f(R.target),R.id?{type:"bpmn:Association",businessObject:i.create("bpmn:Association",{id:R.id})}:{type:"bpmn:Association"})}for(const _ of Qt(e,"node.update")){let R=f(_.id);if(_.type&&As(_.type)!==R.type&&(R=c.replaceElement(R,{type:As(_.type)})),_.name!==void 0&&n.updateProperties(R,{name:_.name??void 0}),_.lane||_.band!==void 0){_.band!==void 0&&n.updateProperties(R,{"bwl:band":_.band});const P=R.y+R.height/2,O=d(R),N=_.lane?f(_.lane):((O==null?void 0:O.children)??[]).find($=>$.type==="bpmn:Lane"&&P>=$.y&&P<=$.y+$.height);_.band!==void 0&&tt(N==null?void 0:N.id,_.band,O);const B=N?N.y+(_.band===void 0?N.height/2:Math.min(N.height/2,de)+E(N.id,_.band)*L):_.band!==void 0&&O?O.y+re+E(`pool:${O.id}`,_.band)*L:void 0;if(B!==void 0){const $=B-P;$!==0&&n.moveElements([R],{x:0,y:$})}}}for(const _ of Qt(e,"sequenceFlow.update")){const R=f(_.id);if(_.source!==void 0||_.target!==void 0){const P=R,O=_.source!==void 0?f(_.source):P.source,N=_.target!==void 0?f(_.target):P.target,B=$=>({x:$.x+$.width/2,y:$.y+$.height/2});n.reconnect(P,O,N,[B(O),B(N)])}_.name!==void 0&&n.updateProperties(R,{name:_.name??void 0}),_.condition!==void 0&&n.updateProperties(R,{name:((j0=_.condition)==null?void 0:j0.label)??void 0})}for(const _ of Qt(e,"messageFlow.update"))_.name!==void 0&&n.updateProperties(f(_.id),{name:_.name??void 0});for(const _ of Qt(e,"dataStore.update"))_.name!==void 0&&n.updateProperties(f(_.id),{name:_.name??void 0});for(const _ of Qt(e,"annotation.update")){const R=f(_.id);if(_.text!==void 0&&n.updateProperties(R,{text:_.text}),_.placement===null)A(R,"bwl:Placement",null);else if(_.placement){const P=f(_.placement.anchor),O=m0(P),N=d(P)??l(),B=typeof N.x=="number"&&typeof N.width=="number"&&N.type==="bpmn:Participant",[$,j]=Ts[_.placement.side],H=_.placement.offset??50,K={x:O.x+O.width/2+$*(O.width/2+R.width/2+H),y:O.y+O.height/2+j*(O.height/2+R.height/2+H)},pe=B?bl(o,O,{width:R.width,height:R.height},N,{placement:_.placement,selfId:_.id}):K;n.moveElements([R],{x:pe.x-(R.x+R.width/2),y:pe.y-(R.y+R.height/2)}),A(R,"bwl:Placement",I(_.placement))}}for(const _ of Qt(e,"group.update")){const R=f(_.id);if(_.name!==void 0&&n.updateLabel(R,_.name??""),_.members){const P=_.members.map(p).filter(O=>!!O);P.length&&n.resizeShape(R,md(P,_.id)),A(R,"bwl:Members",{refs:_.members.join(" ")})}}}function xl(e){switch(e.kind){case"annotation-over-label":return[e.annotation];case"edge-crosses-shape":return[e.shape];case"shape-outside-container":return[e.shape];case"shape-overlap":return e.shapes;default:return[]}}function C1(e,t,n){var l,p;const{elementRegistry:i}=e,r=e.modeling,o=f=>dn(f).filter(d=>!t.has(bn(d))),a=f=>{var d;return((d=i.get(f))==null?void 0:d.type)==="bpmn:TextAnnotation"},s=ot(i),c=o(s),u=[...new Set(c.flatMap(xl))].filter(f=>n.has(f)&&a(f));if(u.length)for(const f of u){const d=i.get(f);if(!d||typeof d.x!="number"||typeof d.width!="number")continue;let m=d.parent,h;for(;m;){if(m.type==="bpmn:Participant"){h=m;break}m=m.parent}if(!h){const de=d.x+d.width/2,Ue=d.y+d.height/2;h=i.getAll().find(je=>{if(je.type!=="bpmn:Participant")return!1;const q=je;return typeof q.x=="number"&&typeof q.width=="number"&&de>=q.x&&de<=q.x+q.width&&Ue>=q.y&&Ue<=q.y+q.height})}if(!h||typeof h.x!="number"||typeof h.width!="number")continue;const g=(((l=d.businessObject.extensionElements)==null?void 0:l.values)??[]).find(de=>de.$type==="bwl:Placement"),v=[...d.incoming??[],...d.outgoing??[]].find(de=>de.type==="bpmn:Association"),b=(g!=null&&g.anchor?i.get(g.anchor):void 0)??(v?((p=v.source)==null?void 0:p.id)===f?v.target:v.source:void 0);if(!b)continue;const x=b.waypoints,C=x!=null&&x.length?{x:x[Math.floor((x.length-1)/2)].x,y:x[Math.floor((x.length-1)/2)].y,width:0,height:0}:{x:b.x,y:b.y,width:b.width,height:b.height},T={width:d.width,height:d.height},k={x:d.x+d.width/2,y:d.y+d.height/2},A=g==null?void 0:g.side,I=[];A&&A in Ts&&I.push(bl(i,C,T,h,{placement:{side:A,offset:(g==null?void 0:g.offset)??null},selfId:f}));for(const[de,Ue]of[[-1,0],[1,0],[0,-1],[0,1]])for(let je=1;je<=R1;je++)I.push({x:k.x+de*jh*je,y:k.y+Ue*jh*je});const D={...s,edges:s.edges.filter(de=>de.id!==(v==null?void 0:v.id))},L=o(D),z=L.filter(de=>xl(de).includes(f)).length;if(!z)continue;let re;for(const de of I){const Ue=de.x-k.x,je=de.y-k.y;if(!Ue&&!je||de.x-T.width/2<h.x||de.x+T.width/2>h.x+h.width||de.y-T.height/2<h.y||de.y+T.height/2>h.y+h.height)continue;const q={...D,shapes:D.shapes.map(Pe=>Pe.id===f?{...Pe,x:Pe.x+Ue,y:Pe.y+je}:Pe)},le=o(q),ae=le.filter(Pe=>xl(Pe).includes(f)).length;if(ae>=z||le.length>L.length)continue;const he=Math.abs(Ue)+Math.abs(je);if((!re||ae<re.mine||ae===re.mine&&(le.length<re.all||le.length===re.all&&he<re.dist))&&(re={x:de.x,y:de.y,mine:ae,all:le.length,dist:he}),re.mine===0&&re.all<L.length)break}re&&r.moveElements([d],{x:re.x-k.x,y:re.y-k.y})}}const P1=60;function A1(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=l=>dn(l).filter(p=>!t.has(bn(p))),a=l=>l.filter(p=>p.kind==="pool-overlap"),s=new Map(n.shapes.map(l=>[l.id,l])),c=(l,p)=>p.x>=l.x&&p.y>=l.y&&p.x+p.width<=l.x+l.width&&p.y+p.height<=l.y+l.height,u=l=>{if(!s.get(l))return[l];const f=new Set,d=new Set([l]);for(let h=0;h<4;h++){let y=!1;for(const g of n.shapes)g.type!=="bpmn:Group"||f.has(g.id)||[...d].some(v=>{const b=s.get(v);return b&&c(g,b)})&&(f.add(g.id),y=!0);for(const g of n.shapes)g.type!=="bpmn:Participant"||d.has(g.id)||[...f].some(v=>{const b=s.get(v);return b&&c(b,g)})&&(d.add(g.id),y=!0);if(!y)break}const m=n.shapes.filter(h=>!h.parent&&!d.has(h.id)&&!f.has(h.id)&&h.type!=="bpmn:Group"&&h.type!=="bpmn:Participant").filter(h=>[...f].some(y=>{const g=s.get(y);return g&&c(g,h)})).map(h=>h.id);return[...d,...f,...m]};for(let l=0;l<6;l++){const p=ot(i),f=o(p),d=a(f);if(!d.length)return;const m=new Map(p.shapes.map(x=>[x.id,x]));let h=null;for(const x of d){if(x.kind!=="pool-overlap")continue;const[C,T]=x.pools,k=m.get(C),A=m.get(T);if(!k||!A)continue;const[I,D]=k.x<=A.x?[k,A]:[A,k];if(x.contained)continue;const L=s.get(I.id),z=s.get(D.id),re=L&&z?Math.max(z.x-(L.x+L.width),0):P1,de=I.x+I.width+re-D.x;if(de<=0)continue;const Ue=u(D.id).filter(je=>i.get(je));Ue.length&&(!h||de>h.dx)&&(h={movers:Ue,dx:de})}if(!h)return;const y=h.movers.map(x=>i.get(x)).filter(x=>!!x&&typeof x.x=="number");if(!y.length)return;const g=f.length,v=d.length;r.moveElements(y,{x:h.dx,y:0});const b=o(ot(i));if(!(a(b).length<v&&b.length<=g)){r.moveElements(y,{x:-h.dx,y:0});return}}}function T1(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=u=>dn(u).filter(l=>!t.has(bn(l))),a=(u,l)=>l.x>=u.x&&l.y>=u.y&&l.x+l.width<=u.x+u.width&&l.y+l.height<=u.y+u.height,s=u=>({l:Math.min(...u.map(l=>l.x)),t:Math.min(...u.map(l=>l.y)),r:Math.max(...u.map(l=>l.x+l.width)),b:Math.max(...u.map(l=>l.y+l.height))}),c=n.shapes.filter(u=>{var l;return u.type==="bpmn:Group"&&!((l=u.members)!=null&&l.length)});if(c.length)for(const u of c){const l=i.get(u.id);if(!l||typeof l.x!="number")continue;const p=n.shapes.filter(T=>T.id!==u.id&&T.type!=="bpmn:Group"&&a(u,T));if(!p.length)continue;const f=p.map(T=>i.get(T.id)).filter(T=>!!T&&typeof T.x=="number");if(f.length!==p.length)continue;const d=s(p),m=s(f),h=m.l+(u.x-d.l),y=m.t+(u.y-d.t),g=m.r+(u.x+u.width-d.r),v=m.b+(u.y+u.height-d.b),b={x:h,y,width:g-h,height:v-y};if(b.width<=0||b.height<=0||Math.abs(b.x-l.x)<1&&Math.abs(b.y-l.y)<1&&Math.abs(b.width-l.width)<1&&Math.abs(b.height-l.height)<1)continue;const x=o(ot(i)).length,C={x:l.x,y:l.y,width:l.width,height:l.height};r.resizeShape(l,b),o(ot(i)).length>x&&r.resizeShape(l,C)}}function zh(e,t,n=Hh){const i=Fh(e),r=$h(t,fh(i.elementRegistry)),o={edgeCrossings:{before:0,after:0,pairs:[],solidPairs:0,dashedPairs:0,mixedPairs:0,crossPoolMessages:0}};if(r.length)return{ok:!1,issues:r,findings:[],stats:o};const a=ot(i.elementRegistry),s=new Set(dn(a).map(bn)),c=new Set(a.edges.map(g=>g.id)),u=new Set(a.shapes.map(g=>g.id)),l=_s(a),p=l.length,f=new Set(l.map(([g,v])=>`${g}|${v}`)),d=e.get("commandStack");try{_d(d,()=>{n(t,i),A1(i,s,a),T1(i,s,a),bh(i,c);const g=hl(i,s);gh(i,f,c),Th(i,s,c),wh(i,c),g1(i,c),Rh(i,s,c),x1(i,s,c),Dh(i,s,c),Oh(i,c),Ih(i,u),C1(i,s,u),hl(i,s,g)})}catch(g){return{ok:!1,issues:[{kind:"lower-failed",message:g instanceof Error?g.message:String(g)}],findings:[],stats:o}}const m=ot(i.elementRegistry),h=dn(m).filter(g=>!s.has(bn(g))),y=rh(m);return{ok:!0,issues:[],findings:h,stats:{edgeCrossings:{before:p,after:y.pairs.length,pairs:y.pairs,solidPairs:y.solidPairs,dashedPairs:y.dashedPairs,mixedPairs:y.mixedPairs,crossPoolMessages:y.crossPoolMessages}}}}function M1(e){const t=e.slice(e.indexOf(":")+1);return t.charAt(0).toLowerCase()+t.slice(1)}function k1(e,t){return typeof e.get=="function"?e.get(t):e[t]}function Gh(e,t){const n=k1(e,t);return typeof n=="number"&&Number.isFinite(n)?n:void 0}function Vh(e,t){var i;return(((i=e.extensionElements)==null?void 0:i.values)??[]).find(r=>(r==null?void 0:r.$type)===t)}function O1(e){return typeof e=="string"&&Hu.includes(e)}function ui(e){if(typeof e=="string")return e;const t=e==null?void 0:e.id;return typeof t=="string"?t:void 0}function Wh(e){const t=e.rootElements??[],n=t.find(q=>q.$type==="bpmn:Collaboration"),i=new Map(t.filter(q=>q.$type==="bpmn:Process").map(q=>[q.id,q])),r=[],o=[],a=[],s=[],c=[],u=[],l={poolOrders:{},bands:{},placements:{}},p=[],f=[],d=[],m=[],h=[],y=[],g=new Set,v=new Set,b=q=>{q&&g.add(q)},x=q=>{g.add(q),v.add(q)},C=q=>{const le=Vh(q,"bwl:Placement");if(!le)return;const ae=typeof le.anchor=="string"?le.anchor:void 0;if(!ae||!O1(le.side))return;const he=typeof le.offset=="number"?le.offset:void 0;h.push({owner:q.id,anchor:ae,side:le.side,...he!==void 0?{offset:he}:{}})},T=q=>{const le=Vh(q,"bwl:Members"),ae=typeof(le==null?void 0:le.refs)=="string"?le.refs.split(/\s+/).filter(Boolean):[];ae.length&&y.push({owner:q.id,refs:ae})},k=q=>{var le;for(const ae of q)switch(b(ae.id),ae.$type){case"bpmn:TextAnnotation":x(ae.id),s.push({id:ae.id,text:typeof ae.text=="string"?ae.text:""}),C(ae);break;case"bpmn:Association":d.push({id:ae.id,type:ae.$type,source:ui(ae.sourceRef),target:ui(ae.targetRef)});break;case"bpmn:Group":{x(ae.id);const he=(le=ae.categoryValueRef)==null?void 0:le.value;c.push({id:ae.id,...typeof he=="string"&&he?{name:he}:{}}),T(ae);break}default:u.push({id:ae.id,type:ae.$type,reason:"type-outside-mvp"})}},A=q=>{for(const le of q.flowElements??[])b(le.id),u.push({id:le.id,type:le.$type,reason:"inside-container"}),(le.flowElements??[]).length&&A(le);for(const le of q.artifacts??[])b(le.id),u.push({id:le.id,type:le.$type,reason:"inside-container"})},I=(q,le)=>{const ae=q.flowElements??[],he=(q.laneSets??[]).flatMap(W=>W.lanes??[]),Pe=new Map;for(const W of he){b(W.id);for(const Y of W.flowNodeRef??[]){const ee=ui(Y);ee&&Pe.set(ee,W.id)}}for(const W of ae){if(b(W.id),W.$type==="bpmn:SequenceFlow"){p.push({id:W.id,source:ui(W.sourceRef),target:ui(W.targetRef),...typeof W.name=="string"&&W.name?{name:W.name}:{}});continue}if(W.$type==="bpmn:DataStoreReference"){x(W.id),a.push({id:W.id,...W.name?{name:W.name}:{}});continue}const Y=M1(W.$type);if(!gd(Y)){u.push({id:W.id,type:W.$type,reason:"type-outside-mvp"});continue}x(W.id);const ee=Y==="boundaryEvent"?ui(W.attachedToRef):void 0;o.push({id:W.id,type:Y,...W.name?{name:W.name}:{},...le?{participant:le}:{},...Pe.has(W.id)?{lane:Pe.get(W.id)}:{},...ee?{attachedTo:ee}:{}}),Y==="subProcess"&&A(W);const Re=Gh(W,"bwl:band");Re!==void 0&&(l.bands[W.id]=Re);for(const mt of W.dataOutputAssociations??[])b(mt.id),m.push({id:mt.id,type:mt.$type,source:W.id,target:ui(mt.targetRef)});for(const mt of W.dataInputAssociations??[])b(mt.id),m.push({id:mt.id,type:mt.$type,source:ui((mt.sourceRef??[])[0]),target:W.id})}k(q.artifacts??[])};if(n){const q=new Set;for(const le of n.participants??[]){x(le.id);const ae=ui(le.processRef);ae&&q.add(ae);const he=ae?i.get(ae):void 0,Pe=((he==null?void 0:he.laneSets)??[]).flatMap(Re=>Re.lanes??[]),W=Pe.map(Re=>({id:Re.id,...Re.name?{name:Re.name}:{}}));for(const Re of W)x(Re.id);const Y=!he||(he.flowElements??[]).length===0&&Pe.length===0&&(he.artifacts??[]).length===0;r.push({id:le.id,...le.name?{name:le.name}:{},...Y?{blackBox:!0}:{},...W.length?{lanes:W}:{}});const ee=Gh(le,"bwl:poolOrder");ee!==void 0&&(l.poolOrders[le.id]=ee),he&&I(he,le.id)}for(const le of n.messageFlows??[])b(le.id),f.push({id:le.id,source:ui(le.sourceRef),target:ui(le.targetRef),...typeof le.name=="string"&&le.name?{name:le.name}:{}});k(n.artifacts??[]);for(const[le,ae]of i)!q.has(le)&&(ae.flowElements??[]).length>0&&u.push({id:le,type:ae.$type,reason:"unreachable-process"})}else for(const q of i.values())I(q);const D=[],L=[],z=[],re=[],de=(q,le)=>!!q&&!!le&&v.has(q)&&v.has(le);for(const q of p){if(!de(q.source,q.target)){u.push({id:q.id,type:"bpmn:SequenceFlow",reason:"endpoint-outside-mvp"});continue}D.push({id:q.id,source:q.source,target:q.target,...q.name?{name:q.name}:{}}),v.add(q.id)}for(const q of f){if(!de(q.source,q.target)){u.push({id:q.id,type:"bpmn:MessageFlow",reason:"endpoint-outside-mvp"});continue}L.push({id:q.id,source:q.source,target:q.target,...q.name?{name:q.name}:{}}),v.add(q.id)}for(const q of m){if(!de(q.source,q.target)){u.push({id:q.id??"",type:q.type,reason:"endpoint-outside-mvp"});continue}re.push({...q.id?{id:q.id}:{},source:q.source,target:q.target}),q.id&&v.add(q.id)}for(const q of d){if(!de(q.source,q.target)){u.push({id:q.id??"",type:q.type,reason:"endpoint-outside-mvp"});continue}z.push({...q.id?{id:q.id}:{},source:q.source,target:q.target})}const Ue=new Map(c.map(q=>[q.id,q]));for(const{owner:q,refs:le}of y){const ae=le.filter(Pe=>g.has(Pe)),he=Ue.get(q);he&&ae.length&&(he.members=ae)}for(const q of h)g.has(q.anchor)&&(l.placements[q.owner]={anchor:q.anchor,side:q.side,...q.offset!==void 0?{offset:q.offset}:{}});return{definition:{...r.length?{participants:r}:{},nodes:o,sequenceFlows:D,...L.length?{messageFlows:L}:{},...a.length?{dataStores:a}:{},...re.length?{dataAssociations:re}:{},...s.length?{annotations:s}:{},...z.length?{associations:z}:{},...c.length?{groups:c}:{}},hints:l,omitted:u}}async function D1(e){const{definitions:t,warnings:n}=await rl(e);return{...Wh(t),warnings:n}}function L1(e,t,n,i={}){return{documentId:e,baseVersion:t,ops:[...n],origin:i.origin??"agent",clientOpId:(i.mkClientOpId??(()=>crypto.randomUUID()))()}}async function Uh(e,t,{currentVersion:n}){if(t.baseVersion!==n)return{status:"conflict",baseVersion:t.baseVersion,currentVersion:n};const i=zh(e,t.ops);if(!i.ok)return{status:"rejected",issues:i.issues};const{xml:r}=await e.saveXML({format:!0});return{status:"applied",version:n+1,xml:r??"",findings:i.findings,stats:i.stats}}const I1=Symbol("bpmn-editor");function B1(){const e=It.ref(!1),t=It.ref(!0),n=It.ref(!1);let i,r;const o=()=>{e.value=!0};function a(u,l){u.get("canvas").getContainer().style.pointerEvents=l?"":"none";const p=u.get("keyboard");l?(r&&p.bind(r),r=void 0):r||(r=p.getBinding(),p.unbind())}function s(){if(!i)throw new Error("modeler not attached — 뷰 @ready 후 attach() 필요");return i}function c(){return i==null?void 0:i.get("commandStack")}return{dirty:e,editable:t,agentBusy:n,attach(u){i&&this.detach(),i=u,i.get("eventBus").on("commandStack.changed",o),t.value||a(i,!1)},detach(){i==null||i.get("eventBus").off("commandStack.changed",o),i&&!t.value&&a(i,!0),r=void 0,i=void 0},setEditable(u){t.value=u,i&&a(i,u)},async applyAgentBatch(u,l){const p=s();n.value=!0;try{const f=await Uh(p,u,{currentVersion:l});return f.status==="applied"&&(e.value=!1),f}finally{n.value=!1}},async importXml(u){const{warnings:l}=await s().importXML(u);return e.value=!1,{warnings:ol(l)}},async saveXml(){const{xml:u}=await s().saveXML({format:!0});return e.value=!1,u??""},undo:()=>{var u;return(u=c())==null?void 0:u.undo()},redo:()=>{var u;return(u=c())==null?void 0:u.redo()},canUndo:()=>{var u;return((u=c())==null?void 0:u.canUndo())??!1},canRedo:()=>{var u;return((u=c())==null?void 0:u.canRedo())??!1}}}function ye(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}function N1(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var _l={exports:{}},Yh;function $1(){if(Yh)return _l.exports;Yh=1;var e=_l.exports=function(t,n){if(n||(n=16),t===void 0&&(t=128),t<=0)return"0";for(var i=Math.log(Math.pow(2,t))/Math.log(n),r=2;i===1/0;r*=2)i=Math.log(Math.pow(2,t/r))/Math.log(n)*r;for(var o=i-Math.floor(i),a="",r=0;r<Math.floor(i);r++){var s=Math.floor(Math.random()*n).toString(n);a=s+a}if(o){var c=Math.pow(n,o),s=Math.floor(Math.random()*c).toString(n);a=s+a}var u=parseInt(a,n);return u!==1/0&&u>=Math.pow(2,t)?e(t,n):a};return e.rack=function(t,n,i){var r=function(a){var s=0;do{if(s++>10)if(i)t+=i;else throw new Error("too many ID collisions, use more bits");var c=e(t,n)}while(Object.hasOwnProperty.call(o,c));return o[c]=a,c},o=r.hats={};return r.get=function(a){return r.hats[a]},r.set=function(a,s){return r.hats[a]=s,r},r.bits=t||128,r.base=n||16,r},_l.exports}var F1=$1(),j1=N1(F1);function gi(e){if(!(this instanceof gi))return new gi(e);e=e||[128,36,1],this._seed=e.length?j1.rack(e[0],e[1],e[2]):e}gi.prototype.next=function(e){return this._seed(e||!0)},gi.prototype.nextPrefixed=function(e,t){var n;do n=e+this.next(!0);while(this.assigned(n));return this.claim(n,t),n},gi.prototype.claim=function(e,t){this._seed.set(e,t||!0)},gi.prototype.assigned=function(e){return this._seed.get(e)||!1},gi.prototype.unclaim=function(e){delete this._seed.hats[e]},gi.prototype.clear=function(){var e=this._seed.hats,t;for(t in e)this.unclaim(t)};const Wt={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:[0,"",""]};Wt.td=Wt.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],Wt.option=Wt.optgroup=[1,'<select multiple="multiple">',"</select>"],Wt.thead=Wt.tbody=Wt.colgroup=Wt.caption=Wt.tfoot=[1,"<table>","</table>"],Wt.polyline=Wt.ellipse=Wt.polygon=Wt.circle=Wt.text=Wt.line=Wt.path=Wt.rect=Wt.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];function bt(e,t=globalThis.document){var u;if(typeof e!="string")throw new TypeError("String expected");const n=/^<!--(.*?)-->$/s.exec(e);if(n)return t.createComment(n[1]);const i=(u=/<([\w:]+)/.exec(e))==null?void 0:u[1];if(!i)return t.createTextNode(e);if(e=e.trim(),i==="body"){const l=t.createElement("html");l.innerHTML=e;const{lastChild:p}=l;return p.remove(),p}let[r,o,a]=Object.hasOwn(Wt,i)?Wt[i]:Wt._default,s=t.createElement("div");for(s.innerHTML=o+e+a;r--;)s=s.lastChild;if(s.firstChild===s.lastChild){const{firstChild:l}=s;return l.remove(),l}const c=t.createDocumentFragment();return c.append(...s.childNodes),c}function H1(e,t){return t.forEach(function(n){n&&typeof n!="string"&&!Array.isArray(n)&&Object.keys(n).forEach(function(i){if(i!=="default"&&!(i in e)){var r=Object.getOwnPropertyDescriptor(n,i);Object.defineProperty(e,i,r.get?r:{enumerable:!0,get:function(){return n[i]}})}})}),Object.freeze(e)}function _n(e,...t){const n=e.style;return F(t,function(i){i&&F(i,function(r,o){n[o]=r})}),e}function hn(e,t,n){return arguments.length==2?e.getAttribute(t):n===null?e.removeAttribute(t):(e.setAttribute(t,n),e)}const z1=Object.prototype.toString;function Et(e){return new Ji(e)}function Ji(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}Ji.prototype.add=function(e){return this.list.add(e),this},Ji.prototype.remove=function(e){return z1.call(e)=="[object RegExp]"?this.removeMatching(e):(this.list.remove(e),this)},Ji.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},Ji.prototype.toggle=function(e,t){return typeof t<"u"?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},Ji.prototype.array=function(){return Array.from(this.list)},Ji.prototype.has=Ji.prototype.contains=function(e){return this.list.contains(e)};function Ms(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function Lr(e,t,n){var i=n?e:e.parentNode;return i&&typeof i.closest=="function"&&i.closest(t)||null}function G1(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ks={},qh;function V1(){if(qh)return ks;qh=1;var e,t,n;function i(){e=window.addEventListener?"addEventListener":"attachEvent",t=window.removeEventListener?"removeEventListener":"detachEvent",n=e!=="addEventListener"?"on":""}return ks.bind=function(r,o,a,s){return e||i(),r[e](n+o,a,s||!1),a},ks.unbind=function(r,o,a,s){return t||i(),r[t](n+o,a,s||!1),a},ks}var Kh=V1(),W1=G1(Kh),Ne=H1({__proto__:null,default:W1},[Kh]),Xh=["focus","blur"];function U1(e,t,n,i,r){return Xh.indexOf(n)!==-1&&(r=!0),Ne.bind(e,n,function(o){var a=o.target||o.srcElement;o.delegateTarget=Lr(a,t,!0),o.delegateTarget&&i.call(e,o)},r)}function Y1(e,t,n,i){return Xh.indexOf(t)!==-1&&(i=!0),Ne.unbind(e,t,n,i)}var kn={bind:U1,unbind:Y1};function wl(e,t){return e&&typeof e.matches=="function"&&e.matches(t)||!1}function ut(e,t){return t=t||document,t.querySelector(e)}function Os(e,t){return t=t||document,t.querySelectorAll(e)}function yi(e){e.parentNode&&e.parentNode.removeChild(e)}function q1(e,t){if(e.ownerDocument!==t.ownerDocument)try{return t.ownerDocument.importNode(e,!0)}catch{}return e}function K1(e,t){return t.appendChild(q1(e,t))}function $e(e,t){return K1(t,e),e}var El=2,Zh={"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":El,"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":El,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function X1(e,t){return Zh[t]?e.style[t]:e.getAttributeNS(null,t)}function Qh(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=Zh[i];r?(r===El&&typeof n=="number"&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function Z1(e,t){var n=Object.keys(t),i,r;for(i=0,r;r=n[i];i++)Qh(e,r,t[r])}function ve(e,t,n){if(typeof t=="string")if(n!==void 0)Qh(e,t,n);else return X1(e,t);else Z1(e,t);return e}const Q1=Object.prototype.toString;function Qe(e){return new er(e)}function er(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}er.prototype.add=function(e){return this.list.add(e),this},er.prototype.remove=function(e){return Q1.call(e)=="[object RegExp]"?this.removeMatching(e):(this.list.remove(e),this)},er.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},er.prototype.toggle=function(e,t){return typeof t<"u"?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},er.prototype.array=function(){return Array.from(this.list)},er.prototype.has=er.prototype.contains=function(e){return this.list.contains(e)};function Ds(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function Jh(e){return e.cloneNode(!0)}var Sl={svg:"http://www.w3.org/2000/svg"},em='<svg xmlns="'+Sl.svg+'"';function J1(e){var t=!1;e.substring(0,4)==="<svg"?e.indexOf(Sl.svg)===-1&&(e=em+e.substring(4)):(e=em+">"+e+"</svg>",t=!0);var n=eS(e);if(!t)return n;for(var i=document.createDocumentFragment(),r=n.firstChild;r.firstChild;)i.appendChild(r.firstChild);return i}function eS(e){var t;return t=new DOMParser,t.async=!1,t.parseFromString(e,"text/xml")}function Ae(e,t){var n;return e=e.trim(),e.charAt(0)==="<"?(n=J1(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(Sl.svg,e),t&&ve(n,t),n}var Rl=null;function tm(){return Rl===null&&(Rl=Ae("svg")),Rl}function nm(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}function tS(e,t,n,i,r,o){var a=tm().createSVGMatrix();switch(arguments.length){case 0:return a;case 1:return nm(a,e);case 6:return nm(a,{a:e,b:t,c:n,d:i,e:r,f:o})}}function ia(e){return tm().createSVGTransform()}var im=/([&<>]{1})/g,nS=/([&<>\n\r"]{1})/g,iS={"&":"&","<":"<",">":">",'"':"'"};function Cl(e,t){function n(i,r){return iS[r]||r}return e.replace(t,n)}function rm(e,t){var n,i,r,o,a;switch(e.nodeType){case 3:t.push(Cl(e.textContent,im));break;case 1:if(t.push("<",e.tagName),e.hasAttributes())for(r=e.attributes,n=0,i=r.length;n<i;++n)o=r.item(n),t.push(" ",o.name,'="',Cl(o.value,nS),'"');if(e.hasChildNodes()){for(t.push(">"),a=e.childNodes,n=0,i=a.length;n<i;++n)rm(a.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("<!--",Cl(e.nodeValue,im),"-->");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function rS(e){for(var t=e.firstChild,n=[];t;)rm(t,n),t=t.nextSibling;return n.join("")}function om(e,t){return rS(e)}function Ut(e){var t=e.parentNode;return t&&t.removeChild(e),e}function oS(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function aS(e,t){var n,i;for(e.clear(),n=0;i=t[n];n++)e.appendItem(oS(e,i))}function ra(e,t){var n=e.transform.baseVal;return t&&(Array.isArray(t)||(t=[t]),aS(n,t)),n.consolidate()}const sS=/^class[ {]/;function cS(e){return sS.test(e.toString())}function Pl(e){return Array.isArray(e)}function Al(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Ls(...e){e.length===1&&Pl(e[0])&&(e=e[0]),e=[...e];const t=e.pop();return t.$inject=e,t}const uS=/constructor\s*[^(]*\(\s*([^)]*)\)/m,lS=/^(?:async\s+)?(?:function\s*[^(]*)?(?:\(\s*([^)]*)\)|(\w+))/m,pS=/\/\*([^*]*)\*\//m;function fS(e){if(typeof e!="function")throw new Error(`Cannot annotate "${e}". Expected a function!`);const t=e.toString().match(cS(e)?uS:lS);if(!t)return[];const n=t[1]||t[2];return n&&n.split(",").map(i=>{const r=i.match(pS);return(r&&r[1]||i).trim()})||[]}function am(e,t){const n=t||{get:function(b,x){if(i.push(b),x===!1)return null;throw s(`No provider for "${b}"!`)}},i=[],r=this._providers=Object.create(n._providers||null),o=this._instances=Object.create(null),a=o.injector=this,s=function(b){const x=i.join(" -> ");return i.length=0,new Error(x?`${b} (Resolving: ${x})`:b)};function c(b,x){if(!r[b]&&b.includes(".")){const C=b.split(".");let T=c(C.shift());for(;C.length;)T=T[C.shift()];return T}if(Al(o,b))return o[b];if(Al(r,b)){if(i.indexOf(b)!==-1)throw i.push(b),s("Cannot resolve circular dependency!");return i.push(b),o[b]=r[b][0](r[b][1]),i.pop(),o[b]}return n.get(b,x)}function u(b,x){if(typeof x>"u"&&(x={}),typeof b!="function")if(Pl(b))b=Ls(b.slice());else throw s(`Cannot invoke "${b}". Expected a function!`);const T=(b.$inject||fS(b)).map(k=>Al(x,k)?x[k]:c(k));return{fn:b,dependencies:T}}function l(b){const{fn:x,dependencies:C}=u(b),T=Function.prototype.bind.call(x,null,...C);return new T}function p(b,x,C){const{fn:T,dependencies:k}=u(b,C);return T.apply(x,k)}function f(b){return Ls(x=>b.get(x))}function d(b,x){if(x&&x.length){const C=Object.create(null),T=Object.create(null),k=[],A=[],I=[];let D,L,z,re;for(let de in r)D=r[de],x.indexOf(de)!==-1&&(D[2]==="private"?(L=k.indexOf(D[3]),L===-1?(z=D[3].createChild([],x),re=f(z),k.push(D[3]),A.push(z),I.push(re),C[de]=[re,de,"private",z]):C[de]=[I[L],de,"private",A[L]]):C[de]=[D[2],D[1]],T[de]=!0),(D[2]==="factory"||D[2]==="type")&&D[1].$scope&&x.forEach(Ue=>{D[1].$scope.indexOf(Ue)!==-1&&(C[de]=[D[2],D[1]],T[Ue]=!0)});x.forEach(de=>{if(!T[de])throw new Error('No provider for "'+de+'". Cannot use provider from the parent!')}),b.unshift(C)}return new am(b,a)}const m={factory:p,type:l,value:function(b){return b}};function h(b,x){const C=b.__init__||[];return function(){C.forEach(T=>{typeof T=="string"?x.get(T):x.invoke(T)})}}function y(b){const x=b.__exports__;if(x){const C=b.__modules__,T=Object.keys(b).reduce((L,z)=>(z!=="__exports__"&&z!=="__modules__"&&z!=="__init__"&&z!=="__depends__"&&(L[z]=b[z]),L),Object.create(null)),k=(C||[]).concat(T),A=d(k),I=Ls(function(L){return A.get(L)});x.forEach(function(L){r[L]=[I,L,"private",A]});const D=(b.__init__||[]).slice();return D.unshift(function(){A.init()}),b=Object.assign({},b,{__init__:D}),h(b,A)}return Object.keys(b).forEach(function(C){if(C==="__init__"||C==="__depends__")return;const T=b[C];if(T[2]==="private"){r[C]=T;return}const k=T[0],A=T[1];r[C]=[m[k],dS(k,A),k]}),h(b,a)}function g(b,x){return b.indexOf(x)!==-1||(b=(x.__depends__||[]).reduce(g,b),b.indexOf(x)!==-1)?b:b.concat(x)}function v(b){const x=b.reduce(g,[]).map(y);let C=!1;return function(){C||(C=!0,x.forEach(T=>T()))}}this.get=c,this.invoke=p,this.instantiate=l,this.createChild=d,this.init=v(e)}function dS(e,t){return e!=="value"&&Pl(t)&&(t=Ls(t.slice())),t}var hS=1e3;function Di(e,t){var n=this;t=t||hS,e.on(["render.shape","render.connection"],t,function(i,r){var o=i.type,a=r.element,s=r.gfx,c=r.attrs;if(n.canRender(a))return o==="render.shape"?n.drawShape(s,a,c):n.drawConnection(s,a,c)}),e.on(["render.getShapePath","render.getConnectionPath"],t,function(i,r){if(n.canRender(r))return i.type==="render.getShapePath"?n.getShapePath(r):n.getConnectionPath(r)})}Di.prototype.canRender=function(e){},Di.prototype.drawShape=function(e,t){},Di.prototype.drawConnection=function(e,t){},Di.prototype.getShapePath=function(e){},Di.prototype.getConnectionPath=function(e){};function Ir(e){return e.flat().join(",").replace(/,?([A-Za-z]),?/g,"$1")}function mS(e){return["M",e.x,e.y]}function Tl(e){return["L",e.x,e.y]}function gS(e,t,n){return["C",e.x,e.y,t.x,t.y,n.x,n.y]}function yS(e,t){const n=e.length,i=[mS(e[0])];for(let r=1;r<n;r++){const o=e[r-1],a=e[r],s=e[r+1];if(!s||!t){i.push(Tl(a));continue}const c=Math.min(t,Ml(a.x-o.x,a.y-o.y),Ml(s.x-a.x,s.y-a.y));if(!c){i.push(Tl(a));continue}const u=Is(a,o,c),l=Is(a,o,c*.5),p=Is(a,s,c),f=Is(a,s,c*.5);i.push(Tl(u)),i.push(gS(l,f,p))}return i}function Is(e,t,n){const i=t.x-e.x,r=t.y-e.y,o=Ml(i,r),a=n/o;return{x:e.x+i*a,y:e.y+r*a}}function Ml(e,t){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2))}function oa(e,t,n){Be(t)&&(n=t,t=null),t||(t={});const i=Ae("path",t);return Be(n)&&(i.dataset.cornerRadius=String(n)),kl(i,e)}function kl(e,t){const n=parseInt(e.dataset.cornerRadius,10)||0;return ve(e,{d:Ir(yS(t,n))}),e}function Bs(e){var t=new Set(e);return Ye(e,function(n){for(var i=n.parent;i;){if(t.has(i))return!1;i=i.parent}return!0})}function Br(e,t,n){n=n||0,De(e)||(e=[e]),F(e,function(i,r){var o=t(i,r,n);De(o)&&o.length&&Br(o,t,n+1)})}function Ol(e,t,n){var i=new Set,r=new Set;return Br(e,function(o,a,s){i.add(o);var c=o.children;if(c&&!r.has(c))return r.add(c),c}),Array.from(i)}function aa(e,t){return Ol(e)}function vS(e,t,n){Tr(t)&&(t=!0),Xt(t)&&(n=t,t=!0),n=n||{};var i=sa(n.allShapes),r=sa(n.allConnections),o=sa(n.enclosedElements),a=sa(n.enclosedConnections),s=sa(n.topLevel,t&&ro(e,function(l){return l.id}));function c(l){s[l.source.id]&&s[l.target.id]&&(s[l.id]=[l]),i[l.source.id]&&i[l.target.id]&&(a[l.id]=o[l.id]=l),r[l.id]=l}function u(l){if(o[l.id]=l,l.waypoints)a[l.id]=r[l.id]=l;else return i[l.id]=l,F(l.incoming,c),F(l.outgoing,c),l.children}return Br(e,u),{allShapes:i,allConnections:r,topLevel:s,enclosedConnections:a,enclosedElements:o}}function Bt(e,t){t=!!t,De(e)||(e=[e]);var n,i,r,o;return F(e,function(a){var s=a;a.waypoints&&!t&&(s=Bt(a.waypoints,!0));var c=s.x,u=s.y,l=s.height||0,p=s.width||0;(c<n||n===void 0)&&(n=c),(u<i||i===void 0)&&(i=u),(c+p>r||r===void 0)&&(r=c+p),(u+l>o||o===void 0)&&(o=u+l)}),{x:n,y:i,height:o-i,width:r-n}}function go(e,t){var n={};return F(e,function(i){var r=i;r.waypoints&&(r=Bt(r)),!Be(t.y)&&r.x>t.x&&(n[i.id]=i),!Be(t.x)&&r.y>t.y&&(n[i.id]=i),r.x>t.x&&r.y>t.y&&(Be(t.width)&&Be(t.height)&&r.width+r.x<t.width+t.x&&r.height+r.y<t.height+t.y||!Be(t.width)||!Be(t.height))&&(n[i.id]=i)}),n}function sm(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function cm(e){return!!(e&&e.isFrame)}function sa(e,t){return V({},e||{},t||{})}var bS=1;function tr(e,t){Di.call(this,e,bS),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})}ye(tr,Di),tr.prototype.canRender=function(){return!0},tr.prototype.drawShape=function(t,n,i){var r=Ae("rect");return ve(r,{x:0,y:0,width:n.width||0,height:n.height||0}),cm(n)?ve(r,V({},this.FRAME_STYLE,i||{})):ve(r,V({},this.SHAPE_STYLE,i||{})),$e(t,r),r},tr.prototype.drawConnection=function(t,n,i){var r=oa(n.waypoints,V({},this.CONNECTION_STYLE,i||{}));return $e(t,r),r},tr.prototype.getShapePath=function(t){var n=t.x,i=t.y,r=t.width,o=t.height,a=[["M",n,i],["l",r,0],["l",0,o],["l",-r,0],["z"]];return Ir(a)},tr.prototype.getConnectionPath=function(t){var n=t.waypoints,i,r,o=[];for(i=0;r=n[i];i++)r=r.original||r,o.push([i===0?"M":"L",r.x,r.y]);return Ir(o)},tr.$inject=["eventBus","styles"];function xS(){var e={"no-fill":{fill:"none"},"no-border":{strokeOpacity:0},"no-events":{pointerEvents:"none"}},t=this;this.cls=function(n,i,r){var o=this.style(i,r);return V(o,{class:n})},this.style=function(n,i){!De(n)&&!i&&(i=n,n=[]);var r=Tn(n,function(o,a){return V(o,e[a]||{})},{});return i?V(r,i):r},this.computeStyle=function(n,i,r){return De(i)||(r=i,i=[]),t.style(i||[],V({},r,n||{}))}}const _S={__init__:["defaultRenderer"],defaultRenderer:["type",tr],styles:["type",xS]};function kt(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return n!==-1&&e.splice(n,1),n}function Ot(e,t,n){if(!(!e||!t)){typeof n!="number"&&(n=-1);var i=e.indexOf(t);if(i!==-1){if(i===n)return;if(n!==-1)e.splice(i,1);else return}n!==-1?e.splice(n,0,t):e.push(t)}}function Dl(e,t){return!e||!t?-1:e.indexOf(t)}function ca(e,t){return!e||!t?-1:Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Ll(e,t,n,i){if(typeof i>"u"&&(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=ca(e,t);return Math.abs(r/o)<=i}var wS=2;function Li(e,t){var n=Array.from(arguments).flat();const i={x:"v",y:"h"};for(const[r,o]of Object.entries(i))if(ES(r,n))return o;return!1}function ES(e,t){const n=t[0];return Mr(t,function(i){return Math.abs(n[e]-i[e])<=wS})}function um(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 Il(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}var SS=/,?([a-z]),?/gi,lm=parseFloat,Nt=Math,nr=Nt.PI,vi=Nt.min,bi=Nt.max,pm=Nt.pow,ir=Nt.abs,RS=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/ig,CS=/(-?\d*\.?\d*(?:e[-+]?\d+)?)[\s]*,?[\s]*/ig,fm=Array.isArray||function(e){return e instanceof Array};function PS(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function AS(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 TS(e){function t(){var n=Array.prototype.slice.call(arguments,0),i=n.join("␀"),r=t.cache=t.cache||{},o=t.count=t.count||[];return PS(r,i)?(AS(o,i),r[i]):(o.length>=1e3&&delete r[o.shift()],o.push(i),r[i]=e(...arguments),r[i])}return t}function MS(e){if(!e)return null;var t={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},n=[];return String(e).replace(RS,function(i,r,o){var a=[],s=r.toLowerCase();for(o.replace(CS,function(c,u){u&&a.push(+u)}),s=="m"&&a.length>2&&(n.push([r,...a.splice(0,2)]),s="l",r=r=="m"?"l":"L");a.length>=t[s]&&(n.push([r,...a.splice(0,t[s])]),!!t[s]););}),n.toString=Nl,n}function kS(e){for(var t=0,n=e.length;t<n;t++){var i=e[t][0];if(typeof i=="string"&&i!==i.toUpperCase())return!1}return!0}function OS(e){for(var t=0,n=e.length;t<n;t++){var i=e[t][0];if(i!=="M"&&i!=="C")return!1}return!0}function Bl(e,t,n,i){return arguments.length===1&&(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 Nl(){return this.join(",").replace(SS,"$1")}function DS(e){for(var t=new Array(e.length),n=0,i=e.length;n<i;n++)for(var r=e[n],o=t[n]=new Array(r.length),a=0,s=r.length;a<s;a++)o[a]=r[a];return t.toString=Nl,t}function dm(e,t,n,i,r,o,a,s,c){var u=1-c,l=pm(u,3),p=pm(u,2),f=c*c,d=f*c,m=l*e+p*3*c*n+u*3*c*c*r+d*a,h=l*t+p*3*c*i+u*3*c*c*o+d*s;return{x:Ns(m),y:Ns(h)}}function hm(e){var t=FS(...e);return Bl(t.x0,t.y0,t.x1-t.x0,t.y1-t.y0)}function rr(e,t,n){return t>=e.x&&t<=e.x+e.width&&n>=e.y&&n<=e.y+e.height}function LS(e,t){return e=Bl(e),t=Bl(t),rr(t,e.x,e.y)||rr(t,e.x2,e.y)||rr(t,e.x,e.y2)||rr(t,e.x2,e.y2)||rr(e,t.x,t.y)||rr(e,t.x2,t.y)||rr(e,t.x,t.y2)||rr(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)}function mm(e,t,n,i,r){var o=-3*t+9*n-9*i+3*r,a=e*o+6*t-12*n+6*i;return e*a-3*t+3*n}function gm(e,t,n,i,r,o,a,s,c){c==null&&(c=1),c=c>1?1:c<0?0:c;for(var u=c/2,l=12,p=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],f=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],d=0,m=0;m<l;m++){var h=u*p[m]+u,y=mm(h,e,n,r,a),g=mm(h,t,i,o,s),v=y*y+g*g;d+=f[m]*Nt.sqrt(v)}return u*d}function IS(e,t,n,i,r,o,a,s){if(!(bi(e,n)<vi(r,a)||vi(e,n)>bi(r,a)||bi(t,i)<vi(o,s)||vi(t,i)>bi(o,s))){var c=(e*i-t*n)*(r-a)-(e-n)*(r*s-o*a),u=(e*i-t*n)*(o-s)-(t-i)*(r*s-o*a),l=(e-n)*(o-s)-(t-i)*(r-a);if(l){var p=Ns(c/l),f=Ns(u/l),d=+p.toFixed(2),m=+f.toFixed(2);if(!(d<+vi(e,n).toFixed(2)||d>+bi(e,n).toFixed(2)||d<+vi(r,a).toFixed(2)||d>+bi(r,a).toFixed(2)||m<+vi(t,i).toFixed(2)||m>+bi(t,i).toFixed(2)||m<+vi(o,s).toFixed(2)||m>+bi(o,s).toFixed(2)))return{x:p,y:f}}}}function Ns(e){return Math.round(e*1e11)/1e11}function BS(e,t,n){var i=hm(e),r=hm(t);if(!LS(i,r))return[];var o=gm(...e),a=gm(...t),s=vm(e)?1:~~(o/5)||1,c=vm(t)?1:~~(a/5)||1,u=new Array(s+1),l=new Array(c+1),p={},f=[],d,m;for(d=0;d<s+1;d++){var h=dm(...e,d/s);u[d]={x:h.x,y:h.y,t:d/s}}for(d=0;d<c+1;d++)h=dm(...t,d/c),l[d]={x:h.x,y:h.y,t:d/c};for(d=0;d<s;d++)for(m=0;m<c;m++){var y=u[d],g=u[d+1],v=l[m],b=l[m+1],x=ir(g.x-y.x)<.01?"y":"x",C=ir(b.x-v.x)<.01?"y":"x",T=IS(y.x,y.y,g.x,g.y,v.x,v.y,b.x,b.y),k;if(T){if(k=T.x.toFixed(9)+"#"+T.y.toFixed(9),p[k])continue;p[k]=!0;var A=y.t+ir((T[x]-y[x])/(g[x]-y[x]))*(g.t-y.t),I=v.t+ir((T[C]-v[C])/(b[C]-v[C]))*(b.t-v.t);A>=0&&A<=1&&I>=0&&I<=1&&f.push({x:T.x,y:T.y,t1:A,t2:I})}}return f}function ym(e,t,n){e=_m(e),t=_m(t);for(var i,r,o,a,s,c,u,l,p,f,d=n?0:[],m=0,h=e.length;m<h;m++){var y=e[m];if(y[0]=="M")i=s=y[1],r=c=y[2];else{y[0]=="C"?(p=[i,r,...y.slice(1)],i=p[6],r=p[7]):(p=[i,r,i,r,s,c,s,c],i=s,r=c);for(var g=0,v=t.length;g<v;g++){var b=t[g];if(b[0]=="M")o=u=b[1],a=l=b[2];else{b[0]=="C"?(f=[o,a,...b.slice(1)],o=f[6],a=f[7]):(f=[o,a,o,a,u,l,u,l],o=u,a=l);var x=BS(p,f);{for(var C=0,T=x.length;C<T;C++)x[C].segment1=m,x[C].segment2=g,x[C].bez1=p,x[C].bez2=f;d=d.concat(x)}}}}}return d}function NS(e){return fm(e)&&fm(e[0])}function $S(e){if(kS(e))return e;var t=new Array(e.length),n=0,i=0,r=0,o=0,a=0,s;e[0][0]=="M"&&(n=+e[0][1],i=+e[0][2],r=n,o=i,a++,t[0]=["M",n,i]);for(var c,u,l=a,p=e.length;l<p;l++){if(u=e[l],s=u[0],t[l]=c=new Array(u.length),s!=s.toUpperCase())switch(c[0]=s.toUpperCase(),c[0]){case"A":c[1]=u[1],c[2]=u[2],c[3]=u[3],c[4]=u[4],c[5]=u[5],c[6]=+u[6]+n,c[7]=+u[7]+i;break;case"V":c[1]=+u[1]+i;break;case"H":c[1]=+u[1]+n;break;case"M":r=+u[1]+n,o=+u[2]+i;default:for(var f=1,d=u.length;f<d;f++)c[f]=+u[f]+(f%2?n:i)}else for(var m=0,h=u.length;m<h;m++)c[m]=u[m];switch(s=s.toUpperCase(),c[0]){case"Z":n=+r,i=+o;break;case"H":n=c[1];break;case"V":i=c[1];break;case"M":r=c[c.length-2],o=c[c.length-1];default:n=c[c.length-2],i=c[c.length-1]}}return t.toString=Nl,t}function vm(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function $s(e,t,n,i){return[e,t,n,i,n,i]}function bm(e,t,n,i,r,o){var a=.3333333333333333,s=2/3;return[a*e+s*n,a*t+s*i,a*r+s*n,a*o+s*i,r,o]}function xm(e,t,n,i,r,o,a,s,c,u){var l=nr*120/180,p=nr/180*(+r||0),f=[],d,m=TS(function(M,E,w){var G=M*Nt.cos(w)-E*Nt.sin(w),U=M*Nt.sin(w)+E*Nt.cos(w);return{x:G,y:U}});if(u)k=u[0],A=u[1],C=u[2],T=u[3];else{d=m(e,t,-p),e=d.x,t=d.y,d=m(s,c,-p),s=d.x,c=d.y;var h=(e-s)/2,y=(t-c)/2,g=h*h/(n*n)+y*y/(i*i);g>1&&(g=Nt.sqrt(g),n=g*n,i=g*i);var v=n*n,b=i*i,x=(o==a?-1:1)*Nt.sqrt(ir((v*b-v*y*y-b*h*h)/(v*y*y+b*h*h))),C=x*n*y/i+(e+s)/2,T=x*-i*h/n+(t+c)/2,k=Nt.asin(((t-T)/i).toFixed(9)),A=Nt.asin(((c-T)/i).toFixed(9));k=e<C?nr-k:k,A=s<C?nr-A:A,k<0&&(k=nr*2+k),A<0&&(A=nr*2+A),a&&k>A&&(k=k-nr*2),!a&&A>k&&(A=A-nr*2)}var I=A-k;if(ir(I)>l){var D=A,L=s,z=c;A=k+l*(a&&A>k?1:-1),s=C+n*Nt.cos(A),c=T+i*Nt.sin(A),f=xm(s,c,n,i,r,0,a,L,z,[A,D,C,T])}I=A-k;var re=Nt.cos(k),de=Nt.sin(k),Ue=Nt.cos(A),je=Nt.sin(A),q=Nt.tan(I/4),le=4/3*n*q,ae=4/3*i*q,he=[e,t],Pe=[e+le*de,t-ae*re],W=[s+le*je,c-ae*Ue],Y=[s,c];if(Pe[0]=2*he[0]-Pe[0],Pe[1]=2*he[1]-Pe[1],u)return[Pe,W,Y].concat(f);f=[Pe,W,Y].concat(f).join().split(",");for(var ee=[],Re=0,mt=f.length;Re<mt;Re++)ee[Re]=Re%2?m(f[Re-1],f[Re],p).y:m(f[Re],f[Re+1],p).x;return ee}function FS(e,t,n,i,r,o,a,s){for(var c=[],u=[[],[]],l,p,f,d,m,h,y,g,v=0;v<2;++v){if(v==0?(p=6*e-12*n+6*r,l=-3*e+9*n-9*r+3*a,f=3*n-3*e):(p=6*t-12*i+6*o,l=-3*t+9*i-9*o+3*s,f=3*i-3*t),ir(l)<1e-12){if(ir(p)<1e-12)continue;d=-f/p,0<d&&d<1&&c.push(d);continue}y=p*p-4*f*l,g=Nt.sqrt(y),!(y<0)&&(m=(-p+g)/(2*l),0<m&&m<1&&c.push(m),h=(-p-g)/(2*l),0<h&&h<1&&c.push(h))}for(var b=c.length,x=b,C;b--;)d=c[b],C=1-d,u[0][b]=C*C*C*e+3*C*C*d*n+3*C*d*d*r+d*d*d*a,u[1][b]=C*C*C*t+3*C*C*d*i+3*C*d*d*o+d*d*d*s;return u[0][x]=e,u[1][x]=t,u[0][x+1]=a,u[1][x+1]=s,u[0].length=u[1].length=x+2,{x0:vi(...u[0]),y0:vi(...u[1]),x1:bi(...u[0]),y1:bi(...u[1])}}function _m(e){if(NS(e)||(e=MS(e)),OS(e))return e;for(var t=DS($S(e)),n={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},i=function(f,d,m){var h,y;if(!f)return["C",d.x,d.y,d.x,d.y,d.x,d.y];switch(!(f[0]in{T:1,Q:1})&&(d.qx=d.qy=null),f[0]){case"M":d.X=f[1],d.Y=f[2];break;case"A":f=["C",...xm(d.x,d.y,...f.slice(1))];break;case"S":m=="C"||m=="S"?(h=d.x*2-d.bx,y=d.y*2-d.by):(h=d.x,y=d.y),f=["C",h,y,...f.slice(1)];break;case"T":m=="Q"||m=="T"?(d.qx=d.x*2-d.qx,d.qy=d.y*2-d.qy):(d.qx=d.x,d.qy=d.y),f=["C",...bm(d.x,d.y,d.qx,d.qy,f[1],f[2])];break;case"Q":d.qx=f[1],d.qy=f[2],f=["C",...bm(d.x,d.y,f[1],f[2],f[3],f[4])];break;case"L":f=["C",...$s(d.x,d.y,f[1],f[2])];break;case"H":f=["C",...$s(d.x,d.y,f[1],d.y)];break;case"V":f=["C",...$s(d.x,d.y,d.x,f[1])];break;case"Z":f=["C",...$s(d.x,d.y,d.X,d.Y)];break}return f},r=function(f,d){if(f[d].length>7){f[d].shift();for(var m=f[d];m.length;)o[d]="A",f.splice(d++,0,["C",...m.splice(0,6)]);f.splice(d,1),u=t.length}},o=[],a="",s="",c=0,u=t.length;c<u;c++){t[c]&&(a=t[c][0]),a!="C"&&(o[c]=a,c&&(s=o[c-1])),t[c]=i(t[c],n,s),o[c]!="A"&&a=="C"&&(o[c]="C"),r(t,c);var l=t[c],p=l.length;n.x=l[p-2],n.y=l[p-1],n.bx=lm(l[p-4])||n.x,n.by=lm(l[p-3])||n.y}return t}function pt(e){return Xt(e)&&An(e,"waypoints")}function Ge(e){return Xt(e)&&An(e,"labelTarget")}function jS(e){return Xt(e)&&no(e.parent)}function wm(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function Ii(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function ke(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function Fs(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function HS(e){return Ii({x:e.x+(e.width||0)/2,y:e.y+(e.height||0)/2})}function zS(e){for(var t=e.waypoints,n=t.reduce(function(u,l,p){var f=t[p-1];if(f){var d=u[u.length-1],m=d&&d.endLength||0,h=WS(f,l);u.push({start:f,end:l,startLength:m,endLength:m+h,length:h})}return u},[]),i=n.reduce(function(u,l){return u+l.length},0),r=i/2,o=0,a=n[o];a.endLength<r;)a=n[++o];var s=(r-a.startLength)/a.length,c={x:a.start.x+(a.end.x-a.start.x)*s,y:a.start.y+(a.end.y-a.start.y)*s};return c}function Le(e){return pt(e)?zS(e):HS(e)}function an(e,t,n){n=n||0,Xt(n)||(n={x:n,y:n});var i=ke(e),r=ke(t),o=i.bottom+n.y<=r.top,a=i.left-n.x>=r.right,s=i.top-n.y>=r.bottom,c=i.right+n.x<=r.left,u=o?"top":s?"bottom":null,l=c?"left":a?"right":null;return l&&u?u+"-"+l:l||u||"intersect"}function ua(e,t,n){var i=GS(e,t);return i.length===1||i.length===2&&ca(i[0],i[1])<1?Ii(i[0]):i.length>1?(i=fi(i,function(r){var o=Math.floor(r.t2*100)||1;return o=100-o,o=(o<10?"0":"")+o,r.segment2+"#"+o}),Ii(i[n?0:i.length-1])):null}function GS(e,t){return ym(e,t)}function VS(e){e=e.slice();for(var t=0,n,i,r;e[t];)n=e[t],i=e[t-1],r=e[t+1],ca(n,r)===0||Ll(i,r,n)?e.splice(t,1):t++;return e}function WS(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function js(e,t){return Math.round(e*t)/t}function Em(e){return Be(e)?e+"px":e}function US(e){for(;e.parent;)e=e.parent;return e}function YS(e){e=V({},{width:"100%",height:"100%"},e);const t=e.container||document.body,n=document.createElement("div");return n.setAttribute("class","djs-container djs-parent"),_n(n,{position:"relative",overflow:"hidden",width:Em(e.width),height:Em(e.height)}),t.appendChild(n),n}function Sm(e,t,n){const i=Ae("g");Qe(i).add(t);const r=n!==void 0?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}const qS="base",Rm=0,KS=1,XS={shape:["x","y","width","height"],connection:["waypoints"]};function Ie(e,t,n,i){this._eventBus=t,this._elementRegistry=i,this._graphicsFactory=n,this._rootsIdx=0,this._layers={},this._planes=[],this._rootElement=null,this._focused=!1,this._init(e||{})}Ie.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],Ie.prototype._init=function(e){const t=this._eventBus,n=this._container=YS(e),i=this._svg=Ae("svg");ve(i,{width:"100%",height:"100%"}),hn(i,"tabindex",0),e.autoFocus&&t.on("element.hover",()=>{this.restoreFocus()}),t.on("element.mousedown",500,o=>{this.focus()}),i.addEventListener("focusin",()=>{this._setFocused(!0)}),i.addEventListener("focusout",()=>{this._setFocused(!1)}),i.addEventListener("mouseover",()=>{this._eventBus.fire("canvas.mouseover")}),i.addEventListener("mouseout",()=>{this._eventBus.fire("canvas.mouseout")}),$e(n,i);const r=this._viewport=Sm(i,"viewport");e.deferUpdate&&(this._viewboxChanged=Wu(this._viewboxChanged,300)),this._restoreFocus=Wu(this._restoreFocus,0),t.on("diagram.init",()=>{t.fire("canvas.init",{svg:i,viewport:r})}),t.on(["shape.added","connection.added","shape.removed","connection.removed","elements.changed","root.set"],()=>{delete this._cachedViewbox}),t.on("diagram.destroy",500,this._destroy,this),t.on("diagram.clear",500,this._clear,this)},Ie.prototype._destroy=function(){this._restoreFocus.cancel(),this._eventBus.fire("canvas.destroy",{svg:this._svg,viewport:this._viewport});const e=this._container.parentNode;e&&e.removeChild(this._container),delete this._svg,delete this._container,delete this._layers,delete this._planes,delete this._rootElement,delete this._viewport},Ie.prototype._setFocused=function(e){e!=this._focused&&(this._focused=e,this._eventBus.fire("canvas.focus.changed",{focused:e}))},Ie.prototype._clear=function(){this._elementRegistry.getAll().forEach(t=>{const n=sm(t);n==="root"?this.removeRootElement(t):this._removeElement(t,n)}),this._planes=[],this._rootElement=null,delete this._cachedViewbox},Ie.prototype.focus=function(){this._svg.focus({preventScroll:!0}),this._setFocused(!0)},Ie.prototype.restoreFocus=function(){this._restoreFocus()},Ie.prototype._restoreFocus=function(){document.activeElement===document.body&&this.focus()},Ie.prototype.isFocused=function(){return this._focused},Ie.prototype.getDefaultLayer=function(){return this.getLayer(qS,Rm)},Ie.prototype.getLayer=function(e,t){if(!e)throw new Error("must specify a name");let n=this._layers[e];if(n||(n=this._layers[e]=this._createLayer(e,t)),typeof t<"u"&&n.index!==t)throw new Error("layer <"+e+"> already created at index <"+t+">");return n.group},Ie.prototype._getChildIndex=function(e){return Tn(this._layers,function(t,n){return n.visible&&e>=n.index&&t++,t},0)},Ie.prototype._createLayer=function(e,t){typeof t>"u"&&(t=KS);const n=this._getChildIndex(t);return{group:Sm(this._viewport,"layer-"+e,n),index:t,visible:!0}},Ie.prototype.showLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=this._viewport,i=t.group,r=t.index;if(t.visible)return i;const o=this._getChildIndex(r);return n.insertBefore(i,n.childNodes[o]||null),t.visible=!0,i},Ie.prototype.hideLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=t.group;return t.visible&&(Ut(n),t.visible=!1),n},Ie.prototype._removeLayer=function(e){const t=this._layers[e];t&&(delete this._layers[e],Ut(t.group))},Ie.prototype.getActiveLayer=function(){const e=this._findPlaneForRoot(this.getRootElement());return e?e.layer:null},Ie.prototype.findRoot=function(e){const t=this._resolveElements(e);let n;for(const i of t){const r=this._findPlaneForRoot(US(i));if(!r||n&&r.rootElement!==n)return;n=r.rootElement}return n},Ie.prototype.getRootElements=function(){return this._planes.map(function(e){return e.rootElement})},Ie.prototype._findPlaneForRoot=function(e){return ht(this._planes,function(t){return t.rootElement===e})},Ie.prototype._resolveElement=function(e){return typeof e=="string"?this._elementRegistry.get(e):e},Ie.prototype._resolveElements=function(e){return De(e)||(e=[e]),e.map(t=>this._resolveElement(t)).filter(Boolean)},Ie.prototype.getContainer=function(){return this._container},Ie.prototype._updateMarker=function(e,t,n){let i;e=this._resolveElement(e),e.markers=e.markers||new Set,i=this._elementRegistry._elements[e.id],i&&(F([i.gfx,i.secondaryGfx],function(r){r&&(n?(e.markers.add(t),Qe(r).add(t)):(e.markers.delete(t),Qe(r).remove(t)))}),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},Ie.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},Ie.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},Ie.prototype.hasMarker=function(e,t){return e=this._resolveElement(e),e.markers?e.markers.has(t):!1},Ie.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},Ie.prototype.getRootElement=function(){const e=this._rootElement;return e||this._planes.length?e:this.setRootElement(this.addRootElement(null))},Ie.prototype.addRootElement=function(e){const t=this._rootsIdx++;e||(e={id:"__implicitroot_"+t,children:[],isImplicit:!0});const n=e.layer="root-"+t;this._ensureValid("root",e);const i=this.getLayer(n,Rm);return this.hideLayer(n),this._addRoot(e,i),this._planes.push({rootElement:e,layer:i}),e},Ie.prototype.removeRootElement=function(e){if(e=this._resolveElement(e),!!this._findPlaneForRoot(e))return this._removeRoot(e),this._removeLayer(e.layer),this._planes=this._planes.filter(function(n){return n.rootElement!==e}),this._rootElement===e&&(this._rootElement=null),e},Ie.prototype.setRootElement=function(e){if(e===this._rootElement)return e;let t;if(!e)throw new Error("rootElement required");return t=this._findPlaneForRoot(e),t||(e=this.addRootElement(e)),this._setRoot(e),e},Ie.prototype._removeRoot=function(e){const t=this._elementRegistry,n=this._eventBus;n.fire("root.remove",{element:e}),n.fire("root.removed",{element:e}),t.remove(e)},Ie.prototype._addRoot=function(e,t){const n=this._elementRegistry,i=this._eventBus;i.fire("root.add",{element:e}),n.add(e,t),i.fire("root.added",{element:e,gfx:t})},Ie.prototype._setRoot=function(e,t){const n=this._rootElement;n&&(this._elementRegistry.updateGraphics(n,null,!0),this.hideLayer(n.layer)),e&&(t||(t=this._findPlaneForRoot(e).layer),this._elementRegistry.updateGraphics(e,this._svg,!0),this.showLayer(e.layer)),this._rootElement=e,this._eventBus.fire("root.set",{element:e})},Ie.prototype._ensureValid=function(e,t){if(!t.id)throw new Error("element must have an id");if(this._elementRegistry.get(t.id))throw new Error("element <"+t.id+"> already exists");const n=XS[e];if(!Mr(n,function(r){return typeof t[r]<"u"}))throw new Error("must supply { "+n.join(", ")+" } with "+e)},Ie.prototype._setParent=function(e,t,n){Ot(t.children,e,n),e.parent=t},Ie.prototype._addElement=function(e,t,n,i){n=n||this.getRootElement();const r=this._eventBus,o=this._graphicsFactory;this._ensureValid(e,t),r.fire(e+".add",{element:t,parent:n}),this._setParent(t,n,i);const a=o.create(e,t,i);return this._elementRegistry.add(t,a),o.update(e,t,a),r.fire(e+".added",{element:t,gfx:a}),t},Ie.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},Ie.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},Ie.prototype._removeElement=function(e,t){const n=this._elementRegistry,i=this._graphicsFactory,r=this._eventBus;if(e=n.get(e.id||e),!!e)return r.fire(t+".remove",{element:e}),i.remove(e),kt(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},Ie.prototype.removeShape=function(e){return this._removeElement(e,"shape")},Ie.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},Ie.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},Ie.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},Ie.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},Ie.prototype.viewbox=function(e){if(e===void 0&&this._cachedViewbox)return structuredClone(this._cachedViewbox);const t=this._viewport,n=this.getSize();let i,r,o,a,s,c,u;if(e)this._changeViewbox(function(){s=Math.min(n.width/e.width,n.height/e.height);const l=this._svg.createSVGMatrix().scale(s).translate(-e.x,-e.y);ra(t,l)});else return o=this._rootElement?this.getActiveLayer():null,i=o&&o.getBBox()||{},a=ra(t),r=a?a.matrix:tS(),s=js(r.a,1e3),c=js(-r.e||0,1e3),u=js(-r.f||0,1e3),e=this._cachedViewbox={x:c?c/s:0,y:u?u/s:0,width:n.width/s,height:n.height/s,scale:s,inner:{width:i.width||0,height:i.height||0,x:i.x||0,y:i.y||0},outer:n},e;return e},Ie.prototype.scroll=function(e){const t=this._viewport;let n=t.getCTM();return e&&this._changeViewbox(function(){e=V({dx:0,dy:0},e||{}),n=this._svg.createSVGMatrix().translate(e.dx,e.dy).multiply(n),Cm(t,n)}),{x:n.e,y:n.f}},Ie.prototype.scrollToElement=function(e,t){let n=100;const i=this._resolveElements(e);if(!i.length)return;const r=this.findRoot(i);if(!r)return;r!==this.getRootElement()&&this.setRootElement(r);const o=i.filter(m=>m!=r);if(!o.length)return;t||(t={}),typeof t=="number"&&(n=t),t={top:t.top||n,right:t.right||n,bottom:t.bottom||n,left:t.left||n};const a=Bt(o),s=ke(a),c=this.viewbox(),u=this.zoom();let l,p;c.y+=t.top/u,c.x+=t.left/u,c.width-=(t.right+t.left)/u,c.height-=(t.bottom+t.top)/u;const f=ke(c);if(!(a.width<c.width&&a.height<c.height))l=a.x-c.x,p=a.y-c.y;else{const m=Math.max(0,s.right-f.right),h=Math.min(0,s.left-f.left),y=Math.max(0,s.bottom-f.bottom),g=Math.min(0,s.top-f.top);l=m||h,p=y||g}this.scroll({dx:-l*u,dy:-p*u})},Ie.prototype.zoom=function(e,t){if(!e)return this.viewbox(e).scale;if(e==="fit-viewport")return this._fitViewport(t);let n,i;return this._changeViewbox(function(){typeof t!="object"&&(n=this.viewbox().outer,t={x:n.width/2,y:n.height/2}),i=this._setZoom(e,t)}),js(i.a,1e3)};function Cm(e,t){const n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}Ie.prototype._fitViewport=function(e){const t=this.viewbox(),n=t.outer,i=t.inner;let r,o;return i.x>=0&&i.y>=0&&i.x+i.width<=n.width&&i.y+i.height<=n.height&&!e?o={x:0,y:0,width:Math.max(i.width+i.x,n.width),height:Math.max(i.height+i.y,n.height)}:(r=Math.min(1,n.width/i.width,n.height/i.height),o={x:i.x+(e?i.width/2-n.width/r/2:0),y:i.y+(e?i.height/2-n.height/r/2:0),width:n.width/r,height:n.height/r}),this.viewbox(o),this.viewbox(!1).scale},Ie.prototype._setZoom=function(e,t){const n=this._svg,i=this._viewport,r=n.createSVGMatrix(),o=n.createSVGPoint();let a,s,c,u,l;c=i.getCTM();const p=c.a;return t?(a=V(o,t),s=a.matrixTransform(c.inverse()),u=r.translate(s.x,s.y).scale(1/p*e).translate(-s.x,-s.y),l=c.multiply(u)):l=r.scale(e),Cm(this._viewport,l),l},Ie.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},Ie.prototype.getAbsoluteBBox=function(e){const t=this.viewbox();let n;e.waypoints?n=this.getGraphics(e).getBBox():n=e;const i=n.x*t.scale-t.x*t.scale,r=n.y*t.scale-t.y*t.scale,o=n.width*t.scale,a=n.height*t.scale;return{x:i,y:r,width:o,height:a}},Ie.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var yo="data-element-id";function Wn(e){this._elements={},this._eventBus=e}Wn.$inject=["eventBus"],Wn.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),ve(t,yo,i),n&&ve(n,yo,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},Wn.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(ve(i.gfx,yo,""),i.secondaryGfx&&ve(i.secondaryGfx,yo,""),delete t[n])},Wn.prototype.updateId=function(e,t){this._validateId(t),typeof e=="string"&&(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)},Wn.prototype.updateGraphics=function(e,t,n){var i=e.id||e,r=this._elements[i];return n?r.secondaryGfx=t:r.gfx=t,t&&ve(t,yo,i),t},Wn.prototype.get=function(e){var t;typeof e=="string"?t=e:t=e&&ve(e,yo);var n=this._elements[t];return n&&n.element},Wn.prototype.filter=function(e){var t=[];return this.forEach(function(n,i){e(n,i)&&t.push(n)}),t},Wn.prototype.find=function(e){for(var t=this._elements,n=Object.keys(t),i=0;i<n.length;i++){var r=n[i],o=t[r],a=o.element,s=o.gfx;if(e(a,s))return a}},Wn.prototype.getAll=function(){return this.filter(function(e){return e})},Wn.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)})},Wn.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},Wn.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")};function ZS(e,t,n,i){var r=n.inverse;return Object.defineProperty(e,"remove",{value:function(o){var a=this.indexOf(o);return a!==-1&&(this.splice(a,1),t.unset(o,r,i)),o}}),Object.defineProperty(e,"contains",{value:function(o){return this.indexOf(o)!==-1}}),Object.defineProperty(e,"add",{value:function(o,a){var s=this.indexOf(o);if(typeof a>"u"){if(s!==-1)return;a=this.length}s!==-1&&this.splice(s,1),this.splice(a,0,o),s===-1&&t.set(o,r,i)}}),Object.defineProperty(e,"__refs_collection",{value:!0}),e}function QS(e){return e.__refs_collection===!0}function JS(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)}function Pm(e,t,n){var i=ZS(n[t.name]||[],e,t,n);Object.defineProperty(n,t.name,{enumerable:t.enumerable,value:i}),i.length&&i.forEach(function(r){e.set(r,t.inverse,n)})}function eR(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(o){if(o!==r){var a=r;r=null,a&&e.unset(a,i,n),r=o,e.set(r,i,n)}}})}function Xn(e,t){if(!(this instanceof Xn))return new Xn(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Xn.prototype.bind=function(e,t){if(typeof t=="string"){if(!this.props[t])throw new Error("no property <"+t+"> in ref");t=this.props[t]}t.collection?Pm(this,t,e):eR(this,t,e)},Xn.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return QS(n)||Pm(this,t,e),n},Xn.prototype.ensureBound=function(e,t){JS(e,t)||this.bind(e,t)},Xn.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},Xn.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var $l=new Xn({name:"children",enumerable:!0,collection:!0},{name:"parent"}),Am=new Xn({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),Tm=new Xn({name:"attachers",collection:!0},{name:"host"}),Mm=new Xn({name:"outgoing",collection:!0},{name:"source"}),km=new Xn({name:"incoming",collection:!0},{name:"target"});function vo(){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)}}),$l.bind(this,"parent"),Am.bind(this,"labels"),Mm.bind(this,"outgoing"),km.bind(this,"incoming")}function la(){vo.call(this),$l.bind(this,"children"),Tm.bind(this,"host"),Tm.bind(this,"attachers")}ye(la,vo);function Om(){vo.call(this),$l.bind(this,"children")}ye(Om,la);function Dm(){la.call(this),Am.bind(this,"labelTarget")}ye(Dm,la);function Lm(){vo.call(this),Mm.bind(this,"source"),km.bind(this,"target")}ye(Lm,vo);var tR={connection:Lm,shape:la,label:Dm,root:Om};function nR(e,t){var n=tR[e];if(!n)throw new Error("unknown type: <"+e+">");return V(new n,t)}function iR(e){return e instanceof vo}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=V({},t||{}),t.id||(t.id=e+"_"+this._uid++),nR(e,t)};var Hs="__fn",Im=1e3,rR=Array.prototype.slice;function On(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}On.prototype.on=function(e,t,n,i){if(e=De(e)?e:[e],Zt(t)&&(i=n,n=t,t=Im),!Be(t))throw new Error("priority must be a number");var r=n;i&&(r=Sn(n,i),r[Hs]=n[Hs]||n);var o=this;e.forEach(function(a){o._addListener(a,{priority:t,callback:r,next:null})})},On.prototype.once=function(e,t,n,i){var r=this;if(Zt(t)&&(i=n,n=t,t=Im),!Be(t))throw new Error("priority must be a number");function o(){o.__isTomb=!0;var a=n.apply(i,arguments);return r.off(e,o),a}o[Hs]=n,this.on(e,t,o)},On.prototype.off=function(e,t){e=De(e)?e:[e];var n=this;e.forEach(function(i){n._removeListener(i,t)})},On.prototype.createEvent=function(e){var t=new pa;return t.init(e),t},On.prototype.fire=function(e,t){var n,i,r,o;if(o=rR.call(arguments),typeof e=="object"&&(t=e,e=t.type),!e)throw new Error("no event type specified");if(i=this._listeners[e],!!i){t instanceof pa?n=t:n=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 r===void 0&&n.defaultPrevented&&(r=!1),r}},On.prototype.handleError=function(e){return this.fire("error",{error:e})===!1},On.prototype._destroy=function(){this._listeners={}},On.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},On.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return i;try{i=oR(n.callback,t),i!==void 0&&(e.returnValue=i,e.stopPropagation()),i===!1&&e.preventDefault()}catch(r){if(!this.handleError(r))throw console.error("unhandled error in event listener",r),r}return i},On.prototype._addListener=function(e,t){var n=this._getListeners(e),i;if(!n){this._setListeners(e,t);return}for(;n;){if(n.priority<t.priority){t.next=n,i?i.next=t:this._setListeners(e,t);return}i=n,n=n.next}i.next=t},On.prototype._getListeners=function(e){return this._listeners[e]},On.prototype._setListeners=function(e,t){this._listeners[e]=t},On.prototype._removeListener=function(e,t){var n=this._getListeners(e),i,r,o;if(!t){this._setListeners(e,null);return}for(;n;)i=n.next,o=n.callback,(o===t||o[Hs]===t)&&(r?r.next=i:this._setListeners(e,i)),r=n,n=i};function pa(){}pa.prototype.stopPropagation=function(){this.cancelBubble=!0},pa.prototype.preventDefault=function(){this.defaultPrevented=!0},pa.prototype.init=function(e){V(this,e||{})};function oR(e,t){return e.apply(null,t)}function Nr(e){return e.childNodes[0]}function aR(e){return e.parentNode.childNodes[1]}function zs(e,t,n,i,r){var o=ia();o.setTranslate(t,n);var a=ia();a.setRotate(i||0,0,0);var s=ia();s.setScale(1,1),ra(e,[o,a,s])}function sn(e,t,n){var i=ia();i.setTranslate(t,n),ra(e,i)}function Bm(e,t){var n=ia();n.setRotate(t,0,0),ra(e,n)}function Un(e,t){this._eventBus=e,this._elementRegistry=t}Un.$inject=["eventBus","elementRegistry"],Un.prototype._getChildrenContainer=function(e){var t=this._elementRegistry.getGraphics(e),n;return e.parent?(n=aR(t),n||(n=Ae("g"),Qe(n).add("djs-children"),$e(t.parentNode,n))):n=t,n},Un.prototype._clear=function(e){var t=Nr(e);return Ms(t),t},Un.prototype._createContainer=function(e,t,n,i){var r=Ae("g");Qe(r).add("djs-group"),typeof n<"u"?sR(r,t,t.childNodes[n]):$e(t,r);var o=Ae("g");Qe(o).add("djs-element"),Qe(o).add("djs-"+e),i&&Qe(o).add("djs-frame"),$e(r,o);var a=Ae("g");return Qe(a).add("djs-visual"),$e(o,a),o},Un.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,cm(t))},Un.prototype.updateContainments=function(e){var t=this,n=this._elementRegistry,i;i=Tn(e,function(r,o){return o.parent&&(r[o.parent.id]=o.parent),r},{}),F(i,function(r){var o=r.children;if(o){var a=t._getChildrenContainer(r),s=a.firstChild;F(o,function(c){var u=n.getGraphics(c).parentNode;u===s?s=s.nextSibling:a.insertBefore(u,s)})}})},Un.prototype.drawShape=function(e,t,n={}){var i=this._eventBus;return i.fire("render.shape",{gfx:e,element:t,attrs:n})},Un.prototype.getShapePath=function(e){var t=this._eventBus;return t.fire("render.getShapePath",e)},Un.prototype.drawConnection=function(e,t,n={}){var i=this._eventBus;return i.fire("render.connection",{gfx:e,element:t,attrs:n})},Un.prototype.getConnectionPath=function(e){var t=this._eventBus;return t.fire("render.getConnectionPath",e)},Un.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if(e==="shape")this.drawShape(i,t),sn(n,t.x,t.y);else if(e==="connection")this.drawConnection(i,t);else throw new Error("unknown type: "+e);t.hidden?ve(n,"display","none"):ve(n,"display","block")}},Un.prototype.remove=function(e){var t=this._elementRegistry.getGraphics(e);Ut(t.parentNode)};function sR(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}const cR={__depends__:[_S],__init__:["canvas"],canvas:["type",Ie],elementRegistry:["type",Wn],elementFactory:["type",Bi],eventBus:["type",On],graphicsFactory:["type",Un]};function uR(e){var t=new am(e);return t.init(),t}function lR(e){e=e||{};var t={config:["value",e]},n=[t,cR].concat(e.modules||[]);return uR(n)}function or(e,t){this._injector=t||lR(e),this.get("eventBus").fire("diagram.init")}or.prototype.get=function(e,t){return this._injector.get(e,t)},or.prototype.invoke=function(e,t,n){return this._injector.invoke(e,t,n)},or.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},or.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")};function mn(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}function Rn(e,t){return e.$instanceOf(t)}function pR(e){return ht(e.rootElements,function(t){return Rn(t,"bpmn:Process")||Rn(t,"bpmn:Collaboration")})}function fR(e){var t={},n=[],i={};function r(W,Y){return function(ee){W(ee,Y)}}function o(W){t[W.id]=W}function a(W){return t[W.id]}function s(W,Y){var ee=W.gfx;if(ee)throw new Error(`already rendered ${mn(W)}`);return e.element(W,i[W.id],Y)}function c(W,Y){return e.root(W,i[W.id],Y)}function u(W,Y){try{var ee=i[W.id]&&s(W,Y);return o(W),ee}catch(Re){l(Re.message,{element:W,error:Re}),console.error(`failed to import ${mn(W)}`,Re)}}function l(W,Y){e.error(W,Y)}var p=this.registerDi=function(Y){var ee=Y.bpmnElement;ee?i[ee.id]?l(`multiple DI elements defined for ${mn(ee)}`,{element:ee}):i[ee.id]=Y:l(`no bpmnElement referenced in ${mn(Y)}`,{element:Y})};function f(W){d(W.plane)}function d(W){p(W),F(W.planeElement,m)}function m(W){p(W)}this.handleDefinitions=function(Y,ee){var Re=Y.diagrams;if(ee&&Re.indexOf(ee)===-1)throw new Error("diagram not part of <bpmn:Definitions />");if(!ee&&Re&&Re.length&&(ee=Re[0]),!ee)throw new Error("no diagram to display");i={},f(ee);var mt=ee.plane;if(!mt)throw new Error(`no plane for ${mn(ee)}`);var M=mt.bpmnElement;if(!M)if(M=pR(Y),M)l(`correcting missing bpmnElement on ${mn(mt)} to ${mn(M)}`),mt.bpmnElement=M,p(mt);else throw new Error("no process or collaboration to display");var E=c(M,mt);if(Rn(M,"bpmn:Process")||Rn(M,"bpmn:SubProcess"))y(M,E);else if(Rn(M,"bpmn:Collaboration"))he(M,E),g(Y.rootElements,E);else throw new Error(`unsupported bpmnElement for ${mn(mt)}: ${mn(M)}`);h(n)};var h=this.handleDeferred=function(){for(var Y;n.length;)Y=n.shift(),Y()};function y(W,Y){q(W,Y),I(W.ioSpecification,Y),A(W.artifacts,Y),o(W)}function g(W,Y){var ee=Ye(W,function(Re){return!a(Re)&&Rn(Re,"bpmn:Process")&&Re.laneSets});ee.forEach(r(y,Y))}function v(W,Y){u(W,Y)}function b(W,Y){F(W,r(v,Y))}function x(W,Y){u(W,Y)}function C(W,Y){u(W,Y)}function T(W,Y){u(W,Y)}function k(W,Y){u(W,Y)}function A(W,Y){F(W,function(ee){Rn(ee,"bpmn:Association")?n.push(function(){k(ee,Y)}):k(ee,Y)})}function I(W,Y){W&&(F(W.dataInputs,r(C,Y)),F(W.dataOutputs,r(T,Y)))}var D=this.handleSubProcess=function(Y,ee){q(Y,ee),A(Y.artifacts,ee)};function L(W,Y){var ee=u(W,Y);Rn(W,"bpmn:SubProcess")&&D(W,ee||Y),Rn(W,"bpmn:Activity")&&I(W.ioSpecification,Y),n.push(function(){F(W.dataInputAssociations,r(x,Y)),F(W.dataOutputAssociations,r(x,Y))})}function z(W,Y){u(W,Y)}function re(W,Y){u(W,Y)}function de(W,Y){n.push(function(){var ee=u(W,Y);W.childLaneSet&&Ue(W.childLaneSet,ee||Y),Pe(W)})}function Ue(W,Y){F(W.lanes,r(de,Y))}function je(W,Y){F(W,r(Ue,Y))}function q(W,Y){le(W.flowElements,Y),W.laneSets&&je(W.laneSets,Y)}function le(W,Y){F(W,function(ee){Rn(ee,"bpmn:SequenceFlow")?n.push(function(){z(ee,Y)}):Rn(ee,"bpmn:BoundaryEvent")?n.unshift(function(){L(ee,Y)}):Rn(ee,"bpmn:FlowNode")?L(ee,Y):Rn(ee,"bpmn:DataObject")||(Rn(ee,"bpmn:DataStoreReference")||Rn(ee,"bpmn:DataObjectReference")?re(ee,Y):l(`unrecognized flowElement ${mn(ee)} in context ${mn(Y&&Y.businessObject)}`,{element:ee,context:Y}))})}function ae(W,Y){var ee=u(W,Y),Re=W.processRef;Re&&y(Re,ee||Y)}function he(W,Y){F(W.participants,r(ae,Y)),n.push(function(){b(W.messageFlows,Y)}),A(W.artifacts,Y)}function Pe(W){F(W.flowNodeRef,function(Y){var ee=Y.get("lanes");ee&&ee.push(W)})}}function S(e,t){var n=te(e);return n&&typeof n.$instanceOf=="function"&&n.$instanceOf(t)}function We(e,t){return Ki(t,function(n){return S(e,n)})}function te(e){return e&&e.businessObject||e}function Je(e){return e&&e.di}function dR(e,t,n){var i,r,o,a,s=[];function c(u,l){var p={root:function(h,y){return i.add(h,y)},element:function(h,y,g){return i.add(h,y,g)},error:function(h,y){s.push({message:h,context:y})}},f=new fR(p);l=l||u.diagrams&&u.diagrams[0];var d=hR(u,l);if(!d)throw new Error("no diagram to display");F(d,function(h){f.handleDefinitions(u,h)});var m=l.plane.bpmnElement.id;o.setRootElement(o.findRoot(m+"_plane")||o.findRoot(m))}return new Promise(function(u,l){try{return i=e.get("bpmnImporter"),r=e.get("eventBus"),o=e.get("canvas"),r.fire("import.render.start",{definitions:t}),c(t,n),r.fire("import.render.complete",{error:a,warnings:s}),u({warnings:s})}catch(p){return p.warnings=s,l(p)}})}function hR(e,t){if(!(!t||!t.plane)){var n=t.plane.bpmnElement,i=n;!S(n,"bpmn:Process")&&!S(n,"bpmn:Collaboration")&&(i=mR(n));var r;S(i,"bpmn:Collaboration")?r=i:r=ht(e.rootElements,function(u){if(S(u,"bpmn:Collaboration"))return ht(u.participants,function(l){return l.processRef===i})});var o=[i];r&&(o=pn(r.participants,function(u){return u.processRef}),o.push(r));var a=Nm(o),s=[t],c=[n];return F(e.diagrams,function(u){if(u.plane){var l=u.plane.bpmnElement;a.indexOf(l)!==-1&&c.indexOf(l)===-1&&(s.push(u),c.push(l))}}),s}}function Nm(e){var t=[];return F(e,function(n){n&&(t.push(n),t=t.concat(Nm(n.flowElements)))}),t}function mR(e){for(var t=e;t;){if(S(t,"bpmn:Process"))return t;t=t.$parent}}var gR='<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>',$m=gR,Fm={verticalAlign:"middle"},jm={color:"#404040"},yR={zIndex:"1001",position:"fixed",top:"0",left:"0",right:"0",bottom:"0"},vR={width:"100%",height:"100%",background:"rgba(40,40,40,0.2)"},bR={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"},xR='<div class="bjs-powered-by-lightbox"><div class="backdrop"></div><div class="notice"><a href="https://bpmn.io" target="_blank" rel="noopener" class="link">'+$m+'</a><span>Web-based tooling for BPMN, DMN and forms powered by <a href="https://bpmn.io" target="_blank" rel="noopener">bpmn.io</a>.</span></div></div>',xi;function _R(){xi=bt(xR),_n(xi,yR),_n(ut("svg",xi),Fm),_n(ut(".backdrop",xi),vR),_n(ut(".notice",xi),bR),_n(ut(".link",xi),jm,{margin:"15px 20px 15px 10px",alignSelf:"center"})}function wR(){xi||(_R(),kn.bind(xi,".backdrop","click",function(e){document.body.removeChild(xi)})),document.body.appendChild(xi)}const Gs=5,Hm="djs-outline-hidden";function St(e){e=V({},SR,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),this._init(this._container,this._moddle,e),CR(this._container)}ye(St,or),St.prototype.importXML=async function(t,n){const i=this;function r(a){return i.get("eventBus").createEvent(a)}let o=[];try{t=this._emit("import.parse.start",{xml:t})||t;let a;try{a=await this._moddle.fromXML(t,"bpmn:Definitions")}catch(f){throw this._emit("import.parse.complete",{error:f}),f}let s=a.rootElement;const c=a.references,u=a.warnings,l=a.elementsById;o=o.concat(u),s=this._emit("import.parse.complete",r({error:null,definitions:s,elementsById:l,references:c,warnings:o}))||s;const p=await this.importDefinitions(s,n);return o=o.concat(p.warnings),this._emit("import.done",{error:null,warnings:o}),{warnings:o}}catch(a){let s=a;throw o=o.concat(s.warnings||[]),Vs(s,o),s=ER(s),this._emit("import.done",{error:s,warnings:s.warnings}),s}},St.prototype.importDefinitions=async function(t,n){return this._setDefinitions(t),{warnings:(await this.open(n)).warnings}},St.prototype.open=async function(t){const n=this._definitions;let i=t;if(!n){const o=new Error("no XML imported");throw Vs(o,[]),o}if(typeof t=="string"&&(i=RR(n,t),!i)){const o=new Error("BPMNDiagram <"+t+"> not found");throw Vs(o,[]),o}try{this.clear()}catch(o){throw Vs(o,[]),o}const{warnings:r}=await dR(this,n,i);return{warnings:r}},St.prototype.saveXML=async function(t){t=t||{};let n=this._definitions,i,r;try{if(!n)throw new Error("no definitions loaded");n=this._emit("saveXML.start",{definitions:n})||n,r=(await this._moddle.toXML(n,t)).xml,r=this._emit("saveXML.serialized",{xml:r})||r}catch(a){i=a}const o=i?{error:i}:{xml:r};if(this._emit("saveXML.done",o),i)throw i;return o},St.prototype.saveSVG=async function(){this._emit("saveSVG.start");let t,n;try{const i=this.get("canvas"),r=i.getActiveLayer(),o=ut(":scope > defs",i._svg),a=om(r),s=o?"<defs>"+om(o)+"</defs>":"",c=i.getContainer();Et(c).add(Hm);let u;try{u=r.getBBox()}finally{Et(c).remove(Hm)}const l=u.x-Gs,p=u.y-Gs,f=u.width+Gs*2,d=u.height+Gs*2;t=`<?xml version="1.0" encoding="utf-8"?>
|
|
4
|
+
nested error: `+C.message;if(k)return a.addWarning({message:z,error:C}),!0;throw Ji(z)}function l(C,T){return u(C,T,!0)}function p(){var C=a.elementsById,T=a.references,k,A;for(k=0;A=T[k];k++){var I=A.element,D=C[A.id],L=ki(I).propertiesByName[A.property];if(D||a.addWarning({message:"unresolved reference <"+A.id+">",element:A.element,property:A.property,value:A.id}),L.isMany){var z=I.get(L.name),ne=z.indexOf(A);ne===-1&&(ne=z.length),D?z[ne]=D:z.splice(ne,1)}else I.set(L.name,D)}}function f(){c.pop().handleEnd()}var d=/^<\?xml /i,m=/ encoding="([^"]+)"/i,h=/^utf-8$/i;function y(C){if(d.test(C)){var T=m.exec(C),k=T&&T[1];!k||h.test(k)||a.addWarning({message:"unsupported document encoding <"+k+">, falling back to UTF-8"})}}function g(C,T){var k=c.peek();try{c.push(k.handleNode(C))}catch(A){u(A,T,o)&&c.push(new Ju)}}function v(C,T){try{c.peek().handleText(C)}catch(k){l(k,T)}}function b(C,T){C.trim()&&v(C,T)}var x=r.getPackages().reduce(function(C,T){return C[T.uri]=T.prefix,C},Object.entries(Qu).reduce(function(C,[T,k]){return C[k]=T,C},r.config&&r.config.nsMap||{}));return s.ns(x).on("openTag",function(C,T,k,A){var I=C.attrs||{},D=Object.keys(I).reduce(function(z,ne){var me=T(I[ne]);return z[ne]=me,z},{}),L={name:C.name,originalName:C.originalName,attributes:D,ns:C.ns};g(L,A)}).on("question",y).on("closeTag",f).on("cdata",v).on("text",function(C,T,k){b(T(C),k)}).on("error",u).on("warn",l),new Promise(function(C,T){var k;try{s.parse(e),p()}catch(z){k=z}var A=i.element;!k&&!A&&(k=Ji("failed to parse document as <"+i.type.$descriptor.name+">"));var I=a.warnings,D=a.references,L=a.elementsById;return k?(k.warnings=I,T(k)):C({rootElement:A,elementsById:L,references:D,warnings:I})})},nl.prototype.handler=function(e){return new tl(this.model,e)};function Cw(){var e=[];return Object.defineProperty(e,"peek",{value:function(){return this[this.length-1]}}),e}var Pw=`<?xml version="1.0" encoding="UTF-8"?>
|
|
5
|
+
`,Aw=/<|>|'|"|&|\n\r|\n/g,jd=/<|>|&/g;function mi(e){this.prefixMap={},this.uriMap={},this.used={},this.wellknown=[],this.custom=[],this.parent=e,this.defaultPrefixMap=e&&e.defaultPrefixMap||{}}mi.prototype.mapDefaultPrefixes=function(e){this.defaultPrefixMap=e},mi.prototype.defaultUriByPrefix=function(e){return this.defaultPrefixMap[e]},mi.prototype.byUri=function(e){return this.uriMap[e]||this.parent&&this.parent.byUri(e)},mi.prototype.add=function(e,t){this.uriMap[e.uri]=e,t?this.wellknown.push(e):this.custom.push(e),this.mapPrefix(e.prefix,e.uri)},mi.prototype.uriByPrefix=function(e){return this.prefixMap[e||"xmlns"]||this.parent&&this.parent.uriByPrefix(e)},mi.prototype.mapPrefix=function(e,t){this.prefixMap[e||"xmlns"]=t},mi.prototype.getNSKey=function(e){return e.prefix!==void 0?e.uri+"|"+e.prefix:e.uri},mi.prototype.logUsed=function(e){var t=e.uri,n=this.getNSKey(e);this.used[n]=this.byUri(t),this.parent&&this.parent.logUsed(e)},mi.prototype.getUsed=function(e){var t=[].concat(this.wellknown,this.custom);return t.filter(n=>{var i=this.getNSKey(n);return this.used[i]})};function Tw(e){return e.charAt(0).toLowerCase()+e.slice(1)}function Mw(e,t){return Bd(t)?Tw(e):e}function Hd(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function zd(e){return An(e)?e:(e.prefix?e.prefix+":":"")+e.localName}function kw(e){return e.getUsed().filter(function(t){return t.prefix!=="xml"}).map(function(t){var n="xmlns"+(t.prefix?":"+t.prefix:"");return{name:n,value:t.uri}})}function Ow(e,t){return t.isGeneric?V({localName:t.ns.localName},e):V({localName:Mw(t.ns.localName,t.$pkg)},e)}function Dw(e,t){return V({localName:t.ns.localName},e)}function Lw(e){var t=e.$descriptor;return Ye(t.properties,function(n){var i=n.name;if(n.isVirtual||!Tn(e,i))return!1;var r=e[i];return r===n.default||r===null?!1:n.isMany?r.length:!0})}var Iw={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},Bw={"<":"lt",">":"gt","&":"amp"};function Gd(e,t,n){return e=An(e)?e:""+e,e.replace(t,function(i){return"&"+n[i]+";"})}function Nw(e){return Gd(e,Aw,Iw)}function $w(e){return Gd(e,jd,Bw)}function Fw(e){return Ye(e,function(t){return t.isAttr})}function jw(e){return Ye(e,function(t){return!t.isAttr})}function il(e){this.tagName=e}il.prototype.build=function(e){return this.element=e,this},il.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()};function Lr(){}Lr.prototype.serializeValue=Lr.prototype.serializeTo=function(e){e.append(this.escape?$w(this.value):this.value)},Lr.prototype.build=function(e,t){return this.value=t,e.type==="String"&&t.search(jd)!==-1&&(this.escape=!0),this};function rl(e){this.tagName=e}Hd(rl,Lr),rl.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()};function _t(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}_t.prototype.build=function(e){this.element=e;var t=e.$descriptor,n=this.propertyDescriptor,i,r,o=t.isGeneric;return o?i=this.parseGenericNsAttributes(e):i=this.parseNsAttributes(e),n?this.ns=this.nsPropertyTagName(n):this.ns=this.nsTagName(t),this.tagName=this.addTagName(this.ns),o?this.parseGenericContainments(e):(r=Lw(e),this.parseAttributes(Fw(r)),this.parseContainments(jw(r))),this.parseGenericAttributes(e,i),this},_t.prototype.nsTagName=function(e){var t=this.logNamespaceUsed(e.ns);return Ow(t,e)},_t.prototype.nsPropertyTagName=function(e){var t=this.logNamespaceUsed(e.ns);return Dw(t,e)},_t.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},_t.prototype.nsAttributeName=function(e){var t;if(An(e)?t=dn(e):t=e.ns,e.inherited)return{localName:t.localName};var n=this.logNamespaceUsed(t);return this.getNamespaces().logUsed(n),this.isLocalNs(n)?{localName:t.localName}:V({localName:t.localName},n)},_t.prototype.parseGenericNsAttributes=function(e){return Object.entries(e).filter(([t,n])=>!t.startsWith("$")&&this.parseNsAttribute(e,t,n)).map(([t,n])=>({name:t,value:n}))},_t.prototype.parseGenericContainments=function(e){var t=e.$body;t&&this.body.push(new Lr().build({type:"String"},t));var n=e.$children;n&&F(n,i=>{this.body.push(new _t(this).build(i))})},_t.prototype.parseNsAttribute=function(e,t,n){var i=e.$model,r=dn(t),o;if(r.prefix==="xmlns"&&(o={prefix:r.localName,uri:n}),!r.prefix&&r.localName==="xmlns"&&(o={uri:n}),!o)return{name:t,value:n};if(i&&i.getPackage(n))this.logNamespace(o,!0,!0);else{var a=this.logNamespaceUsed(o,!0);this.getNamespaces().logUsed(a)}},_t.prototype.parseNsAttributes=function(e){var t=this,n=e.$attrs,i=[];return F(n,function(r,o){var a=t.parseNsAttribute(e,o,r);a&&i.push(a)}),i},_t.prototype.parseGenericAttributes=function(e,t){var n=this;F(t,function(i){try{n.addAttribute(n.nsAttributeName(i.name),i.value)}catch(r){typeof console<"u"&&console.warn(`missing namespace information for <${i.name}=${i.value}> on`,e,r)}})},_t.prototype.parseContainments=function(e){var t=this,n=this.body,i=this.element;F(e,function(r){var o=i.get(r.name),a=r.isReference,s=r.isMany;if(s||(o=[o]),r.isBody)n.push(new Lr().build(r,o[0]));else if(Td(r.type))F(o,function(u){n.push(new rl(t.addTagName(t.nsPropertyTagName(r))).build(r,u))});else if(a)F(o,function(u){n.push(new il(t.addTagName(t.nsPropertyTagName(r))).build(u))});else{var c=$d(r);F(o,function(u){var l;c?c===Nd?l=new _t(t,r):l=new ms(t,r,c):l=new _t(t),n.push(l.build(u))})}})},_t.prototype.getNamespaces=function(e){var t=this.namespaces,n=this.parent,i;return t||(i=n&&n.getNamespaces(),e||!i?this.namespaces=t=new mi(i):t=i),t},_t.prototype.logNamespace=function(e,t,n){var i=this.getNamespaces(n),r=e.uri,o=e.prefix,a=i.byUri(r);return(!a||n)&&i.add(e,t),i.mapPrefix(o,r),e},_t.prototype.logNamespaceUsed=function(e,t){var n=this.getNamespaces(t),i=e.prefix,r=e.uri,o,a,s;if(!i&&!r)return{localName:e.localName};if(s=n.defaultUriByPrefix(i),r=r||s||n.uriByPrefix(i),!r)throw new Error("no namespace uri given for prefix <"+i+">");if(e=n.byUri(r),!e&&!i&&(e=this.logNamespace({uri:r},s===r,!0)),!e){for(o=i,a=1;n.uriByPrefix(o);)o=i+"_"+a++;e=this.logNamespace({prefix:o,uri:r},s===r)}return i&&n.mapPrefix(i,r),e},_t.prototype.parseAttributes=function(e){var t=this,n=this.element;F(e,function(i){var r=n.get(i.name);if(i.isReference)if(!i.isMany)r=r.id;else{var o=[];F(r,function(a){o.push(a.id)}),r=o.join(" ")}t.addAttribute(t.nsAttributeName(i),r)})},_t.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),zd(e)},_t.prototype.addAttribute=function(e,t){var n=this.attrs;An(t)&&(t=Nw(t));var i=Rd(n,function(o){return o.name.localName===e.localName&&o.name.uri===e.uri&&o.name.prefix===e.prefix}),r={name:e,value:t};i!==-1?n.splice(i,1,r):n.push(r)},_t.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=kw(n).concat(t)),F(t,function(i){e.append(" ").append(zd(i.name)).append('="').append(i.value).append('"')})},_t.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(),F(this.body,function(i){i.serializeTo(e)}),n&&e.unindent().appendIndent(),e.append("</"+this.tagName+">")),e.appendNewLine()};function ms(e,t,n){_t.call(this,e,t),this.serialization=n}Hd(ms,_t),ms.prototype.parseNsAttributes=function(e){var t=_t.prototype.parseNsAttributes.call(this,e).filter(a=>a.name!==this.serialization),n=e.$descriptor;if(n.name===this.propertyDescriptor.type)return t;var i=this.typeNs=this.nsTagName(n);this.getNamespaces().logUsed(this.typeNs);var r=e.$model.getPackage(i.uri),o=r.xml&&r.xml.typePrefix||"";return this.addAttribute(this.nsAttributeName(this.serialization),(i.prefix?i.prefix+":":"")+o+n.ns.localName),t},ms.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri};function Hw(){this.value="",this.write=function(e){this.value+=e}}function zw(e,t){var n=[""];this.append=function(i){return e.write(i),this},this.appendNewLine=function(){return t&&e.write(`
|
|
6
|
+
`),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 Gw(e){e=V({format:!1,preamble:!0},e||{});function t(n,i){var r=i||new Hw,o=new zw(r,e.format);e.preamble&&o.append(Pw);var a=new _t,s=n.$model;if(a.getNamespaces().mapDefaultPrefixes(Vw(s)),a.build(n).serializeTo(o),!i)return r.value}return{toXML:t}}function Vw(e){const t=e.config&&e.config.nsMap||{},n={};for(const i in Qu)n[i]=Qu[i];for(const i in t){const r=t[i];n[r]=i}for(const i of e.getPackages())n[i.prefix]=i.uri;return n}function gs(e,t){Xn.call(this,e,t)}gs.prototype=Object.create(Xn.prototype),gs.prototype.fromXML=function(e,t,n){An(t)||(n=t,t="bpmn:Definitions");var i=new nl(V({model:this,lax:!0},n)),r=i.handler(t);return i.fromXML(e,r)},gs.prototype.toXML=function(e,t){var n=new Gw(t);return new Promise(function(i,r){try{var o=n.toXML(e);return i({xml:o})}catch(a){return r(a)}})};var Ww="BPMN20",Uw="http://www.omg.org/spec/BPMN/20100524/MODEL",Yw="bpmn",qw=[],Kw=[{name:"Interface",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"operations",type:"Operation",isMany:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"Operation",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"inMessageRef",type:"Message",isReference:!0},{name:"outMessageRef",type:"Message",isReference:!0},{name:"errorRef",type:"Error",isMany:!0,isReference:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"EndPoint",superClass:["RootElement"]},{name:"Auditing",superClass:["BaseElement"]},{name:"GlobalTask",superClass:["CallableElement"],properties:[{name:"resources",type:"ResourceRole",isMany:!0}]},{name:"Monitoring",superClass:["BaseElement"]},{name:"Performer",superClass:["ResourceRole"]},{name:"Process",superClass:["FlowElementsContainer","CallableElement"],properties:[{name:"processType",type:"ProcessType",isAttr:!0},{name:"isClosed",isAttr:!0,type:"Boolean"},{name:"auditing",type:"Auditing"},{name:"monitoring",type:"Monitoring"},{name:"properties",type:"Property",isMany:!0},{name:"laneSets",isMany:!0,replaces:"FlowElementsContainer#laneSets",type:"LaneSet"},{name:"flowElements",isMany:!0,replaces:"FlowElementsContainer#flowElements",type:"FlowElement"},{name:"artifacts",type:"Artifact",isMany:!0},{name:"resources",type:"ResourceRole",isMany:!0},{name:"correlationSubscriptions",type:"CorrelationSubscription",isMany:!0},{name:"supports",type:"Process",isMany:!0,isReference:!0},{name:"definitionalCollaborationRef",type:"Collaboration",isAttr:!0,isReference:!0},{name:"isExecutable",isAttr:!0,type:"Boolean"}]},{name:"LaneSet",superClass:["BaseElement"],properties:[{name:"lanes",type:"Lane",isMany:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Lane",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"partitionElementRef",type:"BaseElement",isAttr:!0,isReference:!0},{name:"partitionElement",type:"BaseElement"},{name:"flowNodeRef",type:"FlowNode",isMany:!0,isReference:!0},{name:"childLaneSet",type:"LaneSet",xml:{serialize:"xsi:type"}}]},{name:"GlobalManualTask",superClass:["GlobalTask"]},{name:"ManualTask",superClass:["Task"]},{name:"UserTask",superClass:["Task"],properties:[{name:"renderings",type:"Rendering",isMany:!0},{name:"implementation",isAttr:!0,type:"String"}]},{name:"Rendering",superClass:["BaseElement"]},{name:"HumanPerformer",superClass:["Performer"]},{name:"PotentialOwner",superClass:["HumanPerformer"]},{name:"GlobalUserTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"renderings",type:"Rendering",isMany:!0}]},{name:"Gateway",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"gatewayDirection",type:"GatewayDirection",default:"Unspecified",isAttr:!0}]},{name:"EventBasedGateway",superClass:["Gateway"],properties:[{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"eventGatewayType",type:"EventBasedGatewayType",isAttr:!0,default:"Exclusive"}]},{name:"ComplexGateway",superClass:["Gateway"],properties:[{name:"activationCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ExclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"InclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ParallelGateway",superClass:["Gateway"]},{name:"RootElement",isAbstract:!0,superClass:["BaseElement"]},{name:"Relationship",superClass:["BaseElement"],properties:[{name:"type",isAttr:!0,type:"String"},{name:"direction",type:"RelationshipDirection",isAttr:!0},{name:"source",isMany:!0,isReference:!0,type:"Element"},{name:"target",isMany:!0,isReference:!0,type:"Element"}]},{name:"BaseElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,type:"String",isId:!0},{name:"documentation",type:"Documentation",isMany:!0},{name:"extensionDefinitions",type:"ExtensionDefinition",isMany:!0,isReference:!0},{name:"extensionElements",type:"ExtensionElements"}]},{name:"Extension",properties:[{name:"mustUnderstand",default:!1,isAttr:!0,type:"Boolean"},{name:"definition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"extensionAttributeDefinitions",type:"ExtensionAttributeDefinition",isMany:!0}]},{name:"ExtensionAttributeDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"type",isAttr:!0,type:"String"},{name:"isReference",default:!1,isAttr:!0,type:"Boolean"},{name:"extensionDefinition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionElements",properties:[{name:"valueRef",isAttr:!0,isReference:!0,type:"Element"},{name:"values",type:"Element",isMany:!0},{name:"extensionAttributeDefinition",type:"ExtensionAttributeDefinition",isAttr:!0,isReference:!0}]},{name:"Documentation",superClass:["BaseElement"],properties:[{name:"text",type:"String",isBody:!0},{name:"textFormat",default:"text/plain",isAttr:!0,type:"String"}]},{name:"Event",isAbstract:!0,superClass:["FlowNode","InteractionNode"],properties:[{name:"properties",type:"Property",isMany:!0}]},{name:"IntermediateCatchEvent",superClass:["CatchEvent"]},{name:"IntermediateThrowEvent",superClass:["ThrowEvent"]},{name:"EndEvent",superClass:["ThrowEvent"]},{name:"StartEvent",superClass:["CatchEvent"],properties:[{name:"isInterrupting",default:!0,isAttr:!0,type:"Boolean"}]},{name:"ThrowEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"dataInputs",type:"DataInput",isMany:!0},{name:"dataInputAssociations",type:"DataInputAssociation",isMany:!0},{name:"inputSet",type:"InputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"CatchEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"parallelMultiple",isAttr:!0,type:"Boolean",default:!1},{name:"dataOutputs",type:"DataOutput",isMany:!0},{name:"dataOutputAssociations",type:"DataOutputAssociation",isMany:!0},{name:"outputSet",type:"OutputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"BoundaryEvent",superClass:["CatchEvent"],properties:[{name:"cancelActivity",default:!0,isAttr:!0,type:"Boolean"},{name:"attachedToRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"EventDefinition",isAbstract:!0,superClass:["RootElement"]},{name:"CancelEventDefinition",superClass:["EventDefinition"]},{name:"ErrorEventDefinition",superClass:["EventDefinition"],properties:[{name:"errorRef",type:"Error",isAttr:!0,isReference:!0}]},{name:"TerminateEventDefinition",superClass:["EventDefinition"]},{name:"EscalationEventDefinition",superClass:["EventDefinition"],properties:[{name:"escalationRef",type:"Escalation",isAttr:!0,isReference:!0}]},{name:"Escalation",properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"escalationCode",isAttr:!0,type:"String"}],superClass:["RootElement"]},{name:"CompensateEventDefinition",superClass:["EventDefinition"],properties:[{name:"waitForCompletion",isAttr:!0,type:"Boolean",default:!0},{name:"activityRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"TimerEventDefinition",superClass:["EventDefinition"],properties:[{name:"timeDate",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeCycle",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeDuration",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"LinkEventDefinition",superClass:["EventDefinition"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"target",type:"LinkEventDefinition",isReference:!0},{name:"source",type:"LinkEventDefinition",isMany:!0,isReference:!0}]},{name:"MessageEventDefinition",superClass:["EventDefinition"],properties:[{name:"messageRef",type:"Message",isAttr:!0,isReference:!0},{name:"operationRef",type:"Operation",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"}]}],Xw=[{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"}]}],Zw={tagAlias:"lowerCase",typePrefix:"t"},Qw={name:Ww,uri:Uw,prefix:Yw,associations:qw,types:Kw,enumerations:Xw,xml:Zw},Jw="BPMNDI",eE="http://www.omg.org/spec/BPMN/20100524/DI",tE="bpmndi",nE=[{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"]}],iE=[{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"}]}],rE=[],oE={name:Jw,uri:eE,prefix:tE,types:nE,enumerations:iE,associations:rE},aE="DC",sE="http://www.omg.org/spec/DD/20100524/DC",cE="dc",uE=[{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}]}],lE=[],pE={name:aE,uri:sE,prefix:cE,types:uE,associations:lE},fE="DI",dE="http://www.omg.org/spec/DD/20100524/DI",hE="di",mE=[{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"}]}],gE=[],yE={tagAlias:"lowerCase"},vE={name:fE,uri:dE,prefix:hE,types:mE,associations:gE,xml:yE},bE="bpmn.io colors for BPMN",xE="http://bpmn.io/schema/bpmn/biocolor/1.0",_E="bioc",wE=[{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"}]}],EE=[],SE=[],RE={name:bE,uri:xE,prefix:_E,types:wE,enumerations:EE,associations:SE},CE="BPMN in Color",PE="http://www.omg.org/spec/BPMN/non-normative/color/1.0",AE="color",TE=[{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"}]}],ME=[],kE=[],OE={name:CE,uri:PE,prefix:AE,types:TE,enumerations:ME,associations:kE};const DE={bpmn:Qw,bpmndi:oE,dc:pE,di:vE,bioc:RE,color:OE};function Vd(e,t){const n=V({},DE,e);return new gs(n,t)}const LE={name:"bpmn-i18n",uri:"http://www.omg.org/spec/BPMN/non-normative/extensions/i18n/1.0",prefix:"i18n",types:[{name:"Translation",superClass:["Element"],properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"body",isBody:!0,type:"String"},{name:"target",isAttr:!0,type:"String",default:"@name"},{name:"textFormat",isAttr:"true",type:"String",default:"text/plain"}]}],enumerations:[],associations:[],xml:{tagAlias:"lowerCase",typePrefix:"t"}},IE="http://www.omg.org/spec/BPMN/non-normative/extensions/i18n/1.0",Wd="i18n",ys={[Wd]:LE,[Hu]:xd};function Ud(){return Vd(ys)}const Yd=Ud();async function ol(e){const{rootElement:t,warnings:n}=await Yd.fromXML(e,"bpmn:Definitions");return{definitions:t,warnings:n}}async function BE(e){const{xml:t}=await Yd.toXML(e,{format:!0});return t}function al(e){return e.map(t=>typeof t=="string"?t:t.message??String(t))}const uo={cjkEm:.865,upperEm:.68,lowerEm:.5,digitEm:.556,spaceEm:.278,otherEm:.35,ascentEm:.9,descentEm:.25},NE=/[ᄀ-ᇿ -〿-ヿ㐀-鿿가--⦆]/;function $E(e){const t=uo;return NE.test(e)?t.cjkEm:e===" "?t.spaceEm:e>="0"&&e<="9"?t.digitEm:e>="A"&&e<="Z"?t.upperEm:e>="a"&&e<="z"?t.lowerEm:t.otherEm}function lo(e,t){let n=0;for(const i of e)n+=t*$E(i);return n}function qd(e=globalThis,{textMeasurement:t="approximate"}={}){if(!(e!=null&&e.SVGElement))throw new Error("installHeadlessBpmnDom: DOM 전역이 없다 — jsdom window 를 전역에 올린 뒤 호출할 것");t==="approximate"&&FE(e),jE(e),HE(e),zE(e)}function FE(e){var i;const t=(i=e.HTMLCanvasElement)==null?void 0:i.prototype;if(!t||t.__headlessTextMeasurement)return;t.__headlessTextMeasurement=!0;const n={font:"12px sans-serif",letterSpacing:"0px",measureText(r){var a;const o=Number.parseFloat(((a=String(n.font).match(/(\d+(?:\.\d+)?)px/))==null?void 0:a[1])??"12");return{width:lo(r,o),fontBoundingBoxAscent:o*uo.ascentEm,fontBoundingBoxDescent:o*uo.descentEm,actualBoundingBoxAscent:o*uo.ascentEm,actualBoundingBoxDescent:o*uo.descentEm}}};t.getContext=()=>n}function jE(e){if(e.SVGMatrix)return;class t{constructor(){no(this,"a",1);no(this,"b",0);no(this,"c",0);no(this,"d",1);no(this,"e",0);no(this,"f",0)}static of(i,r,o,a,s,c){return Object.assign(new t,{a:i,b:r,c:o,d:a,e:s,f:c})}multiply(i){return t.of(this.a*i.a+this.c*i.b,this.b*i.a+this.d*i.b,this.a*i.c+this.c*i.d,this.b*i.c+this.d*i.d,this.a*i.e+this.c*i.f+this.e,this.b*i.e+this.d*i.f+this.f)}translate(i,r){return this.multiply(t.of(1,0,0,1,i,r))}scale(i,r=i){return this.multiply(t.of(i,0,0,r,0,0))}inverse(){const i=this.a*this.d-this.b*this.c;return t.of(this.d/i,-this.b/i,-this.c/i,this.a/i,(this.c*this.f-this.d*this.e)/i,(this.b*this.e-this.a*this.f)/i)}}e.SVGMatrix=t}function HE(e){var o;const t=()=>{const a=new e.SVGMatrix;return{type:0,matrix:a,setTranslate(s,c){a.e=s,a.f=c},setScale(s,c){a.a=s,a.d=c},setRotate(s,c=0,u=0){const l=s*Math.PI/180,p=Math.cos(l),f=Math.sin(l);a.a=p,a.b=f,a.c=-f,a.d=p,a.e=c-p*c+f*u,a.f=u-f*c-p*u},setMatrix(s){Object.assign(a,s)}}},n=a=>{const s=t();return Object.assign(s.matrix,a),s},i=(o=e.SVGSVGElement)==null?void 0:o.prototype;i&&!i.createSVGTransform&&(i.createSVGTransform=t,i.createSVGTransformFromMatrix=n,i.createSVGMatrix=()=>new e.SVGMatrix,i.createSVGPoint=()=>({x:0,y:0,matrixTransform:()=>({x:0,y:0})}));const r=e.SVGElement.prototype;Object.getOwnPropertyDescriptor(r,"transform")||Object.defineProperty(r,"transform",{configurable:!0,get(){if(!this.__headlessTransformList){const a=[];this.__headlessTransformList={baseVal:{get numberOfItems(){return a.length},clear:()=>{a.length=0},appendItem:s=>(a.push(s),s),getItem:s=>a[s],createSVGTransformFromMatrix:n,consolidate:()=>a[a.length-1]??null}}}return this.__headlessTransformList}})}function zE(e){const t=e.SVGElement.prototype;if(!t.getCTM){const n=()=>new e.SVGMatrix;t.getCTM=n,t.getScreenCTM=n}t.getBBox||(t.getBBox=function(){const n=String(this.textContent??"");return{x:0,y:0,width:lo(n,12),height:14}})}const vs=new Set(["bpmn:Participant","bpmn:Lane","bpmn:Group","bpmn:SubProcess","bpmn:AdHocSubProcess","bpmn:Transaction"]),GE=new Set(["bpmn:SubProcess","bpmn:AdHocSubProcess","bpmn:Transaction"]),VE=1,sl=new Set(["bpmn:TextAnnotation","bpmn:DataStoreReference","bpmn:DataObjectReference","bpmn:DataInput","bpmn:DataOutput"]),WE=2;function hn(e){switch(e.kind){case"label-over-line":return`L|${e.edge}|${e.line}`;case"edge-crosses-shape":return`x|${e.edge}|${e.shape}`;case"edge-endpoint-detached":return`d|${e.edge}|${e.shape}`;case"shape-overlap":return`o|${e.shapes[0]}|${e.shapes[1]}`;case"shape-outside-container":return`c|${e.shape}|${e.container}`;case"edge-overlap-opposite":return`p|${e.edges[0]}|${e.edges[1]}`;case"edge-overlap-mixed":return`m|${e.edges[0]}|${e.edges[1]}`;case"edge-overlap-unrelated":return`u|${e.edges[0]}|${e.edges[1]}`;case"label-on-shared-segment":return`l|${e.edge}|${e.other}`;case"annotation-over-label":return`a|${e.annotation}|${e.label}`;case"pool-overlap":return`P|${e.pools[0]}|${e.pools[1]}`;case"edge-crosses-subprocess":return`S|${e.edge}|${e.subProcess}`;case"group-overlap-unintended":return`g|${e.groups[0]}|${e.groups[1]}${e.container?`|⊃${e.container}`:""}`;case"group-overlap-unreadable":return e.reason==="minority"?`gu*|${e.group}|${e.shapes.join(",")}`:e.reason==="throughpass"?`gu>|${e.group}|${e.shapes.join(",")}`:`gu|${e.groups[0]}|${e.groups[1]}|${e.shapes.join(",")}`;case"group-stack-unreadable":return`gs|${e.groups.join("|")}|${e.shapes.join(",")}`;case"group-on-container-boundary":return`gb|${e.group}|${e.container}|${e.side}`;case"group-on-group-boundary":return`gg|${e.groups[0]}|${e.groups[1]}|${e.axis}`;case"group-cuts-shape":return`gc|${e.group}|${e.shape}|${e.side}`;case"pool-name-over-label":return`pn|${e.pool}|${e.label}`}}const Kd=20,bs=5,Xd=3,UE=8,Zd=12,YE=Zd*1.2;function cl(e,t){const n=t.split(/\r?\n/),i=Math.max(...n.map(o=>lo(o,Zd))),r=n.length*YE;return{x:e.x+e.width/2-i/2,y:e.y+e.height/2-r/2,width:i,height:r}}const Qd=1;function xn(e){const t=[];for(let n=0;n+1<e.waypoints.length;n++){const i=e.waypoints[n],r=e.waypoints[n+1];Math.abs(i.y-r.y)<.5&&Math.abs(i.x-r.x)>=.5?t.push({axis:"h",at:i.y,lo:Math.min(i.x,r.x),hi:Math.max(i.x,r.x),dir:r.x>i.x?1:-1}):Math.abs(i.x-r.x)<.5&&Math.abs(i.y-r.y)>=.5&&t.push({axis:"v",at:i.x,lo:Math.min(i.y,r.y),hi:Math.max(i.y,r.y),dir:r.y>i.y?1:-1})}return t}function po(e,t){let n=null;const i=e.type!==t.type,o=!!(e.source&&e.target&&t.source&&t.target)&&e.source!==t.source&&e.source!==t.target&&e.target!==t.source&&e.target!==t.target;for(const a of xn(e))for(const s of xn(t)){if(a.axis!==s.axis||Math.abs(a.at-s.at)>Qd)continue;const c=a.dir!==s.dir?"opposite":i?"mixed":o?"unrelated":null;if(!c)continue;const u=Math.min(a.hi,s.hi)-Math.max(a.lo,s.lo);u>=Kd&&(!n||u>n.length)&&(n={axis:a.axis,length:u,kind:c})}return n}function ul(e){return e.kind==="edge-overlap-opposite"||e.kind==="edge-overlap-mixed"||e.kind==="edge-overlap-unrelated"}function Jd(e,t){const n=po(e,t);return n&&n.kind==="opposite"?{axis:n.axis,length:n.length}:null}function qE(e,t){let n=0;for(const i of t)i.id!==e.id&&Jd(e,i)&&n++;return n}function Gn(e,t){let n=0;for(const i of t)i.id!==e.id&&po(e,i)&&n++;return n}const eh=15,th=20;function KE(e,t){const n=t.axis==="v"?[e.x,e.x+e.width]:[e.y,e.y+e.height];if(t.at<n[0]-th||t.at>n[1]+th)return null;const i=t.axis==="v"?[e.y,e.y+e.height]:[e.x,e.x+e.width],r=Math.max(i[0],t.lo),o=Math.min(i[1],t.hi);return o>r?[r,o]:null}const ll=20;function xs(e,t){const n=[];for(const i of t){if(i.axis!==e.axis||Math.abs(i.at-e.at)>Qd)continue;const r=Math.max(e.lo,i.lo),o=Math.min(e.hi,i.hi);o-r<Kd||n.push([r-ll,o+ll])}return n}function _s(e,t){const n=e.label;if(!n)return null;let i=null;for(const r of xn(e)){const o=KE(n,r);if(o){for(const a of t)if(a.id!==e.id&&!(i&&a.id>=i.other)){for(const[s,c]of xs(r,xn(a)))if(Math.min(c,o[1])>Math.max(s,o[0])){i={other:a.id,axis:r.axis};break}}}}return i}const XE=10,ZE=1,QE=(e,t,n)=>t.x>=e.x-n&&t.y>=e.y-n&&t.x+t.width<=e.x+e.width+n&&t.y+t.height<=e.y+e.height+n;function JE(e,t,n,i){const r=n.x+i,o=n.y+i,a=n.x+n.width-i,s=n.y+n.height-i;if(a<=r||s<=o)return!1;const c=t.x-e.x,u=t.y-e.y;let l=0,p=1;const f=(d,m)=>{if(m===0)return d<=0;const h=d/m;if(m>0){if(h>p)return!1;h>l&&(l=h)}else{if(h<l)return!1;h<p&&(p=h)}return!0};return f(r-e.x,c)&&f(e.x-a,-c)&&f(o-e.y,u)&&f(e.y-s,-u)&&p>l}function pl(e,t,n){return e.x+n<t.x+t.width-n&&t.x+n<e.x+e.width-n&&e.y+n<t.y+t.height-n&&t.y+n<e.y+e.height-n}const e1=(e,t)=>e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height,fo=1;function Oi(e,t){const n=e.x+fo,i=e.x+e.width-fo,r=e.y+fo,o=e.y+e.height-fo;return t.axis==="h"?t.at>r&&t.at<o&&t.lo<i&&t.hi>n:t.at>n&&t.at<i&&t.lo<o&&t.hi>r}function na(e){return[{axis:"h",at:e.y,lo:e.x,hi:e.x+e.width,dir:1},{axis:"h",at:e.y+e.height,lo:e.x,hi:e.x+e.width,dir:1},{axis:"v",at:e.x,lo:e.y,hi:e.y+e.height,dir:1},{axis:"v",at:e.x+e.width,lo:e.y,hi:e.y+e.height,dir:1}]}function nh(e,t){const n=e.label;if(!n)return null;if(xn(e).some(i=>Oi(n,i)))return e.id;for(const i of[...t.edges].filter(r=>r.id!==e.id).sort((r,o)=>r.id.localeCompare(o.id)))if(xn(i).some(r=>Oi(n,r)))return i.id;for(const i of t.shapes.filter(r=>r.container).sort((r,o)=>r.id.localeCompare(o.id)))if(na(i).some(r=>Oi(n,r)))return i.id;return null}function rn(e,t){const n=new Set(e.endpoints),i=[];for(const r of t)if(!n.has(r.id)){for(let o=0;o+1<e.waypoints.length;o++)if(JE(e.waypoints[o],e.waypoints[o+1],r,WE)){i.push(r);break}}return i}function t1(e,t,n,i){const r=(u,l,p)=>(l.x-u.x)*(p.y-u.y)-(l.y-u.y)*(p.x-u.x),o=r(n,i,e),a=r(n,i,t),s=r(e,t,n),c=r(e,t,i);return o*a<0&&s*c<0}const ih=(e,t)=>e.endpoints.some(n=>t.endpoints.includes(n));function ia(e,t){let n=0;for(const i of t){if(i.id===e.id||ih(e,i))continue;let r=!1;for(let o=0;o+1<e.waypoints.length&&!r;o++)for(let a=0;a+1<i.waypoints.length&&!r;a++)t1(e.waypoints[o],e.waypoints[o+1],i.waypoints[a],i.waypoints[a+1])&&(r=!0);r&&n++}return n}function Vn(e,t){let n=0;for(const i of t)i.id===e.id||ih(e,i)||ia(e,[i])>0&&(n+=i.type===e.type?2:1);return n}function rh(e){let t=0;const n=e.edges;for(let i=0;i<n.length;i++)for(let r=i+1;r<n.length;r++)ia(n[i],[n[r]])>0&&(t+=n[i].type===n[r].type?2:1);return t}function ws(e){const t=[],n=e.edges;for(let i=0;i<n.length;i++)for(let r=i+1;r<n.length;r++)if(ia(n[i],[n[r]])>0){const o=n[i].id,a=n[r].id;t.push(o<a?[o,a]:[a,o])}return t.sort((i,r)=>`${i[0]}|${i[1]}`.localeCompare(`${r[0]}|${r[1]}`))}function oh(e){const t=ws(e),n=a=>a==="bpmn:MessageFlow"||a.endsWith("Association")?"dashed":"solid",i=new Map(e.edges.map(a=>[a.id,a]));let r=0,o=0;for(const[a,s]of t){const c=i.get(a),u=i.get(s);if(!c||!u)continue;const l=n(c.type),p=n(u.type);l==="solid"&&p==="solid"?r++:l==="dashed"&&p==="dashed"&&o++}return{pairs:t,solidPairs:r,dashedPairs:o,mixedPairs:t.length-r-o,crossPoolMessages:n1(e)}}function n1(e){const t=e.shapes.filter(r=>r.type==="bpmn:Participant");if(t.length<3)return 0;const n=r=>{const o=e.shapes.find(a=>a.id===r);if(o)return t.find(a=>o.x>=a.x&&o.y>=a.y&&o.x+o.width<=a.x+a.width&&o.y+o.height<=a.y+a.height)};let i=0;for(const r of e.edges){if(r.type!=="bpmn:MessageFlow"||r.endpoints.length<2)continue;const o=n(r.endpoints[0]),a=n(r.endpoints[1]);if(!o||!a||o.id===a.id)continue;const s=Math.min(o.y,a.y),c=Math.max(o.y+o.height,a.y+a.height);t.some(u=>u.id!==o.id&&u.id!==a.id&&u.y>s&&u.y+u.height<c)&&i++}return i}function ah(e,t,n){const i=new Set(t.flatMap(r=>[...r.members]));return e.shapes.filter(r=>!r.container&&!sl.has(r.type)&&!i.has(r.id)&&r.x>=n.x&&r.y>=n.y&&r.x+r.width<=n.right&&r.y+r.height<=n.bottom).map(r=>r.id).sort()}function sh(e){var n;const t=(n=xt(e==null?void 0:e.extensionElements))==null?void 0:n.values;if(Array.isArray(t))for(const i of t){const r=xt(i);if((r==null?void 0:r.$type)!=="bwl:Members"||typeof r.refs!="string")continue;const o=r.refs.split(/\s+/).filter(Boolean);return o.length?o:void 0}}const ch=e=>e?{members:e}:{},Wn=e=>e.shapes.filter(t=>!t.container);function i1(e,t,n){if(e.type==="bpmn:TextAnnotation")for(const i of t.edges){if(!/Association$/.test(i.type)||!i.endpoints.includes(e.id))continue;const r=i.endpoints.find(a=>a!==e.id),o=r?n.get(r):void 0;if(o){if(o.container)return o.id;if(o.parent)return o.parent}}}function uh(e,t){const n=e.label;if(!n)return null;for(const i of[...t.edges].sort((r,o)=>r.id.localeCompare(o.id)))if(xn(i).some(r=>Oi(n,r)))return i.id;for(const i of[...t.shapes].filter(r=>r.container).sort((r,o)=>r.id.localeCompare(o.id)))if(na(i).some(r=>Oi(n,r)))return i.id;return null}function ho(e){const t=[];for(const n of e.shapes)n.label&&t.push({owner:n.id,rect:n.label});for(const n of e.edges)n.label&&t.push({owner:n.id,rect:n.label});return t}function on(e){const t=[],n=e.shapes.filter(g=>!g.container);for(const g of e.edges)for(const v of rn(g,n))t.push({kind:"edge-crosses-shape",edge:g.id,shape:v.id});const i=e.shapes.filter(g=>g.container&&GE.has(g.type));if(i.length){const g=(v,b)=>{const x=e.shapes.find(C=>C.id===b);return!!x&&x.x>=v.x&&x.y>=v.y&&x.x+x.width<=v.x+v.width&&x.y+x.height<=v.y+v.height};for(const v of e.edges)for(const b of rn(v,i))v.endpoints.includes(b.id)||v.endpoints.some(x=>g(b,x))||t.push({kind:"edge-crosses-subprocess",edge:v.id,subProcess:b.id})}for(const g of e.edges){if(g.waypoints.length<2)continue;const v=[[g.source,g.waypoints[0]],[g.target,g.waypoints[g.waypoints.length-1]]];for(const[b,x]of v){if(!b)continue;const C=e.shapes.find(I=>I.id===b);if(!C||C.container)continue;const T=Math.max(C.x-x.x,x.x-(C.x+C.width),0),k=Math.max(C.y-x.y,x.y-(C.y+C.height),0),A=Math.hypot(T,k);A>XE&&t.push({kind:"edge-endpoint-detached",edge:g.id,shape:b,distance:Math.round(A)})}}const r=e.shapes.filter(g=>g.type==="bpmn:Participant");for(let g=0;g<r.length;g++)for(let v=g+1;v<r.length;v++){const b=r[g],x=r[v];if(b.x+b.width<=x.x||x.x+x.width<=b.x||b.y+b.height<=x.y||x.y+x.height<=b.y)continue;const C=(T,k)=>T.x<=k.x&&T.y<=k.y&&T.x+T.width>=k.x+k.width&&T.y+T.height>=k.y+k.height;t.push({kind:"pool-overlap",pools:[b.id,x.id],contained:C(b,x)||C(x,b)})}const o=n.filter(g=>!g.attached);for(let g=0;g<o.length;g++)for(let v=g+1;v<o.length;v++){const b=o[g],x=o[v];if(!pl(b,x,VE))continue;const C=b.id<x.id?[b.id,x.id]:[x.id,b.id];t.push({kind:"shape-overlap",shapes:C,identical:e1(b,x)})}const a=e.shapes.filter(g=>g.type==="bpmn:Group"&&Array.isArray(g.members)&&g.members.length>0);for(let g=0;g<a.length;g++)for(let v=g+1;v<a.length;v++){const b=a[g],x=a[v],C=Math.min(b.x+b.width,x.x+x.width)-Math.max(b.x,x.x),T=Math.min(b.y+b.height,x.y+x.height)-Math.max(b.y,x.y);if(C<=bs||T<=bs)continue;const k=b.id<x.id?[b.id,x.id]:[x.id,b.id],A=new Set(x.members);if(b.members.some(D=>A.has(D))){const D=ah(e,a,{x:Math.max(b.x,x.x),y:Math.max(b.y,x.y),right:Math.min(b.x+b.width,x.x+x.width),bottom:Math.min(b.y+b.height,x.y+x.height)});D.length&&t.push({kind:"group-overlap-unreadable",reason:"orphan",groups:k,shapes:D});continue}const I=b.x<=x.x&&b.y<=x.y&&b.x+b.width>=x.x+x.width&&b.y+b.height>=x.y+x.height?b.id:x.x<=b.x&&x.y<=b.y&&x.x+x.width>=b.x+b.width&&x.y+x.height>=b.y+b.height?x.id:void 0;t.push({kind:"group-overlap-unintended",groups:k,...I?{container:I}:{}})}const s=new Set(a.flatMap(g=>[...g.members])),c=g=>e.shapes.filter(v=>!v.container&&!sl.has(v.type)&&v.x>=g.x&&v.y>=g.y&&v.x+v.width<=g.x+g.width&&v.y+v.height<=g.y+g.height);for(const g of a){const v=c(g);if(!v.length)continue;const b=new Set(g.members),x=v.filter(C=>!b.has(C.id));x.some(C=>s.has(C.id))&&(x.length*2<v.length||t.push({kind:"group-overlap-unreadable",reason:"minority",group:g.id,shapes:x.map(C=>C.id).sort()}))}for(const g of a){const v=new Set(c(g).map(A=>A.id)),b=new Set(g.members),x=new Set([...v].filter(A=>!b.has(A)&&s.has(A)));if(!x.size)continue;let C=!1,T=!1,k=!1;for(const A of e.edges){if(A.type!=="bpmn:SequenceFlow"||!A.source||!A.target)continue;const I=x.has(A.source),D=x.has(A.target);!I&&D&&!v.has(A.source)?C=!0:I&&!D&&!v.has(A.target)?T=!0:I&&D&&(k=!0)}C&&T&&k&&t.push({kind:"group-overlap-unreadable",reason:"throughpass",group:g.id,shapes:[...x].sort()})}const u=e.shapes.filter(g=>g.type==="bpmn:Group");for(let g=0;g<u.length;g++)for(let v=g+1;v<u.length;v++)for(let b=v+1;b<u.length;b++){const x=[u[g],u[v],u[b]],C={x:Math.max(...x.map(A=>A.x)),y:Math.max(...x.map(A=>A.y)),right:Math.min(...x.map(A=>A.x+A.width)),bottom:Math.min(...x.map(A=>A.y+A.height))};if(C.right-C.x<=bs||C.bottom-C.y<=bs)continue;const T=ah(e,[],C);if(!T.length)continue;const k=x.map(A=>A.id).sort();t.push({kind:"group-stack-unreadable",groups:k,shapes:T})}for(const g of e.shapes.filter(v=>v.type==="bpmn:Group"))for(const v of e.shapes){if(v.container||v.attached||sl.has(v.type)||v.width<=0||v.height<=0)continue;const b=[["top",g.y,"h",g.x,g.x+g.width],["bottom",g.y+g.height,"h",g.x,g.x+g.width],["left",g.x,"v",g.y,g.y+g.height],["right",g.x+g.width,"v",g.y,g.y+g.height]];for(const[x,C,T,k,A]of b){const I=T==="h"?v.x:v.y,D=T==="h"?v.x+v.width:v.y+v.height;if(!(I<A&&k<D))continue;const L=T==="h"?v.y:v.x,z=T==="h"?v.y+v.height:v.x+v.width;if(!(L<C&&C<z))continue;const ne=Math.min(C-L,z-C);ne<UE||t.push({kind:"group-cuts-shape",group:g.id,shape:v.id,side:x,depth:ne})}}const l=e.shapes.filter(g=>g.container&&g.type!=="bpmn:Group"&&g.type!=="bpmn:Lane");for(const g of e.shapes.filter(v=>v.type==="bpmn:Group"))for(const v of l){const b=g.x<v.x+v.width&&v.x<g.x+g.width,x=g.y<v.y+v.height&&v.y<g.y+g.height,C=[["top",g.y,v.y,b],["bottom",g.y+g.height,v.y+v.height,b],["left",g.x,v.x,x],["right",g.x+g.width,v.x+v.width,x]];for(const[T,k,A,I]of C)I&&Math.abs(k-A)<=Xd&&t.push({kind:"group-on-container-boundary",group:g.id,container:v.id,side:T})}const p=e.shapes.filter(g=>g.type==="bpmn:Group");for(let g=0;g<p.length;g++)for(let v=g+1;v<p.length;v++){const b=p[g],x=p[v],C=b.x<x.x+x.width&&x.x<b.x+b.width,T=b.y<x.y+x.height&&x.y<b.y+b.height,k=[["x",b.x+b.width,x.x,T],["x",x.x+x.width,b.x,T],["y",b.y+b.height,x.y,C],["y",x.y+x.height,b.y,C]];for(const[A,I,D,L]of k)if(L&&Math.abs(I-D)<=Xd){t.push({kind:"group-on-group-boundary",groups:b.id<x.id?[b.id,x.id]:[x.id,b.id],axis:A});break}}for(let g=0;g<e.edges.length;g++)for(let v=g+1;v<e.edges.length;v++){const b=e.edges[g],x=e.edges[v],C=po(b,x);if(!C)continue;const T=b.id<x.id?[b.id,x.id]:[x.id,b.id];t.push({kind:C.kind==="opposite"?"edge-overlap-opposite":C.kind==="mixed"?"edge-overlap-mixed":"edge-overlap-unrelated",edges:T,axis:C.axis,length:Math.round(C.length)})}for(const g of e.edges){if(!g.label)continue;const v=_s(g,e.edges);v&&t.push({kind:"label-on-shared-segment",edge:g.id,other:v.other,axis:v.axis})}for(const g of e.edges){if(!g.label)continue;const v=nh(g,e);v&&t.push({kind:"label-over-line",edge:g.id,line:v})}const f=new Set(n.map(g=>g.id)),d=e.shapes.filter(g=>g.type==="bpmn:Participant"&&g.label);for(const g of[...n,...d.filter(v=>!f.has(v.id))]){if(!g.label)continue;const v=uh(g,e);v&&t.push({kind:"label-over-line",edge:g.id,line:v})}const m=new Set(e.shapes.filter(g=>g.type==="bpmn:TextAnnotation").map(g=>g.id));for(const g of d)for(const{owner:v,rect:b}of ho(e))v===g.id||m.has(v)||pl(g.label,b,fo)&&t.push({kind:"pool-name-over-label",pool:g.id,label:v});const h=ho(e);for(const g of n)if(g.type==="bpmn:TextAnnotation")for(const{owner:v,rect:b}of h)v!==g.id&&pl(g,b,fo)&&t.push({kind:"annotation-over-label",annotation:g.id,label:v});const y=new Map(e.shapes.map(g=>[g.id,g]));for(const g of n){const v=g.parent??i1(g,e,y);if(!v)continue;const b=y.get(v);!b||!b.container||QE(b,g,ZE)||t.push({kind:"shape-outside-container",shape:g.id,container:b.id})}return t.sort((g,v)=>hn(g).localeCompare(hn(v)))}const xt=e=>typeof e=="object"&&e!==null?e:void 0,Mt=e=>typeof e=="number"?e:0,Di=e=>{const t=xt(e);return typeof(t==null?void 0:t.id)=="string"?t.id:void 0};function r1(e){const t=xt(e);if(!t)return[];const n=[];for(const i of["sourceRef","targetRef"]){const r=t[i];for(const o of Array.isArray(r)?r:[r]){const a=Di(o);a&&n.push(a)}}return n}function o1(e){const t=xt(e);if(!t)return{};const n=Array.isArray(t.sourceRef)?void 0:Di(t.sourceRef),i=Array.isArray(t.targetRef)?void 0:Di(t.targetRef);return n&&i?{source:n,target:i}:{}}function a1(e,t){const n=xt(e.$parent);if(!n)return;const i=typeof n.$type=="string"?n.$type:"";if(i==="bpmn:Process"){const r=Di(n);return r?t.get(r):void 0}if(vs.has(i)&&i!=="bpmn:Lane"&&i!=="bpmn:Group")return Di(n)}function lh(e){var a,s,c,u,l;const t=[],n=[],i=((a=xt(e))==null?void 0:a.diagrams)??[],r=new Map,o=new Set;for(const p of((s=xt(e))==null?void 0:s.rootElements)??[]){const f=xt(p);if((f==null?void 0:f.$type)==="bpmn:Collaboration")for(const d of f.participants??[]){const m=xt(d),h=Di(m),y=Di(m==null?void 0:m.processRef);h&&y?r.set(y,h):h&&o.add(h)}}for(const p of i){const f=xt((c=xt(p))==null?void 0:c.plane),d=(f==null?void 0:f.planeElement)??[];for(const m of d){const h=xt(m);if(!h)continue;const y=xt(h.bpmnElement),g=typeof(y==null?void 0:y.id)=="string"?y.id:void 0;if(!g)continue;const v=typeof(y==null?void 0:y.$type)=="string"?y.$type:"",b=xt(h.bounds);if(b){const C=h.isExpanded===!1&&v!=="bpmn:Participant",T=xt((u=xt(h.label))==null?void 0:u.bounds),k={id:g,type:v,x:Mt(b.x),y:Mt(b.y),width:Mt(b.width),height:Mt(b.height),container:vs.has(v)&&!C,attached:(y==null?void 0:y.attachedToRef)!==void 0,...y?{parent:a1(y,r)}:{},...T?{label:{x:Mt(T.x),y:Mt(T.y),width:Mt(T.width),height:Mt(T.height)}}:{},...v==="bpmn:Group"?ch(sh(y)):{}},A=h.isHorizontal!==!1,I=typeof(y==null?void 0:y.name)=="string"?y.name:"";o.has(g)&&A&&I&&(k.label=cl(k,I)),t.push(k);continue}const x=h.waypoint;if(Array.isArray(x)){const C=xt((l=xt(h.label))==null?void 0:l.bounds);n.push({id:g,type:v,waypoints:x.map(T=>{var k,A;return{x:Mt((k=xt(T))==null?void 0:k.x),y:Mt((A=xt(T))==null?void 0:A.y)}}),endpoints:r1(y),...o1(y),...C?{label:{x:Mt(C.x),y:Mt(C.y),width:Mt(C.width),height:Mt(C.height)}}:{}})}}}return{shapes:t,edges:n}}function ph(e){return on(lh(e))}async function s1(e){const{definitions:t,warnings:n}=await ol(e);return{findings:ph(t),warnings:n}}function ot(e){var i;const t=[],n=[];for(const r of e.getAll()){const o=r;if(o.type==="label"||o.labelTarget)continue;const a=typeof o.type=="string"?o.type:"";if(a==="bpmn:Definitions"||a.startsWith("bpmndi:"))continue;const s=o.waypoints;if(s){const h=xt(o.label),y=Di(o.source),g=Di(o.target);n.push({id:o.id,type:a,waypoints:s.map(v=>({x:Mt(v.x),y:Mt(v.y)})),endpoints:[y,g].filter(v=>!!v),...y&&g?{source:y,target:g}:{},...h&&typeof h.x=="number"?{label:{x:h.x,y:Mt(h.y),width:Mt(h.width),height:Mt(h.height)}}:{}});continue}if(typeof o.x!="number"||typeof o.y!="number")continue;const c=xt(o.businessObject),u=xt(o.label);let l=xt(o.parent);for(;l&&l.type==="bpmn:Lane";)l=xt(l.parent);const p=typeof(l==null?void 0:l.type)=="string"?l.type:"",f=l&&vs.has(p)&&p!=="bpmn:Group"&&typeof l.id=="string"?l.id:void 0,d={id:o.id,type:a,x:o.x,y:o.y,width:Mt(o.width),height:Mt(o.height),container:vs.has(a)&&(a==="bpmn:Participant"||o.collapsed!==!0),attached:(c==null?void 0:c.attachedToRef)!==void 0,...f!==void 0?{parent:f}:{},...u&&typeof u.x=="number"?{label:{x:u.x,y:Mt(u.y),width:Mt(u.width),height:Mt(u.height)}}:{},...a==="bpmn:Group"?ch(sh(c)):{}},m=typeof(c==null?void 0:c.name)=="string"?c.name:"";a==="bpmn:Participant"&&!(c!=null&&c.processRef)&&m&&((i=xt(o.di))==null?void 0:i.isHorizontal)!==!1&&(d.label=cl(d,m)),t.push(d)}return{shapes:t,edges:n}}const c1={"bpmn:Participant":"participant","bpmn:Lane":"lane","bpmn:SequenceFlow":"sequenceFlow","bpmn:MessageFlow":"messageFlow","bpmn:DataStoreReference":"dataStore","bpmn:DataInputAssociation":"dataAssociation","bpmn:DataOutputAssociation":"dataAssociation","bpmn:TextAnnotation":"annotation","bpmn:Association":"association","bpmn:Group":"group"};function u1(e,t){const n=c1[e];return n||(e==="label"||e.startsWith("bpmndi:")?"other":e.startsWith("bpmn:")&&!("waypoints"in t&&t.waypoints)?"flowNode":"other")}function fh(e){let t=e.parent;for(;t;){if(t.type==="bpmn:Participant")return t.id;t=t.parent}}function dh(e){const t=()=>e.getAll().filter(n=>n.type!=="label"&&!("labelTarget"in n&&n.labelTarget));return{isCollaboration:()=>t().some(n=>n.type==="bpmn:Participant"),categoryOf:n=>{const i=e.get(n);if(!(!i||i.type==="label"))return u1(i.type,i)},lanesOf:n=>t().filter(i=>i.type==="bpmn:Lane"&&fh(i)===n).sort((i,r)=>i.y-r.y).map(i=>i.id),participantOf:n=>{const i=e.get(n);return i?fh(i):void 0},endpointsOf:n=>{var r,o;const i=e.get(n);if(!(!i||i.type==="label")&&"waypoints"in i)return{source:(r=i.source)==null?void 0:r.id,target:(o=i.target)==null?void 0:o.id}}}}const fl=20,l1=4,yt=(e,t)=>Math.abs(e-t)<.5;function Es(e,t,n,i=fl){if(yt(e.y,t.y)&&!yt(e.x,t.x)){const r=Math.min(e.x,t.x),o=Math.max(e.x,t.x);if(!(r<n.x-i&&n.x+n.width+i<o))return null;const a=e.x<t.x?n.x-i:n.x+n.width+i,s=e.x<t.x?n.x+n.width+i:n.x-i,c=u=>[{x:a,y:e.y},{x:a,y:u},{x:s,y:u},{x:s,y:e.y}];return[c(n.y-i),c(n.y+n.height+i)]}if(yt(e.x,t.x)&&!yt(e.y,t.y)){const r=Math.min(e.y,t.y),o=Math.max(e.y,t.y);if(!(r<n.y-i&&n.y+n.height+i<o))return null;const a=e.y<t.y?n.y-i:n.y+n.height+i,s=e.y<t.y?n.y+n.height+i:n.y-i,c=u=>[{x:e.x,y:a},{x:u,y:a},{x:u,y:s},{x:e.x,y:s}];return[c(n.x-i),c(n.x+n.width+i)]}return null}function hh(e,t,n,i=fl){if(n.length<2)return null;if(yt(e.y,t.y)&&!yt(e.x,t.x)){const r=Math.min(e.x,t.x),o=Math.max(e.x,t.x),a=Math.min(...n.map(d=>d.x))-i,s=Math.max(...n.map(d=>d.x+d.width))+i;if(!(r<a&&s<o))return null;const c=e.x<t.x?a:s,u=e.x<t.x?s:a,l=Math.min(...n.map(d=>d.y))-i,p=Math.max(...n.map(d=>d.y+d.height))+i,f=d=>[{x:c,y:e.y},{x:c,y:d},{x:u,y:d},{x:u,y:e.y}];return[f(l),f(p)]}if(yt(e.x,t.x)&&!yt(e.y,t.y)){const r=Math.min(e.y,t.y),o=Math.max(e.y,t.y),a=Math.min(...n.map(d=>d.y))-i,s=Math.max(...n.map(d=>d.y+d.height))+i;if(!(r<a&&s<o))return null;const c=e.y<t.y?a:s,u=e.y<t.y?s:a,l=Math.min(...n.map(d=>d.x))-i,p=Math.max(...n.map(d=>d.x+d.width))+i,f=d=>[{x:e.x,y:c},{x:d,y:c},{x:d,y:u},{x:e.x,y:u}];return[f(l),f(p)]}return null}function mh(e,t,n=fl){if(e.length!==4)return null;const[i,r,o,a]=e;if(yt(i.y,r.y)&&yt(r.x,o.x)&&yt(o.y,a.y)){const s=c=>[i,{x:c,y:i.y},{x:c,y:a.y},a];return[s(t.x-n),s(t.x+t.width+n)]}if(yt(i.x,r.x)&&yt(r.y,o.y)&&yt(o.x,a.x)){const s=c=>[i,{x:i.x,y:c},{x:a.x,y:c},a];return[s(t.y-n),s(t.y+t.height+n)]}return null}function Ss(e,t){if(e.endpoints.length!==2)return[];const n=t.find(p=>p.id===e.endpoints[0]),i=t.find(p=>p.id===e.endpoints[1]);if(!n||!i)return[];if(i.x<=n.x+n.width)return[];const r=n.y+n.height/2,o=i.y+i.height/2;if(r>=i.y&&r<=i.y+i.height)return[];const a=i.x+i.width/2,s=n.x+n.width/2,c=r>o,u=[{x:n.x+n.width,y:r},{x:a,y:r},{x:a,y:c?i.y+i.height:i.y}],l=[{x:s,y:c?n.y:n.y+n.height},{x:s,y:o},{x:i.x,y:o}];return[u,l]}const gh=30,p1=[0,-25,25,-40,40];function f1(e,t){if(e.type!=="bpmn:MessageFlow"||e.endpoints.length!==2)return[];const n=t.find(f=>f.id===e.endpoints[0]),i=t.find(f=>f.id===e.endpoints[1]);if(!n||!i)return[];const r=n.y+n.height/2,o=i.y+i.height/2;if(i.y<n.y+n.height&&i.y+i.height>n.y)return[];const a=o<r,s=a?n.y+n.height:n.y,c=a?s+gh:s-gh,u=a?i.y+i.height:i.y,l=n.x+n.width/2,p=i.x+i.width/2;return p1.map(f=>[{x:l,y:s},{x:l,y:c},{x:p+f,y:c},{x:p+f,y:u}])}const dl=(e,t,n)=>[...e.slice(0,t+1),...n,...e.slice(t+1)],mo=(e,t,n)=>rn({...e,waypoints:t},n).length;function hl(e,t,n,i){let r=[...e.waypoints],o=mo(e,r,t);if(o===0)return null;let a=!1;for(const p of Ss(e,t))if(mo(e,p,t)===0)return p;const s=(i??[]).filter(p=>p.id!==e.id).flatMap(xn),c=p=>xn({...e,waypoints:p}).some(f=>xs(f,s).length>0),u=f1(e,t).filter(p=>mo(e,p,t)===0);if(u.length)return u.find(p=>!c(p))??u[0];const l=p=>!n||p.every(f=>f.x>=n.x&&f.x<=n.x+n.width&&f.y>=n.y&&f.y<=n.y+n.height);if(e.endpoints.length===2&&r.length>2){const p=t.find(d=>d.id===e.endpoints[0]),f=t.find(d=>d.id===e.endpoints[1]);if(p&&f&&yt(p.y+p.height/2,f.y+f.height/2)){const d=[r[0],r[r.length-1]];if(yt(d[0].y,d[1].y)&&!yt(d[0].x,d[1].x)){const m=t.filter(v=>!e.endpoints.includes(v.id)&&rn({...e,waypoints:d},[v]).length>0),h=m.length>=2?hh(d[0],d[1],m):null,g=(h?h.map(v=>[d[0],...v,d[1]]):m.length===1?(Es(d[0],d[1],m[0])??[]).map(v=>[d[0],...v,d[1]]):m.length===0?[d]:[]).filter(v=>mo(e,v,t)===0&&v.length<=r.length).sort((v,b)=>Number(l(b))-Number(l(v)));if(g.length)return g.find(v=>!c(v))??g[0]}}}for(let p=0;p+1<r.length;p++){const f=r[p],d=r[p+1],m=t.filter(g=>!e.endpoints.includes(g.id)&&rn({...e,waypoints:[f,d]},[g]).length>0);if(m.length<2)continue;const h=hh(f,d,m);if(!h)continue;const y=h.map(g=>dl(r,p,g)).filter(g=>mo(e,g,t)===0).sort((g,v)=>Number(l(v))-Number(l(g)));if(y.length)return y.find(g=>!c(g))??y[0]}for(let p=0;p<l1&&o>0;p++){let f=!1;for(let d=0;d+1<r.length&&!f;d++){const m=r[d],h=r[d+1];for(const y of t){if(e.endpoints.includes(y.id)||rn({...e,waypoints:[m,h]},[y]).length===0)continue;const g=Es(m,h,y),v=g?g.map(x=>dl(r,d,x)):mh(r,y)??[];if(!v.length)continue;const b=[...v].sort((x,C)=>Number(l(C))-Number(l(x)));for(const x of b){const C=mo(e,x,t);if(C<o){r=x,o=C,f=!0,a=!0;break}}if(f)break}}if(!f)break}return a&&o===0?r:null}function ml(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=Wn(o),s=new Set,c=on(o).filter(l=>l.kind==="edge-crosses-shape"&&!t.has(hn(l)));if(!c.length)return s;const u=new Map;for(const l of c){if(l.kind!=="edge-crosses-shape"||u.has(l.edge))continue;const p=o.edges.find(f=>f.id===l.edge);p&&u.set(l.edge,p)}for(const[l,p]of u){if(n&&!n.has(l))continue;const f=i.get(l);if(!f)continue;const d=f.parent,m=d&&typeof d.x=="number"&&typeof d.width=="number"?{x:d.x,y:d.y,width:d.width,height:d.height}:void 0,h=hl(p,a,m,o.edges);if(!h){rn(p,a).some(b=>b.type==="bpmn:TextAnnotation")&&s.add(l);continue}const y=o.edges.filter(b=>b.id!==l),g=Gn(p,y);Gn({...p,waypoints:h},y)>g||r.updateWaypoints(f,h)}return s}const d1=e=>{const t=[];for(let n=0;n+1<e.waypoints.length;n++){const i=e.waypoints[n],r=e.waypoints[n+1];t.push({id:`__ghost:${e.id}:${n}`,type:"bpmn:Task",x:Math.min(i.x,r.x)-1,y:Math.min(i.y,r.y)-1,width:Math.max(2,Math.abs(r.x-i.x)+2),height:Math.max(2,Math.abs(r.y-i.y)+2),container:!1,attached:!1})}return t},gl=(e,t)=>ia(e,[t])>0;function yh(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=Wn(o);let s=o;const c=new Set(on(o).map(hn));for(const[u,l]of ws(o))if(!t.has(`${u}|${l}`))for(const[p,f]of[[u,l],[l,u]]){if(n.has(p))continue;const d=s.edges.find(I=>I.id===p),m=s.edges.find(I=>I.id===f);if(!d||!m)continue;const h=i.get(p);if(!h)continue;const y=h.parent,g=y&&typeof y.x=="number"&&typeof y.width=="number"?{x:y.x,y:y.y,width:y.width,height:y.height}:void 0,v=d1(m),b=[...Ss(d,a)??[]],x=hl(d,[...a,...v],g,o.edges);x&&b.push(x);for(let I=0;I+1<d.waypoints.length;I++)for(const D of v)for(const L of Es(d.waypoints[I],d.waypoints[I+1],D)??[])b.push(dl(d.waypoints,I,L));const C=s.edges.filter(I=>I.id!==p),T=I=>({...s,edges:s.edges.map(D=>D.id===p?{...D,waypoints:I}:D)}),k=I=>!g||I.every(D=>D.x>=g.x&&D.x<=g.x+g.width&&D.y>=g.y&&D.y<=g.y+g.height),A=b.find(I=>{const D={...d,waypoints:I};return gl(D,m)||!k(I)||C.some(L=>L.id!==f&&!gl(d,L)&&gl(D,L))?!1:on(T(I)).every(L=>c.has(hn(L)))});if(A){r.updateWaypoints(h,A),s=T(A);break}}}const h1=10;function vh(e,t){if(e.parent){const r=t.find(o=>o.id===e.parent);if(r)return r}const n=e.x+e.width/2,i=e.y+e.height/2;return t.find(r=>n>=r.x&&n<=r.x+r.width&&i>=r.y&&i<=r.y+r.height)}function bh(e,t){if(e.waypoints.length<2||e.endpoints.length!==2)return null;const n=t.shapes.filter(z=>z.type==="bpmn:Participant"&&z.container),i=t.shapes.find(z=>z.id===e.endpoints[0]),r=t.shapes.find(z=>z.id===e.endpoints[1]);if(!i||!r)return null;const o=vh(i,n),a=vh(r,n);if(!o||!a||o.id===a.id)return null;const s=a.y>o.y,c=s?o:a,u=s?a:o,l=n.filter(z=>z.id!==o.id&&z.id!==a.id&&z.y>=c.y+c.height&&z.y+z.height<=u.y).sort((z,ne)=>z.y-ne.y);if(!l.length)return null;const p=l[0],f=l[l.length-1],d=(c.y+c.height+p.y)/2,m=(f.y+f.height+u.y)/2,h=s?d:m,y=s?m:d,g=e.waypoints[0],v=e.waypoints[e.waypoints.length-1],b=Wn(t),x=t.edges.filter(z=>z.id!==e.id),C=Vn(e,x),T=rn(e,b).length;if(C===0&&T===0||T===0&&e.waypoints.length===2)return null;const k=Math.min(...l.map(z=>z.x)),A=Math.max(...l.map(z=>z.x+z.width)),I=(g.x+v.x)/2,D=z=>z.filter((ne,me)=>me===0||!(yt(ne.x,z[me-1].x)&&yt(ne.y,z[me-1].y)));let L;for(let z=k;z<=A;z+=h1){const ne=D([g,{x:g.x,y:h},{x:z,y:h},{x:z,y},{x:v.x,y},v]),me={...e,waypoints:ne};if(rn(me,b).length>0)continue;const Ue=Vn(me,x),je=Math.abs(z-I);(!L||Ue<L.cross||Ue===L.cross&&je<L.detour)&&(L={pts:ne,cross:Ue,detour:je})}return L&&(T>0?L.cross<=C:L.cross<C)?L.pts:null}function xh(e,t){const{elementRegistry:n}=e,i=e.modeling,r=ot(n);for(const o of r.edges){if(o.type!=="bpmn:MessageFlow"||t.has(o.id))continue;const a=ot(n),s=a.edges.find(l=>l.id===o.id);if(!s)continue;const c=bh(s,a);if(!c)continue;const u=n.get(o.id);u&&i.updateWaypoints(u,c)}}const gi=[25,-25,40,-40],go=35;function m1(e,t){const n=e.x+e.width/2,i=t.x+t.width/2,r=[];for(const o of[!0,!1]){const a=o?e.y:e.y+e.height,s=o?t.y:t.y+t.height,c=o?Math.min(e.y,t.y)-go:Math.max(e.y+e.height,t.y+t.height)+go;for(const u of[0,...gi])if(!(Math.abs(u)>=e.width/2-5))for(const l of[0,...gi]){if(Math.abs(l)>=t.width/2-5)continue;const p=n+u,f=i+l;r.push({pts:[{x:p,y:a},{x:p,y:c},{x:f,y:c},{x:f,y:s}],cost:Math.abs(l)+Math.abs(u)})}}return r}function Rs(e,t){if(e.type!=="bpmn:SequenceFlow")return[];const n=t.get(e.endpoints[0]??""),i=t.get(e.endpoints[1]??"");if(!n||!i)return[];if(i.x+i.width>n.x)return[];const r=n.y+n.height/2;if(r>=i.y&&r<=i.y+i.height)return m1(n,i);const o=i.x+i.width/2,a=n.x+n.width/2,s=r<i.y,c=s?i.y:i.y+i.height,u=s?n.y:n.y+n.height,l=s?n.y-go:n.y+n.height+go,p=[];for(const v of[0,...gi]){if(Math.abs(v)>=i.width/2-5)continue;const b=o+v;p.push({pts:[{x:n.x,y:r},{x:b,y:r},{x:b,y:c}],cost:Math.abs(v)});for(const x of[0,...gi]){if(Math.abs(x)>=n.width/2-5)continue;const C=a+x;p.push({pts:[{x:C,y:u},{x:C,y:l},{x:b,y:l},{x:b,y:c}],cost:Math.abs(v)+Math.abs(x)})}}const f=50,d=i.y+i.height/2,m=s?n.y+n.height:n.y;for(const v of[0,...gi]){if(Math.abs(v)>=n.width/2-5)continue;const b=a+v;p.push({pts:[{x:b,y:m},{x:b,y:d},{x:i.x+i.width,y:d}],cost:f+Math.abs(v)})}const h=60,y=s?i.y+i.height:i.y,g=s?i.y+i.height+go:i.y-go;for(const v of[0,...gi]){if(Math.abs(v)>=i.width/2-5)continue;const b=o+v;for(const x of[0,...gi]){if(Math.abs(x)>=n.width/2-5)continue;const C=a+x;p.push({pts:[{x:C,y:m},{x:C,y:g},{x:b,y:g},{x:b,y}],cost:h+Math.abs(v)+Math.abs(x)})}}return p}const Cs=30;function _h(e,t){for(let n=1;n<e.length-2;n++){const i=e[n],r=e[n+1],o=yt(i.y,r.y)&&!yt(i.x,r.x),a=yt(i.x,r.x)&&!yt(i.y,r.y);if(!(!o&&!a))for(const s of t)if(o){const c=Math.min(i.x,r.x);if(Math.max(i.x,r.x)<=s.x||c>=s.x+s.width)continue;if(Math.abs(i.y-s.y)<Cs||Math.abs(i.y-(s.y+s.height))<Cs)return!0}else{const c=Math.min(i.y,r.y);if(Math.max(i.y,r.y)<=s.y||c>=s.y+s.height)continue;if(Math.abs(i.x-s.x)<Cs||Math.abs(i.x-(s.x+s.width))<Cs)return!0}}return!1}const Ps=40;function g1(e,t,n){let i=0;for(const r of t){if(r.container||n.includes(r.id))continue;const o=r.x-Ps,a=r.x+r.width+Ps,s=r.y-Ps,c=r.y+r.height+Ps;for(let u=1;u<e.length-2;u++){const l=e[u],p=e[u+1],f={x:Math.min(l.x,p.x),y:Math.min(l.y,p.y)},d={x:Math.max(l.x,p.x),y:Math.max(l.y,p.y)};if(f.x<a&&d.x>o&&f.y<c&&d.y>s){i++;break}}}return i}function wh(e,t){if(e.type!=="bpmn:SequenceFlow")return null;const n=t.shapes.filter(T=>T.container),i=new Map(t.shapes.map(T=>[T.id,T])),r=Wn(t),o=t.edges.filter(T=>T.id!==e.id),a=Gn(e,o),s=Vn(e,o),c=T=>g1(T,t.shapes,e.endpoints)+(_h(T,n)?1:0),u=c(e.waypoints),l=T=>{if(!T)return;const k=T.x+T.width/2,A=T.y+T.height/2;return n.find(I=>I.type==="bpmn:Lane"&&k>=I.x&&k<=I.x+I.width&&A>=I.y&&A<=I.y+I.height)},p=l(i.get(e.endpoints[0]??"")),f=l(i.get(e.endpoints[1]??"")),d=!!p&&!!f&&p.id!==f.id,m=T=>{if(!d||!f)return!1;for(let k=1;k<T.length-2;k++){const A=T[k],I=T[k+1];if(yt(A.y,I.y)&&!yt(A.x,I.x)&&A.y>f.y&&A.y<f.y+f.height)return!0}return!1},h=m(e.waypoints),g=(T=>{if(!T)return;const k=T.x+T.width/2,A=T.y+T.height/2;return n.filter(I=>I.type==="bpmn:Participant"&&k>=I.x&&k<=I.x+I.width&&A>=I.y&&A<=I.y+I.height).sort((I,D)=>I.width*I.height-D.width*D.height)[0]})(i.get(e.endpoints[0]??"")),v=T=>{if(!g)return 0;let k=0;for(let A=1;A<T.length-1;A++){const I=T[A];(I.x<g.x||I.x>g.x+g.width||I.y<g.y||I.y>g.y+g.height)&&k++}return k},b=v(e.waypoints);if(!_h(e.waypoints,n)&&!(d&&!h)&&b===0)return null;const x=T=>T.reduce((k,A,I)=>I?k+Math.abs(A.x-T[I-1].x)+Math.abs(A.y-T[I-1].y):0,0);let C;for(const{pts:T,cost:k}of Rs(e,i)){const A={...e,waypoints:T};if(rn(A,r).length>0)continue;const I=Gn(A,o);if(I>a)continue;const D=v(T);if(D>b)continue;const L=D<b&&I===0;if(!L&&Vn(A,o)>s)continue;const z=c(T),ne=m(T);if(!L&&!(ne&&!h)&&z>=u)continue;const Ue=ne?0:1,je=x(T);(!C||D<C.out||D===C.out&&(Ue<C.lane||Ue===C.lane&&(I<C.opp||I===C.opp&&(z<C.sc||z===C.sc&&(k<C.cost||k===C.cost&&je<C.len)))))&&(C={pts:T,out:D,sc:z,lane:Ue,opp:I,cost:k,len:je})}return(C==null?void 0:C.pts)??null}function y1(e,t){const{elementRegistry:n}=e,i=e.modeling,r=ot(n).edges.filter(o=>!t.has(o.id)&&o.waypoints.length>=4).map(o=>o.id).sort();for(const o of r){const a=ot(n),s=a.edges.find(d=>d.id===o);if(!s||s.waypoints.length<4)continue;const c=Wn(a),u=a.edges.filter(d=>d.id!==o),l=rn(s,c).length,p=Gn(s,u),f=Vn(s,u);for(const d of Ss(s,a.shapes)){if(d.length>=s.waypoints.length)continue;const m={...s,waypoints:d};if(rn(m,c).length>l||Gn(m,u)>p||Vn(m,u)>f)continue;const h=n.get(o);h&&i.updateWaypoints(h,d);break}}}function Eh(e,t){const{elementRegistry:n}=e,i=e.modeling,r=ot(n).edges.filter(o=>o.type==="bpmn:SequenceFlow"&&!t.has(o.id)).map(o=>o.id).sort();for(const o of r){const a=ot(n),s=a.edges.find(l=>l.id===o);if(!s)continue;const c=wh(s,a);if(!c)continue;const u=n.get(o);u&&i.updateWaypoints(u,c)}}function yl(e,t){const n=e.waypoints;if(n.length<3)return[];const i=[],r=t.get(e.endpoints[0]??""),o=t.get(e.endpoints[1]??""),a=yt(n[0].x,n[1].x)&&!yt(n[0].y,n[1].y),s=yt(n[n.length-1].x,n[n.length-2].x)&&!yt(n[n.length-1].y,n[n.length-2].y);for(const c of gi){if(a&&r&&Math.abs(c)<r.width/2-5){const u=n.map(l=>({...l}));u[0].x+=c,u[1].x+=c,i.push({pts:u,cost:Math.abs(c)})}if(s&&o&&Math.abs(c)<o.width/2-5){const u=n.map(l=>({...l}));u[u.length-1].x+=c,u[u.length-2].x+=c,i.push({pts:u,cost:Math.abs(c)})}}return i}function v1(e,t){if(e.type!=="bpmn:SequenceFlow")return[];const n=t.get(e.endpoints[0]??""),i=t.get(e.endpoints[1]??"");if(!n||!i)return[];if(Math.min(n.x+n.width,i.x+i.width)-Math.max(n.x,i.x)>=1)return[];const r=i.y+i.height<=n.y,o=n.y+n.height<=i.y;if(!r&&!o)return[];const a=i.x>=n.x+n.width,s=i.x+i.width<=n.x;if(!a&&!s)return[];const c=n.x+n.width/2,u=n.y+n.height/2,l=i.x+i.width/2,p=i.y+i.height/2,f=a?n.x+n.width:n.x,d=o?n.y+n.height:n.y,m=a?i.x:i.x+i.width,h=o?i.y:i.y+i.height,y=[];for(const g of[0,...gi])Math.abs(g)<i.width/2-5&&y.push({pts:[{x:f,y:u},{x:l+g,y:u},{x:l+g,y:h}],cost:Math.abs(g)}),Math.abs(g)<i.height/2-5&&y.push({pts:[{x:c,y:d},{x:c,y:p+g},{x:m,y:p+g}],cost:Math.abs(g)});return y}function vl(e,t){if(e.type!=="bpmn:SequenceFlow")return[];const n=t.get(e.endpoints[0]??""),i=t.get(e.endpoints[1]??"");if(!n||!i)return[];const r=Math.max(n.x,i.x),o=Math.min(n.x+n.width,i.x+i.width);if(o-r<1)return[];const a=i.y+i.height<=n.y,s=n.y+n.height<=i.y;if(!a&&!s)return[];const c=a?n.y:n.y+n.height,u=a?i.y+i.height:i.y,l=(r+o)/2,p=[];for(const f of[0,...gi]){const d=l+f;d<=r||d>=o||p.push({pts:[{x:d,y:c},{x:d,y:u}],cost:Math.abs(f)})}return p}function Sh(e,t){const n=new Map(t.shapes.map(d=>[d.id,d])),i=Wn(t),r=t.edges.filter(d=>d.id!==e.id),o=Gn(e,r);if(o===0)return null;const a=Vn(e,r);let s;const c=d=>d.reduce((m,h,y)=>y?m+Math.abs(h.x-d[y-1].x)+Math.abs(h.y-d[y-1].y):0,0),u=3,l=d=>{const m=d[0],h=d[d.length-1],y=Math.hypot(h.x-m.x,h.y-m.y);return y>=1&&c(d)/y>=u?1:0},p=l(e.waypoints),f=[...Rs(e,n),...vl(e,n),...yl(e,n)];for(const{pts:d,cost:m}of f){const h={...e,waypoints:d};if(rn(h,i).length>0)continue;const y=Gn(h,r),g=Vn(h,r),v=o-y+(p-l(d));if(y>=o||g-a>v)continue;const b=c(d);(!s||y<s.opposite||y===s.opposite&&(g<s.cross||g===s.cross&&(m<s.cost||m===s.cost&&b<s.len)))&&(s={pts:d,opposite:y,cross:g,cost:m,len:b})}return(s==null?void 0:s.pts)??null}function Rh(e,t){var i;let n=0;for(const r of t)r.id!==e.id&&((i=po(e,r))==null?void 0:i.kind)==="unrelated"&&n++;return n}function b1(e,t){const n=new Map(t.shapes.map(f=>[f.id,f])),i=Wn(t),r=t.edges.filter(f=>f.id!==e.id),o=Rh(e,r);if(o===0)return null;const a=Gn(e,r),s=Vn(e,r),c=f=>f.reduce((d,m,h)=>h?d+Math.abs(m.x-f[h-1].x)+Math.abs(m.y-f[h-1].y):0,0),u=2;let l;const p=[...Rs(e,n),...vl(e,n),...v1(e,n),...yl(e,n)];for(const{pts:f,cost:d}of p){const m={...e,waypoints:f};if(rn(m,i).length>0)continue;const h=Rh(m,r);if(h>=o)continue;const y=Gn(m,r);if(y-h>a-o)continue;const g=Vn(m,r);if(g-s>(o-h)*u)continue;const v=c(f);(!l||h<l.fake||h===l.fake&&(y<l.unreadable||y===l.unreadable&&(g<l.cross||g===l.cross&&(d<l.cost||d===l.cost&&v<l.length))))&&(l={pts:f,fake:h,unreadable:y,cross:g,cost:d,length:v})}return(l==null?void 0:l.pts)??null}function Ch(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=on(ot(i)).filter(s=>s.kind==="edge-overlap-unrelated"&&!t.has(hn(s)));if(!o.length)return;const a=new Set;for(const s of o)if(s.kind==="edge-overlap-unrelated")for(const c of s.edges)n.has(c)||a.add(c);for(const s of[...a].sort()){const c=ot(i),u=c.edges.find(f=>f.id===s);if(!u)continue;const l=b1(u,c);if(!l)continue;const p=i.get(s);p&&r.updateWaypoints(p,l)}}function Ph(e,t){const n=t.get(e.endpoints[0]??""),i=t.get(e.endpoints[1]??"");return!!n&&!!i&&i.x+i.width>n.x}function Ah(e,t,n){var u;if(e.type!=="bpmn:SequenceFlow"||t.type!=="bpmn:SequenceFlow"||((u=po(e,t))==null?void 0:u.kind)!=="opposite")return!1;const[i,r]=e.endpoints,[o,a]=t.endpoints,s=[i,r].filter(l=>l&&(l===o||l===a)).length;return!(!!r&&r===o||!!a&&a===i)||s!==1?!1:Ph(e,n)&&Ph(t,n)}function Th(e,t,n){let i=0;for(const r of t)r.id!==e.id&&Ah(e,r,n)&&i++;return i}function x1(e,t){const n=new Map(t.shapes.map(f=>[f.id,f])),i=Wn(t),r=t.edges.filter(f=>f.id!==e.id),o=Th(e,r,n);if(o===0)return null;const a=Gn(e,r),s=Vn(e,r),c=f=>f.reduce((d,m,h)=>h?d+Math.abs(m.x-f[h-1].x)+Math.abs(m.y-f[h-1].y):0,0),u=2;let l;const p=[...Rs(e,n),...vl(e,n),...yl(e,n)];for(const{pts:f,cost:d}of p){const m={...e,waypoints:f};if(rn(m,i).length>0)continue;const h=Th(m,r,n);if(h>=o)continue;const y=Gn(m,r);if(y-h>a-o)continue;const g=Vn(m,r);if(g-s>(o-h)*u)continue;const v=c(f);(!l||h<l.chain||h===l.chain&&(y<l.unreadable||y===l.unreadable&&(g<l.cross||g===l.cross&&(d<l.cost||d===l.cost&&v<l.length))))&&(l={pts:f,chain:h,unreadable:y,cross:g,cost:d,length:v})}return(l==null?void 0:l.pts)??null}function _1(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=new Map(o.shapes.map(u=>[u.id,u])),s=on(o).filter(u=>u.kind==="edge-overlap-opposite"&&!t.has(hn(u)));if(!s.length)return;const c=new Set;for(const u of s){if(u.kind!=="edge-overlap-opposite")continue;const[l,p]=u.edges.map(f=>o.edges.find(d=>d.id===f));if(!(!l||!p||!Ah(l,p,a)))for(const f of u.edges)n.has(f)||c.add(f)}for(const u of[...c].sort()){const l=ot(i),p=l.edges.find(m=>m.id===u);if(!p)continue;const f=x1(p,l);if(!f)continue;const d=i.get(u);d&&r.updateWaypoints(d,f)}}function Mh(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=on(o).filter(l=>ul(l)&&!t.has(hn(l)));if(!a.length)return;const s=new Set;for(const l of a)if(ul(l))for(const p of l.edges)n.has(p)||s.add(p);const c=l=>{var p;return((p=o.edges.find(f=>f.id===l))==null?void 0:p.type)??""},u=[...s].sort((l,p)=>{const f=c(l)==="bpmn:SequenceFlow"?0:1,d=c(p)==="bpmn:SequenceFlow"?0:1;return f!==d?f-d:l.localeCompare(p)});for(const l of u){const p=ot(i),f=p.edges.find(h=>h.id===l);if(!f)continue;const d=Sh(f,p);if(!d)continue;const m=i.get(l);m&&r.updateWaypoints(m,d)}}const w1=10,E1=(e,t)=>e.x<t.x+t.width&&t.x<e.x+e.width&&e.y<t.y+t.height&&t.y<e.y+e.height;function kh(e,t){const n=e.label;if(!n)return null;const i=t.edges.filter(a=>a.id!==e.id);if(!_s(e,i))return null;const r=Wn(t),o=i.flatMap(xn);for(const a of xn(e)){let s=[[a.lo,a.hi]];for(const[d,m]of xs(a,o))s=s.flatMap(([h,y])=>{const g=[];return d>h&&g.push([h,Math.min(y,d)]),m<y&&g.push([Math.max(h,m),y]),g.filter(([v,b])=>b>v)});const c=a.axis==="h"?n.width:n.height,u=s.find(([d,m])=>m-d>=c+w1*2);if(!u)continue;const l=(u[0]+u[1])/2,p=a.axis==="h"?{x:l,y:a.at-eh}:{x:a.at+kn+n.width/2,y:l},f={x:p.x-n.width/2,y:p.y-n.height/2,width:n.width,height:n.height};if(!_s({...e,label:f},i)&&!r.some(d=>!e.endpoints.includes(d.id)&&E1(f,d)))return f}return null}const kn=8;function Oh(e,t){const n=e.label;if(!n)return null;const i=xn(e);if(!i.length)return null;const r=n.x+n.width/2,o=n.y+n.height/2,a=f=>{const d=f.axis==="h"?r:o,m=f.axis==="h"?o-f.at:r-f.at,h=d<f.lo?f.lo-d:d>f.hi?d-f.hi:0;return Math.hypot(m,h)},s=i.reduce((f,d)=>a(d)<a(f)?d:f,i[0]),c=[...i,...t.edges.filter(f=>f.id!==e.id).flatMap(xn),...t.shapes.filter(f=>f.container).flatMap(na)],u=f=>!c.some(d=>Oi(f,d));if(u(n))return null;const l=(s.axis==="v"?n.height:n.width)+kn,p=[0,-l,l,-2*l,2*l];if(s.axis==="v")for(const f of[s.at+kn,s.at-kn-n.width])for(const d of p){const m=n.y+d;if(m<s.lo||m+n.height>s.hi)continue;const h={...n,x:f,y:m};if(u(h))return h}else for(const f of[s.at-kn-n.height,s.at+kn])for(const d of p){const m=n.x+d;if(m<s.lo||m+n.width>s.hi)continue;const h={...n,x:m,y:f};if(u(h))return h}return null}function Dh(e,t){const{elementRegistry:n}=e,i=e.modeling,r=ot(n);for(const o of r.edges){if(!o.label||t.has(o.id))continue;const a=Oh(o,r);if(!a)continue;const s=n.get(o.id),c=s==null?void 0:s.label;c&&i.moveElements([c],{x:a.x-c.x,y:a.y-c.y})}}function Lh(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=on(o).filter(s=>s.kind==="label-on-shared-segment"&&!t.has(hn(s)));for(const s of a){if(s.kind!=="label-on-shared-segment"||n.has(s.edge))continue;const c=o.edges.find(f=>f.id===s.edge);if(!c)continue;const u=kh(c,o);if(!u)continue;const l=i.get(s.edge),p=l==null?void 0:l.label;p&&r.moveElements([p],{x:u.x-p.x,y:u.y-p.y})}}function Ih(e,t){const n=e.label;if(!n)return null;const i=[...t.edges.flatMap(xn),...t.shapes.filter(f=>f.container).flatMap(na)],r=i.filter(f=>Oi(n,f));if(!r.length)return null;const o=t.shapes.filter(f=>!f.container&&f.id!==e.id),a=ho(t).filter(f=>f.owner!==e.id).map(f=>f.rect),s=(f,d)=>f.x<d.x+d.width&&d.x<f.x+f.width&&f.y<d.y+d.height&&d.y<f.y+f.height,c=f=>!i.some(d=>Oi(f,d))&&!o.some(d=>s(f,d))&&!a.some(d=>s(f,d)),u=[];for(const f of r)f.axis==="h"?u.push({...n,y:f.at-kn-n.height},{...n,y:f.at+kn}):u.push({...n,x:f.at-kn-n.width},{...n,x:f.at+kn});const l=e.x+e.width/2,p=e.y+e.height/2;return u.push({...n,x:l-n.width/2,y:e.y+e.height+kn},{...n,x:l-n.width/2,y:e.y-kn-n.height},{...n,x:e.x+e.width+kn,y:p-n.height/2},{...n,x:e.x-kn-n.width,y:p-n.height/2}),u.find(c)??null}function Bh(e,t){const{elementRegistry:n}=e,i=e.modeling,r=ot(n);for(const o of r.shapes){if(o.container||!o.label||t.has(o.id))continue;const a=Ih(o,ot(n));if(!a)continue;const s=n.get(o.id),c=s==null?void 0:s.label;c&&i.moveElements([c],{x:a.x-c.x,y:a.y-c.y})}}const S1=/^[\p{L}_][\p{L}\p{N}_.\-]*$/u,Nh=new Set(["sequenceFlow","messageFlow","dataAssociation","association"]),$h={"participant.add":[{path:"participant",shape:["id"]},{path:"participant.lanes[]",shape:["id"],optional:!0}],"participant.update":[{path:"id",shape:null},{path:"lanes[]",shape:["id"],optional:!0}],"node.add":[{path:"node",shape:["id","type"]}],"node.update":[{path:"id",shape:null}],"sequenceFlow.add":[{path:"flow",shape:["id","source","target"]}],"sequenceFlow.update":[{path:"id",shape:null}],"messageFlow.add":[{path:"flow",shape:["id","source","target"]}],"messageFlow.update":[{path:"id",shape:null}],"dataStore.add":[{path:"dataStore",shape:["id"]},{path:"associations[]",shape:["source","target"],optional:!0}],"dataStore.update":[{path:"id",shape:null}],"dataAssociation.add":[{path:"association",shape:["source","target"]}],"association.add":[{path:"association",shape:["source","target"]}],"annotation.add":[{path:"annotation",shape:["id","text"]},{path:"association",shape:["source","target"],optional:!0},{path:"placement",shape:["anchor","side"],optional:!0}],"annotation.update":[{path:"id",shape:null},{path:"placement",shape:["anchor","side"],optional:!0}],"group.add":[{path:"group",shape:["id"]},{path:"group.members[]",shape:null,optional:!0}],"group.update":[{path:"id",shape:null},{path:"members[]",shape:null,optional:!0}],"element.remove":[{path:"id",shape:null}]},As=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),bl=e=>typeof e=="string"&&e!=="";function R1(e){const t=[];function n(i,r,o,a){if(a===null){bl(o)||t.push({kind:"payload-invalid",opIndex:i,field:r});return}if(!As(o)){t.push({kind:"payload-invalid",opIndex:i,field:r});return}for(const s of a)bl(o[s])||t.push({kind:"payload-invalid",opIndex:i,field:`${r}.${s}`})}return e.forEach((i,r)=>{var o,a;if(!As(i)||!bl(i.kind)||!(i.kind in $h)){t.push({kind:"payload-invalid",opIndex:r,field:"kind"});return}for(const s of $h[i.kind]){const c=s.path.endsWith("[]"),u=c?s.path.slice(0,-2):s.path,l=u.split(".");let p=i;for(const d of l.slice(0,-1)){if(!As(p))break;p=p[d]}if(!As(p))continue;const f=p[l[l.length-1]];if(!(f===void 0&&s.optional)&&!(f===null&&s.optional)){if(!c){n(r,s.path,f,s.shape);continue}if(!Array.isArray(f)){t.push({kind:"payload-invalid",opIndex:r,field:s.path});continue}f.forEach((d,m)=>n(r,`${u}[${m}]`,d,s.shape))}}if(i.kind==="node.add"||i.kind==="node.update"){const s=i.band;s!==void 0&&(!Number.isInteger(s)||s<0)&&t.push({kind:"payload-invalid",opIndex:r,field:"band"});const c=i.kind==="node.add"?(o=i.node)==null?void 0:o.type:i.type;typeof c=="string"&&!vd(c)&&t.push({kind:"node-type-unsupported",opIndex:r,id:(i.kind==="node.add"?(a=i.node)==null?void 0:a.id:i.id)??"",type:c})}}),t}function Fh(e,t){const n=R1(e);if(n.length>0)return n;const i=[],r=new Map,o=new Map;function a(f,d,m){if(!S1.test(d)){i.push({kind:"id-invalid",opIndex:f,id:d});return}if(t.categoryOf(d)!==void 0||r.has(d)){i.push({kind:"id-duplicate",opIndex:f,id:d});return}r.set(d,{...m,opIndex:f})}e.forEach((f,d)=>{var m;switch(f.kind){case"participant.add":a(d,f.participant.id,{category:"participant",lanes:(f.participant.lanes??[]).map(h=>h.id)});for(const h of f.participant.lanes??[])a(d,h.id,{category:"lane"});break;case"node.add":a(d,f.node.id,{category:"flowNode",participant:f.node.participant});break;case"sequenceFlow.add":a(d,f.flow.id,{category:"sequenceFlow"});break;case"messageFlow.add":a(d,f.flow.id,{category:"messageFlow"});break;case"dataStore.add":a(d,f.dataStore.id,{category:"dataStore"});for(const h of f.associations??[])h.id&&a(d,h.id,{category:"dataAssociation"});break;case"dataAssociation.add":f.association.id&&a(d,f.association.id,{category:"dataAssociation"});break;case"association.add":f.association.id&&a(d,f.association.id,{category:"association"});break;case"annotation.add":a(d,f.annotation.id,{category:"annotation"}),(m=f.association)!=null&&m.id&&a(d,f.association.id,{category:"association"});break;case"group.add":a(d,f.group.id,{category:"group"});break;case"participant.update":if(f.lanes){o.set(f.id,f.lanes.map(h=>h.id));for(const h of f.lanes)t.categoryOf(h.id)===void 0&&a(d,h.id,{category:"lane"})}break}});const s=f=>{var d;return((d=r.get(f))==null?void 0:d.category)??t.categoryOf(f)},c=f=>{const d=r.get(f);return d?d.category==="participant"?f:d.participant:t.categoryOf(f)==="participant"?f:t.participantOf(f)};function u(f,d,m,h){const y=s(d);if(y===void 0){i.push({kind:"ref-missing",opIndex:f,ref:d,role:m});return}if(h&&!h.includes(y)){i.push({kind:"ref-category",opIndex:f,ref:d,role:m,expected:h.join("|"),actual:y});return}return y}const l=t.isCollaboration()||e.some(f=>f.kind==="participant.add");return e.forEach((f,d)=>{var m;switch(f.kind){case"participant.add":break;case"node.add":{const{participant:h,lane:y}=f.node;if(h===void 0){(l||y!==void 0)&&i.push({kind:"participant-required",opIndex:d,id:f.node.id});break}if(u(d,h,"participant",["participant"])===void 0)break;y!==void 0&&((((m=r.get(h))==null?void 0:m.lanes)??o.get(h)??t.lanesOf(h)).includes(y)||i.push({kind:"lane-unknown",opIndex:d,lane:y,participant:h}));break}case"sequenceFlow.add":{const{id:h,source:y,target:g,name:v,condition:b}=f.flow,x=u(d,y,"source",["flowNode"]),C=u(d,g,"target",["flowNode"]);x&&C&&c(y)!==c(g)&&i.push({kind:"flow-cross-pool",opIndex:d,id:h}),v!==void 0&&b!==void 0&&i.push({kind:"condition-name-conflict",opIndex:d,id:h});break}case"messageFlow.add":{const{id:h,source:y,target:g}=f.flow,v=u(d,y,"source",["flowNode","participant"]),b=u(d,g,"target",["flowNode","participant"]);if(v&&b){const x=c(y),C=c(g);x!==void 0&&x===C&&i.push({kind:"message-flow-same-pool",opIndex:d,id:h})}break}case"dataStore.add":{for(const h of f.associations??[]){if([h.source,h.target].filter(v=>v===f.dataStore.id).length!==1){i.push({kind:"data-association-ends",opIndex:d,source:h.source,target:h.target});continue}const g=h.source===f.dataStore.id?h.target:h.source;u(d,g,"dataAssociation",["flowNode"])}break}case"dataAssociation.add":{const{source:h,target:y}=f.association,g=u(d,h,"source"),v=u(d,y,"target");if(g&&v){const b=new Set([g,v]);b.has("dataStore")&&b.has("flowNode")||i.push({kind:"data-association-ends",opIndex:d,source:h,target:y})}break}case"association.add":{const{id:h,source:y,target:g}=f.association,v=u(d,y,"source"),b=u(d,g,"target");v&&b&&v!=="annotation"&&b!=="annotation"&&i.push({kind:"association-detached",opIndex:d,annotation:h??`${y}->${g}`});break}case"annotation.add":{if(f.association){const{source:h,target:y}=f.association;if(h!==f.annotation.id&&y!==f.annotation.id)i.push({kind:"association-detached",opIndex:d,annotation:f.annotation.id});else{const g=h===f.annotation.id?y:h;u(d,g,"association")}}f.placement&&u(d,f.placement.anchor,"anchor");break}case"group.add":{for(const h of f.group.members??[]){const y=u(d,h,"member");y&&Nh.has(y)&&i.push({kind:"ref-category",opIndex:d,ref:h,role:"member",expected:"shape",actual:y})}break}case"participant.update":{if(p(d,f.id,"participant")===void 0)break;if(f.lanes){const h=t.lanesOf(f.id),y=f.lanes.map(v=>v.id);for(const v of h)y.includes(v)||i.push({kind:"lane-shrink-unsupported",opIndex:d,participant:f.id,lane:v});for(const v of y)t.categoryOf(v)!==void 0&&!h.includes(v)&&i.push({kind:"id-duplicate",opIndex:d,id:v});const g=y.filter(v=>h.includes(v));g.length===h.length&&g.some((v,b)=>v!==h[b])&&i.push({kind:"lane-reorder-unsupported",opIndex:d,participant:f.id})}break}case"node.update":{if(p(d,f.id,"flowNode")===void 0)break;if(f.lane!==void 0){const h=t.participantOf(f.id);(h?o.get(h)??t.lanesOf(h):[]).includes(f.lane)||i.push({kind:"lane-unknown",opIndex:d,lane:f.lane,participant:h??""})}break}case"sequenceFlow.update":{if(p(d,f.id,"sequenceFlow")===void 0)break;if(f.name!==void 0&&f.condition!==void 0&&i.push({kind:"condition-name-conflict",opIndex:d,id:f.id}),f.source!==void 0||f.target!==void 0){const h=f.source===void 0||u(d,f.source,"source",["flowNode"])!==void 0,y=f.target===void 0||u(d,f.target,"target",["flowNode"])!==void 0,g=t.endpointsOf(f.id),v=f.source??(g==null?void 0:g.source),b=f.target??(g==null?void 0:g.target);h&&y&&v!==void 0&&b!==void 0&&new Set([c(v),c(b),c(f.id)]).size>1&&i.push({kind:"flow-cross-pool",opIndex:d,id:f.id})}break}case"messageFlow.update":p(d,f.id,"messageFlow");break;case"dataStore.update":p(d,f.id,"dataStore");break;case"annotation.update":{if(p(d,f.id,"annotation")===void 0)break;f.placement&&u(d,f.placement.anchor,"anchor");break}case"group.update":{if(p(d,f.id,"group")===void 0)break;for(const h of f.members??[]){const y=u(d,h,"member");y&&Nh.has(y)&&i.push({kind:"ref-category",opIndex:d,ref:h,role:"member",expected:"shape",actual:y})}break}case"element.remove":{p(d,f.id)==="lane"&&i.push({kind:"ref-category",opIndex:d,ref:f.id,role:"target",expected:"removable",actual:"lane"});break}}}),i;function p(f,d,m){if(r.has(d)){i.push({kind:"target-added-in-batch",opIndex:f,id:d});return}const h=t.categoryOf(d);if(h===void 0){i.push({kind:"ref-missing",opIndex:f,ref:d,role:"target"});return}if(m&&h!==m){i.push({kind:"ref-category",opIndex:f,ref:d,role:"target",expected:m,actual:h});return}return h}}function jh(e){return{modeling:e.get("modeling"),bpmnFactory:e.get("bpmnFactory"),elementFactory:e.get("elementFactory"),elementRegistry:e.get("elementRegistry"),canvas:e.get("canvas"),autoPlace:e.get("autoPlace"),bpmnReplace:e.get("bpmnReplace"),spaceTool:e.get("spaceTool")}}function Ts(e){return`bpmn:${e[0].toUpperCase()}${e.slice(1)}`}const Ms={"top-left":[-1,-1],top:[0,-1],"top-right":[1,-1],right:[1,0],"bottom-right":[1,1],bottom:[0,1],"bottom-left":[-1,1],left:[-1,0]},an=10,Hh=40,C1=10;function xl(e,t,n,i,r){const o=n,a=(D,L)=>{const[z,ne]=Ms[D];let me={x:t.x+t.width/2+z*(t.width/2+o.width/2+L),y:t.y+t.height/2+ne*(t.height/2+o.height/2+L)};const Ue=i.x+an+o.width/2,je=i.x+i.width-an-o.width/2,q=i.y+an+o.height/2,le=i.y+i.height-an-o.height/2,ae={x:Math.min(je,Math.max(Ue,me.x)),y:Math.min(le,Math.max(q,me.y))};return(ae.x!==me.x||ae.y!==me.y)&&(me=Math.abs(ae.x-(t.x+t.width/2))<(t.width+o.width)/2+an&&Math.abs(ae.y-(t.y+t.height/2))<(t.height+o.height)/2+an?{x:t.x+t.width+an+o.width/2,y:ae.y}:ae),me},s=(i.children??[]).filter(D=>!("waypoints"in D&&D.waypoints)&&D.type!=="bpmn:Lane"&&D.type!=="label"&&typeof D.x=="number"&&D.id!==r.selfId),c=ot(e),u=D=>{var z,ne;if(!r.selfId)return!1;const L=e.get(D);return!!L&&(((z=L.source)==null?void 0:z.id)===r.selfId||((ne=L.target)==null?void 0:ne.id)===r.selfId)},l=c.edges.filter(D=>!u(D.id)).flatMap(xn),p=ho(c).filter(D=>D.owner!==r.selfId).map(D=>D.rect),f=D=>({x0:D.x-o.width/2-an,x1:D.x+o.width/2+an,y0:D.y-o.height/2-an,y1:D.y+o.height/2+an}),d=D=>{const L=f(D);return s.some(z=>L.x0<z.x+z.width&&L.x1>z.x&&L.y0<z.y+z.height&&L.y1>z.y)},m=D=>{const L=f(D);return l.some(z=>z.axis==="h"?z.at>L.y0&&z.at<L.y1&&z.lo<L.x1&&z.hi>L.x0:z.at>L.x0&&z.at<L.x1&&z.lo<L.y1&&z.hi>L.y0)},h=D=>{const L=f(D);return p.some(z=>L.x0<z.x+z.width&&L.x1>z.x&&L.y0<z.y+z.height&&L.y1>z.y)},y=c.shapes.filter(D=>D.type==="bpmn:Group").flatMap(D=>[{axis:"h",at:D.y,lo:D.x,hi:D.x+D.width},{axis:"h",at:D.y+D.height,lo:D.x,hi:D.x+D.width},{axis:"v",at:D.x,lo:D.y,hi:D.y+D.height},{axis:"v",at:D.x+D.width,lo:D.y,hi:D.y+D.height}]),g=D=>{const L=f(D);return y.some(z=>z.axis==="h"?z.at>L.y0&&z.at<L.y1&&z.lo<L.x1&&z.hi>L.x0:z.at>L.x0&&z.at<L.x1&&z.lo<L.y1&&z.hi>L.y0)},v=D=>d(D)||m(D)||h(D)||g(D),b=D=>D.x-o.width/2>=i.x&&D.x+o.width/2<=i.x+i.width&&D.y-o.height/2>=i.y&&D.y+o.height/2<=i.y+i.height;if(r.placement){const D=je=>je.startsWith("top")?je.replace(/^top/,"bottom"):je.replace(/^bottom/,"top"),L=je=>je.endsWith("left")?je.replace(/left$/,"right"):je.replace(/right$/,"left"),z=r.placement.side,ne=[z,D(z),L(z),D(L(z)),"top","bottom","left","right","top-left","top-right","bottom-left","bottom-right"],me=r.placement.offset??50;let Ue=a(z,me);if(v(Ue)){const je=new Set;for(const q of ne){if(je.has(q))continue;je.add(q);const le=a(q,me);if(b(le)&&!v(le)){Ue=le;break}}}return Ue}const x=r.from,C=i.x+an+o.width/2,T=i.x+i.width-an-o.width/2,k=i.y+an+o.height/2,A=i.y+i.height-an-o.height/2;let I={x:Math.min(T,Math.max(C,x.x)),y:Math.min(A,Math.max(k,x.y))};if(v(I)){const D=(t.width+o.width)/2+an,z=[{x:I.x+D,y:I.y},{x:I.x-D,y:I.y},{x:I.x,y:I.y-o.height-an},{x:I.x,y:I.y+o.height+an}].filter(b).find(ne=>!v(ne));z&&(I=z)}return I}function Qt(e,t){return e.filter(n=>n.kind===t)}function zh(e,t){var b0,x0,_0,w0,E0,S0,R0,C0,P0,A0,T0,M0,k0,O0,D0,L0,I0,B0,N0,$0,F0,j0,H0;const{modeling:n,bpmnFactory:i,elementFactory:r,elementRegistry:o,canvas:a,autoPlace:s,bpmnReplace:c,spaceTool:u}=t,l=()=>a.getRootElement(),p=_=>o.get(_),f=_=>{const R=p(_);if(!R)throw new Error(`하강 참조 해소 실패: ${_}`);return R},d=_=>{let R=_.parent;for(;R;){if(R.type==="bpmn:Participant")return R;R=R.parent}},m=new Map;for(const _ of o.filter(R=>!("waypoints"in R&&R.waypoints)&&R.type!=="bpmn:Lane"&&R.type!=="label"&&typeof R.x=="number"))m.set(_.id,{x:_.x,y:_.y});const h=Qt(e,"participant.add"),y=Qt(e,"node.add"),g=Qt(e,"sequenceFlow.add"),v=Qt(e,"messageFlow.add"),b=Qt(e,"dataStore.add"),x=Qt(e,"dataAssociation.add"),C=Qt(e,"annotation.add"),T=Qt(e,"group.add"),k=new Map(y.map(_=>[_.node.id,_])),A=(_,R,P)=>{var j;const O=_.businessObject,N=(((j=O.extensionElements)==null?void 0:j.values)??[]).filter(H=>H.$type!==R),B=P?[...N,i.create(R,P)]:N;if(!B.length){O.extensionElements&&n.updateProperties(_,{extensionElements:void 0});return}const $=i.create("bpmn:ExtensionElements",{values:B});B.forEach(H=>{H.$parent=$}),n.updateProperties(_,{extensionElements:$})},I=_=>({anchor:_.anchor,side:_.side,..._.offset!==void 0?{offset:_.offset}:{}});for(const _ of Qt(e,"element.remove")){const R=p(_.id);R&&n.removeElements([R])}const D=_=>o.filter(R=>{var P;return R.type==="bpmn:Lane"&&((P=d(R))==null?void 0:P.id)===_}).sort((R,P)=>R.y-P.y);for(const _ of Qt(e,"participant.update")){const R=f(_.id);if(_.name!==void 0&&n.updateProperties(R,{name:_.name??void 0}),!_.lanes)continue;const P=D(_.id);if(!P.length){n.splitLane(R,_.lanes.length),D(_.id).forEach((N,B)=>{const $=_.lanes[B];$&&n.updateProperties(N,{id:$.id,name:$.name})});continue}const O=new Set(P.map(N=>N.id));_.lanes.forEach((N,B)=>{if(O.has(N.id)){n.updateProperties(f(N.id),{name:N.name});return}const $=B===0?n.addLane(D(_.id)[0],"top"):n.addLane(f(_.lanes[B-1].id),"bottom");n.updateProperties($,{id:N.id,name:N.name})})}const L=150,z=130,ne=80,me=90,Ue=180,je=30,q=30,le=(_,R,P,O,N)=>{const B=P-R.width/2,$=O-R.height/2;return(_.children??[]).find(j=>!("waypoints"in j&&j.waypoints)&&j.type!=="bpmn:Lane"&&j.type!=="label"&&!(N!=null&&N.has(j.id))&&typeof j.x=="number"&&B<j.x+j.width+q&&B+R.width+q>j.x&&$<j.y+j.height&&$+R.height>j.y)},ae=new Set;for(const _ of h){ae.add(`pool:${_.participant.id}`);for(const R of _.participant.lanes??[])ae.add(R.id)}const ge=new Map;for(const _ of y){const R=_.node.lane??`pool:${_.node.participant??""}`;let P=ge.get(R);P||ge.set(R,P=new Set([0])),_.band!==void 0&&P.add(_.band)}const Ae=new Map;for(const[_,R]of ge){if(!ae.has(_))continue;const P=[...R].sort((B,$)=>B-$),O=P.map((B,$)=>$===0?0:$%2===1?Math.ceil($/2):-($/2)),N=Math.min(...O);Ae.set(_,new Map(P.map((B,$)=>[B,O[$]-N])))}{const _=new Map;for(const R of h)(R.participant.lanes??[]).forEach((P,O)=>_.set(P.id,O));for(const[R,P]of Ae){if(!_.has(R)||P.size<2)continue;const O=_.get(R),N=P.get(0)??0,B=new Set;for(const ie of y){if(ie.node.lane!==R||(ie.band??0)!==0||!ie.node.type.endsWith("Gateway"))continue;const Oe={in:new Set,out:new Set,cross:new Set};for(const _e of g){const Pe=_e.flow.source===ie.node.id;if(!Pe&&_e.flow.target!==ie.node.id)continue;const pt=k.get(Pe?_e.flow.target:_e.flow.source);if(!pt||pt.node.participant!==ie.node.participant||!pt.node.lane)continue;let ce,ve=!1;if(pt.node.lane!==R){const Re=_.get(pt.node.lane);if(Re===void 0)continue;ce=Re>O?"down":"up",ve=!0}else{const Re=P.get(pt.band??0)??N;ce=Re>N?"down":Re<N?"up":void 0}ce&&(Oe[Pe?"out":"in"].add(ce),ve&&Oe.cross.add(ce))}for(const _e of["up","down"])Oe.in.has(_e)&&Oe.out.has(_e)&&Oe.cross.has(_e)&&B.add(_e)}if(B.size!==1)continue;const[$]=B,j=Math.max(...P.values()),H=$==="down"?j:0;if(N===H)continue;const K=[...P.entries()].filter(([ie])=>ie!==0).sort((ie,Oe)=>ie[1]-Oe[1]),pe=[...Array(j+1).keys()].filter(ie=>ie!==H),we=new Map([[0,H]]);K.forEach(([ie],Oe)=>we.set(ie,pe[Oe])),Ae.set(R,we)}}const W=_=>{var R;return(((R=ge.get(_))==null?void 0:R.size)??0)>1},Y=_=>_.band??(_.node.lane||!W(`pool:${_.node.participant??""}`)?void 0:0),ee=new Map,Ce=_=>ee.get(_.node.id)??Y(_),gt=new Set,M=new Set;{const _=new Map;for(const O of g)_.set(O.flow.target,(_.get(O.flow.target)??0)+1);const R=O=>{const N=[],B=new Set([O]),$=[O];for(;$.length;){const j=$.shift();N.push(j);for(const H of g)H.flow.source!==j||B.has(H.flow.target)||(_.get(H.flow.target)??0)!==1||(B.add(H.flow.target),$.push(H.flow.target))}return N},P=(O,N)=>{var B;return((B=Ae.get(O))==null?void 0:B.get(N))??N};for(const O of y){if(!O.node.type.endsWith("Gateway"))continue;const N=O.node.lane??`pool:${O.node.participant??""}`,B=Ae.get(N);if(!B||B.size<2)continue;const $=Ce(O);if($===void 0||P(N,$)!==P(N,0))continue;const j=P(N,$),H=g.filter(_e=>_e.flow.source===O.node.id).map(_e=>k.get(_e.flow.target)).filter(_e=>!!_e&&(_e.node.lane??`pool:${_e.node.participant??""}`)===N),K=H.filter(_e=>{const Pe=Ce(_e);return Pe!==void 0&&P(N,Pe)===j&&(_.get(_e.node.id)??0)===1}),pe=H.some(_e=>{const Pe=Ce(_e);return Pe!==void 0&&P(N,Pe)>j});if(K.length!==1||!pe)continue;const we=new Set(H.flatMap(_e=>R(_e.node.id)));if(!g.some(_e=>_e.flow.target===O.node.id&&we.has(_e.flow.source)))continue;const Oe=new Map;for(const[_e,Pe]of B)Oe.set(_e,Pe+1);Oe.set(-1,0),Ae.set(N,Oe);for(const _e of R(K[0].node.id))k.has(_e)&&(ee.set(_e,-1),M.add(_e));gt.add(O.node.id)}}const E=(_,R)=>{var P;return((P=Ae.get(_))==null?void 0:P.get(R))??R},w=(_,R,P,O)=>{const N=_?p(_):R?p(R):void 0;if(!N)return!1;const B=_?N.y+Math.min(N.height/2,me):N.y+ne;return Math.abs(B+E(_??`pool:${R??""}`,P)*L-O)<=L/2},G=new Map;for(const[_,R]of ge){let P=0;for(const O of R)P=Math.max(P,E(_,O));G.set(_,P)}const U=_=>Ue+L*_,X=(_,R,P)=>{const O=l().children.filter(N=>!("waypoints"in N&&N.waypoints)&&N.id!==R&&typeof N.y=="number"&&N.y>=_);O.length&&n.moveElements(O,{x:0,y:P})},Ee=(_,R,P)=>{const O=_.type==="bpmn:Participant"?_:void 0;if(!O||O.children.some(j=>j.type==="bpmn:Lane"))return;const N=P+R.height/2+je-O.y;if(O.height>=N)return;const B=N-O.height,$=O.y+O.height;n.resizeShape(O,{x:O.x,y:O.y,width:O.width,height:N}),X($,O.id,B)},He=(_,R)=>{const P=R-_.height;if(P<=0)return;const O=d(_)??_,N=[],B=H=>{N.push(H);for(const K of H.children??[])B(K)};B(O);const $=_.y+_.height-10,j=u.calculateAdjustments(N,"y",P,$);u.makeSpace(j.movingShapes,j.resizingShapes,{x:0,y:P},"s",$)},nt=(_,R,P)=>{if(_){const $=f(_),j=U(R);if($.height>=j)return;const H=j-$.height,K=d($),pe=K?K.y+K.height:$.y+$.height;He($,j),X(pe,K==null?void 0:K.id,H);return}if(!P)return;const O=L*(R+1);if(P.height>=O)return;const N=O-P.height,B=P.y+P.height;n.resizeShape(P,{x:P.x,y:P.y,width:P.width,height:O}),X(B,P.id,N)},Pt=new Map;for(const _ of g)Pt.set(_.flow.target,(Pt.get(_.flow.target)??0)+1);const ut=_=>(Pt.get(_)??0)<=1,zt=(_,R,P)=>{if(!_)return!0;const O=p(_);return O?P-R.height/2>=O.y&&P+R.height/2<=O.y+O.height:!0},en=h.map((_,R)=>({op:_,declared:R}));en.sort((_,R)=>{const P=_.op.order??Number.POSITIVE_INFINITY,O=R.op.order??Number.POSITIVE_INFINITY;return P!==O?P-O:_.declared-R.declared});let tn=80;for(const _ of o.getAll())_.parent===l()&&"height"in _&&typeof _.y=="number"&&(tn=Math.max(tn,_.y+_.height+60));for(const{op:_}of en){const R=_.participant,P=y.filter(ie=>ie.node.participant===R.id).length,O=((b0=R.lanes)==null?void 0:b0.length)??0,N=Math.max(1200,P*160+300),B=(R.lanes??[]).map(ie=>U(G.get(ie.id)??0)),$=B.reduce((ie,Oe)=>ie+Oe,0);O&&$<300&&(B[O-1]+=300-$);const j=Math.max(300,L*((G.get(`pool:${R.id}`)??0)+1)),H=R.blackBox||P+O===0?120:O?Math.max(300,$):j,K=r.createShape({type:"bpmn:Participant",businessObject:i.create("bpmn:Participant",{id:R.id,name:R.name,..._.order!==void 0?{"bwl:poolOrder":_.order}:{},...R.blackBox?{}:{processRef:i.create("bpmn:Process")}}),width:N,height:H,isExpanded:!0}),pe=n.createShape(K,{x:100+N/2,y:tn+H/2},l()),we=R.lanes??[];if(we.length&&n.splitLane(pe,we.length),we.length){const ie=o.filter(Oe=>{var _e;return Oe.type==="bpmn:Lane"&&((_e=d(Oe))==null?void 0:_e.id)===R.id}).sort((Oe,_e)=>Oe.y-_e.y);if(ie.forEach((Oe,_e)=>{const Pe=we[_e];Pe&&n.updateProperties(Oe,{id:Pe.id,name:Pe.name})}),B.some(Oe=>Oe!==pe.height/O)){let Oe=pe.y;ie.forEach((_e,Pe)=>{const pt=B[Pe];n.resizeShape(_e,{x:_e.x,y:Oe,width:_e.width,height:pt}),Oe+=pt})}}tn=pe.y+pe.height+60}const vt=_=>{var O;const R=k.get(_);if(R)return R.node.participant??"";const P=p(_);return P?P.type==="bpmn:Participant"?P.id:((O=d(P))==null?void 0:O.id)??"":""},At=new Map,vn=_=>{let R=At.get(_);return R||At.set(_,R={nodes:[],flows:[]}),R};for(const _ of y)vn(_.node.participant??"").nodes.push(_);for(const _ of g)vn(vt(_.flow.source)).flows.push(_);const Ar=_=>{var R;return i.create("bpmn:SequenceFlow",{id:_.id,name:_.name??((R=_.condition)==null?void 0:R.label)})},jn=(_,R)=>r.createShape({type:Ts(_.type),businessObject:i.create(Ts(_.type),{id:_.id,name:_.name,...R!==void 0?{"bwl:band":R}:{}})}),Mi=[...en.map(({op:_})=>_.participant.id).filter(_=>At.has(_)),...[...At.keys()].filter(_=>!h.some(R=>R.participant.id===_))],Hn=_=>_.endsWith("Gateway");for(const _ of Mi){const R=At.get(_),P=_?f(_):void 0,O=P?P.x+150:250;let N=P?P.y+80:120;const B=(ce,ve,Re)=>{if(ce){const Me=f(ce);return Me.y+Math.min(Me.height/2,me)+E(ce,ve??0)*L}return ve!==void 0&&P?P.y+ne+E(`pool:${_}`,ve)*L:Re},$=(ce,ve,Re)=>{if(ce){const Me=f(ce);return Me.y+Math.min(Me.height/2,me)+ve*L}return P?P.y+ne+ve*L:Re},j=ce=>ce.participant?f(ce.participant):l(),H=(ce,ve,Re,Me,ct,it,st)=>{const ze=Re!==void 0||Me!==void 0,ue=E(Re??`pool:${_}`,Me??0);if((Me===void 0||w(Re,_,Me,st??Number.NaN))&&st!==void 0&&zt(Re,ve,st)&&!le(ce,ve,ct,st))return{x:ct,y:st};if(ze)for(let Z=0;Z<4;Z++){const fe=$(Re,ue+Z,it);if(!le(ce,ve,ct,fe))return nt(Re,ue+Z,P),{x:ct,y:fe}}const Ke=B(Re,Me,it);ze?nt(Re,ue,P):Ee(ce,ve,Ke);let re=ct;for(let Z=0;Z<64;Z++){const fe=le(ce,ve,re,Ke);if(!fe)break;re=fe.x+fe.width+z+ve.width/2}return{x:re,y:Ke}},K=new Set(R.flows.map(ce=>ce.flow.target)),pe=new Map;for(const ce of R.nodes){if(K.has(ce.node.id))continue;const ve=jn(ce.node,ce.band),Re=Y(ce),Me=ce.node.lane?`${ce.node.lane}|${Re??""}`:Re!==void 0?`band:${Re}`:"",ct=j(ce.node),it=H(ct,ve,ce.node.lane,Re,pe.get(Me)??O,N);n.createShape(ve,it,ct),pe.set(Me,it.x+ve.width+z),!ce.node.lane&&Re===void 0&&(N+=160)}const we=new Set,ie=new Map,Oe=new Map,_e=new Map;if(_&&ae.has(`pool:${_}`)){const ce=new Map;for(const ue of R.flows)ce.set(ue.flow.target,(ce.get(ue.flow.target)??0)+1);const ve=ue=>B(ue.node.lane,Ce(ue),Number.NaN),Re=new Set,Me=ue=>{var Z;const Ke=(Z=k.get(ue))==null?void 0:Z.node.participant;if(Ke)return p(Ke);const re=p(ue);if(re)return re.type==="bpmn:Participant"?re:d(re)},ct=ue=>{const Ke=[],re=new Set([ue]),Z=[ue];for(;Z.length;){const fe=Z.shift(),de=k.get(fe);de&&Ke.push(de);for(const oe of R.flows)oe.flow.source!==fe||re.has(oe.flow.target)||(ce.get(oe.flow.target)??0)!==1||(re.add(oe.flow.target),Z.push(oe.flow.target))}return Ke},it=ue=>{if(!P)return;const Ke=new Set(ue.map(fe=>fe.node.id));let re=!1,Z=!1;for(const fe of v){if(!Ke.has(fe.flow.source))continue;const de=Me(fe.flow.target);!de||de.id===P.id||(de.y<P.y?re=!0:Z=!0)}return re&&!Z?"up":Z&&!re?"down":void 0};for(const ue of R.nodes){if(!Hn(ue.node.type))continue;const Ke=B(ue.node.lane,Y(ue),Number.NaN);if(Number.isNaN(Ke))continue;const re=[];for(const oe of R.flows){if(oe.flow.source!==ue.node.id)continue;const Se=k.get(oe.flow.target);if(!Se||Se.node.lane!==ue.node.lane||(ce.get(Se.node.id)??0)!==1)continue;const he=Y(Se);if(he===void 0)continue;const Ve=B(Se.node.lane,he,Number.NaN);if(Number.isNaN(Ve))continue;const Tt=ct(Se.node.id),Je=it(Tt);Je&&re.push({subtree:Tt,band:he,row:Ve,dir:Je})}if(!re.some(oe=>oe.dir==="up")||!re.some(oe=>oe.dir==="down")||!re.some(oe=>oe.dir==="up"&&re.some(Se=>Se.dir==="down"&&Se.row<oe.row)))continue;const fe=[...re].sort((oe,Se)=>oe.row-Se.row);[...re.filter(oe=>oe.dir==="up"),...re.filter(oe=>oe.dir==="down")].sort((oe,Se)=>oe.dir===Se.dir?oe.row-Se.row:oe.dir==="up"?-1:1).forEach((oe,Se)=>{const he=fe[Se].band;if(he!==oe.band){Re.add(ue.node.id);for(const Ve of oe.subtree)Y(Ve)===oe.band&&ee.set(Ve.node.id,he)}})}const st=ue=>{if(!P)return;const Ke=new Set(ue.map(fe=>fe.node.id));let re=!1,Z=!1;for(const fe of v){if(!Ke.has(fe.flow.target))continue;const de=Me(fe.flow.source);!de||de.id===P.id||(de.y<P.y?re=!0:Z=!0)}return re&&!Z?"up":Z&&!re?"down":void 0};for(const ue of R.nodes){if(!Hn(ue.node.type))continue;const Ke=ue.node.lane??`pool:${_}`,re=Ae.get(Ke);if(!re||re.size<2)continue;const Z=re.get(0);if(Z===void 0)continue;const fe=Math.max(...re.values()),de=Z===fe&&Z!==0?"down":void 0;if(!de)continue;const oe=[];for(const Je of R.flows){if(Je.flow.source!==ue.node.id)continue;const rt=k.get(Je.flow.target);if(!rt||rt.node.lane!==ue.node.lane||(ce.get(rt.node.id)??0)!==1)continue;const Vt=Ce(rt);Vt!==void 0&&oe.push({t:rt,subtree:ct(rt.node.id),band:Vt})}const Se=oe.find(Je=>(re.get(Je.band)??Je.band)===Z);if(!Se||st(Se.subtree)===de||it(Se.subtree)===de)continue;const he=oe.find(Je=>Je!==Se&&st(Je.subtree)===de);if(!he)continue;const Ve=Se.band,Tt=he.band;for(const Je of Se.subtree)Ce(Je)===Ve&&ee.set(Je.node.id,Tt);for(const Je of he.subtree)Ce(Je)===Tt&&ee.set(Je.node.id,Ve);Re.add(ue.node.id)}for(const ue of R.nodes){if(!Hn(ue.node.type))continue;const Ke=ve(ue);if(Number.isNaN(Ke)||C.some(oe=>{var Se,he;return(((Se=oe.placement)==null?void 0:Se.anchor)??(oe.association?oe.association.source===oe.annotation.id?oe.association.target:oe.association.source:void 0))===ue.node.id&&((he=oe.placement)==null?void 0:he.side.startsWith("bottom"))}))continue;let Z,fe=!1,de;for(const oe of R.flows){if(oe.flow.source!==ue.node.id)continue;const Se=k.get(oe.flow.target);if(!Se||!Se.node.lane&&Y(Se)===void 0)continue;const he=ve(Se);Number.isNaN(he)||(Math.abs(he-Ke)<.5&&(fe=!0),he>Ke?!Z||he>Z.row?Z={id:Se.node.id,row:he,count:1}:he===Z.row&&Z.count++:he<Ke&&Se.node.lane===ue.node.lane&&(!de||he>de.row?de={op:Se,row:he,count:1}:he===de.row&&de.count++))}Z&&Z.count===1&&(ce.get(Z.id)??0)===1&&!Re.has(ue.node.id)&&we.add(Z.id),!fe&&de&&de.count===1&&(ce.get(de.op.node.id)??0)===1&&!gt.has(ue.node.id)&&ie.set(de.op.node.id,{lane:ue.node.lane,band:Ce(ue)})}const ze=new Map;for(const ue of v)ze.set(ue.flow.target,[...ze.get(ue.flow.target)??[],ue]);for(const ue of R.nodes){const Ke=ze.get(ue.node.id);if(!Ke||Ke.length!==1||!ce.get(ue.node.id)||!ue.node.lane&&Y(ue)===void 0||M.has(ue.node.id))continue;const re=(x0=k.get(Ke[0].flow.source))==null?void 0:x0.node.participant,Z=re?p(re):void 0;if(!Z||!P||Z.id===P.id)continue;const fe=ue.node.lane??`pool:${_}`,de=Ae.get(fe);if(!de)continue;const oe=de.get(0)??0,Se=(de.get(Ce(ue)??0)??oe)-oe;if(Se===0)continue;const he=Z.y<P.y;if(he&&Se<0||!he&&Se>0)continue;let Ve;for(const[Tt,Je]of de){const rt=Je-oe;(he&&rt<0&&(!Ve||rt<Ve.row)||!he&&rt>0&&(!Ve||rt>Ve.row))&&(Ve={band:Tt,row:rt})}Ve&&Oe.set(ue.node.id,{lane:ue.node.lane,band:Ve.band})}}const Pe=new Set;let pt=0;for(;pt++<R.nodes.length+2;){for(let Re=0;Re<R.nodes.length+R.flows.length+2;Re++){let Me=!1;for(const ct of R.flows){const it=ct.flow;if(Pe.has(it.id))continue;const st=p(it.source);if(!st)continue;const ze=p(it.target),ue=k.get(it.target);if(!ze&&ue){const Ke=jn(ue.node,ue.band),re=Ce(ue);if(ue.node.lane||re!==void 0){const Z=j(ue.node),fe=st,de=fe.x+(_e.get(it.source)??0)+fe.width+z,oe=ie.get(it.target)??Oe.get(it.target),Se=H(Z,Ke,oe?oe.lane:ue.node.lane,oe?oe.band:re,we.has(it.target)?fe.x+fe.width/2:de,Number.NaN,oe||!ut(it.target)?void 0:fe.y+fe.height/2),he=n.createShape(Ke,Se,Z);we.has(it.target)&&_e.set(it.target,de-(he.x+he.width/2)),n.connect(st,he,{type:"bpmn:SequenceFlow",businessObject:Ar(it)})}else s.append(st,Ke,{connection:{type:"bpmn:SequenceFlow",businessObject:Ar(it)}})}else if(ze)n.connect(st,ze,{type:"bpmn:SequenceFlow",businessObject:Ar(it)});else continue;Pe.add(it.id),Me=!0}if(!Me)break}const ce=R.nodes.filter(Re=>!p(Re.node.id));if(!ce.length)break;const ve=ce[0];{const Re=jn(ve.node,ve.band),Me=j(ve.node),ct=Y(ve);n.createShape(Re,H(Me,Re,ve.node.lane,ct,O,N),Me),!ve.node.lane&&ct===void 0&&(N+=160)}}}const Dt=40,Kn=(_,R=()=>!0)=>{const P=p(_);if(!P)return[];const O=[P],N=new Set([_]);for(let B=0;B<O.length;B++){const $=O[B].id;for(const j of g){const H=j.flow.target;if(j.flow.source!==$||N.has(H)||!k.has(H))continue;N.add(H);const K=p(H);K&&R(K)&&O.push(K)}}return O},Iu=(_,R=()=>!0)=>{const P=p(_);if(!P)return[];const O=[P],N=new Set([_]);for(let B=0;B<O.length;B++){const $=O[B].id;for(const j of g){const H=j.flow.source;if(j.flow.target!==$||N.has(H)||!k.has(H))continue;N.add(H);const K=p(H);K&&R(K)&&O.push(K)}}return O},Gt=30,Ze=_=>!("waypoints"in _&&_.waypoints)&&_.type!=="bpmn:Lane"&&_.type!=="label"&&typeof _.x=="number",at=(_,R)=>{const P=new Set(_.flatMap($=>$.subtree.map(j=>j.id)));for(const $ of _){const j=($.pool.children??[]).filter(Ze).filter(K=>!P.has(K.id));if($.subtree.some(K=>j.some(pe=>K.x+R<pe.x+pe.width+Gt&&K.x+R+K.width+Gt>pe.x&&K.y<pe.y+pe.height&&K.y+K.height>pe.y)))return null}const O=_.map($=>$.pool.width),N=o.filter($=>$.type==="label").map($=>({label:$,x:$.x,y:$.y}));n.moveElements(_.flatMap($=>$.subtree),{x:R,y:0});const B=_.map($=>{const H=Math.max(...$.subtree.map(K=>K.x+K.width))+150-($.pool.x+$.pool.width);return H>0&&n.resizeShape($.pool,{x:$.pool.x,y:$.pool.y,width:$.pool.width+H,height:$.pool.height}),H});return()=>{n.moveElements(_.flatMap($=>$.subtree),{x:-R,y:0}),_.forEach(($,j)=>{B[j]>0&&n.resizeShape($.pool,{x:$.pool.x,y:$.pool.y,width:O[j],height:$.pool.height})});for(let $=0;$<3;$++){let j=0;for(const H of N){const K=H.x-H.label.x,pe=H.y-H.label.y;Math.abs(K)<=.5&&Math.abs(pe)<=.5||(n.moveElements([H.label],{x:K,y:pe}),j++)}if(!j)break}}},Q_=_=>{var N,B;const R=new Map,P=new Map;for(const $ of o.getAll()){if($.type!=="bpmn:Participant")continue;const j=$;(j.children??[]).length||(R.set(j.id,j),P.set(j.id,[]))}for(const $ of o.getAll()){if($.type!=="bpmn:MessageFlow")continue;const j=$,H=(N=j.source)==null?void 0:N.id,K=(B=j.target)==null?void 0:B.id;H&&K&&P.has(H)&&P.get(H).push(K),H&&K&&P.has(K)&&P.get(K).push(H)}const O=[];for(const[$,j]of P)j.length&&j.every(H=>_.has(H))&&O.push(R.get($));return O},J_=(_,R)=>{if(!_.length)return null;const P=new Set(_.map($=>$.id)),O=o.getAll().filter($=>$.type==="bpmn:Participant"&&!P.has($.id));if(_.some($=>O.some(j=>$.x+R<j.x+j.width+Gt&&$.x+R+$.width+Gt>j.x&&$.y<j.y+j.height&&$.y+$.height>j.y)))return null;const B=o.filter($=>$.type==="label").map($=>({label:$,x:$.x,y:$.y}));return n.moveElements(_,{x:R,y:0}),()=>{n.moveElements(_,{x:-R,y:0});for(let $=0;$<3;$++){let j=0;for(const H of B){const K=H.x-H.label.x,pe=H.y-H.label.y;Math.abs(K)<=.5&&Math.abs(pe)<=.5||(n.moveElements([H.label],{x:K,y:pe}),j++)}if(!j)break}}},e0=()=>{let _=0;for(const R of o.getAll()){if(R.type!=="bpmn:DataInputAssociation"&&R.type!=="bpmn:DataOutputAssociation")continue;const P=R.waypoints??[];for(let O=1;O<P.length;O++)_+=Math.hypot(P[O].x-P[O-1].x,P[O].y-P[O-1].y)}return _},t0=()=>{let _=0;for(const R of o.getAll()){if(R.type!=="bpmn:Association")continue;const P=R.waypoints??[];for(let O=1;O<P.length;O++)_+=Math.hypot(P[O].x-P[O-1].x,P[O].y-P[O-1].y)}return _},yL=_=>{const R=[];for(const P of o.getAll()){if(P.type!=="bpmn:TextAnnotation")continue;const O=P;if(_.has(O.id))continue;const B=[...O.incoming??[],...O.outgoing??[]].filter(H=>H.type==="bpmn:Association").map(H=>H.source===O?H.target:H.source);if(!B.length||B.some(H=>H===void 0))continue;const $=H=>{if(!("waypoints"in H&&H.waypoints))return[H.id];const K=H,pe=[K.source,K.target];return pe.some(we=>!we)?[]:pe.map(we=>we.id)},j=B.flatMap(H=>$(H));j.length&&j.every(H=>_.has(H))&&R.push(O)}return R},n0=()=>on(ot(o)).filter(_=>_.kind==="edge-crosses-shape").length,i0=_=>{const R=(_.children??[]).filter(Ze);let P=0;for(let O=0;O<R.length;O++)for(let N=O+1;N<R.length;N++){const B=R[O],$=R[N];B.x<$.x+$.width&&B.x+B.width>$.x&&B.y<$.y+$.height&&B.y+B.height>$.y&&P++}return P},Ko=()=>{const _=ot(o),R=P=>P.length>=2&&(P.every(O=>Math.abs(O.x-P[0].x)<.01)||P.every(O=>Math.abs(O.y-P[0].y)<.01));return{messages:_.edges.filter(P=>P.type==="bpmn:MessageFlow"&&P.waypoints.length===2).length,lines:_.edges.filter(P=>R(P.waypoints)).length}},vL=_=>{const R=new Map;for(const O of o.getAll()){if(O.type!=="bpmn:MessageFlow")continue;const N=O;if(!N.waypoints||N.waypoints.length!==2)continue;const B=N.source,$=N.target;if(!B||!$)continue;const j=_.has(B.id);if(j===_.has($.id))continue;const H=j?$:B,K=d(H);if(!K||_.has(H.id))continue;const pe=R.get(K.id);pe?H.x<pe.minX&&(pe.minX=H.x):R.set(K.id,{pool:K,minX:H.x})}const P=[];for(const{pool:O,minX:N}of R.values()){const B=(O.children??[]).filter($=>Ze($)&&!_.has($.id)&&$.x>=N);B.length&&P.push({subtree:B,pool:O})}return P};for(const _ of Qt(e,"sequenceFlow.update")){if(_.target===void 0)continue;const R=k.get(_.target);if(!R)continue;const P=p(_.target),O=p(_.id);if(!P||!O)continue;const N=_.source!==void 0?p(_.source):O.source,B=O.target;if(!N||!B||B.id===P.id)continue;const $=Kn(_.target),j=new Set($.map(ze=>ze.id)),H=Math.min(...$.map(ze=>ze.x)),K=Math.max(...$.map(ze=>ze.x+ze.width)),pe=N.x+N.width,we=K-H+Dt*2-(B.x-pe);let ie=[];if(we>0){const ze=d(P),ue=(ze==null?void 0:ze.children)??[],Ke=de=>de.type==="bpmn:Lane";ie=(()=>{const de=new Set;for(const Se of ue)Ze(Se)&&!j.has(Se.id)&&Se.id!==N.id&&Se.x>=B.x&&de.add(Se.id);const oe=[];for(const Se of ue){if(Se.type!=="bpmn:DataStoreReference"&&Se.type!=="bpmn:DataObjectReference")continue;const he=Se,Tt=[...he.incoming??[],...he.outgoing??[]].filter(Je=>Je.type==="bpmn:DataInputAssociation"||Je.type==="bpmn:DataOutputAssociation").map(Je=>Je.source===he?Je.target:Je.source);Tt.length&&Tt.every(Je=>Je!==void 0&&de.has(Je.id))&&oe.push(he)}return oe})();const Z=ue.filter(de=>!("waypoints"in de&&de.waypoints)&&!Ke(de)&&!j.has(de.id)&&de.id!==N.id&&de.x>=B.x),fe=ze?[ze,...ue.filter(de=>Ke(de))]:[];if(Z.length){const de=new Set(Z.map(Vt=>Vt.id)),oe=vL(de),Se=new Set(de);for(const Vt of oe)for(const Pn of Vt.subtree)Se.add(Pn.id);const he=yL(Se),Ve=Q_(de),Tt=new Set(de);for(const Vt of oe)for(const Pn of Vt.subtree)Tt.add(Pn.id);const Je=oe.length?Q_(Tt):Ve;n.createSpace(Z,fe,{x:we,y:0},"e",B.x-1);let rt=!1;if(oe.length){const Vt=Ko(),Pn=at(oe,we);if(Pn){const En=Je.length?J_(Je,we):null,to=Ko();to.messages>Vt.messages&&to.lines>=Vt.lines?rt=!0:(En==null||En(),Pn())}}if(!rt){for(const Vt of oe){const Pn=Ko(),En=at([Vt],we);if(!En)continue;const to=Ko();(to.messages<=Pn.messages||to.lines<Pn.lines)&&En()}if(Ve.length){const Vt=Ko(),Pn=J_(Ve,we);if(Pn){const En=Ko();(En.messages<=Vt.messages||En.lines<Vt.lines)&&Pn()}}}if(he.length){const Vt=()=>new Set(on(ot(o)).map(En=>hn(En))),Pn=En=>{const to=t0(),OL=Vt(),DL=En.map(Lt=>({a:Lt,x:Lt.x,y:Lt.y})),LL=o.filter(Lt=>Lt.type==="label").map(Lt=>({label:Lt,x:Lt.x,y:Lt.y}));n.moveElements(En,{x:we,y:0});const IL=[...Vt()].filter(Lt=>!OL.has(Lt));if(t0()<to&&IL.length===0)return!0;for(const{a:Lt,x:ss,y:cs}of DL)(Lt.x!==ss||Lt.y!==cs)&&n.moveElements([Lt],{x:ss-Lt.x,y:cs-Lt.y});for(const Lt of LL){const ss=Lt.x-Lt.label.x,cs=Lt.y-Lt.label.y;(ss!==0||cs!==0)&&n.moveElements([Lt.label],{x:ss,y:cs})}return!1};if(!Pn(he)&&he.length>1)for(const En of he)Pn([En])}}}const Oe=R.node.lane!==void 0?p(R.node.lane):R.node.participant!==void 0?p(R.node.participant):void 0,_e=ze=>{if(!Oe)return!0;const ue=ze.y+ze.height/2;return ue>=Oe.y&&ue<=Oe.y+Oe.height},Pe=!_e(N)&&_e(B)?B:N,pt=Pe.y+Pe.height/2,ce=pt-(P.y+P.height/2),ve=R.band!==void 0,Re=ve?[P]:$,Me=(R.band===void 0||w(R.node.lane,R.node.participant,R.band,pt))&&ut(_.target)&&Re.every(ze=>{var ue;return zt((ue=k.get(ze.id))==null?void 0:ue.node.lane,ze,ze.y+ze.height/2+ce)}),ct=ze=>Math.abs(ze.y+ze.height/2-(P.y+P.height/2))<=L/2;if(Me&&ve){const ze=Math.abs(ce)<=L/2?$.filter(ue=>ue.id!==P.id&&ct(ue)):[];if(n.moveElements($,{x:pe+Dt-H,y:0}),n.moveElements([P],{x:0,y:ce}),ze.length){const ue=()=>new Set(on(ot(o)).map(oe=>hn(oe))),Ke=ue(),re=o.filter(oe=>oe.type==="label").map(oe=>({label:oe,x:oe.x,y:oe.y}));n.moveElements(ze,{x:0,y:ce});const Z=ue(),fe=[...Z].filter(oe=>!Ke.has(oe)).length,de=[...Ke].filter(oe=>!Z.has(oe)).length;if(fe>de){n.moveElements(ze,{x:0,y:-ce});for(const oe of re){const Se=oe.x-oe.label.x,he=oe.y-oe.label.y;(Se!==0||he!==0)&&n.moveElements([oe.label],{x:Se,y:he})}}}}else n.moveElements($,{x:pe+Dt-H,y:Me?ce:0});const it=d(P);if(!Me&&R.node.lane===void 0&&R.band!==void 0&&it){const ze=it.y+ne+E(`pool:${R.node.participant??""}`,R.band)*L,ue=ze-(P.y+P.height/2);ue!==0&&!le(it,P,P.x+P.width/2,ze,j)&&n.moveElements([P],{x:0,y:ue})}const st=ie.length?d(ie[0]):void 0;if(st){const ze={assoc:e0(),overlaps:i0(st),crosses:n0()},ue=ie.map(he=>({st:he,x:he.x})),Ke=o.filter(he=>he.type==="label").map(he=>({label:he,x:he.x,y:he.y})),re=Math.min(...ie.flatMap(he=>[...he.incoming??[],...he.outgoing??[]].filter(Ve=>Ve.type==="bpmn:DataInputAssociation"||Ve.type==="bpmn:DataOutputAssociation").map(Ve=>(Ve.source===he?Ve.target:Ve.source).x))),Z=new Set(ie.map(he=>he.id)),fe=(st.children??[]).filter(Ze).filter(he=>!Z.has(he.id));let de=re;for(const he of[...ie].sort((Ve,Tt)=>Ve.x-Tt.x)){let Ve=de;for(let Tt=0;Tt<100;Tt++){const Je=fe.find(rt=>Ve<rt.x+rt.width+Gt&&Ve+he.width+Gt>rt.x&&he.y<rt.y+rt.height&&he.y+he.height>rt.y);if(!Je)break;Ve=Je.x+Je.width+Gt}Ve!==he.x&&n.moveElements([he],{x:Ve-he.x,y:0}),de=Ve+he.width+Gt}const oe=de+150-(st.x+st.width);oe>0&&n.resizeShape(st,{x:st.x,y:st.y,width:st.width+oe,height:st.height});const Se={assoc:e0(),overlaps:i0(st),crosses:n0()};if(Se.assoc>=ze.assoc||Se.overlaps>ze.overlaps||Se.crosses>ze.crosses){for(const{st:he,x:Ve}of ue)he.x!==Ve&&n.moveElements([he],{x:Ve-he.x,y:0});oe>0&&n.resizeShape(st,{x:st.x,y:st.y,width:st.width-oe,height:st.height});for(const he of Ke){const Ve=he.x-he.label.x,Tt=he.y-he.label.y;(Ve!==0||Tt!==0)&&n.moveElements([he.label],{x:Ve,y:Tt})}}}}const r0=(_,R)=>{const P=R.target===_,O=f(R.source),N=f(R.target),B=P?"bpmn:DataOutputAssociation":"bpmn:DataInputAssociation";n.connect(O,N,R.id?{type:B,businessObject:i.create(B,{id:R.id})}:{type:B})},bL=100,o0=_=>{for(const R of h){if(!R.participant.blackBox)continue;const P=p(R.participant.id);if(!P)continue;const O=[];for(const B of v){const $=B.flow.source===R.participant.id?B.flow.target:B.flow.target===R.participant.id?B.flow.source:void 0,j=$?p($):void 0;j&&typeof j.x=="number"&&j.type!=="bpmn:Participant"&&O.push(j)}if(!O.length)continue;const N=Math.max(...O.map(B=>B.x+B.width/2))+bL;if(N>P.x+P.width&&n.resizeShape(P,{x:P.x,y:P.y,width:N-P.x,height:P.height}),!!_)for(const B of v){const $=p(B.flow.id),j=B.flow.source===R.participant.id?B.flow.target:B.flow.target===R.participant.id?B.flow.source:void 0,H=j?p(j):void 0;if(!$||!H||H.type==="bpmn:Participant")continue;const K=H.x+H.width/2;if(K<P.x+10||K>P.x+P.width-10)continue;const pe=P.y>H.y,we=pe?H.y+H.height:H.y,ie=pe?P.y:P.y+P.height,Oe=B.flow.source===R.participant.id?[{x:K,y:ie},{x:K,y:we}]:[{x:K,y:we},{x:K,y:ie}],_e=ot(o),Pe={..._e.edges.find(pt=>pt.id===B.flow.id),waypoints:Oe};rn(Pe,Wn(_e)).length||n.updateWaypoints($,Oe)}}};o0(!1);for(const _ of v){const R=_.flow;n.connect(f(R.source),f(R.target),{type:"bpmn:MessageFlow",businessObject:i.create("bpmn:MessageFlow",{id:R.id,name:R.name})})}{const P=new Set([...g.map(H=>H.flow.id),...v.map(H=>H.flow.id)].filter(H=>!!H)),O=o.filter(H=>!!H.waypoints),N=(H,K)=>Math.abs(K.x-H.x)<2?"L":Math.abs(K.x-(H.x+H.width))<2?"R":Math.abs(K.y-H.y)<2?"T":Math.abs(K.y-(H.y+H.height))<2?"B":void 0,B=new Map,$=(H,K,pe)=>{if(!H||!K||typeof H.x!="number")return;const we=N(H,K);if(!we)return;let ie=B.get(H.id);ie||B.set(H.id,ie=new Map),ie.set(we,[...ie.get(we)??[],pe])};for(const H of O){const K=H.waypoints;!K||K.length<2||($(H.source,K[0],{id:H.id,dir:"out"}),$(H.target,K[K.length-1],{id:H.id,dir:"in"}))}const j=new Set;for(const[H,K]of B){const pe=p(H);if(!pe||typeof pe.x!="number"||![...K.values()].some(ve=>{const Re=ve.filter(Me=>Me.dir==="in");return ve.length>=3&&Re.length>=1&&ve.some(Me=>Me.dir==="out")&&Re.some(Me=>P.has(Me.id))}))continue;const ie=d(pe);if(!ie||j.has(ie.id)||(ie.children??[]).some(ve=>ve.type==="bpmn:Lane"))continue;const Oe=(_0=K.get("T"))!=null&&_0.length?(w0=K.get("B"))!=null&&w0.length?void 0:"B":"T";if(!Oe||(Oe==="T"?pe.y-ie.y:ie.y+ie.height-(pe.y+pe.height))>=L)continue;const Pe=(ie.children??[]).filter(ve=>!("waypoints"in ve&&ve.waypoints)&&ve.type!=="label"&&typeof ve.x=="number"),pt=ie.y+ie.height;n.resizeShape(ie,{x:ie.x,y:ie.y,width:ie.width,height:ie.height+L});const ce=l().children.filter(ve=>!("waypoints"in ve&&ve.waypoints)&&ve.id!==ie.id&&typeof ve.y=="number"&&ve.y>=pt);ce.length&&n.moveElements(ce,{x:0,y:L}),Oe==="T"&&Pe.length&&n.moveElements(Pe,{x:0,y:L}),j.add(ie.id)}}const fd=20,a0=4,xL=2,_L=[10,30,80],Xo=()=>{const _=ot(o);return{bad:on(_).filter(R=>R.kind==="edge-crosses-shape"||R.kind==="edge-overlap-opposite"||R.kind==="edge-overlap-mixed").length,crossings:rh(_),straight:_.edges.filter(R=>R.type==="bpmn:MessageFlow"&&R.waypoints.length===2).length}},Zo=_=>{const R=ot(o),P=R.edges.find(O=>O.id===_);return P?rn(P,Wn(R)).length:0},Bu=_=>Zo(_)>0,Nu=_=>ot(o).edges.filter(R=>R.type==="bpmn:MessageFlow"&&R.id!==_&&R.waypoints.length===2).length,wL=(_,R,P)=>at([{subtree:_,pool:R}],P),s0=(_,R)=>R.bad>_.bad||R.crossings>_.crossings&&R.straight<=_.straight&&R.bad>=_.bad,$u=(_,R)=>s0(_,R)||R.straight<_.straight,Fu=(_,R,P=()=>!0,O=s0)=>{const N=Xo(),B=at(_,R);if(!B)return!1;const $=Xo();return O(N,$)||!P()?(B(),!1):!0},c0=(_,R,P,O=()=>!0)=>Fu([{subtree:_,pool:R}],P,O),Qr=_=>{var R;return!!((R=k.get(_))!=null&&R.node.participant)},os=new Map;for(const _ of v){if(!Qr(_.flow.target))continue;const R=os.get(_.flow.target)??[];R.push(_),os.set(_.flow.target,R)}const ju=[...os.keys()],dd=new Set(g.map(_=>_.flow.target)),u0=_=>en.findIndex(({op:R})=>R.participant.id===_);ju.sort((_,R)=>{var N,B;const P=dd.has(_)?1:0,O=dd.has(R)?1:0;return P!==O?P-O:u0((N=k.get(_))==null?void 0:N.node.participant)-u0((B=k.get(R))==null?void 0:B.node.participant)});const Jr=_=>_.x+_.width/2,EL=_=>{const R=new Map;for(const N of o.getAll()){const B=N;if(!B.waypoints||!B.source||!B.target)continue;(R.get(B.source.id)??R.set(B.source.id,[]).get(B.source.id)).push(B.target.id)}const P=new Set([_]),O=[_];for(let N=0;N<O.length;N++)for(const B of R.get(O[N])??[])P.has(B)||(P.add(B),O.push(B));return P},SL=(_,R)=>{const P=EL(R);let O;for(const N of o.getAll()){const B=N;if(B.type!=="bpmn:MessageFlow"||!B.source||!B.target||B.target.id!==_||P.has(B.source.id))continue;const $=B.source;if(typeof $.x!="number"||$.type==="bpmn:Participant")continue;const j=Jr($);(O===void 0||j>O)&&(O=j)}return O},hd=(_,R)=>{const P=p(_.flow.source);if(P)return P.type==="bpmn:Participant"?SL(P.id,R):Jr(P)},l0=_=>{let R;for(const P of os.get(_)??[]){const O=hd(P,_);O!==void 0&&(!R||O>R.cx)&&(R={op:P,cx:O})}return R==null?void 0:R.op},RL=_=>{const R=l0(_),P=p(_),O=R?hd(R,_):void 0;return P&&O!==void 0?O-Jr(P):void 0},CL=_=>{const R=RL(_);return R!==void 0&&Math.abs(R)<fd},p0=(_,R,P,O,N)=>{var B;for(let $=!0;$;){$=!1;for(const j of v){if(j.flow.id===P)continue;const H=R.has(j.flow.source),K=R.has(j.flow.target);if(H===K||O(H?j.flow.source:j.flow.target))continue;const pe=H?j.flow.target:j.flow.source;if(N(pe)||!Qr(pe))continue;const we=p(j.flow.id);if(!(we!=null&&we.waypoints)||we.waypoints.length!==2)continue;const ie=p(pe),Oe=(B=k.get(pe))==null?void 0:B.node.participant;if(!ie||!Oe)continue;const _e=Kn(pe,Pe=>Pe.x>=ie.x).filter(Pe=>!R.has(Pe.id));if(!(!_e.length||_e.some(Pe=>N(Pe.id)))){for(const Pe of _e)R.add(Pe.id);_.set(Oe,[..._.get(Oe)??[],..._e]),$=!0}}}return[..._].map(([$,j])=>({subtree:j,pool:f($)}))},f0=(_,R,P,O,N)=>p0(new Map([[R,[..._]]]),new Set(_.map(B=>B.id)),O,B=>B===P,B=>B===N),md=_=>{const R=l0(_);if(!R)return null;const P=p(_),O=p(R.flow.source),N=hd(R,_);if(!P||!O||N===void 0)return null;const B=N-Jr(P);if(B>=fd){const $=k.get(_).node.participant,j=Kn(_,H=>H.x>=P.x);return{groups:f0(j,$,_,R.flow.id,R.flow.source),dx:B}}if(-B>=fd&&Qr(R.flow.source)){const $=k.get(R.flow.source).node.participant,j=Kn(R.flow.source,H=>H.x>=O.x&&!CL(H.id));return{groups:f0(j,$,R.flow.source,R.flow.id,_),dx:-B}}return null},d0=()=>ju.map(_=>({id:_,plan:md(_)})).filter(_=>!!_.plan).sort((_,R)=>Math.min(..._.plan.groups.flatMap(P=>P.subtree.map(O=>O.x)))-Math.min(...R.plan.groups.flatMap(P=>P.subtree.map(O=>O.x)))).map(_=>_.id);for(let _=0;_<3;_++){const R=Xo(),P=[];for(const N of d0()){const B=md(N);if(!B)continue;const $=at(B.groups,B.dx);$&&P.push($)}if(!P.length)break;if(!$u(R,Xo()))continue;for(const N of P.reverse())N();let O=!1;for(const N of d0()){const B=md(N);B&&Fu(B.groups,B.dx,()=>!0,$u)&&(O=!0)}if(!O)break}for(const _ of ju){if(dd.has(_))continue;const R=k.get(_);if(!R||R.node.lane!==void 0)continue;const P=Y(R);if(P===void 0)continue;const O=p(_),N=O?d(O):void 0;if(!O||!N)continue;const B=N.y+ne+E(`pool:${R.node.participant??""}`,P)*L,$=B-(O.y+O.height/2);$!==0&&!le(N,O,O.x+O.width/2,B)&&n.moveElements([O],{x:0,y:$})}for(const _ of ju.flatMap(R=>os.get(R)??[])){if(!Bu(_.flow.id))continue;const R=p(_.flow.target);if(!R)continue;const P=f(k.get(_.flow.target).node.participant),O=Kn(_.flow.target,j=>j.x>=R.x),N=R.width+z,B=Zo(_.flow.id),$=Nu(_.flow.id);for(let j=1;j<=a0;j++){const H=()=>Zo(_.flow.id)<B&&Nu(_.flow.id)>=$;if(c0(O,P,N*j,H))break}}for(const _ of v){if(!Bu(_.flow.id))continue;const R=p(_.flow.source),P=p(_.flow.target);if(!R||!P||R.type==="bpmn:Participant"||P.type==="bpmn:Participant")continue;const O=R.x+R.width/2;if(Math.abs(O-(P.x+P.width/2))>15)continue;const[N,B]=R.y<P.y?[R.y+R.height,P.y]:[P.y+P.height,R.y],$=[...k.values()].map(j=>p(j.node.id)).filter(j=>!!j&&j.id!==R.id&&j.id!==P.id).filter(j=>j.x<=O&&O<=j.x+j.width&&j.y+j.height>N&&j.y<B).sort((j,H)=>j.x-H.x);for(const j of $){const H=(E0=k.get(j.id))==null?void 0:E0.node.participant,K=H?p(H):void 0;if(!K)continue;const pe=[...k.values()].filter(Re=>Re.node.participant===H).map(Re=>Re.node.id),we=Re=>Re.map(Me=>p(Me)).filter(Me=>!!Me),Oe=[Iu(j.id,Re=>{var Me;return((Me=k.get(Re.id))==null?void 0:Me.node.participant)===H}),we(pe)].filter(Re=>Re.length),_e=j.width+z,Pe=Zo(_.flow.id),pt=Nu(_.flow.id),ce=()=>Zo(_.flow.id)<Pe&&Nu(_.flow.id)>=pt;let ve=!1;for(const Re of Oe){for(let Me=1;Me<=a0;Me++)if(c0(Re,K,_e*Me,ce)){ve=!0;break}if(ve)break}if(!Bu(_.flow.id))break}}for(const _ of v){if(!Bu(_.flow.id))continue;const R=p(_.flow.id);if(((S0=R==null?void 0:R.waypoints)==null?void 0:S0.length)!==2)continue;const P=p(_.flow.source),O=p(_.flow.target);if(!P||!O||P.type==="bpmn:Participant"||O.type==="bpmn:Participant"||!Qr(_.flow.source)||!Qr(_.flow.target)||Math.abs(Jr(P)-Jr(O))>xL)continue;const N=Jr(P),B=R.waypoints.map(Pe=>Pe.y),[$,j]=[Math.min(...B),Math.max(...B)],H=Wn(ot(o)).filter(Pe=>Pe.id!==P.id&&Pe.id!==O.id&&Pe.x<N&&N<Pe.x+Pe.width&&$<Pe.y+Pe.height&&Pe.y<j);if(!H.length)continue;const K=(R0=k.get(_.flow.source))==null?void 0:R0.node.participant,pe=(C0=k.get(_.flow.target))==null?void 0:C0.node.participant;if(!K||!pe)continue;const we=new Map;for(const[Pe,pt,ce]of[[_.flow.source,P,K],[_.flow.target,O,pe]]){const ve=we.get(ce)??[],Re=Kn(Pe,Me=>Me.x>=pt.x).filter(Me=>!ve.some(ct=>ct.id===Me.id));we.set(ce,[...ve,...Re])}const ie=new Set([...we.values()].flat().map(Pe=>Pe.id)),Oe=p0(we,ie,_.flow.id,Pe=>Pe===_.flow.source||Pe===_.flow.target,()=>!1),_e=Math.max(...H.map(Pe=>Pe.x+Pe.width));for(const Pe of _L){const pt=_e+Pe-N;if(pt<=0)continue;if(Fu(Oe,pt,()=>{var ve,Re;return Zo(_.flow.id)===0&&((Re=(ve=p(_.flow.id))==null?void 0:ve.waypoints)==null?void 0:Re.length)===2},$u))break}}{const _=P=>P.y+P.height/2,R=[];for(const P of k.keys()){if(!Qr(P))continue;const O=g.filter($=>$.flow.target===P);if(O.length!==1)continue;const N=p(O[0].flow.source),B=p(P);!N||!B||!k.has(N.id)||Math.abs(_(N)-_(B))>1||B.x-(N.x+N.width)<=z+1||R.push({id:P,pred:N,node:B})}R.sort((P,O)=>P.node.x-O.node.x);for(const{id:P}of R){const O=k.get(P),N=p(P),B=p(g.find(ie=>ie.flow.target===P).flow.source);if(!N||!B)continue;const $=N.x-(B.x+B.width);if($<=z+1)continue;const j=f(O.node.participant),H=Kn(P,ie=>ie.x>=N.x),K=Xo(),pe=wL(H,j,-($-z));if(!pe)continue;const we=Xo();(we.bad>K.bad||we.crossings>=K.crossings||we.straight<K.straight)&&pe()}}o0(!0);for(const _ of b){const R=_.associations??[],P=R.map(B=>B.source===_.dataStore.id?B.target:B.source).map(p).find(Boolean),O=P?d(P)??l():l(),N=P?{x:P.x+P.width/2,y:P.y+P.height+110}:{x:200,y:tn+60};n.createShape({type:"bpmn:DataStoreReference",businessObject:i.create("bpmn:DataStoreReference",{id:_.dataStore.id,name:_.dataStore.name})},N,O);for(const B of R)r0(_.dataStore.id,B)}for(const _ of x){const P=f(_.association.target).type==="bpmn:DataStoreReference"?_.association.target:_.association.source;r0(P,_.association)}let h0=0;const eo=10,m0=40,PL=(_,R)=>{const P=R.map(H=>d(H)).filter(H=>!!H);for(const H of P){const K=eo,pe=H.y,we=H.y+H.height,ie=H.x,Oe=H.x+H.width;if(Math.abs(_.y-pe)<K){const _e=pe+K-_.y;_.y+=_e,_.height-=_e}if(Math.abs(_.y+_.height-we)<K&&(_.height=we-K-_.y),Math.abs(_.x-ie)<K){const _e=ie+K-_.x;_.x+=_e,_.width-=_e}Math.abs(_.x+_.width-Oe)<K&&(_.width=Oe-K-_.x)}if(!P.length)return;const O=Math.min(...P.map(H=>H.y)),N=Math.max(...P.map(H=>H.y+H.height)),B=O-_.y,$=_.y+_.height-N,j=m0-eo;if(B>0!=$>0)if(B>0&&B<j){const H=B+eo;_.y+=H,_.height-=H}else $>0&&$<j&&(_.height-=$+eo)},AL=(_,R)=>{const P=eo,O=30,N=o.filter(B=>B.type==="bpmn:Group"&&B.id!==R);for(const B of N){const $=B.x,j=B.x+B.width,H=B.y,K=B.y+B.height,pe=_.y<K&&H<_.y+_.height,we=_.x<j&&$<_.x+_.width;if(pe){if(Math.abs(_.x-j)<P){const ie=Math.min(j+P-_.x,O);ie>0&&_.width-ie>0&&(_.x+=ie,_.width-=ie)}if(Math.abs(_.x+_.width-$)<P){const ie=Math.min(_.x+_.width-($-P),O);ie>0&&_.width-ie>0&&(_.width-=ie)}}if(we){if(Math.abs(_.y-K)<P){const ie=Math.min(K+P-_.y,O);ie>0&&_.height-ie>0&&(_.y+=ie,_.height-=ie)}if(Math.abs(_.y+_.height-H)<P){const ie=Math.min(_.y+_.height-(H-P),O);ie>0&&_.height-ie>0&&(_.height-=ie)}}}},gd=(_,R)=>{const P=m0,O=Math.min(..._.map(H=>H.x))-P,N=Math.min(..._.map(H=>H.y))-P,B=Math.max(..._.map(H=>H.x+H.width))+P,$=Math.max(..._.map(H=>H.y+H.height))+P,j={x:O,y:N,width:B-O,height:$-N};return PL(j,_),AL(j,R),j};for(const _ of T){const R=(_.group.members??[]).map(p).filter(N=>!!N);let P;R.length?P=gd(R,_.group.id):(P={x:300+h0*350,y:40,width:300,height:200},h0++);const O=n.createShape({type:"bpmn:Group",businessObject:i.create("bpmn:Group",{id:_.group.id}),width:P.width,height:P.height},{x:P.x+P.width/2,y:P.y+P.height/2},l());_.group.name&&n.updateLabel(O,_.group.name),(P0=_.group.members)!=null&&P0.length&&A(O,"bwl:Members",{refs:_.group.members.join(" ")})}{const _=o.filter(N=>!!N.waypoints),R=new Map,P=(N,B)=>{!N||!B||(R.has(N)||R.set(N,new Set),R.get(N).add(B))};for(const N of _){const B=(A0=N.source)==null?void 0:A0.id,$=(T0=N.target)==null?void 0:T0.id;P(B,$),((M0=N.type)!=null&&M0.includes("DataOutputAssociation")||(k0=N.type)!=null&&k0.includes("DataInputAssociation")||N.type==="bpmn:Association")&&P($,B)}const O=o.filter(N=>N.type==="bpmn:Group");for(const N of O){const $=(((O0=N.businessObject.extensionElements)==null?void 0:O0.values)??[]).find(ce=>ce.$type==="bwl:Members"),j=(($==null?void 0:$.refs)??"").split(" ").filter(Boolean);if(!j.length)continue;const H=new Set(j),K=[...j];for(;K.length;){const ce=K.shift();for(const ve of R.get(ce)??[])H.has(ve)||(H.add(ve),K.push(ve))}const pe=N.x,we=N.x+N.width,ie=N.y,Oe=N.y+N.height,_e=ce=>g.filter(ve=>ve.flow.target===ce).length,Pe=ce=>{var Re;const ve=((Re=p(ce))==null?void 0:Re.type)??"";if(ve==="bpmn:StartEvent"&&_e(ce)===0)return!1;if(ve.endsWith("Gateway")){const Me=g.filter(ct=>ct.flow.target===ce).map(ct=>ct.flow.source);if(Me.length&&Me.every(ct=>{var it;return((it=p(ct))==null?void 0:it.type)==="bpmn:StartEvent"&&_e(ct)===0}))return!1}return!0},pt=o.filter(ce=>Ze(ce)).filter(ce=>ce.type!=="bpmn:Group"&&ce.type!=="bpmn:Participant"&&ce.type!=="bpmn:TextAnnotation"&&!H.has(ce.id)&&Qr(ce.id)&&Pe(ce.id)&&ce.x<we&&ce.x+ce.width>pe&&ce.y<Oe&&ce.y+ce.height>ie);if(pt.length)for(const ce of[-1,1]){const ve=pt.filter(re=>(re.x+re.width-pe<=we-re.x?-1:1)===ce);if(!ve.length)continue;const Re=[];for(const re of ve){const Z=Re.find(fe=>fe.some(de=>re.y<de.y+de.height&&re.y+re.height>de.y));Z?Z.push(re):Re.push([re])}const Me=new Map;for(const re of Re){let Z=ce<0?pe-eo:we+eo;for(const fe of[...re].sort((de,oe)=>ce<0?oe.x-de.x:de.x-oe.x)){const de=ce<0?Math.min(fe.x,Z-fe.width):Math.max(fe.x,Z);Z=ce<0?de-Gt:de+fe.width+Gt,de!==fe.x&&Math.sign(de-fe.x)===ce&&Me.set(fe.id,de-fe.x)}}const ct=new Map,it=re=>ct.get(re)===re||!ct.get(re)?re:it(ct.get(re));for(const re of ve)ct.set(re.id,re.id);for(const re of v){const Z=Me.has(re.flow.source)?re.flow.source:void 0,fe=Me.has(re.flow.target)?re.flow.target:void 0;if(!Z||!fe)continue;const de=p(re.flow.id);((D0=de==null?void 0:de.waypoints)==null?void 0:D0.length)===2&&ct.set(it(Z),it(fe))}const st=new Map;for(const re of ve){if(!Me.has(re.id))continue;const Z=it(re.id);st.set(Z,[...st.get(Z)??[],re])}const ze=[...st.values()].sort((re,Z)=>ce<0?Math.min(...re.map(fe=>fe.x))-Math.min(...Z.map(fe=>fe.x)):Math.max(...Z.map(fe=>fe.x))-Math.max(...re.map(fe=>fe.x))),ue=[];let Ke=!0;for(const re of ze){const Z=re.map(oe=>Me.get(oe.id)??0).reduce((oe,Se)=>Math.abs(Se)>Math.abs(oe)?Se:oe,0),fe=new Map;let de=!0;for(const oe of re){const Se=d(oe);if(!Se){de=!1;break}fe.has(Se.id)||fe.set(Se.id,{subtree:[],pool:Se}),fe.get(Se.id).subtree.push(oe)}de&&Fu([...fe.values()],Z,()=>!0,$u)?ue.push({shapes:re,dx:Z}):Ke=!1}if(!Ke)for(const re of ue.reverse())n.moveElements(re.shapes,{x:-re.dx,y:0})}}}{const _=new Set([...T.map(R=>R.group.id),...Qt(e,"group.update").map(R=>R.id)]);for(const R of o.filter(P=>P.type==="bpmn:Group")){if(_.has(R.id))continue;const O=(((L0=R.businessObject.extensionElements)==null?void 0:L0.values)??[]).find(j=>j.$type==="bwl:Members"),N=((O==null?void 0:O.refs)??"").split(" ").filter(Boolean).map(p).filter(j=>!!j);!N.length||!N.some(j=>{const H=m.get(j.id);return!H||H.x!==j.x||H.y!==j.y})||!N.some(j=>j.x<R.x||j.y<R.y||j.x+j.width>R.x+R.width||j.y+j.height>R.y+R.height)||n.resizeShape(R,gd(N,R.id))}}{const R=new Map(ho(ot(o)).map(j=>[j.owner,j.rect])),P=o.filter(j=>!!j.waypoints),O=new Map,N=(j,H)=>{!j||!H||(O.has(j)||O.set(j,new Set),O.get(j).add(H))};for(const j of P){const H=(I0=j.source)==null?void 0:I0.id,K=(B0=j.target)==null?void 0:B0.id;N(H,K),((N0=j.type)!=null&&N0.includes("DataOutputAssociation")||($0=j.type)!=null&&$0.includes("DataInputAssociation")||j.type==="bpmn:Association")&&N(K,H)}const B=j=>g.filter(H=>H.flow.target===j).length,$=j=>{var K;const H=((K=p(j))==null?void 0:K.type)??"";if(H==="bpmn:StartEvent"&&B(j)===0)return!1;if(H.endsWith("Gateway")){const pe=g.filter(we=>we.flow.target===j).map(we=>we.flow.source);if(pe.length&&pe.every(we=>{var ie;return((ie=p(we))==null?void 0:ie.type)==="bpmn:StartEvent"&&B(we)===0}))return!1}return!0};for(const j of o.filter(H=>H.type==="bpmn:Group")){const K=(((F0=j.businessObject.extensionElements)==null?void 0:F0.values)??[]).find(Z=>Z.$type==="bwl:Members"),pe=((K==null?void 0:K.refs)??"").split(" ").filter(Boolean);if(!pe.length)continue;const we=pe.map(p).filter(Z=>!!Z);if(!we.length||!(T.some(Z=>Z.group.id===j.id)||Qt(e,"group.update").some(Z=>Z.id===j.id)||we.some(Z=>{const fe=m.get(Z.id);return!fe||fe.x!==Z.x||fe.y!==Z.y})))continue;const Oe=new Set(pe),_e=[...pe];for(;_e.length;){const Z=_e.shift();for(const fe of O.get(Z)??[])Oe.has(fe)||(Oe.add(fe),_e.push(fe))}const Pe=j.x,pt=j.x+j.width,ce=j.y,ve=j.y+j.height,Re=Z=>{const fe=R.get(Z.id),de={x:Z.x,y:Z.y,width:Z.width,height:Z.height};return fe?[de,{x:fe.x,y:fe.y,width:fe.width,height:fe.height}]:[de]},Me=we.flatMap(Re),ct=Math.min(...Me.map(Z=>Z.x)),it=Math.max(...Me.map(Z=>Z.x+Z.width)),st=Math.min(...Me.map(Z=>Z.y)),ze=Math.max(...Me.map(Z=>Z.y+Z.height)),ue={L:ct-Pe,R:pt-it,T:st-ce,B:ve-ze},Ke=o.filter(Z=>Ze(Z)).filter(Z=>Z.type!=="bpmn:Group"&&Z.type!=="bpmn:Participant"&&Z.type!=="bpmn:TextAnnotation"&&!Oe.has(Z.id)&&$(Z.id)&&Z.x<pt&&Z.x+Z.width>Pe&&Z.y<ve&&Z.y+Z.height>ce);if(!Ke.length)continue;const re={L:0,R:0,T:0,B:0};for(const Z of Ke){const fe=Re(Z),de=Math.min(...fe.map(rt=>rt.x)),oe=Math.max(...fe.map(rt=>rt.x+rt.width)),Se=Math.min(...fe.map(rt=>rt.y)),he=Math.max(...fe.map(rt=>rt.y+rt.height)),Ve={L:oe-Pe,R:pt-de,T:he-ce,B:ve-Se},Tt=["L","R","T","B"].filter(rt=>Ve[rt]<=ue[rt]+.001);if(!Tt.length)continue;const Je=Tt.reduce((rt,Vt)=>Ve[Vt]<Ve[rt]?Vt:rt,Tt[0]);re[Je]=Math.max(re[Je],Math.min(Ve[Je]+10,ue[Je]))}!re.L&&!re.R&&!re.T&&!re.B||n.resizeShape(j,{x:j.x+re.L,y:j.y+re.T,width:j.width-re.L-re.R,height:j.height-re.T-re.B})}}const g0=_=>{const R=_.waypoints;if(R!=null&&R.length){const O=R[Math.floor((R.length-1)/2)];return{x:O.x,y:O.y,width:0,height:0}}const P=_;return{x:P.x,y:P.y,width:P.width,height:P.height}};let as=0;const y0=12,v0=14,TL=15,ML=300,kL=_=>{const R=_.split(`
|
|
7
|
+
`),P=Math.max(...R.map(B=>lo(B,y0))),O=Math.max(100,Math.min(ML,Math.ceil(P)+v0)),N=R.reduce((B,$)=>B+Math.max(1,Math.ceil((lo($,y0)+v0)/O)),0);return{width:O,height:Math.max(30,N*TL+10)}};for(const _ of C){const R=_.association,P=((j0=_.placement)==null?void 0:j0.anchor)??(R?R.source===_.annotation.id?R.target:R.source:void 0),O=P?p(P):void 0,N=O?g0(O):void 0,B=kL(_.annotation.text??"");let $;if(N&&_.placement){const[pe,we]=Ms[_.placement.side],ie=_.placement.offset??50;$={x:N.x+N.width/2+pe*(N.width/2+B.width/2+ie),y:N.y+N.height/2+we*(N.height/2+B.height/2+ie)}}else N?($={x:N.x+N.width/2+180+as%3*260,y:N.y-110-as%2*95},as++):($={x:300+as*260,y:60},as++);const j=O?d(O)??l():l(),H=j;N&&typeof H.x=="number"&&typeof H.width=="number"&&H.type==="bpmn:Participant"&&($=xl(o,N,B,H,_.placement?{placement:_.placement}:{from:$}));const K=n.createShape({type:"bpmn:TextAnnotation",width:B.width,height:B.height,businessObject:i.create("bpmn:TextAnnotation",{id:_.annotation.id,text:_.annotation.text})},$,j);if(R){const pe=we=>we===_.annotation.id?K:f(we);n.connect(pe(R.source),pe(R.target),R.id?{type:"bpmn:Association",businessObject:i.create("bpmn:Association",{id:R.id})}:{type:"bpmn:Association"})}_.placement&&A(K,"bwl:Placement",I(_.placement))}for(const _ of Qt(e,"association.add")){const R=_.association;n.connect(f(R.source),f(R.target),R.id?{type:"bpmn:Association",businessObject:i.create("bpmn:Association",{id:R.id})}:{type:"bpmn:Association"})}for(const _ of Qt(e,"node.update")){let R=f(_.id);if(_.type&&Ts(_.type)!==R.type&&(R=c.replaceElement(R,{type:Ts(_.type)})),_.name!==void 0&&n.updateProperties(R,{name:_.name??void 0}),_.lane||_.band!==void 0){_.band!==void 0&&n.updateProperties(R,{"bwl:band":_.band});const P=R.y+R.height/2,O=d(R),N=_.lane?f(_.lane):((O==null?void 0:O.children)??[]).find($=>$.type==="bpmn:Lane"&&P>=$.y&&P<=$.y+$.height);_.band!==void 0&&nt(N==null?void 0:N.id,_.band,O);const B=N?N.y+(_.band===void 0?N.height/2:Math.min(N.height/2,me)+E(N.id,_.band)*L):_.band!==void 0&&O?O.y+ne+E(`pool:${O.id}`,_.band)*L:void 0;if(B!==void 0){const $=B-P;$!==0&&n.moveElements([R],{x:0,y:$})}}}for(const _ of Qt(e,"sequenceFlow.update")){const R=f(_.id);if(_.source!==void 0||_.target!==void 0){const P=R,O=_.source!==void 0?f(_.source):P.source,N=_.target!==void 0?f(_.target):P.target,B=$=>({x:$.x+$.width/2,y:$.y+$.height/2});n.reconnect(P,O,N,[B(O),B(N)])}_.name!==void 0&&n.updateProperties(R,{name:_.name??void 0}),_.condition!==void 0&&n.updateProperties(R,{name:((H0=_.condition)==null?void 0:H0.label)??void 0})}for(const _ of Qt(e,"messageFlow.update"))_.name!==void 0&&n.updateProperties(f(_.id),{name:_.name??void 0});for(const _ of Qt(e,"dataStore.update"))_.name!==void 0&&n.updateProperties(f(_.id),{name:_.name??void 0});for(const _ of Qt(e,"annotation.update")){const R=f(_.id);if(_.text!==void 0&&n.updateProperties(R,{text:_.text}),_.placement===null)A(R,"bwl:Placement",null);else if(_.placement){const P=f(_.placement.anchor),O=g0(P),N=d(P)??l(),B=typeof N.x=="number"&&typeof N.width=="number"&&N.type==="bpmn:Participant",[$,j]=Ms[_.placement.side],H=_.placement.offset??50,K={x:O.x+O.width/2+$*(O.width/2+R.width/2+H),y:O.y+O.height/2+j*(O.height/2+R.height/2+H)},pe=B?xl(o,O,{width:R.width,height:R.height},N,{placement:_.placement,selfId:_.id}):K;n.moveElements([R],{x:pe.x-(R.x+R.width/2),y:pe.y-(R.y+R.height/2)}),A(R,"bwl:Placement",I(_.placement))}}for(const _ of Qt(e,"group.update")){const R=f(_.id);if(_.name!==void 0&&n.updateLabel(R,_.name??""),_.members){const P=_.members.map(p).filter(O=>!!O);P.length&&n.resizeShape(R,gd(P,_.id)),A(R,"bwl:Members",{refs:_.members.join(" ")})}}}function _l(e){switch(e.kind){case"annotation-over-label":return[e.annotation];case"edge-crosses-shape":return[e.shape];case"shape-outside-container":return[e.shape];case"shape-overlap":return e.shapes;default:return[]}}function P1(e,t,n){var l,p;const{elementRegistry:i}=e,r=e.modeling,o=f=>on(f).filter(d=>!t.has(hn(d))),a=f=>{var d;return((d=i.get(f))==null?void 0:d.type)==="bpmn:TextAnnotation"},s=ot(i),c=o(s),u=[...new Set(c.flatMap(_l))].filter(f=>n.has(f)&&a(f));if(u.length)for(const f of u){const d=i.get(f);if(!d||typeof d.x!="number"||typeof d.width!="number")continue;let m=d.parent,h;for(;m;){if(m.type==="bpmn:Participant"){h=m;break}m=m.parent}if(!h){const me=d.x+d.width/2,Ue=d.y+d.height/2;h=i.getAll().find(je=>{if(je.type!=="bpmn:Participant")return!1;const q=je;return typeof q.x=="number"&&typeof q.width=="number"&&me>=q.x&&me<=q.x+q.width&&Ue>=q.y&&Ue<=q.y+q.height})}if(!h||typeof h.x!="number"||typeof h.width!="number")continue;const g=(((l=d.businessObject.extensionElements)==null?void 0:l.values)??[]).find(me=>me.$type==="bwl:Placement"),v=[...d.incoming??[],...d.outgoing??[]].find(me=>me.type==="bpmn:Association"),b=(g!=null&&g.anchor?i.get(g.anchor):void 0)??(v?((p=v.source)==null?void 0:p.id)===f?v.target:v.source:void 0);if(!b)continue;const x=b.waypoints,C=x!=null&&x.length?{x:x[Math.floor((x.length-1)/2)].x,y:x[Math.floor((x.length-1)/2)].y,width:0,height:0}:{x:b.x,y:b.y,width:b.width,height:b.height},T={width:d.width,height:d.height},k={x:d.x+d.width/2,y:d.y+d.height/2},A=g==null?void 0:g.side,I=[];A&&A in Ms&&I.push(xl(i,C,T,h,{placement:{side:A,offset:(g==null?void 0:g.offset)??null},selfId:f}));for(const[me,Ue]of[[-1,0],[1,0],[0,-1],[0,1]])for(let je=1;je<=C1;je++)I.push({x:k.x+me*Hh*je,y:k.y+Ue*Hh*je});const D={...s,edges:s.edges.filter(me=>me.id!==(v==null?void 0:v.id))},L=o(D),z=L.filter(me=>_l(me).includes(f)).length;if(!z)continue;let ne;for(const me of I){const Ue=me.x-k.x,je=me.y-k.y;if(!Ue&&!je||me.x-T.width/2<h.x||me.x+T.width/2>h.x+h.width||me.y-T.height/2<h.y||me.y+T.height/2>h.y+h.height)continue;const q={...D,shapes:D.shapes.map(Ae=>Ae.id===f?{...Ae,x:Ae.x+Ue,y:Ae.y+je}:Ae)},le=o(q),ae=le.filter(Ae=>_l(Ae).includes(f)).length;if(ae>=z||le.length>L.length)continue;const ge=Math.abs(Ue)+Math.abs(je);if((!ne||ae<ne.mine||ae===ne.mine&&(le.length<ne.all||le.length===ne.all&&ge<ne.dist))&&(ne={x:me.x,y:me.y,mine:ae,all:le.length,dist:ge}),ne.mine===0&&ne.all<L.length)break}ne&&r.moveElements([d],{x:ne.x-k.x,y:ne.y-k.y})}}const A1=60;function T1(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=l=>on(l).filter(p=>!t.has(hn(p))),a=l=>l.filter(p=>p.kind==="pool-overlap"),s=new Map(n.shapes.map(l=>[l.id,l])),c=(l,p)=>p.x>=l.x&&p.y>=l.y&&p.x+p.width<=l.x+l.width&&p.y+p.height<=l.y+l.height,u=l=>{if(!s.get(l))return[l];const f=new Set,d=new Set([l]);for(let h=0;h<4;h++){let y=!1;for(const g of n.shapes)g.type!=="bpmn:Group"||f.has(g.id)||[...d].some(v=>{const b=s.get(v);return b&&c(g,b)})&&(f.add(g.id),y=!0);for(const g of n.shapes)g.type!=="bpmn:Participant"||d.has(g.id)||[...f].some(v=>{const b=s.get(v);return b&&c(b,g)})&&(d.add(g.id),y=!0);if(!y)break}const m=n.shapes.filter(h=>!h.parent&&!d.has(h.id)&&!f.has(h.id)&&h.type!=="bpmn:Group"&&h.type!=="bpmn:Participant").filter(h=>[...f].some(y=>{const g=s.get(y);return g&&c(g,h)})).map(h=>h.id);return[...d,...f,...m]};for(let l=0;l<6;l++){const p=ot(i),f=o(p),d=a(f);if(!d.length)return;const m=new Map(p.shapes.map(x=>[x.id,x]));let h=null;for(const x of d){if(x.kind!=="pool-overlap")continue;const[C,T]=x.pools,k=m.get(C),A=m.get(T);if(!k||!A)continue;const[I,D]=k.x<=A.x?[k,A]:[A,k];if(x.contained)continue;const L=s.get(I.id),z=s.get(D.id),ne=L&&z?Math.max(z.x-(L.x+L.width),0):A1,me=I.x+I.width+ne-D.x;if(me<=0)continue;const Ue=u(D.id).filter(je=>i.get(je));Ue.length&&(!h||me>h.dx)&&(h={movers:Ue,dx:me})}if(!h)return;const y=h.movers.map(x=>i.get(x)).filter(x=>!!x&&typeof x.x=="number");if(!y.length)return;const g=f.length,v=d.length;r.moveElements(y,{x:h.dx,y:0});const b=o(ot(i));if(!(a(b).length<v&&b.length<=g)){r.moveElements(y,{x:-h.dx,y:0});return}}}function M1(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=u=>on(u).filter(l=>!t.has(hn(l))),a=(u,l)=>l.x>=u.x&&l.y>=u.y&&l.x+l.width<=u.x+u.width&&l.y+l.height<=u.y+u.height,s=u=>({l:Math.min(...u.map(l=>l.x)),t:Math.min(...u.map(l=>l.y)),r:Math.max(...u.map(l=>l.x+l.width)),b:Math.max(...u.map(l=>l.y+l.height))}),c=n.shapes.filter(u=>{var l;return u.type==="bpmn:Group"&&!((l=u.members)!=null&&l.length)});if(c.length)for(const u of c){const l=i.get(u.id);if(!l||typeof l.x!="number")continue;const p=n.shapes.filter(T=>T.id!==u.id&&T.type!=="bpmn:Group"&&a(u,T));if(!p.length)continue;const f=p.map(T=>i.get(T.id)).filter(T=>!!T&&typeof T.x=="number");if(f.length!==p.length)continue;const d=s(p),m=s(f),h=m.l+(u.x-d.l),y=m.t+(u.y-d.t),g=m.r+(u.x+u.width-d.r),v=m.b+(u.y+u.height-d.b),b={x:h,y,width:g-h,height:v-y};if(b.width<=0||b.height<=0||Math.abs(b.x-l.x)<1&&Math.abs(b.y-l.y)<1&&Math.abs(b.width-l.width)<1&&Math.abs(b.height-l.height)<1)continue;const x=o(ot(i)).length,C={x:l.x,y:l.y,width:l.width,height:l.height};r.resizeShape(l,b),o(ot(i)).length>x&&r.resizeShape(l,C)}}function Gh(e,t,n=zh){const i=jh(e),r=Fh(t,dh(i.elementRegistry)),o={edgeCrossings:{before:0,after:0,pairs:[],solidPairs:0,dashedPairs:0,mixedPairs:0,crossPoolMessages:0}};if(r.length)return{ok:!1,issues:r,findings:[],stats:o};const a=ot(i.elementRegistry),s=new Set(on(a).map(hn)),c=new Set(a.edges.map(g=>g.id)),u=new Set(a.shapes.map(g=>g.id)),l=ws(a),p=l.length,f=new Set(l.map(([g,v])=>`${g}|${v}`)),d=e.get("commandStack");try{wd(d,()=>{n(t,i),T1(i,s,a),M1(i,s,a),xh(i,c);const g=ml(i,s);yh(i,f,c),Mh(i,s,c),Eh(i,c),y1(i,c),Ch(i,s,c),_1(i,s,c),Lh(i,s,c),Dh(i,c),Bh(i,u),P1(i,s,u),ml(i,s,g)})}catch(g){return{ok:!1,issues:[{kind:"lower-failed",message:g instanceof Error?g.message:String(g)}],findings:[],stats:o}}const m=ot(i.elementRegistry),h=on(m).filter(g=>!s.has(hn(g))),y=oh(m);return{ok:!0,issues:[],findings:h,stats:{edgeCrossings:{before:p,after:y.pairs.length,pairs:y.pairs,solidPairs:y.solidPairs,dashedPairs:y.dashedPairs,mixedPairs:y.mixedPairs,crossPoolMessages:y.crossPoolMessages}}}}function k1(e){const t=e.slice(e.indexOf(":")+1);return t.charAt(0).toLowerCase()+t.slice(1)}function O1(e,t){return typeof e.get=="function"?e.get(t):e[t]}function Vh(e,t){const n=O1(e,t);return typeof n=="number"&&Number.isFinite(n)?n:void 0}function Wh(e,t){var i;return(((i=e.extensionElements)==null?void 0:i.values)??[]).find(r=>(r==null?void 0:r.$type)===t)}function D1(e){return typeof e=="string"&&zu.includes(e)}function li(e){if(typeof e=="string")return e;const t=e==null?void 0:e.id;return typeof t=="string"?t:void 0}function Uh(e){const t=e.rootElements??[],n=t.find(q=>q.$type==="bpmn:Collaboration"),i=new Map(t.filter(q=>q.$type==="bpmn:Process").map(q=>[q.id,q])),r=[],o=[],a=[],s=[],c=[],u=[],l={poolOrders:{},bands:{},placements:{}},p=[],f=[],d=[],m=[],h=[],y=[],g=new Set,v=new Set,b=q=>{q&&g.add(q)},x=q=>{g.add(q),v.add(q)},C=q=>{const le=Wh(q,"bwl:Placement");if(!le)return;const ae=typeof le.anchor=="string"?le.anchor:void 0;if(!ae||!D1(le.side))return;const ge=typeof le.offset=="number"?le.offset:void 0;h.push({owner:q.id,anchor:ae,side:le.side,...ge!==void 0?{offset:ge}:{}})},T=q=>{const le=Wh(q,"bwl:Members"),ae=typeof(le==null?void 0:le.refs)=="string"?le.refs.split(/\s+/).filter(Boolean):[];ae.length&&y.push({owner:q.id,refs:ae})},k=q=>{var le;for(const ae of q)switch(b(ae.id),ae.$type){case"bpmn:TextAnnotation":x(ae.id),s.push({id:ae.id,text:typeof ae.text=="string"?ae.text:""}),C(ae);break;case"bpmn:Association":d.push({id:ae.id,type:ae.$type,source:li(ae.sourceRef),target:li(ae.targetRef)});break;case"bpmn:Group":{x(ae.id);const ge=(le=ae.categoryValueRef)==null?void 0:le.value;c.push({id:ae.id,...typeof ge=="string"&&ge?{name:ge}:{}}),T(ae);break}default:u.push({id:ae.id,type:ae.$type,reason:"type-outside-mvp"})}},A=q=>{for(const le of q.flowElements??[])b(le.id),u.push({id:le.id,type:le.$type,reason:"inside-container"}),(le.flowElements??[]).length&&A(le);for(const le of q.artifacts??[])b(le.id),u.push({id:le.id,type:le.$type,reason:"inside-container"})},I=(q,le)=>{const ae=q.flowElements??[],ge=(q.laneSets??[]).flatMap(W=>W.lanes??[]),Ae=new Map;for(const W of ge){b(W.id);for(const Y of W.flowNodeRef??[]){const ee=li(Y);ee&&Ae.set(ee,W.id)}}for(const W of ae){if(b(W.id),W.$type==="bpmn:SequenceFlow"){p.push({id:W.id,source:li(W.sourceRef),target:li(W.targetRef),...typeof W.name=="string"&&W.name?{name:W.name}:{}});continue}if(W.$type==="bpmn:DataStoreReference"){x(W.id),a.push({id:W.id,...W.name?{name:W.name}:{}});continue}const Y=k1(W.$type);if(!yd(Y)){u.push({id:W.id,type:W.$type,reason:"type-outside-mvp"});continue}x(W.id);const ee=Y==="boundaryEvent"?li(W.attachedToRef):void 0;o.push({id:W.id,type:Y,...W.name?{name:W.name}:{},...le?{participant:le}:{},...Ae.has(W.id)?{lane:Ae.get(W.id)}:{},...ee?{attachedTo:ee}:{}}),Y==="subProcess"&&A(W);const Ce=Vh(W,"bwl:band");Ce!==void 0&&(l.bands[W.id]=Ce);for(const gt of W.dataOutputAssociations??[])b(gt.id),m.push({id:gt.id,type:gt.$type,source:W.id,target:li(gt.targetRef)});for(const gt of W.dataInputAssociations??[])b(gt.id),m.push({id:gt.id,type:gt.$type,source:li((gt.sourceRef??[])[0]),target:W.id})}k(q.artifacts??[])};if(n){const q=new Set;for(const le of n.participants??[]){x(le.id);const ae=li(le.processRef);ae&&q.add(ae);const ge=ae?i.get(ae):void 0,Ae=((ge==null?void 0:ge.laneSets)??[]).flatMap(Ce=>Ce.lanes??[]),W=Ae.map(Ce=>({id:Ce.id,...Ce.name?{name:Ce.name}:{}}));for(const Ce of W)x(Ce.id);const Y=!ge||(ge.flowElements??[]).length===0&&Ae.length===0&&(ge.artifacts??[]).length===0;r.push({id:le.id,...le.name?{name:le.name}:{},...Y?{blackBox:!0}:{},...W.length?{lanes:W}:{}});const ee=Vh(le,"bwl:poolOrder");ee!==void 0&&(l.poolOrders[le.id]=ee),ge&&I(ge,le.id)}for(const le of n.messageFlows??[])b(le.id),f.push({id:le.id,source:li(le.sourceRef),target:li(le.targetRef),...typeof le.name=="string"&&le.name?{name:le.name}:{}});k(n.artifacts??[]);for(const[le,ae]of i)!q.has(le)&&(ae.flowElements??[]).length>0&&u.push({id:le,type:ae.$type,reason:"unreachable-process"})}else for(const q of i.values())I(q);const D=[],L=[],z=[],ne=[],me=(q,le)=>!!q&&!!le&&v.has(q)&&v.has(le);for(const q of p){if(!me(q.source,q.target)){u.push({id:q.id,type:"bpmn:SequenceFlow",reason:"endpoint-outside-mvp"});continue}D.push({id:q.id,source:q.source,target:q.target,...q.name?{name:q.name}:{}}),v.add(q.id)}for(const q of f){if(!me(q.source,q.target)){u.push({id:q.id,type:"bpmn:MessageFlow",reason:"endpoint-outside-mvp"});continue}L.push({id:q.id,source:q.source,target:q.target,...q.name?{name:q.name}:{}}),v.add(q.id)}for(const q of m){if(!me(q.source,q.target)){u.push({id:q.id??"",type:q.type,reason:"endpoint-outside-mvp"});continue}ne.push({...q.id?{id:q.id}:{},source:q.source,target:q.target}),q.id&&v.add(q.id)}for(const q of d){if(!me(q.source,q.target)){u.push({id:q.id??"",type:q.type,reason:"endpoint-outside-mvp"});continue}z.push({...q.id?{id:q.id}:{},source:q.source,target:q.target})}const Ue=new Map(c.map(q=>[q.id,q]));for(const{owner:q,refs:le}of y){const ae=le.filter(Ae=>g.has(Ae)),ge=Ue.get(q);ge&&ae.length&&(ge.members=ae)}for(const q of h)g.has(q.anchor)&&(l.placements[q.owner]={anchor:q.anchor,side:q.side,...q.offset!==void 0?{offset:q.offset}:{}});return{definition:{...r.length?{participants:r}:{},nodes:o,sequenceFlows:D,...L.length?{messageFlows:L}:{},...a.length?{dataStores:a}:{},...ne.length?{dataAssociations:ne}:{},...s.length?{annotations:s}:{},...z.length?{associations:z}:{},...c.length?{groups:c}:{}},hints:l,omitted:u}}async function L1(e){const{definitions:t,warnings:n}=await ol(e);return{...Uh(t),warnings:n}}function I1(e,t,n,i={}){return{documentId:e,baseVersion:t,ops:[...n],origin:i.origin??"agent",clientOpId:(i.mkClientOpId??(()=>crypto.randomUUID()))()}}async function Yh(e,t,{currentVersion:n}){if(t.baseVersion!==n)return{status:"conflict",baseVersion:t.baseVersion,currentVersion:n};const i=Gh(e,t.ops);if(!i.ok)return{status:"rejected",issues:i.issues};const{xml:r}=await e.saveXML({format:!0});return{status:"applied",version:n+1,xml:r??"",findings:i.findings,stats:i.stats}}const B1=Symbol("bpmn-editor");function N1(){const e=It.ref(!1),t=It.ref(!0),n=It.ref(!1);let i,r;const o=()=>{e.value=!0};function a(u,l){u.get("canvas").getContainer().style.pointerEvents=l?"":"none";const p=u.get("keyboard");l?(r&&p.bind(r),r=void 0):r||(r=p.getBinding(),p.unbind())}function s(){if(!i)throw new Error("modeler not attached — 뷰 @ready 후 attach() 필요");return i}function c(){return i==null?void 0:i.get("commandStack")}return{dirty:e,editable:t,agentBusy:n,attach(u){i&&this.detach(),i=u,i.get("eventBus").on("commandStack.changed",o),t.value||a(i,!1)},detach(){i==null||i.get("eventBus").off("commandStack.changed",o),i&&!t.value&&a(i,!0),r=void 0,i=void 0},setEditable(u){t.value=u,i&&a(i,u)},async applyAgentBatch(u,l){const p=s();n.value=!0;try{const f=await Yh(p,u,{currentVersion:l});return f.status==="applied"&&(e.value=!1),f}finally{n.value=!1}},async importXml(u){const{warnings:l}=await s().importXML(u);return e.value=!1,{warnings:al(l)}},async saveXml(){const{xml:u}=await s().saveXML({format:!0});return e.value=!1,u??""},undo:()=>{var u;return(u=c())==null?void 0:u.undo()},redo:()=>{var u;return(u=c())==null?void 0:u.redo()},canUndo:()=>{var u;return((u=c())==null?void 0:u.canUndo())??!1},canRedo:()=>{var u;return((u=c())==null?void 0:u.canRedo())??!1}}}function be(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}function $1(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var wl={exports:{}},qh;function F1(){if(qh)return wl.exports;qh=1;var e=wl.exports=function(t,n){if(n||(n=16),t===void 0&&(t=128),t<=0)return"0";for(var i=Math.log(Math.pow(2,t))/Math.log(n),r=2;i===1/0;r*=2)i=Math.log(Math.pow(2,t/r))/Math.log(n)*r;for(var o=i-Math.floor(i),a="",r=0;r<Math.floor(i);r++){var s=Math.floor(Math.random()*n).toString(n);a=s+a}if(o){var c=Math.pow(n,o),s=Math.floor(Math.random()*c).toString(n);a=s+a}var u=parseInt(a,n);return u!==1/0&&u>=Math.pow(2,t)?e(t,n):a};return e.rack=function(t,n,i){var r=function(a){var s=0;do{if(s++>10)if(i)t+=i;else throw new Error("too many ID collisions, use more bits");var c=e(t,n)}while(Object.hasOwnProperty.call(o,c));return o[c]=a,c},o=r.hats={};return r.get=function(a){return r.hats[a]},r.set=function(a,s){return r.hats[a]=s,r},r.bits=t||128,r.base=n||16,r},wl.exports}var j1=F1(),H1=$1(j1);function yi(e){if(!(this instanceof yi))return new yi(e);e=e||[128,36,1],this._seed=e.length?H1.rack(e[0],e[1],e[2]):e}yi.prototype.next=function(e){return this._seed(e||!0)},yi.prototype.nextPrefixed=function(e,t){var n;do n=e+this.next(!0);while(this.assigned(n));return this.claim(n,t),n},yi.prototype.claim=function(e,t){this._seed.set(e,t||!0)},yi.prototype.assigned=function(e){return this._seed.get(e)||!1},yi.prototype.unclaim=function(e){delete this._seed.hats[e]},yi.prototype.clear=function(){var e=this._seed.hats,t;for(t in e)this.unclaim(t)};const Ut={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:[0,"",""]};Ut.td=Ut.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],Ut.option=Ut.optgroup=[1,'<select multiple="multiple">',"</select>"],Ut.thead=Ut.tbody=Ut.colgroup=Ut.caption=Ut.tfoot=[1,"<table>","</table>"],Ut.polyline=Ut.ellipse=Ut.polygon=Ut.circle=Ut.text=Ut.line=Ut.path=Ut.rect=Ut.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];function bt(e,t=globalThis.document){var u;if(typeof e!="string")throw new TypeError("String expected");const n=/^<!--(.*?)-->$/s.exec(e);if(n)return t.createComment(n[1]);const i=(u=/<([\w:]+)/.exec(e))==null?void 0:u[1];if(!i)return t.createTextNode(e);if(e=e.trim(),i==="body"){const l=t.createElement("html");l.innerHTML=e;const{lastChild:p}=l;return p.remove(),p}let[r,o,a]=Object.hasOwn(Ut,i)?Ut[i]:Ut._default,s=t.createElement("div");for(s.innerHTML=o+e+a;r--;)s=s.lastChild;if(s.firstChild===s.lastChild){const{firstChild:l}=s;return l.remove(),l}const c=t.createDocumentFragment();return c.append(...s.childNodes),c}function z1(e,t){return t.forEach(function(n){n&&typeof n!="string"&&!Array.isArray(n)&&Object.keys(n).forEach(function(i){if(i!=="default"&&!(i in e)){var r=Object.getOwnPropertyDescriptor(n,i);Object.defineProperty(e,i,r.get?r:{enumerable:!0,get:function(){return n[i]}})}})}),Object.freeze(e)}function _n(e,...t){const n=e.style;return F(t,function(i){i&&F(i,function(r,o){n[o]=r})}),e}function mn(e,t,n){return arguments.length==2?e.getAttribute(t):n===null?e.removeAttribute(t):(e.setAttribute(t,n),e)}const G1=Object.prototype.toString;function wt(e){return new er(e)}function er(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}er.prototype.add=function(e){return this.list.add(e),this},er.prototype.remove=function(e){return G1.call(e)=="[object RegExp]"?this.removeMatching(e):(this.list.remove(e),this)},er.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},er.prototype.toggle=function(e,t){return typeof t<"u"?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},er.prototype.array=function(){return Array.from(this.list)},er.prototype.has=er.prototype.contains=function(e){return this.list.contains(e)};function ks(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function Ir(e,t,n){var i=n?e:e.parentNode;return i&&typeof i.closest=="function"&&i.closest(t)||null}function V1(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Os={},Kh;function W1(){if(Kh)return Os;Kh=1;var e,t,n;function i(){e=window.addEventListener?"addEventListener":"attachEvent",t=window.removeEventListener?"removeEventListener":"detachEvent",n=e!=="addEventListener"?"on":""}return Os.bind=function(r,o,a,s){return e||i(),r[e](n+o,a,s||!1),a},Os.unbind=function(r,o,a,s){return t||i(),r[t](n+o,a,s||!1),a},Os}var Xh=W1(),U1=V1(Xh),Ne=z1({__proto__:null,default:U1},[Xh]),Zh=["focus","blur"];function Y1(e,t,n,i,r){return Zh.indexOf(n)!==-1&&(r=!0),Ne.bind(e,n,function(o){var a=o.target||o.srcElement;o.delegateTarget=Ir(a,t,!0),o.delegateTarget&&i.call(e,o)},r)}function q1(e,t,n,i){return Zh.indexOf(t)!==-1&&(i=!0),Ne.unbind(e,t,n,i)}var On={bind:Y1,unbind:q1};function El(e,t){return e&&typeof e.matches=="function"&&e.matches(t)||!1}function lt(e,t){return t=t||document,t.querySelector(e)}function Ds(e,t){return t=t||document,t.querySelectorAll(e)}function vi(e){e.parentNode&&e.parentNode.removeChild(e)}function K1(e,t){if(e.ownerDocument!==t.ownerDocument)try{return t.ownerDocument.importNode(e,!0)}catch{}return e}function X1(e,t){return t.appendChild(K1(e,t))}function $e(e,t){return X1(t,e),e}var Sl=2,Qh={"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":Sl,"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":Sl,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function Z1(e,t){return Qh[t]?e.style[t]:e.getAttributeNS(null,t)}function Jh(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=Qh[i];r?(r===Sl&&typeof n=="number"&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function Q1(e,t){var n=Object.keys(t),i,r;for(i=0,r;r=n[i];i++)Jh(e,r,t[r])}function xe(e,t,n){if(typeof t=="string")if(n!==void 0)Jh(e,t,n);else return Z1(e,t);else Q1(e,t);return e}const J1=Object.prototype.toString;function Qe(e){return new tr(e)}function tr(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}tr.prototype.add=function(e){return this.list.add(e),this},tr.prototype.remove=function(e){return J1.call(e)=="[object RegExp]"?this.removeMatching(e):(this.list.remove(e),this)},tr.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},tr.prototype.toggle=function(e,t){return typeof t<"u"?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},tr.prototype.array=function(){return Array.from(this.list)},tr.prototype.has=tr.prototype.contains=function(e){return this.list.contains(e)};function Ls(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function em(e){return e.cloneNode(!0)}var Rl={svg:"http://www.w3.org/2000/svg"},tm='<svg xmlns="'+Rl.svg+'"';function eS(e){var t=!1;e.substring(0,4)==="<svg"?e.indexOf(Rl.svg)===-1&&(e=tm+e.substring(4)):(e=tm+">"+e+"</svg>",t=!0);var n=tS(e);if(!t)return n;for(var i=document.createDocumentFragment(),r=n.firstChild;r.firstChild;)i.appendChild(r.firstChild);return i}function tS(e){var t;return t=new DOMParser,t.async=!1,t.parseFromString(e,"text/xml")}function Te(e,t){var n;return e=e.trim(),e.charAt(0)==="<"?(n=eS(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(Rl.svg,e),t&&xe(n,t),n}var Cl=null;function nm(){return Cl===null&&(Cl=Te("svg")),Cl}function im(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}function nS(e,t,n,i,r,o){var a=nm().createSVGMatrix();switch(arguments.length){case 0:return a;case 1:return im(a,e);case 6:return im(a,{a:e,b:t,c:n,d:i,e:r,f:o})}}function ra(e){return nm().createSVGTransform()}var rm=/([&<>]{1})/g,iS=/([&<>\n\r"]{1})/g,rS={"&":"&","<":"<",">":">",'"':"'"};function Pl(e,t){function n(i,r){return rS[r]||r}return e.replace(t,n)}function om(e,t){var n,i,r,o,a;switch(e.nodeType){case 3:t.push(Pl(e.textContent,rm));break;case 1:if(t.push("<",e.tagName),e.hasAttributes())for(r=e.attributes,n=0,i=r.length;n<i;++n)o=r.item(n),t.push(" ",o.name,'="',Pl(o.value,iS),'"');if(e.hasChildNodes()){for(t.push(">"),a=e.childNodes,n=0,i=a.length;n<i;++n)om(a.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("<!--",Pl(e.nodeValue,rm),"-->");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function oS(e){for(var t=e.firstChild,n=[];t;)om(t,n),t=t.nextSibling;return n.join("")}function am(e,t){return oS(e)}function Yt(e){var t=e.parentNode;return t&&t.removeChild(e),e}function aS(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function sS(e,t){var n,i;for(e.clear(),n=0;i=t[n];n++)e.appendItem(aS(e,i))}function oa(e,t){var n=e.transform.baseVal;return t&&(Array.isArray(t)||(t=[t]),sS(n,t)),n.consolidate()}const cS=/^class[ {]/;function uS(e){return cS.test(e.toString())}function Al(e){return Array.isArray(e)}function Tl(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Is(...e){e.length===1&&Al(e[0])&&(e=e[0]),e=[...e];const t=e.pop();return t.$inject=e,t}const lS=/constructor\s*[^(]*\(\s*([^)]*)\)/m,pS=/^(?:async\s+)?(?:function\s*[^(]*)?(?:\(\s*([^)]*)\)|(\w+))/m,fS=/\/\*([^*]*)\*\//m;function dS(e){if(typeof e!="function")throw new Error(`Cannot annotate "${e}". Expected a function!`);const t=e.toString().match(uS(e)?lS:pS);if(!t)return[];const n=t[1]||t[2];return n&&n.split(",").map(i=>{const r=i.match(fS);return(r&&r[1]||i).trim()})||[]}function sm(e,t){const n=t||{get:function(b,x){if(i.push(b),x===!1)return null;throw s(`No provider for "${b}"!`)}},i=[],r=this._providers=Object.create(n._providers||null),o=this._instances=Object.create(null),a=o.injector=this,s=function(b){const x=i.join(" -> ");return i.length=0,new Error(x?`${b} (Resolving: ${x})`:b)};function c(b,x){if(!r[b]&&b.includes(".")){const C=b.split(".");let T=c(C.shift());for(;C.length;)T=T[C.shift()];return T}if(Tl(o,b))return o[b];if(Tl(r,b)){if(i.indexOf(b)!==-1)throw i.push(b),s("Cannot resolve circular dependency!");return i.push(b),o[b]=r[b][0](r[b][1]),i.pop(),o[b]}return n.get(b,x)}function u(b,x){if(typeof x>"u"&&(x={}),typeof b!="function")if(Al(b))b=Is(b.slice());else throw s(`Cannot invoke "${b}". Expected a function!`);const T=(b.$inject||dS(b)).map(k=>Tl(x,k)?x[k]:c(k));return{fn:b,dependencies:T}}function l(b){const{fn:x,dependencies:C}=u(b),T=Function.prototype.bind.call(x,null,...C);return new T}function p(b,x,C){const{fn:T,dependencies:k}=u(b,C);return T.apply(x,k)}function f(b){return Is(x=>b.get(x))}function d(b,x){if(x&&x.length){const C=Object.create(null),T=Object.create(null),k=[],A=[],I=[];let D,L,z,ne;for(let me in r)D=r[me],x.indexOf(me)!==-1&&(D[2]==="private"?(L=k.indexOf(D[3]),L===-1?(z=D[3].createChild([],x),ne=f(z),k.push(D[3]),A.push(z),I.push(ne),C[me]=[ne,me,"private",z]):C[me]=[I[L],me,"private",A[L]]):C[me]=[D[2],D[1]],T[me]=!0),(D[2]==="factory"||D[2]==="type")&&D[1].$scope&&x.forEach(Ue=>{D[1].$scope.indexOf(Ue)!==-1&&(C[me]=[D[2],D[1]],T[Ue]=!0)});x.forEach(me=>{if(!T[me])throw new Error('No provider for "'+me+'". Cannot use provider from the parent!')}),b.unshift(C)}return new sm(b,a)}const m={factory:p,type:l,value:function(b){return b}};function h(b,x){const C=b.__init__||[];return function(){C.forEach(T=>{typeof T=="string"?x.get(T):x.invoke(T)})}}function y(b){const x=b.__exports__;if(x){const C=b.__modules__,T=Object.keys(b).reduce((L,z)=>(z!=="__exports__"&&z!=="__modules__"&&z!=="__init__"&&z!=="__depends__"&&(L[z]=b[z]),L),Object.create(null)),k=(C||[]).concat(T),A=d(k),I=Is(function(L){return A.get(L)});x.forEach(function(L){r[L]=[I,L,"private",A]});const D=(b.__init__||[]).slice();return D.unshift(function(){A.init()}),b=Object.assign({},b,{__init__:D}),h(b,A)}return Object.keys(b).forEach(function(C){if(C==="__init__"||C==="__depends__")return;const T=b[C];if(T[2]==="private"){r[C]=T;return}const k=T[0],A=T[1];r[C]=[m[k],hS(k,A),k]}),h(b,a)}function g(b,x){return b.indexOf(x)!==-1||(b=(x.__depends__||[]).reduce(g,b),b.indexOf(x)!==-1)?b:b.concat(x)}function v(b){const x=b.reduce(g,[]).map(y);let C=!1;return function(){C||(C=!0,x.forEach(T=>T()))}}this.get=c,this.invoke=p,this.instantiate=l,this.createChild=d,this.init=v(e)}function hS(e,t){return e!=="value"&&Al(t)&&(t=Is(t.slice())),t}var mS=1e3;function Li(e,t){var n=this;t=t||mS,e.on(["render.shape","render.connection"],t,function(i,r){var o=i.type,a=r.element,s=r.gfx,c=r.attrs;if(n.canRender(a))return o==="render.shape"?n.drawShape(s,a,c):n.drawConnection(s,a,c)}),e.on(["render.getShapePath","render.getConnectionPath"],t,function(i,r){if(n.canRender(r))return i.type==="render.getShapePath"?n.getShapePath(r):n.getConnectionPath(r)})}Li.prototype.canRender=function(e){},Li.prototype.drawShape=function(e,t){},Li.prototype.drawConnection=function(e,t){},Li.prototype.getShapePath=function(e){},Li.prototype.getConnectionPath=function(e){};function Br(e){return e.flat().join(",").replace(/,?([A-Za-z]),?/g,"$1")}function gS(e){return["M",e.x,e.y]}function Ml(e){return["L",e.x,e.y]}function yS(e,t,n){return["C",e.x,e.y,t.x,t.y,n.x,n.y]}function vS(e,t){const n=e.length,i=[gS(e[0])];for(let r=1;r<n;r++){const o=e[r-1],a=e[r],s=e[r+1];if(!s||!t){i.push(Ml(a));continue}const c=Math.min(t,kl(a.x-o.x,a.y-o.y),kl(s.x-a.x,s.y-a.y));if(!c){i.push(Ml(a));continue}const u=Bs(a,o,c),l=Bs(a,o,c*.5),p=Bs(a,s,c),f=Bs(a,s,c*.5);i.push(Ml(u)),i.push(yS(l,f,p))}return i}function Bs(e,t,n){const i=t.x-e.x,r=t.y-e.y,o=kl(i,r),a=n/o;return{x:e.x+i*a,y:e.y+r*a}}function kl(e,t){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2))}function aa(e,t,n){Be(t)&&(n=t,t=null),t||(t={});const i=Te("path",t);return Be(n)&&(i.dataset.cornerRadius=String(n)),Ol(i,e)}function Ol(e,t){const n=parseInt(e.dataset.cornerRadius,10)||0;return xe(e,{d:Br(vS(t,n))}),e}function Ns(e){var t=new Set(e);return Ye(e,function(n){for(var i=n.parent;i;){if(t.has(i))return!1;i=i.parent}return!0})}function Nr(e,t,n){n=n||0,De(e)||(e=[e]),F(e,function(i,r){var o=t(i,r,n);De(o)&&o.length&&Nr(o,t,n+1)})}function Dl(e,t,n){var i=new Set,r=new Set;return Nr(e,function(o,a,s){i.add(o);var c=o.children;if(c&&!r.has(c))return r.add(c),c}),Array.from(i)}function sa(e,t){return Dl(e)}function bS(e,t,n){Mr(t)&&(t=!0),Xt(t)&&(n=t,t=!0),n=n||{};var i=ca(n.allShapes),r=ca(n.allConnections),o=ca(n.enclosedElements),a=ca(n.enclosedConnections),s=ca(n.topLevel,t&&oo(e,function(l){return l.id}));function c(l){s[l.source.id]&&s[l.target.id]&&(s[l.id]=[l]),i[l.source.id]&&i[l.target.id]&&(a[l.id]=o[l.id]=l),r[l.id]=l}function u(l){if(o[l.id]=l,l.waypoints)a[l.id]=r[l.id]=l;else return i[l.id]=l,F(l.incoming,c),F(l.outgoing,c),l.children}return Nr(e,u),{allShapes:i,allConnections:r,topLevel:s,enclosedConnections:a,enclosedElements:o}}function Bt(e,t){t=!!t,De(e)||(e=[e]);var n,i,r,o;return F(e,function(a){var s=a;a.waypoints&&!t&&(s=Bt(a.waypoints,!0));var c=s.x,u=s.y,l=s.height||0,p=s.width||0;(c<n||n===void 0)&&(n=c),(u<i||i===void 0)&&(i=u),(c+p>r||r===void 0)&&(r=c+p),(u+l>o||o===void 0)&&(o=u+l)}),{x:n,y:i,height:o-i,width:r-n}}function yo(e,t){var n={};return F(e,function(i){var r=i;r.waypoints&&(r=Bt(r)),!Be(t.y)&&r.x>t.x&&(n[i.id]=i),!Be(t.x)&&r.y>t.y&&(n[i.id]=i),r.x>t.x&&r.y>t.y&&(Be(t.width)&&Be(t.height)&&r.width+r.x<t.width+t.x&&r.height+r.y<t.height+t.y||!Be(t.width)||!Be(t.height))&&(n[i.id]=i)}),n}function cm(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function um(e){return!!(e&&e.isFrame)}function ca(e,t){return V({},e||{},t||{})}var xS=1;function nr(e,t){Li.call(this,e,xS),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})}be(nr,Li),nr.prototype.canRender=function(){return!0},nr.prototype.drawShape=function(t,n,i){var r=Te("rect");return xe(r,{x:0,y:0,width:n.width||0,height:n.height||0}),um(n)?xe(r,V({},this.FRAME_STYLE,i||{})):xe(r,V({},this.SHAPE_STYLE,i||{})),$e(t,r),r},nr.prototype.drawConnection=function(t,n,i){var r=aa(n.waypoints,V({},this.CONNECTION_STYLE,i||{}));return $e(t,r),r},nr.prototype.getShapePath=function(t){var n=t.x,i=t.y,r=t.width,o=t.height,a=[["M",n,i],["l",r,0],["l",0,o],["l",-r,0],["z"]];return Br(a)},nr.prototype.getConnectionPath=function(t){var n=t.waypoints,i,r,o=[];for(i=0;r=n[i];i++)r=r.original||r,o.push([i===0?"M":"L",r.x,r.y]);return Br(o)},nr.$inject=["eventBus","styles"];function _S(){var e={"no-fill":{fill:"none"},"no-border":{strokeOpacity:0},"no-events":{pointerEvents:"none"}},t=this;this.cls=function(n,i,r){var o=this.style(i,r);return V(o,{class:n})},this.style=function(n,i){!De(n)&&!i&&(i=n,n=[]);var r=Mn(n,function(o,a){return V(o,e[a]||{})},{});return i?V(r,i):r},this.computeStyle=function(n,i,r){return De(i)||(r=i,i=[]),t.style(i||[],V({},r,n||{}))}}const wS={__init__:["defaultRenderer"],defaultRenderer:["type",nr],styles:["type",_S]};function kt(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return n!==-1&&e.splice(n,1),n}function Ot(e,t,n){if(!(!e||!t)){typeof n!="number"&&(n=-1);var i=e.indexOf(t);if(i!==-1){if(i===n)return;if(n!==-1)e.splice(i,1);else return}n!==-1?e.splice(n,0,t):e.push(t)}}function Ll(e,t){return!e||!t?-1:e.indexOf(t)}function ua(e,t){return!e||!t?-1:Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Il(e,t,n,i){if(typeof i>"u"&&(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=ua(e,t);return Math.abs(r/o)<=i}var ES=2;function Ii(e,t){var n=Array.from(arguments).flat();const i={x:"v",y:"h"};for(const[r,o]of Object.entries(i))if(SS(r,n))return o;return!1}function SS(e,t){const n=t[0];return kr(t,function(i){return Math.abs(n[e]-i[e])<=ES})}function lm(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 Bl(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}var RS=/,?([a-z]),?/gi,pm=parseFloat,Nt=Math,ir=Nt.PI,bi=Nt.min,xi=Nt.max,fm=Nt.pow,rr=Nt.abs,CS=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/ig,PS=/(-?\d*\.?\d*(?:e[-+]?\d+)?)[\s]*,?[\s]*/ig,dm=Array.isArray||function(e){return e instanceof Array};function AS(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function TS(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 MS(e){function t(){var n=Array.prototype.slice.call(arguments,0),i=n.join("␀"),r=t.cache=t.cache||{},o=t.count=t.count||[];return AS(r,i)?(TS(o,i),r[i]):(o.length>=1e3&&delete r[o.shift()],o.push(i),r[i]=e(...arguments),r[i])}return t}function kS(e){if(!e)return null;var t={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},n=[];return String(e).replace(CS,function(i,r,o){var a=[],s=r.toLowerCase();for(o.replace(PS,function(c,u){u&&a.push(+u)}),s=="m"&&a.length>2&&(n.push([r,...a.splice(0,2)]),s="l",r=r=="m"?"l":"L");a.length>=t[s]&&(n.push([r,...a.splice(0,t[s])]),!!t[s]););}),n.toString=$l,n}function OS(e){for(var t=0,n=e.length;t<n;t++){var i=e[t][0];if(typeof i=="string"&&i!==i.toUpperCase())return!1}return!0}function DS(e){for(var t=0,n=e.length;t<n;t++){var i=e[t][0];if(i!=="M"&&i!=="C")return!1}return!0}function Nl(e,t,n,i){return arguments.length===1&&(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 $l(){return this.join(",").replace(RS,"$1")}function LS(e){for(var t=new Array(e.length),n=0,i=e.length;n<i;n++)for(var r=e[n],o=t[n]=new Array(r.length),a=0,s=r.length;a<s;a++)o[a]=r[a];return t.toString=$l,t}function hm(e,t,n,i,r,o,a,s,c){var u=1-c,l=fm(u,3),p=fm(u,2),f=c*c,d=f*c,m=l*e+p*3*c*n+u*3*c*c*r+d*a,h=l*t+p*3*c*i+u*3*c*c*o+d*s;return{x:$s(m),y:$s(h)}}function mm(e){var t=jS(...e);return Nl(t.x0,t.y0,t.x1-t.x0,t.y1-t.y0)}function or(e,t,n){return t>=e.x&&t<=e.x+e.width&&n>=e.y&&n<=e.y+e.height}function IS(e,t){return e=Nl(e),t=Nl(t),or(t,e.x,e.y)||or(t,e.x2,e.y)||or(t,e.x,e.y2)||or(t,e.x2,e.y2)||or(e,t.x,t.y)||or(e,t.x2,t.y)||or(e,t.x,t.y2)||or(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)}function gm(e,t,n,i,r){var o=-3*t+9*n-9*i+3*r,a=e*o+6*t-12*n+6*i;return e*a-3*t+3*n}function ym(e,t,n,i,r,o,a,s,c){c==null&&(c=1),c=c>1?1:c<0?0:c;for(var u=c/2,l=12,p=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],f=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],d=0,m=0;m<l;m++){var h=u*p[m]+u,y=gm(h,e,n,r,a),g=gm(h,t,i,o,s),v=y*y+g*g;d+=f[m]*Nt.sqrt(v)}return u*d}function BS(e,t,n,i,r,o,a,s){if(!(xi(e,n)<bi(r,a)||bi(e,n)>xi(r,a)||xi(t,i)<bi(o,s)||bi(t,i)>xi(o,s))){var c=(e*i-t*n)*(r-a)-(e-n)*(r*s-o*a),u=(e*i-t*n)*(o-s)-(t-i)*(r*s-o*a),l=(e-n)*(o-s)-(t-i)*(r-a);if(l){var p=$s(c/l),f=$s(u/l),d=+p.toFixed(2),m=+f.toFixed(2);if(!(d<+bi(e,n).toFixed(2)||d>+xi(e,n).toFixed(2)||d<+bi(r,a).toFixed(2)||d>+xi(r,a).toFixed(2)||m<+bi(t,i).toFixed(2)||m>+xi(t,i).toFixed(2)||m<+bi(o,s).toFixed(2)||m>+xi(o,s).toFixed(2)))return{x:p,y:f}}}}function $s(e){return Math.round(e*1e11)/1e11}function NS(e,t,n){var i=mm(e),r=mm(t);if(!IS(i,r))return[];var o=ym(...e),a=ym(...t),s=bm(e)?1:~~(o/5)||1,c=bm(t)?1:~~(a/5)||1,u=new Array(s+1),l=new Array(c+1),p={},f=[],d,m;for(d=0;d<s+1;d++){var h=hm(...e,d/s);u[d]={x:h.x,y:h.y,t:d/s}}for(d=0;d<c+1;d++)h=hm(...t,d/c),l[d]={x:h.x,y:h.y,t:d/c};for(d=0;d<s;d++)for(m=0;m<c;m++){var y=u[d],g=u[d+1],v=l[m],b=l[m+1],x=rr(g.x-y.x)<.01?"y":"x",C=rr(b.x-v.x)<.01?"y":"x",T=BS(y.x,y.y,g.x,g.y,v.x,v.y,b.x,b.y),k;if(T){if(k=T.x.toFixed(9)+"#"+T.y.toFixed(9),p[k])continue;p[k]=!0;var A=y.t+rr((T[x]-y[x])/(g[x]-y[x]))*(g.t-y.t),I=v.t+rr((T[C]-v[C])/(b[C]-v[C]))*(b.t-v.t);A>=0&&A<=1&&I>=0&&I<=1&&f.push({x:T.x,y:T.y,t1:A,t2:I})}}return f}function vm(e,t,n){e=wm(e),t=wm(t);for(var i,r,o,a,s,c,u,l,p,f,d=n?0:[],m=0,h=e.length;m<h;m++){var y=e[m];if(y[0]=="M")i=s=y[1],r=c=y[2];else{y[0]=="C"?(p=[i,r,...y.slice(1)],i=p[6],r=p[7]):(p=[i,r,i,r,s,c,s,c],i=s,r=c);for(var g=0,v=t.length;g<v;g++){var b=t[g];if(b[0]=="M")o=u=b[1],a=l=b[2];else{b[0]=="C"?(f=[o,a,...b.slice(1)],o=f[6],a=f[7]):(f=[o,a,o,a,u,l,u,l],o=u,a=l);var x=NS(p,f);{for(var C=0,T=x.length;C<T;C++)x[C].segment1=m,x[C].segment2=g,x[C].bez1=p,x[C].bez2=f;d=d.concat(x)}}}}}return d}function $S(e){return dm(e)&&dm(e[0])}function FS(e){if(OS(e))return e;var t=new Array(e.length),n=0,i=0,r=0,o=0,a=0,s;e[0][0]=="M"&&(n=+e[0][1],i=+e[0][2],r=n,o=i,a++,t[0]=["M",n,i]);for(var c,u,l=a,p=e.length;l<p;l++){if(u=e[l],s=u[0],t[l]=c=new Array(u.length),s!=s.toUpperCase())switch(c[0]=s.toUpperCase(),c[0]){case"A":c[1]=u[1],c[2]=u[2],c[3]=u[3],c[4]=u[4],c[5]=u[5],c[6]=+u[6]+n,c[7]=+u[7]+i;break;case"V":c[1]=+u[1]+i;break;case"H":c[1]=+u[1]+n;break;case"M":r=+u[1]+n,o=+u[2]+i;default:for(var f=1,d=u.length;f<d;f++)c[f]=+u[f]+(f%2?n:i)}else for(var m=0,h=u.length;m<h;m++)c[m]=u[m];switch(s=s.toUpperCase(),c[0]){case"Z":n=+r,i=+o;break;case"H":n=c[1];break;case"V":i=c[1];break;case"M":r=c[c.length-2],o=c[c.length-1];default:n=c[c.length-2],i=c[c.length-1]}}return t.toString=$l,t}function bm(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function Fs(e,t,n,i){return[e,t,n,i,n,i]}function xm(e,t,n,i,r,o){var a=.3333333333333333,s=2/3;return[a*e+s*n,a*t+s*i,a*r+s*n,a*o+s*i,r,o]}function _m(e,t,n,i,r,o,a,s,c,u){var l=ir*120/180,p=ir/180*(+r||0),f=[],d,m=MS(function(M,E,w){var G=M*Nt.cos(w)-E*Nt.sin(w),U=M*Nt.sin(w)+E*Nt.cos(w);return{x:G,y:U}});if(u)k=u[0],A=u[1],C=u[2],T=u[3];else{d=m(e,t,-p),e=d.x,t=d.y,d=m(s,c,-p),s=d.x,c=d.y;var h=(e-s)/2,y=(t-c)/2,g=h*h/(n*n)+y*y/(i*i);g>1&&(g=Nt.sqrt(g),n=g*n,i=g*i);var v=n*n,b=i*i,x=(o==a?-1:1)*Nt.sqrt(rr((v*b-v*y*y-b*h*h)/(v*y*y+b*h*h))),C=x*n*y/i+(e+s)/2,T=x*-i*h/n+(t+c)/2,k=Nt.asin(((t-T)/i).toFixed(9)),A=Nt.asin(((c-T)/i).toFixed(9));k=e<C?ir-k:k,A=s<C?ir-A:A,k<0&&(k=ir*2+k),A<0&&(A=ir*2+A),a&&k>A&&(k=k-ir*2),!a&&A>k&&(A=A-ir*2)}var I=A-k;if(rr(I)>l){var D=A,L=s,z=c;A=k+l*(a&&A>k?1:-1),s=C+n*Nt.cos(A),c=T+i*Nt.sin(A),f=_m(s,c,n,i,r,0,a,L,z,[A,D,C,T])}I=A-k;var ne=Nt.cos(k),me=Nt.sin(k),Ue=Nt.cos(A),je=Nt.sin(A),q=Nt.tan(I/4),le=4/3*n*q,ae=4/3*i*q,ge=[e,t],Ae=[e+le*me,t-ae*ne],W=[s+le*je,c-ae*Ue],Y=[s,c];if(Ae[0]=2*ge[0]-Ae[0],Ae[1]=2*ge[1]-Ae[1],u)return[Ae,W,Y].concat(f);f=[Ae,W,Y].concat(f).join().split(",");for(var ee=[],Ce=0,gt=f.length;Ce<gt;Ce++)ee[Ce]=Ce%2?m(f[Ce-1],f[Ce],p).y:m(f[Ce],f[Ce+1],p).x;return ee}function jS(e,t,n,i,r,o,a,s){for(var c=[],u=[[],[]],l,p,f,d,m,h,y,g,v=0;v<2;++v){if(v==0?(p=6*e-12*n+6*r,l=-3*e+9*n-9*r+3*a,f=3*n-3*e):(p=6*t-12*i+6*o,l=-3*t+9*i-9*o+3*s,f=3*i-3*t),rr(l)<1e-12){if(rr(p)<1e-12)continue;d=-f/p,0<d&&d<1&&c.push(d);continue}y=p*p-4*f*l,g=Nt.sqrt(y),!(y<0)&&(m=(-p+g)/(2*l),0<m&&m<1&&c.push(m),h=(-p-g)/(2*l),0<h&&h<1&&c.push(h))}for(var b=c.length,x=b,C;b--;)d=c[b],C=1-d,u[0][b]=C*C*C*e+3*C*C*d*n+3*C*d*d*r+d*d*d*a,u[1][b]=C*C*C*t+3*C*C*d*i+3*C*d*d*o+d*d*d*s;return u[0][x]=e,u[1][x]=t,u[0][x+1]=a,u[1][x+1]=s,u[0].length=u[1].length=x+2,{x0:bi(...u[0]),y0:bi(...u[1]),x1:xi(...u[0]),y1:xi(...u[1])}}function wm(e){if($S(e)||(e=kS(e)),DS(e))return e;for(var t=LS(FS(e)),n={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},i=function(f,d,m){var h,y;if(!f)return["C",d.x,d.y,d.x,d.y,d.x,d.y];switch(!(f[0]in{T:1,Q:1})&&(d.qx=d.qy=null),f[0]){case"M":d.X=f[1],d.Y=f[2];break;case"A":f=["C",..._m(d.x,d.y,...f.slice(1))];break;case"S":m=="C"||m=="S"?(h=d.x*2-d.bx,y=d.y*2-d.by):(h=d.x,y=d.y),f=["C",h,y,...f.slice(1)];break;case"T":m=="Q"||m=="T"?(d.qx=d.x*2-d.qx,d.qy=d.y*2-d.qy):(d.qx=d.x,d.qy=d.y),f=["C",...xm(d.x,d.y,d.qx,d.qy,f[1],f[2])];break;case"Q":d.qx=f[1],d.qy=f[2],f=["C",...xm(d.x,d.y,f[1],f[2],f[3],f[4])];break;case"L":f=["C",...Fs(d.x,d.y,f[1],f[2])];break;case"H":f=["C",...Fs(d.x,d.y,f[1],d.y)];break;case"V":f=["C",...Fs(d.x,d.y,d.x,f[1])];break;case"Z":f=["C",...Fs(d.x,d.y,d.X,d.Y)];break}return f},r=function(f,d){if(f[d].length>7){f[d].shift();for(var m=f[d];m.length;)o[d]="A",f.splice(d++,0,["C",...m.splice(0,6)]);f.splice(d,1),u=t.length}},o=[],a="",s="",c=0,u=t.length;c<u;c++){t[c]&&(a=t[c][0]),a!="C"&&(o[c]=a,c&&(s=o[c-1])),t[c]=i(t[c],n,s),o[c]!="A"&&a=="C"&&(o[c]="C"),r(t,c);var l=t[c],p=l.length;n.x=l[p-2],n.y=l[p-1],n.bx=pm(l[p-4])||n.x,n.by=pm(l[p-3])||n.y}return t}function ft(e){return Xt(e)&&Tn(e,"waypoints")}function Ge(e){return Xt(e)&&Tn(e,"labelTarget")}function HS(e){return Xt(e)&&io(e.parent)}function Em(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function Bi(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function ke(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function js(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function zS(e){return Bi({x:e.x+(e.width||0)/2,y:e.y+(e.height||0)/2})}function GS(e){for(var t=e.waypoints,n=t.reduce(function(u,l,p){var f=t[p-1];if(f){var d=u[u.length-1],m=d&&d.endLength||0,h=US(f,l);u.push({start:f,end:l,startLength:m,endLength:m+h,length:h})}return u},[]),i=n.reduce(function(u,l){return u+l.length},0),r=i/2,o=0,a=n[o];a.endLength<r;)a=n[++o];var s=(r-a.startLength)/a.length,c={x:a.start.x+(a.end.x-a.start.x)*s,y:a.start.y+(a.end.y-a.start.y)*s};return c}function Le(e){return ft(e)?GS(e):zS(e)}function sn(e,t,n){n=n||0,Xt(n)||(n={x:n,y:n});var i=ke(e),r=ke(t),o=i.bottom+n.y<=r.top,a=i.left-n.x>=r.right,s=i.top-n.y>=r.bottom,c=i.right+n.x<=r.left,u=o?"top":s?"bottom":null,l=c?"left":a?"right":null;return l&&u?u+"-"+l:l||u||"intersect"}function la(e,t,n){var i=VS(e,t);return i.length===1||i.length===2&&ua(i[0],i[1])<1?Bi(i[0]):i.length>1?(i=di(i,function(r){var o=Math.floor(r.t2*100)||1;return o=100-o,o=(o<10?"0":"")+o,r.segment2+"#"+o}),Bi(i[n?0:i.length-1])):null}function VS(e,t){return vm(e,t)}function WS(e){e=e.slice();for(var t=0,n,i,r;e[t];)n=e[t],i=e[t-1],r=e[t+1],ua(n,r)===0||Il(i,r,n)?e.splice(t,1):t++;return e}function US(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Hs(e,t){return Math.round(e*t)/t}function Sm(e){return Be(e)?e+"px":e}function YS(e){for(;e.parent;)e=e.parent;return e}function qS(e){e=V({},{width:"100%",height:"100%"},e);const t=e.container||document.body,n=document.createElement("div");return n.setAttribute("class","djs-container djs-parent"),_n(n,{position:"relative",overflow:"hidden",width:Sm(e.width),height:Sm(e.height)}),t.appendChild(n),n}function Rm(e,t,n){const i=Te("g");Qe(i).add(t);const r=n!==void 0?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}const KS="base",Cm=0,XS=1,ZS={shape:["x","y","width","height"],connection:["waypoints"]};function Ie(e,t,n,i){this._eventBus=t,this._elementRegistry=i,this._graphicsFactory=n,this._rootsIdx=0,this._layers={},this._planes=[],this._rootElement=null,this._focused=!1,this._init(e||{})}Ie.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],Ie.prototype._init=function(e){const t=this._eventBus,n=this._container=qS(e),i=this._svg=Te("svg");xe(i,{width:"100%",height:"100%"}),mn(i,"tabindex",0),e.autoFocus&&t.on("element.hover",()=>{this.restoreFocus()}),t.on("element.mousedown",500,o=>{this.focus()}),i.addEventListener("focusin",()=>{this._setFocused(!0)}),i.addEventListener("focusout",()=>{this._setFocused(!1)}),i.addEventListener("mouseover",()=>{this._eventBus.fire("canvas.mouseover")}),i.addEventListener("mouseout",()=>{this._eventBus.fire("canvas.mouseout")}),$e(n,i);const r=this._viewport=Rm(i,"viewport");e.deferUpdate&&(this._viewboxChanged=Uu(this._viewboxChanged,300)),this._restoreFocus=Uu(this._restoreFocus,0),t.on("diagram.init",()=>{t.fire("canvas.init",{svg:i,viewport:r})}),t.on(["shape.added","connection.added","shape.removed","connection.removed","elements.changed","root.set"],()=>{delete this._cachedViewbox}),t.on("diagram.destroy",500,this._destroy,this),t.on("diagram.clear",500,this._clear,this)},Ie.prototype._destroy=function(){this._restoreFocus.cancel(),this._eventBus.fire("canvas.destroy",{svg:this._svg,viewport:this._viewport});const e=this._container.parentNode;e&&e.removeChild(this._container),delete this._svg,delete this._container,delete this._layers,delete this._planes,delete this._rootElement,delete this._viewport},Ie.prototype._setFocused=function(e){e!=this._focused&&(this._focused=e,this._eventBus.fire("canvas.focus.changed",{focused:e}))},Ie.prototype._clear=function(){this._elementRegistry.getAll().forEach(t=>{const n=cm(t);n==="root"?this.removeRootElement(t):this._removeElement(t,n)}),this._planes=[],this._rootElement=null,delete this._cachedViewbox},Ie.prototype.focus=function(){this._svg.focus({preventScroll:!0}),this._setFocused(!0)},Ie.prototype.restoreFocus=function(){this._restoreFocus()},Ie.prototype._restoreFocus=function(){document.activeElement===document.body&&this.focus()},Ie.prototype.isFocused=function(){return this._focused},Ie.prototype.getDefaultLayer=function(){return this.getLayer(KS,Cm)},Ie.prototype.getLayer=function(e,t){if(!e)throw new Error("must specify a name");let n=this._layers[e];if(n||(n=this._layers[e]=this._createLayer(e,t)),typeof t<"u"&&n.index!==t)throw new Error("layer <"+e+"> already created at index <"+t+">");return n.group},Ie.prototype._getChildIndex=function(e){return Mn(this._layers,function(t,n){return n.visible&&e>=n.index&&t++,t},0)},Ie.prototype._createLayer=function(e,t){typeof t>"u"&&(t=XS);const n=this._getChildIndex(t);return{group:Rm(this._viewport,"layer-"+e,n),index:t,visible:!0}},Ie.prototype.showLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=this._viewport,i=t.group,r=t.index;if(t.visible)return i;const o=this._getChildIndex(r);return n.insertBefore(i,n.childNodes[o]||null),t.visible=!0,i},Ie.prototype.hideLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=t.group;return t.visible&&(Yt(n),t.visible=!1),n},Ie.prototype._removeLayer=function(e){const t=this._layers[e];t&&(delete this._layers[e],Yt(t.group))},Ie.prototype.getActiveLayer=function(){const e=this._findPlaneForRoot(this.getRootElement());return e?e.layer:null},Ie.prototype.findRoot=function(e){const t=this._resolveElements(e);let n;for(const i of t){const r=this._findPlaneForRoot(YS(i));if(!r||n&&r.rootElement!==n)return;n=r.rootElement}return n},Ie.prototype.getRootElements=function(){return this._planes.map(function(e){return e.rootElement})},Ie.prototype._findPlaneForRoot=function(e){return mt(this._planes,function(t){return t.rootElement===e})},Ie.prototype._resolveElement=function(e){return typeof e=="string"?this._elementRegistry.get(e):e},Ie.prototype._resolveElements=function(e){return De(e)||(e=[e]),e.map(t=>this._resolveElement(t)).filter(Boolean)},Ie.prototype.getContainer=function(){return this._container},Ie.prototype._updateMarker=function(e,t,n){let i;e=this._resolveElement(e),e.markers=e.markers||new Set,i=this._elementRegistry._elements[e.id],i&&(F([i.gfx,i.secondaryGfx],function(r){r&&(n?(e.markers.add(t),Qe(r).add(t)):(e.markers.delete(t),Qe(r).remove(t)))}),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},Ie.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},Ie.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},Ie.prototype.hasMarker=function(e,t){return e=this._resolveElement(e),e.markers?e.markers.has(t):!1},Ie.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},Ie.prototype.getRootElement=function(){const e=this._rootElement;return e||this._planes.length?e:this.setRootElement(this.addRootElement(null))},Ie.prototype.addRootElement=function(e){const t=this._rootsIdx++;e||(e={id:"__implicitroot_"+t,children:[],isImplicit:!0});const n=e.layer="root-"+t;this._ensureValid("root",e);const i=this.getLayer(n,Cm);return this.hideLayer(n),this._addRoot(e,i),this._planes.push({rootElement:e,layer:i}),e},Ie.prototype.removeRootElement=function(e){if(e=this._resolveElement(e),!!this._findPlaneForRoot(e))return this._removeRoot(e),this._removeLayer(e.layer),this._planes=this._planes.filter(function(n){return n.rootElement!==e}),this._rootElement===e&&(this._rootElement=null),e},Ie.prototype.setRootElement=function(e){if(e===this._rootElement)return e;let t;if(!e)throw new Error("rootElement required");return t=this._findPlaneForRoot(e),t||(e=this.addRootElement(e)),this._setRoot(e),e},Ie.prototype._removeRoot=function(e){const t=this._elementRegistry,n=this._eventBus;n.fire("root.remove",{element:e}),n.fire("root.removed",{element:e}),t.remove(e)},Ie.prototype._addRoot=function(e,t){const n=this._elementRegistry,i=this._eventBus;i.fire("root.add",{element:e}),n.add(e,t),i.fire("root.added",{element:e,gfx:t})},Ie.prototype._setRoot=function(e,t){const n=this._rootElement;n&&(this._elementRegistry.updateGraphics(n,null,!0),this.hideLayer(n.layer)),e&&(t||(t=this._findPlaneForRoot(e).layer),this._elementRegistry.updateGraphics(e,this._svg,!0),this.showLayer(e.layer)),this._rootElement=e,this._eventBus.fire("root.set",{element:e})},Ie.prototype._ensureValid=function(e,t){if(!t.id)throw new Error("element must have an id");if(this._elementRegistry.get(t.id))throw new Error("element <"+t.id+"> already exists");const n=ZS[e];if(!kr(n,function(r){return typeof t[r]<"u"}))throw new Error("must supply { "+n.join(", ")+" } with "+e)},Ie.prototype._setParent=function(e,t,n){Ot(t.children,e,n),e.parent=t},Ie.prototype._addElement=function(e,t,n,i){n=n||this.getRootElement();const r=this._eventBus,o=this._graphicsFactory;this._ensureValid(e,t),r.fire(e+".add",{element:t,parent:n}),this._setParent(t,n,i);const a=o.create(e,t,i);return this._elementRegistry.add(t,a),o.update(e,t,a),r.fire(e+".added",{element:t,gfx:a}),t},Ie.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},Ie.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},Ie.prototype._removeElement=function(e,t){const n=this._elementRegistry,i=this._graphicsFactory,r=this._eventBus;if(e=n.get(e.id||e),!!e)return r.fire(t+".remove",{element:e}),i.remove(e),kt(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},Ie.prototype.removeShape=function(e){return this._removeElement(e,"shape")},Ie.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},Ie.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},Ie.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},Ie.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},Ie.prototype.viewbox=function(e){if(e===void 0&&this._cachedViewbox)return structuredClone(this._cachedViewbox);const t=this._viewport,n=this.getSize();let i,r,o,a,s,c,u;if(e)this._changeViewbox(function(){s=Math.min(n.width/e.width,n.height/e.height);const l=this._svg.createSVGMatrix().scale(s).translate(-e.x,-e.y);oa(t,l)});else return o=this._rootElement?this.getActiveLayer():null,i=o&&o.getBBox()||{},a=oa(t),r=a?a.matrix:nS(),s=Hs(r.a,1e3),c=Hs(-r.e||0,1e3),u=Hs(-r.f||0,1e3),e=this._cachedViewbox={x:c?c/s:0,y:u?u/s:0,width:n.width/s,height:n.height/s,scale:s,inner:{width:i.width||0,height:i.height||0,x:i.x||0,y:i.y||0},outer:n},e;return e},Ie.prototype.scroll=function(e){const t=this._viewport;let n=t.getCTM();return e&&this._changeViewbox(function(){e=V({dx:0,dy:0},e||{}),n=this._svg.createSVGMatrix().translate(e.dx,e.dy).multiply(n),Pm(t,n)}),{x:n.e,y:n.f}},Ie.prototype.scrollToElement=function(e,t){let n=100;const i=this._resolveElements(e);if(!i.length)return;const r=this.findRoot(i);if(!r)return;r!==this.getRootElement()&&this.setRootElement(r);const o=i.filter(m=>m!=r);if(!o.length)return;t||(t={}),typeof t=="number"&&(n=t),t={top:t.top||n,right:t.right||n,bottom:t.bottom||n,left:t.left||n};const a=Bt(o),s=ke(a),c=this.viewbox(),u=this.zoom();let l,p;c.y+=t.top/u,c.x+=t.left/u,c.width-=(t.right+t.left)/u,c.height-=(t.bottom+t.top)/u;const f=ke(c);if(!(a.width<c.width&&a.height<c.height))l=a.x-c.x,p=a.y-c.y;else{const m=Math.max(0,s.right-f.right),h=Math.min(0,s.left-f.left),y=Math.max(0,s.bottom-f.bottom),g=Math.min(0,s.top-f.top);l=m||h,p=y||g}this.scroll({dx:-l*u,dy:-p*u})},Ie.prototype.zoom=function(e,t){if(!e)return this.viewbox(e).scale;if(e==="fit-viewport")return this._fitViewport(t);let n,i;return this._changeViewbox(function(){typeof t!="object"&&(n=this.viewbox().outer,t={x:n.width/2,y:n.height/2}),i=this._setZoom(e,t)}),Hs(i.a,1e3)};function Pm(e,t){const n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}Ie.prototype._fitViewport=function(e){const t=this.viewbox(),n=t.outer,i=t.inner;let r,o;return i.x>=0&&i.y>=0&&i.x+i.width<=n.width&&i.y+i.height<=n.height&&!e?o={x:0,y:0,width:Math.max(i.width+i.x,n.width),height:Math.max(i.height+i.y,n.height)}:(r=Math.min(1,n.width/i.width,n.height/i.height),o={x:i.x+(e?i.width/2-n.width/r/2:0),y:i.y+(e?i.height/2-n.height/r/2:0),width:n.width/r,height:n.height/r}),this.viewbox(o),this.viewbox(!1).scale},Ie.prototype._setZoom=function(e,t){const n=this._svg,i=this._viewport,r=n.createSVGMatrix(),o=n.createSVGPoint();let a,s,c,u,l;c=i.getCTM();const p=c.a;return t?(a=V(o,t),s=a.matrixTransform(c.inverse()),u=r.translate(s.x,s.y).scale(1/p*e).translate(-s.x,-s.y),l=c.multiply(u)):l=r.scale(e),Pm(this._viewport,l),l},Ie.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},Ie.prototype.getAbsoluteBBox=function(e){const t=this.viewbox();let n;e.waypoints?n=this.getGraphics(e).getBBox():n=e;const i=n.x*t.scale-t.x*t.scale,r=n.y*t.scale-t.y*t.scale,o=n.width*t.scale,a=n.height*t.scale;return{x:i,y:r,width:o,height:a}},Ie.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var vo="data-element-id";function Un(e){this._elements={},this._eventBus=e}Un.$inject=["eventBus"],Un.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),xe(t,vo,i),n&&xe(n,vo,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},Un.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(xe(i.gfx,vo,""),i.secondaryGfx&&xe(i.secondaryGfx,vo,""),delete t[n])},Un.prototype.updateId=function(e,t){this._validateId(t),typeof e=="string"&&(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)},Un.prototype.updateGraphics=function(e,t,n){var i=e.id||e,r=this._elements[i];return n?r.secondaryGfx=t:r.gfx=t,t&&xe(t,vo,i),t},Un.prototype.get=function(e){var t;typeof e=="string"?t=e:t=e&&xe(e,vo);var n=this._elements[t];return n&&n.element},Un.prototype.filter=function(e){var t=[];return this.forEach(function(n,i){e(n,i)&&t.push(n)}),t},Un.prototype.find=function(e){for(var t=this._elements,n=Object.keys(t),i=0;i<n.length;i++){var r=n[i],o=t[r],a=o.element,s=o.gfx;if(e(a,s))return a}},Un.prototype.getAll=function(){return this.filter(function(e){return e})},Un.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)})},Un.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},Un.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")};function QS(e,t,n,i){var r=n.inverse;return Object.defineProperty(e,"remove",{value:function(o){var a=this.indexOf(o);return a!==-1&&(this.splice(a,1),t.unset(o,r,i)),o}}),Object.defineProperty(e,"contains",{value:function(o){return this.indexOf(o)!==-1}}),Object.defineProperty(e,"add",{value:function(o,a){var s=this.indexOf(o);if(typeof a>"u"){if(s!==-1)return;a=this.length}s!==-1&&this.splice(s,1),this.splice(a,0,o),s===-1&&t.set(o,r,i)}}),Object.defineProperty(e,"__refs_collection",{value:!0}),e}function JS(e){return e.__refs_collection===!0}function eR(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)}function Am(e,t,n){var i=QS(n[t.name]||[],e,t,n);Object.defineProperty(n,t.name,{enumerable:t.enumerable,value:i}),i.length&&i.forEach(function(r){e.set(r,t.inverse,n)})}function tR(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(o){if(o!==r){var a=r;r=null,a&&e.unset(a,i,n),r=o,e.set(r,i,n)}}})}function Zn(e,t){if(!(this instanceof Zn))return new Zn(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Zn.prototype.bind=function(e,t){if(typeof t=="string"){if(!this.props[t])throw new Error("no property <"+t+"> in ref");t=this.props[t]}t.collection?Am(this,t,e):tR(this,t,e)},Zn.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return JS(n)||Am(this,t,e),n},Zn.prototype.ensureBound=function(e,t){eR(e,t)||this.bind(e,t)},Zn.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},Zn.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var Fl=new Zn({name:"children",enumerable:!0,collection:!0},{name:"parent"}),Tm=new Zn({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),Mm=new Zn({name:"attachers",collection:!0},{name:"host"}),km=new Zn({name:"outgoing",collection:!0},{name:"source"}),Om=new Zn({name:"incoming",collection:!0},{name:"target"});function bo(){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)}}),Fl.bind(this,"parent"),Tm.bind(this,"labels"),km.bind(this,"outgoing"),Om.bind(this,"incoming")}function pa(){bo.call(this),Fl.bind(this,"children"),Mm.bind(this,"host"),Mm.bind(this,"attachers")}be(pa,bo);function Dm(){bo.call(this),Fl.bind(this,"children")}be(Dm,pa);function Lm(){pa.call(this),Tm.bind(this,"labelTarget")}be(Lm,pa);function Im(){bo.call(this),km.bind(this,"source"),Om.bind(this,"target")}be(Im,bo);var nR={connection:Im,shape:pa,label:Lm,root:Dm};function iR(e,t){var n=nR[e];if(!n)throw new Error("unknown type: <"+e+">");return V(new n,t)}function rR(e){return e instanceof bo}function Ni(){this._uid=12}Ni.prototype.createRoot=function(e){return this.create("root",e)},Ni.prototype.createLabel=function(e){return this.create("label",e)},Ni.prototype.createShape=function(e){return this.create("shape",e)},Ni.prototype.createConnection=function(e){return this.create("connection",e)},Ni.prototype.create=function(e,t){return t=V({},t||{}),t.id||(t.id=e+"_"+this._uid++),iR(e,t)};var zs="__fn",Bm=1e3,oR=Array.prototype.slice;function Dn(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}Dn.prototype.on=function(e,t,n,i){if(e=De(e)?e:[e],Zt(t)&&(i=n,n=t,t=Bm),!Be(t))throw new Error("priority must be a number");var r=n;i&&(r=Sn(n,i),r[zs]=n[zs]||n);var o=this;e.forEach(function(a){o._addListener(a,{priority:t,callback:r,next:null})})},Dn.prototype.once=function(e,t,n,i){var r=this;if(Zt(t)&&(i=n,n=t,t=Bm),!Be(t))throw new Error("priority must be a number");function o(){o.__isTomb=!0;var a=n.apply(i,arguments);return r.off(e,o),a}o[zs]=n,this.on(e,t,o)},Dn.prototype.off=function(e,t){e=De(e)?e:[e];var n=this;e.forEach(function(i){n._removeListener(i,t)})},Dn.prototype.createEvent=function(e){var t=new fa;return t.init(e),t},Dn.prototype.fire=function(e,t){var n,i,r,o;if(o=oR.call(arguments),typeof e=="object"&&(t=e,e=t.type),!e)throw new Error("no event type specified");if(i=this._listeners[e],!!i){t instanceof fa?n=t:n=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 r===void 0&&n.defaultPrevented&&(r=!1),r}},Dn.prototype.handleError=function(e){return this.fire("error",{error:e})===!1},Dn.prototype._destroy=function(){this._listeners={}},Dn.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},Dn.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return i;try{i=aR(n.callback,t),i!==void 0&&(e.returnValue=i,e.stopPropagation()),i===!1&&e.preventDefault()}catch(r){if(!this.handleError(r))throw console.error("unhandled error in event listener",r),r}return i},Dn.prototype._addListener=function(e,t){var n=this._getListeners(e),i;if(!n){this._setListeners(e,t);return}for(;n;){if(n.priority<t.priority){t.next=n,i?i.next=t:this._setListeners(e,t);return}i=n,n=n.next}i.next=t},Dn.prototype._getListeners=function(e){return this._listeners[e]},Dn.prototype._setListeners=function(e,t){this._listeners[e]=t},Dn.prototype._removeListener=function(e,t){var n=this._getListeners(e),i,r,o;if(!t){this._setListeners(e,null);return}for(;n;)i=n.next,o=n.callback,(o===t||o[zs]===t)&&(r?r.next=i:this._setListeners(e,i)),r=n,n=i};function fa(){}fa.prototype.stopPropagation=function(){this.cancelBubble=!0},fa.prototype.preventDefault=function(){this.defaultPrevented=!0},fa.prototype.init=function(e){V(this,e||{})};function aR(e,t){return e.apply(null,t)}function $r(e){return e.childNodes[0]}function sR(e){return e.parentNode.childNodes[1]}function Gs(e,t,n,i,r){var o=ra();o.setTranslate(t,n);var a=ra();a.setRotate(i||0,0,0);var s=ra();s.setScale(1,1),oa(e,[o,a,s])}function cn(e,t,n){var i=ra();i.setTranslate(t,n),oa(e,i)}function Nm(e,t){var n=ra();n.setRotate(t,0,0),oa(e,n)}function Yn(e,t){this._eventBus=e,this._elementRegistry=t}Yn.$inject=["eventBus","elementRegistry"],Yn.prototype._getChildrenContainer=function(e){var t=this._elementRegistry.getGraphics(e),n;return e.parent?(n=sR(t),n||(n=Te("g"),Qe(n).add("djs-children"),$e(t.parentNode,n))):n=t,n},Yn.prototype._clear=function(e){var t=$r(e);return ks(t),t},Yn.prototype._createContainer=function(e,t,n,i){var r=Te("g");Qe(r).add("djs-group"),typeof n<"u"?cR(r,t,t.childNodes[n]):$e(t,r);var o=Te("g");Qe(o).add("djs-element"),Qe(o).add("djs-"+e),i&&Qe(o).add("djs-frame"),$e(r,o);var a=Te("g");return Qe(a).add("djs-visual"),$e(o,a),o},Yn.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,um(t))},Yn.prototype.updateContainments=function(e){var t=this,n=this._elementRegistry,i;i=Mn(e,function(r,o){return o.parent&&(r[o.parent.id]=o.parent),r},{}),F(i,function(r){var o=r.children;if(o){var a=t._getChildrenContainer(r),s=a.firstChild;F(o,function(c){var u=n.getGraphics(c).parentNode;u===s?s=s.nextSibling:a.insertBefore(u,s)})}})},Yn.prototype.drawShape=function(e,t,n={}){var i=this._eventBus;return i.fire("render.shape",{gfx:e,element:t,attrs:n})},Yn.prototype.getShapePath=function(e){var t=this._eventBus;return t.fire("render.getShapePath",e)},Yn.prototype.drawConnection=function(e,t,n={}){var i=this._eventBus;return i.fire("render.connection",{gfx:e,element:t,attrs:n})},Yn.prototype.getConnectionPath=function(e){var t=this._eventBus;return t.fire("render.getConnectionPath",e)},Yn.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if(e==="shape")this.drawShape(i,t),cn(n,t.x,t.y);else if(e==="connection")this.drawConnection(i,t);else throw new Error("unknown type: "+e);t.hidden?xe(n,"display","none"):xe(n,"display","block")}},Yn.prototype.remove=function(e){var t=this._elementRegistry.getGraphics(e);Yt(t.parentNode)};function cR(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}const uR={__depends__:[wS],__init__:["canvas"],canvas:["type",Ie],elementRegistry:["type",Un],elementFactory:["type",Ni],eventBus:["type",Dn],graphicsFactory:["type",Yn]};function lR(e){var t=new sm(e);return t.init(),t}function pR(e){e=e||{};var t={config:["value",e]},n=[t,uR].concat(e.modules||[]);return lR(n)}function ar(e,t){this._injector=t||pR(e),this.get("eventBus").fire("diagram.init")}ar.prototype.get=function(e,t){return this._injector.get(e,t)},ar.prototype.invoke=function(e,t,n){return this._injector.invoke(e,t,n)},ar.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},ar.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")};function gn(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}function Rn(e,t){return e.$instanceOf(t)}function fR(e){return mt(e.rootElements,function(t){return Rn(t,"bpmn:Process")||Rn(t,"bpmn:Collaboration")})}function dR(e){var t={},n=[],i={};function r(W,Y){return function(ee){W(ee,Y)}}function o(W){t[W.id]=W}function a(W){return t[W.id]}function s(W,Y){var ee=W.gfx;if(ee)throw new Error(`already rendered ${gn(W)}`);return e.element(W,i[W.id],Y)}function c(W,Y){return e.root(W,i[W.id],Y)}function u(W,Y){try{var ee=i[W.id]&&s(W,Y);return o(W),ee}catch(Ce){l(Ce.message,{element:W,error:Ce}),console.error(`failed to import ${gn(W)}`,Ce)}}function l(W,Y){e.error(W,Y)}var p=this.registerDi=function(Y){var ee=Y.bpmnElement;ee?i[ee.id]?l(`multiple DI elements defined for ${gn(ee)}`,{element:ee}):i[ee.id]=Y:l(`no bpmnElement referenced in ${gn(Y)}`,{element:Y})};function f(W){d(W.plane)}function d(W){p(W),F(W.planeElement,m)}function m(W){p(W)}this.handleDefinitions=function(Y,ee){var Ce=Y.diagrams;if(ee&&Ce.indexOf(ee)===-1)throw new Error("diagram not part of <bpmn:Definitions />");if(!ee&&Ce&&Ce.length&&(ee=Ce[0]),!ee)throw new Error("no diagram to display");i={},f(ee);var gt=ee.plane;if(!gt)throw new Error(`no plane for ${gn(ee)}`);var M=gt.bpmnElement;if(!M)if(M=fR(Y),M)l(`correcting missing bpmnElement on ${gn(gt)} to ${gn(M)}`),gt.bpmnElement=M,p(gt);else throw new Error("no process or collaboration to display");var E=c(M,gt);if(Rn(M,"bpmn:Process")||Rn(M,"bpmn:SubProcess"))y(M,E);else if(Rn(M,"bpmn:Collaboration"))ge(M,E),g(Y.rootElements,E);else throw new Error(`unsupported bpmnElement for ${gn(gt)}: ${gn(M)}`);h(n)};var h=this.handleDeferred=function(){for(var Y;n.length;)Y=n.shift(),Y()};function y(W,Y){q(W,Y),I(W.ioSpecification,Y),A(W.artifacts,Y),o(W)}function g(W,Y){var ee=Ye(W,function(Ce){return!a(Ce)&&Rn(Ce,"bpmn:Process")&&Ce.laneSets});ee.forEach(r(y,Y))}function v(W,Y){u(W,Y)}function b(W,Y){F(W,r(v,Y))}function x(W,Y){u(W,Y)}function C(W,Y){u(W,Y)}function T(W,Y){u(W,Y)}function k(W,Y){u(W,Y)}function A(W,Y){F(W,function(ee){Rn(ee,"bpmn:Association")?n.push(function(){k(ee,Y)}):k(ee,Y)})}function I(W,Y){W&&(F(W.dataInputs,r(C,Y)),F(W.dataOutputs,r(T,Y)))}var D=this.handleSubProcess=function(Y,ee){q(Y,ee),A(Y.artifacts,ee)};function L(W,Y){var ee=u(W,Y);Rn(W,"bpmn:SubProcess")&&D(W,ee||Y),Rn(W,"bpmn:Activity")&&I(W.ioSpecification,Y),n.push(function(){F(W.dataInputAssociations,r(x,Y)),F(W.dataOutputAssociations,r(x,Y))})}function z(W,Y){u(W,Y)}function ne(W,Y){u(W,Y)}function me(W,Y){n.push(function(){var ee=u(W,Y);W.childLaneSet&&Ue(W.childLaneSet,ee||Y),Ae(W)})}function Ue(W,Y){F(W.lanes,r(me,Y))}function je(W,Y){F(W,r(Ue,Y))}function q(W,Y){le(W.flowElements,Y),W.laneSets&&je(W.laneSets,Y)}function le(W,Y){F(W,function(ee){Rn(ee,"bpmn:SequenceFlow")?n.push(function(){z(ee,Y)}):Rn(ee,"bpmn:BoundaryEvent")?n.unshift(function(){L(ee,Y)}):Rn(ee,"bpmn:FlowNode")?L(ee,Y):Rn(ee,"bpmn:DataObject")||(Rn(ee,"bpmn:DataStoreReference")||Rn(ee,"bpmn:DataObjectReference")?ne(ee,Y):l(`unrecognized flowElement ${gn(ee)} in context ${gn(Y&&Y.businessObject)}`,{element:ee,context:Y}))})}function ae(W,Y){var ee=u(W,Y),Ce=W.processRef;Ce&&y(Ce,ee||Y)}function ge(W,Y){F(W.participants,r(ae,Y)),n.push(function(){b(W.messageFlows,Y)}),A(W.artifacts,Y)}function Ae(W){F(W.flowNodeRef,function(Y){var ee=Y.get("lanes");ee&&ee.push(W)})}}function S(e,t){var n=te(e);return n&&typeof n.$instanceOf=="function"&&n.$instanceOf(t)}function We(e,t){return Xi(t,function(n){return S(e,n)})}function te(e){return e&&e.businessObject||e}function et(e){return e&&e.di}function hR(e,t,n){var i,r,o,a,s=[];function c(u,l){var p={root:function(h,y){return i.add(h,y)},element:function(h,y,g){return i.add(h,y,g)},error:function(h,y){s.push({message:h,context:y})}},f=new dR(p);l=l||u.diagrams&&u.diagrams[0];var d=mR(u,l);if(!d)throw new Error("no diagram to display");F(d,function(h){f.handleDefinitions(u,h)});var m=l.plane.bpmnElement.id;o.setRootElement(o.findRoot(m+"_plane")||o.findRoot(m))}return new Promise(function(u,l){try{return i=e.get("bpmnImporter"),r=e.get("eventBus"),o=e.get("canvas"),r.fire("import.render.start",{definitions:t}),c(t,n),r.fire("import.render.complete",{error:a,warnings:s}),u({warnings:s})}catch(p){return p.warnings=s,l(p)}})}function mR(e,t){if(!(!t||!t.plane)){var n=t.plane.bpmnElement,i=n;!S(n,"bpmn:Process")&&!S(n,"bpmn:Collaboration")&&(i=gR(n));var r;S(i,"bpmn:Collaboration")?r=i:r=mt(e.rootElements,function(u){if(S(u,"bpmn:Collaboration"))return mt(u.participants,function(l){return l.processRef===i})});var o=[i];r&&(o=fn(r.participants,function(u){return u.processRef}),o.push(r));var a=$m(o),s=[t],c=[n];return F(e.diagrams,function(u){if(u.plane){var l=u.plane.bpmnElement;a.indexOf(l)!==-1&&c.indexOf(l)===-1&&(s.push(u),c.push(l))}}),s}}function $m(e){var t=[];return F(e,function(n){n&&(t.push(n),t=t.concat($m(n.flowElements)))}),t}function gR(e){for(var t=e;t;){if(S(t,"bpmn:Process"))return t;t=t.$parent}}var yR='<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>',Fm=yR,jm={verticalAlign:"middle"},Hm={color:"#404040"},vR={zIndex:"1001",position:"fixed",top:"0",left:"0",right:"0",bottom:"0"},bR={width:"100%",height:"100%",background:"rgba(40,40,40,0.2)"},xR={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"},_R='<div class="bjs-powered-by-lightbox"><div class="backdrop"></div><div class="notice"><a href="https://bpmn.io" target="_blank" rel="noopener" class="link">'+Fm+'</a><span>Web-based tooling for BPMN, DMN and forms powered by <a href="https://bpmn.io" target="_blank" rel="noopener">bpmn.io</a>.</span></div></div>',_i;function wR(){_i=bt(_R),_n(_i,vR),_n(lt("svg",_i),jm),_n(lt(".backdrop",_i),bR),_n(lt(".notice",_i),xR),_n(lt(".link",_i),Hm,{margin:"15px 20px 15px 10px",alignSelf:"center"})}function ER(){_i||(wR(),On.bind(_i,".backdrop","click",function(e){document.body.removeChild(_i)})),document.body.appendChild(_i)}const Vs=5,zm="djs-outline-hidden";function Et(e){e=V({},RR,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),this._init(this._container,this._moddle,e),PR(this._container)}be(Et,ar),Et.prototype.importXML=async function(t,n){const i=this;function r(a){return i.get("eventBus").createEvent(a)}let o=[];try{t=this._emit("import.parse.start",{xml:t})||t;let a;try{a=await this._moddle.fromXML(t,"bpmn:Definitions")}catch(f){throw this._emit("import.parse.complete",{error:f}),f}let s=a.rootElement;const c=a.references,u=a.warnings,l=a.elementsById;o=o.concat(u),s=this._emit("import.parse.complete",r({error:null,definitions:s,elementsById:l,references:c,warnings:o}))||s;const p=await this.importDefinitions(s,n);return o=o.concat(p.warnings),this._emit("import.done",{error:null,warnings:o}),{warnings:o}}catch(a){let s=a;throw o=o.concat(s.warnings||[]),Ws(s,o),s=SR(s),this._emit("import.done",{error:s,warnings:s.warnings}),s}},Et.prototype.importDefinitions=async function(t,n){return this._setDefinitions(t),{warnings:(await this.open(n)).warnings}},Et.prototype.open=async function(t){const n=this._definitions;let i=t;if(!n){const o=new Error("no XML imported");throw Ws(o,[]),o}if(typeof t=="string"&&(i=CR(n,t),!i)){const o=new Error("BPMNDiagram <"+t+"> not found");throw Ws(o,[]),o}try{this.clear()}catch(o){throw Ws(o,[]),o}const{warnings:r}=await hR(this,n,i);return{warnings:r}},Et.prototype.saveXML=async function(t){t=t||{};let n=this._definitions,i,r;try{if(!n)throw new Error("no definitions loaded");n=this._emit("saveXML.start",{definitions:n})||n,r=(await this._moddle.toXML(n,t)).xml,r=this._emit("saveXML.serialized",{xml:r})||r}catch(a){i=a}const o=i?{error:i}:{xml:r};if(this._emit("saveXML.done",o),i)throw i;return o},Et.prototype.saveSVG=async function(){this._emit("saveSVG.start");let t,n;try{const i=this.get("canvas"),r=i.getActiveLayer(),o=lt(":scope > defs",i._svg),a=am(r),s=o?"<defs>"+am(o)+"</defs>":"",c=i.getContainer();wt(c).add(zm);let u;try{u=r.getBBox()}finally{wt(c).remove(zm)}const l=u.x-Vs,p=u.y-Vs,f=u.width+Vs*2,d=u.height+Vs*2;t=`<?xml version="1.0" encoding="utf-8"?>
|
|
8
8
|
<!-- created with bpmn-js / http://bpmn.io -->
|
|
9
9
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
10
|
-
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="`+f+'" height="'+d+'" viewBox="'+l+" "+p+" "+f+" "+d+'" version="1.1">'+s+a+"</svg>"}catch(i){n=i}if(this._emit("saveSVG.done",{error:n,svg:t}),n)throw n;return{svg:t}},St.prototype._setDefinitions=function(e){this._definitions=e},St.prototype.getModules=function(){return this._modules},St.prototype.clear=function(){this.getDefinitions()&&or.prototype.clear.call(this)},St.prototype.destroy=function(){or.prototype.destroy.call(this),yi(this._container)},St.prototype.on=function(e,t,n,i){return this.get("eventBus").on(e,t,n,i)},St.prototype.off=function(e,t){this.get("eventBus").off(e,t)},St.prototype.attachTo=function(e){if(!e)throw new Error("parentNode required");this.detach(),e.get&&e.constructor.prototype.jquery&&(e=e.get(0)),typeof e=="string"&&(e=ut(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},St.prototype.getDefinitions=function(){return this._definitions},St.prototype.detach=function(){const e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))},St.prototype._init=function(e,t,n){const i=n.modules||this.getModules(n),r=n.additionalModules||[],o=[{bpmnjs:["value",this],moddle:["value",t]}],a=[].concat(o,i,r),s=V(di(n,["additionalModules"]),{canvas:V({},n.canvas,{container:e}),modules:a});or.call(this,s),n&&n.container&&this.attachTo(n.container)},St.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)},St.prototype._createContainer=function(e){const t=bt('<div class="bjs-container"></div>');return _n(t,{width:zm(e.width),height:zm(e.height),position:e.position}),t},St.prototype._createModdle=function(e){const t=V({},this._moddleExtensions,e.moddleExtensions);return new Gd(t)},St.prototype._modules=[];function Vs(e,t){return e.warnings=t,e}function ER(e){const n=/unparsable content <([^>]+)> detected([\s\S]*)$/.exec(e.message);return n&&(e.message="unparsable content <"+n[1]+"> detected; this may indicate an invalid BPMN 2.0 diagram file"+n[2]),e}const SR={width:"100%",height:"100%",position:"relative"};function zm(e){return e+(Be(e)?"px":"")}function RR(e,t){return t&&ht(e.diagrams,function(n){return n.id===t})||null}function CR(e){const n='<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" >'+$m+"</a>",i=bt(n);_n(ut("svg",i),Fm),_n(i,jm,{position:"absolute",bottom:"15px",right:"15px",zIndex:"100"}),e.appendChild(i),Ne.bind(i,"click",function(r){wR(),r.preventDefault()})}function bo(e){St.call(this,e),this.on("import.parse.complete",function(t){t.error||this._collectIds(t.definitions,t.elementsById)},this),this.on("diagram.destroy",function(){this.get("moddle").ids.clear()},this)}ye(bo,St),bo.prototype._createModdle=function(e){var t=St.prototype._createModdle.call(this,e);return t.ids=new gi([32,36,1]),t},bo.prototype._collectIds=function(e,t){var n=e.$model,i=n.ids,r;i.clear();for(r in t)i.claim(r,t[r])};function Xe(e,t){return S(e,"bpmn:CallActivity")?!1:S(e,"bpmn:SubProcess")?(t=t||Je(e),t&&S(t,"bpmndi:BPMNPlane")?!0:t&&!!t.isExpanded):S(e,"bpmn:Participant")?!!te(e).processRef:!0}function Jt(e){if(!(!S(e,"bpmn:Participant")&&!S(e,"bpmn:Lane"))){var t=Je(e).isHorizontal;return t===void 0?!0:t}}function PR(e){return e&&te(e).isInterrupting!==!1}function gn(e){return e&&!!te(e).triggeredByEvent}function xo(e,t){var n=te(e).eventDefinitions;return Ki(n,function(i){return S(i,t)})}function AR(e){return xo(e,"bpmn:ErrorEventDefinition")}function TR(e){return xo(e,"bpmn:EscalationEventDefinition")}function MR(e){return xo(e,"bpmn:CompensateEventDefinition")}var $r={width:90,height:20},Gm=15;function ar(e){return S(e,"bpmn:Event")||S(e,"bpmn:Gateway")||S(e,"bpmn:DataStoreReference")||S(e,"bpmn:DataObjectReference")||S(e,"bpmn:DataInput")||S(e,"bpmn:DataOutput")||S(e,"bpmn:SequenceFlow")||S(e,"bpmn:MessageFlow")||S(e,"bpmn:Group")}function Ws(e){return Ge(e.label)}function kR(e){var t=e.length/2-1,n=e[Math.floor(t)],i=e[Math.ceil(t+.01)],r=OR(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-=Gm:a+=Gm,{x:a,y:s}}function OR(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}}function Fl(e){return e.waypoints?kR(e.waypoints):S(e,"bpmn:Group")?{x:e.x+e.width/2,y:e.y+$r.height/2}:{x:e.x+e.width/2,y:e.y+e.height+$r.height/2}}function DR(e,t){var n,i,r,o=e.label;return o&&o.bounds?(r=o.bounds,i={width:Math.max($r.width,r.width),height:r.height},n={x:r.x+r.width/2,y:r.y+r.height/2}):(n=Fl(t),i=$r),V({x:n.x-i.width/2,y:n.y-i.height/2},i)}function Vm(e){if(S(e,"bpmn:FlowElement")||S(e,"bpmn:Participant")||S(e,"bpmn:Lane")||S(e,"bpmn:SequenceFlow")||S(e,"bpmn:MessageFlow")||S(e,"bpmn:DataInput")||S(e,"bpmn:DataOutput"))return"name";if(S(e,"bpmn:TextAnnotation"))return"text";if(S(e,"bpmn:Group"))return"categoryValueRef"}function LR(e){var t=e.categoryValueRef;return t&&t.value||""}function Yn(e){var t=e.businessObject,n=Vm(t);if(n)return n==="categoryValueRef"?LR(t):t[n]||""}function IR(e,t){var n=e.businessObject,i=Vm(n);if(i)if(i==="categoryValueRef"){if(!n[i])return e;n[i].value=t}else n[i]=t;return e}function BR(e){return Ge(e)&&ar(e.labelTarget)}var _o=7;function Wm(e){let t=[];return F(e.incoming,n=>{S(n,"bpmn:Association")&&S(n.source,"bpmn:TextAnnotation")&&t.push({annotation:n.source,association:n})}),F(e.outgoing,n=>{S(n,"bpmn:Association")&&S(n.target,"bpmn:TextAnnotation")&&t.push({annotation:n.target,association:n})}),t}function fa(e){const t=new Map;return F(Ol(e),n=>{F(Wm(n),i=>{t.has(i.annotation)||t.set(i.annotation,{annotation:i.annotation,associations:[]}),t.get(i.annotation).associations.push(i.association)})}),[...t.values()]}var jl="hsl(225, 10%, 15%)",NR="white";function _i(e,t){return Ki(e.eventDefinitions,function(n){return n.$type===t})}function $R(e){return e.$type==="bpmn:IntermediateThrowEvent"||e.$type==="bpmn:EndEvent"}function FR(e){var t=e.dataObjectRef;return e.isCollection||t&&t.isCollection}function Ke(e,t,n){var i=Je(e);return n||i.get("color:background-color")||i.get("bioc:fill")||t||NR}function me(e,t,n){var i=Je(e);return n||i.get("color:border-color")||i.get("bioc:stroke")||t||jl}function da(e,t,n,i){var r=Je(e),o=r.get("label");return i||o&&o.get("color:color")||t||me(e,n)}function Um(e){var t=e.x+e.width/2,n=e.y+e.height/2,i=e.width/2,r=[["M",t,n],["m",0,-i],["a",i,i,0,1,1,0,2*i],["a",i,i,0,1,1,0,-2*i],["z"]];return Ir(r)}function Hl(e,t){var n=e.x,i=e.y,r=e.width,o=e.height,a=[["M",n+t,i],["l",r-t*2,0],["a",t,t,0,0,1,t,t],["l",0,o-t*2],["a",t,t,0,0,1,-t,t],["l",t*2-r,0],["a",t,t,0,0,1,-t,-t],["l",0,t*2-o],["a",t,t,0,0,1,t,-t],["z"]];return Ir(a)}function jR(e){var t=e.width,n=e.height,i=e.x,r=e.y,o=t/2,a=n/2,s=[["M",i+o,r],["l",o,a],["l",-o,a],["l",-o,-a],["z"]];return Ir(s)}function HR(e){var t=e.x,n=e.y,i=e.width,r=e.height,o=[["M",t,n],["l",i,0],["l",0,r],["l",-i,0],["z"]];return Ir(o)}function ha(e,t={}){return{width:Zn(e,t),height:Dn(e,t)}}function Zn(e,t={}){return An(t,"width")?t.width:e.width}function Dn(e,t={}){return An(t,"height")?t.height:e.height}var zR=new gi,GR=10,Us=3,VR=1.5,Ys=10,WR=4,wo=.95,UR=1,YR=.25;function Fr(e,t,n,i,r,o,a){Di.call(this,t,a);var s=e&&e.defaultFillColor,c=e&&e.defaultStrokeColor,u=e&&e.defaultLabelColor;function l(M){return n.computeStyle(M,{strokeLinecap:"round",strokeLinejoin:"round",stroke:jl,strokeWidth:2,fill:"white"})}function p(M){return n.computeStyle(M,["no-fill"],{strokeLinecap:"round",strokeLinejoin:"round",stroke:jl,strokeWidth:2})}function f(M,E){var{ref:w={x:0,y:0},scale:G=1,element:U,parentGfx:X=r._svg}=E,Ee=Ae("marker",{id:M,viewBox:"0 0 20 20",refX:w.x,refY:w.y,markerWidth:20*G,markerHeight:20*G,orient:"auto"});$e(Ee,U);var ze=ut(":scope > defs",X);ze||(ze=Ae("defs"),$e(X,ze)),$e(ze,Ee)}function d(M,E,w,G){var U=zR.nextPrefixed("marker-");return m(M,U,E,w,G),"url(#"+U+")"}function m(M,E,w,G,U){if(w==="sequenceflow-end"){var X=Ae("path",{d:"M 1 5 L 11 10 L 1 15 Z",...l({fill:U,stroke:U,strokeWidth:1})});f(E,{element:X,ref:{x:11,y:10},scale:.5,parentGfx:M})}if(w==="messageflow-start"){var Ee=Ae("circle",{cx:6,cy:6,r:3.5,...l({fill:G,stroke:U,strokeWidth:1,strokeDasharray:[1e4,1]})});f(E,{element:Ee,ref:{x:6,y:6},parentGfx:M})}if(w==="messageflow-end"){var ze=Ae("path",{d:"m 1 5 l 0 -3 l 7 3 l -7 3 z",...l({fill:G,stroke:U,strokeWidth:1,strokeDasharray:[1e4,1]})});f(E,{element:ze,ref:{x:8.5,y:5},parentGfx:M})}if(w==="association-start"){var tt=Ae("path",{d:"M 11 5 L 1 10 L 11 15",...p({fill:"none",stroke:U,strokeWidth:1.5,strokeDasharray:[1e4,1]})});f(E,{element:tt,ref:{x:1,y:10},scale:.5,parentGfx:M})}if(w==="association-end"){var At=Ae("path",{d:"M 1 5 L 11 10 L 1 15",...p({fill:"none",stroke:U,strokeWidth:1.5,strokeDasharray:[1e4,1]})});f(E,{element:At,ref:{x:11,y:10},scale:.5,parentGfx:M})}if(w==="conditional-flow-marker"){var ct=Ae("path",{d:"M 0 10 L 8 6 L 16 10 L 8 14 Z",...l({fill:G,stroke:U})});f(E,{element:ct,ref:{x:-1,y:10},scale:.5,parentGfx:M})}if(w==="conditional-default-flow-marker"){var zt=Ae("path",{d:"M 6 4 L 10 16",...l({stroke:U,fill:"none"})});f(E,{element:zt,ref:{x:0,y:10},scale:.5,parentGfx:M})}}function h(M,E,w,G,U={}){Xt(G)&&(U=G,G=0),G=G||0,U=l(U);var X=E/2,Ee=w/2,ze=Ae("circle",{cx:X,cy:Ee,r:Math.round((E+w)/4-G),...U});return $e(M,ze),ze}function y(M,E,w,G,U,X){Xt(U)&&(X=U,U=0),U=U||0,X=l(X);var Ee=Ae("rect",{x:U,y:U,width:E-U*2,height:w-U*2,rx:G,ry:G,...X});return $e(M,Ee),Ee}function g(M,E,w,G){var U=E/2,X=w/2,Ee=[{x:U,y:0},{x:E,y:X},{x:U,y:w},{x:0,y:X}],ze=Ee.map(function(At){return At.x+","+At.y}).join(" ");G=l(G);var tt=Ae("polygon",{...G,points:ze});return $e(M,tt),tt}function v(M,E,w,G){w=p(w);var U=oa(E,w,G);return $e(M,U),U}function b(M,E,w){return v(M,E,w,5)}function x(M,E,w){w=p(w);var G=Ae("path",{...w,d:E});return $e(M,G),G}function C(M,E,w,G){return x(E,w,V({"data-marker":M},G))}function T(M){return mt[M]}function k(M){return function(E,w,G){return T(M)(E,w,G)}}var A={"bpmn:MessageEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.235,my:.315}}),X=G?me(E,c,w.stroke):Ke(E,s,w.fill),Ee=G?Ke(E,s,w.fill):me(E,c,w.stroke),ze=x(M,U,{fill:X,stroke:Ee,strokeWidth:1});return ze},"bpmn:TimerEventDefinition":function(M,E,w={}){var G=w.width||E.width,U=w.height||E.height,X=w.width?1:2,Ee=h(M,G,U,.2*U,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke),strokeWidth:X}),ze=i.getScaledPath("EVENT_TIMER_WH",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:G,containerHeight:U,position:{mx:.5,my:.5}});x(M,ze,{stroke:me(E,c,w.stroke),strokeWidth:X});for(var tt=0;tt<12;tt++){var At=i.getScaledPath("EVENT_TIMER_LINE",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:G,containerHeight:U,position:{mx:.5,my:.5}}),ct=G/2,zt=U/2;x(M,At,{strokeWidth:1,stroke:me(E,c,w.stroke),transform:"rotate("+tt*30+","+zt+","+ct+")"})}return Ee},"bpmn:EscalationEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.5,my:.2}}),X=G?me(E,c,w.stroke):Ke(E,s,w.fill);return x(M,U,{fill:X,stroke:me(E,c,w.stroke),strokeWidth:1})},"bpmn:ConditionalEventDefinition":function(M,E,w={}){var G=i.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.5,my:.222}});return x(M,G,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke),strokeWidth:1})},"bpmn:LinkEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:.57,my:.263}}),X=G?me(E,c,w.stroke):Ke(E,s,w.fill);return x(M,U,{fill:X,stroke:me(E,c,w.stroke),strokeWidth:1})},"bpmn:ErrorEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_ERROR",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.2,my:.722}}),X=G?me(E,c,w.stroke):Ke(E,s,w.fill);return x(M,U,{fill:X,stroke:me(E,c,w.stroke),strokeWidth:1})},"bpmn:CancelEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_CANCEL_45",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:.638,my:-.055}}),X=G?me(E,c,w.stroke):"none",Ee=x(M,U,{fill:X,stroke:me(E,c,w.stroke),strokeWidth:1});return Bm(Ee,45),Ee},"bpmn:CompensateEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.22,my:.5}}),X=G?me(E,c,w.stroke):Ke(E,s,w.fill);return x(M,U,{fill:X,stroke:me(E,c,w.stroke),strokeWidth:1})},"bpmn:SignalEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.5,my:.2}}),X=G?me(E,c,w.stroke):Ke(E,s,w.fill);return x(M,U,{strokeWidth:1,fill:X,stroke:me(E,c,w.stroke)})},"bpmn:MultipleEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_MULTIPLE",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.211,my:.36}}),X=G?me(E,c,w.stroke):Ke(E,s,w.fill);return x(M,U,{fill:X,stroke:me(E,c,w.stroke),strokeWidth:1})},"bpmn:ParallelMultipleEventDefinition":function(M,E,w={}){var G=i.getScaledPath("EVENT_PARALLEL_MULTIPLE",{xScaleFactor:1.2,yScaleFactor:1.2,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.458,my:.194}});return x(M,G,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke),strokeWidth:1})},"bpmn:TerminateEventDefinition":function(M,E,w={}){var G=h(M,E.width,E.height,8,{fill:me(E,c,w.stroke),stroke:me(E,c,w.stroke),strokeWidth:4});return G}};function I(M,E,w={},G){var U=te(M),X=$R(U),Ee=G||M;return U.get("eventDefinitions")&&U.get("eventDefinitions").length>1?U.get("parallelMultiple")?A["bpmn:ParallelMultipleEventDefinition"](E,Ee,w,X):A["bpmn:MultipleEventDefinition"](E,Ee,w,X):_i(U,"bpmn:MessageEventDefinition")?A["bpmn:MessageEventDefinition"](E,Ee,w,X):_i(U,"bpmn:TimerEventDefinition")?A["bpmn:TimerEventDefinition"](E,Ee,w,X):_i(U,"bpmn:ConditionalEventDefinition")?A["bpmn:ConditionalEventDefinition"](E,Ee,w,X):_i(U,"bpmn:SignalEventDefinition")?A["bpmn:SignalEventDefinition"](E,Ee,w,X):_i(U,"bpmn:EscalationEventDefinition")?A["bpmn:EscalationEventDefinition"](E,Ee,w,X):_i(U,"bpmn:LinkEventDefinition")?A["bpmn:LinkEventDefinition"](E,Ee,w,X):_i(U,"bpmn:ErrorEventDefinition")?A["bpmn:ErrorEventDefinition"](E,Ee,w,X):_i(U,"bpmn:CancelEventDefinition")?A["bpmn:CancelEventDefinition"](E,Ee,w,X):_i(U,"bpmn:CompensateEventDefinition")?A["bpmn:CompensateEventDefinition"](E,Ee,w,X):_i(U,"bpmn:TerminateEventDefinition")?A["bpmn:TerminateEventDefinition"](E,Ee,w,X):null}var D={ParticipantMultiplicityMarker:function(M,E,w={}){var G=Zn(E,w),U=Dn(E,w),X=i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:G,containerHeight:U,position:{mx:(G/2-6)/G,my:(U-15)/U}});C("participant-multiplicity",M,X,{strokeWidth:2,fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke)})},SubProcessMarker:function(M,E,w={}){var G=y(M,14,14,0,{strokeWidth:1,fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke)});sn(G,E.width/2-7.5,E.height-20);var U=i.getScaledPath("MARKER_SUB_PROCESS",{xScaleFactor:1.5,yScaleFactor:1.5,containerWidth:E.width,containerHeight:E.height,position:{mx:(E.width/2-7.5)/E.width,my:(E.height-20)/E.height}});C("sub-process",M,U,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke)})},ParallelMarker:function(M,E,w){var G=Zn(E,w),U=Dn(E,w),X=i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:G,containerHeight:U,position:{mx:(G/2+w.parallel)/G,my:(U-20)/U}});C("parallel",M,X,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke)})},SequentialMarker:function(M,E,w){var G=i.getScaledPath("MARKER_SEQUENTIAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:(E.width/2+w.seq)/E.width,my:(E.height-19)/E.height}});C("sequential",M,G,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke)})},CompensationMarker:function(M,E,w){var G=i.getScaledPath("MARKER_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:(E.width/2+w.compensation)/E.width,my:(E.height-13)/E.height}});C("compensation",M,G,{strokeWidth:1,fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke)})},LoopMarker:function(M,E,w){var G=Zn(E,w),U=Dn(E,w),X=i.getScaledPath("MARKER_LOOP",{xScaleFactor:1,yScaleFactor:1,containerWidth:G,containerHeight:U,position:{mx:(G/2+w.loop)/G,my:(U-7)/U}});C("loop",M,X,{strokeWidth:1.5,fill:"none",stroke:me(E,c,w.stroke),strokeMiterlimit:.5})},AdhocMarker:function(M,E,w){var G=Zn(E,w),U=Dn(E,w),X=i.getScaledPath("MARKER_ADHOC",{xScaleFactor:1,yScaleFactor:1,containerWidth:G,containerHeight:U,position:{mx:(G/2+w.adhoc)/G,my:(U-15)/U}});C("adhoc",M,X,{strokeWidth:1,fill:me(E,c,w.stroke),stroke:me(E,c,w.stroke)})}};function L(M,E,w,G){D[M](E,w,G)}function z(M,E,w=[],G={}){G={fill:G.fill,stroke:G.stroke,width:Zn(E,G),height:Dn(E,G)};var U=te(E),X=w.includes("SubProcessMarker");X?G={...G,seq:-21,parallel:-22,compensation:-25,loop:-18,adhoc:10}:G={...G,seq:-5,parallel:-6,compensation:-7,loop:0,adhoc:-8},U.get("isForCompensation")&&w.push("CompensationMarker"),S(U,"bpmn:AdHocSubProcess")&&(w.push("AdhocMarker"),X||V(G,{compensation:G.compensation-18}));var Ee=U.get("loopCharacteristics"),ze=Ee&&Ee.get("isSequential");Ee&&(V(G,{compensation:G.compensation-18}),w.includes("AdhocMarker")&&V(G,{seq:-23,loop:-18,parallel:-24}),ze===void 0&&w.push("LoopMarker"),ze===!1&&w.push("ParallelMarker"),ze===!0&&w.push("SequentialMarker")),w.includes("CompensationMarker")&&w.length===1&&V(G,{compensation:-8}),F(w,function(tt){L(tt,M,E,G)})}function re(M,E,w={}){w=V({size:{width:100}},w);var G=o.createText(E||"",w);return Qe(G).add("djs-label"),$e(M,G),G}function de(M,E,w,G={}){var U=te(E),X=ha({x:E.x,y:E.y,width:E.width,height:E.height},G);return re(M,U.name,{align:w,box:X,padding:7,style:{fill:da(E,u,c,G.stroke)}})}function Ue(M,E,w={}){var G={width:E.width,height:E.height,x:E.width/2+E.x,y:E.height/2+E.y};return re(M,Yn(E),{box:G,style:V({},o.getExternalStyle(),{fill:da(E,u,c,w.stroke)})})}function je(M,E,w,G={}){var U=Jt(w),X=re(M,E,{box:{height:30,width:U?Dn(w,G):Zn(w,G)},align:"center-middle",style:{fill:da(w,u,c,G.stroke)}});if(U){var Ee=-1*Dn(w,G);zs(X,0,-Ee,270)}}function q(M,E,w={}){var{width:G,height:U}=ha(E,w);return y(M,G,U,Ys,{...w,fill:Ke(E,s,w.fill),fillOpacity:wo,stroke:me(E,c,w.stroke)})}function le(M,E,w={}){var G=te(E),U=Ke(E,s,w.fill),X=me(E,c,w.stroke);return(G.get("associationDirection")==="One"||G.get("associationDirection")==="Both")&&(w.markerEnd=d(M,"association-end",U,X)),G.get("associationDirection")==="Both"&&(w.markerStart=d(M,"association-start",U,X)),w=et(w,["markerStart","markerEnd"]),b(M,E.waypoints,{...w,stroke:X,strokeDasharray:"0, 5"})}function ae(M,E,w={}){var G=Ke(E,s,w.fill),U=me(E,c,w.stroke),X=i.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:.474,my:.296}}),Ee=x(M,X,{fill:G,fillOpacity:wo,stroke:U}),ze=te(E);if(FR(ze)){var tt=i.getScaledPath("DATA_OBJECT_COLLECTION_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:.33,my:(E.height-18)/E.height}});x(M,tt,{strokeWidth:2,fill:G,stroke:U})}return Ee}function he(M,E,w={}){return h(M,E.width,E.height,{fillOpacity:wo,...w,fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke)})}function Pe(M,E,w={}){return g(M,E.width,E.height,{fill:Ke(E,s,w.fill),fillOpacity:wo,stroke:me(E,c,w.stroke)})}function W(M,E,w={}){var G=y(M,Zn(E,w),Dn(E,w),0,{fill:Ke(E,s,w.fill),fillOpacity:w.fillOpacity||wo,stroke:me(E,c,w.stroke),strokeWidth:1.5}),U=te(E);if(S(U,"bpmn:Lane")){var X=U.get("name");je(M,X,E,w)}return G}function Y(M,E,w={}){var G=q(M,E,w),U=Xe(E);if(gn(E)&&(ve(G,{strokeDasharray:"0, 5.5",strokeWidth:2.5}),!U)){var X=te(E).flowElements||[],Ee=X.filter(ze=>S(ze,"bpmn:StartEvent"));Ee.length===1&&ee(Ee[0],M,w,E)}return de(M,E,U?"center-top":"center-middle",w),U?z(M,E,void 0,w):z(M,E,["SubProcessMarker"],w),G}function ee(M,E,w,G){var U=22,X={fill:Ke(G,s,w.fill),stroke:me(G,c,w.stroke),width:U,height:U},Ee=te(M).isInterrupting,ze=Ee?0:3,tt=Ee?1:1.2,At=20,ct=(U-At)/2,zt="translate("+ct+","+ct+")";h(E,At,At,{fill:X.fill,stroke:X.stroke,strokeWidth:tt,strokeDasharray:ze,transform:zt}),I(M,E,X,G)}function Re(M,E,w={}){var G=q(M,E,w);return de(M,E,"center-middle",w),z(M,E,void 0,w),G}var mt=this.handlers={"bpmn:AdHocSubProcess":function(M,E,w={}){return Xe(E)?w=et(w,["fill","stroke","width","height"]):w=et(w,["fill","stroke"]),Y(M,E,w)},"bpmn:Association":function(M,E,w={}){return w=et(w,["fill","stroke"]),le(M,E,w)},"bpmn:BoundaryEvent":function(M,E,w={}){var{renderIcon:G=!0}=w;w=et(w,["fill","stroke"]);var U=te(E),X=U.get("cancelActivity");w={strokeWidth:1.5,fill:Ke(E,s,w.fill),fillOpacity:UR,stroke:me(E,c,w.stroke)},X||(w.strokeDasharray="6");var Ee=he(M,E,w);return h(M,E.width,E.height,Us,{...w,fill:"none"}),G&&I(E,M,w),Ee},"bpmn:BusinessRuleTask":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=Re(M,E,w),U=i.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}}),X=x(M,U);ve(X,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke),strokeWidth:1});var Ee=i.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}}),ze=x(M,Ee);return ve(ze,{fill:me(E,c,w.stroke),stroke:me(E,c,w.stroke),strokeWidth:1}),G},"bpmn:CallActivity":function(M,E,w={}){return w=et(w,["fill","stroke"]),Y(M,E,{strokeWidth:5,...w})},"bpmn:ComplexGateway":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=Pe(M,E,w),U=i.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:E.width,containerHeight:E.height,position:{mx:.46,my:.26}});return x(M,U,{fill:me(E,c,w.stroke),stroke:me(E,c,w.stroke),strokeWidth:1}),G},"bpmn:DataInput":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=i.getRawPath("DATA_ARROW"),U=ae(M,E,w);return x(M,G,{fill:"none",stroke:me(E,c,w.stroke),strokeWidth:1}),U},"bpmn:DataInputAssociation":function(M,E,w={}){return w=et(w,["fill","stroke"]),le(M,E,{...w,markerEnd:d(M,"association-end",Ke(E,s,w.fill),me(E,c,w.stroke))})},"bpmn:DataObject":function(M,E,w={}){return w=et(w,["fill","stroke"]),ae(M,E,w)},"bpmn:DataObjectReference":k("bpmn:DataObject"),"bpmn:DataOutput":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=i.getRawPath("DATA_ARROW"),U=ae(M,E,w);return x(M,G,{strokeWidth:1,fill:me(E,c,w.stroke),stroke:me(E,c,w.stroke)}),U},"bpmn:DataOutputAssociation":function(M,E,w={}){return w=et(w,["fill","stroke"]),le(M,E,{...w,markerEnd:d(M,"association-end",Ke(E,s,w.fill),me(E,c,w.stroke))})},"bpmn:DataStoreReference":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=i.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:0,my:.133}});return x(M,G,{fill:Ke(E,s,w.fill),fillOpacity:wo,stroke:me(E,c,w.stroke),strokeWidth:2})},"bpmn:EndEvent":function(M,E,w={}){var{renderIcon:G=!0}=w;w=et(w,["fill","stroke"]);var U=he(M,E,{...w,strokeWidth:4});return G&&I(E,M,w),U},"bpmn:EventBasedGateway":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=te(E),U=Pe(M,E,w);h(M,E.width,E.height,E.height*.2,{fill:Ke(E,"none",w.fill),stroke:me(E,c,w.stroke),strokeWidth:1});var X=G.get("eventGatewayType"),Ee=!!G.get("instantiate");function ze(){var At=i.getScaledPath("GATEWAY_EVENT_BASED",{xScaleFactor:.18,yScaleFactor:.18,containerWidth:E.width,containerHeight:E.height,position:{mx:.36,my:.44}});x(M,At,{fill:"none",stroke:me(E,c,w.stroke),strokeWidth:2})}if(X==="Parallel"){var tt=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:E.width,containerHeight:E.height,position:{mx:.474,my:.296}});x(M,tt,{fill:"none",stroke:me(E,c,w.stroke),strokeWidth:1})}else X==="Exclusive"&&(Ee||h(M,E.width,E.height,E.height*.26,{fill:"none",stroke:me(E,c,w.stroke),strokeWidth:1}),ze());return U},"bpmn:ExclusiveGateway":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=Pe(M,E,w),U=i.getScaledPath("GATEWAY_EXCLUSIVE",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:E.width,containerHeight:E.height,position:{mx:.32,my:.3}}),X=Je(E);return X.get("isMarkerVisible")&&x(M,U,{fill:me(E,c,w.stroke),stroke:me(E,c,w.stroke),strokeWidth:1}),G},"bpmn:Gateway":function(M,E,w={}){return w=et(w,["fill","stroke"]),Pe(M,E,w)},"bpmn:Group":function(M,E,w={}){return w=et(w,["fill","stroke","width","height"]),y(M,E.width,E.height,Ys,{stroke:me(E,c,w.stroke),strokeWidth:1.5,strokeDasharray:"10, 6, 0, 6",fill:"none",pointerEvents:"none",width:Zn(E,w),height:Dn(E,w)})},"bpmn:InclusiveGateway":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=Pe(M,E,w);return h(M,E.width,E.height,E.height*.24,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke),strokeWidth:2.5}),G},"bpmn:IntermediateEvent":function(M,E,w={}){var{renderIcon:G=!0}=w;w=et(w,["fill","stroke"]);var U=he(M,E,{...w,strokeWidth:1.5});return h(M,E.width,E.height,Us,{fill:"none",stroke:me(E,c,w.stroke),strokeWidth:1.5}),G&&I(E,M,w),U},"bpmn:IntermediateCatchEvent":k("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":k("bpmn:IntermediateEvent"),"bpmn:Lane":function(M,E,w={}){return w=et(w,["fill","stroke","width","height"]),W(M,E,{...w,fillOpacity:YR})},"bpmn:ManualTask":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=Re(M,E,w),U=i.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}});return x(M,U,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke),strokeWidth:.5}),G},"bpmn:MessageFlow":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=te(E),U=Je(E),X=Ke(E,s,w.fill),Ee=me(E,c,w.stroke),ze=b(M,E.waypoints,{markerEnd:d(M,"messageflow-end",X,Ee),markerStart:d(M,"messageflow-start",X,Ee),stroke:Ee,strokeDasharray:"10, 11",strokeWidth:1.5});if(G.get("messageRef")){var tt=ze.getPointAtLength(ze.getTotalLength()/2),At=i.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:tt.x,y:tt.y}}),ct={strokeWidth:1};U.get("messageVisibleKind")==="initiating"?(ct.fill=X,ct.stroke=Ee):(ct.fill=Ee,ct.stroke=X);var zt=x(M,At,ct),en=G.get("messageRef"),tn=en.get("name"),vt=re(M,tn,{align:"center-top",fitBox:!0,style:{fill:Ee}}),Tt=zt.getBBox(),yn=vt.getBBox(),Pr=tt.x-yn.width/2,Fn=tt.y+Tt.height/2+GR;zs(vt,Pr,Fn,0)}return ze},"bpmn:ParallelGateway":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=Pe(M,E,w),U=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:E.width,containerHeight:E.height,position:{mx:.46,my:.2}});return x(M,U,{fill:me(E,c,w.stroke),stroke:me(E,c,w.stroke),strokeWidth:1}),G},"bpmn:Participant":function(M,E,w={}){w=et(w,["fill","stroke","width","height"]);var G=W(M,E,w),U=Xe(E),X=Jt(E),Ee=te(E),ze=Ee.get("name");if(U){var tt=X?[{x:30,y:0},{x:30,y:Dn(E,w)}]:[{x:0,y:30},{x:Zn(E,w),y:30}];v(M,tt,{stroke:me(E,c,w.stroke),strokeWidth:VR}),je(M,ze,E,w)}else{var At=ha(E,w);X||(At.height=Zn(E,w),At.width=Dn(E,w));var ct=re(M,ze,{box:At,align:"center-middle",style:{fill:da(E,u,c,w.stroke)}});if(!X){var zt=-1*Dn(E,w);zs(ct,0,-zt,270)}}return Ee.get("participantMultiplicity")&&L("ParticipantMultiplicityMarker",M,E,w),G},"bpmn:ReceiveTask":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=te(E),U=Re(M,E,w),X;return G.get("instantiate")?(h(M,28,28,20*.22,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke),strokeWidth:1}),X=i.getScaledPath("TASK_TYPE_INSTANTIATING_SEND",{abspos:{x:7.77,y:9.52}})):X=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:21,containerHeight:14,position:{mx:.3,my:.4}}),x(M,X,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke),strokeWidth:1}),U},"bpmn:ScriptTask":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=Re(M,E,w),U=i.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}});return x(M,U,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke),strokeWidth:1}),G},"bpmn:SendTask":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=Re(M,E,w),U=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}});return x(M,U,{fill:me(E,c,w.stroke),stroke:Ke(E,s,w.fill),strokeWidth:1}),G},"bpmn:SequenceFlow":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=Ke(E,s,w.fill),U=me(E,c,w.stroke),X=b(M,E.waypoints,{markerEnd:d(M,"sequenceflow-end",G,U),stroke:U}),Ee=te(E),{source:ze}=E;if(ze){var tt=te(ze);Ee.get("conditionExpression")&&S(tt,"bpmn:Activity")&&ve(X,{markerStart:d(M,"conditional-flow-marker",G,U)}),tt.get("default")&&(S(tt,"bpmn:Gateway")||S(tt,"bpmn:Activity"))&&tt.get("default")===Ee&&ve(X,{markerStart:d(M,"conditional-default-flow-marker",G,U)})}return X},"bpmn:ServiceTask":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=Re(M,E,w);h(M,10,10,{fill:Ke(E,s,w.fill),stroke:"none",transform:"translate(6, 6)"});var U=i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}});x(M,U,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke),strokeWidth:1}),h(M,10,10,{fill:Ke(E,s,w.fill),stroke:"none",transform:"translate(11, 10)"});var X=i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}});return x(M,X,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke),strokeWidth:1}),G},"bpmn:StartEvent":function(M,E,w={}){var{renderIcon:G=!0}=w;w=et(w,["fill","stroke"]);var U=te(E);U.get("isInterrupting")||(w={...w,strokeDasharray:"6"});var X=he(M,E,w);return G&&I(E,M,w),X},"bpmn:SubProcess":function(M,E,w={}){return Xe(E)?w=et(w,["fill","stroke","width","height"]):w=et(w,["fill","stroke"]),Y(M,E,w)},"bpmn:Task":function(M,E,w={}){return w=et(w,["fill","stroke"]),Re(M,E,w)},"bpmn:TextAnnotation":function(M,E,w={}){w=et(w,["fill","stroke"]);var{width:G,height:U}=ha(E,w),X=y(M,G,U,0,0,{fill:"none",stroke:"none"}),Ee=i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:G,containerHeight:U,position:{mx:0,my:0}});x(M,Ee,{stroke:me(E,c,w.stroke)});var ze=te(E),tt=ze.get("text")||"";return re(M,tt,{align:"left-top",box:ha(E,w),padding:_o,style:{fill:da(E,u,c,w.stroke)}}),X},"bpmn:Transaction":function(M,E,w={}){Xe(E)?w=et(w,["fill","stroke","width","height"]):w=et(w,["fill","stroke"]);var G=Y(M,E,{strokeWidth:1.5,...w}),U=n.style(["no-fill","no-events"],{stroke:me(E,c,w.stroke),strokeWidth:1.5}),X=Xe(E);return X||(w={}),y(M,Zn(E,w),Dn(E,w),Ys-Us,Us,U),G},"bpmn:UserTask":function(M,E,w={}){w=et(w,["fill","stroke"]);var G=Re(M,E,w),U=15,X=12,Ee=i.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:U,y:X}});x(M,Ee,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke),strokeWidth:.5});var ze=i.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:U,y:X}});x(M,ze,{fill:Ke(E,s,w.fill),stroke:me(E,c,w.stroke),strokeWidth:.5});var tt=i.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:U,y:X}});return x(M,tt,{fill:me(E,c,w.stroke),stroke:me(E,c,w.stroke),strokeWidth:.5}),G},label:function(M,E,w={}){return Ue(M,E,w)}};this._drawPath=x,this._renderer=T}ye(Fr,Di),Fr.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],Fr.prototype.canRender=function(e){return S(e,"bpmn:BaseElement")},Fr.prototype.drawShape=function(e,t,n={}){var{type:i}=t,r=this._renderer(i);return r(e,t,n)},Fr.prototype.drawConnection=function(e,t,n={}){var{type:i}=t,r=this._renderer(i);return r(e,t,n)},Fr.prototype.getShapePath=function(e){return Ge(e)?Hl(e,WR):S(e,"bpmn:Event")?Um(e):S(e,"bpmn:Activity")?Hl(e,Ys):S(e,"bpmn:Gateway")?jR(e):HR(e)};function et(e,t=[]){return t.reduce((n,i)=>(e[i]&&(n[i]=e[i]),n),{})}var qR=0,KR={width:150,height:50};function XR(e){var t=e.split("-");return{horizontal:t[0]||"center",vertical:t[1]||"top"}}function ZR(e){return Xt(e)?V({top:0,left:0,right:0,bottom:0},e):{top:e,left:e,right:e,bottom:e}}var zl=null;function QR(){return zl||(zl=document.createElement("canvas").getContext("2d")),zl}function JR(e){var t=[];return e.fontStyle&&t.push(e.fontStyle),e.fontVariant&&t.push(e.fontVariant),e.fontWeight&&t.push(e.fontWeight),e.fontStretch&&t.push(e.fontStretch),t.push(Ym(e.fontSize)||"12px"),t.push(e.fontFamily||"sans-serif"),t.join(" ")}function Ym(e){if(e!=null)return typeof e=="number"||/^-?\d+(\.\d+)?$/.test(e)?e+"px":e}function eC(e,t){var n=QR();if(!n)return{width:0,height:0};n.font=JR(t),"letterSpacing"in n&&(n.letterSpacing=Ym(t.letterSpacing)||"0px");var i=e==="",r=i?"dummy":e.replace(/\s+$/,""),o=n.measureText(r);return{width:i?0:o.width,height:"fontBoundingBoxAscent"in o?o.fontBoundingBoxAscent+o.fontBoundingBoxDescent:o.actualBoundingBoxAscent+o.actualBoundingBoxDescent}}function tC(e,t,n){for(var i=e.shift(),r=i,o;;){if(o=eC(r,n),o.width=r?o.width:0,r===" "||r===""||o.width<Math.round(t)||r.length<2)return nC(e,r,i,o);r=rC(r,o.width,t)}}function nC(e,t,n,i){if(t.length<n.length){var r=n.slice(t.length).trim();e.unshift(r)}return{width:i.width,height:i.height,text:t}}var qm="";function iC(e,t){var n=e.split(/(\s|-|\u00AD)/g),i,r=[],o=0;if(n.length>1)for(;i=n.shift();)if(i.length+o<t)r.push(i),o+=i.length;else{(i==="-"||i===qm)&&r.pop();break}var a=r[r.length-1];return a&&a===qm&&(r[r.length-1]="-"),r.join("")}function rC(e,t,n){var i=Math.max(e.length*(n/t),1),r=iC(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function qs(e){this._config=V({},{size:KR,padding:qR,style:{},align:"center-top"},e||{})}qs.prototype.createText=function(e,t){return this.layoutText(e,t).element},qs.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},qs.prototype.layoutText=function(e,t){for(var n=V({},this._config.size,t.box),i=V({},this._config.style,t.style),r=XR(t.align||this._config.align),o=ZR(t.padding!==void 0?t.padding:this._config.padding),a=t.fitBox||!1,s=oC(i),c=e.split(/\u00AD?\r?\n/),u=[],l=n.width-o.left-o.right;c.length;)u.push(tC(c,l,i));r.vertical==="middle"&&(o.top=o.bottom=0);var p=Tn(u,function(y,g,v){return y+(s||g.height)},0)+o.top+o.bottom,f=Tn(u,function(y,g,v){return g.width>y?g.width:y},0),d=o.top;r.vertical==="middle"&&(d+=(n.height-p)/2),d-=(s||u[0].height)/4;var m=Ae("text");ve(m,i),F(u,function(y){var g;switch(d+=s||y.height,r.horizontal){case"left":g=o.left;break;case"right":g=(a?f:l)-o.right-y.width;break;default:g=Math.max(((a?f:l)-y.width)/2+o.left,0)}var v=Ae("tspan");ve(v,{x:g,y:d}),v.textContent=y.text,$e(m,v)});var h={width:f,height:p};return{dimensions:h,element:m}};function oC(e){if("fontSize"in e&&"lineHeight"in e)return e.lineHeight*parseInt(e.fontSize,10)}var aC=12,sC=1.2,cC=40;function Km(e){var t=V({fontFamily:"Arial, sans-serif",fontSize:aC,fontWeight:"normal",lineHeight:sC},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=V({},t,{fontSize:n},e&&e.externalStyle||{}),r=new qs({style:t});this.getExternalLabelBounds=function(a,s){var c={width:Math.max(a.width,$r.width),height:30},u=o(s,c,{style:i});return{x:Math.round(a.x+a.width/2-u.width/2),y:a.y,width:Math.ceil(u.width),height:Math.ceil(u.height)}},this.getTextAnnotationBounds=function(a,s){var c=o(s,a,{style:t,align:"left-top",padding:_o});return{x:a.x,y:a.y,width:a.width,height:Math.max(cC,Math.round(c.height))}},this.getDimensions=function(a,s){return r.getDimensions(a,s||{})};function o(a,s,c){return r.getDimensions(a,V({box:s},c))}this.createText=function(a,s){return r.createText(a,s||{})},this.getDefaultStyle=function(){return t},this.getExternalStyle=function(){return i}}Km.$inject=["config.textRenderer"];function uC(){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(t){return this.pathMap[t].d},this.getScaledPath=function(t,n){var i=this.pathMap[t],r,o;n.abspos?(r=n.abspos.x,o=n.abspos.y):(r=n.containerWidth*n.position.mx,o=n.containerHeight*n.position.my);var a={};if(n.position){for(var s=n.containerHeight/i.height*n.yScaleFactor,c=n.containerWidth/i.width*n.xScaleFactor,u=0;u<i.heightElements.length;u++)a["y"+u]=i.heightElements[u]*s;for(var l=0;l<i.widthElements.length;l++)a["x"+l]=i.widthElements[l]*c}var p=dC(i.d,{mx:r,my:o,e:a});return p}}var lC=/\{([^{}]+)\}/g,pC=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;function fC(e,t,n){var i=n;return t.replace(pC,function(r,o,a,s,c){o=o||s,i&&(o in i&&(i=i[o]),typeof i=="function"&&c&&(i=i()))}),i=(i==null||i==n?e:i)+"",i}function dC(e,t){return String(e).replace(lC,function(n,i){return fC(n,i,t)})}const hC={__init__:["bpmnRenderer"],bpmnRenderer:["type",Fr],textRenderer:["type",Km],pathMap:["type",uC]};function mC(e,t){return t=t||{},e.replace(/{([^}]+)}/g,function(n,i){return t[i]||"{"+i+"}"})}const ma={translate:["value",mC]};function Ks(e,t,n){return V({id:e.id,type:e.$type,businessObject:e,di:t},n)}function gC(e,t,n){var i=e.waypoint;return!i||i.length<2?[Le(t),Le(n)]:i.map(function(r){return{x:r.x,y:r.y}})}function Xm(e,t,n){return new Error(`element ${mn(t)} referenced by ${mn(e)}#${n} not yet drawn`)}function Ni(e,t,n,i,r){this._eventBus=e,this._canvas=t,this._elementFactory=n,this._elementRegistry=i,this._textRenderer=r}Ni.$inject=["eventBus","canvas","elementFactory","elementRegistry","textRenderer"],Ni.prototype.add=function(e,t,n){var i,r,o;if(S(t,"bpmndi:BPMNPlane")){var a=S(e,"bpmn:SubProcess")?{id:e.id+"_plane"}:{};i=this._elementFactory.createRoot(Ks(e,t,a)),this._canvas.addRootElement(i)}else if(S(t,"bpmndi:BPMNShape")){var s=!Xe(e,t),c=vC(e);r=n&&(n.hidden||n.collapsed);var u=t.bounds;i=this._elementFactory.createShape(Ks(e,t,{collapsed:s,hidden:r,x:Math.round(u.x),y:Math.round(u.y),width:Math.round(u.width),height:Math.round(u.height),isFrame:c})),S(e,"bpmn:BoundaryEvent")&&this._attachBoundary(e,i),S(e,"bpmn:Lane")&&(o=0),S(e,"bpmn:DataStoreReference")&&(yC(n,Le(u))||(n=this._canvas.findRoot(n))),this._canvas.addShape(i,n,o)}else if(S(t,"bpmndi:BPMNEdge")){var l=this._getSource(e),p=this._getTarget(e);r=n&&(n.hidden||n.collapsed),i=this._elementFactory.createConnection(Ks(e,t,{hidden:r,source:l,target:p,waypoints:gC(t,l,p)})),S(e,"bpmn:DataAssociation")&&(n=this._canvas.findRoot(n)),this._canvas.addConnection(i,n,o)}else throw new Error(`unknown di ${mn(t)} for element ${mn(e)}`);return ar(e)&&Yn(i)&&this.addLabel(e,t,i),this._eventBus.fire("bpmnElement.added",{element:i}),i},Ni.prototype._attachBoundary=function(e,t){var n=e.attachedToRef;if(!n)throw new Error(`missing ${mn(e)}#attachedToRef`);var i=this._elementRegistry.get(n.id),r=i&&i.attachers;if(!i)throw Xm(e,n,"attachedToRef");t.host=i,r||(i.attachers=r=[]),r.indexOf(t)===-1&&r.push(t)},Ni.prototype.addLabel=function(e,t,n){var i,r,o;return i=DR(t,n),r=Yn(n),r&&(i=this._textRenderer.getExternalLabelBounds(i,r)),o=this._elementFactory.createLabel(Ks(e,t,{id:e.id+"_label",labelTarget:n,type:"label",hidden:n.hidden||!Yn(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)},Ni.prototype._getConnectedElement=function(e,t){var n,i,r=e.$type;if(i=e[t+"Ref"],t==="source"&&r==="bpmn:DataInputAssociation"&&(i=i&&i[0]),(t==="source"&&r==="bpmn:DataOutputAssociation"||t==="target"&&r==="bpmn:DataInputAssociation")&&(i=e.$parent),n=i&&this._getElement(i),n)return n;throw i?Xm(e,i,t+"Ref"):new Error(`${mn(e)}#${t} Ref not specified`)},Ni.prototype._getSource=function(e){return this._getConnectedElement(e,"source")},Ni.prototype._getTarget=function(e){return this._getConnectedElement(e,"target")},Ni.prototype._getElement=function(e){return this._elementRegistry.get(e.id)};function yC(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 vC(e){return S(e,"bpmn:Group")}const Zm={__depends__:[hC,{__depends__:[ma],bpmnImporter:["type",Ni]}]};function ga(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function li(e,t){return{x:e.x-t.x,y:e.y-t.y}}function Gl(e){return Math.log(e)/Math.log(10)}var bC=1e3;function J(e){this._eventBus=e}J.$inject=["eventBus"];function xC(e,t){return function(n){return e.call(t||null,n.context,n.command,n)}}J.prototype.on=function(e,t,n,i,r,o){if((Zt(t)||Be(t))&&(o=r,r=i,i=n,n=t,t=null),Zt(n)&&(o=r,r=i,i=n,n=bC),Xt(r)&&(o=r,r=!1),!Zt(i))throw new Error("handlerFn must be a function");De(e)||(e=[e]);var a=this._eventBus;F(e,function(s){var c=["commandStack",s,t].filter(function(u){return u}).join(".");a.on(c,n,r?xC(i,o):i,o)})},J.prototype.canExecute=$i("canExecute"),J.prototype.preExecute=$i("preExecute"),J.prototype.preExecuted=$i("preExecuted"),J.prototype.execute=$i("execute"),J.prototype.executed=$i("executed"),J.prototype.postExecute=$i("postExecute"),J.prototype.postExecuted=$i("postExecuted"),J.prototype.revert=$i("revert"),J.prototype.reverted=$i("reverted");function $i(e){return function(n,i,r,o,a){(Zt(n)||Be(n))&&(a=o,o=r,r=i,i=n,n=null),this.on(n,e,i,r,o,a)}}var Vl=["top","bottom","left","right"],Xs=10;function Wl(e,t){J.call(this,e),this.postExecuted(["connection.create","connection.layout","connection.updateWaypoints"],function(r){var o=r.context,a=o.connection,s=a.source,c=a.target,u=o.hints||{};u.createElementsBehavior!==!1&&(n(s),n(c))}),this.postExecuted(["label.create"],function(r){var o=r.context,a=o.shape,s=o.hints||{};s.createElementsBehavior!==!1&&n(a.labelTarget)}),this.postExecuted(["elements.create"],function(r){var o=r.context,a=o.elements,s=o.hints||{};s.createElementsBehavior!==!1&&a.forEach(function(c){n(c)})});function n(r){if(Ws(r)&&!pt(r)){var o=EC(r);o&&i(r,o)}}function i(r,o){var a=Le(r),s=r.label,c=Le(s);if(s.parent){var u=ke(r),l;switch(o){case"top":l={x:a.x,y:u.top-Xs-s.height/2};break;case"left":l={x:u.left-Xs-s.width/2,y:a.y};break;case"bottom":l={x:a.x,y:u.bottom+Xs+s.height/2};break;case"right":l={x:u.right+Xs+s.width/2,y:a.y};break}var p=li(l,c);t.moveShape(s,p)}}}ye(Wl,J),Wl.$inject=["eventBus","modeling"];function _C(e){var t=e.host,n=Le(e),i=an(n,t),r;i.indexOf("-")>=0?r=i.split("-"):r=[i];var o=Vl.filter(function(a){return r.indexOf(a)===-1});return o}function wC(e){var t=Le(e),n=[].concat(e.incoming.map(function(i){return i.waypoints[i.waypoints.length-2]}),e.outgoing.map(function(i){return i.waypoints[1]})).map(function(i){return Qm(t,i)});return n}function EC(e){var t=Le(e.label),n=Le(e),i=Qm(n,t);if(SC(i)){var r=wC(e);if(e.host){var o=_C(e);r=r.concat(o)}var a=Vl.filter(function(s){return r.indexOf(s)===-1});return a.indexOf(i)!==-1?an(e.label,e)!=="intersect"?void 0:i:a[0]}}function Qm(e,t){return an(t,e,5)}function SC(e){return Vl.indexOf(e)!==-1}function Ul(e){J.call(this,e),this.preExecute("shape.append",function(t){var n=t.source,i=t.shape;t.position||(S(i,"bpmn:TextAnnotation")?t.position={x:n.x+n.width/2+75,y:n.y-50-i.height/2}:t.position={x:n.x+n.width+80+i.width/2,y:n.y+n.height/2})},!0)}ye(Ul,J),Ul.$inject=["eventBus"];var RC=1500;function Yl(e,t,n){e.invoke(J,this),this.preExecute("elements.delete",RC,function(r){var o=r.context,a=o.elements,s=i(a);s.length&&(o.elements=a.concat(s))}),t.on("shape.move.start",function(r){var o=r.context.shapes,a=i(o);a.length&&(r.context.shapes=o.concat(a))});function i(r){var o=Ye(r,u=>S(u,"bpmn:Participant")||S(u,"bpmn:SubProcess"));if(!o.length)return[];var a=n.getRootElement(),s=new Set(a.children.filter(u=>S(u,"bpmn:Artifact"))),c=new Set;return F(o,u=>{const l=new Set(io(go(Array.from(s),Bt(u))));c=c.union(l),s=s.difference(l)}),Array.from(c)}}ye(Yl,J),Yl.$inject=["injector","eventBus","canvas"];function ql(e,t){e.invoke(J,this),this.postExecute("shape.move",function(n){var i=n.newParent,r=n.shape,o=Ye(r.incoming.concat(r.outgoing),function(a){return S(a,"bpmn:Association")});F(o,function(a){t.moveConnection(a,{x:0,y:0},i)})},!0)}ye(ql,J),ql.$inject=["injector","modeling"];function Eo(e,t){for(Pn(t)&&(t=[t]);e=e.parent;)if(We(e,t))return e;return null}function Jm(e,t){var n=Eo(e,"bpmn:Process");if(n)return!0;var i=["bpmn:Participant","bpmn:Lane"];if(n=Eo(e,i),n)return Jt(n);if(We(e,i))return Jt(e);var r;for(r=te(e);r&&!S(r,"bpmn:Process");r=r.$parent);if(!t)return!0;var o=t.find(function(a){var s=te(a);return s&&s.get("processRef")===r});return o?Jt(o):!0}var eg=500;function Zs(e,t){t.invoke(J,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",eg,function(i){var r=i.elements;r=r.filter(function(o){var a=o.host;return tg(o,a)}),r.length===1&&r.map(function(o){return r.indexOf(o)}).forEach(function(o){var a=r[o];i.elements[o]=n._replaceShape(r[o],a)})},!0),this.preExecute("elements.move",eg,function(i){var r=i.shapes,o=i.newHost;if(r.length===1){var a=r[0];tg(a,o)&&(i.shapes=[n._replaceShape(a,o)])}},!0)}Zs.$inject=["bpmnReplace","injector"],ye(Zs,J),Zs.prototype._replaceShape=function(e,t){var n=CC(e),i={type:"bpmn:BoundaryEvent",host:t};return n&&(i.eventDefinitionType=n.$type),this._bpmnReplace.replaceElement(e,i,{layoutConnection:!1})};function CC(e){var t=te(e),n=t.eventDefinitions;return n&&n[0]}function tg(e,t){return!Ge(e)&&We(e,["bpmn:IntermediateThrowEvent","bpmn:IntermediateCatchEvent"])&&!!t}function Kl(e,t){J.call(this,e);function n(i){return Ye(i.attachers,function(r){return S(r,"bpmn:BoundaryEvent")})}this.postExecute("connection.create",function(i){var r=i.context.source,o=i.context.target,a=n(o);S(r,"bpmn:EventBasedGateway")&&S(o,"bpmn:ReceiveTask")&&a.length>0&&t.removeElements(a)}),this.postExecute("connection.reconnect",function(i){var r=i.context.oldSource,o=i.context.newSource;S(r,"bpmn:Gateway")&&S(o,"bpmn:EventBasedGateway")&&F(o.outgoing,function(a){var s=a.target,c=n(s);S(s,"bpmn:ReceiveTask")&&c.length>0&&t.removeElements(c)})})}Kl.$inject=["eventBus","modeling"],ye(Kl,J);function ng(e){return e.create("bpmn:Category")}function PC(e){return e.create("bpmn:CategoryValue")}function ig(e,t){var n=t.get("categoryValueRef");return n||(n=t.categoryValueRef=PC(e)),n.$parent||(n.$parent=ng(e)),n}function AC(e,t,n){return Ot(t.get("categoryValue"),e),e.$parent=t,Ot(n.get("rootElements"),t),t.$parent=n,e}function TC(e){var t=e.$parent;return t&&(kt(t.get("categoryValue"),e),e.$parent=null),e}function MC(e){var t=e.$parent;return t&&(kt(t.get("rootElements"),e),e.$parent=null),e}var kC=500;function Xl(e,t,n){n.invoke(J,this);function i(c){return t.filter(function(u){return S(u,"bpmn:Group")&&!u.labelTarget}).map(te).filter(function(u){return u!==c})}function r(c,u){return i(u).some(function(l){return l.get("categoryValueRef")===c})}function o(c,u){return i(u).some(function(l){var p=l.get("categoryValueRef");return p&&p.$parent===c})}function a(c,u){c&&u&&AC(c,u,e.getDefinitions())}function s(c,u,l){u&&!o(u,l)&&MC(u),c&&!r(c,l)&&TC(c)}this.executed(["shape.create","label.create"],function(c){var u=c.labelTarget||c.shape;!S(u,"bpmn:Group")||u.labelTarget||a(c.categoryValue,c.category)},!0),this.reverted(["shape.create","label.create"],function(c){var u=c.labelTarget||c.shape;!S(u,"bpmn:Group")||u.labelTarget||s(c.categoryValue,c.category,te(u))},!0),this.executed(["shape.move","shape.resize"],kC,function(c){a(c.categoryValue,c.category)},!0),this.reverted(["shape.move","shape.resize"],function(c){var u=c.shape;c.categoryValue&&s(c.categoryValue,c.category,te(u))},!0),this.executed("group.updateRefs",function(c){rg(c).forEach(function(u){a(u.categoryValue,u.category)})},!0),this.reverted("group.updateRefs",function(c){rg(c).forEach(function(u){s(u.categoryValue,u.category,te(u.groupShape))})},!0),this.executed("shape.delete",function(c){var u=c.shape;!S(u,"bpmn:Group")||u.labelTarget||s(c.categoryValue,c.category,te(u))},!0),this.reverted("shape.delete",function(c){var u=c.shape;!S(u,"bpmn:Group")||u.labelTarget||a(c.categoryValue,c.category)},!0)}Xl.$inject=["bpmnjs","elementRegistry","injector"],ye(Xl,J);function rg(e){var t;return((t=e.updates)==null?void 0:t.groups)||[]}function Zl(e,t,n){J.call(this,e),this.preExecute("shape.replace",s,!0),this.postExecuted("shape.replace",c,!0),this.preExecute("connection.create",r,!0),this.postExecuted("connection.delete",i,!0),this.postExecuted("connection.reconnect",o,!0),this.postExecuted("element.updateProperties",a,!0);function i(y){const g=y.source,v=y.target;So(g)&&ya(v)&&l(v)}function r(y){const g=y.connection,v=y.source,b=y.target;So(v)&&Qs(b)&&(u(b),f(v,[g]))}function o(y){const g=y.newTarget,v=y.oldSource,b=y.oldTarget;if(b!==g){const x=v;ya(b)&&l(b),So(x)&&Qs(g)&&u(g)}}function a(y){const{element:g}=y;ya(g)?(p(g),d(g)):Qs(g)&&m(g)}function s(y){const{newData:g,oldShape:v}=y;if(So(y.oldShape)&&g.eventDefinitionType!=="bpmn:CompensateEventDefinition"||g.type!=="bpmn:BoundaryEvent"){const b=v.outgoing.find(({target:x})=>ya(x));b&&b.target&&(y._connectionTarget=b.target)}else if(!So(y.oldShape)&&g.eventDefinitionType==="bpmn:CompensateEventDefinition"&&g.type==="bpmn:BoundaryEvent"){const b=v.outgoing.find(({target:x})=>Qs(x));b&&b.target&&(y._connectionTarget=b.target),h(v)}}function c(y){const{_connectionTarget:g,newShape:v}=y;g&&t.connect(v,g)}function u(y){t.updateProperties(y,{isForCompensation:!0})}function l(y){t.updateProperties(y,{isForCompensation:void 0})}function p(y){for(const g of y.incoming)n.canConnect(g.source,y)||t.removeConnection(g);for(const g of y.outgoing)n.canConnect(y,g.target)||t.removeConnection(g)}function f(y,g){y.outgoing.filter(x=>S(x,"bpmn:Association")).filter(x=>ya(x.target)&&!g.includes(x)).forEach(x=>t.removeConnection(x))}function d(y){const g=y.attachers.slice();g.length&&t.removeElements(g)}function m(y){const g=y.incoming.filter(v=>So(v.source));t.removeElements(g)}function h(y){const g=y.outgoing.filter(v=>S(v,"bpmn:SequenceFlow"));t.removeElements(g)}}ye(Zl,J),Zl.$inject=["eventBus","modeling","bpmnRules"];function ya(e){const t=te(e);return t&&t.get("isForCompensation")}function So(e){return e&&S(e,"bpmn:BoundaryEvent")&&xo(e,"bpmn:CompensateEventDefinition")}function Qs(e){return e&&S(e,"bpmn:Activity")&&!gn(e)}function Ql(e){e.invoke(J,this),this.preExecute("shape.create",1500,function(t){var n=t.context,i=n.parent,r=n.shape;S(i,"bpmn:Lane")&&!S(r,"bpmn:Lane")&&(n.parent=Eo(i,"bpmn:Participant"))})}Ql.$inject=["injector"],ye(Ql,J);function Jl(e,t){J.call(this,e),this.preExecute("shape.create",function(n){var a;var i=n.context,r=i.shape;if(S(r,"bpmn:DataObjectReference")&&r.type!=="label"){var o=t.create("bpmn:DataObject");o.isCollection=((a=r.businessObject.dataObjectRef)==null?void 0:a.isCollection)||!1,r.businessObject.dataObjectRef=o}})}Jl.$inject=["eventBus","bpmnFactory"],ye(Jl,J);var ep=20,tp=20,og=30,Js=2e3;function np(e,t,n){J.call(this,t),t.on(["create.start","shape.move.start"],Js,function(r){var o=r.context,a=o.shape,s=e.getRootElement();if(!(!S(a,"bpmn:Participant")||!S(s,"bpmn:Process")||!s.children.length)){var c=s.children.filter(function(p){return!S(p,"bpmn:Group")&&!Ge(p)&&!pt(p)});if(c.length){var u=Bt(c),l=OC(a,u);V(a,l),o.createConstraints=DC(a,u)}}}),t.on("create.start",Js,function(r){var o=r.context,a=o.shape,s=e.getRootElement(),c=e.getGraphics(s);function u(l){l.element=s,l.gfx=c}S(a,"bpmn:Participant")&&S(s,"bpmn:Process")&&(t.on("element.hover",Js,u),t.once("create.cleanup",function(){t.off("element.hover",u)}))});function i(){var r=e.getRootElement();return S(r,"bpmn:Collaboration")?r:n.makeCollaboration()}this.preExecute("elements.create",Js,function(r){var o=r.elements,a=r.parent,s=LC(o),c;s&&S(a,"bpmn:Process")&&(r.parent=i(),c=r.hints=r.hints||{},c.participant=s,c.process=a,c.processRef=te(s).get("processRef"))},!0),this.preExecute("shape.create",function(r){var o=r.parent,a=r.shape;S(a,"bpmn:Participant")&&S(o,"bpmn:Process")&&(r.parent=i(),r.process=o,r.processRef=te(a).get("processRef"))},!0),this.execute("shape.create",function(r){var o=r.hints||{},a=r.process||o.process,s=r.shape,c=o.participant;a&&(!c||s===c)&&te(s).set("processRef",te(a))},!0),this.revert("shape.create",function(r){var o=r.hints||{},a=r.process||o.process,s=r.processRef||o.processRef,c=r.shape,u=o.participant;a&&(!u||c===u)&&te(c).set("processRef",s)},!0),this.postExecute("shape.create",function(r){var o=r.hints||{},a=r.process||r.hints.process,s=r.shape,c=o.participant;if(a){var u=a.children.slice();c?s===c&&n.moveElements(u,{x:0,y:0},c):n.moveElements(u,{x:0,y:0},s)}},!0)}np.$inject=["canvas","eventBus","modeling"],ye(np,J);function OC(e,t){t={width:t.width+ep*2+og,height:t.height+tp*2};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}}function DC(e,t){return t=ke(t),{bottom:t.top+e.height/2-tp,left:t.right-e.width/2+ep,top:t.bottom-e.height/2+tp,right:t.left+e.width/2-ep-og}}function LC(e){return ht(e,function(t){return S(t,"bpmn:Participant")})}var ag="__targetRef_placeholder";function ip(e,t){J.call(this,e),this.executed(["connection.create","connection.delete","connection.move","connection.reconnect"],sg(o)),this.reverted(["connection.create","connection.delete","connection.move","connection.reconnect"],sg(o));function n(a,s,c){var u=a.get("dataInputAssociations");return ht(u,function(l){return l!==c&&l.targetRef===s})}function i(a,s){var c=a.get("properties"),u=ht(c,function(l){return l.name===ag});return!u&&s&&(u=t.create("bpmn:Property",{name:ag}),Ot(c,u)),u}function r(a,s){var c=i(a);c&&(n(a,c,s)||kt(a.get("properties"),c))}function o(a){var s=a.context,c=s.connection,u=c.businessObject,l=c.target,p=l&&l.businessObject,f=s.newTarget,d=f&&f.businessObject,m=s.oldTarget||s.target,h=m&&m.businessObject,y=c.businessObject,g;h&&h!==p&&r(h,u),d&&d!==p&&r(d,u),p?(g=i(p,!0),y.targetRef=g):y.targetRef=null}}ip.$inject=["eventBus","bpmnFactory"],ye(ip,J);function sg(e){return function(t){var n=t.context,i=n.connection;if(S(i,"bpmn:DataInputAssociation"))return e(t)}}function ec(e){this._bpmnUpdater=e}ec.$inject=["bpmnUpdater"],ec.prototype.execute=function(e){var t=e.dataStoreBo,n=e.dataStoreDi,i=e.newSemanticParent,r=e.newDiParent;return e.oldSemanticParent=t.$parent,e.oldDiParent=n.$parent,this._bpmnUpdater.updateSemanticParent(t,i),this._bpmnUpdater.updateDiParent(n,r),[]},ec.prototype.revert=function(e){var t=e.dataStoreBo,n=e.dataStoreDi,i=e.oldSemanticParent,r=e.oldDiParent;return this._bpmnUpdater.updateSemanticParent(t,i),this._bpmnUpdater.updateDiParent(n,r),[]};function rp(e,t,n,i){J.call(this,i),t.registerHandler("dataStore.updateContainment",ec);function r(){return n.filter(function(s){return S(s,"bpmn:Participant")&&te(s).processRef})[0]}function o(s){return s.children.filter(function(c){return S(c,"bpmn:DataStoreReference")&&!c.labelTarget})}function a(s,c){var u=s.businessObject||s;if(c=c||r(),c){var l=c.businessObject||c;t.execute("dataStore.updateContainment",{dataStoreBo:u,dataStoreDi:Je(s),newSemanticParent:l.processRef||l,newDiParent:Je(c)})}}this.preExecute("shape.create",function(s){var c=s.context,u=c.shape;S(u,"bpmn:DataStoreReference")&&u.type!=="label"&&(c.hints||(c.hints={}),c.hints.autoResize=!1)}),this.preExecute("elements.move",function(s){var c=s.context,u=c.shapes,l=u.filter(function(p){return S(p,"bpmn:DataStoreReference")});l.length&&(c.hints||(c.hints={}),c.hints.autoResize=u.filter(function(p){return!S(p,"bpmn:DataStoreReference")}))}),this.postExecute("shape.create",function(s){var c=s.context,u=c.shape,l=u.parent;S(u,"bpmn:DataStoreReference")&&u.type!=="label"&&S(l,"bpmn:Collaboration")&&a(u)}),this.postExecute("shape.move",function(s){var c=s.context,u=c.shape,l=c.oldParent,p=u.parent;if(!S(l,"bpmn:Collaboration")&&S(u,"bpmn:DataStoreReference")&&u.type!=="label"&&S(p,"bpmn:Collaboration")){var f=S(l,"bpmn:Participant")?l:BC(l,"bpmn:Participant");a(u,f)}}),this.postExecute("shape.delete",function(s){var c=s.context,u=c.shape,l=e.getRootElement();We(u,["bpmn:Participant","bpmn:SubProcess"])&&S(l,"bpmn:Collaboration")&&o(l).filter(function(p){return IC(p,u)}).forEach(function(p){a(p)})}),this.postExecute("canvas.updateRoot",function(s){var c=s.context,u=c.oldRoot,l=c.newRoot,p=o(u);p.forEach(function(f){S(l,"bpmn:Process")&&a(f,l)})})}rp.$inject=["canvas","commandStack","elementRegistry","eventBus"],ye(rp,J);function IC(e,t){for(var n=e.businessObject||e,i=t.businessObject||t;n.$parent;){if(n.$parent===i.processRef||i)return!0;n=n.$parent}return!1}function BC(e,t){for(;e.parent;){if(S(e.parent,t))return e.parent;e=e.parent}}var tc=Math.max,nc=Math.min,NC=20;function cg(e,t){return{top:e.top-t.top,right:e.right-t.right,bottom:e.bottom-t.bottom,left:e.left-t.left}}function $C(e,t,n){var i=n.x,r=n.y,o={x:e.x,y:e.y,width:e.width,height:e.height};return t.indexOf("n")!==-1?(o.y=e.y+r,o.height=e.height-r):t.indexOf("s")!==-1&&(o.height=e.height+r),t.indexOf("e")!==-1?o.width=e.width+i:t.indexOf("w")!==-1&&(o.x=e.x+i,o.width=e.width-i),o}function FC(e,t){return{x:e.x+(t.left||0),y:e.y+(t.top||0),width:e.width-(t.left||0)+(t.right||0),height:e.height-(t.top||0)+(t.bottom||0)}}function ic(e,t,n){var i=t[e],r=n.min&&n.min[e],o=n.max&&n.max[e];return Be(r)&&(i=(/top|left/.test(e)?nc:tc)(i,r)),Be(o)&&(i=(/top|left/.test(e)?tc:nc)(i,o)),i}function jC(e,t){if(!t)return e;var n=ke(e);return Fs({top:ic("top",n,t),right:ic("right",n,t),bottom:ic("bottom",n,t),left:ic("left",n,t)})}function HC(e,t,n,i){var r=ke(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?ke(i):o,s={top:nc(o.top,a.top),left:nc(o.left,a.left),bottom:tc(o.bottom,a.bottom),right:tc(o.right,a.right)};return Fs(s)}function va(e,t){return typeof e<"u"?e:NC}function zC(e,t){var n,i,r,o;return typeof t=="object"?(n=va(t.left),i=va(t.right),r=va(t.top),o=va(t.bottom)):n=i=r=o=va(t),{x:e.x-n,y:e.y-r,width:e.width+n+i,height:e.height+r+o}}function GC(e){return!(e.waypoints||e.type==="label")}function ug(e,t){var n;if(e.length===void 0?n=Ye(e.children,GC):n=e,n.length)return zC(Bt(n),t)}var sr=Math.abs;function VC(e,t){return cg(ke(t),ke(e))}var WC=["bpmn:Participant","bpmn:Process","bpmn:SubProcess"],Qn=30;function rc(e,t){return t=t||[],e.children.filter(function(n){S(n,"bpmn:Lane")&&(rc(n,t),t.push(n))}),t}function cr(e){return e.children.filter(function(t){return S(t,"bpmn:Lane")})}function Jn(e){return Eo(e,WC)||e}function UC(e,t){var n=Jn(e),i=S(n,"bpmn:Process")?[]:[n],r=rc(n,i),o=ke(e),a=ke(t),s=VC(e,t),c=[],u=Jt(e);return r.forEach(function(l){if(l!==e){var p=u?0:s.top,f=u?s.right:0,d=u?0:s.bottom,m=u?s.left:0,h=ke(l);s.top&&(sr(h.bottom-o.top)<10&&(d=a.top-h.bottom),sr(h.top-o.top)<5&&(p=a.top-h.top)),s.left&&(sr(h.right-o.left)<10&&(f=a.left-h.right),sr(h.left-o.left)<5&&(m=a.left-h.left)),s.bottom&&(sr(h.top-o.bottom)<10&&(p=a.bottom-h.top),sr(h.bottom-o.bottom)<5&&(d=a.bottom-h.bottom)),s.right&&(sr(h.left-o.right)<10&&(m=a.right-h.left),sr(h.right-o.right)<5&&(f=a.right-h.right)),(p||f||d||m)&&c.push({shape:l,newBounds:FC(l,{top:p,right:f,bottom:d,left:m})})}}),c}var YC=500;function op(e,t){J.call(this,e);function n(i,r){var o=Jt(i),a=cr(r),s=[],c=[],u=[],l=[];if(Br(a,function(y){return o?y.y>i.y?c.push(y):s.push(y):y.x>i.x?l.push(y):u.push(y),y.children}),!!a.length){var p;o?c.length&&s.length?p=i.height/2:p=i.height:l.length&&u.length?p=i.width/2:p=i.width;var f,d,m,h;s.length&&(f=t.calculateAdjustments(s,"y",p,i.y-10),t.makeSpace(f.movingShapes,f.resizingShapes,{x:0,y:p},"s")),c.length&&(d=t.calculateAdjustments(c,"y",-p,i.y+i.height+10),t.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:-p},"n")),u.length&&(m=t.calculateAdjustments(u,"x",p,i.x-10),t.makeSpace(m.movingShapes,m.resizingShapes,{x:p,y:0},"e")),l.length&&(h=t.calculateAdjustments(l,"x",-p,i.x+i.width+10),t.makeSpace(h.movingShapes,h.resizingShapes,{x:-p,y:0},"w"))}}this.postExecuted("shape.delete",YC,function(i){var r=i.context,o=r.hints,a=r.shape,s=r.oldParent;S(a,"bpmn:Lane")&&(o&&o.nested||n(a,s))})}op.$inject=["eventBus","spaceTool"],ye(op,J);var lg=500;function oc(e,t){t.invoke(J,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",lg,function(i){var r=i.elements;r.filter(function(o){var a=o.host;return pg(o,a)}).map(function(o){return r.indexOf(o)}).forEach(function(o){i.elements[o]=n._replaceShape(r[o])})},!0),this.preExecute("elements.move",lg,function(i){var r=i.shapes,o=i.newHost;r.forEach(function(a,s){var c=a.host;pg(a,KC(r,c)?c:o)&&(r[s]=n._replaceShape(a))})},!0)}oc.$inject=["bpmnReplace","injector"],ye(oc,J),oc.prototype._replaceShape=function(e){var t=qC(e),n;return t?n={type:"bpmn:IntermediateCatchEvent",eventDefinitionType:t.$type}:n={type:"bpmn:IntermediateThrowEvent"},this._bpmnReplace.replaceElement(e,n,{layoutConnection:!1})};function qC(e){var t=te(e),n=t.eventDefinitions;return n&&n[0]}function pg(e,t){return!Ge(e)&&S(e,"bpmn:BoundaryEvent")&&!t}function KC(e,t){return e.indexOf(t)!==-1}var ac=Math.round,XC=Math.max;function ZC(e,t){var n=e.x,i=e.y;return[["M",n,i],["m",0,-t],["a",t,t,0,1,1,0,2*t],["a",t,t,0,1,1,0,-2*t],["z"]]}function QC(e){var t=[];return e.forEach(function(n,i){t.push([i===0?"M":"L",n.x,n.y])}),t}var fg=10;function JC(e,t){var n,i;for(n=0;i=e[n];n++)if(ca(i,t)<=fg)return{point:e[n],bendpoint:!0,index:n};return null}function eP(e,t){var n=ym(ZC(t,fg),QC(e)),i=n[0],r=n[n.length-1],o;return i?i!==r?i.segment2!==r.segment2?(o=XC(i.segment2,r.segment2)-1,{point:e[o],bendpoint:!0,index:o}):{point:{x:ac(i.x+r.x)/2,y:ac(i.y+r.y)/2},index:i.segment2}:{point:{x:ac(i.x),y:ac(i.y)},index:i.segment2}:null}function ap(e,t){return JC(e,t)||eP(e,t)}function sp(e,t,n){J.call(this,e);function i(r,o,a){var s=o.waypoints,c,u,l,p,f,d,m,h=r.outgoing.slice(),y=r.incoming.slice(),g;Be(a.width)?g=Le(a):g=a;var v=ap(s,g);if(v){if(c=s.slice(0,v.index),u=s.slice(v.index+(v.bendpoint?1:0)),!c.length||!u.length)return;l=v.bendpoint?s[v.index]:g,(c.length===1||!dg(r,c[c.length-1]))&&c.push(hg(l)),(u.length===1||!dg(r,u[0]))&&u.unshift(hg(l))}p=o.source,f=o.target,t.canConnect(p,r,o)&&(n.reconnectEnd(o,r,c||g),d=o),t.canConnect(r,f,o)&&(d?m=n.connect(r,f,{type:o.type,waypoints:u}):(n.reconnectStart(o,r,u||g),m=o));var b=[].concat(d&&Ye(y,function(x){return x.source===d.source})||[],m&&Ye(h,function(x){return x.target===m.target})||[]);b.length&&n.removeElements(b)}this.preExecute("elements.move",function(r){var o=r.newParent,a=r.shapes,s=r.delta,c=a[0];if(!(!c||!o)){o&&o.waypoints&&(r.newParent=o=o.parent);var u=Le(c),l={x:u.x+s.x,y:u.y+s.y},p=ht(o.children,function(f){var d=t.canInsert(a,f);return d&&ap(f.waypoints,l)});p&&(r.targetFlow=p,r.position=l)}},!0),this.postExecuted("elements.move",function(r){var o=r.shapes,a=r.targetFlow,s=r.position;a&&i(o[0],a,s)},!0),this.preExecute("shape.create",function(r){var o=r.parent,a=r.shape;t.canInsert(a,o)&&(r.targetFlow=o,r.parent=o.parent)},!0),this.postExecuted("shape.create",function(r){var o=r.shape,a=r.targetFlow,s=r.position;a&&i(o,a,s)},!0)}ye(sp,J),sp.$inject=["eventBus","bpmnRules","modeling"];function dg(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 hg(e){return V({},e)}function cp(e,t){J.call(this,e),this.preExecuted("connection.create",function(n){var i=n.context,r=i.connection,o=i.source,a=i.target,s=i.hints;if(!(s&&s.createElementsBehavior===!1)&&Ro(r)){var c=[];S(o,"bpmn:EventBasedGateway")?c=a.incoming.filter(u=>u!==r&&Ro(u)):c=a.incoming.filter(u=>u!==r&&Ro(u)&&S(u.source,"bpmn:EventBasedGateway")),c.forEach(function(u){t.removeConnection(u)})}}),this.preExecuted("shape.replace",function(n){var i=n.context,r=i.newShape;if(S(r,"bpmn:EventBasedGateway")){var o=r.outgoing.filter(Ro).reduce(function(a,s){return a.includes(s.target)?a:a.concat(s.target)},[]);o.forEach(function(a){a.incoming.filter(Ro).forEach(function(s){const c=a.incoming.filter(Ro).filter(function(u){return u.source===r});(s.source!==r||c.length>1)&&t.removeConnection(s)})})}})}cp.$inject=["eventBus","modeling"],ye(cp,J);function Ro(e){return S(e,"bpmn:SequenceFlow")}var sc=1500,mg=2e3;function gg(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"],sc,function(i){var r=i.context,o=r.shape||i.shape,a=i.hover;S(a,"bpmn:Lane")&&!We(o,["bpmn:Lane","bpmn:Participant"])&&(i.hover=Jn(a),i.hoverGfx=e.getGraphics(i.hover));var s=n.getRootElement();a&&a!==s&&(o.labelTarget||We(o,["bpmn:Group","bpmn:TextAnnotation"]))&&(i.hover=s,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["connect.hover","connect.out","connect.end","connect.cleanup","global-connect.hover","global-connect.out","global-connect.end","global-connect.cleanup"],sc,function(i){var r=i.hover;S(r,"bpmn:Lane")&&(i.hover=Jn(r)||r,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["bendpoint.move.hover"],sc,function(i){var r=i.context,o=i.hover,a=r.type;S(o,"bpmn:Lane")&&/reconnect/.test(a)&&(i.hover=Jn(o)||o,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["connect.start"],sc,function(i){var r=i.context,o=r.start;S(o,"bpmn:Lane")&&(r.start=Jn(o)||o)}),t.on("shape.move.start",mg,function(i){var r=i.shape;S(r,"bpmn:Lane")&&(i.shape=Jn(r)||r)}),t.on("spaceTool.move",mg,function(i){var r=i.hover;r&&S(r,"bpmn:Lane")&&(i.hover=Jn(r))})}gg.$inject=["elementRegistry","eventBus","canvas"];var yg=770;function up(e,t,n,i){n.invoke(J,this);function r(s,c){var u=te(s),l=c.categoryValue||u.categoryValueRef;l||(l=ig(e,u));var p=c.category||l.$parent||ng(e);u.categoryValueRef=l,l.$parent=p,c.categoryValue=l,c.category=p}function o(s,c){var u=te(s),l=c.categoryValue||u.categoryValueRef,p=c.category||l&&l.$parent;l&&(c.categoryValue=l,c.category=p,u.categoryValueRef=null)}this.execute("label.create",function(s){var c=s.context,u=c.labelTarget;S(u,"bpmn:Group")&&r(u,c)}),this.revert("label.create",function(s){var c=s.context,u=c.labelTarget;S(u,"bpmn:Group")&&o(u,c)}),this.execute("shape.delete",function(s){var c=s.context,u=c.shape,l=te(u);if(!(!S(u,"bpmn:Group")||u.labelTarget)){var p=c.categoryValue=l.categoryValueRef;p&&(c.category=p.$parent,l.categoryValueRef=null)}}),this.reverted("shape.delete",function(s){var c=s.context,u=c.shape;if(!(!S(u,"bpmn:Group")||u.labelTarget)){var l=c.category,p=c.categoryValue,f=te(u);p&&(f.categoryValueRef=p,p.$parent=l)}}),this.execute("shape.create",function(s){var c=s.context,u=c.shape,l=c.hints||{};!S(u,"bpmn:Group")||u.labelTarget||l.createElementsBehavior===!1&&!te(u).categoryValueRef&&!c.categoryValue||r(u,c)}),this.reverted("shape.create",function(s){var c=s.context,u=c.shape,l=c.hints||{};!S(u,"bpmn:Group")||u.labelTarget||l.createElementsBehavior===!1&&!te(u).categoryValueRef&&!c.categoryValue||o(u,c)}),this.executed(["shape.move","shape.resize"],function(s){var c=s.context,u=c.shape;!S(u,"bpmn:Group")||u.labelTarget||te(u).categoryValueRef||r(u,c)}),this.reverted(["shape.move","shape.resize"],function(s){var c=s.context,u=c.shape;!S(u,"bpmn:Group")||u.labelTarget||!c.categoryValue||o(u,c)});function a(s,c){var u=e.create(s.$type);return i.copyElement(s,u,null,c)}t.on("copyPaste.copyElement",yg,function(s){var c=s.descriptor,u=s.element;if(!(!S(u,"bpmn:Group")||u.labelTarget)){var l=te(u);if(l.categoryValueRef){var p=l.categoryValueRef;c.categoryValue=a(p,!0),p.$parent&&(c.category=a(p.$parent,!0))}}}),t.on("copyPaste.pasteElement",yg,function(s){var c=s.descriptor,u=c.businessObject,l=c.categoryValue,p=c.category;l&&(l=u.categoryValueRef=a(l)),p&&(l.$parent=a(p)),delete c.category,delete c.categoryValue})}up.$inject=["bpmnFactory","eventBus","injector","moddleCopy"],ye(up,J);function lp(e,t,n,i){var r,o,a,s,c;return r=(i.y-n.y)*(t.x-e.x)-(i.x-n.x)*(t.y-e.y),r==0?null:(o=e.y-n.y,a=e.x-n.x,c=(i.x-n.x)*o-(i.y-n.y)*a,s=c/r,{x:Math.round(e.x+s*(t.x-e.x)),y:Math.round(e.y+s*(t.y-e.y))})}function vg(e){function t(i,r,o){var a={x:o.x,y:o.y-50},s={x:o.x-50,y:o.y},c=lp(i,r,o,a),u=lp(i,r,o,s),l;c&&u?bg(c,o)>bg(u,o)?l=u:l=c:l=c||u,i.original=l}function n(i){var r=i.waypoints;t(r[0],r[1],Le(i.source)),t(r[r.length-1],r[r.length-2],Le(i.target))}e.on("bpmnElement.added",function(i){var r=i.element;r.waypoints&&n(r)})}vg.$inject=["eventBus"];function bg(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function pp(e){J.call(this,e);var t=["bpmn:Participant","bpmn:Lane"];this.executed(["shape.move","shape.create","shape.resize"],function(n){var i=n.context.shape,r=te(i),o=Je(i);if(We(r,t)){var a=o.get("isHorizontal");a===void 0&&(a=!0),o.set("isHorizontal",a)}})}pp.$inject=["eventBus"],ye(pp,J);function xg(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function _g(e){return Math.atan((e[1].y-e[0].y)/(e[1].x-e[0].x))}function tP(e,t){return t?{x:Math.cos(t)*e.x-Math.sin(t)*e.y,y:Math.sin(t)*e.x+Math.cos(t)*e.y}:e}function nP(e,t,n){var i=[{n:e[0]-n[0],lambda:t[0]},{n:e[1]-n[1],lambda:t[1]}],r=i[0].n*t[0]+i[1].n*t[1],o=i[0].lambda*t[0]+i[1].lambda*t[1];return-r/o}function fp(e,t){var n=t[0],i=t[1],r={x:i.x-n.x,y:i.y-n.y},o=nP([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 wg(e,t){var n=fp(e,t),i={x:n.x-e.x,y:n.y-e.y};return xg(i)}function ba(e,t){return xg({x:e.x-t.x,y:e.y-t.y})}var Eg=Math.sqrt,Sg=Math.min,iP=Math.max,Rg=Math.abs;function Cg(e){return Math.pow(e,2)}function xa(e,t){return Eg(Cg(e.x-t.x)+Cg(e.y-t.y))}function rP(e,t){var n=0,i,r,o,a,s,c,u,l,p,f,d;for(n=0;n<t.length-1;n++){if(i=t[n],r=t[n+1],Ag(i,r)?u=[i]:(o=xa(e,i),a=xa(e,r),c=Sg(o,a),u=oP(i,r,e,c)),u.length<1)throw new Error("expected between [1, 2] circle -> line intersections");u.length===1&&(l={type:"bendpoint",position:u[0],segmentIndex:n,bendpointIndex:Ag(i,u[0])?n:n+1}),u.length===2&&(s=sP(u[0],u[1]),l={type:"segment",position:s,segmentIndex:n,relativeLocation:xa(i,s)/xa(i,r)}),p=xa(l.position,e),(!d||f>p)&&(d=l,f=p)}return d}function oP(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,u=r*a+o*s,l=a*a+s*s-i*i,p=u/c,f=l/c,d=p*p-f;if(d<0&&d>-1e-6&&(d=0),d<0)return[];var m=Eg(d),h=-p+m,y=-p-m,g={x:e.x-r*h,y:e.y-o*h};if(d===0)return[g];var v={x:e.x-r*y,y:e.y-o*y};return[g,v].filter(function(b){return aP(b,e,t)})}function aP(e,t,n){return Pg(e.x,t.x,n.x)&&Pg(e.y,t.y,n.y)}function Pg(e,t,n){return e>=Sg(t,n)-cc&&e<=iP(t,n)+cc}function sP(e,t){return{x:(e.x+t.x)/2,y:(e.y+t.y)/2}}var cc=.1;function Ag(e,t){return Rg(e.x-t.x)<=cc&&Rg(e.y-t.y)<=cc}function cP(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=i.bendpointMove.insert,u=i.bendpointMove.bendpointIndex,l;if(o===0)return r;if(r>=u&&(l=c?r+1:r-1),r<u&&(l=r,c&&n.type!=="bendpoint"&&u-1===r)){var p=Mg(t,u);p<n.relativeLocation&&l++}return l}return o===0?r:i.connectionStart&&r===0?0:i.connectionEnd&&r===e.length-2?t.length-2:Math.floor((t.length-2)/2)}function Tg(e,t,n,i){var r=0,o=0,a={point:e,delta:{x:0,y:0}},s=rP(e,n),c=s.segmentIndex,u=cP(n,t,s,i);if(u<0||u>t.length-2||u===null)return a;var l=kg(n,c),p=kg(t,u),f=s.position,d=lP(l,f),m=uP(l,p);if(s.type==="bendpoint"){var h=t.length-n.length,y=s.bendpointIndex,g=n[y];if(t.indexOf(g)!==-1)return a;if(h===0){var v=t[y];return r=v.x-s.position.x,o=v.y-s.position.y,{delta:{x:r,y:o},point:{x:e.x+r,y:e.y+o}}}h<0&&y!==0&&y<n.length-1&&(d=Mg(n,y))}var b={x:(p[1].x-p[0].x)*d+p[0].x,y:(p[1].y-p[0].y)*d+p[0].y},x=tP({x:e.x-f.x,y:e.y-f.y},m);return r=b.x+x.x-e.x,o=b.y+x.y-e.y,{point:Ii(b),delta:Ii({x:r,y:o})}}function Mg(e,t){var n=ba(e[t-1],e[t]),i=ba(e[t],e[t+1]),r=n/(n+i);return r}function uP(e,t){var n=_g(e),i=_g(t);return i-n}function kg(e,t){return[e[t],e[t+1]]}function lP(e,t){var n=ba(e[0],e[1]),i=ba(e[0],t);return n===0?0:i/n}function pP(e,t,n,i){var r=Le(e);return Tg(r,t,n,i).delta}function _a(e,t,n){var i=ga(t),r=ga(n),o=li(e,i),a={x:o.x*(n.width/t.width),y:o.y*(n.height/t.height)};return Ii({x:r.x+a.x,y:r.y+a.y})}function Og(e,t,n){var i=ga(e),r=ga(t),o=ga(n),a=li(e,i),s=li(i,r),c=fP(i,t,n);if(c)return c;var u={x:s.x*(n.width/t.width),y:s.y*(n.height/t.height)},l={x:o.x+u.x,y:o.y+u.y};return Ii({x:l.x+a.x-e.x,y:l.y+a.y-e.y})}function fP(e,t,n){var i=ke(t),r=ke(n);if(dP(i,r))return null;var o=an(t,e),a,s,c;if(o==="top")a={x:0,y:r.bottom-i.bottom};else if(o==="bottom")a={x:0,y:r.top-i.top};else if(o==="right")a={x:r.left-i.left,y:0};else if(o==="left")a={x:r.right-i.right,y:0};else return null;return s={x:e.x+a.x,y:e.y+a.y},c=an(n,s),c!==o?null:a}function dP(e,t){return hP(e,t)||mP(e,t)}function hP(e,t){return e.right!==t.right&&e.left!==t.left}function mP(e,t){return e.top!==t.top&&e.bottom!==t.bottom}var Dg="name",Lg="text";function dp(e,t,n,i){J.call(this,e),this.postExecute("element.updateProperties",r),this.postExecute("element.updateModdleProperties",a=>{te(a.context.element)===a.context.moddleElement&&r(a)});function r(a){var s=a.context,c=s.element,u=s.properties;if(Dg in u&&t.updateLabel(c,u[Dg]),Lg in u&&S(c,"bpmn:TextAnnotation")){var l=i.getTextAnnotationBounds({x:c.x,y:c.y,width:c.width,height:c.height},u[Lg]||"");t.updateLabel(c,u.text,l)}}this.postExecute(["shape.create","connection.create"],function(a){var s=a.context,c=s.hints||{};if(c.createElementsBehavior!==!1){var u=s.shape||s.connection;Ge(u)||!ar(u)||Yn(u)&&t.updateLabel(u,Yn(u))}}),this.postExecute("shape.delete",function(a){var s=a.context,c=s.labelTarget,u=s.hints||{};c&&u.unsetLabel!==!1&&t.updateLabel(c,null,null,{removeShape:!1})});function o(a){var s=a.context,c=s.connection,u=c.label,l=V({},s.hints),p=s.newWaypoints||c.waypoints,f=s.oldWaypoints;return typeof l.startChanged>"u"&&(l.startChanged=!!l.connectionStart),typeof l.endChanged>"u"&&(l.endChanged=!!l.connectionEnd),pP(u,p,f,l)}this.postExecute(["connection.layout","connection.updateWaypoints"],function(a){var s=a.context,c=s.hints||{};if(c.labelBehavior!==!1){var u=s.connection,l=u.label,p;!l||!l.parent||(p=o(a),t.moveShape(l,p))}}),this.postExecute(["shape.replace"],function(a){var s=a.context,c=s.newShape,u=s.oldShape,l=te(c);l&&ar(l)&&u.label&&c.label&&(c.label.x=u.label.x,c.label.y=u.label.y)}),this.preExecute("shape.resize",function(a){var s=a.context,c=s.shape,u=s.hints||{};if(!(!Ge(c)||u.autoResize)){var l=s.newBounds,p=i.getDimensions(Yn(c)||"",{box:l,style:i.getExternalStyle()}),f=Math.ceil(p.height),d=l.y!==c.y,m=c.y+c.height;s.newBounds={width:l.width,height:f,x:l.x,y:d?m-f:l.y}}}),this.postExecute("shape.resize",function(a){var s=a.context,c=s.shape,u=s.newBounds,l=s.oldBounds;if(Ws(c)){var p=c.label,f=Le(p),d=vP(l),m=yP(f,d),h=gP(m,l,u);t.moveShape(p,h)}})}ye(dp,J),dp.$inject=["eventBus","modeling","bpmnFactory","textRenderer"];function gP(e,t,n){var i=_a(e,t,n);return Ii(li(i,e))}function yP(e,t){if(t.length){var n=bP(e,t);return fp(e,n)}}function vP(e){return[[{x:e.x,y:e.y},{x:e.x+(e.width||0),y:e.y}],[{x:e.x+(e.width||0),y:e.y},{x:e.x+(e.width||0),y:e.y+(e.height||0)}],[{x:e.x,y:e.y+(e.height||0)},{x:e.x+(e.width||0),y:e.y+(e.height||0)}],[{x:e.x,y:e.y},{x:e.x,y:e.y+(e.height||0)}]]}function bP(e,t){var n=t.map(function(r){return{line:r,distance:wg(e,r)}}),i=fi(n,"distance");return i[0].line}function xP(e,t,n,i){return Tg(e,t,n,i).point}function hp(e,t){J.call(this,e);function n(i,r){var o=i.context,a=o.connection,s=V({},o.hints),c=o.newWaypoints||a.waypoints,u=o.oldWaypoints;return typeof s.startChanged>"u"&&(s.startChanged=!!s.connectionStart),typeof s.endChanged>"u"&&(s.endChanged=!!s.connectionEnd),xP(r,c,u,s)}this.postExecute(["connection.layout","connection.updateWaypoints"],function(i){var r=i.context,o=r.connection,a=o.outgoing,s=o.incoming;s.forEach(function(c){var u=c.waypoints[c.waypoints.length-1],l=n(i,u),p=[].concat(c.waypoints.slice(0,-1),[l]);t.updateWaypoints(c,p)}),a.forEach(function(c){var u=c.waypoints[0],l=n(i,u),p=[].concat([l],c.waypoints.slice(1));t.updateWaypoints(c,p)})}),this.postExecute(["connection.move"],function(i){var r=i.context,o=r.connection,a=o.outgoing,s=o.incoming,c=r.delta;s.forEach(function(u){var l=u.waypoints[u.waypoints.length-1],p={x:l.x+c.x,y:l.y+c.y},f=[].concat(u.waypoints.slice(0,-1),[p]);t.updateWaypoints(u,f)}),a.forEach(function(u){var l=u.waypoints[0],p={x:l.x+c.x,y:l.y+c.y},f=[].concat([p],u.waypoints.slice(1));t.updateWaypoints(u,f)})})}ye(hp,J),hp.$inject=["eventBus","modeling"];function uc(e,t,n){var i=pc(e),r=Bg(i,t),o=i[0];return r.length?r[r.length-1]:_a(o.original||o,n,t)}function lc(e,t,n){var i=pc(e),r=Bg(i,t),o=i[i.length-1];return r.length?r[0]:_a(o.original||o,n,t)}function mp(e,t,n){var i=pc(e),r=Ig(t,n),o=i[0];return _a(o.original||o,r,t)}function gp(e,t,n){var i=pc(e),r=Ig(t,n),o=i[i.length-1];return _a(o.original||o,r,t)}function Ig(e,t){return{x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}function pc(e){var t=e.waypoints;if(!t.length)throw new Error("connection#"+e.id+": no waypoints");return t}function Bg(e,t){var n=pn(e,wP);return Ye(n,function(i){return _P(i,t)})}function _P(e,t){return an(t,e,1)==="intersect"}function wP(e){return e.original||e}function yp(e,t){J.call(this,e),this.postExecute("shape.replace",function(n){var i=n.oldShape,r=n.newShape;if(EP(i,r)){var o=SP(i);o.incoming.forEach(function(a){var s=lc(a,r,i);t.reconnectEnd(a,r,s)}),o.outgoing.forEach(function(a){var s=uc(a,r,i);t.reconnectStart(a,r,s)})}},!0)}yp.$inject=["eventBus","modeling"],ye(yp,J);function EP(e,t){return S(e,"bpmn:Participant")&&Xe(e)&&S(t,"bpmn:Participant")&&!Xe(t)}function SP(e){var t=aa([e]),n=[],i=[];return t.forEach(function(r){r!==e&&(r.incoming.forEach(function(o){S(o,"bpmn:MessageFlow")&&n.push(o)}),r.outgoing.forEach(function(o){S(o,"bpmn:MessageFlow")&&i.push(o)}))},[]),{incoming:n,outgoing:i}}const RP=["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:EscalationEventDefinition","bpmn:ConditionalEventDefinition","bpmn:SignalEventDefinition"];function Ng(e){const t=te(e);if(!S(t,"bpmn:BoundaryEvent")&&!(S(t,"bpmn:StartEvent")&&gn(t.$parent)))return!1;const n=t.get("eventDefinitions");return!n||!n.length?!1:RP.some(i=>S(n[0],i))}function $g(e){return S(e,"bpmn:BoundaryEvent")?"cancelActivity":"isInterrupting"}function vp(e,t){e.invoke(J,this),this.postExecuted("shape.replace",function(n){const i=n.context.oldShape,r=n.context.newShape,o=n.context.hints;if(!Ng(r))return;const a=$g(r);if(o.targetElement&&o.targetElement[a]!==void 0)return;const c=te(i).get(a),u=te(r).get(a);c!==u&&t.updateProperties(r,{[a]:c})})}vp.$inject=["injector","modeling"],ye(vp,J);function bp(e,t){J.call(this,e),this.preExecute("shape.resize",function(n){var i=n.shape,r=Je(i),o=r&&r.get("label"),a=o&&o.get("bounds");a&&t.updateModdleProperties(i,o,{bounds:void 0})},!0)}ye(bp,J),bp.$inject=["eventBus","modeling"];function xp(e,t,n){J.call(this,e),this.preExecute("shape.delete",function(i){var r=i.context.shape;if(!(r.incoming.length!==1||r.outgoing.length!==1)){var o=r.incoming[0],a=r.outgoing[0];if(!(!S(o,"bpmn:SequenceFlow")||!S(a,"bpmn:SequenceFlow"))&&t.canConnect(o.source,a.target,o)){var s=CP(o.waypoints,a.waypoints);n.reconnectEnd(o,a.target,s)}}})}ye(xp,J),xp.$inject=["eventBus","bpmnRules","modeling"];function Co(e){return e.original||e}function CP(e,t){var n=lp(Co(e[e.length-2]),Co(e[e.length-1]),Co(t[1]),Co(t[0]));return n?[].concat(e.slice(0,e.length-1),[n],t.slice(1)):[Co(e[0]),Co(t[t.length-1])]}function _p(e,t){J.call(this,e),this.preExecute("shape.delete",function(n){var i=n.shape,r=i.parent;S(i,"bpmn:Participant")&&(n.collaborationRoot=r)},!0),this.postExecute("shape.delete",function(n){var i=n.collaborationRoot;if(i&&!i.businessObject.participants.length){var r=t.makeProcess(),o=i.children.slice();t.moveElements(o,{x:0,y:0},r)}},!0)}_p.$inject=["eventBus","modeling"],ye(_p,J);function wp(e,t,n,i){J.call(this,e);var r=i.get("dragging",!1);function o(c){var u=c.source,l=c.target,p=c.parent;if(p){var f,d;S(c,"bpmn:SequenceFlow")&&(n.canConnectSequenceFlow(u,l)||(d=!0),n.canConnectMessageFlow(u,l)&&(f="bpmn:MessageFlow")),S(c,"bpmn:MessageFlow")&&(n.canConnectMessageFlow(u,l)||(d=!0),n.canConnectSequenceFlow(u,l)&&(f="bpmn:SequenceFlow")),d&&t.removeConnection(c),f&&t.connect(u,l,{type:f,waypoints:c.waypoints.slice()})}}function a(c){var u=c.context,l=u.connection,p=u.newSource||l.source,f=u.newTarget||l.target,d,m;d=n.canConnect(p,f),!(!d||d.type===l.type)&&(m=t.connect(p,f,{type:d.type,associationDirection:d.associationDirection,waypoints:l.waypoints.slice()}),l.parent&&t.removeConnection(l),u.connection=m,r&&s(l,m))}function s(c,u){var l=r.context(),p=l&&l.payload.previousSelection,f;!p||!p.length||(f=p.indexOf(c),f!==-1&&p.splice(f,1,u))}this.postExecuted("elements.move",function(c){var u=c.closure,l=u.allConnections;F(l,o)},!0),this.preExecute("connection.reconnect",a),this.postExecuted("element.updateProperties",function(c){var u=c.context,l=u.properties,p=u.element,f=p.businessObject,d;l.default&&(d=ht(p.outgoing,oo({id:p.businessObject.default.id})),d&&t.updateProperties(d,{conditionExpression:void 0})),l.conditionExpression&&f.sourceRef.default===f&&t.updateProperties(p.source,{default:void 0})})}ye(wp,J),wp.$inject=["eventBus","modeling","bpmnRules","injector"];function fc(e,t,n,i,r,o){i.invoke(J,this),this._bpmnReplace=e,this._elementRegistry=n,this._selection=o,this.postExecuted(["elements.create"],500,function(a){var s=a.context,c=s.parent,u=s.elements,l=Tn(u,function(p,f){var d=t.canReplace([f],f.host||f.parent||c);return d?p.concat(d.replacements):p},[]);l.length&&this._replaceElements(u,l)},this),this.postExecuted(["elements.move"],500,function(a){var s=a.context,c=s.newParent,u=s.newHost,l=[];F(s.closure.topLevel,function(f){gn(f)?l=l.concat(f.children):l=l.concat(f)}),l.length===1&&u&&(c=u);var p=t.canReplace(l,c);p&&this._replaceElements(l,p.replacements,u)},this),this.postExecute(["shape.replace"],1500,function(a){var s=a.context,c=s.oldShape,u=s.newShape,l=c.attachers,p;l&&l.length&&(p=t.canReplace(l,u),this._replaceElements(l,p.replacements))},this),this.postExecuted(["shape.replace"],1500,function(a){var s=a.context,c=s.oldShape,u=s.newShape;r.unclaimId(c.businessObject.id,c.businessObject),r.updateProperties(u,{id:c.id})})}ye(fc,J),fc.prototype._replaceElements=function(e,t){var n=this._elementRegistry,i=this._bpmnReplace,r=this._selection;F(t,function(o){var a={type:o.newElementType},s=n.get(o.oldElementId),c=e.indexOf(s);e[c]=i.replaceElement(s,a,{select:!1})}),t&&r.select(e)},fc.$inject=["bpmnReplace","bpmnRules","elementRegistry","injector","modeling","selection"];var PP=1500,AP={width:140,height:120},Ep={width:300,height:60},Sp={width:60,height:300},dc={width:300,height:150},hc={width:150,height:300},Fg={width:140,height:120},jg={width:100,height:40};function Hg(e){e.on("resize.start",PP,function(t){var n=t.context,i=n.shape,r=n.direction,o=n.balanced;(S(i,"bpmn:Lane")||S(i,"bpmn:Participant"))&&(n.resizeConstraints=DP(i,r,o)),S(i,"bpmn:SubProcess")&&Xe(i)&&(n.minDimensions=Fg),S(i,"bpmn:TextAnnotation")&&(n.minDimensions=jg)})}Hg.$inject=["eventBus"];var ur=Math.abs,TP=Math.min,MP=Math.max;function zg(e,t,n,i){var r=e[t];e[t]=r===void 0?n:i(n,r)}function Po(e,t,n){return zg(e,t,n,TP)}function Ao(e,t,n){return zg(e,t,n,MP)}var kP={top:20,left:50,right:20,bottom:20},OP={top:50,left:20,right:20,bottom:20};function DP(e,t,n){var i=Jn(e),r=!0,o=!0,a=rc(i,[i]),s=ke(e),c={},u={},l=Jt(e),p=l?Ep:Sp;/n/.test(t)?u.top=s.bottom-p.height:/e/.test(t)?u.right=s.left+p.width:/s/.test(t)?u.bottom=s.top+p.height:/w/.test(t)&&(u.left=s.right-p.width),a.forEach(function(m){var h=ke(m);l?(h.top<s.top-10&&(r=!1),h.bottom>s.bottom+10&&(o=!1)):(h.left<s.left-10&&(r=!1),h.right>s.right+10&&(o=!1)),/n/.test(t)&&(n&&ur(s.top-h.bottom)<10&&Ao(c,"top",h.top+p.height),ur(s.top-h.top)<5&&Po(u,"top",h.bottom-p.height)),/e/.test(t)&&(n&&ur(s.right-h.left)<10&&Po(c,"right",h.right-p.width),ur(s.right-h.right)<5&&Ao(u,"right",h.left+p.width)),/s/.test(t)&&(n&&ur(s.bottom-h.top)<10&&Po(c,"bottom",h.bottom-p.height),ur(s.bottom-h.bottom)<5&&Ao(u,"bottom",h.top+p.height)),/w/.test(t)&&(n&&ur(s.left-h.right)<10&&Ao(c,"left",h.left+p.width),ur(s.left-h.left)<5&&Po(u,"left",h.right-p.width))});var f=i.children.filter(function(m){return!m.hidden&&!m.waypoints&&(S(m,"bpmn:FlowElement")||S(m,"bpmn:Artifact"))}),d=l?kP:OP;return f.forEach(function(m){var h=ke(m);/n/.test(t)&&(!l||r)&&Po(u,"top",h.top-d.top),/e/.test(t)&&(l||o)&&Ao(u,"right",h.right+d.right),/s/.test(t)&&(!l||o)&&Ao(u,"bottom",h.bottom+d.bottom),/w/.test(t)&&(l||r)&&Po(u,"left",h.left-d.left)}),{min:u,max:c}}function Gg(e){!e||typeof e.stopPropagation!="function"||e.stopPropagation()}function To(e){return e.originalEvent||e.srcEvent}function Rp(e){Gg(e),Gg(To(e))}function jr(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 Vg(){return/mac/i.test(navigator.platform)}function Wg(e,t){return(To(e)||e).button===t}function lr(e){return Wg(e,0)}function LP(e){return Wg(e,1)}function wa(e){var t=To(e)||e;return lr(e)?Vg()?t.metaKey:t.ctrlKey:!1}function mc(e){var t=To(e)||e;return lr(e)&&t.shiftKey}var Ug=1001;function Yg(e,t){e.on("resize.start",Ug+500,function(n){var i=n.context,r=i.shape;(S(r,"bpmn:Lane")||S(r,"bpmn:Participant"))&&(i.balanced=!wa(n))}),e.on("resize.end",Ug,function(n){var i=n.context,r=i.shape,o=i.canExecute,a=i.newBounds;if(S(r,"bpmn:Lane")||S(r,"bpmn:Participant"))return o&&(a=wm(a),t.resizeLane(r,a,i.balanced)),!1})}Yg.$inject=["eventBus","modeling"];var IP=500;function Cp(e,t,n,i,r){n.invoke(J,this);function o(l){return We(l,["bpmn:ReceiveTask","bpmn:SendTask"])||BP(l,["bpmn:ErrorEventDefinition","bpmn:EscalationEventDefinition","bpmn:MessageEventDefinition","bpmn:SignalEventDefinition"])}function a(l){var p=e.getDefinitions(),f=p.get("rootElements");return!!ht(f,oo({id:l.id}))}function s(l){if(S(l,"bpmn:ErrorEventDefinition"))return"errorRef";if(S(l,"bpmn:EscalationEventDefinition"))return"escalationRef";if(S(l,"bpmn:MessageEventDefinition"))return"messageRef";if(S(l,"bpmn:SignalEventDefinition"))return"signalRef"}function c(l){if(We(l,["bpmn:ReceiveTask","bpmn:SendTask"]))return l.get("messageRef");var p=l.get("eventDefinitions"),f=p[0];return f.get(s(f))}function u(l,p){if(We(l,["bpmn:ReceiveTask","bpmn:SendTask"]))return l.set("messageRef",p);var f=l.get("eventDefinitions"),d=f[0];return d.set(s(d),p)}this.executed(["shape.create","element.updateProperties","element.updateModdleProperties"],function(l){var p=l.shape||l.element;if(o(p)){var f=te(p),d=c(f),m;d&&!a(d)&&(m=e.getDefinitions().get("rootElements"),Ot(m,d),l.addedRootElement=d)}},!0),this.reverted(["shape.create","element.updateProperties","element.updateModdleProperties"],function(l){var p=l.addedRootElement;if(p){var f=e.getDefinitions().get("rootElements");kt(f,p)}},!0),t.on("copyPaste.copyElement",function(l){var p=l.descriptor,f=l.element;if(!(f.labelTarget||!o(f))){var d=te(f),m=c(d);m&&(p.referencedRootElement=m)}}),t.on("copyPaste.pasteElement",IP,function(l){var p=l.descriptor,f=p.businessObject,d=p.referencedRootElement;d&&(a(d)||(d=i.copyElement(d,r.create(d.$type))),u(f,d),delete p.referencedRootElement)})}Cp.$inject=["bpmnjs","eventBus","injector","moddleCopy","bpmnFactory"],ye(Cp,J);function BP(e,t){return De(t)||(t=[t]),Ki(t,function(n){return xo(e,n)})}var qg=Math.max;function Kg(e){e.on("spaceTool.getMinDimensions",function(t){var n=t.shapes,i=t.axis,r=t.start,o={};return F(n,function(a){var s=a.id;S(a,"bpmn:Participant")&&(o[s]=$P(a,i,r)),S(a,"bpmn:Lane")&&(o[s]=Jt(a)?Ep:Sp),S(a,"bpmn:SubProcess")&&Xe(a)&&(o[s]=Fg),S(a,"bpmn:TextAnnotation")&&(o[s]=jg),S(a,"bpmn:Group")&&(o[s]=AP)}),o})}Kg.$inject=["eventBus"];function NP(e){return e==="x"}function $P(e,t,n){var i=Jt(e);if(!HP(e))return i?dc:hc;var r=NP(t),o={};return r?i?o=dc:o={width:jP(e,n,r),height:hc.height}:i?o={width:dc.width,height:FP(e,n,r)}:o=hc,o}function FP(e,t,n){var i;return i=zP(e,t,n),qg(dc.height,i)}function jP(e,t,n){var i;return i=GP(e,t,n),qg(hc.width,i)}function HP(e){return!!cr(e).length}function zP(e,t,n){var i=cr(e),r;return r=Pp(i,t,n),e.height-r.height+Ep.height}function GP(e,t,n){var i=cr(e),r;return r=Pp(i,t,n),e.width-r.width+Sp.width}function Pp(e,t,n){var i,r,o;for(i=0;i<e.length;i++)if(r=e[i],!n&&t>=r.y&&t<=r.y+r.height||n&&t>=r.x&&t<=r.x+r.width)return o=cr(r),o.length?Pp(o,t,n):r}var Xg="_plane";function Zg(e){var t=e.id;return VP(t)}function wi(e){var t=e.id;return S(e,"bpmn:SubProcess")?Qg(t):t}function Hr(e){return Qg(e)}function gc(e){var t=Je(e);return S(t,"bpmndi:BPMNPlane")}function Qg(e){return e+Xg}function VP(e){return e.replace(new RegExp(Xg+"$"),"")}var Jg=400,WP=600,ey={x:180,y:160};function Fi(e,t,n,i,r,o,a){J.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(p){return S(p,"bpmn:SubProcess")&&!Xe(p)}function u(p){var f=p.shape,d=p.newRootElement,m=te(f);d=s._addDiagram(d||m),p.newRootElement=e.addRootElement(d)}function l(p){var f=p.shape,d=te(f);s._removeDiagram(d);var m=p.newRootElement=a.get(wi(d));e.removeRootElement(m)}this.executed("shape.create",function(p){var f=p.shape;c(f)&&u(p)},!0),this.postExecuted("elements.create",function(p){var f=p.elements;F(f,function(d){if(c(d)){var m=a.get(wi(d));if(!(!m||!d.children||!d.children.length)){var h=ty(d);s._showRecursively(h),s._moveChildrenToShape(h,m)}}})},!0),this.reverted("shape.create",function(p){var f=p.shape;c(f)&&l(p)},!0),this.preExecute("shape.delete",function(p){var f=p.shape;!S(f,"bpmn:SubProcess")||!Xe(f)||F(fa([f]),d=>{n.removeShape(d.annotation)})},!0),this.preExecuted("shape.delete",function(p){var f=p.shape;if(c(f)){var d=a.get(wi(f));d&&n.removeElements(d.children.slice())}},!0),this.executed("shape.delete",function(p){var f=p.shape;c(f)&&l(p)},!0),this.reverted("shape.delete",function(p){var f=p.shape;c(f)&&u(p)},!0),this.preExecuted("shape.replace",function(p){var f=p.oldShape,d=p.newShape;!c(f)||!c(d)||(p.oldRoot=e.removeRootElement(wi(f)))},!0),this.postExecuted("shape.replace",function(p){var f=p.newShape,d=p.oldRoot,m=e.findRoot(wi(f));if(!(!d||!m)){var h=d.children;n.moveElements(h,{x:0,y:0},m)}},!0),this.executed("element.updateProperties",function(p){var f=p.element;if(S(f,"bpmn:SubProcess")){var d=p.properties,m=p.oldProperties,h=m.id,y=d.id;if(h!==y){if(gc(f)){a.updateId(f,Hr(y)),a.updateId(h,y);return}var g=a.get(Hr(h));g&&a.updateId(Hr(h),Hr(y))}}},!0),this.reverted("element.updateProperties",function(p){var f=p.element;if(S(f,"bpmn:SubProcess")){var d=p.properties,m=p.oldProperties,h=m.id,y=d.id;if(h!==y){if(gc(f)){a.updateId(f,Hr(h)),a.updateId(y,h);return}var g=a.get(Hr(y));g&&a.updateId(g,Hr(h))}}},!0),t.on("element.changed",function(p){var f=p.element;if(gc(f)){var d=f,m=a.get(Zg(d));!m||m===d||t.fire("element.changed",{element:m})}}),this.executed("shape.toggleCollapse",Jg,function(p){var f=p.shape;S(f,"bpmn:SubProcess")&&(Xe(f)?l(p):(u(p),s._showRecursively(f.children)))},!0),this.reverted("shape.toggleCollapse",Jg,function(p){var f=p.shape;S(f,"bpmn:SubProcess")&&(Xe(f)?l(p):(u(p),s._showRecursively(f.children)))},!0),this.postExecuted("shape.toggleCollapse",WP,function(p){var f=p.shape;if(S(f,"bpmn:SubProcess")){var d=p.newRootElement;if(d)if(Xe(f))s._moveChildrenToShape(d.children.slice(),f),F(fa(f.children),h=>{n.moveShape(h.annotation,{x:0,y:0},f.parent),F(h.associations,y=>{n.moveConnection(y,{x:0,y:0},f.parent)})});else{s._disconnectSharedAnnotations(f);var m=ty(f);s._moveChildrenToShape(m,d)}}},!0),t.on("copyPaste.createTree",function(p){var f=p.element,d=p.children;if(c(f)){var m=wi(f),h=a.get(m);h&&d.push.apply(d,h.children)}}),t.on("copyPaste.copyElement",function(p){var f=p.descriptor,d=p.element,m=p.elements,h=d.parent,y=S(Je(h),"bpmndi:BPMNPlane");if(y){var g=Zg(h),v=ht(m,function(b){return b.id===g});v&&(f.parent=v.id)}}),t.on("copyPaste.pasteElement",function(p){var f=p.descriptor;f.parent&&(c(f.parent)||f.parent.hidden)&&(f.hidden=!0)})}ye(Fi,J),Fi.prototype._moveChildrenToShape=function(e,t){var n=this._modeling;if(e.length){var i=e.filter(function(c){return!c.hidden});if(!i.length){n.moveElements(e,{x:0,y:0},t,{autoResize:!1});return}var r=Bt(i),o;if(!t.x)o={x:ey.x-r.x,y:ey.y-r.y};else{var a=Le(t),s=Le(r);o={x:a.x-s.x,y:a.y-s.y}}n.moveElements(e,o,t,{autoResize:!1})}},Fi.prototype._disconnectSharedAnnotations=function(e){var t=this._modeling,n=new Set(Wm(e).map(i=>i.annotation));n.size&&F(fa(e.children),i=>{n.has(i.annotation)&&F(i.associations,r=>{t.removeConnection(r)})})},Fi.prototype._showRecursively=function(e,t){var n=this,i=[];return e.forEach(function(r){r.hidden=!!t,i=i.concat(r),r.children&&(i=i.concat(n._showRecursively(r.children,r.collapsed||t)))}),i},Fi.prototype._addDiagram=function(e){var t=this._bpmnjs,n=t.getDefinitions().diagrams;return e.businessObject||(e=this._createNewDiagram(e)),n.push(e.di.$parent),e},Fi.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});i.$parent=r;var o=n.createRoot({id:wi(e),type:e.$type,di:i,businessObject:e,collapsed:!0});return o},Fi.prototype._removeDiagram=function(e){var t=this._bpmnjs,n=t.getDefinitions().diagrams,i=ht(n,function(r){return r.plane.bpmnElement.id===e.id});return n.splice(n.indexOf(i),1),i},Fi.$inject=["canvas","eventBus","modeling","elementFactory","bpmnFactory","bpmnjs","elementRegistry"];function UP(e){var t=[];return F(fa(e),n=>{t.push(n.annotation),t.push.apply(t,n.associations)}),t}function ty(e){return e.children.slice().concat(UP(e.children)).concat(YP(e))}function YP(e){return Ol(e.children||[]).reduce(function(t,n){return n.label&&n.label.parent!==e&&t.push(n.label),t},[])}function Ap(e,t){e.invoke(J,this),this.postExecuted("shape.replace",function(n){var i=n.context.oldShape,r=n.context.newShape;if(!(!S(r,"bpmn:SubProcess")||S(r,"bpmn:AdHocSubProcess")||!(S(i,"bpmn:Task")||S(i,"bpmn:CallActivity"))||!Xe(r))){var o=qP(r);t.createShape({type:"bpmn:StartEvent"},o,r)}})}Ap.$inject=["injector","modeling"],ye(Ap,J);function qP(e){return{x:e.x+e.width/6,y:e.y+e.height/2}}function Tp(e,t){J.call(this,e),this.preExecute("connection.create",function(n){const{target:i}=n;S(i,"bpmn:TextAnnotation")&&(n.parent=i.parent)},!0),this.preExecute(["shape.create","shape.resize","elements.move"],function(n){const i=n.shapes||[n.shape];i.length===1&&S(i[0],"bpmn:TextAnnotation")&&(n.hints=n.hints||{},n.hints.autoResize=!1)},!0),this.preExecute("shape.resize",function(n){var i=n.context,r=i.shape,o=i.hints||{};if(!(!S(r,"bpmn:TextAnnotation")||o.autoResize)){var a=i.newBounds,s=t.getTextAnnotationBounds(a,Yn(r)||""),c=a.y!==r.y&&Math.abs(a.y+a.height-(r.y+r.height))<=1,u=r.y+r.height;i.newBounds={width:a.width,height:s.height,x:a.x,y:c?u-s.height:a.y}}})}ye(Tp,J),Tp.$inject=["eventBus","textRenderer"];function Mp(e,t){J.call(this,e),this.postExecuted("shape.toggleCollapse",1500,function(n){var i=n.shape;if(Xe(i))return;var r=aa(i);r.forEach(function(a){var s=a.incoming.slice(),c=a.outgoing.slice();F(s,function(u){o(u,!0)}),F(c,function(u){o(u,!1)})});function o(a,s){r.indexOf(a.source)!==-1&&r.indexOf(a.target)!==-1||S(a,"bpmn:Association")&&(S(a.source,"bpmn:TextAnnotation")||S(a.target,"bpmn:TextAnnotation"))||(s?t.reconnectEnd(a,i,Le(i)):t.reconnectStart(a,i,Le(i)))}},!0)}ye(Mp,J),Mp.$inject=["eventBus","modeling"];var kp=500;function Op(e,t,n){J.call(this,e);function i(a){a.length&&a.forEach(function(s){s.type==="label"&&!s.businessObject.name&&(s.hidden=!0)})}function r(a,s){var c=a.children,u=s,l,p;return l=KP(c).concat([a]),p=ug(l),p?(u.width=Math.max(p.width,u.width),u.height=Math.max(p.height,u.height),u.x=p.x+(p.width-u.width)/2,u.y=p.y+(p.height-u.height)/2):(u.x=a.x+(a.width-u.width)/2,u.y=a.y+(a.height-u.height)/2),u}function o(a,s){return{x:a.x+(a.width-s.width)/2,y:a.y+(a.height-s.height)/2,width:s.width,height:s.height}}this.executed(["shape.toggleCollapse"],kp,function(a){var s=a.context,c=s.shape;S(c,"bpmn:SubProcess")&&(c.collapsed?Je(c).isExpanded=!1:(i(c.children),Je(c).isExpanded=!0))}),this.reverted(["shape.toggleCollapse"],kp,function(a){var s=a.context,c=s.shape;c.collapsed?Je(c).isExpanded=!1:Je(c).isExpanded=!0}),this.postExecuted(["shape.toggleCollapse"],kp,function(a){var s=a.context.shape,c=t.getDefaultSize(s),u;s.collapsed?u=o(s,c):u=r(s,c),n.resizeShape(s,u,null,{autoResize:s.collapsed?!1:"nwse"})})}ye(Op,J),Op.$inject=["eventBus","elementFactory","modeling"];function KP(e){return e.filter(function(t){return!t.hidden})}function Dp(e,t,n,i){t.invoke(J,this),this.preExecute("shape.delete",function(r){var o=r.context,a=o.shape,s=a.businessObject;Ge(a)||(S(a,"bpmn:Participant")&&Xe(a)&&n.ids.unclaim(s.processRef.id),i.unclaimId(s.id,s))}),this.preExecute("connection.delete",function(r){var o=r.context,a=o.connection,s=a.businessObject;i.unclaimId(s.id,s)}),this.preExecute("canvas.updateRoot",function(){var r=e.getRootElement(),o=r.businessObject;S(r,"bpmn:Collaboration")&&n.ids.unclaim(o.id)})}ye(Dp,J),Dp.$inject=["canvas","injector","moddle","modeling"];function Lp(e,t){J.call(this,e),this.preExecute("connection.delete",function(n){var i=n.context,r=i.connection,o=r.source;XP(r,o)&&t.updateProperties(o,{default:null})})}ye(Lp,J),Lp.$inject=["eventBus","modeling"];function XP(e,t){if(!S(e,"bpmn:SequenceFlow"))return!1;var n=te(t),i=te(e);return n.get("default")===i}var ZP=500,QP=5e3,ny=["shape.create","shape.delete","shape.move","shape.resize"],iy=[...ny,"spaceTool","lane.add","lane.resize","lane.split","elements.create","elements.delete","elements.move"];function Ip(e,t){J.call(this,e);var n;function i(){return n=n||new JP,n.enter(),n}function r(){if(!n)throw new Error("out of bounds release");return n}function o(){if(!n)throw new Error("out of bounds release");var a=n.leave();return a&&(t.updateLaneRefs(n.flowNodes,n.lanes),n=null),a}this.preExecute(iy,QP,function(){i()}),this.postExecuted(iy,ZP,function(){o()}),this.preExecute(ny,function(a){var s=a.context,c=s.shape,u=r();!c||c.labelTarget||(S(c,"bpmn:Lane")&&u.addLane(c),S(c,"bpmn:FlowNode")&&u.addFlowNode(c))})}Ip.$inject=["eventBus","modeling"],ye(Ip,J);function JP(){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}}var eA=500,tA=5e3,ry=["connection.create","connection.delete","connection.layout","connection.move","connection.reconnect","connection.updateWaypoints","shape.create","shape.delete","shape.move","shape.resize"],oy=[...ry,"elements.create","elements.delete","elements.move","label.create","spaceTool"];function Bp(e,t){J.call(this,e);var n;function i(){return n=n||new nA,n.enter(),n}function r(){if(!n)throw new Error("out of bounds release");return n}function o(){if(!n)throw new Error("out of bounds release");var a=n.leave();return a&&(t.updateCategoryValueRefs(Array.from(n.affectedFlowElements),Array.from(n.affectedGroupEntries.values())),n=null),a}this.preExecute(oy,tA,function(){i()}),this.postExecuted(oy,eA,function(){o()}),this.preExecute(ry,function(a){var s=a.context.connection||a.context.shape,c=r();!s||s.labelTarget||(S(s,"bpmn:FlowElement")&&c.addFlowElement(s),S(s,"bpmn:Group")&&c.addGroup(s))}),this.preExecute("label.create",function(a){var s=a.context.labelTarget;S(s,"bpmn:Group")&&r().addGroup(s)})}Bp.$inject=["eventBus","modeling"],ye(Bp,J);function nA(){this.affectedFlowElements=new Set,this.affectedGroupEntries=new Map,this.counter=0,this.addFlowElement=function(e){this.affectedFlowElements.add(e)},this.addGroup=function(e){this.affectedGroupEntries.has(e)||this.affectedGroupEntries.set(e,{categoryValue:e.businessObject.categoryValueRef,groupShape:e})},this.enter=function(){this.counter++},this.leave=function(){return this.counter--,!this.counter}}function Np(e,t){J.call(this,e),this.postExecuted("elements.create",function(n){const i=n.context,r=i.elements;for(const o of r)iA(o)&&!oA(o)&&t.updateProperties(o,{isForCompensation:void 0})})}ye(Np,J),Np.$inject=["eventBus","modeling"];function iA(e){const t=te(e);return t&&t.isForCompensation}function rA(e){return e&&S(e,"bpmn:BoundaryEvent")&&xo(e,"bpmn:CompensateEventDefinition")}function oA(e){return e.incoming.filter(n=>rA(n.source)).length>0}const aA={__init__:["adaptiveLabelPositioningBehavior","appendBehavior","artifactBehavior","associationBehavior","attachEventBehavior","boundaryEventBehavior","categoryRootElementReferenceBehavior","compensateBoundaryEventBehaviour","createBehavior","createDataObjectBehavior","createParticipantBehavior","dataInputAssociationBehavior","dataStoreBehavior","deleteLaneBehavior","detachEventBehavior","dropOnFlowBehavior","eventBasedGatewayBehavior","fixHoverBehavior","groupBehavior","importDockingFix","isHorizontalFix","labelBehavior","layoutConnectionBehavior","messageFlowBehavior","nonInterruptingBehavior","removeElementBehavior","removeEmbeddedLabelBoundsBehavior","removeParticipantBehavior","replaceConnectionBehavior","replaceElementBehaviour","resizeBehavior","resizeLaneBehavior","rootElementReferenceBehavior","spaceToolBehavior","subProcessPlaneBehavior","subProcessStartEventBehavior","textAnnotationBehavior","toggleCollapseConnectionBehaviour","toggleElementCollapseBehaviour","unclaimIdBehavior","updateFlowNodeRefsBehavior","updateCategoryValueRefsBehavior","unsetDefaultFlowBehavior","setCompensationActivityAfterPasteBehavior"],adaptiveLabelPositioningBehavior:["type",Wl],appendBehavior:["type",Ul],associationBehavior:["type",ql],attachEventBehavior:["type",Zs],artifactBehavior:["type",Yl],boundaryEventBehavior:["type",Kl],categoryRootElementReferenceBehavior:["type",Xl],compensateBoundaryEventBehaviour:["type",Zl],createBehavior:["type",Ql],createDataObjectBehavior:["type",Jl],createParticipantBehavior:["type",np],dataInputAssociationBehavior:["type",ip],dataStoreBehavior:["type",rp],deleteLaneBehavior:["type",op],detachEventBehavior:["type",oc],dropOnFlowBehavior:["type",sp],eventBasedGatewayBehavior:["type",cp],fixHoverBehavior:["type",gg],groupBehavior:["type",up],importDockingFix:["type",vg],isHorizontalFix:["type",pp],labelBehavior:["type",dp],layoutConnectionBehavior:["type",hp],messageFlowBehavior:["type",yp],nonInterruptingBehavior:["type",vp],removeElementBehavior:["type",xp],removeEmbeddedLabelBoundsBehavior:["type",bp],removeParticipantBehavior:["type",_p],replaceConnectionBehavior:["type",wp],replaceElementBehaviour:["type",fc],resizeBehavior:["type",Hg],resizeLaneBehavior:["type",Yg],rootElementReferenceBehavior:["type",Cp],spaceToolBehavior:["type",Kg],subProcessPlaneBehavior:["type",Fi],subProcessStartEventBehavior:["type",Ap],textAnnotationBehavior:["type",Tp],toggleCollapseConnectionBehaviour:["type",Mp],toggleElementCollapseBehaviour:["type",Op],unclaimIdBehavior:["type",Dp],unsetDefaultFlowBehavior:["type",Lp],updateFlowNodeRefsBehavior:["type",Ip],updateCategoryValueRefsBehavior:["type",Bp],setCompensationActivityAfterPasteBehavior:["type",Np]};function $p(e){this._commandStack=e.get("commandStack",!1)}$p.$inject=["injector"],$p.prototype.allowed=function(e,t){var n=!0,i=this._commandStack;return i&&(n=i.canExecute(e,t)),n===void 0?!0:n};const Ei={__init__:["rules"],rules:["type",$p]};function ei(e){J.call(this,e),this.init()}ei.$inject=["eventBus"],ye(ei,J),ei.prototype.addRule=function(e,t,n){var i=this;typeof e=="string"&&(e=[e]),e.forEach(function(r){i.canExecute(r,t,function(o,a,s){return n(o)},!0)})},ei.prototype.init=function(){};function ay(e,t){var n=an(e,t,-15);return n!=="intersect"?n:null}function cn(e){ei.call(this,e)}ye(cn,ei),cn.$inject=["eventBus"],cn.prototype.init=function(){this.addRule("connection.start",function(e){var t=e.source;return sA(t)}),this.addRule("connection.create",function(e){var t=e.source,n=e.target,i=e.hints||{},r=i.targetParent,o=i.targetAttach;if(o)return!1;r&&(n.parent=r);try{return vc(t,n)}finally{r&&(n.parent=null)}}),this.addRule("connection.reconnect",function(e){var t=e.connection,n=e.source,i=e.target;return vc(n,i,t)}),this.addRule("connection.updateWaypoints",function(e){return{type:e.connection.type}}),this.addRule("shape.resize",function(e){var t=e.shape,n=e.newBounds,i=e.direction;return by(t,n,i)}),this.addRule("elements.create",function(e){var t=e.elements,n=e.position,i=e.target;return pt(i)&&!bc(t,i)?!1:Mr(t,function(r){return pt(r)?vc(r.source,r.target,r):r.host?Ea(r,r.host,null,n):zp(r,i)})}),this.addRule("elements.move",function(e){var t=e.target,n=e.shapes,i=e.position,r=e.hints;return r!=null&&r.keyboardMove&&n.some(function(a){return dy(a)&&!n.includes(a.host)})?!1:Ea(n,t,null,i)||yy(n,t,i)||vy(n,t)||bc(n,t)}),this.addRule("shape.create",function(e){return zp(e.shape,e.target,e.source,e.position)}),this.addRule("shape.attach",function(e){return Ea(e.shape,e.target,null,e.position)}),this.addRule("element.copy",function(e){var t=e.element,n=e.elements;return Sy(n,t)})},cn.prototype.canConnectMessageFlow=wy,cn.prototype.canConnectSequenceFlow=Ey,cn.prototype.canConnectDataAssociation=Gp,cn.prototype.canConnectAssociation=xy,cn.prototype.canConnectCompensationAssociation=_y,cn.prototype.canMove=vy,cn.prototype.canAttach=Ea,cn.prototype.canReplace=yy,cn.prototype.canDrop=Mo,cn.prototype.canInsert=bc,cn.prototype.canCreate=zp,cn.prototype.canConnect=vc,cn.prototype.canResize=by,cn.prototype.canCopy=Sy;function sA(e){return Fp(e)?null:We(e,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference","bpmn:Group","bpmn:TextAnnotation"])}function Fp(e){return!e||Ge(e)}function sy(e){do{if(S(e,"bpmn:Process"))return te(e);if(S(e,"bpmn:Participant"))return te(e).processRef||te(e)}while(e=e.parent)}function jp(e){return S(e,"bpmn:TextAnnotation")}function Hp(e){return S(e,"bpmn:Group")&&!e.labelTarget}function cy(e){return S(e,"bpmn:BoundaryEvent")&&Si(e,"bpmn:CompensateEventDefinition")}function yc(e){return te(e).isForCompensation}function cA(e,t){var n=sy(e),i=sy(t);return n===i}function uA(e){return S(e,"bpmn:InteractionNode")&&!S(e,"bpmn:BoundaryEvent")&&(!S(e,"bpmn:Event")||S(e,"bpmn:ThrowEvent")&&py(e,"bpmn:MessageEventDefinition"))}function lA(e){return S(e,"bpmn:InteractionNode")&&!yc(e)&&(!S(e,"bpmn:Event")||S(e,"bpmn:CatchEvent")&&py(e,"bpmn:MessageEventDefinition"))&&!(S(e,"bpmn:BoundaryEvent")&&!Si(e,"bpmn:MessageEventDefinition"))}function uy(e){for(var t=e;t=t.parent;){if(S(t,"bpmn:FlowElementsContainer"))return te(t);if(S(t,"bpmn:Participant"))return te(t).processRef}return null}function ly(e,t){var n=uy(e),i=uy(t);return n===i}function Si(e,t){var n=te(e);return!!ht(n.eventDefinitions||[],function(i){return S(i,t)})}function py(e,t){var n=te(e);return(n.eventDefinitions||[]).every(function(i){return S(i,t)})}function pA(e){return S(e,"bpmn:FlowNode")&&!S(e,"bpmn:EndEvent")&&!gn(e)&&!(S(e,"bpmn:IntermediateThrowEvent")&&Si(e,"bpmn:LinkEventDefinition"))&&!cy(e)&&!yc(e)}function fA(e){return S(e,"bpmn:FlowNode")&&!S(e,"bpmn:StartEvent")&&!S(e,"bpmn:BoundaryEvent")&&!gn(e)&&!(S(e,"bpmn:IntermediateCatchEvent")&&Si(e,"bpmn:LinkEventDefinition"))&&!yc(e)}function dA(e){return S(e,"bpmn:ReceiveTask")||S(e,"bpmn:IntermediateCatchEvent")&&(Si(e,"bpmn:MessageEventDefinition")||Si(e,"bpmn:TimerEventDefinition")||Si(e,"bpmn:ConditionalEventDefinition")||Si(e,"bpmn:SignalEventDefinition"))}function hA(e){for(var t=[];e;)e=e.parent,e&&t.push(e);return t}function fy(e,t){var n=hA(t);return n.indexOf(e)!==-1}function vc(e,t,n){if(Fp(e)||Fp(t))return null;if(!S(n,"bpmn:DataAssociation")){if(wy(e,t))return{type:"bpmn:MessageFlow"};if(Ey(e,t))return{type:"bpmn:SequenceFlow"}}var i=Gp(e,t);return i||(_y(e,t)?{type:"bpmn:Association",associationDirection:"One"}:xy(e,t)?{type:"bpmn:Association",associationDirection:"None"}:!1)}function Mo(e,t){return Ge(e)||Hp(e)?!0:S(t,"bpmn:Participant")&&!Xe(t)?!1:S(e,"bpmn:Participant")?S(t,"bpmn:Process")||S(t,"bpmn:Collaboration"):We(e,["bpmn:DataInput","bpmn:DataOutput"])&&e.parent?t===e.parent:S(e,"bpmn:Lane")?S(t,"bpmn:Participant")||S(t,"bpmn:Lane"):S(e,"bpmn:BoundaryEvent")&&!mA(e)?!1:S(e,"bpmn:FlowElement")&&!S(e,"bpmn:DataStoreReference")?S(t,"bpmn:FlowElementsContainer")?Xe(t):We(t,["bpmn:Participant","bpmn:Lane"]):S(e,"bpmn:DataStoreReference")&&S(t,"bpmn:Collaboration")?Ki(te(t).get("participants"),function(n){return!!n.get("processRef")}):We(e,["bpmn:Artifact","bpmn:DataAssociation","bpmn:DataStoreReference"])?We(t,["bpmn:Collaboration","bpmn:Lane","bpmn:Participant","bpmn:Process","bpmn:SubProcess"]):S(e,"bpmn:MessageFlow")?S(t,"bpmn:Collaboration")||e.source.parent==t||e.target.parent==t:!1}function mA(e){return te(e).cancelActivity&&(hy(e)||my(e))}function dy(e){return!Ge(e)&&S(e,"bpmn:BoundaryEvent")}function gA(e){return S(e,"bpmn:Lane")}function yA(e){return dy(e)||S(e,"bpmn:IntermediateThrowEvent")&&hy(e)?!0:S(e,"bpmn:IntermediateCatchEvent")&&my(e)}function hy(e){var t=te(e);return t&&!(t.eventDefinitions&&t.eventDefinitions.length)}function my(e){return gy(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])}function gy(e,t){return t.some(function(n){return Si(e,n)})}function vA(e){return S(e,"bpmn:ReceiveTask")&&ht(e.incoming,function(t){return S(t.source,"bpmn:EventBasedGateway")})}function Ea(e,t,n,i){if(Array.isArray(e)||(e=[e]),e.length!==1)return!1;var r=e[0];return Ge(r)||!yA(r)||gn(t)||!S(t,"bpmn:Activity")||yc(t)||i&&!ay(i,t)||vA(t)?!1:"attach"}function yy(e,t,n){if(!t)return!1;var i={replacements:[]};return F(e,function(r){gn(t)||S(r,"bpmn:StartEvent")&&r.type!=="label"&&Mo(r,t)&&(PR(r)||i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"}),(AR(r)||TR(r)||MR(r))&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"}),gy(r,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])&&S(t,"bpmn:SubProcess")&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"})),S(t,"bpmn:Transaction")||Si(r,"bpmn:CancelEventDefinition")&&r.type!=="label"&&(S(r,"bpmn:EndEvent")&&Mo(r,t)&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:EndEvent"}),S(r,"bpmn:BoundaryEvent")&&Ea(r,t,null,n)&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:BoundaryEvent"}))}),i.replacements.length?i:!1}function vy(e,t){return Ki(e,gA)?!1:t===void 0?!0:t===null?!1:e.every(function(n){return Mo(n,t)})}function zp(e,t,n,i){return t?Ge(e)||Hp(e)?!0:Mo(e,t)||bc(e,t):!1}function by(e,t,n){return S(e,"bpmn:SubProcess")?Xe(e)&&(!t||t.width>=100&&t.height>=80):S(e,"bpmn:Lane")||S(e,"bpmn:Participant")?!0:jp(e)?n?n==="e"||n==="w":!0:Hp(e)?!0:Ge(e)?n?n==="e"||n==="w":!0:!1}function bA(e,t){var n=jp(e),i=jp(t);return(n||i)&&n!==i}function xy(e,t){return fy(t,e)||fy(e,t)?!1:bA(e,t)?!0:!!Gp(e,t)}function _y(e,t){return ly(e,t)&&cy(e)&&S(t,"bpmn:Activity")&&!_A(t,e)&&!gn(t)}function wy(e,t){return Cy(e)&&!Cy(t)?!1:uA(e)&&lA(t)&&!cA(e,t)}function Ey(e,t){return pA(e)&&fA(t)&&ly(e,t)&&!(S(e,"bpmn:EventBasedGateway")&&!dA(t))}function Gp(e,t){return We(e,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&We(t,["bpmn:Activity","bpmn:ThrowEvent"])?{type:"bpmn:DataInputAssociation"}:We(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&We(e,["bpmn:Activity","bpmn:CatchEvent"])?{type:"bpmn:DataOutputAssociation"}:!1}function bc(e,t,n){if(!t)return!1;if(Array.isArray(e)){if(e.length!==1)return!1;e=e[0]}return t.source===e||t.target===e?!1:We(t,["bpmn:SequenceFlow","bpmn:MessageFlow"])&&!Ge(t)&&S(e,"bpmn:FlowNode")&&!S(e,"bpmn:BoundaryEvent")&&Mo(e,t.parent)}function Vp(e,t){return e&&t&&e.indexOf(t)!==-1}function Sy(e,t){return Ge(t)?!0:!(S(t,"bpmn:Lane")&&!Vp(e,t.parent)||S(t,"bpmn:MessageFlow")&&!xA(e,t))}function xA(e,t){var n=Ry(t.source),i=Ry(t.target);return Vp(e,n)&&Vp(e,i)}function Ry(e){for(;e;e=e.parent)if(S(e,"bpmn:Participant"))return e;return null}function Cy(e){return Eo(e,"bpmn:Process")||Eo(e,"bpmn:Collaboration")}function _A(e,t){return e.attachers.includes(t)}const wA={__depends__:[Ei],__init__:["bpmnRules"],bpmnRules:["type",cn]};var EA=2e3;function Py(e,t){e.on("saveXML.start",EA,n);function n(){var i=t.getRootElements();F(i,function(r){var o=Je(r),a,s;a=aa([r]),a=Ye(a,function(c){return c!==r&&!c.labelTarget}),s=pn(a,Je),o.set("planeElement",s)})}}Py.$inject=["eventBus","canvas"];const SA={__init__:["bpmnDiOrdering"],bpmnDiOrdering:["type",Py]};function xc(e){J.call(this,e);var t=this;this.preExecute(["shape.create","connection.create"],function(n){var i=n.context,r=i.shape||i.connection,o=i.parent,a=t.getOrdering(r,o);a&&(a.parent!==void 0&&(i.parent=a.parent),i.parentIndex=a.index)}),this.preExecute(["shape.move","connection.move"],function(n){var i=n.context,r=i.shape||i.connection,o=i.newParent||r.parent,a=t.getOrdering(r,o);a&&(a.parent!==void 0&&(i.newParent=a.parent),i.newParentIndex=a.index)})}xc.prototype.getOrdering=function(e,t){return null},ye(xc,J);function Wp(e,t){xc.call(this,e);var n=[{type:"bpmn:SubProcess",order:{level:6}},{type:"bpmn:SequenceFlow",order:{level:9,containers:["bpmn:Participant","bpmn:FlowElementsContainer"]}},{type:"bpmn:DataAssociation",order:{level:9,containers:["bpmn:Collaboration","bpmn:FlowElementsContainer"]}},{type:"bpmn:TextAnnotation",order:{level:9}},{type:"bpmn:MessageFlow",order:{level:9,containers:["bpmn:Collaboration"]}},{type:"bpmn:Association",order:{level:6,containers:["bpmn:Participant","bpmn:FlowElementsContainer","bpmn:Collaboration"]}},{type:"bpmn:BoundaryEvent",order:{level:8}},{type:"bpmn:Group",order:{level:10,containers:["bpmn:Collaboration","bpmn:FlowElementsContainer"]}},{type:"bpmn:FlowElement",order:{level:5}},{type:"bpmn:Participant",order:{level:-2}},{type:"bpmn:Lane",order:{level:-1}}];function i(a){if(a.labelTarget)return{level:10};var s=ht(n,function(c){return We(a,[c.type])});return s&&s.order||{level:1}}function r(a){var s=a.order;if(s||(a.order=s=i(a)),!s)throw new Error(`no order for <${a.id}>`);return s}function o(a,s,c){for(var u=s;u&&!We(u,c);)u=u.parent;if(!u)throw new Error(`no parent for <${a.id}> in <${s&&s.id}>`);return u}this.getOrdering=function(a,s){if(a.labelTarget||S(a,"bpmn:TextAnnotation"))return{parent:t.findRoot(s)||t.getRootElement(),index:-1};var c=r(a);c.containers&&(s=o(a,s,c.containers));var u=s.children.indexOf(a),l=Sd(s.children,function(p){return!a.labelTarget&&p.labelTarget?!1:c.level<r(p).level});return l!==-1&&u!==-1&&u<l&&(l-=1),{index:l,parent:s}}}Wp.$inject=["eventBus","canvas"],ye(Wp,xc);const RA={__init__:["bpmnOrderingProvider"],bpmnOrderingProvider:["type",Wp]};function Sa(){}Sa.prototype.get=function(){return this._data},Sa.prototype.set=function(e){this._data=e},Sa.prototype.clear=function(){var e=this._data;return delete this._data,e},Sa.prototype.isEmpty=function(){return!this._data};const CA={clipboard:["type",Sa]};var Ay=1500;function Ty(e,t,n){var i=this,r=n.get("dragging",!1);function o(a){if(!a.hover){var s=a.originalEvent,c=i._findTargetGfx(s),u=c&&e.get(c);c&&u&&(a.stopPropagation(),r.hover({element:u,gfx:c}),r.move(s))}}r&&t.on("drag.start",function(a){t.once("drag.move",Ay,function(s){o(s)})}),(function(){var a,s;t.on("element.hover",function(c){a=c.gfx,s=c.element}),t.on("element.hover",Ay,function(c){s&&t.fire("element.out",{element:s,gfx:a})}),t.on("element.out",function(){a=null,s=null})})(),this._findTargetGfx=function(a){var s,c;if(a instanceof MouseEvent)return s=jr(a),c=document.elementFromPoint(s.x,s.y),PA(c)}}Ty.$inject=["elementRegistry","eventBus","injector"];function PA(e){return Lr(e,"svg, .djs-element",!0)}const AA={__init__:["hoverFix"],hoverFix:["type",Ty]};function TA(e){return!0}function _c(e){return lr(e)||LP(e)}var My=500;function ky(e,t,n){var i=this;function r(A,I,D){if(!s(A,I)){var L,z,re;D?z=t.getGraphics(D):(L=I.delegateTarget||I.target,L&&(z=L,D=t.get(z))),!(!z||!D)&&(re=e.fire(A,{element:D,gfx:z,originalEvent:I}),re===!1&&(I.stopPropagation(),I.preventDefault()))}}var o={};function a(A){return o[A]}function s(A,I){var D=u[A]||lr;return!D(I)}var c={click:"element.click",contextmenu:"element.contextmenu",dblclick:"element.dblclick",mousedown:"element.mousedown",mousemove:"element.mousemove",mouseover:"element.hover",mouseout:"element.out",mouseup:"element.mouseup"},u={"element.contextmenu":TA,"element.mousedown":_c,"element.mouseup":_c,"element.click":_c,"element.dblclick":_c};function l(A,I,D){var L=c[A];if(!L)throw new Error("unmapped DOM event name <"+A+">");return r(L,I,D)}var p="svg, .djs-element";function f(A,I,D,L){var z=o[D]=function(re){r(D,re)};L&&(u[D]=L),z.$delegate=kn.bind(A,p,I,z)}function d(A,I,D){var L=a(D);L&&kn.unbind(A,I,L.$delegate)}function m(A){F(c,function(I,D){f(A,D,I)})}function h(A){F(c,function(I,D){d(A,D,I)})}e.on("canvas.destroy",function(A){h(A.svg)}),e.on("canvas.init",function(A){m(A.svg)}),e.on(["shape.added","connection.added"],function(A){var I=A.element,D=A.gfx;e.fire("interactionEvents.createHit",{element:I,gfx:D})}),e.on(["shape.changed","connection.changed"],My,function(A){var I=A.element,D=A.gfx;e.fire("interactionEvents.updateHit",{element:I,gfx:D})}),e.on("interactionEvents.createHit",My,function(A){var I=A.element,D=A.gfx;i.createDefaultHit(I,D)}),e.on("interactionEvents.updateHit",function(A){var I=A.element,D=A.gfx;i.updateDefaultHit(I,D)});var y=C("djs-hit djs-hit-stroke"),g=C("djs-hit djs-hit-click-stroke"),v=C("djs-hit djs-hit-all"),b=C("djs-hit djs-hit-no-move"),x={all:v,"click-stroke":g,stroke:y,"no-move":b};function C(A,I){return I=V({stroke:"white",strokeWidth:15},I||{}),n.cls(A,["no-fill","no-border"],I)}function T(A,I){var D=x[I];if(!D)throw new Error("invalid hit type <"+I+">");return ve(A,D),A}function k(A,I){$e(A,I)}this.removeHits=function(A){var I=Os(".djs-hit",A);F(I,Ut)},this.createDefaultHit=function(A,I){var D=A.waypoints,L=A.isFrame,z;return D?this.createWaypointsHit(I,D):(z=L?"stroke":"all",this.createBoxHit(I,z,{width:A.width,height:A.height}))},this.createWaypointsHit=function(A,I){var D=oa(I);return T(D,"stroke"),k(A,D),D},this.createBoxHit=function(A,I,D){D=V({x:0,y:0},D);var L=Ae("rect");return T(L,I),ve(L,D),k(A,L),L},this.updateDefaultHit=function(A,I){var D=ut(".djs-hit",I);if(D)return A.waypoints?kl(D,A.waypoints):ve(D,{width:A.width,height:A.height}),D},this.fire=r,this.triggerMouseEvent=l,this.mouseHandler=a,this.registerEvent=f,this.unregisterEvent=d}ky.$inject=["eventBus","elementRegistry","styles"];const wc={__init__:["interactionEvents"],interactionEvents:["type",ky]};function ko(e,t){this._eventBus=e,this._canvas=t,this._selectedElements=new Set;var n=this;e.on(["shape.remove","connection.remove"],function(i){var r=i.element;n.deselect(r)}),e.on(["diagram.clear","root.set"],function(i){n.select(null)})}ko.$inject=["eventBus","canvas"],ko.prototype.deselect=function(e){if(this._selectedElements.has(e)){var t=this.get();this._selectedElements.delete(e),this._eventBus.fire("selection.changed",{oldSelection:t,newSelection:this.get()})}},ko.prototype.get=function(){return Array.from(this._selectedElements)},ko.prototype.isSelected=function(e){return this._selectedElements.has(e)},ko.prototype.select=function(e,t){var n=this.get();De(e)||(e=e?[e]:[]);var i=this._canvas,r=i.getRootElement();e=e.filter(function(o){var a=i.findRoot(o);return r===a}),t?F(e,o=>{this._selectedElements.add(o)}):this._selectedElements=new Set(e),this._eventBus.fire("selection.changed",{oldSelection:n,newSelection:this.get()})};var Oy="hover",Dy="selected";function Ly(e,t){this._canvas=e;function n(r,o){e.addMarker(r,o)}function i(r,o){e.removeMarker(r,o)}t.on("element.hover",function(r){n(r.element,Oy)}),t.on("element.out",function(r){i(r.element,Oy)}),t.on("selection.changed",function(r){function o(u){i(u,Dy)}function a(u){n(u,Dy)}var s=new Set(r.oldSelection),c=new Set(r.newSelection);for(let u of s)c.has(u)||o(u);for(let u of c)s.has(u)||a(u)})}Ly.$inject=["canvas","eventBus"];function Iy(e,t,n,i){e.on("create.end",500,function(r){var o=r.context,a=o.canExecute,s=o.elements,c=o.hints||{},u=c.autoSelect;if(a){if(u===!1)return;De(u)?t.select(u):t.select(s.filter(MA))}}),e.on("connect.end",500,function(r){var o=r.context,a=o.connection;a&&t.select(a)}),e.on("shape.move.end",500,function(r){var o=r.previousSelection||[],a=i.get(r.context.shape.id),s=ht(o,function(c){return a.id===c.id});s||t.select(a)}),e.on("element.click",function(r){if(lr(r)){var o=r.element;o===n.getRootElement()&&(o=null);var a=t.isSelected(o),s=t.get().length>1,c=mc(r);if(a&&s)return c?t.deselect(o):t.select(o);a?t.deselect(o):t.select(o,c)}})}Iy.$inject=["eventBus","selection","canvas","elementRegistry"];function MA(e){return!e.hidden}const ti={__init__:["selectionVisuals","selectionBehavior"],__depends__:[wc],selection:["type",ko],selectionVisuals:["type",Ly],selectionBehavior:["type",Iy]};var kA=/^djs-cursor-.*$/;function Ec(e){var t=Et(document.body);t.removeMatching(kA),e&&t.add("djs-cursor-"+e)}function By(){Ec(null)}var OA=5e3;function Ny(e,t){t=t||"element.click";function n(){return!1}return e.once(t,OA,n),function(){e.off(t,n)}}var DA=["c","C"],LA=["v","V"],IA=["d","D"],BA=["x","X"],NA=["y","Y"],$y=["z","Z"];function $A(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Ln(e){return e.altKey?!1:e.ctrlKey||e.metaKey}function Yt(e,t){return e=De(e)?e:[e],e.indexOf(t.key)!==-1||e.indexOf(t.code)!==-1}function Up(e){return e.shiftKey}function FA(e){return Ln(e)&&Yt(DA,e)}function jA(e){return Ln(e)&&Yt(LA,e)}function HA(e){return Ln(e)&&Yt(IA,e)}function zA(e){return Ln(e)&&Yt(BA,e)}function GA(e){return Ln(e)&&!Up(e)&&Yt($y,e)}function VA(e){return Ln(e)&&(Yt(NA,e)||Yt($y,e)&&Up(e))}var Oo=Math.round,Fy="djs-drag-active";function zr(e){e.preventDefault()}function WA(e){return typeof TouchEvent<"u"&&e instanceof TouchEvent}function UA(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function jy(e,t,n,i){var r={threshold:5,trapClick:!0},o;function a(b){var x=t.viewbox(),C=t._container.getBoundingClientRect();return{x:x.x+(b.x-C.left)/x.scale,y:x.y+(b.y-C.top)/x.scale}}function s(b,x){x=x||o;var C=e.createEvent(V({},x.payload,x.data,{isTouch:x.isTouch}));return e.fire("drag."+b,C)===!1?!1:e.fire(x.prefix+"."+b,C)}function c(b){var x=b.filter(function(C){return i.get(C.id)});x.length&&n.select(x)}function u(b,x){var C=o.payload,T=o.displacement,k=o.globalStart,A=jr(b),I=li(A,k),D=o.localStart,L=a(A),z=li(L,D);if(!o.active&&(x||UA(I)>o.threshold)){if(V(C,{x:Oo(D.x+T.x),y:Oo(D.y+T.y),dx:0,dy:0},{originalEvent:b}),s("start")===!1)return y();o.active=!0,o.keepSelection||(C.previousSelection=n.get(),n.select(null)),o.cursor&&Ec(o.cursor),t.addMarker(t.getRootElement(),Fy)}Rp(b),o.active&&(V(C,{x:Oo(L.x+T.x),y:Oo(L.y+T.y),dx:Oo(z.x),dy:Oo(z.y)},{originalEvent:b}),s("move"))}function l(b){var x,C=!0;o.active&&(b&&(o.payload.originalEvent=b,Rp(b)),C=s("end")),C===!1&&s("rejected"),x=g(C!==!0),s("ended",x)}function p(b){Yt("Escape",b)&&(zr(b),y())}function f(b){var x;o.active&&(x=Ny(e),setTimeout(x,400),zr(b)),l(b)}function d(b){u(b)}function m(b){var x=o.payload;x.hoverGfx=b.gfx,x.hover=b.element,s("hover")}function h(b){s("out");var x=o.payload;x.hoverGfx=null,x.hover=null}function y(b){var x;if(o){var C=o.active;C&&s("cancel"),x=g(b),C&&s("canceled",x)}}function g(b){var x,C;s("cleanup"),By(),o.trapClick?C=f:C=l,Ne.unbind(document,"mousemove",u),Ne.unbind(document,"dragstart",zr),Ne.unbind(document,"selectstart",zr),Ne.unbind(document,"mousedown",C,!0),Ne.unbind(document,"mouseup",C,!0),Ne.unbind(document,"keyup",p),Ne.unbind(document,"touchstart",d,!0),Ne.unbind(document,"touchcancel",y,!0),Ne.unbind(document,"touchmove",u,!0),Ne.unbind(document,"touchend",l,!0),e.off("element.hover",m),e.off("element.out",h),t.removeMarker(t.getRootElement(),Fy);var T=o.payload.previousSelection;return b!==!1&&T&&!n.get().length&&c(T),x=o,o=null,x}function v(b,x,C,T){o&&y(!1),typeof x=="string"&&(T=C,C=x,x=null),T=V({},r,T||{});var k=T.data||{},A,I,D,L,z;if(T.trapClick?L=f:L=l,b?(A=To(b)||b,I=jr(b),Rp(b),A.type==="dragstart"&&zr(A)):(A=null,I={x:0,y:0}),D=a(I),x||(x=D),z=WA(A),o=V({prefix:C,data:k,payload:{},globalStart:I,displacement:li(x,D),localStart:D,isTouch:z},T),T.manual||(z?(Ne.bind(document,"touchstart",d,!0),Ne.bind(document,"touchcancel",y,!0),Ne.bind(document,"touchmove",u,!0),Ne.bind(document,"touchend",l,!0)):(Ne.bind(document,"mousemove",u),Ne.bind(document,"dragstart",zr),Ne.bind(document,"selectstart",zr),Ne.bind(document,"mousedown",L,!0),Ne.bind(document,"mouseup",L,!0)),Ne.bind(document,"keyup",p),e.on("element.hover",m),e.on("element.out",h)),s("init")===!1)return y(),!1;T.autoActivate&&u(b,!0)}e.on("diagram.destroy",y),this.init=v,this.move=u,this.hover=m,this.out=h,this.end=l,this.cancel=y,this.context=function(){return o},this.setOptions=function(b){V(r,b)}}jy.$inject=["eventBus","canvas","selection","elementRegistry"];const ji={__depends__:[AA,ti],dragging:["type",jy]};function Do(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(Math.random()*1e9)+"-"}Do.prototype.next=function(){return this._prefix+ ++this._counter};const YA=new Do("ps");var qA=["marker-start","marker-mid","marker-end"],KA=["circle","ellipse","line","path","polygon","polyline","path","rect"];function pr(e,t,n,i){this._elementRegistry=e,this._canvas=n,this._styles=i}pr.$inject=["elementRegistry","eventBus","canvas","styles"],pr.prototype.cleanUp=function(){console.warn("PreviewSupport#cleanUp is deprecated and will be removed in future versions. You do not need to manually clean up previews anymore. cf. https://github.com/bpmn-io/diagram-js/pull/906")},pr.prototype.getGfx=function(e){return this._elementRegistry.getGraphics(e)},pr.prototype.addDragger=function(e,t,n,i="djs-dragger"){n=n||this.getGfx(e);var r=Jh(n);return this._cloneMarkers(Nr(r),i),ve(r,this._styles.cls(i,[])),$e(t,r),ve(r,"data-preview-support-element-id",e.id),r},pr.prototype.addFrame=function(e,t){var n=Ae("rect",{class:"djs-resize-overlay",width:e.width,height:e.height,x:e.x,y:e.y});return $e(t,n),ve(n,"data-preview-support-element-id",e.id),n},pr.prototype._cloneMarkers=function(e,t="djs-dragger",n=e){var i=this;e.childNodes&&e.childNodes.forEach(r=>{i._cloneMarkers(r,t,n)}),JA(e)&&qA.forEach(function(r){if(ve(e,r)){var o=XA(e,r,i._canvas.getContainer());o&&i._cloneMarker(n,e,o,r,t)}})},pr.prototype._cloneMarker=function(e,t,n,i,r="djs-dragger"){var o=[n.id,r,YA.next()].join("-"),a=ut("marker#"+n.id,e);e=e||this._canvas._svg;var s=a||Jh(n);s.id=o,Qe(s).add(r);var c=ut(":scope > defs",e);c||(c=Ae("defs"),$e(e,c)),$e(c,s);var u=QA(s.id);ve(t,i,u)};function XA(e,t,n){var i=ZA(ve(e,t));return ut("marker#"+i,n||document)}function ZA(e){return e.match(/url\(['"]?#([^'"]*)['"]?\)/)[1]}function QA(e){return"url(#"+e+")"}function JA(e){return KA.indexOf(e.nodeName)!==-1}const Lo={__init__:["previewSupport"],previewSupport:["type",pr]};var eT="drop-ok",Hy="drop-not-ok",zy="attach-ok",Gy="new-parent",Vy="create",tT=2e3;function Wy(e,t,n,i,r){function o(c,u,l,p,f){if(!u)return!1;c=Ye(c,function(v){var b=v.labelTarget;return!v.parent&&!(Ge(v)&&c.indexOf(b)!==-1)});var d=ht(c,function(v){return!pt(v)}),m=!1,h=!1,y=!1;Yy(c)&&(m=r.allowed("shape.attach",{position:l,shape:d,target:u})),m||(Yy(c)?y=r.allowed("shape.create",{position:l,shape:d,source:p,target:u}):y=r.allowed("elements.create",{elements:c,position:l,target:u}));var g=f.connectionTarget;return y||m?(d&&p&&(h=r.allowed("connection.create",{source:g===p?d:p,target:g===p?p:d,hints:{targetParent:u,targetAttach:m}})),{attach:m,connect:h}):y===null||m===null?null:!1}function a(c,u){[zy,eT,Hy,Gy].forEach(function(l){l===u?e.addMarker(c,l):e.removeMarker(c,l)})}n.on(["create.move","create.hover"],function(c){var u=c.context,l=u.elements,p=c.hover,f=u.source,d=u.hints||{};if(!p){u.canExecute=!1,u.target=null;return}Uy(c);var m={x:c.x,y:c.y},h=u.canExecute=p&&o(l,p,m,f,d);p&&h!==null&&(u.target=p,h&&h.attach?a(p,zy):a(p,h?Gy:Hy))}),n.on(["create.end","create.out","create.cleanup"],function(c){var u=c.hover;u&&a(u,null)}),n.on("create.end",function(c){var u=c.context,l=u.source,p=u.shape,f=u.elements,d=u.target,m=u.canExecute,h=m&&m.attach,y=m&&m.connect,g=u.hints||{};if(m===!1||!d)return!1;Uy(c);var v={x:c.x,y:c.y};y?p=i.appendShape(l,p,v,d,{attach:h,connection:y===!0?{}:y,connectionTarget:g.connectionTarget}):(f=i.createElements(f,v,d,V({},g,{attach:h})),p=ht(f,function(b){return!pt(b)})),V(u,{elements:f,shape:p}),V(c,{elements:f,shape:p})});function s(){var c=t.context();c&&c.prefix===Vy&&t.cancel()}n.on("create.init",function(){n.on("elements.changed",s),n.once(["create.cancel","create.end"],tT,function(){n.off("elements.changed",s)})}),this.start=function(c,u,l){De(u)||(u=[u]);var p=ht(u,function(m){return!pt(m)});if(p){l=V({elements:u,hints:{},shape:p},l||{}),F(u,function(m){Be(m.x)||(m.x=0),Be(m.y)||(m.y=0)});var f=Ye(u,function(m){return!m.hidden}),d=Bt(f);F(u,function(m){pt(m)&&(m.waypoints=pn(m.waypoints,function(h){return{x:h.x-d.x-d.width/2,y:h.y-d.y-d.height/2}})),V(m,{x:m.x-d.x-d.width/2,y:m.y-d.y-d.height/2})}),t.init(c,Vy,{cursor:"grabbing",autoActivate:!0,data:{shape:p,elements:u,context:l}})}}}Wy.$inject=["canvas","dragging","eventBus","modeling","rules"];function Uy(e){var t=e.context,n=t.createConstraints;n&&(n.left&&(e.x=Math.max(e.x,n.left)),n.right&&(e.x=Math.min(e.x,n.right)),n.top&&(e.y=Math.max(e.y,n.top)),n.bottom&&(e.y=Math.min(e.y,n.bottom)))}function Yy(e){return e&&e.length===1&&!pt(e[0])}var nT=750;function qy(e,t,n,i,r){function o(a){var s=Ae("g");ve(s,r.cls("djs-drag-group",["no-events"]));var c=Ae("g");return a.forEach(function(u){var l;u.hidden||(u.waypoints?(l=n._createContainer("connection",c),n.drawConnection(Nr(l),u)):(l=n._createContainer("shape",c),n.drawShape(Nr(l),u),sn(l,u.x,u.y)),i.addDragger(u,s,l))}),s}t.on("create.move",nT,function(a){var s=a.hover,c=a.context,u=c.elements,l=c.dragGroup;l||(l=c.dragGroup=o(u));var p;s?(l.parentNode||(p=e.getActiveLayer(),$e(p,l)),sn(l,a.x,a.y)):Ut(l)}),t.on("create.cleanup",function(a){var s=a.context,c=s.dragGroup;c&&Ut(c)})}qy.$inject=["canvas","eventBus","graphicsFactory","previewSupport","styles"];const Sc={__depends__:[ji,Lo,Ei,ti],__init__:["create","createPreview"],create:["type",Wy],createPreview:["type",qy]};function Yp(e){var t=this;this._lastMoveEvent=null;function n(i){t._lastMoveEvent=i}e.on("canvas.init",function(i){var r=t._svg=i.svg;r.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||iT(0,0)};function iT(e,t){var n=document.createEvent("MouseEvent"),i=e,r=t,o=e,a=t;return n.initMouseEvent&&n.initMouseEvent("mousemove",!0,!0,window,0,i,r,o,a,!1,!1,!1,!1,0,null),n}const Ra={__init__:["mouse"],mouse:["type",Yp]};var Ky=2e3;function In(e,t,n,i,r,o,a,s){this._canvas=e,this._create=t,this._elementFactory=i,this._eventBus=r,this._modeling=o,this._mouse=a,this._rules=s,r.on("copyPaste.copyElement",function(c){var u=c.descriptor,l=c.element,p=c.elementsSet;u.priority=1,u.id=l.id,p.has(l.parent)&&(u.parent=l.parent.id),rT(l)&&(u.priority=2,u.host=l.host.id),pt(l)&&(u.priority=3,u.source=l.source.id,u.target=l.target.id,u.waypoints=oT(l)),Ge(l)&&(u.priority=4,u.labelTarget=l.labelTarget.id),F(["x","y","width","height"],function(f){Be(l[f])&&(u[f]=l[f])}),u.hidden=l.hidden,u.collapsed=l.collapsed}),r.on("copyPaste.elementsCopied",Ky,function(c){var u;((u=c.hints)==null?void 0:u.clip)!==!1&&n.set(c.tree)}),r.on("copyPaste.pasteElements",Ky,function(c){c.tree||(c.tree=n.get())}),r.on("copyPaste.pasteElements",function(c){var u=c.hints;V(u,{createElementsBehavior:!1})})}In.$inject=["canvas","create","clipboard","elementFactory","eventBus","modeling","mouse","rules"],In.prototype.copy=function(e,t={}){var n,i;return De(e)||(e=e?[e]:[]),n=this._eventBus.fire("copyPaste.canCopyElements",{elements:e}),n===!1?i={}:i=this.createTree(De(n)?n:e),this._eventBus.fire("copyPaste.elementsCopied",{elements:e,tree:i,hints:t}),i},In.prototype.paste=function(e={}){var t=this._eventBus.createEvent({type:"copyPaste.pasteElements",hints:{},...e}),n=this._eventBus.fire(t);if(n!==!1){var i=t.tree;if(i){var r=t.hints,o=this._createElements(i);if(t.element&&t.point)return this._paste(o,t.element,t.point,r);this._create.start(this._mouse.getLastMoveEvent(),o,{hints:r})}}},In.prototype.duplicate=function(e,t={}){var n=this.copy(e,{clip:!1});return this.paste({...t,tree:n})},In.prototype.cut=function(e){var t=this.copy(e),n=this._getElementIdsFromTree(t),i=e.filter(function(r){return n[r.id]});return i.length>0&&this._modeling.removeElements(i),t},In.prototype._getElementIdsFromTree=function(e){var t={};return F(e,function(n){F(n,function(i){i.id&&(t[i.id]=!0)})}),t},In.prototype._paste=function(e,t,n,i){F(e,function(o){Be(o.x)||(o.x=0),Be(o.y)||(o.y=0)});var r=Bt(e);return F(e,function(o){pt(o)&&(o.waypoints=pn(o.waypoints,function(a){return{x:a.x-r.x-r.width/2,y:a.y-r.y-r.height/2}})),V(o,{x:o.x-r.x-r.width/2,y:o.y-r.y-r.height/2})}),this._modeling.createElements(e,n,t,V({},i))},In.prototype._createElements=function(e){var t=this,n=this._eventBus,i={},r=[];return F(e,function(o,a){o=fi(o,"priority"),F(o,function(s){var c=V({},di(s,["priority"]));i[s.parent]?c.parent=i[s.parent]:delete c.parent,n.fire("copyPaste.pasteElement",{cache:i,descriptor:c});var u;if(pt(c)){c.source=i[s.source],c.target=i[s.target],u=i[s.id]=t.createConnection(c),r.push(u);return}if(Ge(c)){c.labelTarget=i[c.labelTarget],u=i[s.id]=t.createLabel(c),r.push(u);return}c.host&&(c.host=i[c.host]),u=i[s.id]=t.createShape(c),r.push(u)})}),r},In.prototype.createConnection=function(e){var t=this._elementFactory.createConnection(di(e,["id"]));return t},In.prototype.createLabel=function(e){var t=this._elementFactory.createLabel(di(e,["id"]));return t},In.prototype.createShape=function(e){var t=this._elementFactory.createShape(di(e,["id"]));return t},In.prototype.hasRelations=function(e,t,n){return n||(n=new Set(t)),!(pt(e)&&(!n.has(e.source)||!n.has(e.target))||Ge(e)&&!n.has(e.labelTarget))},In.prototype.createTree=function(e){var t=this._rules,n=this,i={},r=[],o=new Map,a=Bs(e);function s(p,f){return t.allowed("element.copy",{element:p,elements:f})}function c(p,f){var d=o.get(p);if(!d){var m={element:p,depth:f};r.push(m),o.set(p,m);return}if(d.depth<f){r=u(d,r);var h={element:d.element,depth:f};r.push(h),o.set(p,h)}}function u(p,f){var d=f.indexOf(p);return d!==-1&&f.splice(d,1),f}Br(a,function(p,f,d){if(Ge(p))return;F(p.labels,function(y){c(y,d)});function m(y){y&&y.length&&F(y,function(g){F(g.labels,function(v){c(v,d)}),c(g,d)})}F([p.attachers,p.incoming,p.outgoing],m),c(p,d);var h=[];return p.children&&(h=p.children.slice()),n._eventBus.fire("copyPaste.createTree",{element:p,children:h}),h}),e=pn(r,function(p){return p.element});var l=new Set(e);return r=pn(r,function(p){return p.descriptor={},n._eventBus.fire("copyPaste.copyElement",{descriptor:p.descriptor,element:p.element,elements:e,elementsSet:l}),p}),r=fi(r,function(p){return p.descriptor.priority}),e=pn(r,function(p){return p.element}),F(r,function(p){var f=p.depth;if(!n.hasRelations(p.element,e,l)){Zy(p.element,e),l.delete(p.element);return}if(!s(p.element,e)){Zy(p.element,e),l.delete(p.element);return}i[f]||(i[f]=[]),i[f].push(p.descriptor)}),i};function rT(e){return!!e.host}function oT(e){return pn(e.waypoints,function(t){return t=Xy(t),t.original&&(t.original=Xy(t.original)),t})}function Xy(e){return V({},e)}function Zy(e,t){var n=t.indexOf(e);return n===-1?t:t.splice(n,1)}const aT={__depends__:[CA,Sc,Ra,Ei],__init__:["copyPaste"],copyPaste:["type",In]};function qp(e,t,n){De(n)||(n=[n]),F(n,function(i){Tr(e[i])||(t[i]=e[i])})}var Kp=750;function Qy(e,t,n){function i(c,u){var l=e.create(c.$type);return n.copyElement(c,l,null,u)}t.on("copyPaste.copyElement",Kp,function(c){var u=c.descriptor,l=c.element,p=te(l);if(Ge(l))return u;var f=u.businessObject=i(p,!0),d=u.di=i(Je(l),!0);d.bpmnElement=f,qp(f,u,"name"),qp(d,u,"isExpanded"),p.default&&(u.default=p.default.id)});var r="-bpmn-js-refs";function o(c){return c[r]=c[r]||{}}function a(c,u){c[r]=u}function s(c,u,l){var p=te(c);return c.default&&(l[c.default]={element:p,property:"default"}),c.host&&(te(c).attachedToRef=te(u[c.host])),di(l,Tn(l,function(f,d,m){var h=d.element,y=d.property;return m===c.id&&(h.set(y,p),f.push(c.id)),f},[]))}t.on("copyPaste.pasteElement",function(c){var u=c.cache,l=c.descriptor,p=l.businessObject,f=l.di;if(Ge(l)){l.businessObject=te(u[l.labelTarget]),l.di=Je(u[l.labelTarget]);return}p=l.businessObject=i(p),f=l.di=i(f),f.bpmnElement=p,qp(l,p,["isExpanded","name"]),l.type=p.$type}),t.on("copyPaste.copyElement",Kp,function(c){var u=c.descriptor,l=c.element;if(S(l,"bpmn:Participant")){var p=te(l);p.processRef&&(u.processRef=i(p.processRef,!0))}}),t.on("copyPaste.pasteElement",function(c){var u=c.descriptor,l=u.processRef;l&&(u.processRef=i(l))}),t.on("copyPaste.createTree",function(c){var u=c.element,l=c.children;S(u,"bpmn:SubProcess")&&F(fa(l),p=>{l.push(p.annotation)})}),t.on("copyPaste.pasteElement",Kp,function(c){var u=c.cache,l=c.descriptor;a(u,s(l,u,o(u)))})}Qy.$inject=["bpmnFactory","eventBus","moddleCopy"];const sT=["artifacts","dataInputAssociations","dataOutputAssociations","default","flowElements","lanes","incoming","outgoing","categoryValue"],cT=["errorRef","escalationRef","messageRef","signalRef","dataObjectRef"];function Ca(e,t,n){this._bpmnFactory=t,this._eventBus=e,this._moddle=n,e.on("moddleCopy.canCopyProperties",i=>{const{propertyNames:r}=i;if(!(!r||!r.length))return fi(r,o=>o==="extensionElements")}),e.on("moddleCopy.canCopyProperty",i=>{const{parent:r,property:o,propertyName:a}=i,s=Xt(r)&&r.$descriptor;if(a&&cT.includes(a))return o;if(a&&sT.includes(a)||a&&s&&!ht(s.properties,oo({name:a})))return!1}),e.on("moddleCopy.canSetCopiedProperty",i=>{const{property:r}=i;if(S(r,"bpmn:ExtensionElements")&&(!r.values||!r.values.length))return!1})}Ca.$inject=["eventBus","bpmnFactory","moddle"],Ca.prototype.copyElement=function(e,t,n,i=!1){n&&!De(n)&&(n=[n]),n=n||Xp(e.$descriptor);const r=this._eventBus.fire("moddleCopy.canCopyProperties",{propertyNames:n,sourceElement:e,targetElement:t,clone:i});return r===!1||(De(r)&&(n=r),F(n,o=>{let a;An(e,o)&&(a=e.get(o));const s=this.copyProperty(a,t,o,i);!Vt(s)||this._eventBus.fire("moddleCopy.canSetCopiedProperty",{parent:t,property:s,propertyName:o})===!1||t.set(o,s)})),t},Ca.prototype.copyProperty=function(e,t,n,i=!1){let r=this._eventBus.fire("moddleCopy.canCopyProperty",{parent:t,property:e,propertyName:n,clone:i});if(r===!1)return;if(r)return Xt(r)&&r.$type&&!r.$parent&&(r.$parent=t),r;const o=this._moddle.getPropertyDescriptor(t,n);if(!o.isReference)return o.isId?e&&this._copyId(e,t,i):De(e)?Tn(e,(a,s)=>{const c=this.copyProperty(s,t,n,i);return c?a.concat(c):a},[]):Xt(e)&&e.$type?this._moddle.getElementDescriptor(e).isGeneric?void 0:(r=this._bpmnFactory.create(e.$type),r.$parent=t,r=this.copyElement(e,r,null,i),r):e},Ca.prototype._copyId=function(e,t,n=!1){if(n)return e;if(!this._moddle.ids.assigned(e))return this._moddle.ids.claim(e,t),e};function Xp(e,t){return Tn(e.properties,(n,i)=>t&&i.default?n:n.concat(i.name),[])}const Jy={__depends__:[aT],__init__:["bpmnCopyPaste","moddleCopy"],bpmnCopyPaste:["type",Qy],moddleCopy:["type",Ca]};var ev=Math.round;function Zp(e,t){this._modeling=e,this._eventBus=t}Zp.$inject=["modeling","eventBus"],Zp.prototype.replaceElement=function(e,t,n){if(e.waypoints)return null;var i=this._modeling,r=this._eventBus;r.fire("replace.start",{element:e,attrs:t,hints:n});var o=t.width||e.width,a=t.height||e.height,s=t.x||e.x,c=t.y||e.y,u=ev(s+o/2),l=ev(c+a/2),p=i.replaceShape(e,V({},t,{x:u,y:l,width:o,height:a}),n);return r.fire("replace.end",{element:e,newElement:p,hints:n}),p};function tv(e,t){t.on("replace.end",500,function(n){const{newElement:i,hints:r={}}=n;r.select!==!1&&e.select(i)})}tv.$inject=["selection","eventBus"];const uT={__init__:["replace","replaceSelectionBehavior"],replaceSelectionBehavior:["type",tv],replace:["type",Zp]};function lT(e,t,n){De(n)||(n=[n]),F(n,function(i){Tr(e[i])||(t[i]=e[i])})}var pT=["cancelActivity","instantiate","eventGatewayType","triggeredByEvent","isInterrupting"];function fT(e,t){var n=e&&An(e,"collapsed")?e.collapsed:!Xe(e),i;return t&&(An(t,"collapsed")||An(t,"isExpanded"))?i=An(t,"collapsed")?t.collapsed:!t.isExpanded:i=n,n!==i}function nv(e,t,n,i,r,o){function a(s,c,u){u=u||{};var l=c.type,p=s.businessObject;if(Rc(p)&&(l==="bpmn:SubProcess"||l==="bpmn:AdHocSubProcess")&&fT(s,c))return i.toggleCollapse(s),s;var f=e.create(l),d={type:l,businessObject:f};d.di={},l==="bpmn:ExclusiveGateway"&&(d.di.isMarkerVisible=!0),lT(s.di,d.di,["fill","stroke","background-color","border-color","color"]);var m=Xp(p.$descriptor),h=Xp(f.$descriptor,!0),y=dT(m,h);V(f,ci(c,pT));var g=Ye(y,function(x){return x==="eventDefinitions"?iv(s,c.eventDefinitionType):x==="loopCharacteristics"?!gn(f):An(f,x)||x==="processRef"&&c.isExpanded===!1||x==="triggeredByEvent"?!1:x==="isForCompensation"?!gn(f):!0});if(f=n.copyElement(p,f,g),c.eventDefinitionType&&(iv(f,c.eventDefinitionType)||(d.eventDefinitionType=c.eventDefinitionType,d.eventDefinitionAttrs=c.eventDefinitionAttrs)),S(p,"bpmn:Activity")){if(Rc(p))d.isExpanded=Xe(s);else if(c&&An(c,"isExpanded")){d.isExpanded=c.isExpanded;var v=t.getDefaultSize(f,{isExpanded:d.isExpanded});d.width=v.width,d.height=v.height,d.x=s.x-(d.width-s.width)/2,d.y=s.y-(d.height-s.height)/2}Xe(s)&&!S(p,"bpmn:Task")&&d.isExpanded&&(d.width=s.width,d.height=s.height)}if(Rc(p)&&!Rc(f)&&(u.moveChildren=!1),S(p,"bpmn:Participant")){c.isExpanded===!0?f.processRef=e.create("bpmn:Process"):u.moveChildren=!1;var b=Jt(s);Je(s).isHorizontal||(Je(d).isHorizontal=b),d.width=b?s.width:t.getDefaultSize(d).width,d.height=b?t.getDefaultSize(d).height:s.height}return o.allowed("shape.resize",{shape:f})||(d.height=t.getDefaultSize(d).height,d.width=t.getDefaultSize(d).width),f.name=p.name,We(p,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&We(f,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&(f.default=p.default),c.host&&!S(p,"bpmn:BoundaryEvent")&&S(f,"bpmn:BoundaryEvent")&&(d.host=c.host),(d.type==="bpmn:DataStoreReference"||d.type==="bpmn:DataObjectReference")&&(d.x=s.x+(s.width-d.width)/2),r.replaceElement(s,d,{...u,targetElement:c})}this.replaceElement=a}nv.$inject=["bpmnFactory","elementFactory","moddleCopy","modeling","replace","rules"];function Rc(e){return S(e,"bpmn:SubProcess")}function iv(e,t){var n=te(e);return t&&n.get("eventDefinitions").some(function(i){return S(i,t)})}function dT(e,t){return e.filter(function(n){return t.includes(n)})}const rv={__depends__:[Jy,uT,ti],bpmnReplace:["type",nv]};var hT=250;function Gr(e){this._eventBus=e,this._tools=[],this._active=null}Gr.$inject=["eventBus"],Gr.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)},Gr.prototype.isActive=function(e){return e&&this._active===e},Gr.prototype.length=function(e){return this._tools.length},Gr.prototype.setActive=function(e){var t=this._eventBus;this._active!==e&&(this._active=e,t.fire("tool-manager.update",{tool:e}))},Gr.prototype.bindEvents=function(e,t){var n=this._eventBus,i=[];n.on(t.tool+".init",function(r){var o=r.context;if(!o.reactivate&&this.isActive(e)){this.setActive(null);return}this.setActive(e)},this),F(t,function(r){i.push(r+".ended"),i.push(r+".canceled")}),n.on(i,hT,function(r){this._active&&(mT(r)||this.setActive(null))},this)};function mT(e){var t=e.originalEvent&&e.originalEvent.target;return t&&Lr(t,'.group[data-group="tools"]')}const Cc={__depends__:[ji],__init__:["toolManager"],toolManager:["type",Gr]};function gT(e,t){if(e==="x"){if(t>0)return"e";if(t<0)return"w"}if(e==="y"){if(t>0)return"s";if(t<0)return"n"}return null}function yT(e,t){var n=[],i=new Set(e);F(t,function(o){i.add(o)});var r=new Set;return i.forEach(function(o){var a=o.incoming,s=o.outgoing;F(a.concat(s),function(c){var u=c.source,l=c.target;(i.has(u)||i.has(l))&&(r.has(c)||(r.add(c),n.push(c)))})}),n}function vT(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)}}var Qp=Math.abs,bT=Math.round,Hi={x:"width",y:"height"},ov="crosshair",fr={n:"top",w:"left",s:"bottom",e:"right"},xT=1500,Pc={n:"s",w:"e",s:"n",e:"w"},Ac=20;function ni(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(c){n.once("spaceTool.selection.ended",function(){s.activateMakeSpace(c.originalEvent)})}),n.on("spaceTool.move",xT,function(c){var u=c.context,l=u.initialized;l||(l=u.initialized=s.init(c,u)),l&&sv(c)}),n.on("spaceTool.end",function(c){var u=c.context,l=u.axis,p=u.direction,f=u.movingShapes,d=u.resizingShapes,m=u.start;if(u.initialized){sv(c);var h={x:0,y:0};h[l]=bT(c["d"+l]),s.makeSpace(f,d,h,p,m),n.once("spaceTool.ended",function(y){s.activateSelection(y.originalEvent,!0,!0)})}})}ni.$inject=["canvas","dragging","eventBus","modeling","rules","toolManager","mouse"],ni.prototype.activateSelection=function(e,t,n){this._dragging.init(e,"spaceTool.selection",{autoActivate:t,cursor:ov,data:{context:{reactivate:n}},trapClick:!1})},ni.prototype.activateMakeSpace=function(e){this._dragging.init(e,"spaceTool",{autoActivate:!0,cursor:ov,data:{context:{}}})},ni.prototype.makeSpace=function(e,t,n,i,r){return this._modeling.createSpace(e,t,n,i,r)},ni.prototype.init=function(e,t){var n=Qp(e.dx)>Qp(e.dy)?"x":"y",i=e["d"+n],r=e[n]-i;if(Qp(i)<5)return!1;i<0&&(i*=-1),wa(e)&&(i*=-1);var o=gT(n,i),a=this._canvas.getRootElement();!mc(e)&&e.hover&&(a=e.hover);var s=[...aa(a),...a.attachers||[]],c=this.calculateAdjustments(s,n,i,r),u=this._eventBus.fire("spaceTool.getMinDimensions",{axis:n,direction:o,shapes:c.resizingShapes,start:r}),l=_T(c,n,o,r,u);return V(t,c,{axis:n,direction:o,spaceToolConstraints:l,start:r}),Ec("resize-"+(n==="x"?"ew":"ns")),!0},ni.prototype.calculateAdjustments=function(e,t,n,i){var r=this._rules,o=[],a=[],s=new Set,c=new Set,u=[],l=[];function p(d){s.has(d)||(s.add(d),o.push(d));var m=d.label;m&&!s.has(m)&&(s.add(m),o.push(m))}function f(d){c.has(d)||(c.add(d),a.push(d))}return F(e,function(d){if(!(!d.parent||Ge(d))){if(pt(d)){l.push(d);return}var m=d[t],h=m+d[Hi[t]];if(wT(d)&&(n>0&&Le(d)[t]>i||n<0&&Le(d)[t]<i)){u.push(d);return}if(n>0&&m>i||n<0&&h<i){p(d);return}if(m<i&&h>i&&r.allowed("shape.resize",{shape:d})){f(d);return}}}),F(o,function(d){var m=d.attachers;m&&F(m,function(h){p(h)})}),F(u,function(d){var m=d.host;(s.has(m)||c.has(m))&&p(d)}),F(l,function(d){var m=d.source,h=d.target,y=d.label;(s.has(m)||c.has(m))&&(s.has(h)||c.has(h))&&y&&p(y)}),{movingShapes:o,resizingShapes:a}},ni.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},ni.prototype.isActive=function(){var e=this._dragging.context();return e?/^spaceTool/.test(e.prefix):!1};function av(e){return{top:e.top-Ac,right:e.right+Ac,bottom:e.bottom+Ac,left:e.left-Ac}}function sv(e){var t=e.context,n=t.spaceToolConstraints;if(n){var i,r;Be(n.left)&&(i=Math.max(e.x,n.left),e.dx=e.dx+i-e.x,e.x=i),Be(n.right)&&(i=Math.min(e.x,n.right),e.dx=e.dx+i-e.x,e.x=i),Be(n.top)&&(r=Math.max(e.y,n.top),e.dy=e.dy+r-e.y,e.y=r),Be(n.bottom)&&(r=Math.min(e.y,n.bottom),e.dy=e.dy+r-e.y,e.y=r)}}function _T(e,t,n,i,r){var o=e.movingShapes,a=e.resizingShapes;if(a.length){var s={},c,u,l=new Set(o),p=new Set(a);return F(a,function(f){var d=f.attachers,m=f.children,h=ke(f),y=Ye(m,function(z){return!pt(z)&&!Ge(z)&&!l.has(z)&&!p.has(z)}),g=Ye(m,function(z){return!pt(z)&&!Ge(z)&&l.has(z)}),v,b,x,C=[],T=[],k,A,I,D;y.length&&(b=av(ke(Bt(y))),v=i-h[fr[n]]+b[fr[n]],n==="n"?s.bottom=u=Be(u)?Math.min(u,v):v:n==="w"?s.right=u=Be(u)?Math.min(u,v):v:n==="s"?s.top=c=Be(c)?Math.max(c,v):v:n==="e"&&(s.left=c=Be(c)?Math.max(c,v):v)),g.length&&(x=av(ke(Bt(g))),v=i-x[fr[Pc[n]]]+h[fr[Pc[n]]],n==="n"?s.bottom=u=Be(u)?Math.min(u,v):v:n==="w"?s.right=u=Be(u)?Math.min(u,v):v:n==="s"?s.top=c=Be(c)?Math.max(c,v):v:n==="e"&&(s.left=c=Be(c)?Math.max(c,v):v)),d&&d.length&&(d.forEach(function(z){l.has(z)?C.push(z):T.push(z)}),C.length&&(k=ke(Bt(C.map(Le))),A=h[fr[Pc[n]]]-(k[fr[Pc[n]]]-i)),T.length&&(I=ke(Bt(T.map(Le))),D=I[fr[n]]-(h[fr[n]]-i)),n==="n"?(v=Math.min(A||1/0,D||1/0),s.bottom=u=Be(u)?Math.min(u,v):v):n==="w"?(v=Math.min(A||1/0,D||1/0),s.right=u=Be(u)?Math.min(u,v):v):n==="s"?(v=Math.max(A||-1/0,D||-1/0),s.top=c=Be(c)?Math.max(c,v):v):n==="e"&&(v=Math.max(A||-1/0,D||-1/0),s.left=c=Be(c)?Math.max(c,v):v));var L=r&&r[f.id];L&&(n==="n"?(v=i+f[Hi[t]]-L[Hi[t]],s.bottom=u=Be(u)?Math.min(u,v):v):n==="w"?(v=i+f[Hi[t]]-L[Hi[t]],s.right=u=Be(u)?Math.min(u,v):v):n==="s"?(v=i-f[Hi[t]]+L[Hi[t]],s.top=c=Be(c)?Math.max(c,v):v):n==="e"&&(v=i-f[Hi[t]]+L[Hi[t]],s.left=c=Be(c)?Math.max(c,v):v))}),s}}function wT(e){return!!e.host}var Jp="djs-dragging",cv="djs-resizing",ET=250,Tc=Math.max;function uv(e,t,n,i,r){function o(a,s){F(a,function(c){r.addDragger(c,s),n.addMarker(c,Jp)})}e.on("spaceTool.selection.start",function(a){var s=n.getLayer("space"),c=a.context,u={x:"M 0,-10000 L 0,10000",y:"M -10000,0 L 10000,0"},l=Ae("g");ve(l,i.cls("djs-crosshair-group",["no-events"])),$e(s,l);var p=Ae("path");ve(p,"d",u.x),Qe(p).add("djs-crosshair"),$e(l,p);var f=Ae("path");ve(f,"d",u.y),Qe(f).add("djs-crosshair"),$e(l,f),c.crosshairGroup=l}),e.on("spaceTool.selection.move",function(a){var s=a.context.crosshairGroup;sn(s,a.x,a.y)}),e.on("spaceTool.selection.cleanup",function(a){var s=a.context,c=s.crosshairGroup;c&&Ut(c)}),e.on("spaceTool.move",ET,function(a){var s=a.context,c=s.line,u=s.axis,l=s.movingShapes,p=s.resizingShapes;if(s.initialized){if(!s.dragGroup){var f=n.getLayer("space");c=Ae("path"),ve(c,"d","M0,0 L0,0"),Qe(c).add("djs-crosshair"),$e(f,c),s.line=c;var d=Ae("g");ve(d,i.cls("djs-drag-group",["no-events"])),$e(n.getActiveLayer(),d),o(l,d);var m=new Set(l);F(p,function(T){m.add(T)});var h=new Set,y=s.movingConnections=[];m.forEach(function(T){F(T.outgoing,function(k){h.has(k)||!pt(k)||!m.has(k.target)||(h.add(k),y.push(k))})}),o(y,d),s.dragGroup=d}if(!s.frameGroup){var g=Ae("g");ve(g,i.cls("djs-frame-group",["no-events"])),$e(n.getActiveLayer(),g);var v=[];F(p,function(T){var k=r.addFrame(T,g),A=k.getBBox();v.push({element:k,initialBounds:A}),n.addMarker(T,cv)}),s.frameGroup=g,s.frames=v}var b={x:"M"+a.x+", -10000 L"+a.x+", 10000",y:"M -10000, "+a.y+" L 10000, "+a.y};ve(c,{d:b[u]});var x={x:"y",y:"x"},C={x:a.dx,y:a.dy};C[x[s.axis]]=0,sn(s.dragGroup,C.x,C.y),F(s.frames,function(T){var k=T.element,A=T.initialBounds,I,D;s.direction==="e"?ve(k,{width:Tc(A.width+C.x,5)}):(I=Tc(A.width-C.x,5),ve(k,{width:I,x:A.x+A.width-I})),s.direction==="s"?ve(k,{height:Tc(A.height+C.y,5)}):(D=Tc(A.height-C.y,5),ve(k,{height:D,y:A.y+A.height-D}))})}}),e.on("spaceTool.cleanup",function(a){var s=a.context,c=s.movingShapes,u=s.movingConnections,l=s.resizingShapes,p=s.line,f=s.dragGroup,d=s.frameGroup;F(c,function(m){n.removeMarker(m,Jp)}),F(u,function(m){n.removeMarker(m,Jp)}),f&&(Ut(p),Ut(f)),F(l,function(m){n.removeMarker(m,cv)}),d&&Ut(d)})}uv.$inject=["eventBus","elementRegistry","canvas","styles","previewSupport"];const ST={__init__:["spaceToolPreview"],__depends__:[ji,Ei,Cc,Lo,Ra],spaceTool:["type",ni],spaceToolPreview:["type",uv]};function Mc(e,t){e.invoke(ni,this),this._canvas=t}Mc.$inject=["injector","canvas"],ye(Mc,ni),Mc.prototype.calculateAdjustments=function(e,t,n,i){var r=this._canvas.getRootElement(),o=e[0]===r?null:e[0],a=[];o&&(a=io(go(r.children.filter(u=>S(u,"bpmn:Artifact")),Bt(o))));const s=[...e,...a];var c=ni.prototype.calculateAdjustments.call(this,s,t,n,i);return c.resizingShapes=c.resizingShapes.filter(function(u){return!(S(u,"bpmn:TextAnnotation")||RT(u)&&(t==="y"&&Jt(u)||t==="x"&&!Jt(u)))}),c};function RT(e){return S(e,"bpmn:Participant")&&!te(e).processRef}const lv={__depends__:[ST],spaceTool:["type",Mc]};function Rt(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)}Rt.$inject=["eventBus","injector"],Rt.prototype.execute=function(e,t){if(!e)throw new Error("command required");this._currentExecution.trigger="execute";const n={command:e,context:t};this._pushAction(n),this._internalExecute(n),this._popAction()},Rt.prototype.canExecute=function(e,t){const n={command:e,context:t},i=this._getHandler(e);let r=this._fire(e,"canExecute",n);if(r===void 0){if(!i)return!1;i.canExecute&&(r=i.canExecute(t))}return r},Rt.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,e!==!1&&this._fire("changed",{trigger:"clear"})},Rt.prototype.undo=function(){let e=this._getUndoAction(),t;if(e){for(this._currentExecution.trigger="undo",this._pushAction(e);e&&(this._internalUndo(e),t=this._getUndoAction(),!(!t||t.id!==e.id));)e=t;this._popAction()}},Rt.prototype.redo=function(){let e=this._getRedoAction(),t;if(e){for(this._currentExecution.trigger="redo",this._pushAction(e);e&&(this._internalExecute(e,!0),t=this._getRedoAction(),!(!t||t.id!==e.id));)e=t;this._popAction()}},Rt.prototype.register=function(e,t){this._setHandler(e,t)},Rt.prototype.registerHandler=function(e,t){if(!e||!t)throw new Error("command and handlerCls must be defined");const n=this._injector.instantiate(t);this.register(e,n)},Rt.prototype.canUndo=function(){return!!this._getUndoAction()},Rt.prototype.canRedo=function(){return!!this._getRedoAction()},Rt.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},Rt.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},Rt.prototype._internalUndo=function(e){const t=e.command,n=e.context,i=this._getHandler(t);this._atomicDo(()=>{this._fire(t,"revert",e),i.revert&&this._markDirty(i.revert(n)),this._revertedAction(e),this._fire(t,"reverted",e)})},Rt.prototype._fire=function(e,t,n){arguments.length<3&&(n=t,t=null);const i=t?[e+"."+t,t]:[e];let r;n=this._eventBus.createEvent(n);for(const o of i)if(r=this._eventBus.fire("commandStack."+o,n),n.cancelBubble)break;return r},Rt.prototype._createId=function(){return this._uid++},Rt.prototype._atomicDo=function(e){const t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},Rt.prototype._internalExecute=function(e,t){const n=e.command,i=e.context,r=this._getHandler(n);if(!r)throw new Error("no command handler registered for <"+n+">");this._pushAction(e),t||(this._fire(n,"preExecute",e),r.preExecute&&r.preExecute(i),this._fire(n,"preExecuted",e)),this._atomicDo(()=>{this._fire(n,"execute",e),r.execute&&this._markDirty(r.execute(i)),this._executedAction(e,t),this._fire(n,"executed",e)}),t||(this._fire(n,"postExecute",e),r.postExecute&&r.postExecute(i),this._fire(n,"postExecuted",e)),this._popAction()},Rt.prototype._pushAction=function(e){const t=this._currentExecution,n=t.actions,i=n[0];if(t.atomic)throw new Error("illegal invocation in <execute> or <revert> phase (action: "+e.command+")");e.id||(e.id=i&&i.id||this._createId()),n.push(e)},Rt.prototype._popAction=function(){const e=this._currentExecution,t=e.trigger,n=e.actions,i=e.dirty;n.pop(),n.length||(this._eventBus.fire("elements.changed",{elements:Rd("id",i.reverse())}),i.length=0,this._fire("changed",{trigger:t}),e.trigger=null)},Rt.prototype._markDirty=function(e){const t=this._currentExecution;e&&(e=De(e)?e:[e],t.dirty=t.dirty.concat(e))},Rt.prototype._executedAction=function(e,t){const n=++this._stackIdx;t||this._stack.splice(n,this._stack.length,e)},Rt.prototype._revertedAction=function(e){this._stackIdx--},Rt.prototype._getHandler=function(e){return this._handlerMap[e]},Rt.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};const CT={commandStack:["type",Rt]};function dr(e,t){if(typeof t!="function")throw new Error("removeFn iterator must be a function");if(!e)return[];for(var n;n=e[0];)t(n);return e}var PT=250,pv=1400;function ef(e,t,n){J.call(this,t);var i=e.get("movePreview",!1);t.on("shape.move.start",pv,function(r){var o=r.context,a=o.shapes,s=o.validatedShapes;o.shapes=fv(a),o.validatedShapes=fv(s)}),i&&t.on("shape.move.start",PT,function(r){var o=r.context,a=new Set(o.shapes),s=new Set;for(const c of a)for(const u of c.labels)!u.hidden&&!a.has(u)&&s.add(u),c.labelTarget&&s.add(c);for(const c of s)i.makeDraggable(o,c,!0)}),this.preExecuted("elements.move",pv,function(r){var o=r.context,a=o.closure,s=a.enclosedElements,c=[];F(s,function(u){F(u.labels,function(l){s[l.id]||c.push(l)})}),a.addAll(c)}),this.preExecute(["connection.delete","shape.delete"],function(r){var o=r.context,a=o.connection||o.shape;dr(a.labels,function(s){n.removeShape(s,{nested:!0})})}),this.execute("shape.delete",function(r){var o=r.context,a=o.shape,s=a.labelTarget;s&&(o.labelTargetIndex=Dl(s.labels,a),o.labelTarget=s,a.labelTarget=null)}),this.revert("shape.delete",function(r){var o=r.context,a=o.shape,s=o.labelTarget,c=o.labelTargetIndex;s&&(Ot(s.labels,a,c),a.labelTarget=s)})}ye(ef,J),ef.$inject=["injector","eventBus","modeling"];function fv(e){var t=new Set(e);return Ye(e,function(n){return!t.has(n.labelTarget)})}const AT={__init__:["labelSupport"],labelSupport:["type",ef]};var TT=251,dv=1401,hv="attach-ok";function tf(e,t,n,i,r){J.call(this,t);var o=e.get("movePreview",!1);t.on("shape.move.start",dv,function(a){var s=a.context,c=s.shapes,u=s.validatedShapes;s.shapes=MT(c),s.validatedShapes=kT(u)}),o&&t.on("shape.move.start",TT,function(a){var s=a.context,c=s.shapes,u=nf(c);F(u,function(l){o.makeDraggable(s,l,!0),F(l.labels,function(p){o.makeDraggable(s,p,!0)})})}),o&&t.on("shape.move.start",function(a){var s=a.context,c=s.shapes;if(c.length===1){var u=c[0],l=u.host;l&&(n.addMarker(l,hv),t.once(["shape.move.out","shape.move.cleanup"],function(){n.removeMarker(l,hv)}))}}),this.preExecuted("elements.move",dv,function(a){var s=a.context,c=s.closure,u=s.shapes,l=nf(u);F(l,function(p){c.add(p,c.topLevel[p.host.id])})}),this.postExecuted("elements.move",function(a){var s=a.context,c=s.shapes,u=s.newHost,l;u&&c.length!==1||(u?l=c:l=Ye(c,function(p){var f=p.host;return OT(p)&&!DT(c,f)}),F(l,function(p){r.updateAttachment(p,u)}))}),this.postExecuted("elements.move",function(a){var s=a.context.shapes;F(s,function(c){F(c.attachers,function(u){F(u.outgoing.slice(),function(l){var p=i.allowed("connection.reconnect",{connection:l,source:l.source,target:l.target});p||r.removeConnection(l)}),F(u.incoming.slice(),function(l){var p=i.allowed("connection.reconnect",{connection:l,source:l.source,target:l.target});p||r.removeConnection(l)})})})}),this.postExecute("shape.create",function(a){var s=a.context,c=s.shape,u=s.host;u&&r.updateAttachment(c,u)}),this.postExecute("shape.replace",function(a){var s=a.context,c=s.oldShape,u=s.newShape;dr(c.attachers,function(l){var p=i.allowed("elements.move",{target:u,shapes:[l]});p==="attach"?r.updateAttachment(l,u):r.removeShape(l)}),u.attachers.length&&F(u.attachers,function(l){var p=Og(l,c,u);r.moveShape(l,p,l.parent)})}),this.postExecute("shape.resize",function(a){var s=a.context,c=s.shape,u=s.oldBounds,l=s.newBounds,p=c.attachers,f=s.hints||{};f.attachSupport!==!1&&F(p,function(d){var m=Og(d,u,l);r.moveShape(d,m,d.parent),F(d.labels,function(h){r.moveShape(h,m,h.parent)})})}),this.preExecute("shape.delete",function(a){var s=a.context.shape;dr(s.attachers,function(c){r.removeShape(c)}),s.host&&r.updateAttachment(s,null)})}ye(tf,J),tf.$inject=["injector","eventBus","canvas","rules","modeling"];function nf(e){return Gu(pn(e,function(t){return t.attachers||[]}))}function MT(e){var t=nf(e);return sw("id",e,t)}function kT(e){var t=ro(e,"id");return Ye(e,function(n){for(;n;){if(n.host&&t[n.host.id])return!1;n=n.parent}return!0})}function OT(e){return!!e.host}function DT(e,t){return e.indexOf(t)!==-1}const LT={__depends__:[Ei],__init__:["attachSupport"],attachSupport:["type",tf]};function mv(e,t,n,i){e.on("element.changed",function(r){var o=r.element;(o.parent||o===t.getRootElement())&&(r.gfx=n.getGraphics(o)),r.gfx&&e.fire(sm(o)+".changed",r)}),e.on("elements.changed",function(r){var o=r.elements;o.forEach(function(a){e.fire("element.changed",{element:a})}),i.updateContainments(o)}),e.on("shape.changed",function(r){i.update("shape",r.element,r.gfx)}),e.on("connection.changed",function(r){i.update("connection",r.element,r.gfx)})}mv.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];const rf={__init__:["changeSupport"],changeSupport:["type",mv]};function ii(e){this._model=e}ii.$inject=["moddle"],ii.prototype._needsId=function(e){return We(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"])},ii.prototype._ensureId=function(e){if(e.id){this._model.ids.claim(e.id,e);return}var t;S(e,"bpmn:Activity")?t="Activity":S(e,"bpmn:Event")?t="Event":S(e,"bpmn:Gateway")?t="Gateway":We(e,["bpmn:SequenceFlow","bpmn:MessageFlow"])?t="Flow":t=(e.$type||"").replace(/^[^:]*:/g,""),t+="_",!e.id&&this._needsId(e)&&(e.id=this._model.ids.nextPrefixed(t,e))},ii.prototype.create=function(e,t){var n=this._model.create(e,t||{});return this._ensureId(n),n},ii.prototype.createDiLabel=function(){return this.create("bpmndi:BPMNLabel",{bounds:this.createDiBounds()})},ii.prototype.createDiShape=function(e,t){return this.create("bpmndi:BPMNShape",V({bpmnElement:e,bounds:this.createDiBounds()},t))},ii.prototype.createDiBounds=function(e){return this.create("dc:Bounds",e)},ii.prototype.createDiWaypoints=function(e){var t=this;return pn(e,function(n){return t.createDiWaypoint(n)})},ii.prototype.createDiWaypoint=function(e){return this.create("dc:Point",ci(e,["x","y"]))},ii.prototype.createDiEdge=function(e,t){return this.create("bpmndi:BPMNEdge",V({bpmnElement:e,waypoint:this.createDiWaypoints([])},t))},ii.prototype.createDiPlane=function(e,t){return this.create("bpmndi:BPMNPlane",V({bpmnElement:e},t))};function Bn(e,t,n){J.call(this,e),this._bpmnFactory=t;var i=this;function r(d){var m=d.context,h=m.hints||{},y;!m.cropped&&h.createElementsBehavior!==!1&&(y=m.connection,y.waypoints=n.getCroppedWaypoints(y),m.cropped=!0)}this.executed(["connection.layout","connection.create"],r),this.reverted(["connection.layout"],function(d){delete d.context.cropped});function o(d){var m=d.context;i.updateParent(m.shape||m.connection,m.oldParent)}function a(d){var m=d.context,h=m.shape||m.connection,y=m.parent||m.newParent;i.updateParent(h,y)}this.executed(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],Nn(o)),this.reverted(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],Nn(a));function s(d){var m=d.context,h=m.oldRoot,y=h.children;F(y,function(g){S(g,"bpmn:BaseElement")&&i.updateParent(g)})}this.executed(["canvas.updateRoot"],s),this.reverted(["canvas.updateRoot"],s);function c(d){var m=d.context.shape;S(m,"bpmn:BaseElement")&&i.updateBounds(m)}this.executed(["shape.move","shape.create","shape.resize"],Nn(function(d){d.context.shape.type!=="label"&&c(d)})),this.reverted(["shape.move","shape.create","shape.resize"],Nn(function(d){d.context.shape.type!=="label"&&c(d)})),e.on("shape.changed",function(d){d.element.type==="label"&&c({context:{shape:d.element}})});function u(d){i.updateConnection(d.context)}this.executed(["connection.create","connection.move","connection.delete","connection.reconnect"],Nn(u)),this.reverted(["connection.create","connection.move","connection.delete","connection.reconnect"],Nn(u));function l(d){i.updateConnectionWaypoints(d.context.connection)}this.executed(["connection.layout","connection.move","connection.updateWaypoints"],Nn(l)),this.reverted(["connection.layout","connection.move","connection.updateWaypoints"],Nn(l)),this.executed("connection.reconnect",Nn(function(d){var m=d.context,h=m.connection,y=m.oldSource,g=m.newSource,v=te(h),b=te(y),x=te(g);v.conditionExpression&&!We(x,["bpmn:Activity","bpmn:ExclusiveGateway","bpmn:InclusiveGateway"])&&(m.oldConditionExpression=v.conditionExpression,delete v.conditionExpression),y!==g&&b.default===v&&(m.oldDefault=b.default,delete b.default)})),this.reverted("connection.reconnect",Nn(function(d){var m=d.context,h=m.connection,y=m.oldSource,g=m.newSource,v=te(h),b=te(y),x=te(g);m.oldConditionExpression&&(v.conditionExpression=m.oldConditionExpression),m.oldDefault&&(b.default=m.oldDefault,delete x.default)}));function p(d){i.updateAttachment(d.context)}this.executed(["element.updateAttachment"],Nn(p)),this.reverted(["element.updateAttachment"],Nn(p)),this.executed("element.updateLabel",Nn(f)),this.reverted("element.updateLabel",Nn(f));function f(d){const{element:m}=d.context,h=Yn(m),y=Je(m),g=y&&y.get("label");ar(m)||gc(m)||(h&&!g?y.set("label",t.create("bpmndi:BPMNLabel")):!h&&g&&y.set("label",void 0))}}ye(Bn,J),Bn.$inject=["eventBus","bpmnFactory","connectionDocking"],Bn.prototype.updateAttachment=function(e){var t=e.shape,n=t.businessObject,i=t.host;n.attachedToRef=i&&i.businessObject},Bn.prototype.updateParent=function(e,t){if(!Ge(e)&&!(S(e,"bpmn:DataStoreReference")&&e.parent&&S(e.parent,"bpmn:Collaboration"))){var n=e.parent,i=e.businessObject,r=Je(e),o=n&&n.businessObject,a=Je(n);S(e,"bpmn:FlowNode")&&this.updateFlowNodeRefs(i,o,t&&t.businessObject),S(e,"bpmn:DataOutputAssociation")&&(e.source?o=e.source.businessObject:o=null),S(e,"bpmn:DataInputAssociation")&&(e.target?o=e.target.businessObject:o=null),this.updateSemanticParent(i,o),S(e,"bpmn:DataObjectReference")&&i.dataObjectRef&&this.updateSemanticParent(i.dataObjectRef,o),this.updateDiParent(r,a)}},Bn.prototype.updateBounds=function(e){var t=Je(e),n=BT(e);if(n){var i=li(n,t.get("bounds"));V(n,{x:e.x+i.x,y:e.y+i.y})}var r=Ge(e)?this._getLabel(t):t,o=r.bounds;o||(o=this._bpmnFactory.createDiBounds(),r.set("bounds",o)),V(o,{x:e.x,y:e.y,width:e.width,height:e.height})},Bn.prototype.updateFlowNodeRefs=function(e,t,n){if(n!==t){var i,r;S(n,"bpmn:Lane")&&(i=n.get("flowNodeRef"),kt(i,e)),S(t,"bpmn:Lane")&&(r=t.get("flowNodeRef"),Ot(r,e))}},Bn.prototype.updateDiConnection=function(e,t,n){var i=Je(e),r=Je(t),o=Je(n);i.sourceElement&&i.sourceElement.bpmnElement!==te(t)&&(i.sourceElement=t&&r),i.targetElement&&i.targetElement.bpmnElement!==te(n)&&(i.targetElement=n&&o)},Bn.prototype.updateDiParent=function(e,t){if(t&&!S(t,"bpmndi:BPMNPlane")&&(t=t.$parent),e.$parent!==t){var n=(t||e.$parent).get("planeElement");t?(n.push(e),e.$parent=t):(kt(n,e),e.$parent=null)}};function IT(e){for(;e&&!S(e,"bpmn:Definitions");)e=e.$parent;return e}Bn.prototype.getLaneSet=function(e){var t,n;return S(e,"bpmn:Lane")?(t=e.childLaneSet,t||(t=this._bpmnFactory.create("bpmn:LaneSet"),e.childLaneSet=t,t.$parent=e),t):(S(e,"bpmn:Participant")&&(e=e.processRef),n=e.get("laneSets"),t=n[0],t||(t=this._bpmnFactory.create("bpmn:LaneSet"),t.$parent=e,n.push(t)),t)},Bn.prototype.updateSemanticParent=function(e,t,n){var i;if(e.$parent!==t&&!((S(e,"bpmn:DataInput")||S(e,"bpmn:DataOutput"))&&(S(t,"bpmn:Participant")&&"processRef"in t&&(t=t.processRef),"ioSpecification"in t&&t.ioSpecification===e.$parent))){if(S(e,"bpmn:Lane"))t&&(t=this.getLaneSet(t)),i="lanes";else if(S(e,"bpmn:FlowElement")){if(t){if(S(t,"bpmn:Participant"))t=t.processRef;else if(S(t,"bpmn:Lane"))do t=t.$parent.$parent;while(S(t,"bpmn:Lane"))}i="flowElements"}else if(S(e,"bpmn:Artifact")){for(;t&&!S(t,"bpmn:Process")&&!S(t,"bpmn:SubProcess")&&!S(t,"bpmn:Collaboration");)if(S(t,"bpmn:Participant")){t=t.processRef;break}else t=t.$parent;i="artifacts"}else if(S(e,"bpmn:MessageFlow"))i="messageFlows";else if(S(e,"bpmn:Participant")){i="participants";var r=e.processRef,o;r&&(o=IT(e.$parent||t),e.$parent&&(kt(o.get("rootElements"),r),r.$parent=null),t&&(Ot(o.get("rootElements"),r),r.$parent=o))}else S(e,"bpmn:DataOutputAssociation")?i="dataOutputAssociations":S(e,"bpmn:DataInputAssociation")&&(i="dataInputAssociations");if(!i)throw new Error(`no parent for <${e.id}> in <${t.id}>`);var a;if(e.$parent&&(a=e.$parent.get(i),kt(a,e)),t?(a=t.get(i),a.push(e),e.$parent=t):e.$parent=null,n){var s=n.get(i);kt(a,e),t&&(s||(s=[],t.set(i,s)),s.push(e))}}},Bn.prototype.updateConnectionWaypoints=function(e){var t=Je(e);t.set("waypoint",this._bpmnFactory.createDiWaypoints(e.waypoints))},Bn.prototype.updateConnection=function(e){var t=e.connection,n=te(t),i=t.source,r=te(i),o=t.target,a=te(t.target),s;if(S(n,"bpmn:DataAssociation"))S(n,"bpmn:DataInputAssociation")?(n.get("sourceRef")[0]=r,s=e.parent||e.newParent||a,this.updateSemanticParent(n,a,s)):S(n,"bpmn:DataOutputAssociation")&&(s=e.parent||e.newParent||r,this.updateSemanticParent(n,r,s),n.targetRef=a);else{var c=S(n,"bpmn:SequenceFlow");n.sourceRef!==r&&(c&&(kt(n.sourceRef&&n.sourceRef.get("outgoing"),n),r&&r.get("outgoing")&&r.get("outgoing").push(n)),n.sourceRef=r),n.targetRef!==a&&(c&&(kt(n.targetRef&&n.targetRef.get("incoming"),n),a&&a.get("incoming")&&a.get("incoming").push(n)),n.targetRef=a)}this.updateConnectionWaypoints(t),this.updateDiConnection(t,i,o)},Bn.prototype._getLabel=function(e){return e.label||(e.label=this._bpmnFactory.createDiLabel()),e.label};function Nn(e){return function(t){var n=t.context,i=n.shape||n.connection||n.element;S(i,"bpmn:BaseElement")&&e(t)}}function BT(e){if(S(e,"bpmn:Activity")){var t=Je(e);if(t){var n=t.get("label");if(n)return n.get("bounds")}}}function hr(e,t){Bi.call(this),this._bpmnFactory=e,this._moddle=t}ye(hr,Bi),hr.$inject=["bpmnFactory","moddle"],hr.prototype._baseCreate=Bi.prototype.create,hr.prototype.create=function(e,t){if(e==="label"){var n=t.di||this._bpmnFactory.createDiLabel();return this._baseCreate(e,V({type:"label",di:n},$r,t))}return this.createElement(e,t)},hr.prototype.createElement=function(e,t){t=V({},t||{});var n,i=t.businessObject,r=t.di;if(!i){if(!t.type)throw new Error("no shape type specified");i=this._bpmnFactory.create(t.type)}if(!$T(r)){var o=V({},r||{},{id:i.id+"_di"});e==="root"?r=this._bpmnFactory.createDiPlane(i,o):e==="connection"?r=this._bpmnFactory.createDiEdge(i,o):r=this._bpmnFactory.createDiShape(i,o)}S(i,"bpmn:Group")&&(t=V({isFrame:!0},t)),t=NT(i,t,["processRef","isInterrupting","associationDirection","isForCompensation"]),t.isExpanded&&(t=of(r,t,"isExpanded")),We(i,["bpmn:Lane","bpmn:Participant"])&&(t=of(r,t,"isHorizontal")),S(i,"bpmn:SubProcess")&&(t.collapsed=!Xe(i,r)),S(i,"bpmn:ExclusiveGateway")&&(An(r,"isMarkerVisible")?r.isMarkerVisible===void 0&&(r.isMarkerVisible=!1):r.isMarkerVisible=!0),Vt(t.triggeredByEvent)&&(i.triggeredByEvent=t.triggeredByEvent,delete t.triggeredByEvent),Vt(t.cancelActivity)&&(i.cancelActivity=t.cancelActivity,delete t.cancelActivity);var a,s;return t.eventDefinitionType&&(a=i.get("eventDefinitions")||[],s=this._bpmnFactory.create(t.eventDefinitionType,t.eventDefinitionAttrs),t.eventDefinitionType==="bpmn:ConditionalEventDefinition"&&(s.condition=this._bpmnFactory.create("bpmn:FormalExpression")),a.push(s),s.$parent=i,i.eventDefinitions=a,delete t.eventDefinitionType),n=this.getDefaultSize(i,r),t=V({id:i.id},n,t,{businessObject:i,di:r}),this._baseCreate(e,t)},hr.prototype.getDefaultSize=function(e,t){var n=te(e);if(t=t||Je(e),S(n,"bpmn:SubProcess"))return Xe(n,t)?{width:350,height:200}:{width:100,height:80};if(S(n,"bpmn:Task"))return{width:100,height:80};if(S(n,"bpmn:Gateway"))return{width:50,height:50};if(S(n,"bpmn:Event"))return{width:36,height:36};if(S(n,"bpmn:Participant")){var i=t.isHorizontal===void 0||t.isHorizontal===!0;return Xe(n,t)?i?{width:600,height:250}:{width:250,height:600}:i?{width:400,height:60}:{width:60,height:400}}return S(n,"bpmn:Lane")?{width:400,height:100}:S(n,"bpmn:DataObjectReference")?{width:36,height:50}:S(n,"bpmn:DataStoreReference")?{width:50,height:50}:S(n,"bpmn:TextAnnotation")?{width:100,height:40}:S(n,"bpmn:Group")?{width:300,height:300}:{width:100,height:80}},hr.prototype.createParticipantShape=function(e){return Xt(e)||(e={isExpanded:e}),e=V({type:"bpmn:Participant"},e||{}),e.isExpanded!==!1&&(e.processRef=this._bpmnFactory.create("bpmn:Process")),this.createShape(e)};function NT(e,t,n){return F(n,function(i){t=of(e,t,i)}),t}function of(e,t,n){return t[n]===void 0?t:(e[n]=t[n],di(t,[n]))}function $T(e){return We(e,["bpmndi:BPMNShape","bpmndi:BPMNEdge","bpmndi:BPMNDiagram","bpmndi:BPMNPlane"])}function kc(e,t){this._modeling=e,this._canvas=t}kc.$inject=["modeling","canvas"],kc.prototype.preExecute=function(e){var t=this._modeling,n=e.elements,i=e.alignment;F(n,function(r){var o={x:0,y:0};Vt(i.left)?o.x=i.left-r.x:Vt(i.right)?o.x=i.right-r.width-r.x:Vt(i.center)?o.x=i.center-Math.round(r.width/2)-r.x:Vt(i.top)?o.y=i.top-r.y:Vt(i.bottom)?o.y=i.bottom-r.height-r.y:Vt(i.middle)&&(o.y=i.middle-Math.round(r.height/2)-r.y),t.moveElements([r],o,r.parent)})},kc.prototype.postExecute=function(e){};function Oc(e){this._modeling=e}Oc.$inject=["modeling"],Oc.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},Oc.prototype.postExecute=function(e){var t=e.hints||{};FT(e.source,e.shape)||(t.connectionTarget===e.source?this._modeling.connect(e.shape,e.source,e.connection):this._modeling.connect(e.source,e.shape,e.connection))};function FT(e,t){return Ki(e.outgoing,function(n){return n.target===t})}function Dc(e,t){this._canvas=e,this._layouter=t}Dc.$inject=["canvas","layouter"],Dc.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},Dc.prototype.revert=function(e){var t=e.connection;return this._canvas.removeConnection(t),t.source=null,t.target=null,t};var Lc=Math.round;function af(e){this._modeling=e}af.$inject=["modeling"],af.prototype.preExecute=function(e){var t=e.elements,n=e.parent,i=e.parentIndex,r=e.position,o=e.hints,a=this._modeling;F(t,function(p){Be(p.x)||(p.x=0),Be(p.y)||(p.y=0)});var s=Ye(t,function(p){return!p.hidden}),c=Bt(s);F(t,function(p){pt(p)&&(p.waypoints=pn(p.waypoints,function(f){return{x:Lc(f.x-c.x-c.width/2+r.x),y:Lc(f.y-c.y-c.height/2+r.y)}})),V(p,{x:Lc(p.x-c.x-c.width/2+r.x),y:Lc(p.y-c.y-c.height/2+r.y)})});var u=new Set(Bs(t)),l={};F(t,function(p){if(pt(p)){l[p.id]=Be(i)?a.createConnection(l[p.source.id],l[p.target.id],i,p,p.parent||n,o):a.createConnection(l[p.source.id],l[p.target.id],p,p.parent||n,o);return}var f=V({},o);u.has(p)||(f.autoResize=!1),Ge(p)&&(f=di(f,["attach"])),l[p.id]=Be(i)?a.createShape(p,ci(p,["x","y","width","height"]),p.parent||n,i,f):a.createShape(p,ci(p,["x","y","width","height"]),p.parent||n,f)}),e.elements=io(l)};var gv=Math.round;function mr(e){this._canvas=e}mr.$inject=["canvas"],mr.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 n.width!==void 0?V(t,n):V(t,{x:n.x-gv(t.width/2),y:n.y-gv(t.height/2)}),this._canvas.addShape(t,i,r),t},mr.prototype.revert=function(e){var t=e.shape;return this._canvas.removeShape(t),t};function Pa(e){mr.call(this,e)}ye(Pa,mr),Pa.$inject=["canvas"];var jT=mr.prototype.execute;Pa.prototype.execute=function(e){var t=e.shape;return zT(t),t.labelTarget=e.labelTarget,jT.call(this,e)};var HT=mr.prototype.revert;Pa.prototype.revert=function(e){return e.shape.labelTarget=null,HT.call(this,e)};function zT(e){["width","height"].forEach(function(t){typeof e[t]>"u"&&(e[t]=0)})}function Aa(e,t){this._canvas=e,this._modeling=t}Aa.$inject=["canvas","modeling"],Aa.prototype.preExecute=function(e){var t=this._modeling,n=e.connection;dr(n.incoming,function(i){t.removeConnection(i,{nested:!0})}),dr(n.outgoing,function(i){t.removeConnection(i,{nested:!0})})},Aa.prototype.execute=function(e){var t=e.connection,n=t.parent;return e.parent=n,e.parentIndex=Dl(n.children,t),e.source=t.source,e.target=t.target,this._canvas.removeConnection(t),t.source=null,t.target=null,t},Aa.prototype.revert=function(e){var t=e.connection,n=e.parent,i=e.parentIndex;return t.source=e.source,t.target=e.target,Ot(n.children,t,i),this._canvas.addConnection(t,n),t};function sf(e,t){this._modeling=e,this._elementRegistry=t}sf.$inject=["modeling","elementRegistry"],sf.prototype.postExecute=function(e){var t=this._modeling,n=this._elementRegistry,i=e.elements;F(i,function(r){n.get(r.id)&&(r.waypoints?t.removeConnection(r):t.removeShape(r))})};function Ta(e,t){this._canvas=e,this._modeling=t}Ta.$inject=["canvas","modeling"],Ta.prototype.preExecute=function(e){var t=this._modeling,n=e.shape;dr(n.incoming,function(i){t.removeConnection(i,{nested:!0})}),dr(n.outgoing,function(i){t.removeConnection(i,{nested:!0})}),dr(n.children,function(i){pt(i)?t.removeConnection(i,{nested:!0}):t.removeShape(i,{nested:!0})})},Ta.prototype.execute=function(e){var t=this._canvas,n=e.shape,i=n.parent;return e.oldParent=i,e.oldParentIndex=Dl(i.children,n),t.removeShape(n),n},Ta.prototype.revert=function(e){var t=this._canvas,n=e.shape,i=e.oldParent,r=e.oldParentIndex;return Ot(i.children,n,r),t.addShape(n,i),n};function Ic(e){this._modeling=e}Ic.$inject=["modeling"];var yv={x:"y",y:"x"};Ic.prototype.preExecute=function(e){var t=this._modeling,n=e.groups,i=e.axis,r=e.dimension;function o(y,g){y.range.min=Math.min(g[i],y.range.min),y.range.max=Math.max(g[i]+g[r],y.range.max)}function a(y){return y[i]+y[r]/2}function s(y){return y.length-1}function c(y){return y.max-y.min}function u(y,g){var v={y:0};v[i]=y-a(g),v[i]&&(v[yv[i]]=0,t.moveElements([g],v,g.parent))}var l=n[0],p=s(n),f=n[p],d,m,h=0;F(n,function(y,g){var v,b,x;if(y.elements.length<2){g&&g!==n.length-1&&(o(y,y.elements[0]),h+=c(y.range));return}v=fi(y.elements,i),b=v[0],g===p&&(b=v[s(v)]),x=a(b),y.range=null,F(v,function(C){if(u(x,C),y.range===null){y.range={min:C[i],max:C[i]+C[r]};return}o(y,C)}),g&&g!==n.length-1&&(h+=c(y.range))}),m=Math.abs(f.range.min-l.range.max),d=Math.round((m-h)/(n.length-1)),!(d<n.length-1)&&F(n,function(y,g){var v={},b;y===l||y===f||(b=n[g-1],y.range.max=0,F(y.elements,function(x,C){v[yv[i]]=0,v[i]=b.range.max-x[i]+d,y.range.min!==x[i]&&(v[i]+=x[i]-y.range.min),v[i]&&t.moveElements([x],v,x.parent),y.range.max=Math.max(x[i]+x[r],C?y.range.max:0)}))})},Ic.prototype.postExecute=function(e){};function Bc(e,t){this._layouter=e,this._canvas=t}Bc.$inject=["layouter","canvas"],Bc.prototype.execute=function(e){var t=e.connection,n=t.waypoints;return V(e,{oldWaypoints:n}),t.waypoints=this._layouter.layoutConnection(t,e.hints),t},Bc.prototype.revert=function(e){var t=e.connection;return t.waypoints=e.oldWaypoints,t};function cf(){}cf.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=kt(o.children,t),Ot(i.children,t,r),t.parent=i,F(t.waypoints,function(a){a.x+=n.x,a.y+=n.y,a.original&&(a.original.x+=n.x,a.original.y+=n.y)}),t},cf.prototype.revert=function(e){var t=e.connection,n=t.parent,i=e.oldParent,r=e.oldParentIndex,o=e.delta;return kt(n.children,t),Ot(i.children,t,r),t.parent=i,F(t.waypoints,function(a){a.x-=o.x,a.y-=o.y,a.original&&(a.original.x-=o.x,a.original.y-=o.y)}),t};function uf(){this.allShapes={},this.allConnections={},this.enclosedElements={},this.enclosedConnections={},this.topLevel={}}uf.prototype.add=function(e,t){return this.addAll([e],t)},uf.prototype.addAll=function(e,t){var n=vS(e,!!t,this);return V(this,n),this};function Ma(e){this._modeling=e}Ma.prototype.moveRecursive=function(e,t,n){return e?this.moveClosure(this.getClosure(e),t,n):[]},Ma.prototype.moveClosure=function(e,t,n,i,r){var o=this._modeling,a=e.allShapes,s=e.allConnections,c=e.enclosedConnections,u=e.topLevel,l=!1;r&&r.parent===n&&(l=!0),F(a,function(p){o.moveShape(p,t,u[p.id]&&!l&&n,{recurse:!1,layout:!1})}),F(s,function(p){var f=!!a[p.source.id],d=!!a[p.target.id];c[p.id]&&f&&d?o.moveConnection(p,t,u[p.id]&&!l&&n):o.layoutConnection(p,{connectionStart:f&&mp(p,p.source,t),connectionEnd:d&&gp(p,p.target,t)})})},Ma.prototype.getClosure=function(e){return new uf().addAll(e,!0)};function Nc(e){this._helper=new Ma(e)}Nc.$inject=["modeling"],Nc.prototype.preExecute=function(e){e.closure=this._helper.getClosure(e.shapes)},Nc.prototype.postExecute=function(e){var t=e.hints,n;t&&t.primaryShape&&(n=t.primaryShape,t.oldParent=n.parent),this._helper.moveClosure(e.closure,e.delta,e.newParent,e.newHost,n)};function Vr(e){this._modeling=e,this._helper=new Ma(e)}Vr.$inject=["modeling"],Vr.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=ci(t,["x","y","width","height"]),e.oldParent=o,e.oldParentIndex=kt(o.children,t),Ot(i.children,t,r),V(t,{parent:i,x:t.x+n.x,y:t.y+n.y}),t},Vr.prototype.postExecute=function(e){var t=e.shape,n=e.delta,i=e.hints,r=this._modeling;i.layout!==!1&&(F(t.incoming,function(o){r.layoutConnection(o,{connectionEnd:gp(o,t,n)})}),F(t.outgoing,function(o){r.layoutConnection(o,{connectionStart:mp(o,t,n)})})),i.recurse!==!1&&this.moveChildren(e)},Vr.prototype.revert=function(e){var t=e.shape,n=e.oldParent,i=e.oldParentIndex,r=e.delta;return Ot(n.children,t,i),V(t,{parent:n,x:t.x-r.x,y:t.y-r.y}),t},Vr.prototype.moveChildren=function(e){var t=e.delta,n=e.shape;this._helper.moveRecursive(n.children,t,null)},Vr.prototype.getNewParent=function(e){return e.newParent||e.shape.parent};function ka(e){this._modeling=e}ka.$inject=["modeling"],ka.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 De(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},ka.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),o.layoutConnection!==!1&&(n&&(!i||o.docking==="source")&&(a.connectionStart=a.connectionStart||vv(De(r)?r[0]:r)),i&&(!n||o.docking==="target")&&(a.connectionEnd=a.connectionEnd||vv(De(r)?r[r.length-1]:r)),o.newWaypoints&&(a.waypoints=o.newWaypoints),this._modeling.layoutConnection(t,a))},ka.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};function vv(e){return e.original||e}function zi(e,t){this._modeling=e,this._rules=t}zi.$inject=["modeling","rules"],zi.prototype.preExecute=function(e){var t=this,n=this._modeling,i=this._rules,r=e.oldShape,o=e.newData,a=e.hints||{},s;function c(m,h,y){return i.allowed("connection.reconnect",{connection:y,source:m,target:h})}var u={x:o.x,y:o.y},l={x:r.x,y:r.y,width:r.width,height:r.height};s=e.newShape=e.newShape||t.createShape(o,u,r.parent,a),r.host&&n.updateAttachment(s,r.host);var p;a.moveChildren!==!1&&(p=r.children.slice(),n.moveElements(p,{x:0,y:0},s,a));var f=r.incoming.slice(),d=r.outgoing.slice();F(f,function(m){var h=m.source,y=c(h,s,m);y&&t.reconnectEnd(m,s,lc(m,s,l),a)}),F(d,function(m){var h=m.target,y=c(s,h,m);y&&t.reconnectStart(m,s,uc(m,s,l),a)})},zi.prototype.postExecute=function(e){var t=e.oldShape;this._modeling.removeShape(t)},zi.prototype.execute=function(e){},zi.prototype.revert=function(e){},zi.prototype.createShape=function(e,t,n,i){return this._modeling.createShape(e,t,n,i)},zi.prototype.reconnectStart=function(e,t,n,i){this._modeling.reconnectStart(e,t,n,i)},zi.prototype.reconnectEnd=function(e,t,n,i){this._modeling.reconnectEnd(e,t,n,i)};function Oa(e){this._modeling=e}Oa.$inject=["modeling"],Oa.prototype.execute=function(e){var t=e.shape,n=e.newBounds,i=e.minBounds;if(n.x===void 0||n.y===void 0||n.width===void 0||n.height===void 0)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},V(t,{width:n.width,height:n.height,x:n.x,y:n.y}),t},Oa.prototype.postExecute=function(e){var t=this._modeling,n=e.shape,i=e.oldBounds,r=e.hints||{};r.layout!==!1&&(F(n.incoming,function(o){t.layoutConnection(o,{connectionEnd:lc(o,n,i)})}),F(n.outgoing,function(o){t.layoutConnection(o,{connectionStart:uc(o,n,i)})}))},Oa.prototype.revert=function(e){var t=e.shape,n=e.oldBounds;return V(t,{width:n.width,height:n.height,x:n.x,y:n.y}),t};function gr(e){this._modeling=e}gr.$inject=["modeling"],gr.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),F(r,function(s){a[s.id]=VT(s)}),this.resizeShapes(r,t,n),this.updateConnectionWaypoints(yT(i,r),t,n,o,i,r,a)},gr.prototype.execute=function(){},gr.prototype.revert=function(){},gr.prototype.moveShapes=function(e,t){var n=this;F(e,function(i){n._modeling.moveShape(i,t,null,{autoResize:!1,layout:!1,recurse:!1})})},gr.prototype.resizeShapes=function(e,t,n){var i=this;F(e,function(r){var o=vT(r,n,t);i._modeling.resizeShape(r,o,null,{attachSupport:!1,autoResize:!1,layout:!1})})},gr.prototype.updateConnectionWaypoints=function(e,t,n,i,r,o,a){var s=this,c=new Set(r),u=new Set(o);F(e,function(l){var p=l.source,f=l.target,d=GT(l),m=xv(n),h={},y=c.has(p)||u.has(p),g=c.has(f)||u.has(f);y&&g?(d=pn(d,function(v){return _v(v,i,n)&&(v[m]=v[m]+t[m]),v.original&&_v(v.original,i,n)&&(v.original[m]=v.original[m]+t[m]),v}),s._modeling.updateWaypoints(l,d,{labelBehavior:!1})):(y||g)&&(c.has(p)?h.connectionStart=mp(l,p,t):c.has(f)?h.connectionEnd=gp(l,f,t):u.has(p)?h.connectionStart=uc(l,p,a[p.id]):u.has(f)&&(h.connectionEnd=lc(l,f,a[f.id])),s._modeling.layoutConnection(l,h))})};function bv(e){return V({},e)}function GT(e){return pn(e.waypoints,function(t){return t=bv(t),t.original&&(t.original=bv(t.original)),t})}function xv(e){switch(e){case"n":return"y";case"w":return"x";case"s":return"y";case"e":return"x"}}function _v(e,t,n){var i=xv(n);if(/e|s/.test(n))return e[i]>t;if(/n|w/.test(n))return e[i]<t}function VT(e){return{x:e.x,y:e.y,height:e.height,width:e.width}}function $c(e){this._modeling=e}$c.$inject=["modeling"],$c.prototype.execute=function(e){var t=e.shape,n=t.children;e.oldChildrenVisibility=wv(n),t.collapsed=!t.collapsed;var i=Ev(n,t.collapsed);return[t].concat(i)},$c.prototype.revert=function(e){var t=e.shape,n=e.oldChildrenVisibility,i=t.children,r=Sv(i,n);return t.collapsed=!t.collapsed,[t].concat(r)};function wv(e){var t={};return F(e,function(n){t[n.id]=n.hidden,n.children&&(t=V({},t,wv(n.children)))}),t}function Ev(e,t){var n=[];return F(e,function(i){i.hidden=t,n=n.concat(i),i.children&&(n=n.concat(Ev(i.children,i.collapsed||t)))}),n}function Sv(e,t){var n=[];return F(e,function(i){i.hidden=t[i.id],n=n.concat(i),i.children&&(n=n.concat(Sv(i.children,t)))}),n}function Fc(e){this._modeling=e}Fc.$inject=["modeling"],Fc.prototype.execute=function(e){var t=e.shape,n=e.newHost,i=t.host;return e.oldHost=i,e.attacherIdx=Rv(i,t),Cv(n,t),t.host=n,t},Fc.prototype.revert=function(e){var t=e.shape,n=e.newHost,i=e.oldHost,r=e.attacherIdx;return t.host=i,Rv(n,t),Cv(i,t,r),t};function Rv(e,t){return kt(e&&e.attachers,t)}function Cv(e,t,n){if(e){var i=e.attachers;i||(e.attachers=i=[]),Ot(i,t,n)}}function lf(){}lf.prototype.execute=function(e){var t=e.connection,n=e.newWaypoints;return e.oldWaypoints=t.waypoints,t.waypoints=n,t},lf.prototype.revert=function(e){var t=e.connection,n=e.oldWaypoints;return t.waypoints=n,t};function ft(e,t,n){this._eventBus=e,this._elementFactory=t,this._commandStack=n;var i=this;e.on("diagram.init",function(){i.registerHandlers(n)})}ft.$inject=["eventBus","elementFactory","commandStack"],ft.prototype.getHandlers=function(){return{"shape.append":Oc,"shape.create":mr,"shape.delete":Ta,"shape.move":Vr,"shape.resize":Oa,"shape.replace":zi,"shape.toggleCollapse":$c,spaceTool:gr,"label.create":Pa,"connection.create":Dc,"connection.delete":Aa,"connection.move":cf,"connection.layout":Bc,"connection.updateWaypoints":lf,"connection.reconnect":ka,"elements.create":af,"elements.move":Nc,"elements.delete":sf,"elements.distribute":Ic,"elements.align":kc,"element.updateAttachment":Fc}},ft.prototype.registerHandlers=function(e){F(this.getHandlers(),function(t,n){e.registerHandler(n,t)})},ft.prototype.moveShape=function(e,t,n,i,r){typeof i=="object"&&(r=i,i=null);var o={shape:e,delta:t,newParent:n,newParentIndex:i,hints:r||{}};this._commandStack.execute("shape.move",o)},ft.prototype.updateAttachment=function(e,t){var n={shape:e,newHost:t};this._commandStack.execute("element.updateAttachment",n)},ft.prototype.moveElements=function(e,t,n,i){i=i||{};var r=i.attach,o=n,a;r===!0?(a=n,o=n.parent):r===!1&&(a=null);var s={shapes:e,delta:t,newParent:o,newHost:a,hints:i};this._commandStack.execute("elements.move",s)},ft.prototype.moveConnection=function(e,t,n,i,r){typeof i=="object"&&(r=i,i=void 0);var o={connection:e,delta:t,newParent:n,newParentIndex:i,hints:r||{}};this._commandStack.execute("connection.move",o)},ft.prototype.layoutConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.layout",n)},ft.prototype.createConnection=function(e,t,n,i,r,o){typeof n=="object"&&(o=r,r=i,i=n,n=void 0),i=this._create("connection",i);var a={source:e,target:t,parent:r,parentIndex:n,connection:i,hints:o};return this._commandStack.execute("connection.create",a),a.connection},ft.prototype.createShape=function(e,t,n,i,r){typeof i!="number"&&(r=i,i=void 0),r=r||{};var o=r.attach,a,s;e=this._create("shape",e),o?(a=n.parent,s=n):a=n;var c={position:t,shape:e,parent:a,parentIndex:i,host:s,hints:r};return this._commandStack.execute("shape.create",c),c.shape},ft.prototype.createElements=function(e,t,n,i,r){De(e)||(e=[e]),typeof i!="number"&&(r=i,i=void 0),r=r||{};var o={position:t,elements:e,parent:n,parentIndex:i,hints:r};return this._commandStack.execute("elements.create",o),o.elements},ft.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},ft.prototype.appendShape=function(e,t,n,i,r){r=r||{},t=this._create("shape",t);var o={source:e,position:n,target:i,shape:t,connection:r.connection,connectionParent:r.connectionParent,hints:r};return this._commandStack.execute("shape.append",o),o.shape},ft.prototype.removeElements=function(e){var t={elements:e};this._commandStack.execute("elements.delete",t)},ft.prototype.distributeElements=function(e,t,n){var i={groups:e,axis:t,dimension:n};this._commandStack.execute("elements.distribute",i)},ft.prototype.removeShape=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.delete",n)},ft.prototype.removeConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.delete",n)},ft.prototype.replaceShape=function(e,t,n){var i={oldShape:e,newData:t,hints:n||{}};return this._commandStack.execute("shape.replace",i),i.newShape},ft.prototype.alignElements=function(e,t){var n={elements:e,alignment:t};this._commandStack.execute("elements.align",n)},ft.prototype.resizeShape=function(e,t,n,i){var r={shape:e,newBounds:t,minBounds:n,hints:i};this._commandStack.execute("shape.resize",r)},ft.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)},ft.prototype.updateWaypoints=function(e,t,n){var i={connection:e,newWaypoints:t,hints:n||{}};this._commandStack.execute("connection.updateWaypoints",i)},ft.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)},ft.prototype.reconnectStart=function(e,t,n,i){i||(i={}),this.reconnect(e,t,e.target,n,V(i,{docking:"source"}))},ft.prototype.reconnectEnd=function(e,t,n,i){i||(i={}),this.reconnect(e,e.source,t,n,V(i,{docking:"target"}))},ft.prototype.connect=function(e,t,n,i){return this.createConnection(e,t,n||{},e.parent,i)},ft.prototype._create=function(e,t){return iR(t)?t:this._elementFactory.create(e,t)},ft.prototype.toggleCollapse=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.toggleCollapse",n)};function Da(e){this._elementRegistry=e}Da.$inject=["elementRegistry"],Da.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||WT(n,us(i));return Pv(n,i),e.oldProperties=o,e.changed=r,r},Da.prototype.revert=function(e){var t=e.oldProperties,n=e.moddleElement,i=e.changed;return Pv(n,t),i},Da.prototype._getVisualReferences=function(e){var t=this._elementRegistry;return S(e,"bpmn:DataObject")?UT(e,t):[]};function WT(e,t){return Tn(t,function(n,i){return n[i]=e.get(i),n},{})}function Pv(e,t){F(t,function(n,i){e.set(i,n)})}function UT(e,t){return t.filter(function(n){return S(n,"bpmn:DataObjectReference")&&te(n).dataObjectRef===e})}var La="default",Gi="id",Av="di",YT={width:0,height:0};function Ia(e,t,n,i){this._elementRegistry=e,this._moddle=t,this._modeling=n,this._textRenderer=i}Ia.$inject=["elementRegistry","moddle","modeling","textRenderer"],Ia.prototype.execute=function(e){var t=e.element,n=[t];if(!t)throw new Error("element required");var i=this._elementRegistry,r=this._moddle.ids,o=t.businessObject,a=QT(e.properties),s=e.oldProperties||qT(t,a);return Tv(a,o)&&(r.unclaim(o[Gi]),i.updateId(t,a[Gi]),r.claim(a[Gi],o)),La in a&&(a[La]&&n.push(i.get(a[La].id)),o[La]&&n.push(i.get(o[La].id))),Mv(t,a),e.oldProperties=s,e.changed=n,n},Ia.prototype.postExecute=function(e){var t=e.element,n=t.label,i=n&&te(n).name;if(i){var r=this._textRenderer.getExternalLabelBounds(n,i);this._modeling.resizeShape(n,r,YT)}},Ia.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 Mv(t,i),Tv(n,r)&&(a.unclaim(n[Gi]),o.updateId(t,i[Gi]),a.claim(i[Gi],r)),e.changed};function Tv(e,t){return Gi in e&&e[Gi]!==t[Gi]}function qT(e,t){var n=us(t),i=e.businessObject,r=Je(e);return Tn(n,function(o,a){return a!==Av?o[a]=i.get(a):o[a]=KT(r,us(t.di)),o},{})}function KT(e,t){return Tn(t,function(n,i){return n[i]=e&&e.get(i),n},{})}function Mv(e,t){var n=e.businessObject,i=Je(e);F(t,function(r,o){o!==Av?n.set(o,r):i&&XT(i,r)})}function XT(e,t){F(t,function(n,i){e.set(i,n)})}var ZT=["default"];function QT(e){var t=V({},e);return ZT.forEach(function(n){n in e&&(t[n]=te(t[n]))}),t}function jc(e,t){this._canvas=e,this._modeling=t}jc.$inject=["canvas","modeling"],jc.prototype.execute=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=t.getRootElement(),o=r.businessObject,a=o.$parent,s=Je(r);return t.setRootElement(n),t.removeRootElement(r),Ot(a.rootElements,i),i.$parent=a,kt(a.rootElements,o),o.$parent=null,r.di=null,s.bpmnElement=i,n.di=s,e.oldRoot=r,[]},jc.prototype.revert=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=e.oldRoot,o=r.businessObject,a=i.$parent,s=Je(n);return t.setRootElement(r),t.removeRootElement(n),kt(a.rootElements,i),i.$parent=null,Ot(a.rootElements,o),o.$parent=a,n.di=null,s.bpmnElement=o,r.di=s,[]};function pf(e,t){this._modeling=e,this._spaceTool=t}pf.$inject=["modeling","spaceTool"],pf.prototype.preExecute=function(e){var t=this._spaceTool,n=this._modeling,i=e.shape,r=e.location,o=Jn(i),a=o===i,s=a?i:i.parent,c=cr(s),u=Jt(i);if(u?r==="left"?r="top":r==="right"&&(r="bottom"):r==="top"?r="left":r==="bottom"&&(r="right"),!c.length){var l=u?{x:i.x+Qn,y:i.y,width:i.width-Qn,height:i.height}:{x:i.x,y:i.y+Qn,width:i.width,height:i.height-Qn};n.createShape({type:"bpmn:Lane",isHorizontal:u},l,s)}var p=[];Br(o,function(x){return p.push(x),x.label&&p.push(x.label),x===i?[]:Ye(x.children,function(C){return C!==i})});var f,d,m,h,y;r==="top"?(f=-120,d=i.y,m=d+10,h="n",y="y"):r==="left"?(f=-120,d=i.x,m=d+10,h="w",y="x"):r==="bottom"?(f=120,d=i.y+i.height,m=d-10,h="s",y="y"):r==="right"&&(f=120,d=i.x+i.width,m=d-10,h="e",y="x");var g=t.calculateAdjustments(p,y,f,m),v=u?{x:0,y:f}:{x:f,y:0};t.makeSpace(g.movingShapes,g.resizingShapes,v,h,m);var b=u?{x:i.x+(a?Qn:0),y:d-(r==="top"?120:0),width:i.width-(a?Qn:0),height:120}:{x:d-(r==="left"?120:0),y:i.y+(a?Qn:0),width:120,height:i.height-(a?Qn:0)};e.newLane=n.createShape({type:"bpmn:Lane",isHorizontal:u},b,s)};function ff(e){this._modeling=e}ff.$inject=["modeling"],ff.prototype.preExecute=function(e){var t=this._modeling,n=e.shape,i=e.count,r=cr(n),o=r.length;if(o>i)throw new Error(`more than <${i}> child lanes`);var a=Jt(n),s=a?n.height:n.width,c=Math.round(s/i),u,l,p,f;for(f=0;f<i;f++)f===i-1?u=s-c*f:u=c,l=a?{x:n.x+Qn,y:n.y+f*c,width:n.width-Qn,height:u}:{x:n.x+f*c,y:n.y+Qn,width:u,height:n.height-Qn},f<o?t.resizeShape(r[f],l):(p={type:"bpmn:Lane",isHorizontal:a},t.createShape(p,l,n))};function Ba(e,t){this._modeling=e,this._spaceTool=t}Ba.$inject=["modeling","spaceTool"],Ba.prototype.preExecute=function(e){var t=e.shape,n=e.newBounds,i=e.balanced;i!==!1?this.resizeBalanced(t,n):this.resizeSpace(t,n)},Ba.prototype.resizeBalanced=function(e,t){var n=this._modeling,i=UC(e,t);n.resizeShape(e,t),i.forEach(function(r){n.resizeShape(r.shape,r.newBounds)})},Ba.prototype.resizeSpace=function(e,t){var n=this._spaceTool,i=ke(e),r=ke(t),o=cg(r,i),a=Jn(e),s=[],c=[];Br(a,function(m){return s.push(m),(S(m,"bpmn:Lane")||S(m,"bpmn:Participant"))&&c.push(m),m.children});var u,l,p,f,d;(o.bottom||o.top)&&(u=o.bottom||o.top,l=e.y+(o.bottom?e.height:0)+(o.bottom?-10:10),p=o.bottom?"s":"n",f=o.top>0||o.bottom<0?-u:u,d=n.calculateAdjustments(s,"y",f,l),n.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:u},p)),(o.left||o.right)&&(u=o.right||o.left,l=e.x+(o.right?e.width:0)+(o.right?-10:100),p=o.right?"e":"w",f=o.left>0||o.right<0?-u:u,d=n.calculateAdjustments(c,"x",f,l),n.makeSpace(d.movingShapes,d.resizingShapes,{x:u,y:0},p))};var Na="flowNodeRef",df="lanes";function Hc(){}Hc.prototype._computeUpdates=function(e,t){var n=[],i=[],r={},o=[];function a(l,p){var f=ke(p),d={x:l.x+l.width/2,y:l.y+l.height/2};return d.x>f.left&&d.x<f.right&&d.y>f.top&&d.y<f.bottom}function s(l){n.indexOf(l)===-1&&(o.push(l),n.push(l))}function c(l){var p=Jn(l);return r[p.id]||(r[p.id]=rc(p)),r[p.id]}function u(l){if(!l.parent)return[];var p=c(l);return p.filter(function(f){return a(l,f)}).map(function(f){return f.businessObject})}return t.forEach(function(l){var p=Jn(l);if(!(!p||n.indexOf(p)!==-1)){var f=p.children.filter(function(d){return S(d,"bpmn:FlowNode")});f.forEach(s),n.push(p)}}),e.forEach(s),o.forEach(function(l){var p=l.businessObject,f=p.get(df),d=f.slice(),m=u(l);i.push({flowNode:p,remove:d,add:m})}),t.forEach(function(l){var p=l.businessObject;l.parent||p.get(Na).forEach(function(f){i.push({flowNode:f,remove:[p],add:[]})})}),i},Hc.prototype.execute=function(e){var t=e.updates;return t||(t=e.updates=this._computeUpdates(e.flowNodeShapes,e.laneShapes)),t.forEach(function(n){var i=n.flowNode,r=i.get(df);n.remove.forEach(function(o){kt(r,o),kt(o.get(Na),i)}),n.add.forEach(function(o){Ot(r,o),Ot(o.get(Na),i)})}),[]},Hc.prototype.revert=function(e){var t=e.updates;return t.forEach(function(n){var i=n.flowNode,r=i.get(df);n.add.forEach(function(o){kt(r,o),kt(o.get(Na),i)}),n.remove.forEach(function(o){Ot(r,o),Ot(o.get(Na),i)})}),[]};var hf="categoryValueRef";function $a(e,t){this._bpmnFactory=e,this._elementRegistry=t}$a.$inject=["bpmnFactory","elementRegistry"],$a.prototype._computeUpdates=function(e,t){var n=this._elementRegistry,i=this._bpmnFactory,r=new Map,o=[],a=new Map;function s(v,b,x){if(b){var C=a.get(v);C||(C={},a.set(v,C)),!(x&&C.present)&&(!x&&C.past||(x?C.present={categoryValue:b,root:mf(v)}:C.past={categoryValue:b}))}}function c(v){r.set(v,te(v))}function u(){n.filter(function(v){return S(v,"bpmn:FlowElement")&&!Ge(v)&&v.parent}).forEach(c)}function l(v){var b=te(v),x=b.get("categoryValueRef");return x||(x=ig(i,b),o.push(JT(v,x))),x}function p(v){return v.reduce(function(b,x){var C=mf(x),T=b.get(C);return T||(T=[],b.set(C,T)),T.push(x),b},new Map)}e=Array.from(e||[]);var f=p(e);t.length&&u(),e.forEach(c),n.filter(function(v){return S(v,"bpmn:Group")&&!Ge(v)&&v.parent}).forEach(function(v){var b=te(v).get("categoryValueRef");if(!b){var x=mf(v),C=f.get(x)||[],T=go(C,v),k=Object.keys(T).length>0;k&&(b=l(v))}s(v,b,!0)}),t.forEach(function(v){s(v.groupShape,v.categoryValue,!1)}),o.length&&u();var d=Array.from(r.keys()),m=Array.from(a.values()).reduce(function(v,b){return b.present&&v.add(b.present.categoryValue),b.past&&v.add(b.past.categoryValue),v},new Set),h=new Map,y=p(d);a.forEach(function(v,b){var x=v.present;if(x){var C=y.get(x.root)||[],T=go(C,b);C.forEach(function(k){if(T[k.id]){var A=h.get(k);A||(A=new Set,h.set(k,A)),A.add(x.categoryValue)}})}});var g=d.reduce(function(v,b){var x=r.get(b),C=x.get(hf),T=new Set(C),k=h.get(b)||new Set,A=Array.from(k).filter(function(D){return!T.has(D)}),I=C.filter(function(D){return m.has(D)&&!k.has(D)});return(A.length||I.length)&&v.push({businessObject:x,categoryValuesToAdd:A,categoryValuesToRemove:I}),v},[]);return{flowElements:g,groups:o}},$a.prototype.execute=function(e){var t=e.updates;return t||(t=e.updates=this._computeUpdates(e.affectedFlowElements,e.affectedGroupEntries)),eM(t.groups),nM(t.flowElements),[]},$a.prototype.revert=function(e){var t=e.updates;return iM(t.flowElements),tM(t.groups),[]};function JT(e,t){return{groupShape:e,categoryValue:t,category:t.$parent}}function eM(e){e.forEach(function(t){te(t.groupShape).categoryValueRef=t.categoryValue,t.categoryValue.$parent=t.category})}function tM(e){e.forEach(function(t){te(t.groupShape).categoryValueRef=null})}function nM(e){e.forEach(function(t){var n=t.businessObject,i=n.get(hf);t.categoryValuesToRemove.forEach(function(r){kt(i,r)}),t.categoryValuesToAdd.forEach(function(r){Ot(i,r,!0)})})}function iM(e){e.forEach(function(t){var n=t.businessObject,i=n.get(hf);t.categoryValuesToAdd.forEach(function(r){kt(i,r)}),t.categoryValuesToRemove.forEach(function(r){Ot(i,r,!0)})})}function mf(e){for(;e.parent;)e=e.parent;return e}function zc(e){this._moddle=e}zc.$inject=["moddle"],zc.prototype.execute=function(e){var t=this._moddle.ids,n=e.id,i=e.element,r=e.claiming;return r?t.claim(n,i):t.unclaim(n),[]},zc.prototype.revert=function(e){var t=this._moddle.ids,n=e.id,i=e.element,r=e.claiming;return r?t.unclaim(n):t.claim(n,i),[]};var rM={fill:void 0,stroke:void 0};function gf(e){this._commandStack=e,this._normalizeColor=function(t){if(t){if(Pn(t)){var n=oM(t);if(n)return n}throw new Error(`invalid color value: ${t}`)}}}gf.$inject=["commandStack"],gf.prototype.postExecute=function(e){var t=e.elements,n=e.colors||rM,i=this,r={};"fill"in n&&V(r,{"background-color":this._normalizeColor(n.fill)}),"stroke"in n&&V(r,{"border-color":this._normalizeColor(n.stroke)}),F(t,function(o){var a=pt(o)?ci(r,["border-color"]):r,s=Je(o);if(aM(a),Ge(o)){if(!s||!S(s.label,"bpmndi:BPMNLabel"))return;i._commandStack.execute("element.updateModdleProperties",{element:o,moddleElement:s.label,properties:{color:r["border-color"]}})}else{if(!We(s,["bpmndi:BPMNEdge","bpmndi:BPMNShape"]))return;i._commandStack.execute("element.updateProperties",{element:o,properties:{di:a}})}})};function oM(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}function aM(e){"border-color"in e&&(e.stroke=e["border-color"]),"background-color"in e&&(e.fill=e["background-color"])}var sM={width:0,height:0};function kv(e,t,n){function i(c,u){var l=c.label||c,p=c.labelTarget||c;return IR(l,u),[l,p]}function r(c){var u=c.element,l=u.businessObject,p=c.newLabel;if(!Ge(u)&&ar(u)&&!Ws(u)&&!Ov(p)){var f=7,d=Fl(u);d={x:d.x,y:d.y+f},e.createLabel(u,d,{id:l.id+"_label",businessObject:l,di:u.di})}}function o(c){return c.oldLabel=Yn(c.element),i(c.element,c.newLabel)}function a(c){return i(c.element,c.oldLabel)}function s(c){var u=c.element,l=u.label||u,p=c.newLabel,f=c.newBounds,d=c.hints||{};if(!(!Ge(l)&&!S(l,"bpmn:TextAnnotation"))){if(Ge(l)&&Ov(p)){d.removeShape!==!1&&e.removeShape(l,{unsetLabel:!1});return}var m=Yn(u);typeof f>"u"&&(f=t.getExternalLabelBounds(l,m)),f&&e.resizeShape(l,f,sM)}}this.preExecute=r,this.execute=o,this.revert=a,this.postExecute=s}kv.$inject=["modeling","textRenderer","bpmnFactory"];function Ov(e){return!e||!e.trim()}function un(e,t,n,i){ft.call(this,e,t,n),this._bpmnRules=i}ye(un,ft),un.$inject=["eventBus","elementFactory","commandStack","bpmnRules"],un.prototype.getHandlers=function(){var e=ft.prototype.getHandlers.call(this);return e["element.updateModdleProperties"]=Da,e["element.updateProperties"]=Ia,e["canvas.updateRoot"]=jc,e["lane.add"]=pf,e["lane.resize"]=Ba,e["lane.split"]=ff,e["lane.updateRefs"]=Hc,e["group.updateRefs"]=$a,e["id.updateClaim"]=zc,e["element.setColor"]=gf,e["element.updateLabel"]=kv,e},un.prototype.updateLabel=function(e,t,n,i){this._commandStack.execute("element.updateLabel",{element:e,newLabel:t,newBounds:n,hints:i||{}})},un.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)},un.prototype.updateModdleProperties=function(e,t,n){this._commandStack.execute("element.updateModdleProperties",{element:e,moddleElement:t,properties:n})},un.prototype.updateProperties=function(e,t){this._commandStack.execute("element.updateProperties",{element:e,properties:t})},un.prototype.resizeLane=function(e,t,n){this._commandStack.execute("lane.resize",{shape:e,newBounds:t,balanced:n})},un.prototype.addLane=function(e,t){var n={shape:e,location:t};return this._commandStack.execute("lane.add",n),n.newLane},un.prototype.splitLane=function(e,t){this._commandStack.execute("lane.split",{shape:e,count:t})},un.prototype.makeCollaboration=function(){var e=this._create("root",{type:"bpmn:Collaboration"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},un.prototype.makeProcess=function(){var e=this._create("root",{type:"bpmn:Process"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},un.prototype.updateLaneRefs=function(e,t){this._commandStack.execute("lane.updateRefs",{flowNodeShapes:e,laneShapes:t})},un.prototype.updateCategoryValueRefs=function(e,t){this._commandStack.execute("group.updateRefs",{affectedFlowElements:e,affectedGroupEntries:t})},un.prototype.claimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t,claiming:!0})},un.prototype.unclaimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t})},un.prototype.setColor=function(e,t){e.length||(e=[e]),this._commandStack.execute("element.setColor",{elements:e,colors:t})};function Dv(){}Dv.prototype.layoutConnection=function(e,t){return t=t||{},[t.connectionStart||Le(t.source||e.source),t.connectionEnd||Le(t.target||e.target)]};var Gc=20,cM=5,Vc=Math.round,Lv=20,uM={"h:h":20,"v:v":20,"h:v":-10,"v:h":-10};function lM(e,t){return!{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/./,v:/./}[t].test(e)}function pM(e,t){return{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/left|right/,v:/top|bottom/}[e].test(t)}function Iv(e,t,n){var i=an(t,e,cM),r=n.split(":")[0],o=Vc((t.x-e.x)/2+e.x),a=Vc((t.y-e.y)/2+e.y),s,c,u=pM(r,i),l=/h|r|l/.test(r),p=!1,f=!1;return u?(s=l?{x:o,y:e.y}:{x:e.x,y:a},c=l?"h:h":"v:v"):(p=lM(i,r),c=l?"h:v":"v:h",p?l?(f=a===e.y,s={x:e.x+Gc*(/l/.test(r)?-1:1),y:f?a+Gc:a}):(f=o===e.x,s={x:f?o+Gc:o,y:e.y+Gc*(/t/.test(r)?-1:1)}):s={x:o,y:a}),{waypoints:yf(e,s,c).concat(s),directions:c,turnNextDirections:f}}function fM(e,t,n){return Iv(e,t,n)}function dM(e,t,n){var i=Iv(t,e,Bv(n));return{waypoints:i.waypoints.slice().reverse(),directions:Bv(i.directions),turnNextDirections:i.turnNextDirections}}function hM(e,t){var n=e.directions.split(":")[1],i=t.directions.split(":")[0];e.turnNextDirections&&(n=n=="h"?"v":"h"),t.turnNextDirections&&(i=i=="h"?"v":"h");var r=n+":"+i,o=yf(e.waypoints[e.waypoints.length-1],t.waypoints[0],r);return{waypoints:o,directions:r}}function Bv(e){return e.split(":").reverse().join(":")}function mM(e,t,n){var i=Vc((t.x-e.x)/2+e.x),r=Vc((t.y-e.y)/2+e.y);if(n==="h:v")return[{x:t.x,y:e.y}];if(n==="v:h")return[{x:e.x,y:t.y}];if(n==="h:h")return[{x:i,y:e.y},{x:i,y:t.y}];if(n==="v:v")return[{x:e.x,y:r},{x:t.x,y:r}];throw new Error("invalid directions: can only handle varians of [hv]:[hv]")}function yf(e,t,n){if(n=n||"h:h",!SM(n))throw new Error("unknown directions: <"+n+">: must be specified as <start>:<end> with start/end in { h,v,t,r,b,l }");if($v(n)){var i=fM(e,t,n),r=dM(e,t,n),o=hM(i,r);return[].concat(i.waypoints,o.waypoints,r.waypoints)}return mM(e,t,n)}function gM(e,t,n){var i=yf(e,t,n);return i.unshift(e),i.push(t),jv(i)}function yM(e,t,n,i,r){var o=r&&r.preferredLayouts||[],a=ow(o,"straight")[0]||"h:h",s=uM[a]||0,c=an(e,t,s),u=EM(c,a);n=n||Le(e),i=i||Le(t);var l=u.split(":"),p=Fv(n,e,l[0],RM(c)),f=Fv(i,t,l[1],c);return gM(p,f,u)}function vM(e,t,n,i,r,o){De(n)&&(r=n,o=i,n=Le(e),i=Le(t)),o=V({preferredLayouts:[]},o),r=r||[];var a=o.preferredLayouts,s=a.indexOf("straight")!==-1,c;return c=s&&xM(e,t,n,i,o),c||(c=o.connectionEnd&&wM(t,e,i,r),c)||(c=o.connectionStart&&_M(e,t,n,r),c)?c:!o.connectionStart&&!o.connectionEnd&&r&&r.length?r:yM(e,t,n,i,o)}function bM(e,t,n){return e>=t&&e<=n}function Nv(e,t,n){var i={x:"width",y:"height"};return bM(t[e],n[e],n[e]+n[i[e]])}function xM(e,t,n,i,r){var o={},a,s;return s=an(e,t),/^(top|bottom|left|right)$/.test(s)?(/top|bottom/.test(s)&&(a="x"),/left|right/.test(s)&&(a="y"),r.preserveDocking==="target"?Nv(a,i,e)?(o[a]=i[a],[{x:o.x!==void 0?o.x:n.x,y:o.y!==void 0?o.y:n.y,original:{x:o.x!==void 0?o.x:n.x,y:o.y!==void 0?o.y:n.y}},{x:i.x,y:i.y}]):null:Nv(a,n,t)?(o[a]=n[a],[{x:n.x,y:n.y},{x:o.x!==void 0?o.x:i.x,y:o.y!==void 0?o.y:i.y,original:{x:o.x!==void 0?o.x:i.x,y:o.y!==void 0?o.y:i.y}}]):null):null}function _M(e,t,n,i){return vf(e,t,n,i)}function wM(e,t,n,i){var r=i.slice().reverse();return r=vf(e,t,n,r),r?r.reverse():null}function vf(e,t,n,i){function r(l){return l.length<3?!0:l.length>4?!1:!!ht(l,function(p,f){var d=l[f-1];return d&&ca(p,d)<3})}function o(l,p,f){var d=Li(p,l);switch(d){case"v":return{x:f.x,y:l.y};case"h":return{x:l.x,y:f.y}}return{x:l.x,y:l.y}}function a(l,p,f){var d;for(d=l.length-2;d!==0;d--)if(um(l[d],p,Lv)||um(l[d],f,Lv))return l.slice(d);return l}if(r(i))return null;var s=i[0],c=i.slice(),u;return c[0]=n,c[1]=o(c[1],s,n),u=a(c,e,t),u!==c&&(c=vf(e,t,n,u)),c&&Li(c)?null:c}function EM(e,t){if($v(t))return t;switch(e){case"intersect":return"t:t";case"top":case"bottom":return"v:v";case"left":case"right":return"h:h";default:return t}}function SM(e){return e&&/^h|v|t|r|b|l:h|v|t|r|b|l$/.test(e)}function $v(e){return e&&/t|r|b|l/.test(e)}function RM(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]}function Fv(e,t,n,i){if(n==="h"&&(n=/left/.test(i)?"l":"r"),n==="v"&&(n=/top/.test(i)?"t":"b"),n==="t")return{original:e,x:e.x,y:t.y};if(n==="r")return{original:e,x:t.x+t.width,y:e.y};if(n==="b")return{original:e,x:e.x,y:t.y+t.height};if(n==="l")return{original:e,x:t.x,y:e.y};throw new Error("unexpected dockingDirection: <"+n+">")}function jv(e){return e.reduce(function(t,n,i){var r=t[t.length-1],o=e[i+1];return Ll(r,o,n,0)||t.push(n),t},[])}var CM=-10,PM=40,AM={default:["h:h"],fromGateway:["v:h"],toGateway:["h:v"],loop:{fromTop:["t:r"],fromRight:["r:b"],fromLeft:["l:t"],fromBottom:["b:l"]},boundaryLoop:{alternateHorizontalSide:"b",alternateVerticalSide:"l",default:"v"},messageFlow:["straight","v:v"],subProcess:["straight","h:h"],isHorizontal:!0},TM={default:["v:v"],fromGateway:["h:v"],toGateway:["v:h"],loop:{fromTop:["t:l"],fromRight:["r:t"],fromLeft:["l:b"],fromBottom:["b:r"]},boundaryLoop:{alternateHorizontalSide:"t",alternateVerticalSide:"r",default:"h"},messageFlow:["straight","h:h"],subProcess:["straight","v:v"],isHorizontal:!1},bf={top:"bottom","top-right":"bottom-left","top-left":"bottom-right",right:"left",bottom:"top","bottom-right":"top-left","bottom-left":"top-right",left:"right"},Fa={top:"t",right:"r",bottom:"b",left:"l"};function Wc(e){this._elementRegistry=e}ye(Wc,Dv),Wc.prototype.layoutConnection=function(e,t){t||(t={});var n=t.source||e.source,i=t.target||e.target,r=t.waypoints||e.waypoints,o=t.connectionStart,a=t.connectionEnd,s=this._elementRegistry,c,u;if(o||(o=Hv(r&&r[0],n)),a||(a=Hv(r&&r[r.length-1],i)),(S(e,"bpmn:Association")||S(e,"bpmn:DataAssociation"))&&r&&!zv(n,i))return[].concat([o],r.slice(1,-1),[a]);var l=Jm(n,s)?AM:TM;return S(e,"bpmn:MessageFlow")?c=kM(n,i,l):(S(e,"bpmn:SequenceFlow")||zv(n,i))&&(n===i?c={preferredLayouts:NM(n,e,l)}:S(n,"bpmn:BoundaryEvent")?c={preferredLayouts:$M(n,i,a,l)}:ja(n)||ja(i)?c={preferredLayouts:l.subProcess,preserveDocking:DM(n)}:S(n,"bpmn:Gateway")?c={preferredLayouts:l.fromGateway}:S(i,"bpmn:Gateway")?c={preferredLayouts:l.toGateway}:c={preferredLayouts:l.default}),c&&(c=V(c,t),u=jv(vM(n,i,o,a,r,c))),u||[o,a]};function MM(e){var t=e.host;return an(Le(e),t,CM)}function kM(e,t,n){return{preferredLayouts:n.messageFlow,preserveDocking:OM(e,t)}}function OM(e,t){return S(t,"bpmn:Participant")?"source":S(e,"bpmn:Participant")?"target":ja(t)?"source":ja(e)||S(t,"bpmn:Event")?"target":S(e,"bpmn:Event")?"source":null}function DM(e){return ja(e)?"target":"source"}function Hv(e,t){return e?e.original||e:Le(t)}function zv(e,t){return S(t,"bpmn:Activity")&&S(e,"bpmn:BoundaryEvent")&&t.businessObject.isForCompensation}function ja(e){return S(e,"bpmn:SubProcess")&&Xe(e)}function Wr(e,t){return e===t}function LM(e,t){return t.indexOf(e)!==-1}function Io(e){var t=/right|left/.exec(e);return t&&t[0]}function Bo(e){var t=/top|bottom/.exec(e);return t&&t[0]}function Gv(e,t){return bf[e]===t}function IM(e,t){var n=Io(e),i=bf[n];return t.indexOf(i)!==-1}function BM(e,t){var n=Bo(e),i=bf[n];return t.indexOf(i)!==-1}function Vv(e){return e==="right"||e==="left"}function NM(e,t,n){var i=t.waypoints,r=i&&i.length&&an(i[0],e);return r==="top"?n.loop.fromTop:r==="right"?n.loop.fromRight:r==="left"?n.loop.fromLeft:n.loop.fromBottom}function $M(e,t,n,i){var r=Le(e),o=Le(t),a=MM(e),s,c,u=Wr(e.host,t),l=LM(a,["top","right","bottom","left"]),p=an(o,r,{x:e.width/2+t.width/2,y:e.height/2+t.height/2});return u?FM(a,l,e,t,n,i):(s=jM(a,p,l,i.isHorizontal),c=HM(a,p,l,i.isHorizontal),[s+":"+c])}function FM(e,t,n,i,r,o){var a=t?e:o.isHorizontal?Bo(e):Io(e),s=Fa[a],c;return t?Vv(e)?c=Wv("y",n,i,r)?"h":o.boundaryLoop.alternateHorizontalSide:c=Wv("x",n,i,r)?"v":o.boundaryLoop.alternateVerticalSide:c=o.boundaryLoop.default,[s+":"+c]}function Wv(e,t,n,i){var r=PM;return!(xf(e,i,n,r)||xf(e,i,{x:n.x+n.width,y:n.y+n.height},r)||xf(e,i,Le(t),r))}function xf(e,t,n,i){return Math.abs(t[e]-n[e])<i}function jM(e,t,n,i){if(n)return Fa[e];var r=Bo(e),o=Io(e),a=Bo(t),s=Io(t);if(i){if(Wr(r,a)||Gv(o,s))return Fa[r]}else if(Wr(o,s)||Gv(r,a))return Fa[o];return Fa[i?o:r]}function HM(e,t,n,i){if(n)return Vv(e)?IM(e,t)||Wr(e,t)?"h":"v":BM(e,t)||Wr(e,t)?"v":"h";var r=Bo(e),o=Io(e),a=Bo(t),s=Io(t);return a&&!s?"v":s&&!a?"h":i?Wr(r,a)?"h":"v":Wr(o,s)?"v":"h"}Wc.$inject=["elementRegistry"];function Uv(e){return V({original:e.point.original||e.point},e.actual)}function yr(e,t){this._elementRegistry=e,this._graphicsFactory=t}yr.$inject=["elementRegistry","graphicsFactory"],yr.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(Uv(i)),o.push(Uv(r)),o},yr.prototype.getDockingPoint=function(e,t,n){var i=e.waypoints,r,o,a;return r=n?0:i.length-1,o=i[r],a=this._getIntersection(t,e,n),{point:o,actual:a||o,idx:r}},yr.prototype._getIntersection=function(e,t,n){var i=this._getShapePath(e),r=this._getConnectionPath(t);return ua(i,r,n)},yr.prototype._getConnectionPath=function(e){return this._graphicsFactory.getConnectionPath(e)},yr.prototype._getShapePath=function(e){return this._graphicsFactory.getShapePath(e)},yr.prototype._getGfx=function(e){return this._elementRegistry.getGraphics(e)};const _f={__init__:["modeling","bpmnUpdater"],__depends__:[aA,wA,SA,RA,rv,CT,AT,LT,ti,rf,lv],bpmnFactory:["type",ii],bpmnUpdater:["type",Bn],elementFactory:["type",hr],modeling:["type",un],layouter:["type",Wc],connectionDocking:["type",yr]};var zM=10,Yv=50,GM=250;function wf(e,t,n,i){for(var r;r=VM(e,n,t);)n=i(t,n,r);return n}function Ef(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=o==="x"?"width":"height",c=a.margin,u=a.minDistance;c<0?r[o]=Math.min(i[o]+c-t[s]/2,n[o]-u+c):r[o]=Math.max(i[o]+i[s]+c+t[s]/2,n[o]+u+c)}}),r}}function VM(e,t,n){var i={x:t.x-n.width/2,y:t.y-n.height/2,width:n.width,height:n.height},r=UM(e);return ht(r,function(o){if(o===n)return!1;var a=an(o,i,zM);return a==="intersect"})}function WM(e,t){t||(t={});function n(m){return m.source===e?1:-1}var i=t.defaultDistance||Yv,r=t.direction||"e",o=t.filter,a=t.getWeight||n,s=t.maxDistance||GM,c=t.reference||"start";o||(o=KM);function u(m,h){return r==="n"?c==="start"?ke(m).top-ke(h).bottom:c==="center"?ke(m).top-Le(h).y:ke(m).top-ke(h).top:r==="w"?c==="start"?ke(m).left-ke(h).right:c==="center"?ke(m).left-Le(h).x:ke(m).left-ke(h).left:r==="s"?c==="start"?ke(h).top-ke(m).bottom:c==="center"?Le(h).y-ke(m).bottom:ke(h).bottom-ke(m).bottom:c==="start"?ke(h).left-ke(m).right:c==="center"?Le(h).x-ke(m).right:ke(h).right-ke(m).right}var l=e.incoming.filter(o).map(function(m){var h=a(m),y=h<0?u(m.source,e):u(e,m.source);return{id:m.source.id,distance:y,weight:h}}),p=e.outgoing.filter(o).map(function(m){var h=a(m),y=h>0?u(e,m.target):u(m.target,e);return{id:m.target.id,distance:y,weight:h}}),f=l.concat(p).reduce(function(m,h){return m[h.id+"__weight_"+h.weight]=h,m},{}),d=Tn(f,function(m,h){var y=h.distance,g=h.weight;return y<0||y>s||(m[String(y)]||(m[String(y)]=0),m[String(y)]+=1*g,(!m.distance||m[m.distance]<m[String(y)])&&(m.distance=y)),m},{});return d.distance||i}function UM(e){var t=Sf(e);return e.host&&(t=t.concat(Sf(e.host))),e.attachers&&(t=t.concat(e.attachers.reduce(function(n,i){return n.concat(Sf(i))},[]))),t}function Sf(e){return qM(e).concat(YM(e))}function YM(e){return e.incoming.map(function(t){return t.source})}function qM(e){return e.outgoing.map(function(t){return t.target})}function KM(){return!0}var XM=100;function qv(e,t,n){e.on("autoPlace",XM,function(i){var r=i.shape,o=i.source;return ZM(o,r)}),e.on("autoPlace.end",function(i){n.scrollToElement(i.shape)}),this.append=function(i,r,o){e.fire("autoPlace.start",{source:i,shape:r});var a=e.fire("autoPlace",{source:i,shape:r}),s=t.appendShape(i,r,a,i.parent,o);return e.fire("autoPlace.end",{source:i,shape:s}),s}}qv.$inject=["eventBus","modeling","canvas"];function ZM(e,t,n){n||(n={});var i=n.defaultDistance||Yv,r=Le(e),o=ke(e);return{x:o.right+i+t.width/2,y:r.y}}function Kv(e,t){e.on("autoPlace.end",500,function(n){t.select(n.shape)})}Kv.$inject=["eventBus","selection"];const QM={__init__:["autoPlaceSelectionBehavior"],autoPlace:["type",qv],autoPlaceSelectionBehavior:["type",Kv]};function Xv(e,t,n){var i=Jm(e,n);if(S(t,"bpmn:TextAnnotation"))return e2(e,t,i);if(We(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"]))return t2(e,t,i);if(S(t,"bpmn:FlowNode"))return JM(e,t,i)}function JM(e,t,n){var i=ke(e),r=Le(e),o=n?{directionHint:"e",minDistance:80,baseOrientation:"left",boundaryOrientation:"top",start:"top",end:"bottom"}:{directionHint:"s",minDistance:90,baseOrientation:"top",boundaryOrientation:"left",start:"left",end:"right"},a=WM(e,{filter:function(d){return S(d,"bpmn:SequenceFlow")},direction:o.directionHint}),s=30,c=o.minDistance,u=o.baseOrientation;S(e,"bpmn:BoundaryEvent")&&(u=an(e,e.host,-25),u.indexOf(o.boundaryOrientation)!==-1&&(s*=-1));var l=n?{x:i.right+a+t.width/2,y:r.y+Zv(u,c,o)}:{x:r.x+Zv(u,c,o),y:i.bottom+a+t.height/2},p={margin:s,minDistance:c},f=n?{y:p}:{x:p};return wf(e,t,l,Ef(f))}function Zv(e,t,n){return e.includes(n.start)?-1*t:e.includes(n.end)?t:0}function e2(e,t,n){var i=ke(e),r=n?{x:i.right+t.width/2,y:i.top-50-t.height/2}:{x:i.right+50+t.width/2,y:i.bottom+t.height/2};pt(e)&&(r=Le(e),n?(r.x+=100,r.y-=50):(r.x+=100,r.y+=50));var o={margin:n?-30:30,minDistance:20},a=n?{y:o}:{x:o};return wf(e,t,r,Ef(a))}function t2(e,t,n){var i=ke(e),r=n?{x:i.right-10+t.width/2,y:i.bottom+40+t.width/2}:{x:i.left-40-t.width/2,y:i.bottom-10+t.height/2},o={margin:30,minDistance:30},a=n?{x:o}:{y:o};return wf(e,t,r,Ef(a))}function Qv(e,t){e.on("autoPlace",function(n){var i=n.shape,r=n.source;return Xv(r,i,t)})}Qv.$inject=["eventBus","elementRegistry"];const Uc={__depends__:[QM],__init__:["bpmnAutoPlace"],bpmnAutoPlace:["type",Qv]},Jv=[Zm,ma,_f,Uc];function n2(e={}){Yd(globalThis,e.dom);const t=document.createElement("div");return document.body.appendChild(t),new bo({container:t,moddleExtensions:e.moddleExtensions??gs,additionalModules:[...Jv,...e.additionalModules??[]]})}var i2=new Do("ov"),r2=500;function nn(e,t,n,i){this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=i2,this._overlayDefaults=V({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=o2(n.getContainer()),this._init()}nn.$inject=["config.overlays","eventBus","canvas","elementRegistry"],nn.prototype.get=function(e){if(Pn(e)&&(e={id:e}),Pn(e.element)&&(e.element=this._elementRegistry.get(e.element)),e.element){var t=this._getOverlayContainer(e.element,!0);return t?e.type?Ye(t.overlays,oo({type:e.type})):t.overlays.slice():[]}else return e.type?Ye(this._overlays,oo({type:e.type})):e.id?this._overlays[e.id]:null},nn.prototype.add=function(e,t,n){if(Xt(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=V({},this._overlayDefaults,n,{id:i,type:t,element:e,html:n.html}),this._addOverlay(n),i},nn.prototype.remove=function(e){var t=this.get(e)||[];De(t)||(t=[t]);var n=this;F(t,function(i){var r=n._getOverlayContainer(i.element,!0);if(i&&(yi(i.html),yi(i.htmlContainer),delete i.htmlContainer,delete i.element,delete n._overlays[i.id]),r){var o=r.overlays.indexOf(i);o!==-1&&r.overlays.splice(o,1)}})},nn.prototype.isShown=function(){return this._overlayRoot.style.display!=="none"},nn.prototype.show=function(){Yc(this._overlayRoot)},nn.prototype.hide=function(){Yc(this._overlayRoot,!1)},nn.prototype.clear=function(){this._overlays={},this._overlayContainers=[],Ms(this._overlayRoot)},nn.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=Bt(t);i=o.x,r=o.y}eb(n,i,r),hn(e.html,"data-container-id",t.id)},nn.prototype._updateOverlay=function(e){var t=e.position,n=e.htmlContainer,i=e.element,r=t.left,o=t.top;if(t.right!==void 0){var a;i.waypoints?a=Bt(i).width:a=i.width,r=t.right*-1+a}if(t.bottom!==void 0){var s;i.waypoints?s=Bt(i).height:s=i.height,o=t.bottom*-1+s}eb(n,r||0,o||0),this._updateOverlayVisibilty(e,this._canvas.viewbox())},nn.prototype._createOverlayContainer=function(e){var t=bt('<div class="djs-overlays" />');_n(t,{position:"absolute"}),this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},nn.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";tb(this._overlayRoot,n)},nn.prototype._getOverlayContainer=function(e,t){var n=ht(this._overlayContainers,function(i){return i.element===e});return!n&&!t?this._createOverlayContainer(e):n},nn.prototype._addOverlay=function(e){var t=e.id,n=e.element,i=e.html,r,o;i.get&&i.constructor.prototype.jquery&&(i=i.get(0)),Pn(i)&&(i=bt(i)),o=this._getOverlayContainer(n),r=bt('<div class="djs-overlay" data-overlay-id="'+t+'">'),_n(r,{position:"absolute"}),r.appendChild(i),e.type&&Et(r).add("djs-overlay-"+e.type);var a=this._canvas.findRoot(n),s=this._canvas.getRootElement();Yc(r,a===s),e.htmlContainer=r,o.overlays.push(e),o.html.appendChild(r),this._overlays[t]=e,this._updateOverlay(e),this._updateOverlayVisibilty(e,this._canvas.viewbox())},nn.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=this._canvas.getRootElement(),c=!0;(i!==s||n&&(Vt(r)&&r>t.scale||Vt(o)&&o<t.scale))&&(c=!1),Yc(a,c),this._updateOverlayScale(e,t)},nn.prototype._updateOverlayScale=function(e,t){var n=e.scale,i,r,o=e.htmlContainer,a,s="";n!==!0&&(n===!1?(i=1,r=1):(i=n.min,r=n.max),Vt(i)&&t.scale<i&&(a=(1/t.scale||1)*i),Vt(r)&&t.scale>r&&(a=(1/t.scale||1)*r)),Vt(a)&&(s="scale("+a+","+a+")"),tb(o,s)},nn.prototype._updateOverlaysVisibilty=function(e){var t=this;F(this._overlays,function(n){t._updateOverlayVisibilty(n,e)})},nn.prototype._init=function(){var e=this._eventBus,t=this;function n(i){t._updateRoot(i),t._updateOverlaysVisibilty(i),t.show()}e.on("canvas.viewbox.changing",function(i){t.hide()}),e.on("canvas.viewbox.changed",function(i){n(i.viewbox)}),e.on(["shape.remove","connection.remove"],function(i){var r=i.element,o=t.get({element:r});F(o,function(c){t.remove(c.id)});var a=t._getOverlayContainer(r);if(a){yi(a.html);var s=t._overlayContainers.indexOf(a);s!==-1&&t._overlayContainers.splice(s,1)}}),e.on("element.changed",r2,function(i){var r=i.element,o=t._getOverlayContainer(r,!0);o&&(F(o.overlays,function(a){t._updateOverlay(a)}),t._updateOverlayContainer(o))}),e.on("element.marker.update",function(i){var r=t._getOverlayContainer(i.element,!0);r&&Et(r.html)[i.add?"add":"remove"](i.marker)}),e.on("root.set",function(){t._updateOverlaysVisibilty(t._canvas.viewbox())}),e.on("diagram.clear",this.clear,this)};function o2(e){var t=bt('<div class="djs-overlay-container" />');return _n(t,{position:"absolute",width:0,height:0}),e.insertBefore(t,e.firstChild),t}function eb(e,t,n){_n(e,{left:t+"px",top:n+"px"})}function Yc(e,t){e.style.display=t===!1?"none":""}function tb(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach(function(n){e.style[n+"transform"]=t})}const qc={__init__:["overlays"],overlays:["type",nn]};function Rf(e,t){t.invoke(J,this),this.executed(function(n){var i=n.context;i.rootElement?e.setRootElement(i.rootElement):i.rootElement=e.getRootElement()}),this.revert(function(n){var i=n.context;i.rootElement&&e.setRootElement(i.rootElement)})}ye(Rf,J),Rf.$inject=["canvas","injector"];const a2={__init__:["rootElementsBehavior"],rootElementsBehavior:["type",Rf]};function Ha(e){return CSS.escape(e)}var s2={"&":"&","<":"<",">":">",'"':""","'":"'"};function nb(e){return e=""+e,e&&e.replace(/[&<>"']/g,function(t){return s2[t]})}var c2="bjs-breadcrumbs-shown";function ib(e,t,n){var i=bt('<ul class="bjs-breadcrumbs"></ul>'),r=n.getContainer(),o=Et(r);r.appendChild(i);var a=[];e.on("element.changed",function(c){var u=c.element,l=te(u),p=ht(a,function(f){return f===l});p&&s()});function s(c){c&&(a=u2(c));var u=a.flatMap(function(p){var f=n.findRoot(wi(p))||n.findRoot(p.id);if(!f&&S(p,"bpmn:Process")){var d=t.find(function(y){var g=te(y);return g&&g.get("processRef")===p});f=d&&n.findRoot(d.id)}if(!f)return[];var m=nb(p.name||p.id),h=bt('<li><span class="bjs-crumb"><a title="'+m+'">'+m+"</a></span></li>");return h.addEventListener("click",function(){n.setRootElement(f)}),h});i.innerHTML="";var l=u.length>1;o.toggle(c2,l),u.forEach(function(p){i.appendChild(p)})}e.on("root.set",function(c){s(c.element)})}ib.$inject=["eventBus","elementRegistry","canvas"];function u2(e){for(var t=te(e),n=[],i=t;i;i=i.$parent)(S(i,"bpmn:SubProcess")||S(i,"bpmn:Process"))&&n.push(i);return n.reverse()}function rb(e,t){var n=null,i=new l2;e.on("root.set",function(r){var o=r.element,a=t.viewbox(),s=i.get(o);if(i.set(n,{x:a.x,y:a.y,zoom:a.scale}),n=o,!(!S(o,"bpmn:SubProcess")&&!s)){s=s||{x:0,y:0,zoom:1};var c=(a.x-s.x)*a.scale,u=(a.y-s.y)*a.scale;(c!==0||u!==0)&&t.scroll({dx:c,dy:u}),s.zoom!==a.scale&&t.zoom(s.zoom,{x:0,y:0})}}),e.on("diagram.clear",function(){i.clear(),n=null})}rb.$inject=["eventBus","canvas"];function l2(){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}t!==-1&&this._entries.splice(t,1)}}var ob={x:180,y:160};function Ur(e,t){this._eventBus=e,this._moddle=t;var n=this;e.on("import.render.start",1500,function(i,r){n._handleImport(r.definitions)})}Ur.prototype._handleImport=function(e){if(e.diagrams){var t=this;this._definitions=e,this._processToDiagramMap={},e.diagrams.forEach(function(i){!i.plane||!i.plane.bpmnElement||(t._processToDiagramMap[i.plane.bpmnElement.id]=i)});var n=e.diagrams.filter(i=>i.plane).flatMap(i=>t._createNewDiagrams(i.plane));n.forEach(function(i){t._movePlaneElementsToOrigin(i.plane)})}},Ur.prototype._createNewDiagrams=function(e){var t=this,n=[],i=[];e.get("planeElement").forEach(function(o){var a=o.bpmnElement;if(a){var s=a.$parent;S(a,"bpmn:SubProcess")&&!o.isExpanded&&n.push(a),f2(a,e)&&i.push({diElement:o,parent:s})}});var r=[];return n.forEach(function(o){if(!t._processToDiagramMap[o.id]){var a=t._createDiagram(o);t._processToDiagramMap[o.id]=a,r.push(a)}}),i.forEach(function(o){for(var a=o.diElement,s=o.parent;s&&n.indexOf(s)===-1;)s=s.$parent;if(s){var c=t._processToDiagramMap[s.id];t._moveToDiPlane(a,c.plane)}}),r},Ur.prototype._movePlaneElementsToOrigin=function(e){var t=e.get("planeElement"),n=p2(e),i={x:n.x-ob.x,y:n.y-ob.y};t.forEach(function(r){r.waypoint?r.waypoint.forEach(function(o){o.x=o.x-i.x,o.y=o.y-i.y}):r.bounds&&(r.bounds.x=r.bounds.x-i.x,r.bounds.y=r.bounds.y-i.y)})},Ur.prototype._moveToDiPlane=function(e,t){var n=ab(e),i=n.plane.get("planeElement");i.splice(i.indexOf(e),1),t.get("planeElement").push(e)},Ur.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},Ur.$inject=["eventBus","moddle"];function ab(e){return S(e,"bpmndi:BPMNDiagram")?e:ab(e.$parent)}function p2(e){var t={top:1/0,right:-1/0,bottom:-1/0,left:1/0};return e.planeElement.forEach(function(n){if(n.bounds){var i=ke(n.bounds);t.top=Math.min(i.top,t.top),t.left=Math.min(i.left,t.left)}}),Fs(t)}function f2(e,t){var n=e.$parent;return!(!S(n,"bpmn:SubProcess")||n===t.bpmnElement||We(e,["bpmn:DataInputAssociation","bpmn:DataOutputAssociation"]))}var Kc=250,d2='<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>',h2="bjs-drilldown-empty";function vr(e,t,n,i,r){J.call(this,t),this._canvas=e,this._eventBus=t,this._elementRegistry=n,this._overlays=i,this._translate=r;var o=this;this.executed("shape.toggleCollapse",Kc,function(a){var s=a.shape;o._canDrillDown(s)?o._addOverlay(s):o._removeOverlay(s)},!0),this.reverted("shape.toggleCollapse",Kc,function(a){var s=a.shape;o._canDrillDown(s)?o._addOverlay(s):o._removeOverlay(s)},!0),this.executed(["shape.create","shape.move","shape.delete"],Kc,function(a){var s=a.oldParent,c=a.newParent||a.parent,u=a.shape;o._canDrillDown(u)&&o._addOverlay(u),o._updateDrilldownOverlay(s),o._updateDrilldownOverlay(c),o._updateDrilldownOverlay(u)},!0),this.reverted(["shape.create","shape.move","shape.delete"],Kc,function(a){var s=a.oldParent,c=a.newParent||a.parent,u=a.shape;o._canDrillDown(u)&&o._addOverlay(u),o._updateDrilldownOverlay(s),o._updateDrilldownOverlay(c),o._updateDrilldownOverlay(u)},!0),t.on("import.render.complete",function(){n.filter(function(a){return o._canDrillDown(a)}).map(function(a){o._addOverlay(a)})})}ye(vr,J),vr.prototype._updateDrilldownOverlay=function(e){var t=this._canvas;if(e){var n=t.findRoot(e);n&&this._updateOverlayVisibility(n)}},vr.prototype._canDrillDown=function(e){var t=this._canvas;return S(e,"bpmn:SubProcess")&&t.findRoot(wi(e))},vr.prototype._updateOverlayVisibility=function(e){var t=this._overlays,n=te(e),i=t.get({element:n.id,type:"drilldown"})[0];if(i){var r=n&&n.get("flowElements")&&n.get("flowElements").length;Et(i.html).toggle(h2,!r)}},vr.prototype._addOverlay=function(e){var t=this._canvas,n=this._overlays,i=te(e),r=n.get({element:e,type:"drilldown"});r.length&&this._removeOverlay(e);var o=bt('<button type="button" class="bjs-drilldown">'+d2+"</button>"),a=i.get("name")||i.get("id"),s=this._translate("Open {element}",{element:a});o.setAttribute("title",s),o.addEventListener("click",function(){t.setRootElement(t.findRoot(wi(e)))}),n.add(e,"drilldown",{position:{bottom:-7,right:-8},html:o}),this._updateOverlayVisibility(e)},vr.prototype._removeOverlay=function(e){var t=this._overlays;t.remove({element:e,type:"drilldown"})},vr.$inject=["canvas","eventBus","elementRegistry","overlays","translate"];const m2={__depends__:[qc,rf,a2],__init__:["drilldownBreadcrumbs","drilldownOverlayBehavior","drilldownCentering","subprocessCompatibility"],drilldownBreadcrumbs:["type",ib],drilldownCentering:["type",rb],drilldownOverlayBehavior:["type",vr],subprocessCompatibility:["type",Ur]};function br(e){St.call(this,e)}ye(br,St),br.prototype._modules=[Zm,m2,qc,ti,ma],br.prototype._moddleExtensions={};var Xc="keyboard.keydown",g2="keyboard.keyup",y2=1e3,sb="Keyboard binding is now implicit; explicit binding to an element got removed. For more information, see https://github.com/bpmn-io/diagram-js/issues/661";function wn(e,t){var n=this;this._config=e=e||{},this._eventBus=t,this._keydownHandler=this._keydownHandler.bind(this),this._keyupHandler=this._keyupHandler.bind(this),t.on("diagram.destroy",function(){n._fire("destroy"),n.unbind()}),e.bindTo&&console.error("unsupported configuration <keyboard.bindTo>",new Error(sb));var i=e&&e.bind!==!1;t.on("canvas.init",function(r){n._target=r.svg,i&&n.bind(),n._fire("init")})}wn.$inject=["config.keyboard","eventBus"],wn.prototype._keydownHandler=function(e){this._keyHandler(e,Xc)},wn.prototype._keyupHandler=function(e){this._keyHandler(e,g2)},wn.prototype._keyHandler=function(e,t){var n;if(!this._isEventIgnored(e)){var i={keyEvent:e};n=this._eventBus.fire(t||Xc,i),n&&e.preventDefault()}},wn.prototype._isEventIgnored=function(e){return!1},wn.prototype.bind=function(e){e&&console.error("unsupported argument <node>",new Error(sb)),this.unbind(),e=this._node=this._target,Ne.bind(e,"keydown",this._keydownHandler),Ne.bind(e,"keyup",this._keyupHandler),this._fire("bind")},wn.prototype.getBinding=function(){return this._node},wn.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),Ne.unbind(e,"keydown",this._keydownHandler),Ne.unbind(e,"keyup",this._keyupHandler)),this._node=null},wn.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},wn.prototype.addListener=function(e,t,n){Zt(e)&&(n=t,t=e,e=y2),this._eventBus.on(n||Xc,e,t)},wn.prototype.removeListener=function(e,t){this._eventBus.off(t||Xc,e)},wn.prototype.hasModifier=$A,wn.prototype.isCmd=Ln,wn.prototype.isShift=Up,wn.prototype.isKey=Yt;var v2=500;function No(e,t){var n=this;e.on("editorActions.init",v2,function(i){var r=i.editorActions;n.registerBindings(t,r)})}No.$inject=["eventBus","keyboard"],No.prototype.registerBindings=function(e,t){function n(i,r){t.isRegistered(i)&&e.addListener(r)}n("undo",function(i){var r=i.keyEvent;if(GA(r))return t.trigger("undo"),!0}),n("redo",function(i){var r=i.keyEvent;if(VA(r))return t.trigger("redo"),!0}),n("copy",function(i){var r=i.keyEvent;if(FA(r))return t.trigger("copy"),!0}),n("paste",function(i){var r=i.keyEvent;if(jA(r))return t.trigger("paste"),!0}),n("duplicate",function(i){var r=i.keyEvent;if(HA(r))return t.trigger("duplicate"),!0}),n("cut",function(i){var r=i.keyEvent;if(zA(r))return t.trigger("cut"),!0}),n("stepZoom",function(i){var r=i.keyEvent;if(Yt(["+","Add","="],r)&&Ln(r))return t.trigger("stepZoom",{value:1}),!0}),n("stepZoom",function(i){var r=i.keyEvent;if(Yt(["-","Subtract"],r)&&Ln(r))return t.trigger("stepZoom",{value:-1}),!0}),n("zoom",function(i){var r=i.keyEvent;if(Yt("0",r)&&Ln(r))return t.trigger("zoom",{value:1}),!0}),n("removeSelection",function(i){var r=i.keyEvent;if(Yt(["Backspace","Delete","Del"],r))return t.trigger("removeSelection"),!0})};const Cf={__init__:["keyboard","keyboardBindings"],keyboard:["type",wn],keyboardBindings:["type",No]};var b2={moveSpeed:50,moveSpeedAccelerated:200};function cb(e,t,n){var i=this;this._config=V({},b2,e||{}),t.addListener(r);function r(o){var a=o.keyEvent,s=i._config;if(t.isCmd(a)&&t.isKey(["ArrowLeft","Left","ArrowUp","Up","ArrowDown","Down","ArrowRight","Right"],a)){var c=t.isShift(a)?s.moveSpeedAccelerated:s.moveSpeed,u;switch(a.key){case"ArrowLeft":case"Left":u="left";break;case"ArrowUp":case"Up":u="up";break;case"ArrowRight":case"Right":u="right";break;case"ArrowDown":case"Down":u="down";break}return i.moveCanvas({speed:c,direction:u}),!0}}this.moveCanvas=function(o){var a=0,s=0,c=o.speed,u=c/Math.min(Math.sqrt(n.viewbox().scale),1);switch(o.direction){case"left":a=u;break;case"up":s=u;break;case"right":a=-u;break;case"down":s=-u;break}n.scroll({dx:a,dy:s})}}cb.$inject=["config.keyboardMove","keyboard","canvas"];const ub={__depends__:[Cf],__init__:["keyboardMove"],keyboardMove:["type",cb]};var x2=15;function lb(e,t){var n;function i(s){return a(s.originalEvent)}e.on("canvas.focus.changed",function(s){s.focused?e.on("element.mousedown",500,i):e.off("element.mousedown",i)});function r(s){var c=n.start,u=n.button,l=jr(s),p=li(l,c);if(!n.dragging&&_2(p)>x2&&(n.dragging=!0,u===0&&Ny(e),Ec("grab")),n.dragging){var f=n.last||n.start;p=li(l,f),t.scroll({dx:p.x,dy:p.y}),n.last=l}s.preventDefault()}function o(s){Ne.unbind(document,"mousemove",r),Ne.unbind(document,"mouseup",o),n=null,By()}function a(s){if(!Lr(s.target,".djs-draggable")){var c=s.button;if(!(c>=2||s.ctrlKey||s.shiftKey||s.altKey))return n={button:c,start:jr(s)},Ne.bind(document,"mousemove",r),Ne.bind(document,"mouseup",o),!0}}this.isActive=function(){return!!n}}lb.$inject=["eventBus","canvas"];function _2(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}const pb={__init__:["moveCanvas"],moveCanvas:["type",lb]};function fb(e,t){var n=Gl(e.min),i=Gl(e.max),r=Math.abs(n)+Math.abs(i);return r/t}function w2(e,t){return Math.max(e.min,Math.min(e.max,t))}var E2=Math.sign||function(e){return e>=0?1:-1},Pf={min:.2,max:4},db=10,S2=.1,R2=.75;function Ri(e,t,n){e=e||{},this._enabled=!1,this._canvas=n,this._container=n._container,this._handleWheel=Sn(this._handleWheel,this),this._totalDelta=0,this._scale=e.scale||R2;var i=this;t.on("canvas.mouseover",function(){i._init(e.enabled!==!1)}),t.on("canvas.mouseout",function(){i._init(!1)})}Ri.$inject=["config.zoomScroll","eventBus","canvas"],Ri.prototype.scroll=function(t){this._canvas.scroll(t)},Ri.prototype.reset=function(){this._canvas.zoom("fit-viewport")},Ri.prototype.zoom=function(t,n){var i=fb(Pf,db*2);this._totalDelta+=t,Math.abs(this._totalDelta)>S2&&(this._zoom(t,n,i),this._totalDelta=0)},Ri.prototype._handleWheel=function(t){if(this._enabled){var n=this._container;t.preventDefault();var i=t.ctrlKey||Vg()&&t.metaKey,r=t.shiftKey,o=-1*this._scale,a;if(i?o*=t.deltaMode===0?.02:.32:o*=t.deltaMode===0?1:16,i){var s=n.getBoundingClientRect(),c={x:t.clientX-s.left,y:t.clientY-s.top};a=Math.sqrt(Math.pow(t.deltaY,2)+Math.pow(t.deltaX,2))*E2(t.deltaY)*o,this.zoom(a,c)}else r?a={dx:o*t.deltaY,dy:0}:a={dx:o*t.deltaX,dy:o*t.deltaY},this.scroll(a)}},Ri.prototype.stepZoom=function(t,n){var i=fb(Pf,db);this._zoom(t,n,i)},Ri.prototype._zoom=function(e,t,n){var i=this._canvas,r=e>0?1:-1,o=Gl(i.zoom()),a=Math.round(o/n)*n;a+=n*r;var s=Math.pow(10,a);i.zoom(w2(Pf,s),t)},Ri.prototype.toggle=function(t){var n=this._container,i=this._handleWheel,r=this._enabled;return typeof t>"u"&&(t=!r),r!==t&&Ne[t?"bind":"unbind"](n,"wheel",i,!1),this._enabled=t,t},Ri.prototype._init=function(e){this.toggle(e)};const hb={__init__:["zoomScroll"],zoomScroll:["type",Ri]};function za(e){br.call(this,e)}ye(za,br),za.prototype._navigationModules=[ub,pb,hb],za.prototype._modules=[].concat(br.prototype._modules,za.prototype._navigationModules);function Af(e){return e&&e[e.length-1]}function mb(e){return e.y}function gb(e){return e.x}var C2={left:gb,center:gb,right:function(e){return e.x+e.width},top:mb,middle:mb,bottom:function(e){return e.y+e.height}};function $o(e,t){this._modeling=e,this._rules=t}$o.$inject=["modeling","rules"],$o.prototype._getOrientationDetails=function(e){var t=["top","bottom","middle"],n="x",i="width";return t.indexOf(e)!==-1&&(n="y",i="height"),{axis:n,dimension:i}},$o.prototype._isType=function(e,t){return t.indexOf(e)!==-1},$o.prototype._alignmentPosition=function(e,t){var n=this._getOrientationDetails(e),i=n.axis,r=n.dimension,o={},a={},s=!1,c,u,l;function p(f,d){return Math.round((f[i]+d[i]+d[r])/2)}if(this._isType(e,["left","top"]))o[e]=t[0][i];else if(this._isType(e,["right","bottom"]))l=Af(t),o[e]=l[i]+l[r];else if(this._isType(e,["center","middle"])){if(F(t,function(f){var d=f[i]+Math.round(f[r]/2);a[d]?a[d].elements.push(f):a[d]={elements:[f],center:d}}),c=fi(a,function(f){return f.elements.length>1&&(s=!0),f.elements.length}),s)return o[e]=Af(c).center,o;u=t[0],t=fi(t,function(f){return f[i]+f[r]}),l=Af(t),o[e]=p(u,l)}return o},$o.prototype.trigger=function(e,t){var n=this._modeling,i,r=Ye(e,function(c){return!(c.waypoints||c.host||c.labelTarget)});if(i=this._rules.allowed("elements.align",{elements:r}),De(i)&&(r=i),!(r.length<2||!i)){var o=C2[t],a=fi(r,o),s=this._alignmentPosition(t,a);n.alignElements(a,s)}};const P2={__init__:["alignElements"],alignElements:["type",$o]},A2=new Do;function Fo(e){this._scheduled={},e.on("diagram.destroy",()=>{Object.keys(this._scheduled).forEach(t=>{this.cancel(t)})})}Fo.$inject=["eventBus"],Fo.prototype.schedule=function(e,t=A2.next()){this.cancel(t);const n=this._schedule(e,t);return this._scheduled[t]=n,n.promise},Fo.prototype._schedule=function(e,t){const n=T2();return{executionId:setTimeout(()=>{try{this._scheduled[t]=null;try{n.resolve(e())}catch(r){n.reject(r)}}catch(r){console.error("Scheduler#_schedule execution failed",r)}}),promise:n.promise}},Fo.prototype.cancel=function(e){const t=this._scheduled[e];t&&(this._cancel(t),this._scheduled[e]=null)},Fo.prototype._cancel=function(e){clearTimeout(e.executionId)};function T2(){const e={};return e.promise=new Promise((t,n)=>{e.resolve=t,e.reject=n}),e}const M2={scheduler:["type",Fo]};var k2="djs-element-hidden",Zc=".entry",O2=1e3,yb=8,D2=300;function $t(e,t,n,i){this._canvas=e,this._elementRegistry=t,this._eventBus=n,this._scheduler=i,this._current=null,this._init()}$t.$inject=["canvas","elementRegistry","eventBus","scheduler"],$t.prototype._init=function(){var e=this;this._eventBus.on("selection.changed",function(t){var n=t.newSelection,i=n.length?n.length===1?n[0]:n:null;i?e.open(i,!0):e.close()}),this._eventBus.on("elements.changed",function(t){var n=t.elements,i=e._current;if(i){var r=i.target,o=De(r)?r:[r],a=o.filter(function(c){return n.includes(c)});if(a.length){e.close();var s=o.filter(function(c){return e._elementRegistry.get(c.id)});s.length&&e._updateAndOpen(s.length>1?s:s[0])}}}),this._eventBus.on("canvas.viewbox.changed",function(){e._updatePosition()}),this._eventBus.on("element.marker.update",function(t){if(e.isOpen()){var n=t.element,i=e._current,r=De(i.target)?i.target:[i.target];r.includes(n)&&e._updateVisibility()}}),this._container=this._createContainer()},$t.prototype._createContainer=function(){var e=bt('<div class="djs-context-pad-parent"></div>');return this._canvas.getContainer().appendChild(e),e},$t.prototype.registerProvider=function(e,t){t||(t=e,e=O2),this._eventBus.on("contextPad.getProviders",e,function(n){n.providers.push(t)})},$t.prototype.getEntries=function(e){var t=this._getProviders(),n=De(e)?"getMultiElementContextPadEntries":"getContextPadEntries",i={};return F(t,function(r){if(Zt(r[n])){var o=r[n](e);Zt(o)?i=o(i):F(o,function(a,s){i[s]=a})}}),i},$t.prototype.trigger=function(e,t,n){var i=this,r,o,a=t.delegateTarget||t.target;if(!a)return t.preventDefault();if(r=hn(a,"data-action"),o=t.originalEvent||t,e==="mouseover"){this._timeout=setTimeout(function(){i._mouseout=i.triggerEntry(r,"hover",o,n)},D2);return}else if(e==="mouseout"){clearTimeout(this._timeout),this._mouseout&&(this._mouseout(),this._mouseout=null);return}return this.triggerEntry(r,e,o,n)},$t.prototype.triggerEntry=function(e,t,n,i){if(this.isShown()){var r=this._current.target,o=this._current.entries,a=o[e];if(a){var s=a.action;if(this._eventBus.fire("contextPad.trigger",{entry:a,event:n})!==!1){if(Zt(s)){if(t==="click")return s(n,r,i)}else if(s[t])return s[t](n,r,i);n.preventDefault()}}}},$t.prototype.open=function(e,t){if(!(!t&&this.isOpen(e))){var n=this._eventBus.fire("contextPad.open.allowed",{target:e});n!==!1&&(this.close(),this._updateAndOpen(e))}},$t.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"contextPad.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},$t.prototype._updateAndOpen=function(e){var t=this.getEntries(e),n=this._createHtml(e),i;F(t,function(r,o){var a=r.group||"default",s=bt(r.html||'<div class="entry" draggable="true"></div>'),c;hn(s,"data-action",o),c=ut("[data-group="+Ha(a)+"]",n),c||(c=bt('<div class="group"></div>'),hn(c,"data-group",a),n.appendChild(c)),c.appendChild(s),r.className&&L2(s,r.className),r.title&&hn(s,"title",r.title),r.imageUrl&&(i=bt("<img>"),hn(i,"src",r.imageUrl),i.style.width="100%",i.style.height="100%",s.appendChild(i))}),Et(n).add("open"),this._current={entries:t,html:n,target:e},this._updatePosition(),this._updateVisibility(),this._eventBus.fire("contextPad.open",{current:this._current})},$t.prototype._createHtml=function(e){var t=this,n=bt('<div class="djs-context-pad"></div>');return kn.bind(n,Zc,"click",function(i){t.trigger("click",i)}),kn.bind(n,Zc,"dragstart",function(i){t.trigger("dragstart",i)}),kn.bind(n,Zc,"mouseover",function(i){t.trigger("mouseover",i)}),kn.bind(n,Zc,"mouseout",function(i){t.trigger("mouseout",i)}),Ne.bind(n,"mousedown",function(i){i.stopPropagation()}),this._container.appendChild(n),this._eventBus.fire("contextPad.create",{target:e,pad:n}),n},$t.prototype.getPad=function(e){console.warn(new Error("ContextPad#getPad is deprecated and will be removed in future library versions, cf. https://github.com/bpmn-io/diagram-js/pull/888"));let t;return this.isOpen()&&B2(this._current.target,e)?t=this._current.html:t=this._createHtml(e),{html:t}},$t.prototype.close=function(){this.isOpen()&&(clearTimeout(this._timeout),this._container.innerHTML="",this._eventBus.fire("contextPad.close",{current:this._current}),this._current=null)},$t.prototype.isOpen=function(e){var t=this._current;if(!t)return!1;if(!e)return!0;var n=t.target;return De(e)!==De(n)?!1:De(e)?e.length===n.length&&Mr(e,function(i){return n.includes(i)}):n===e},$t.prototype.isShown=function(){return this.isOpen()&&Et(this._current.html).has("open")},$t.prototype.show=function(){this.isOpen()&&(Et(this._current.html).add("open"),this._updatePosition(),this._eventBus.fire("contextPad.show",{current:this._current}))},$t.prototype.hide=function(){this.isOpen()&&(Et(this._current.html).remove("open"),this._eventBus.fire("contextPad.hide",{current:this._current}))},$t.prototype._getPosition=function(e){if(!De(e)&&pt(e)){var t=this._canvas.viewbox(),n=I2(e),i=n.x*t.scale-t.x*t.scale,r=n.y*t.scale-t.y*t.scale;return{left:i+yb*this._canvas.zoom(),top:r}}var o=this._canvas.getContainer(),a=o.getBoundingClientRect(),s=this._getTargetBounds(e);return{left:s.right-a.left+yb*this._canvas.zoom(),top:s.top-a.top}},$t.prototype._updatePosition=function(){const e=()=>{if(this.isOpen()){var t=this._current.html,n=this._getPosition(this._current.target);"x"in n&&"y"in n?(t.style.left=n.x+"px",t.style.top=n.y+"px"):["top","right","bottom","left"].forEach(function(i){i in n&&(t.style[i]=n[i]+"px")})}};this._scheduler.schedule(e,"ContextPad#_updatePosition")},$t.prototype._updateVisibility=function(){const e=()=>{if(this.isOpen()){var t=this,n=this._current.target,i=De(n)?n:[n],r=i.some(function(o){return t._canvas.hasMarker(o,k2)});r?t.hide():t.show()}};this._scheduler.schedule(e,"ContextPad#_updateVisibility")},$t.prototype._getTargetBounds=function(e){var t=this,n=De(e)?e:[e],i=n.map(function(r){return t._canvas.getGraphics(r)});return i.reduce(function(r,o){const a=o.getBoundingClientRect();return r.top=Math.min(r.top,a.top),r.right=Math.max(r.right,a.right),r.bottom=Math.max(r.bottom,a.bottom),r.left=Math.min(r.left,a.left),r.x=r.left,r.y=r.top,r.width=r.right-r.left,r.height=r.bottom-r.top,r},{top:1/0,right:-1/0,bottom:-1/0,left:1/0})};function L2(e,t){var n=Et(e);t=De(t)?t:t.split(/\s+/g),t.forEach(function(i){n.add(i)})}function I2(e){return e.waypoints[e.waypoints.length-1]}function B2(e,t){return e=De(e)?e:[e],t=De(t)?t:[t],e.length===t.length&&Mr(e,function(n){return t.includes(n)})}const vb={__depends__:[wc,M2,qc],contextPad:["type",$t]};var Qc,Ct,bb,xr,xb,_b,wb,Tf,Jc,Ga,Eb,Mf,kf,Of,eu={},tu=[],N2=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,nu=Array.isArray;function Vi(e,t){for(var n in t)e[n]=t[n];return e}function Df(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function Sb(e,t,n){var i,r,o,a={};for(o in t)o=="key"?i=t[o]:o=="ref"?r=t[o]:a[o]=t[o];if(arguments.length>2&&(a.children=arguments.length>3?Qc.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(o in e.defaultProps)a[o]===void 0&&(a[o]=e.defaultProps[o]);return iu(e,a,i,r,null)}function iu(e,t,n,i,r){var o={type:e,props:t,key:n,ref:i,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:r??++bb,__i:-1,__u:0};return r==null&&Ct.vnode!=null&&Ct.vnode(o),o}function ru(e){return e.children}function ou(e,t){this.props=e,this.context=t}function Yr(e,t){if(t==null)return e.__?Yr(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type=="function"?Yr(e):null}function $2(e){if(e.__P&&e.__d){var t=e.__v,n=t.__e,i=[],r=[],o=Vi({},t);o.__v=t.__v+1,Ct.vnode&&Ct.vnode(o),Lf(e.__P,o,t,e.__n,e.__P.namespaceURI,32&t.__u?[n]:null,i,n??Yr(t),!!(32&t.__u),r),o.__v=t.__v,o.__.__k[o.__i]=o,Ob(i,o,r),t.__e=t.__=null,o.__e!=n&&Rb(o)}}function Rb(e){if((e=e.__)!=null&&e.__c!=null)return e.__e=e.__c.base=null,e.__k.some(function(t){if(t!=null&&t.__e!=null)return e.__e=e.__c.base=t.__e}),Rb(e)}function Cb(e){(!e.__d&&(e.__d=!0)&&xr.push(e)&&!au.__r++||xb!=Ct.debounceRendering)&&((xb=Ct.debounceRendering)||_b)(au)}function au(){try{for(var e,t=1;xr.length;)xr.length>t&&xr.sort(wb),e=xr.shift(),t=xr.length,$2(e)}finally{xr.length=au.__r=0}}function Pb(e,t,n,i,r,o,a,s,c,u,l){var p,f,d,m,h,y,g=i&&i.__k||tu,v=t.length;for(c=F2(n,t,g,c,v),p=0;p<v;p++)(d=n.__k[p])!=null&&(f=d.__i!=-1&&g[d.__i]||eu,d.__i=p,y=Lf(e,d,f,r,o,a,s,c,u,l),m=d.__e,d.ref&&f.ref!=d.ref&&(f.ref&&If(f.ref,null,d),l.push(d.ref,d.__c||m,d)),h==null&&m!=null&&(h=m),4&d.__u?(c=Ab(d,c,e),f.__e&&(f.__e=null)):typeof d.type=="function"&&y!==void 0?c=y:m&&(c=m.nextSibling),d.__u&=-7);return n.__e=h,c}function F2(e,t,n,i,r){var o,a,s,c,u,l=n.length,p=l,f=0;for(e.__k=new Array(r),o=0;o<r;o++)(a=t[o])!=null&&typeof a!="boolean"&&typeof a!="function"?(typeof a=="string"||typeof a=="number"||typeof a=="bigint"||a.constructor==String?a=e.__k[o]=iu(null,a,null,null,null):nu(a)?a=e.__k[o]=iu(ru,{children:a},null,null,null):a.constructor===void 0&&a.__b>0?a=e.__k[o]=iu(a.type,a.props,a.key,a.ref?a.ref:null,a.__v):e.__k[o]=a,c=o+f,a.__=e,a.__b=e.__b+1,s=null,(u=a.__i=j2(a,n,c,p))!=-1&&(p--,(s=n[u])&&(s.__u|=2)),s==null||s.__v==null?(u==-1&&(r>l?f--:r<l&&f++),typeof a.type!="function"&&(a.__u|=4)):u!=c&&(u==c-1?f--:u==c+1?f++:(u>c?f--:f++,a.__u|=4))):e.__k[o]=null;if(p)for(o=0;o<l;o++)(s=n[o])!=null&&(2&s.__u)==0&&(s.__e==i&&(i=Yr(s)),Lb(s,s));return i}function Ab(e,t,n){var i,r;if(typeof e.type=="function"){for(i=e.__k,r=0;i&&r<i.length;r++)i[r]&&(i[r].__=e,t=Ab(i[r],t,n));return t}e.__e!=t&&(t&&e.type&&!t.parentNode&&(t=Yr(e)),t=n.insertBefore(e.__e,t||null));do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function j2(e,t,n,i){var r,o,a,s=e.key,c=e.type,u=t[n],l=u!=null&&(2&u.__u)==0;if(u===null&&s==null||l&&s==u.key&&c==u.type)return n;if(i>(l?1:0)){for(r=n-1,o=n+1;r>=0||o<t.length;)if((u=t[a=r>=0?r--:o++])!=null&&(2&u.__u)==0&&s==u.key&&c==u.type)return a}return-1}function Tb(e,t,n){t[0]=="-"?e.setProperty(t,n??""):e[t]=n==null?"":typeof n!="number"||N2.test(t)?n:n+"px"}function su(e,t,n,i,r){var o,a;e:if(t=="style")if(typeof n=="string")e.style.cssText=n;else{if(typeof i=="string"&&(e.style.cssText=i=""),i)for(t in i)n&&t in n||Tb(e.style,t,"");if(n)for(t in n)i&&n[t]==i[t]||Tb(e.style,t,n[t])}else if(t[0]=="o"&&t[1]=="n")o=t!=(t=t.replace(Eb,"$1")),a=t.toLowerCase(),t=a in e||t=="onFocusOut"||t=="onFocusIn"?a.slice(2):t.slice(2),e.l||(e.l={}),e.l[t+o]=n,n?i?n[Ga]=i[Ga]:(n[Ga]=Mf,e.addEventListener(t,o?Of:kf,o)):e.removeEventListener(t,o?Of:kf,o);else{if(r=="http://www.w3.org/2000/svg")t=t.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(t!="width"&&t!="height"&&t!="href"&&t!="list"&&t!="form"&&t!="tabIndex"&&t!="download"&&t!="rowSpan"&&t!="colSpan"&&t!="role"&&t!="popover"&&t in e)try{e[t]=n??"";break e}catch{}typeof n=="function"||(n==null||n===!1&&t[4]!="-"?e.removeAttribute(t):e.setAttribute(t,t=="popover"&&n==1?"":n))}}function Mb(e){return function(t){if(this.l){var n=this.l[t.type+e];if(t[Jc]==null)t[Jc]=Mf++;else if(t[Jc]<n[Ga])return;return n(Ct.event?Ct.event(t):t)}}}function Lf(e,t,n,i,r,o,a,s,c,u){var l,p,f,d,m,h,y,g,v,b,x,C,T,k,A,I,D=t.type;if(t.constructor!==void 0)return null;128&n.__u&&(c=!!(32&n.__u),o=[s=t.__e=n.__e]),(l=Ct.__b)&&l(t);e:if(typeof D=="function"){p=a.length;try{if(v=t.props,b=D.prototype&&D.prototype.render,x=(l=D.contextType)&&i[l.__c],C=l?x?x.props.value:l.__:i,n.__c?g=(f=t.__c=n.__c).__=f.__E:(b?t.__c=f=new D(v,C):(t.__c=f=new ou(v,C),f.constructor=D,f.render=z2),x&&x.sub(f),f.state||(f.state={}),f.__n=i,d=f.__d=!0,f.__h=[],f._sb=[]),b&&f.__s==null&&(f.__s=f.state),b&&D.getDerivedStateFromProps!=null&&(f.__s==f.state&&(f.__s=Vi({},f.__s)),Vi(f.__s,D.getDerivedStateFromProps(v,f.__s))),m=f.props,h=f.state,f.__v=t,d)b&&D.getDerivedStateFromProps==null&&f.componentWillMount!=null&&f.componentWillMount(),b&&f.componentDidMount!=null&&f.__h.push(f.componentDidMount);else{if(b&&D.getDerivedStateFromProps==null&&v!==m&&f.componentWillReceiveProps!=null&&f.componentWillReceiveProps(v,C),t.__v==n.__v||!f.__e&&f.shouldComponentUpdate!=null&&f.shouldComponentUpdate(v,f.__s,C)===!1){t.__v!=n.__v&&(f.props=v,f.state=f.__s,f.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(L){L&&(L.__=t)}),tu.push.apply(f.__h,f._sb),f._sb=[],f.__h.length&&a.push(f),s=Yr(n);break e}f.componentWillUpdate!=null&&f.componentWillUpdate(v,f.__s,C),b&&f.componentDidUpdate!=null&&f.__h.push(function(){f.componentDidUpdate(m,h,y)})}if(f.context=C,f.props=v,f.__P=e,f.__e=!1,T=Ct.__r,k=0,b)f.state=f.__s,f.__d=!1,T&&T(t),l=f.render(f.props,f.state,f.context),tu.push.apply(f.__h,f._sb),f._sb=[];else do f.__d=!1,T&&T(t),l=f.render(f.props,f.state,f.context),f.state=f.__s;while(f.__d&&++k<25);f.state=f.__s,f.getChildContext!=null&&(i=Vi(Vi({},i),f.getChildContext())),b&&!d&&f.getSnapshotBeforeUpdate!=null&&(y=f.getSnapshotBeforeUpdate(m,h)),A=l!=null&&l.type===ru&&l.key==null?Db(l.props.children):l,s=Pb(e,nu(A)?A:[A],t,n,i,r,o,a,s,c,u),f.base=t.__e,t.__u&=-161,f.__h.length&&a.push(f),g&&(f.__E=f.__=null)}catch(L){if(a.length=p,t.__v=null,c||o!=null){if(L.then){for(t.__u|=c?160:128;s&&s.nodeType==8&&s.nextSibling;)s=s.nextSibling;o!=null&&(o[o.indexOf(s)]=null),t.__e=s}else if(o!=null)for(I=o.length;I--;)Df(o[I])}else t.__e=n.__e;t.__k==null&&(t.__k=n.__k||[]),L.then||kb(t),Ct.__e(L,t,n)}}else o==null&&t.__v==n.__v?(t.__k=n.__k,t.__e=n.__e):s=t.__e=H2(n.__e,t,n,i,r,o,a,c,u);return(l=Ct.diffed)&&l(t),128&t.__u?void 0:s}function kb(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some(kb))}function Ob(e,t,n){for(var i=0;i<n.length;i++)If(n[i],n[++i],n[++i]);Ct.__c&&Ct.__c(t,e),e.some(function(r){try{e=r.__h,r.__h=[],e.some(function(o){o.call(r)})}catch(o){Ct.__e(o,r.__v)}})}function Db(e){return typeof e!="object"||e==null||e.__b>0?e:nu(e)?e.map(Db):e.constructor!==void 0?null:Vi({},e)}function H2(e,t,n,i,r,o,a,s,c){var u,l,p,f,d,m,h,y=n.props||eu,g=t.props,v=t.type;if(v=="svg"?r="http://www.w3.org/2000/svg":v=="math"?r="http://www.w3.org/1998/Math/MathML":r||(r="http://www.w3.org/1999/xhtml"),o!=null){for(u=0;u<o.length;u++)if((d=o[u])&&"setAttribute"in d==!!v&&(v?d.localName==v:d.nodeType==3)){e=d,o[u]=null;break}}if(e==null){if(v==null)return document.createTextNode(g);e=document.createElementNS(r,v,g.is&&g),s&&(Ct.__m&&Ct.__m(t,o),s=!1),o=null}if(v==null)y===g||s&&e.data==g||(e.data=g);else{if(o=v=="textarea"&&g.defaultValue!=null?null:o&&Qc.call(e.childNodes),!s&&o!=null)for(y={},u=0;u<e.attributes.length;u++)y[(d=e.attributes[u]).name]=d.value;for(u in y)d=y[u],u=="dangerouslySetInnerHTML"?p=d:u=="children"||u in g||u=="value"&&"defaultValue"in g||u=="checked"&&"defaultChecked"in g||su(e,u,null,d,r);for(u in g)d=g[u],u=="children"?f=d:u=="dangerouslySetInnerHTML"?l=d:u=="value"?m=d:u=="checked"?h=d:s&&typeof d!="function"||y[u]===d||su(e,u,d,y[u],r);if(l)s||p&&(l.__html==p.__html||l.__html==e.innerHTML)||(e.innerHTML=l.__html),t.__k=[];else if(p&&(e.innerHTML=""),Pb(t.type=="template"?e.content:e,nu(f)?f:[f],t,n,i,v=="foreignObject"?"http://www.w3.org/1999/xhtml":r,o,a,o?o[0]:n.__k&&Yr(n,0),s,c),o!=null)for(u=o.length;u--;)Df(o[u]);s&&v!="textarea"||(u="value",v=="progress"&&m==null?e.removeAttribute("value"):m!=null&&(m!==e[u]||v=="progress"&&!m||v=="option"&&m!=y[u])&&su(e,u,m,y[u],r),u="checked",h!=null&&h!=e[u]&&su(e,u,h,y[u],r))}return e}function If(e,t,n){try{if(typeof e=="function"){var i=typeof e.__u=="function";i&&e.__u(),i&&t==null||(e.__u=e(t))}else e.current=t}catch(r){Ct.__e(r,n)}}function Lb(e,t,n){var i,r;if(Ct.unmount&&Ct.unmount(e),(i=e.ref)&&(i.current&&i.current!=e.__e||If(i,null,t)),(i=e.__c)!=null){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(o){Ct.__e(o,t)}i.base=i.__P=i.__n=null}if(i=e.__k)for(r=0;r<i.length;r++)i[r]&&Lb(i[r],t,n||typeof e.type!="function");n||Df(e.__e),e.__c=e.__=e.__e=void 0}function z2(e,t,n){return this.constructor(e,n)}function Ib(e,t,n){var i,r,o,a;t==document&&(t=document.documentElement),Ct.__&&Ct.__(e,t),r=(i=!1)?null:t.__k,o=[],a=[],Lf(t,e=t.__k=Sb(ru,null,[e]),r||eu,eu,t.namespaceURI,r?null:t.firstChild?Qc.call(t.childNodes):null,o,r?r.__e:t.firstChild,i,a),Ob(o,e,a),e.props.children=null}Qc=tu.slice,Ct={__e:function(e,t,n,i){for(var r,o,a;t=t.__;)if((r=t.__c)&&!r.__)try{if((o=r.constructor)&&o.getDerivedStateFromError!=null&&(r.setState(o.getDerivedStateFromError(e)),a=r.__d),r.componentDidCatch!=null&&(r.componentDidCatch(e,i||{}),a=r.__d),a)return r.__E=r}catch(s){e=s}throw e}},bb=0,ou.prototype.setState=function(e,t){var n;n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=Vi({},this.state),typeof e=="function"&&(e=e(Vi({},n),this.props)),e&&Vi(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),Cb(this))},ou.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),Cb(this))},ou.prototype.render=ru,xr=[],_b=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,wb=function(e,t){return e.__v.__b-t.__v.__b},au.__r=0,Tf=Math.random().toString(8),Jc="__d"+Tf,Ga="__a"+Tf,Eb=/(PointerCapture)$|Capture$/i,Mf=0,kf=Mb(!1),Of=Mb(!0);var Bb=function(e,t,n,i){var r;t[0]=0;for(var o=1;o<t.length;o++){var a=t[o++],s=t[o]?(t[0]|=a?1:2,n[t[o++]]):t[++o];a===3?i[0]=s:a===4?i[1]=Object.assign(i[1]||{},s):a===5?(i[1]=i[1]||{})[t[++o]]=s:a===6?i[1][t[++o]]+=s+"":a?(r=e.apply(s,Bb(e,s,n,["",null])),i.push(r),s[0]?t[0]|=2:(t[o-2]=0,t[o]=r)):i.push(s)}return i},Nb=new Map;function G2(e){var t=Nb.get(this);return t||(t=new Map,Nb.set(this,t)),(t=Bb(this,t.get(e)||(t.set(e,t=(function(n){for(var i,r,o=1,a="",s="",c=[0],u=function(f){o===1&&(f||(a=a.replace(/^\s*\n\s*|\s*\n\s*$/g,"")))?c.push(0,f,a):o===3&&(f||a)?(c.push(3,f,a),o=2):o===2&&a==="..."&&f?c.push(4,f,0):o===2&&a&&!f?c.push(5,0,!0,a):o>=5&&((a||!f&&o===5)&&(c.push(o,0,a,r),o=6),f&&(c.push(o,f,0,r),o=6)),a=""},l=0;l<n.length;l++){l&&(o===1&&u(),u(l));for(var p=0;p<n[l].length;p++)i=n[l][p],o===1?i==="<"?(u(),c=[c],o=3):a+=i:o===4?a==="--"&&i===">"?(o=1,a=""):a=i+a[0]:s?i===s?s="":a+=i:i==='"'||i==="'"?s=i:i===">"?(u(),o=1):o&&(i==="="?(o=5,r=a,a=""):i==="/"&&(o<5||n[l][p+1]===">")?(u(),o===3&&(c=c[0]),o=c,(c=c[0]).push(2,0,o),o=0):i===" "||i===" "||i===`
|
|
11
|
-
`||i==="\r"?(u(),o=2):a+=i),o===3&&a==="!--"&&(o=4,c=c[0])}return u(),c})(e)),t),arguments,[])).length>1?t:t[0]}var
|
|
10
|
+
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="`+f+'" height="'+d+'" viewBox="'+l+" "+p+" "+f+" "+d+'" version="1.1">'+s+a+"</svg>"}catch(i){n=i}if(this._emit("saveSVG.done",{error:n,svg:t}),n)throw n;return{svg:t}},Et.prototype._setDefinitions=function(e){this._definitions=e},Et.prototype.getModules=function(){return this._modules},Et.prototype.clear=function(){this.getDefinitions()&&ar.prototype.clear.call(this)},Et.prototype.destroy=function(){ar.prototype.destroy.call(this),vi(this._container)},Et.prototype.on=function(e,t,n,i){return this.get("eventBus").on(e,t,n,i)},Et.prototype.off=function(e,t){this.get("eventBus").off(e,t)},Et.prototype.attachTo=function(e){if(!e)throw new Error("parentNode required");this.detach(),e.get&&e.constructor.prototype.jquery&&(e=e.get(0)),typeof e=="string"&&(e=lt(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},Et.prototype.getDefinitions=function(){return this._definitions},Et.prototype.detach=function(){const e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))},Et.prototype._init=function(e,t,n){const i=n.modules||this.getModules(n),r=n.additionalModules||[],o=[{bpmnjs:["value",this],moddle:["value",t]}],a=[].concat(o,i,r),s=V(hi(n,["additionalModules"]),{canvas:V({},n.canvas,{container:e}),modules:a});ar.call(this,s),n&&n.container&&this.attachTo(n.container)},Et.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)},Et.prototype._createContainer=function(e){const t=bt('<div class="bjs-container"></div>');return _n(t,{width:Gm(e.width),height:Gm(e.height),position:e.position}),t},Et.prototype._createModdle=function(e){const t=V({},this._moddleExtensions,e.moddleExtensions);return new Vd(t)},Et.prototype._modules=[];function Ws(e,t){return e.warnings=t,e}function SR(e){const n=/unparsable content <([^>]+)> detected([\s\S]*)$/.exec(e.message);return n&&(e.message="unparsable content <"+n[1]+"> detected; this may indicate an invalid BPMN 2.0 diagram file"+n[2]),e}const RR={width:"100%",height:"100%",position:"relative"};function Gm(e){return e+(Be(e)?"px":"")}function CR(e,t){return t&&mt(e.diagrams,function(n){return n.id===t})||null}function PR(e){const n='<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" >'+Fm+"</a>",i=bt(n);_n(lt("svg",i),jm),_n(i,Hm,{position:"absolute",bottom:"15px",right:"15px",zIndex:"100"}),e.appendChild(i),Ne.bind(i,"click",function(r){ER(),r.preventDefault()})}function xo(e){Et.call(this,e),this.on("import.parse.complete",function(t){t.error||this._collectIds(t.definitions,t.elementsById)},this),this.on("diagram.destroy",function(){this.get("moddle").ids.clear()},this)}be(xo,Et),xo.prototype._createModdle=function(e){var t=Et.prototype._createModdle.call(this,e);return t.ids=new yi([32,36,1]),t},xo.prototype._collectIds=function(e,t){var n=e.$model,i=n.ids,r;i.clear();for(r in t)i.claim(r,t[r])};function Xe(e,t){return S(e,"bpmn:CallActivity")?!1:S(e,"bpmn:SubProcess")?(t=t||et(e),t&&S(t,"bpmndi:BPMNPlane")?!0:t&&!!t.isExpanded):S(e,"bpmn:Participant")?!!te(e).processRef:!0}function Jt(e){if(!(!S(e,"bpmn:Participant")&&!S(e,"bpmn:Lane"))){var t=et(e).isHorizontal;return t===void 0?!0:t}}function AR(e){return e&&te(e).isInterrupting!==!1}function yn(e){return e&&!!te(e).triggeredByEvent}function _o(e,t){var n=te(e).eventDefinitions;return Xi(n,function(i){return S(i,t)})}function TR(e){return _o(e,"bpmn:ErrorEventDefinition")}function MR(e){return _o(e,"bpmn:EscalationEventDefinition")}function kR(e){return _o(e,"bpmn:CompensateEventDefinition")}var Fr={width:90,height:20},Vm=15;function sr(e){return S(e,"bpmn:Event")||S(e,"bpmn:Gateway")||S(e,"bpmn:DataStoreReference")||S(e,"bpmn:DataObjectReference")||S(e,"bpmn:DataInput")||S(e,"bpmn:DataOutput")||S(e,"bpmn:SequenceFlow")||S(e,"bpmn:MessageFlow")||S(e,"bpmn:Group")}function Us(e){return Ge(e.label)}function OR(e){var t=e.length/2-1,n=e[Math.floor(t)],i=e[Math.ceil(t+.01)],r=DR(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-=Vm:a+=Vm,{x:a,y:s}}function DR(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}}function jl(e){return e.waypoints?OR(e.waypoints):S(e,"bpmn:Group")?{x:e.x+e.width/2,y:e.y+Fr.height/2}:{x:e.x+e.width/2,y:e.y+e.height+Fr.height/2}}function LR(e,t){var n,i,r,o=e.label;return o&&o.bounds?(r=o.bounds,i={width:Math.max(Fr.width,r.width),height:r.height},n={x:r.x+r.width/2,y:r.y+r.height/2}):(n=jl(t),i=Fr),V({x:n.x-i.width/2,y:n.y-i.height/2},i)}function Wm(e){if(S(e,"bpmn:FlowElement")||S(e,"bpmn:Participant")||S(e,"bpmn:Lane")||S(e,"bpmn:SequenceFlow")||S(e,"bpmn:MessageFlow")||S(e,"bpmn:DataInput")||S(e,"bpmn:DataOutput"))return"name";if(S(e,"bpmn:TextAnnotation"))return"text";if(S(e,"bpmn:Group"))return"categoryValueRef"}function IR(e){var t=e.categoryValueRef;return t&&t.value||""}function qn(e){var t=e.businessObject,n=Wm(t);if(n)return n==="categoryValueRef"?IR(t):t[n]||""}function BR(e,t){var n=e.businessObject,i=Wm(n);if(i)if(i==="categoryValueRef"){if(!n[i])return e;n[i].value=t}else n[i]=t;return e}function NR(e){return Ge(e)&&sr(e.labelTarget)}var wo=7;function Um(e){let t=[];return F(e.incoming,n=>{S(n,"bpmn:Association")&&S(n.source,"bpmn:TextAnnotation")&&t.push({annotation:n.source,association:n})}),F(e.outgoing,n=>{S(n,"bpmn:Association")&&S(n.target,"bpmn:TextAnnotation")&&t.push({annotation:n.target,association:n})}),t}function da(e){const t=new Map;return F(Dl(e),n=>{F(Um(n),i=>{t.has(i.annotation)||t.set(i.annotation,{annotation:i.annotation,associations:[]}),t.get(i.annotation).associations.push(i.association)})}),[...t.values()]}var Hl="hsl(225, 10%, 15%)",$R="white";function wi(e,t){return Xi(e.eventDefinitions,function(n){return n.$type===t})}function FR(e){return e.$type==="bpmn:IntermediateThrowEvent"||e.$type==="bpmn:EndEvent"}function jR(e){var t=e.dataObjectRef;return e.isCollection||t&&t.isCollection}function qe(e,t,n){var i=et(e);return n||i.get("color:background-color")||i.get("bioc:fill")||t||$R}function ye(e,t,n){var i=et(e);return n||i.get("color:border-color")||i.get("bioc:stroke")||t||Hl}function ha(e,t,n,i){var r=et(e),o=r.get("label");return i||o&&o.get("color:color")||t||ye(e,n)}function Ym(e){var t=e.x+e.width/2,n=e.y+e.height/2,i=e.width/2,r=[["M",t,n],["m",0,-i],["a",i,i,0,1,1,0,2*i],["a",i,i,0,1,1,0,-2*i],["z"]];return Br(r)}function zl(e,t){var n=e.x,i=e.y,r=e.width,o=e.height,a=[["M",n+t,i],["l",r-t*2,0],["a",t,t,0,0,1,t,t],["l",0,o-t*2],["a",t,t,0,0,1,-t,t],["l",t*2-r,0],["a",t,t,0,0,1,-t,-t],["l",0,t*2-o],["a",t,t,0,0,1,t,-t],["z"]];return Br(a)}function HR(e){var t=e.width,n=e.height,i=e.x,r=e.y,o=t/2,a=n/2,s=[["M",i+o,r],["l",o,a],["l",-o,a],["l",-o,-a],["z"]];return Br(s)}function zR(e){var t=e.x,n=e.y,i=e.width,r=e.height,o=[["M",t,n],["l",i,0],["l",0,r],["l",-i,0],["z"]];return Br(o)}function ma(e,t={}){return{width:Qn(e,t),height:Ln(e,t)}}function Qn(e,t={}){return Tn(t,"width")?t.width:e.width}function Ln(e,t={}){return Tn(t,"height")?t.height:e.height}var GR=new yi,VR=10,Ys=3,WR=1.5,qs=10,UR=4,Eo=.95,YR=1,qR=.25;function jr(e,t,n,i,r,o,a){Li.call(this,t,a);var s=e&&e.defaultFillColor,c=e&&e.defaultStrokeColor,u=e&&e.defaultLabelColor;function l(M){return n.computeStyle(M,{strokeLinecap:"round",strokeLinejoin:"round",stroke:Hl,strokeWidth:2,fill:"white"})}function p(M){return n.computeStyle(M,["no-fill"],{strokeLinecap:"round",strokeLinejoin:"round",stroke:Hl,strokeWidth:2})}function f(M,E){var{ref:w={x:0,y:0},scale:G=1,element:U,parentGfx:X=r._svg}=E,Ee=Te("marker",{id:M,viewBox:"0 0 20 20",refX:w.x,refY:w.y,markerWidth:20*G,markerHeight:20*G,orient:"auto"});$e(Ee,U);var He=lt(":scope > defs",X);He||(He=Te("defs"),$e(X,He)),$e(He,Ee)}function d(M,E,w,G){var U=GR.nextPrefixed("marker-");return m(M,U,E,w,G),"url(#"+U+")"}function m(M,E,w,G,U){if(w==="sequenceflow-end"){var X=Te("path",{d:"M 1 5 L 11 10 L 1 15 Z",...l({fill:U,stroke:U,strokeWidth:1})});f(E,{element:X,ref:{x:11,y:10},scale:.5,parentGfx:M})}if(w==="messageflow-start"){var Ee=Te("circle",{cx:6,cy:6,r:3.5,...l({fill:G,stroke:U,strokeWidth:1,strokeDasharray:[1e4,1]})});f(E,{element:Ee,ref:{x:6,y:6},parentGfx:M})}if(w==="messageflow-end"){var He=Te("path",{d:"m 1 5 l 0 -3 l 7 3 l -7 3 z",...l({fill:G,stroke:U,strokeWidth:1,strokeDasharray:[1e4,1]})});f(E,{element:He,ref:{x:8.5,y:5},parentGfx:M})}if(w==="association-start"){var nt=Te("path",{d:"M 11 5 L 1 10 L 11 15",...p({fill:"none",stroke:U,strokeWidth:1.5,strokeDasharray:[1e4,1]})});f(E,{element:nt,ref:{x:1,y:10},scale:.5,parentGfx:M})}if(w==="association-end"){var Pt=Te("path",{d:"M 1 5 L 11 10 L 1 15",...p({fill:"none",stroke:U,strokeWidth:1.5,strokeDasharray:[1e4,1]})});f(E,{element:Pt,ref:{x:11,y:10},scale:.5,parentGfx:M})}if(w==="conditional-flow-marker"){var ut=Te("path",{d:"M 0 10 L 8 6 L 16 10 L 8 14 Z",...l({fill:G,stroke:U})});f(E,{element:ut,ref:{x:-1,y:10},scale:.5,parentGfx:M})}if(w==="conditional-default-flow-marker"){var zt=Te("path",{d:"M 6 4 L 10 16",...l({stroke:U,fill:"none"})});f(E,{element:zt,ref:{x:0,y:10},scale:.5,parentGfx:M})}}function h(M,E,w,G,U={}){Xt(G)&&(U=G,G=0),G=G||0,U=l(U);var X=E/2,Ee=w/2,He=Te("circle",{cx:X,cy:Ee,r:Math.round((E+w)/4-G),...U});return $e(M,He),He}function y(M,E,w,G,U,X){Xt(U)&&(X=U,U=0),U=U||0,X=l(X);var Ee=Te("rect",{x:U,y:U,width:E-U*2,height:w-U*2,rx:G,ry:G,...X});return $e(M,Ee),Ee}function g(M,E,w,G){var U=E/2,X=w/2,Ee=[{x:U,y:0},{x:E,y:X},{x:U,y:w},{x:0,y:X}],He=Ee.map(function(Pt){return Pt.x+","+Pt.y}).join(" ");G=l(G);var nt=Te("polygon",{...G,points:He});return $e(M,nt),nt}function v(M,E,w,G){w=p(w);var U=aa(E,w,G);return $e(M,U),U}function b(M,E,w){return v(M,E,w,5)}function x(M,E,w){w=p(w);var G=Te("path",{...w,d:E});return $e(M,G),G}function C(M,E,w,G){return x(E,w,V({"data-marker":M},G))}function T(M){return gt[M]}function k(M){return function(E,w,G){return T(M)(E,w,G)}}var A={"bpmn:MessageEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.235,my:.315}}),X=G?ye(E,c,w.stroke):qe(E,s,w.fill),Ee=G?qe(E,s,w.fill):ye(E,c,w.stroke),He=x(M,U,{fill:X,stroke:Ee,strokeWidth:1});return He},"bpmn:TimerEventDefinition":function(M,E,w={}){var G=w.width||E.width,U=w.height||E.height,X=w.width?1:2,Ee=h(M,G,U,.2*U,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke),strokeWidth:X}),He=i.getScaledPath("EVENT_TIMER_WH",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:G,containerHeight:U,position:{mx:.5,my:.5}});x(M,He,{stroke:ye(E,c,w.stroke),strokeWidth:X});for(var nt=0;nt<12;nt++){var Pt=i.getScaledPath("EVENT_TIMER_LINE",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:G,containerHeight:U,position:{mx:.5,my:.5}}),ut=G/2,zt=U/2;x(M,Pt,{strokeWidth:1,stroke:ye(E,c,w.stroke),transform:"rotate("+nt*30+","+zt+","+ut+")"})}return Ee},"bpmn:EscalationEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.5,my:.2}}),X=G?ye(E,c,w.stroke):qe(E,s,w.fill);return x(M,U,{fill:X,stroke:ye(E,c,w.stroke),strokeWidth:1})},"bpmn:ConditionalEventDefinition":function(M,E,w={}){var G=i.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.5,my:.222}});return x(M,G,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke),strokeWidth:1})},"bpmn:LinkEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:.57,my:.263}}),X=G?ye(E,c,w.stroke):qe(E,s,w.fill);return x(M,U,{fill:X,stroke:ye(E,c,w.stroke),strokeWidth:1})},"bpmn:ErrorEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_ERROR",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.2,my:.722}}),X=G?ye(E,c,w.stroke):qe(E,s,w.fill);return x(M,U,{fill:X,stroke:ye(E,c,w.stroke),strokeWidth:1})},"bpmn:CancelEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_CANCEL_45",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:.638,my:-.055}}),X=G?ye(E,c,w.stroke):"none",Ee=x(M,U,{fill:X,stroke:ye(E,c,w.stroke),strokeWidth:1});return Nm(Ee,45),Ee},"bpmn:CompensateEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.22,my:.5}}),X=G?ye(E,c,w.stroke):qe(E,s,w.fill);return x(M,U,{fill:X,stroke:ye(E,c,w.stroke),strokeWidth:1})},"bpmn:SignalEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.5,my:.2}}),X=G?ye(E,c,w.stroke):qe(E,s,w.fill);return x(M,U,{strokeWidth:1,fill:X,stroke:ye(E,c,w.stroke)})},"bpmn:MultipleEventDefinition":function(M,E,w={},G){var U=i.getScaledPath("EVENT_MULTIPLE",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.211,my:.36}}),X=G?ye(E,c,w.stroke):qe(E,s,w.fill);return x(M,U,{fill:X,stroke:ye(E,c,w.stroke),strokeWidth:1})},"bpmn:ParallelMultipleEventDefinition":function(M,E,w={}){var G=i.getScaledPath("EVENT_PARALLEL_MULTIPLE",{xScaleFactor:1.2,yScaleFactor:1.2,containerWidth:w.width||E.width,containerHeight:w.height||E.height,position:{mx:.458,my:.194}});return x(M,G,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke),strokeWidth:1})},"bpmn:TerminateEventDefinition":function(M,E,w={}){var G=h(M,E.width,E.height,8,{fill:ye(E,c,w.stroke),stroke:ye(E,c,w.stroke),strokeWidth:4});return G}};function I(M,E,w={},G){var U=te(M),X=FR(U),Ee=G||M;return U.get("eventDefinitions")&&U.get("eventDefinitions").length>1?U.get("parallelMultiple")?A["bpmn:ParallelMultipleEventDefinition"](E,Ee,w,X):A["bpmn:MultipleEventDefinition"](E,Ee,w,X):wi(U,"bpmn:MessageEventDefinition")?A["bpmn:MessageEventDefinition"](E,Ee,w,X):wi(U,"bpmn:TimerEventDefinition")?A["bpmn:TimerEventDefinition"](E,Ee,w,X):wi(U,"bpmn:ConditionalEventDefinition")?A["bpmn:ConditionalEventDefinition"](E,Ee,w,X):wi(U,"bpmn:SignalEventDefinition")?A["bpmn:SignalEventDefinition"](E,Ee,w,X):wi(U,"bpmn:EscalationEventDefinition")?A["bpmn:EscalationEventDefinition"](E,Ee,w,X):wi(U,"bpmn:LinkEventDefinition")?A["bpmn:LinkEventDefinition"](E,Ee,w,X):wi(U,"bpmn:ErrorEventDefinition")?A["bpmn:ErrorEventDefinition"](E,Ee,w,X):wi(U,"bpmn:CancelEventDefinition")?A["bpmn:CancelEventDefinition"](E,Ee,w,X):wi(U,"bpmn:CompensateEventDefinition")?A["bpmn:CompensateEventDefinition"](E,Ee,w,X):wi(U,"bpmn:TerminateEventDefinition")?A["bpmn:TerminateEventDefinition"](E,Ee,w,X):null}var D={ParticipantMultiplicityMarker:function(M,E,w={}){var G=Qn(E,w),U=Ln(E,w),X=i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:G,containerHeight:U,position:{mx:(G/2-6)/G,my:(U-15)/U}});C("participant-multiplicity",M,X,{strokeWidth:2,fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke)})},SubProcessMarker:function(M,E,w={}){var G=y(M,14,14,0,{strokeWidth:1,fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke)});cn(G,E.width/2-7.5,E.height-20);var U=i.getScaledPath("MARKER_SUB_PROCESS",{xScaleFactor:1.5,yScaleFactor:1.5,containerWidth:E.width,containerHeight:E.height,position:{mx:(E.width/2-7.5)/E.width,my:(E.height-20)/E.height}});C("sub-process",M,U,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke)})},ParallelMarker:function(M,E,w){var G=Qn(E,w),U=Ln(E,w),X=i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:G,containerHeight:U,position:{mx:(G/2+w.parallel)/G,my:(U-20)/U}});C("parallel",M,X,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke)})},SequentialMarker:function(M,E,w){var G=i.getScaledPath("MARKER_SEQUENTIAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:(E.width/2+w.seq)/E.width,my:(E.height-19)/E.height}});C("sequential",M,G,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke)})},CompensationMarker:function(M,E,w){var G=i.getScaledPath("MARKER_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:(E.width/2+w.compensation)/E.width,my:(E.height-13)/E.height}});C("compensation",M,G,{strokeWidth:1,fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke)})},LoopMarker:function(M,E,w){var G=Qn(E,w),U=Ln(E,w),X=i.getScaledPath("MARKER_LOOP",{xScaleFactor:1,yScaleFactor:1,containerWidth:G,containerHeight:U,position:{mx:(G/2+w.loop)/G,my:(U-7)/U}});C("loop",M,X,{strokeWidth:1.5,fill:"none",stroke:ye(E,c,w.stroke),strokeMiterlimit:.5})},AdhocMarker:function(M,E,w){var G=Qn(E,w),U=Ln(E,w),X=i.getScaledPath("MARKER_ADHOC",{xScaleFactor:1,yScaleFactor:1,containerWidth:G,containerHeight:U,position:{mx:(G/2+w.adhoc)/G,my:(U-15)/U}});C("adhoc",M,X,{strokeWidth:1,fill:ye(E,c,w.stroke),stroke:ye(E,c,w.stroke)})}};function L(M,E,w,G){D[M](E,w,G)}function z(M,E,w=[],G={}){G={fill:G.fill,stroke:G.stroke,width:Qn(E,G),height:Ln(E,G)};var U=te(E),X=w.includes("SubProcessMarker");X?G={...G,seq:-21,parallel:-22,compensation:-25,loop:-18,adhoc:10}:G={...G,seq:-5,parallel:-6,compensation:-7,loop:0,adhoc:-8},U.get("isForCompensation")&&w.push("CompensationMarker"),S(U,"bpmn:AdHocSubProcess")&&(w.push("AdhocMarker"),X||V(G,{compensation:G.compensation-18}));var Ee=U.get("loopCharacteristics"),He=Ee&&Ee.get("isSequential");Ee&&(V(G,{compensation:G.compensation-18}),w.includes("AdhocMarker")&&V(G,{seq:-23,loop:-18,parallel:-24}),He===void 0&&w.push("LoopMarker"),He===!1&&w.push("ParallelMarker"),He===!0&&w.push("SequentialMarker")),w.includes("CompensationMarker")&&w.length===1&&V(G,{compensation:-8}),F(w,function(nt){L(nt,M,E,G)})}function ne(M,E,w={}){w=V({size:{width:100}},w);var G=o.createText(E||"",w);return Qe(G).add("djs-label"),$e(M,G),G}function me(M,E,w,G={}){var U=te(E),X=ma({x:E.x,y:E.y,width:E.width,height:E.height},G);return ne(M,U.name,{align:w,box:X,padding:7,style:{fill:ha(E,u,c,G.stroke)}})}function Ue(M,E,w={}){var G={width:E.width,height:E.height,x:E.width/2+E.x,y:E.height/2+E.y};return ne(M,qn(E),{box:G,style:V({},o.getExternalStyle(),{fill:ha(E,u,c,w.stroke)})})}function je(M,E,w,G={}){var U=Jt(w),X=ne(M,E,{box:{height:30,width:U?Ln(w,G):Qn(w,G)},align:"center-middle",style:{fill:ha(w,u,c,G.stroke)}});if(U){var Ee=-1*Ln(w,G);Gs(X,0,-Ee,270)}}function q(M,E,w={}){var{width:G,height:U}=ma(E,w);return y(M,G,U,qs,{...w,fill:qe(E,s,w.fill),fillOpacity:Eo,stroke:ye(E,c,w.stroke)})}function le(M,E,w={}){var G=te(E),U=qe(E,s,w.fill),X=ye(E,c,w.stroke);return(G.get("associationDirection")==="One"||G.get("associationDirection")==="Both")&&(w.markerEnd=d(M,"association-end",U,X)),G.get("associationDirection")==="Both"&&(w.markerStart=d(M,"association-start",U,X)),w=tt(w,["markerStart","markerEnd"]),b(M,E.waypoints,{...w,stroke:X,strokeDasharray:"0, 5"})}function ae(M,E,w={}){var G=qe(E,s,w.fill),U=ye(E,c,w.stroke),X=i.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:.474,my:.296}}),Ee=x(M,X,{fill:G,fillOpacity:Eo,stroke:U}),He=te(E);if(jR(He)){var nt=i.getScaledPath("DATA_OBJECT_COLLECTION_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:.33,my:(E.height-18)/E.height}});x(M,nt,{strokeWidth:2,fill:G,stroke:U})}return Ee}function ge(M,E,w={}){return h(M,E.width,E.height,{fillOpacity:Eo,...w,fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke)})}function Ae(M,E,w={}){return g(M,E.width,E.height,{fill:qe(E,s,w.fill),fillOpacity:Eo,stroke:ye(E,c,w.stroke)})}function W(M,E,w={}){var G=y(M,Qn(E,w),Ln(E,w),0,{fill:qe(E,s,w.fill),fillOpacity:w.fillOpacity||Eo,stroke:ye(E,c,w.stroke),strokeWidth:1.5}),U=te(E);if(S(U,"bpmn:Lane")){var X=U.get("name");je(M,X,E,w)}return G}function Y(M,E,w={}){var G=q(M,E,w),U=Xe(E);if(yn(E)&&(xe(G,{strokeDasharray:"0, 5.5",strokeWidth:2.5}),!U)){var X=te(E).flowElements||[],Ee=X.filter(He=>S(He,"bpmn:StartEvent"));Ee.length===1&&ee(Ee[0],M,w,E)}return me(M,E,U?"center-top":"center-middle",w),U?z(M,E,void 0,w):z(M,E,["SubProcessMarker"],w),G}function ee(M,E,w,G){var U=22,X={fill:qe(G,s,w.fill),stroke:ye(G,c,w.stroke),width:U,height:U},Ee=te(M).isInterrupting,He=Ee?0:3,nt=Ee?1:1.2,Pt=20,ut=(U-Pt)/2,zt="translate("+ut+","+ut+")";h(E,Pt,Pt,{fill:X.fill,stroke:X.stroke,strokeWidth:nt,strokeDasharray:He,transform:zt}),I(M,E,X,G)}function Ce(M,E,w={}){var G=q(M,E,w);return me(M,E,"center-middle",w),z(M,E,void 0,w),G}var gt=this.handlers={"bpmn:AdHocSubProcess":function(M,E,w={}){return Xe(E)?w=tt(w,["fill","stroke","width","height"]):w=tt(w,["fill","stroke"]),Y(M,E,w)},"bpmn:Association":function(M,E,w={}){return w=tt(w,["fill","stroke"]),le(M,E,w)},"bpmn:BoundaryEvent":function(M,E,w={}){var{renderIcon:G=!0}=w;w=tt(w,["fill","stroke"]);var U=te(E),X=U.get("cancelActivity");w={strokeWidth:1.5,fill:qe(E,s,w.fill),fillOpacity:YR,stroke:ye(E,c,w.stroke)},X||(w.strokeDasharray="6");var Ee=ge(M,E,w);return h(M,E.width,E.height,Ys,{...w,fill:"none"}),G&&I(E,M,w),Ee},"bpmn:BusinessRuleTask":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=Ce(M,E,w),U=i.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}}),X=x(M,U);xe(X,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke),strokeWidth:1});var Ee=i.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}}),He=x(M,Ee);return xe(He,{fill:ye(E,c,w.stroke),stroke:ye(E,c,w.stroke),strokeWidth:1}),G},"bpmn:CallActivity":function(M,E,w={}){return w=tt(w,["fill","stroke"]),Y(M,E,{strokeWidth:5,...w})},"bpmn:ComplexGateway":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=Ae(M,E,w),U=i.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:E.width,containerHeight:E.height,position:{mx:.46,my:.26}});return x(M,U,{fill:ye(E,c,w.stroke),stroke:ye(E,c,w.stroke),strokeWidth:1}),G},"bpmn:DataInput":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=i.getRawPath("DATA_ARROW"),U=ae(M,E,w);return x(M,G,{fill:"none",stroke:ye(E,c,w.stroke),strokeWidth:1}),U},"bpmn:DataInputAssociation":function(M,E,w={}){return w=tt(w,["fill","stroke"]),le(M,E,{...w,markerEnd:d(M,"association-end",qe(E,s,w.fill),ye(E,c,w.stroke))})},"bpmn:DataObject":function(M,E,w={}){return w=tt(w,["fill","stroke"]),ae(M,E,w)},"bpmn:DataObjectReference":k("bpmn:DataObject"),"bpmn:DataOutput":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=i.getRawPath("DATA_ARROW"),U=ae(M,E,w);return x(M,G,{strokeWidth:1,fill:ye(E,c,w.stroke),stroke:ye(E,c,w.stroke)}),U},"bpmn:DataOutputAssociation":function(M,E,w={}){return w=tt(w,["fill","stroke"]),le(M,E,{...w,markerEnd:d(M,"association-end",qe(E,s,w.fill),ye(E,c,w.stroke))})},"bpmn:DataStoreReference":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=i.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:0,my:.133}});return x(M,G,{fill:qe(E,s,w.fill),fillOpacity:Eo,stroke:ye(E,c,w.stroke),strokeWidth:2})},"bpmn:EndEvent":function(M,E,w={}){var{renderIcon:G=!0}=w;w=tt(w,["fill","stroke"]);var U=ge(M,E,{...w,strokeWidth:4});return G&&I(E,M,w),U},"bpmn:EventBasedGateway":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=te(E),U=Ae(M,E,w);h(M,E.width,E.height,E.height*.2,{fill:qe(E,"none",w.fill),stroke:ye(E,c,w.stroke),strokeWidth:1});var X=G.get("eventGatewayType"),Ee=!!G.get("instantiate");function He(){var Pt=i.getScaledPath("GATEWAY_EVENT_BASED",{xScaleFactor:.18,yScaleFactor:.18,containerWidth:E.width,containerHeight:E.height,position:{mx:.36,my:.44}});x(M,Pt,{fill:"none",stroke:ye(E,c,w.stroke),strokeWidth:2})}if(X==="Parallel"){var nt=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:E.width,containerHeight:E.height,position:{mx:.474,my:.296}});x(M,nt,{fill:"none",stroke:ye(E,c,w.stroke),strokeWidth:1})}else X==="Exclusive"&&(Ee||h(M,E.width,E.height,E.height*.26,{fill:"none",stroke:ye(E,c,w.stroke),strokeWidth:1}),He());return U},"bpmn:ExclusiveGateway":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=Ae(M,E,w),U=i.getScaledPath("GATEWAY_EXCLUSIVE",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:E.width,containerHeight:E.height,position:{mx:.32,my:.3}}),X=et(E);return X.get("isMarkerVisible")&&x(M,U,{fill:ye(E,c,w.stroke),stroke:ye(E,c,w.stroke),strokeWidth:1}),G},"bpmn:Gateway":function(M,E,w={}){return w=tt(w,["fill","stroke"]),Ae(M,E,w)},"bpmn:Group":function(M,E,w={}){return w=tt(w,["fill","stroke","width","height"]),y(M,E.width,E.height,qs,{stroke:ye(E,c,w.stroke),strokeWidth:1.5,strokeDasharray:"10, 6, 0, 6",fill:"none",pointerEvents:"none",width:Qn(E,w),height:Ln(E,w)})},"bpmn:InclusiveGateway":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=Ae(M,E,w);return h(M,E.width,E.height,E.height*.24,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke),strokeWidth:2.5}),G},"bpmn:IntermediateEvent":function(M,E,w={}){var{renderIcon:G=!0}=w;w=tt(w,["fill","stroke"]);var U=ge(M,E,{...w,strokeWidth:1.5});return h(M,E.width,E.height,Ys,{fill:"none",stroke:ye(E,c,w.stroke),strokeWidth:1.5}),G&&I(E,M,w),U},"bpmn:IntermediateCatchEvent":k("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":k("bpmn:IntermediateEvent"),"bpmn:Lane":function(M,E,w={}){return w=tt(w,["fill","stroke","width","height"]),W(M,E,{...w,fillOpacity:qR})},"bpmn:ManualTask":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=Ce(M,E,w),U=i.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}});return x(M,U,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke),strokeWidth:.5}),G},"bpmn:MessageFlow":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=te(E),U=et(E),X=qe(E,s,w.fill),Ee=ye(E,c,w.stroke),He=b(M,E.waypoints,{markerEnd:d(M,"messageflow-end",X,Ee),markerStart:d(M,"messageflow-start",X,Ee),stroke:Ee,strokeDasharray:"10, 11",strokeWidth:1.5});if(G.get("messageRef")){var nt=He.getPointAtLength(He.getTotalLength()/2),Pt=i.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:nt.x,y:nt.y}}),ut={strokeWidth:1};U.get("messageVisibleKind")==="initiating"?(ut.fill=X,ut.stroke=Ee):(ut.fill=Ee,ut.stroke=X);var zt=x(M,Pt,ut),en=G.get("messageRef"),tn=en.get("name"),vt=ne(M,tn,{align:"center-top",fitBox:!0,style:{fill:Ee}}),At=zt.getBBox(),vn=vt.getBBox(),Ar=nt.x-vn.width/2,jn=nt.y+At.height/2+VR;Gs(vt,Ar,jn,0)}return He},"bpmn:ParallelGateway":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=Ae(M,E,w),U=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:E.width,containerHeight:E.height,position:{mx:.46,my:.2}});return x(M,U,{fill:ye(E,c,w.stroke),stroke:ye(E,c,w.stroke),strokeWidth:1}),G},"bpmn:Participant":function(M,E,w={}){w=tt(w,["fill","stroke","width","height"]);var G=W(M,E,w),U=Xe(E),X=Jt(E),Ee=te(E),He=Ee.get("name");if(U){var nt=X?[{x:30,y:0},{x:30,y:Ln(E,w)}]:[{x:0,y:30},{x:Qn(E,w),y:30}];v(M,nt,{stroke:ye(E,c,w.stroke),strokeWidth:WR}),je(M,He,E,w)}else{var Pt=ma(E,w);X||(Pt.height=Qn(E,w),Pt.width=Ln(E,w));var ut=ne(M,He,{box:Pt,align:"center-middle",style:{fill:ha(E,u,c,w.stroke)}});if(!X){var zt=-1*Ln(E,w);Gs(ut,0,-zt,270)}}return Ee.get("participantMultiplicity")&&L("ParticipantMultiplicityMarker",M,E,w),G},"bpmn:ReceiveTask":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=te(E),U=Ce(M,E,w),X;return G.get("instantiate")?(h(M,28,28,20*.22,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke),strokeWidth:1}),X=i.getScaledPath("TASK_TYPE_INSTANTIATING_SEND",{abspos:{x:7.77,y:9.52}})):X=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:21,containerHeight:14,position:{mx:.3,my:.4}}),x(M,X,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke),strokeWidth:1}),U},"bpmn:ScriptTask":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=Ce(M,E,w),U=i.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}});return x(M,U,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke),strokeWidth:1}),G},"bpmn:SendTask":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=Ce(M,E,w),U=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}});return x(M,U,{fill:ye(E,c,w.stroke),stroke:qe(E,s,w.fill),strokeWidth:1}),G},"bpmn:SequenceFlow":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=qe(E,s,w.fill),U=ye(E,c,w.stroke),X=b(M,E.waypoints,{markerEnd:d(M,"sequenceflow-end",G,U),stroke:U}),Ee=te(E),{source:He}=E;if(He){var nt=te(He);Ee.get("conditionExpression")&&S(nt,"bpmn:Activity")&&xe(X,{markerStart:d(M,"conditional-flow-marker",G,U)}),nt.get("default")&&(S(nt,"bpmn:Gateway")||S(nt,"bpmn:Activity"))&&nt.get("default")===Ee&&xe(X,{markerStart:d(M,"conditional-default-flow-marker",G,U)})}return X},"bpmn:ServiceTask":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=Ce(M,E,w);h(M,10,10,{fill:qe(E,s,w.fill),stroke:"none",transform:"translate(6, 6)"});var U=i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}});x(M,U,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke),strokeWidth:1}),h(M,10,10,{fill:qe(E,s,w.fill),stroke:"none",transform:"translate(11, 10)"});var X=i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}});return x(M,X,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke),strokeWidth:1}),G},"bpmn:StartEvent":function(M,E,w={}){var{renderIcon:G=!0}=w;w=tt(w,["fill","stroke"]);var U=te(E);U.get("isInterrupting")||(w={...w,strokeDasharray:"6"});var X=ge(M,E,w);return G&&I(E,M,w),X},"bpmn:SubProcess":function(M,E,w={}){return Xe(E)?w=tt(w,["fill","stroke","width","height"]):w=tt(w,["fill","stroke"]),Y(M,E,w)},"bpmn:Task":function(M,E,w={}){return w=tt(w,["fill","stroke"]),Ce(M,E,w)},"bpmn:TextAnnotation":function(M,E,w={}){w=tt(w,["fill","stroke"]);var{width:G,height:U}=ma(E,w),X=y(M,G,U,0,0,{fill:"none",stroke:"none"}),Ee=i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:G,containerHeight:U,position:{mx:0,my:0}});x(M,Ee,{stroke:ye(E,c,w.stroke)});var He=te(E),nt=He.get("text")||"";return ne(M,nt,{align:"left-top",box:ma(E,w),padding:wo,style:{fill:ha(E,u,c,w.stroke)}}),X},"bpmn:Transaction":function(M,E,w={}){Xe(E)?w=tt(w,["fill","stroke","width","height"]):w=tt(w,["fill","stroke"]);var G=Y(M,E,{strokeWidth:1.5,...w}),U=n.style(["no-fill","no-events"],{stroke:ye(E,c,w.stroke),strokeWidth:1.5}),X=Xe(E);return X||(w={}),y(M,Qn(E,w),Ln(E,w),qs-Ys,Ys,U),G},"bpmn:UserTask":function(M,E,w={}){w=tt(w,["fill","stroke"]);var G=Ce(M,E,w),U=15,X=12,Ee=i.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:U,y:X}});x(M,Ee,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke),strokeWidth:.5});var He=i.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:U,y:X}});x(M,He,{fill:qe(E,s,w.fill),stroke:ye(E,c,w.stroke),strokeWidth:.5});var nt=i.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:U,y:X}});return x(M,nt,{fill:ye(E,c,w.stroke),stroke:ye(E,c,w.stroke),strokeWidth:.5}),G},label:function(M,E,w={}){return Ue(M,E,w)}};this._drawPath=x,this._renderer=T}be(jr,Li),jr.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],jr.prototype.canRender=function(e){return S(e,"bpmn:BaseElement")},jr.prototype.drawShape=function(e,t,n={}){var{type:i}=t,r=this._renderer(i);return r(e,t,n)},jr.prototype.drawConnection=function(e,t,n={}){var{type:i}=t,r=this._renderer(i);return r(e,t,n)},jr.prototype.getShapePath=function(e){return Ge(e)?zl(e,UR):S(e,"bpmn:Event")?Ym(e):S(e,"bpmn:Activity")?zl(e,qs):S(e,"bpmn:Gateway")?HR(e):zR(e)};function tt(e,t=[]){return t.reduce((n,i)=>(e[i]&&(n[i]=e[i]),n),{})}var KR=0,XR={width:150,height:50};function ZR(e){var t=e.split("-");return{horizontal:t[0]||"center",vertical:t[1]||"top"}}function QR(e){return Xt(e)?V({top:0,left:0,right:0,bottom:0},e):{top:e,left:e,right:e,bottom:e}}var Gl=null;function JR(){return Gl||(Gl=document.createElement("canvas").getContext("2d")),Gl}function eC(e){var t=[];return e.fontStyle&&t.push(e.fontStyle),e.fontVariant&&t.push(e.fontVariant),e.fontWeight&&t.push(e.fontWeight),e.fontStretch&&t.push(e.fontStretch),t.push(qm(e.fontSize)||"12px"),t.push(e.fontFamily||"sans-serif"),t.join(" ")}function qm(e){if(e!=null)return typeof e=="number"||/^-?\d+(\.\d+)?$/.test(e)?e+"px":e}function tC(e,t){var n=JR();if(!n)return{width:0,height:0};n.font=eC(t),"letterSpacing"in n&&(n.letterSpacing=qm(t.letterSpacing)||"0px");var i=e==="",r=i?"dummy":e.replace(/\s+$/,""),o=n.measureText(r);return{width:i?0:o.width,height:"fontBoundingBoxAscent"in o?o.fontBoundingBoxAscent+o.fontBoundingBoxDescent:o.actualBoundingBoxAscent+o.actualBoundingBoxDescent}}function nC(e,t,n){for(var i=e.shift(),r=i,o;;){if(o=tC(r,n),o.width=r?o.width:0,r===" "||r===""||o.width<Math.round(t)||r.length<2)return iC(e,r,i,o);r=oC(r,o.width,t)}}function iC(e,t,n,i){if(t.length<n.length){var r=n.slice(t.length).trim();e.unshift(r)}return{width:i.width,height:i.height,text:t}}var Km="";function rC(e,t){var n=e.split(/(\s|-|\u00AD)/g),i,r=[],o=0;if(n.length>1)for(;i=n.shift();)if(i.length+o<t)r.push(i),o+=i.length;else{(i==="-"||i===Km)&&r.pop();break}var a=r[r.length-1];return a&&a===Km&&(r[r.length-1]="-"),r.join("")}function oC(e,t,n){var i=Math.max(e.length*(n/t),1),r=rC(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function Ks(e){this._config=V({},{size:XR,padding:KR,style:{},align:"center-top"},e||{})}Ks.prototype.createText=function(e,t){return this.layoutText(e,t).element},Ks.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},Ks.prototype.layoutText=function(e,t){for(var n=V({},this._config.size,t.box),i=V({},this._config.style,t.style),r=ZR(t.align||this._config.align),o=QR(t.padding!==void 0?t.padding:this._config.padding),a=t.fitBox||!1,s=aC(i),c=e.split(/\u00AD?\r?\n/),u=[],l=n.width-o.left-o.right;c.length;)u.push(nC(c,l,i));r.vertical==="middle"&&(o.top=o.bottom=0);var p=Mn(u,function(y,g,v){return y+(s||g.height)},0)+o.top+o.bottom,f=Mn(u,function(y,g,v){return g.width>y?g.width:y},0),d=o.top;r.vertical==="middle"&&(d+=(n.height-p)/2),d-=(s||u[0].height)/4;var m=Te("text");xe(m,i),F(u,function(y){var g;switch(d+=s||y.height,r.horizontal){case"left":g=o.left;break;case"right":g=(a?f:l)-o.right-y.width;break;default:g=Math.max(((a?f:l)-y.width)/2+o.left,0)}var v=Te("tspan");xe(v,{x:g,y:d}),v.textContent=y.text,$e(m,v)});var h={width:f,height:p};return{dimensions:h,element:m}};function aC(e){if("fontSize"in e&&"lineHeight"in e)return e.lineHeight*parseInt(e.fontSize,10)}var sC=12,cC=1.2,uC=40;function Xm(e){var t=V({fontFamily:"Arial, sans-serif",fontSize:sC,fontWeight:"normal",lineHeight:cC},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=V({},t,{fontSize:n},e&&e.externalStyle||{}),r=new Ks({style:t});this.getExternalLabelBounds=function(a,s){var c={width:Math.max(a.width,Fr.width),height:30},u=o(s,c,{style:i});return{x:Math.round(a.x+a.width/2-u.width/2),y:a.y,width:Math.ceil(u.width),height:Math.ceil(u.height)}},this.getTextAnnotationBounds=function(a,s){var c=o(s,a,{style:t,align:"left-top",padding:wo});return{x:a.x,y:a.y,width:a.width,height:Math.max(uC,Math.round(c.height))}},this.getDimensions=function(a,s){return r.getDimensions(a,s||{})};function o(a,s,c){return r.getDimensions(a,V({box:s},c))}this.createText=function(a,s){return r.createText(a,s||{})},this.getDefaultStyle=function(){return t},this.getExternalStyle=function(){return i}}Xm.$inject=["config.textRenderer"];function lC(){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(t){return this.pathMap[t].d},this.getScaledPath=function(t,n){var i=this.pathMap[t],r,o;n.abspos?(r=n.abspos.x,o=n.abspos.y):(r=n.containerWidth*n.position.mx,o=n.containerHeight*n.position.my);var a={};if(n.position){for(var s=n.containerHeight/i.height*n.yScaleFactor,c=n.containerWidth/i.width*n.xScaleFactor,u=0;u<i.heightElements.length;u++)a["y"+u]=i.heightElements[u]*s;for(var l=0;l<i.widthElements.length;l++)a["x"+l]=i.widthElements[l]*c}var p=hC(i.d,{mx:r,my:o,e:a});return p}}var pC=/\{([^{}]+)\}/g,fC=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;function dC(e,t,n){var i=n;return t.replace(fC,function(r,o,a,s,c){o=o||s,i&&(o in i&&(i=i[o]),typeof i=="function"&&c&&(i=i()))}),i=(i==null||i==n?e:i)+"",i}function hC(e,t){return String(e).replace(pC,function(n,i){return dC(n,i,t)})}const mC={__init__:["bpmnRenderer"],bpmnRenderer:["type",jr],textRenderer:["type",Xm],pathMap:["type",lC]};function gC(e,t){return t=t||{},e.replace(/{([^}]+)}/g,function(n,i){return t[i]||"{"+i+"}"})}const ga={translate:["value",gC]};function Xs(e,t,n){return V({id:e.id,type:e.$type,businessObject:e,di:t},n)}function yC(e,t,n){var i=e.waypoint;return!i||i.length<2?[Le(t),Le(n)]:i.map(function(r){return{x:r.x,y:r.y}})}function Zm(e,t,n){return new Error(`element ${gn(t)} referenced by ${gn(e)}#${n} not yet drawn`)}function $i(e,t,n,i,r){this._eventBus=e,this._canvas=t,this._elementFactory=n,this._elementRegistry=i,this._textRenderer=r}$i.$inject=["eventBus","canvas","elementFactory","elementRegistry","textRenderer"],$i.prototype.add=function(e,t,n){var i,r,o;if(S(t,"bpmndi:BPMNPlane")){var a=S(e,"bpmn:SubProcess")?{id:e.id+"_plane"}:{};i=this._elementFactory.createRoot(Xs(e,t,a)),this._canvas.addRootElement(i)}else if(S(t,"bpmndi:BPMNShape")){var s=!Xe(e,t),c=bC(e);r=n&&(n.hidden||n.collapsed);var u=t.bounds;i=this._elementFactory.createShape(Xs(e,t,{collapsed:s,hidden:r,x:Math.round(u.x),y:Math.round(u.y),width:Math.round(u.width),height:Math.round(u.height),isFrame:c})),S(e,"bpmn:BoundaryEvent")&&this._attachBoundary(e,i),S(e,"bpmn:Lane")&&(o=0),S(e,"bpmn:DataStoreReference")&&(vC(n,Le(u))||(n=this._canvas.findRoot(n))),this._canvas.addShape(i,n,o)}else if(S(t,"bpmndi:BPMNEdge")){var l=this._getSource(e),p=this._getTarget(e);r=n&&(n.hidden||n.collapsed),i=this._elementFactory.createConnection(Xs(e,t,{hidden:r,source:l,target:p,waypoints:yC(t,l,p)})),S(e,"bpmn:DataAssociation")&&(n=this._canvas.findRoot(n)),this._canvas.addConnection(i,n,o)}else throw new Error(`unknown di ${gn(t)} for element ${gn(e)}`);return sr(e)&&qn(i)&&this.addLabel(e,t,i),this._eventBus.fire("bpmnElement.added",{element:i}),i},$i.prototype._attachBoundary=function(e,t){var n=e.attachedToRef;if(!n)throw new Error(`missing ${gn(e)}#attachedToRef`);var i=this._elementRegistry.get(n.id),r=i&&i.attachers;if(!i)throw Zm(e,n,"attachedToRef");t.host=i,r||(i.attachers=r=[]),r.indexOf(t)===-1&&r.push(t)},$i.prototype.addLabel=function(e,t,n){var i,r,o;return i=LR(t,n),r=qn(n),r&&(i=this._textRenderer.getExternalLabelBounds(i,r)),o=this._elementFactory.createLabel(Xs(e,t,{id:e.id+"_label",labelTarget:n,type:"label",hidden:n.hidden||!qn(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)},$i.prototype._getConnectedElement=function(e,t){var n,i,r=e.$type;if(i=e[t+"Ref"],t==="source"&&r==="bpmn:DataInputAssociation"&&(i=i&&i[0]),(t==="source"&&r==="bpmn:DataOutputAssociation"||t==="target"&&r==="bpmn:DataInputAssociation")&&(i=e.$parent),n=i&&this._getElement(i),n)return n;throw i?Zm(e,i,t+"Ref"):new Error(`${gn(e)}#${t} Ref not specified`)},$i.prototype._getSource=function(e){return this._getConnectedElement(e,"source")},$i.prototype._getTarget=function(e){return this._getConnectedElement(e,"target")},$i.prototype._getElement=function(e){return this._elementRegistry.get(e.id)};function vC(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 bC(e){return S(e,"bpmn:Group")}const Qm={__depends__:[mC,{__depends__:[ga],bpmnImporter:["type",$i]}]};function ya(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function pi(e,t){return{x:e.x-t.x,y:e.y-t.y}}function Vl(e){return Math.log(e)/Math.log(10)}var xC=1e3;function J(e){this._eventBus=e}J.$inject=["eventBus"];function _C(e,t){return function(n){return e.call(t||null,n.context,n.command,n)}}J.prototype.on=function(e,t,n,i,r,o){if((Zt(t)||Be(t))&&(o=r,r=i,i=n,n=t,t=null),Zt(n)&&(o=r,r=i,i=n,n=xC),Xt(r)&&(o=r,r=!1),!Zt(i))throw new Error("handlerFn must be a function");De(e)||(e=[e]);var a=this._eventBus;F(e,function(s){var c=["commandStack",s,t].filter(function(u){return u}).join(".");a.on(c,n,r?_C(i,o):i,o)})},J.prototype.canExecute=Fi("canExecute"),J.prototype.preExecute=Fi("preExecute"),J.prototype.preExecuted=Fi("preExecuted"),J.prototype.execute=Fi("execute"),J.prototype.executed=Fi("executed"),J.prototype.postExecute=Fi("postExecute"),J.prototype.postExecuted=Fi("postExecuted"),J.prototype.revert=Fi("revert"),J.prototype.reverted=Fi("reverted");function Fi(e){return function(n,i,r,o,a){(Zt(n)||Be(n))&&(a=o,o=r,r=i,i=n,n=null),this.on(n,e,i,r,o,a)}}var Wl=["top","bottom","left","right"],Zs=10;function Ul(e,t){J.call(this,e),this.postExecuted(["connection.create","connection.layout","connection.updateWaypoints"],function(r){var o=r.context,a=o.connection,s=a.source,c=a.target,u=o.hints||{};u.createElementsBehavior!==!1&&(n(s),n(c))}),this.postExecuted(["label.create"],function(r){var o=r.context,a=o.shape,s=o.hints||{};s.createElementsBehavior!==!1&&n(a.labelTarget)}),this.postExecuted(["elements.create"],function(r){var o=r.context,a=o.elements,s=o.hints||{};s.createElementsBehavior!==!1&&a.forEach(function(c){n(c)})});function n(r){if(Us(r)&&!ft(r)){var o=SC(r);o&&i(r,o)}}function i(r,o){var a=Le(r),s=r.label,c=Le(s);if(s.parent){var u=ke(r),l;switch(o){case"top":l={x:a.x,y:u.top-Zs-s.height/2};break;case"left":l={x:u.left-Zs-s.width/2,y:a.y};break;case"bottom":l={x:a.x,y:u.bottom+Zs+s.height/2};break;case"right":l={x:u.right+Zs+s.width/2,y:a.y};break}var p=pi(l,c);t.moveShape(s,p)}}}be(Ul,J),Ul.$inject=["eventBus","modeling"];function wC(e){var t=e.host,n=Le(e),i=sn(n,t),r;i.indexOf("-")>=0?r=i.split("-"):r=[i];var o=Wl.filter(function(a){return r.indexOf(a)===-1});return o}function EC(e){var t=Le(e),n=[].concat(e.incoming.map(function(i){return i.waypoints[i.waypoints.length-2]}),e.outgoing.map(function(i){return i.waypoints[1]})).map(function(i){return Jm(t,i)});return n}function SC(e){var t=Le(e.label),n=Le(e),i=Jm(n,t);if(RC(i)){var r=EC(e);if(e.host){var o=wC(e);r=r.concat(o)}var a=Wl.filter(function(s){return r.indexOf(s)===-1});return a.indexOf(i)!==-1?sn(e.label,e)!=="intersect"?void 0:i:a[0]}}function Jm(e,t){return sn(t,e,5)}function RC(e){return Wl.indexOf(e)!==-1}function Yl(e){J.call(this,e),this.preExecute("shape.append",function(t){var n=t.source,i=t.shape;t.position||(S(i,"bpmn:TextAnnotation")?t.position={x:n.x+n.width/2+75,y:n.y-50-i.height/2}:t.position={x:n.x+n.width+80+i.width/2,y:n.y+n.height/2})},!0)}be(Yl,J),Yl.$inject=["eventBus"];var CC=1500;function ql(e,t,n){e.invoke(J,this),this.preExecute("elements.delete",CC,function(r){var o=r.context,a=o.elements,s=i(a);s.length&&(o.elements=a.concat(s))}),t.on("shape.move.start",function(r){var o=r.context.shapes,a=i(o);a.length&&(r.context.shapes=o.concat(a))});function i(r){var o=Ye(r,u=>S(u,"bpmn:Participant")||S(u,"bpmn:SubProcess"));if(!o.length)return[];var a=n.getRootElement(),s=new Set(a.children.filter(u=>S(u,"bpmn:Artifact"))),c=new Set;return F(o,u=>{const l=new Set(ro(yo(Array.from(s),Bt(u))));c=c.union(l),s=s.difference(l)}),Array.from(c)}}be(ql,J),ql.$inject=["injector","eventBus","canvas"];function Kl(e,t){e.invoke(J,this),this.postExecute("shape.move",function(n){var i=n.newParent,r=n.shape,o=Ye(r.incoming.concat(r.outgoing),function(a){return S(a,"bpmn:Association")});F(o,function(a){t.moveConnection(a,{x:0,y:0},i)})},!0)}be(Kl,J),Kl.$inject=["injector","modeling"];function So(e,t){for(An(t)&&(t=[t]);e=e.parent;)if(We(e,t))return e;return null}function eg(e,t){var n=So(e,"bpmn:Process");if(n)return!0;var i=["bpmn:Participant","bpmn:Lane"];if(n=So(e,i),n)return Jt(n);if(We(e,i))return Jt(e);var r;for(r=te(e);r&&!S(r,"bpmn:Process");r=r.$parent);if(!t)return!0;var o=t.find(function(a){var s=te(a);return s&&s.get("processRef")===r});return o?Jt(o):!0}var tg=500;function Qs(e,t){t.invoke(J,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",tg,function(i){var r=i.elements;r=r.filter(function(o){var a=o.host;return ng(o,a)}),r.length===1&&r.map(function(o){return r.indexOf(o)}).forEach(function(o){var a=r[o];i.elements[o]=n._replaceShape(r[o],a)})},!0),this.preExecute("elements.move",tg,function(i){var r=i.shapes,o=i.newHost;if(r.length===1){var a=r[0];ng(a,o)&&(i.shapes=[n._replaceShape(a,o)])}},!0)}Qs.$inject=["bpmnReplace","injector"],be(Qs,J),Qs.prototype._replaceShape=function(e,t){var n=PC(e),i={type:"bpmn:BoundaryEvent",host:t};return n&&(i.eventDefinitionType=n.$type),this._bpmnReplace.replaceElement(e,i,{layoutConnection:!1})};function PC(e){var t=te(e),n=t.eventDefinitions;return n&&n[0]}function ng(e,t){return!Ge(e)&&We(e,["bpmn:IntermediateThrowEvent","bpmn:IntermediateCatchEvent"])&&!!t}function Xl(e,t){J.call(this,e);function n(i){return Ye(i.attachers,function(r){return S(r,"bpmn:BoundaryEvent")})}this.postExecute("connection.create",function(i){var r=i.context.source,o=i.context.target,a=n(o);S(r,"bpmn:EventBasedGateway")&&S(o,"bpmn:ReceiveTask")&&a.length>0&&t.removeElements(a)}),this.postExecute("connection.reconnect",function(i){var r=i.context.oldSource,o=i.context.newSource;S(r,"bpmn:Gateway")&&S(o,"bpmn:EventBasedGateway")&&F(o.outgoing,function(a){var s=a.target,c=n(s);S(s,"bpmn:ReceiveTask")&&c.length>0&&t.removeElements(c)})})}Xl.$inject=["eventBus","modeling"],be(Xl,J);function ig(e){return e.create("bpmn:Category")}function AC(e){return e.create("bpmn:CategoryValue")}function rg(e,t){var n=t.get("categoryValueRef");return n||(n=t.categoryValueRef=AC(e)),n.$parent||(n.$parent=ig(e)),n}function TC(e,t,n){return Ot(t.get("categoryValue"),e),e.$parent=t,Ot(n.get("rootElements"),t),t.$parent=n,e}function MC(e){var t=e.$parent;return t&&(kt(t.get("categoryValue"),e),e.$parent=null),e}function kC(e){var t=e.$parent;return t&&(kt(t.get("rootElements"),e),e.$parent=null),e}var OC=500;function Zl(e,t,n){n.invoke(J,this);function i(c){return t.filter(function(u){return S(u,"bpmn:Group")&&!u.labelTarget}).map(te).filter(function(u){return u!==c})}function r(c,u){return i(u).some(function(l){return l.get("categoryValueRef")===c})}function o(c,u){return i(u).some(function(l){var p=l.get("categoryValueRef");return p&&p.$parent===c})}function a(c,u){c&&u&&TC(c,u,e.getDefinitions())}function s(c,u,l){u&&!o(u,l)&&kC(u),c&&!r(c,l)&&MC(c)}this.executed(["shape.create","label.create"],function(c){var u=c.labelTarget||c.shape;!S(u,"bpmn:Group")||u.labelTarget||a(c.categoryValue,c.category)},!0),this.reverted(["shape.create","label.create"],function(c){var u=c.labelTarget||c.shape;!S(u,"bpmn:Group")||u.labelTarget||s(c.categoryValue,c.category,te(u))},!0),this.executed(["shape.move","shape.resize"],OC,function(c){a(c.categoryValue,c.category)},!0),this.reverted(["shape.move","shape.resize"],function(c){var u=c.shape;c.categoryValue&&s(c.categoryValue,c.category,te(u))},!0),this.executed("group.updateRefs",function(c){og(c).forEach(function(u){a(u.categoryValue,u.category)})},!0),this.reverted("group.updateRefs",function(c){og(c).forEach(function(u){s(u.categoryValue,u.category,te(u.groupShape))})},!0),this.executed("shape.delete",function(c){var u=c.shape;!S(u,"bpmn:Group")||u.labelTarget||s(c.categoryValue,c.category,te(u))},!0),this.reverted("shape.delete",function(c){var u=c.shape;!S(u,"bpmn:Group")||u.labelTarget||a(c.categoryValue,c.category)},!0)}Zl.$inject=["bpmnjs","elementRegistry","injector"],be(Zl,J);function og(e){var t;return((t=e.updates)==null?void 0:t.groups)||[]}function Ql(e,t,n){J.call(this,e),this.preExecute("shape.replace",s,!0),this.postExecuted("shape.replace",c,!0),this.preExecute("connection.create",r,!0),this.postExecuted("connection.delete",i,!0),this.postExecuted("connection.reconnect",o,!0),this.postExecuted("element.updateProperties",a,!0);function i(y){const g=y.source,v=y.target;Ro(g)&&va(v)&&l(v)}function r(y){const g=y.connection,v=y.source,b=y.target;Ro(v)&&Js(b)&&(u(b),f(v,[g]))}function o(y){const g=y.newTarget,v=y.oldSource,b=y.oldTarget;if(b!==g){const x=v;va(b)&&l(b),Ro(x)&&Js(g)&&u(g)}}function a(y){const{element:g}=y;va(g)?(p(g),d(g)):Js(g)&&m(g)}function s(y){const{newData:g,oldShape:v}=y;if(Ro(y.oldShape)&&g.eventDefinitionType!=="bpmn:CompensateEventDefinition"||g.type!=="bpmn:BoundaryEvent"){const b=v.outgoing.find(({target:x})=>va(x));b&&b.target&&(y._connectionTarget=b.target)}else if(!Ro(y.oldShape)&&g.eventDefinitionType==="bpmn:CompensateEventDefinition"&&g.type==="bpmn:BoundaryEvent"){const b=v.outgoing.find(({target:x})=>Js(x));b&&b.target&&(y._connectionTarget=b.target),h(v)}}function c(y){const{_connectionTarget:g,newShape:v}=y;g&&t.connect(v,g)}function u(y){t.updateProperties(y,{isForCompensation:!0})}function l(y){t.updateProperties(y,{isForCompensation:void 0})}function p(y){for(const g of y.incoming)n.canConnect(g.source,y)||t.removeConnection(g);for(const g of y.outgoing)n.canConnect(y,g.target)||t.removeConnection(g)}function f(y,g){y.outgoing.filter(x=>S(x,"bpmn:Association")).filter(x=>va(x.target)&&!g.includes(x)).forEach(x=>t.removeConnection(x))}function d(y){const g=y.attachers.slice();g.length&&t.removeElements(g)}function m(y){const g=y.incoming.filter(v=>Ro(v.source));t.removeElements(g)}function h(y){const g=y.outgoing.filter(v=>S(v,"bpmn:SequenceFlow"));t.removeElements(g)}}be(Ql,J),Ql.$inject=["eventBus","modeling","bpmnRules"];function va(e){const t=te(e);return t&&t.get("isForCompensation")}function Ro(e){return e&&S(e,"bpmn:BoundaryEvent")&&_o(e,"bpmn:CompensateEventDefinition")}function Js(e){return e&&S(e,"bpmn:Activity")&&!yn(e)}function Jl(e){e.invoke(J,this),this.preExecute("shape.create",1500,function(t){var n=t.context,i=n.parent,r=n.shape;S(i,"bpmn:Lane")&&!S(r,"bpmn:Lane")&&(n.parent=So(i,"bpmn:Participant"))})}Jl.$inject=["injector"],be(Jl,J);function ep(e,t){J.call(this,e),this.preExecute("shape.create",function(n){var a;var i=n.context,r=i.shape;if(S(r,"bpmn:DataObjectReference")&&r.type!=="label"){var o=t.create("bpmn:DataObject");o.isCollection=((a=r.businessObject.dataObjectRef)==null?void 0:a.isCollection)||!1,r.businessObject.dataObjectRef=o}})}ep.$inject=["eventBus","bpmnFactory"],be(ep,J);var tp=20,np=20,ag=30,ec=2e3;function ip(e,t,n){J.call(this,t),t.on(["create.start","shape.move.start"],ec,function(r){var o=r.context,a=o.shape,s=e.getRootElement();if(!(!S(a,"bpmn:Participant")||!S(s,"bpmn:Process")||!s.children.length)){var c=s.children.filter(function(p){return!S(p,"bpmn:Group")&&!Ge(p)&&!ft(p)});if(c.length){var u=Bt(c),l=DC(a,u);V(a,l),o.createConstraints=LC(a,u)}}}),t.on("create.start",ec,function(r){var o=r.context,a=o.shape,s=e.getRootElement(),c=e.getGraphics(s);function u(l){l.element=s,l.gfx=c}S(a,"bpmn:Participant")&&S(s,"bpmn:Process")&&(t.on("element.hover",ec,u),t.once("create.cleanup",function(){t.off("element.hover",u)}))});function i(){var r=e.getRootElement();return S(r,"bpmn:Collaboration")?r:n.makeCollaboration()}this.preExecute("elements.create",ec,function(r){var o=r.elements,a=r.parent,s=IC(o),c;s&&S(a,"bpmn:Process")&&(r.parent=i(),c=r.hints=r.hints||{},c.participant=s,c.process=a,c.processRef=te(s).get("processRef"))},!0),this.preExecute("shape.create",function(r){var o=r.parent,a=r.shape;S(a,"bpmn:Participant")&&S(o,"bpmn:Process")&&(r.parent=i(),r.process=o,r.processRef=te(a).get("processRef"))},!0),this.execute("shape.create",function(r){var o=r.hints||{},a=r.process||o.process,s=r.shape,c=o.participant;a&&(!c||s===c)&&te(s).set("processRef",te(a))},!0),this.revert("shape.create",function(r){var o=r.hints||{},a=r.process||o.process,s=r.processRef||o.processRef,c=r.shape,u=o.participant;a&&(!u||c===u)&&te(c).set("processRef",s)},!0),this.postExecute("shape.create",function(r){var o=r.hints||{},a=r.process||r.hints.process,s=r.shape,c=o.participant;if(a){var u=a.children.slice();c?s===c&&n.moveElements(u,{x:0,y:0},c):n.moveElements(u,{x:0,y:0},s)}},!0)}ip.$inject=["canvas","eventBus","modeling"],be(ip,J);function DC(e,t){t={width:t.width+tp*2+ag,height:t.height+np*2};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}}function LC(e,t){return t=ke(t),{bottom:t.top+e.height/2-np,left:t.right-e.width/2+tp,top:t.bottom-e.height/2+np,right:t.left+e.width/2-tp-ag}}function IC(e){return mt(e,function(t){return S(t,"bpmn:Participant")})}var sg="__targetRef_placeholder";function rp(e,t){J.call(this,e),this.executed(["connection.create","connection.delete","connection.move","connection.reconnect"],cg(o)),this.reverted(["connection.create","connection.delete","connection.move","connection.reconnect"],cg(o));function n(a,s,c){var u=a.get("dataInputAssociations");return mt(u,function(l){return l!==c&&l.targetRef===s})}function i(a,s){var c=a.get("properties"),u=mt(c,function(l){return l.name===sg});return!u&&s&&(u=t.create("bpmn:Property",{name:sg}),Ot(c,u)),u}function r(a,s){var c=i(a);c&&(n(a,c,s)||kt(a.get("properties"),c))}function o(a){var s=a.context,c=s.connection,u=c.businessObject,l=c.target,p=l&&l.businessObject,f=s.newTarget,d=f&&f.businessObject,m=s.oldTarget||s.target,h=m&&m.businessObject,y=c.businessObject,g;h&&h!==p&&r(h,u),d&&d!==p&&r(d,u),p?(g=i(p,!0),y.targetRef=g):y.targetRef=null}}rp.$inject=["eventBus","bpmnFactory"],be(rp,J);function cg(e){return function(t){var n=t.context,i=n.connection;if(S(i,"bpmn:DataInputAssociation"))return e(t)}}function tc(e){this._bpmnUpdater=e}tc.$inject=["bpmnUpdater"],tc.prototype.execute=function(e){var t=e.dataStoreBo,n=e.dataStoreDi,i=e.newSemanticParent,r=e.newDiParent;return e.oldSemanticParent=t.$parent,e.oldDiParent=n.$parent,this._bpmnUpdater.updateSemanticParent(t,i),this._bpmnUpdater.updateDiParent(n,r),[]},tc.prototype.revert=function(e){var t=e.dataStoreBo,n=e.dataStoreDi,i=e.oldSemanticParent,r=e.oldDiParent;return this._bpmnUpdater.updateSemanticParent(t,i),this._bpmnUpdater.updateDiParent(n,r),[]};function op(e,t,n,i){J.call(this,i),t.registerHandler("dataStore.updateContainment",tc);function r(){return n.filter(function(s){return S(s,"bpmn:Participant")&&te(s).processRef})[0]}function o(s){return s.children.filter(function(c){return S(c,"bpmn:DataStoreReference")&&!c.labelTarget})}function a(s,c){var u=s.businessObject||s;if(c=c||r(),c){var l=c.businessObject||c;t.execute("dataStore.updateContainment",{dataStoreBo:u,dataStoreDi:et(s),newSemanticParent:l.processRef||l,newDiParent:et(c)})}}this.preExecute("shape.create",function(s){var c=s.context,u=c.shape;S(u,"bpmn:DataStoreReference")&&u.type!=="label"&&(c.hints||(c.hints={}),c.hints.autoResize=!1)}),this.preExecute("elements.move",function(s){var c=s.context,u=c.shapes,l=u.filter(function(p){return S(p,"bpmn:DataStoreReference")});l.length&&(c.hints||(c.hints={}),c.hints.autoResize=u.filter(function(p){return!S(p,"bpmn:DataStoreReference")}))}),this.postExecute("shape.create",function(s){var c=s.context,u=c.shape,l=u.parent;S(u,"bpmn:DataStoreReference")&&u.type!=="label"&&S(l,"bpmn:Collaboration")&&a(u)}),this.postExecute("shape.move",function(s){var c=s.context,u=c.shape,l=c.oldParent,p=u.parent;if(!S(l,"bpmn:Collaboration")&&S(u,"bpmn:DataStoreReference")&&u.type!=="label"&&S(p,"bpmn:Collaboration")){var f=S(l,"bpmn:Participant")?l:NC(l,"bpmn:Participant");a(u,f)}}),this.postExecute("shape.delete",function(s){var c=s.context,u=c.shape,l=e.getRootElement();We(u,["bpmn:Participant","bpmn:SubProcess"])&&S(l,"bpmn:Collaboration")&&o(l).filter(function(p){return BC(p,u)}).forEach(function(p){a(p)})}),this.postExecute("canvas.updateRoot",function(s){var c=s.context,u=c.oldRoot,l=c.newRoot,p=o(u);p.forEach(function(f){S(l,"bpmn:Process")&&a(f,l)})})}op.$inject=["canvas","commandStack","elementRegistry","eventBus"],be(op,J);function BC(e,t){for(var n=e.businessObject||e,i=t.businessObject||t;n.$parent;){if(n.$parent===i.processRef||i)return!0;n=n.$parent}return!1}function NC(e,t){for(;e.parent;){if(S(e.parent,t))return e.parent;e=e.parent}}var nc=Math.max,ic=Math.min,$C=20;function ug(e,t){return{top:e.top-t.top,right:e.right-t.right,bottom:e.bottom-t.bottom,left:e.left-t.left}}function FC(e,t,n){var i=n.x,r=n.y,o={x:e.x,y:e.y,width:e.width,height:e.height};return t.indexOf("n")!==-1?(o.y=e.y+r,o.height=e.height-r):t.indexOf("s")!==-1&&(o.height=e.height+r),t.indexOf("e")!==-1?o.width=e.width+i:t.indexOf("w")!==-1&&(o.x=e.x+i,o.width=e.width-i),o}function jC(e,t){return{x:e.x+(t.left||0),y:e.y+(t.top||0),width:e.width-(t.left||0)+(t.right||0),height:e.height-(t.top||0)+(t.bottom||0)}}function rc(e,t,n){var i=t[e],r=n.min&&n.min[e],o=n.max&&n.max[e];return Be(r)&&(i=(/top|left/.test(e)?ic:nc)(i,r)),Be(o)&&(i=(/top|left/.test(e)?nc:ic)(i,o)),i}function HC(e,t){if(!t)return e;var n=ke(e);return js({top:rc("top",n,t),right:rc("right",n,t),bottom:rc("bottom",n,t),left:rc("left",n,t)})}function zC(e,t,n,i){var r=ke(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?ke(i):o,s={top:ic(o.top,a.top),left:ic(o.left,a.left),bottom:nc(o.bottom,a.bottom),right:nc(o.right,a.right)};return js(s)}function ba(e,t){return typeof e<"u"?e:$C}function GC(e,t){var n,i,r,o;return typeof t=="object"?(n=ba(t.left),i=ba(t.right),r=ba(t.top),o=ba(t.bottom)):n=i=r=o=ba(t),{x:e.x-n,y:e.y-r,width:e.width+n+i,height:e.height+r+o}}function VC(e){return!(e.waypoints||e.type==="label")}function lg(e,t){var n;if(e.length===void 0?n=Ye(e.children,VC):n=e,n.length)return GC(Bt(n),t)}var cr=Math.abs;function WC(e,t){return ug(ke(t),ke(e))}var UC=["bpmn:Participant","bpmn:Process","bpmn:SubProcess"],Jn=30;function oc(e,t){return t=t||[],e.children.filter(function(n){S(n,"bpmn:Lane")&&(oc(n,t),t.push(n))}),t}function ur(e){return e.children.filter(function(t){return S(t,"bpmn:Lane")})}function ei(e){return So(e,UC)||e}function YC(e,t){var n=ei(e),i=S(n,"bpmn:Process")?[]:[n],r=oc(n,i),o=ke(e),a=ke(t),s=WC(e,t),c=[],u=Jt(e);return r.forEach(function(l){if(l!==e){var p=u?0:s.top,f=u?s.right:0,d=u?0:s.bottom,m=u?s.left:0,h=ke(l);s.top&&(cr(h.bottom-o.top)<10&&(d=a.top-h.bottom),cr(h.top-o.top)<5&&(p=a.top-h.top)),s.left&&(cr(h.right-o.left)<10&&(f=a.left-h.right),cr(h.left-o.left)<5&&(m=a.left-h.left)),s.bottom&&(cr(h.top-o.bottom)<10&&(p=a.bottom-h.top),cr(h.bottom-o.bottom)<5&&(d=a.bottom-h.bottom)),s.right&&(cr(h.left-o.right)<10&&(m=a.right-h.left),cr(h.right-o.right)<5&&(f=a.right-h.right)),(p||f||d||m)&&c.push({shape:l,newBounds:jC(l,{top:p,right:f,bottom:d,left:m})})}}),c}var qC=500;function ap(e,t){J.call(this,e);function n(i,r){var o=Jt(i),a=ur(r),s=[],c=[],u=[],l=[];if(Nr(a,function(y){return o?y.y>i.y?c.push(y):s.push(y):y.x>i.x?l.push(y):u.push(y),y.children}),!!a.length){var p;o?c.length&&s.length?p=i.height/2:p=i.height:l.length&&u.length?p=i.width/2:p=i.width;var f,d,m,h;s.length&&(f=t.calculateAdjustments(s,"y",p,i.y-10),t.makeSpace(f.movingShapes,f.resizingShapes,{x:0,y:p},"s")),c.length&&(d=t.calculateAdjustments(c,"y",-p,i.y+i.height+10),t.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:-p},"n")),u.length&&(m=t.calculateAdjustments(u,"x",p,i.x-10),t.makeSpace(m.movingShapes,m.resizingShapes,{x:p,y:0},"e")),l.length&&(h=t.calculateAdjustments(l,"x",-p,i.x+i.width+10),t.makeSpace(h.movingShapes,h.resizingShapes,{x:-p,y:0},"w"))}}this.postExecuted("shape.delete",qC,function(i){var r=i.context,o=r.hints,a=r.shape,s=r.oldParent;S(a,"bpmn:Lane")&&(o&&o.nested||n(a,s))})}ap.$inject=["eventBus","spaceTool"],be(ap,J);var pg=500;function ac(e,t){t.invoke(J,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",pg,function(i){var r=i.elements;r.filter(function(o){var a=o.host;return fg(o,a)}).map(function(o){return r.indexOf(o)}).forEach(function(o){i.elements[o]=n._replaceShape(r[o])})},!0),this.preExecute("elements.move",pg,function(i){var r=i.shapes,o=i.newHost;r.forEach(function(a,s){var c=a.host;fg(a,XC(r,c)?c:o)&&(r[s]=n._replaceShape(a))})},!0)}ac.$inject=["bpmnReplace","injector"],be(ac,J),ac.prototype._replaceShape=function(e){var t=KC(e),n;return t?n={type:"bpmn:IntermediateCatchEvent",eventDefinitionType:t.$type}:n={type:"bpmn:IntermediateThrowEvent"},this._bpmnReplace.replaceElement(e,n,{layoutConnection:!1})};function KC(e){var t=te(e),n=t.eventDefinitions;return n&&n[0]}function fg(e,t){return!Ge(e)&&S(e,"bpmn:BoundaryEvent")&&!t}function XC(e,t){return e.indexOf(t)!==-1}var sc=Math.round,ZC=Math.max;function QC(e,t){var n=e.x,i=e.y;return[["M",n,i],["m",0,-t],["a",t,t,0,1,1,0,2*t],["a",t,t,0,1,1,0,-2*t],["z"]]}function JC(e){var t=[];return e.forEach(function(n,i){t.push([i===0?"M":"L",n.x,n.y])}),t}var dg=10;function eP(e,t){var n,i;for(n=0;i=e[n];n++)if(ua(i,t)<=dg)return{point:e[n],bendpoint:!0,index:n};return null}function tP(e,t){var n=vm(QC(t,dg),JC(e)),i=n[0],r=n[n.length-1],o;return i?i!==r?i.segment2!==r.segment2?(o=ZC(i.segment2,r.segment2)-1,{point:e[o],bendpoint:!0,index:o}):{point:{x:sc(i.x+r.x)/2,y:sc(i.y+r.y)/2},index:i.segment2}:{point:{x:sc(i.x),y:sc(i.y)},index:i.segment2}:null}function sp(e,t){return eP(e,t)||tP(e,t)}function cp(e,t,n){J.call(this,e);function i(r,o,a){var s=o.waypoints,c,u,l,p,f,d,m,h=r.outgoing.slice(),y=r.incoming.slice(),g;Be(a.width)?g=Le(a):g=a;var v=sp(s,g);if(v){if(c=s.slice(0,v.index),u=s.slice(v.index+(v.bendpoint?1:0)),!c.length||!u.length)return;l=v.bendpoint?s[v.index]:g,(c.length===1||!hg(r,c[c.length-1]))&&c.push(mg(l)),(u.length===1||!hg(r,u[0]))&&u.unshift(mg(l))}p=o.source,f=o.target,t.canConnect(p,r,o)&&(n.reconnectEnd(o,r,c||g),d=o),t.canConnect(r,f,o)&&(d?m=n.connect(r,f,{type:o.type,waypoints:u}):(n.reconnectStart(o,r,u||g),m=o));var b=[].concat(d&&Ye(y,function(x){return x.source===d.source})||[],m&&Ye(h,function(x){return x.target===m.target})||[]);b.length&&n.removeElements(b)}this.preExecute("elements.move",function(r){var o=r.newParent,a=r.shapes,s=r.delta,c=a[0];if(!(!c||!o)){o&&o.waypoints&&(r.newParent=o=o.parent);var u=Le(c),l={x:u.x+s.x,y:u.y+s.y},p=mt(o.children,function(f){var d=t.canInsert(a,f);return d&&sp(f.waypoints,l)});p&&(r.targetFlow=p,r.position=l)}},!0),this.postExecuted("elements.move",function(r){var o=r.shapes,a=r.targetFlow,s=r.position;a&&i(o[0],a,s)},!0),this.preExecute("shape.create",function(r){var o=r.parent,a=r.shape;t.canInsert(a,o)&&(r.targetFlow=o,r.parent=o.parent)},!0),this.postExecuted("shape.create",function(r){var o=r.shape,a=r.targetFlow,s=r.position;a&&i(o,a,s)},!0)}be(cp,J),cp.$inject=["eventBus","bpmnRules","modeling"];function hg(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 mg(e){return V({},e)}function up(e,t){J.call(this,e),this.preExecuted("connection.create",function(n){var i=n.context,r=i.connection,o=i.source,a=i.target,s=i.hints;if(!(s&&s.createElementsBehavior===!1)&&Co(r)){var c=[];S(o,"bpmn:EventBasedGateway")?c=a.incoming.filter(u=>u!==r&&Co(u)):c=a.incoming.filter(u=>u!==r&&Co(u)&&S(u.source,"bpmn:EventBasedGateway")),c.forEach(function(u){t.removeConnection(u)})}}),this.preExecuted("shape.replace",function(n){var i=n.context,r=i.newShape;if(S(r,"bpmn:EventBasedGateway")){var o=r.outgoing.filter(Co).reduce(function(a,s){return a.includes(s.target)?a:a.concat(s.target)},[]);o.forEach(function(a){a.incoming.filter(Co).forEach(function(s){const c=a.incoming.filter(Co).filter(function(u){return u.source===r});(s.source!==r||c.length>1)&&t.removeConnection(s)})})}})}up.$inject=["eventBus","modeling"],be(up,J);function Co(e){return S(e,"bpmn:SequenceFlow")}var cc=1500,gg=2e3;function yg(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"],cc,function(i){var r=i.context,o=r.shape||i.shape,a=i.hover;S(a,"bpmn:Lane")&&!We(o,["bpmn:Lane","bpmn:Participant"])&&(i.hover=ei(a),i.hoverGfx=e.getGraphics(i.hover));var s=n.getRootElement();a&&a!==s&&(o.labelTarget||We(o,["bpmn:Group","bpmn:TextAnnotation"]))&&(i.hover=s,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["connect.hover","connect.out","connect.end","connect.cleanup","global-connect.hover","global-connect.out","global-connect.end","global-connect.cleanup"],cc,function(i){var r=i.hover;S(r,"bpmn:Lane")&&(i.hover=ei(r)||r,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["bendpoint.move.hover"],cc,function(i){var r=i.context,o=i.hover,a=r.type;S(o,"bpmn:Lane")&&/reconnect/.test(a)&&(i.hover=ei(o)||o,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["connect.start"],cc,function(i){var r=i.context,o=r.start;S(o,"bpmn:Lane")&&(r.start=ei(o)||o)}),t.on("shape.move.start",gg,function(i){var r=i.shape;S(r,"bpmn:Lane")&&(i.shape=ei(r)||r)}),t.on("spaceTool.move",gg,function(i){var r=i.hover;r&&S(r,"bpmn:Lane")&&(i.hover=ei(r))})}yg.$inject=["elementRegistry","eventBus","canvas"];var vg=770;function lp(e,t,n,i){n.invoke(J,this);function r(s,c){var u=te(s),l=c.categoryValue||u.categoryValueRef;l||(l=rg(e,u));var p=c.category||l.$parent||ig(e);u.categoryValueRef=l,l.$parent=p,c.categoryValue=l,c.category=p}function o(s,c){var u=te(s),l=c.categoryValue||u.categoryValueRef,p=c.category||l&&l.$parent;l&&(c.categoryValue=l,c.category=p,u.categoryValueRef=null)}this.execute("label.create",function(s){var c=s.context,u=c.labelTarget;S(u,"bpmn:Group")&&r(u,c)}),this.revert("label.create",function(s){var c=s.context,u=c.labelTarget;S(u,"bpmn:Group")&&o(u,c)}),this.execute("shape.delete",function(s){var c=s.context,u=c.shape,l=te(u);if(!(!S(u,"bpmn:Group")||u.labelTarget)){var p=c.categoryValue=l.categoryValueRef;p&&(c.category=p.$parent,l.categoryValueRef=null)}}),this.reverted("shape.delete",function(s){var c=s.context,u=c.shape;if(!(!S(u,"bpmn:Group")||u.labelTarget)){var l=c.category,p=c.categoryValue,f=te(u);p&&(f.categoryValueRef=p,p.$parent=l)}}),this.execute("shape.create",function(s){var c=s.context,u=c.shape,l=c.hints||{};!S(u,"bpmn:Group")||u.labelTarget||l.createElementsBehavior===!1&&!te(u).categoryValueRef&&!c.categoryValue||r(u,c)}),this.reverted("shape.create",function(s){var c=s.context,u=c.shape,l=c.hints||{};!S(u,"bpmn:Group")||u.labelTarget||l.createElementsBehavior===!1&&!te(u).categoryValueRef&&!c.categoryValue||o(u,c)}),this.executed(["shape.move","shape.resize"],function(s){var c=s.context,u=c.shape;!S(u,"bpmn:Group")||u.labelTarget||te(u).categoryValueRef||r(u,c)}),this.reverted(["shape.move","shape.resize"],function(s){var c=s.context,u=c.shape;!S(u,"bpmn:Group")||u.labelTarget||!c.categoryValue||o(u,c)});function a(s,c){var u=e.create(s.$type);return i.copyElement(s,u,null,c)}t.on("copyPaste.copyElement",vg,function(s){var c=s.descriptor,u=s.element;if(!(!S(u,"bpmn:Group")||u.labelTarget)){var l=te(u);if(l.categoryValueRef){var p=l.categoryValueRef;c.categoryValue=a(p,!0),p.$parent&&(c.category=a(p.$parent,!0))}}}),t.on("copyPaste.pasteElement",vg,function(s){var c=s.descriptor,u=c.businessObject,l=c.categoryValue,p=c.category;l&&(l=u.categoryValueRef=a(l)),p&&(l.$parent=a(p)),delete c.category,delete c.categoryValue})}lp.$inject=["bpmnFactory","eventBus","injector","moddleCopy"],be(lp,J);function pp(e,t,n,i){var r,o,a,s,c;return r=(i.y-n.y)*(t.x-e.x)-(i.x-n.x)*(t.y-e.y),r==0?null:(o=e.y-n.y,a=e.x-n.x,c=(i.x-n.x)*o-(i.y-n.y)*a,s=c/r,{x:Math.round(e.x+s*(t.x-e.x)),y:Math.round(e.y+s*(t.y-e.y))})}function bg(e){function t(i,r,o){var a={x:o.x,y:o.y-50},s={x:o.x-50,y:o.y},c=pp(i,r,o,a),u=pp(i,r,o,s),l;c&&u?xg(c,o)>xg(u,o)?l=u:l=c:l=c||u,i.original=l}function n(i){var r=i.waypoints;t(r[0],r[1],Le(i.source)),t(r[r.length-1],r[r.length-2],Le(i.target))}e.on("bpmnElement.added",function(i){var r=i.element;r.waypoints&&n(r)})}bg.$inject=["eventBus"];function xg(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function fp(e){J.call(this,e);var t=["bpmn:Participant","bpmn:Lane"];this.executed(["shape.move","shape.create","shape.resize"],function(n){var i=n.context.shape,r=te(i),o=et(i);if(We(r,t)){var a=o.get("isHorizontal");a===void 0&&(a=!0),o.set("isHorizontal",a)}})}fp.$inject=["eventBus"],be(fp,J);function _g(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function wg(e){return Math.atan((e[1].y-e[0].y)/(e[1].x-e[0].x))}function nP(e,t){return t?{x:Math.cos(t)*e.x-Math.sin(t)*e.y,y:Math.sin(t)*e.x+Math.cos(t)*e.y}:e}function iP(e,t,n){var i=[{n:e[0]-n[0],lambda:t[0]},{n:e[1]-n[1],lambda:t[1]}],r=i[0].n*t[0]+i[1].n*t[1],o=i[0].lambda*t[0]+i[1].lambda*t[1];return-r/o}function dp(e,t){var n=t[0],i=t[1],r={x:i.x-n.x,y:i.y-n.y},o=iP([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 Eg(e,t){var n=dp(e,t),i={x:n.x-e.x,y:n.y-e.y};return _g(i)}function xa(e,t){return _g({x:e.x-t.x,y:e.y-t.y})}var Sg=Math.sqrt,Rg=Math.min,rP=Math.max,Cg=Math.abs;function Pg(e){return Math.pow(e,2)}function _a(e,t){return Sg(Pg(e.x-t.x)+Pg(e.y-t.y))}function oP(e,t){var n=0,i,r,o,a,s,c,u,l,p,f,d;for(n=0;n<t.length-1;n++){if(i=t[n],r=t[n+1],Tg(i,r)?u=[i]:(o=_a(e,i),a=_a(e,r),c=Rg(o,a),u=aP(i,r,e,c)),u.length<1)throw new Error("expected between [1, 2] circle -> line intersections");u.length===1&&(l={type:"bendpoint",position:u[0],segmentIndex:n,bendpointIndex:Tg(i,u[0])?n:n+1}),u.length===2&&(s=cP(u[0],u[1]),l={type:"segment",position:s,segmentIndex:n,relativeLocation:_a(i,s)/_a(i,r)}),p=_a(l.position,e),(!d||f>p)&&(d=l,f=p)}return d}function aP(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,u=r*a+o*s,l=a*a+s*s-i*i,p=u/c,f=l/c,d=p*p-f;if(d<0&&d>-1e-6&&(d=0),d<0)return[];var m=Sg(d),h=-p+m,y=-p-m,g={x:e.x-r*h,y:e.y-o*h};if(d===0)return[g];var v={x:e.x-r*y,y:e.y-o*y};return[g,v].filter(function(b){return sP(b,e,t)})}function sP(e,t,n){return Ag(e.x,t.x,n.x)&&Ag(e.y,t.y,n.y)}function Ag(e,t,n){return e>=Rg(t,n)-uc&&e<=rP(t,n)+uc}function cP(e,t){return{x:(e.x+t.x)/2,y:(e.y+t.y)/2}}var uc=.1;function Tg(e,t){return Cg(e.x-t.x)<=uc&&Cg(e.y-t.y)<=uc}function uP(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=i.bendpointMove.insert,u=i.bendpointMove.bendpointIndex,l;if(o===0)return r;if(r>=u&&(l=c?r+1:r-1),r<u&&(l=r,c&&n.type!=="bendpoint"&&u-1===r)){var p=kg(t,u);p<n.relativeLocation&&l++}return l}return o===0?r:i.connectionStart&&r===0?0:i.connectionEnd&&r===e.length-2?t.length-2:Math.floor((t.length-2)/2)}function Mg(e,t,n,i){var r=0,o=0,a={point:e,delta:{x:0,y:0}},s=oP(e,n),c=s.segmentIndex,u=uP(n,t,s,i);if(u<0||u>t.length-2||u===null)return a;var l=Og(n,c),p=Og(t,u),f=s.position,d=pP(l,f),m=lP(l,p);if(s.type==="bendpoint"){var h=t.length-n.length,y=s.bendpointIndex,g=n[y];if(t.indexOf(g)!==-1)return a;if(h===0){var v=t[y];return r=v.x-s.position.x,o=v.y-s.position.y,{delta:{x:r,y:o},point:{x:e.x+r,y:e.y+o}}}h<0&&y!==0&&y<n.length-1&&(d=kg(n,y))}var b={x:(p[1].x-p[0].x)*d+p[0].x,y:(p[1].y-p[0].y)*d+p[0].y},x=nP({x:e.x-f.x,y:e.y-f.y},m);return r=b.x+x.x-e.x,o=b.y+x.y-e.y,{point:Bi(b),delta:Bi({x:r,y:o})}}function kg(e,t){var n=xa(e[t-1],e[t]),i=xa(e[t],e[t+1]),r=n/(n+i);return r}function lP(e,t){var n=wg(e),i=wg(t);return i-n}function Og(e,t){return[e[t],e[t+1]]}function pP(e,t){var n=xa(e[0],e[1]),i=xa(e[0],t);return n===0?0:i/n}function fP(e,t,n,i){var r=Le(e);return Mg(r,t,n,i).delta}function wa(e,t,n){var i=ya(t),r=ya(n),o=pi(e,i),a={x:o.x*(n.width/t.width),y:o.y*(n.height/t.height)};return Bi({x:r.x+a.x,y:r.y+a.y})}function Dg(e,t,n){var i=ya(e),r=ya(t),o=ya(n),a=pi(e,i),s=pi(i,r),c=dP(i,t,n);if(c)return c;var u={x:s.x*(n.width/t.width),y:s.y*(n.height/t.height)},l={x:o.x+u.x,y:o.y+u.y};return Bi({x:l.x+a.x-e.x,y:l.y+a.y-e.y})}function dP(e,t,n){var i=ke(t),r=ke(n);if(hP(i,r))return null;var o=sn(t,e),a,s,c;if(o==="top")a={x:0,y:r.bottom-i.bottom};else if(o==="bottom")a={x:0,y:r.top-i.top};else if(o==="right")a={x:r.left-i.left,y:0};else if(o==="left")a={x:r.right-i.right,y:0};else return null;return s={x:e.x+a.x,y:e.y+a.y},c=sn(n,s),c!==o?null:a}function hP(e,t){return mP(e,t)||gP(e,t)}function mP(e,t){return e.right!==t.right&&e.left!==t.left}function gP(e,t){return e.top!==t.top&&e.bottom!==t.bottom}var Lg="name",Ig="text";function hp(e,t,n,i){J.call(this,e),this.postExecute("element.updateProperties",r),this.postExecute("element.updateModdleProperties",a=>{te(a.context.element)===a.context.moddleElement&&r(a)});function r(a){var s=a.context,c=s.element,u=s.properties;if(Lg in u&&t.updateLabel(c,u[Lg]),Ig in u&&S(c,"bpmn:TextAnnotation")){var l=i.getTextAnnotationBounds({x:c.x,y:c.y,width:c.width,height:c.height},u[Ig]||"");t.updateLabel(c,u.text,l)}}this.postExecute(["shape.create","connection.create"],function(a){var s=a.context,c=s.hints||{};if(c.createElementsBehavior!==!1){var u=s.shape||s.connection;Ge(u)||!sr(u)||qn(u)&&t.updateLabel(u,qn(u))}}),this.postExecute("shape.delete",function(a){var s=a.context,c=s.labelTarget,u=s.hints||{};c&&u.unsetLabel!==!1&&t.updateLabel(c,null,null,{removeShape:!1})});function o(a){var s=a.context,c=s.connection,u=c.label,l=V({},s.hints),p=s.newWaypoints||c.waypoints,f=s.oldWaypoints;return typeof l.startChanged>"u"&&(l.startChanged=!!l.connectionStart),typeof l.endChanged>"u"&&(l.endChanged=!!l.connectionEnd),fP(u,p,f,l)}this.postExecute(["connection.layout","connection.updateWaypoints"],function(a){var s=a.context,c=s.hints||{};if(c.labelBehavior!==!1){var u=s.connection,l=u.label,p;!l||!l.parent||(p=o(a),t.moveShape(l,p))}}),this.postExecute(["shape.replace"],function(a){var s=a.context,c=s.newShape,u=s.oldShape,l=te(c);l&&sr(l)&&u.label&&c.label&&(c.label.x=u.label.x,c.label.y=u.label.y)}),this.preExecute("shape.resize",function(a){var s=a.context,c=s.shape,u=s.hints||{};if(!(!Ge(c)||u.autoResize)){var l=s.newBounds,p=i.getDimensions(qn(c)||"",{box:l,style:i.getExternalStyle()}),f=Math.ceil(p.height),d=l.y!==c.y,m=c.y+c.height;s.newBounds={width:l.width,height:f,x:l.x,y:d?m-f:l.y}}}),this.postExecute("shape.resize",function(a){var s=a.context,c=s.shape,u=s.newBounds,l=s.oldBounds;if(Us(c)){var p=c.label,f=Le(p),d=bP(l),m=vP(f,d),h=yP(m,l,u);t.moveShape(p,h)}})}be(hp,J),hp.$inject=["eventBus","modeling","bpmnFactory","textRenderer"];function yP(e,t,n){var i=wa(e,t,n);return Bi(pi(i,e))}function vP(e,t){if(t.length){var n=xP(e,t);return dp(e,n)}}function bP(e){return[[{x:e.x,y:e.y},{x:e.x+(e.width||0),y:e.y}],[{x:e.x+(e.width||0),y:e.y},{x:e.x+(e.width||0),y:e.y+(e.height||0)}],[{x:e.x,y:e.y+(e.height||0)},{x:e.x+(e.width||0),y:e.y+(e.height||0)}],[{x:e.x,y:e.y},{x:e.x,y:e.y+(e.height||0)}]]}function xP(e,t){var n=t.map(function(r){return{line:r,distance:Eg(e,r)}}),i=di(n,"distance");return i[0].line}function _P(e,t,n,i){return Mg(e,t,n,i).point}function mp(e,t){J.call(this,e);function n(i,r){var o=i.context,a=o.connection,s=V({},o.hints),c=o.newWaypoints||a.waypoints,u=o.oldWaypoints;return typeof s.startChanged>"u"&&(s.startChanged=!!s.connectionStart),typeof s.endChanged>"u"&&(s.endChanged=!!s.connectionEnd),_P(r,c,u,s)}this.postExecute(["connection.layout","connection.updateWaypoints"],function(i){var r=i.context,o=r.connection,a=o.outgoing,s=o.incoming;s.forEach(function(c){var u=c.waypoints[c.waypoints.length-1],l=n(i,u),p=[].concat(c.waypoints.slice(0,-1),[l]);t.updateWaypoints(c,p)}),a.forEach(function(c){var u=c.waypoints[0],l=n(i,u),p=[].concat([l],c.waypoints.slice(1));t.updateWaypoints(c,p)})}),this.postExecute(["connection.move"],function(i){var r=i.context,o=r.connection,a=o.outgoing,s=o.incoming,c=r.delta;s.forEach(function(u){var l=u.waypoints[u.waypoints.length-1],p={x:l.x+c.x,y:l.y+c.y},f=[].concat(u.waypoints.slice(0,-1),[p]);t.updateWaypoints(u,f)}),a.forEach(function(u){var l=u.waypoints[0],p={x:l.x+c.x,y:l.y+c.y},f=[].concat([p],u.waypoints.slice(1));t.updateWaypoints(u,f)})})}be(mp,J),mp.$inject=["eventBus","modeling"];function lc(e,t,n){var i=fc(e),r=Ng(i,t),o=i[0];return r.length?r[r.length-1]:wa(o.original||o,n,t)}function pc(e,t,n){var i=fc(e),r=Ng(i,t),o=i[i.length-1];return r.length?r[0]:wa(o.original||o,n,t)}function gp(e,t,n){var i=fc(e),r=Bg(t,n),o=i[0];return wa(o.original||o,r,t)}function yp(e,t,n){var i=fc(e),r=Bg(t,n),o=i[i.length-1];return wa(o.original||o,r,t)}function Bg(e,t){return{x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}function fc(e){var t=e.waypoints;if(!t.length)throw new Error("connection#"+e.id+": no waypoints");return t}function Ng(e,t){var n=fn(e,EP);return Ye(n,function(i){return wP(i,t)})}function wP(e,t){return sn(t,e,1)==="intersect"}function EP(e){return e.original||e}function vp(e,t){J.call(this,e),this.postExecute("shape.replace",function(n){var i=n.oldShape,r=n.newShape;if(SP(i,r)){var o=RP(i);o.incoming.forEach(function(a){var s=pc(a,r,i);t.reconnectEnd(a,r,s)}),o.outgoing.forEach(function(a){var s=lc(a,r,i);t.reconnectStart(a,r,s)})}},!0)}vp.$inject=["eventBus","modeling"],be(vp,J);function SP(e,t){return S(e,"bpmn:Participant")&&Xe(e)&&S(t,"bpmn:Participant")&&!Xe(t)}function RP(e){var t=sa([e]),n=[],i=[];return t.forEach(function(r){r!==e&&(r.incoming.forEach(function(o){S(o,"bpmn:MessageFlow")&&n.push(o)}),r.outgoing.forEach(function(o){S(o,"bpmn:MessageFlow")&&i.push(o)}))},[]),{incoming:n,outgoing:i}}const CP=["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:EscalationEventDefinition","bpmn:ConditionalEventDefinition","bpmn:SignalEventDefinition"];function $g(e){const t=te(e);if(!S(t,"bpmn:BoundaryEvent")&&!(S(t,"bpmn:StartEvent")&&yn(t.$parent)))return!1;const n=t.get("eventDefinitions");return!n||!n.length?!1:CP.some(i=>S(n[0],i))}function Fg(e){return S(e,"bpmn:BoundaryEvent")?"cancelActivity":"isInterrupting"}function bp(e,t){e.invoke(J,this),this.postExecuted("shape.replace",function(n){const i=n.context.oldShape,r=n.context.newShape,o=n.context.hints;if(!$g(r))return;const a=Fg(r);if(o.targetElement&&o.targetElement[a]!==void 0)return;const c=te(i).get(a),u=te(r).get(a);c!==u&&t.updateProperties(r,{[a]:c})})}bp.$inject=["injector","modeling"],be(bp,J);function xp(e,t){J.call(this,e),this.preExecute("shape.resize",function(n){var i=n.shape,r=et(i),o=r&&r.get("label"),a=o&&o.get("bounds");a&&t.updateModdleProperties(i,o,{bounds:void 0})},!0)}be(xp,J),xp.$inject=["eventBus","modeling"];function _p(e,t,n){J.call(this,e),this.preExecute("shape.delete",function(i){var r=i.context.shape;if(!(r.incoming.length!==1||r.outgoing.length!==1)){var o=r.incoming[0],a=r.outgoing[0];if(!(!S(o,"bpmn:SequenceFlow")||!S(a,"bpmn:SequenceFlow"))&&t.canConnect(o.source,a.target,o)){var s=PP(o.waypoints,a.waypoints);n.reconnectEnd(o,a.target,s)}}})}be(_p,J),_p.$inject=["eventBus","bpmnRules","modeling"];function Po(e){return e.original||e}function PP(e,t){var n=pp(Po(e[e.length-2]),Po(e[e.length-1]),Po(t[1]),Po(t[0]));return n?[].concat(e.slice(0,e.length-1),[n],t.slice(1)):[Po(e[0]),Po(t[t.length-1])]}function wp(e,t){J.call(this,e),this.preExecute("shape.delete",function(n){var i=n.shape,r=i.parent;S(i,"bpmn:Participant")&&(n.collaborationRoot=r)},!0),this.postExecute("shape.delete",function(n){var i=n.collaborationRoot;if(i&&!i.businessObject.participants.length){var r=t.makeProcess(),o=i.children.slice();t.moveElements(o,{x:0,y:0},r)}},!0)}wp.$inject=["eventBus","modeling"],be(wp,J);function Ep(e,t,n,i){J.call(this,e);var r=i.get("dragging",!1);function o(c){var u=c.source,l=c.target,p=c.parent;if(p){var f,d;S(c,"bpmn:SequenceFlow")&&(n.canConnectSequenceFlow(u,l)||(d=!0),n.canConnectMessageFlow(u,l)&&(f="bpmn:MessageFlow")),S(c,"bpmn:MessageFlow")&&(n.canConnectMessageFlow(u,l)||(d=!0),n.canConnectSequenceFlow(u,l)&&(f="bpmn:SequenceFlow")),d&&t.removeConnection(c),f&&t.connect(u,l,{type:f,waypoints:c.waypoints.slice()})}}function a(c){var u=c.context,l=u.connection,p=u.newSource||l.source,f=u.newTarget||l.target,d,m;d=n.canConnect(p,f),!(!d||d.type===l.type)&&(m=t.connect(p,f,{type:d.type,associationDirection:d.associationDirection,waypoints:l.waypoints.slice()}),l.parent&&t.removeConnection(l),u.connection=m,r&&s(l,m))}function s(c,u){var l=r.context(),p=l&&l.payload.previousSelection,f;!p||!p.length||(f=p.indexOf(c),f!==-1&&p.splice(f,1,u))}this.postExecuted("elements.move",function(c){var u=c.closure,l=u.allConnections;F(l,o)},!0),this.preExecute("connection.reconnect",a),this.postExecuted("element.updateProperties",function(c){var u=c.context,l=u.properties,p=u.element,f=p.businessObject,d;l.default&&(d=mt(p.outgoing,ao({id:p.businessObject.default.id})),d&&t.updateProperties(d,{conditionExpression:void 0})),l.conditionExpression&&f.sourceRef.default===f&&t.updateProperties(p.source,{default:void 0})})}be(Ep,J),Ep.$inject=["eventBus","modeling","bpmnRules","injector"];function dc(e,t,n,i,r,o){i.invoke(J,this),this._bpmnReplace=e,this._elementRegistry=n,this._selection=o,this.postExecuted(["elements.create"],500,function(a){var s=a.context,c=s.parent,u=s.elements,l=Mn(u,function(p,f){var d=t.canReplace([f],f.host||f.parent||c);return d?p.concat(d.replacements):p},[]);l.length&&this._replaceElements(u,l)},this),this.postExecuted(["elements.move"],500,function(a){var s=a.context,c=s.newParent,u=s.newHost,l=[];F(s.closure.topLevel,function(f){yn(f)?l=l.concat(f.children):l=l.concat(f)}),l.length===1&&u&&(c=u);var p=t.canReplace(l,c);p&&this._replaceElements(l,p.replacements,u)},this),this.postExecute(["shape.replace"],1500,function(a){var s=a.context,c=s.oldShape,u=s.newShape,l=c.attachers,p;l&&l.length&&(p=t.canReplace(l,u),this._replaceElements(l,p.replacements))},this),this.postExecuted(["shape.replace"],1500,function(a){var s=a.context,c=s.oldShape,u=s.newShape;r.unclaimId(c.businessObject.id,c.businessObject),r.updateProperties(u,{id:c.id})})}be(dc,J),dc.prototype._replaceElements=function(e,t){var n=this._elementRegistry,i=this._bpmnReplace,r=this._selection;F(t,function(o){var a={type:o.newElementType},s=n.get(o.oldElementId),c=e.indexOf(s);e[c]=i.replaceElement(s,a,{select:!1})}),t&&r.select(e)},dc.$inject=["bpmnReplace","bpmnRules","elementRegistry","injector","modeling","selection"];var AP=1500,TP={width:140,height:120},Sp={width:300,height:60},Rp={width:60,height:300},hc={width:300,height:150},mc={width:150,height:300},jg={width:140,height:120},Hg={width:100,height:40};function zg(e){e.on("resize.start",AP,function(t){var n=t.context,i=n.shape,r=n.direction,o=n.balanced;(S(i,"bpmn:Lane")||S(i,"bpmn:Participant"))&&(n.resizeConstraints=LP(i,r,o)),S(i,"bpmn:SubProcess")&&Xe(i)&&(n.minDimensions=jg),S(i,"bpmn:TextAnnotation")&&(n.minDimensions=Hg)})}zg.$inject=["eventBus"];var lr=Math.abs,MP=Math.min,kP=Math.max;function Gg(e,t,n,i){var r=e[t];e[t]=r===void 0?n:i(n,r)}function Ao(e,t,n){return Gg(e,t,n,MP)}function To(e,t,n){return Gg(e,t,n,kP)}var OP={top:20,left:50,right:20,bottom:20},DP={top:50,left:20,right:20,bottom:20};function LP(e,t,n){var i=ei(e),r=!0,o=!0,a=oc(i,[i]),s=ke(e),c={},u={},l=Jt(e),p=l?Sp:Rp;/n/.test(t)?u.top=s.bottom-p.height:/e/.test(t)?u.right=s.left+p.width:/s/.test(t)?u.bottom=s.top+p.height:/w/.test(t)&&(u.left=s.right-p.width),a.forEach(function(m){var h=ke(m);l?(h.top<s.top-10&&(r=!1),h.bottom>s.bottom+10&&(o=!1)):(h.left<s.left-10&&(r=!1),h.right>s.right+10&&(o=!1)),/n/.test(t)&&(n&&lr(s.top-h.bottom)<10&&To(c,"top",h.top+p.height),lr(s.top-h.top)<5&&Ao(u,"top",h.bottom-p.height)),/e/.test(t)&&(n&&lr(s.right-h.left)<10&&Ao(c,"right",h.right-p.width),lr(s.right-h.right)<5&&To(u,"right",h.left+p.width)),/s/.test(t)&&(n&&lr(s.bottom-h.top)<10&&Ao(c,"bottom",h.bottom-p.height),lr(s.bottom-h.bottom)<5&&To(u,"bottom",h.top+p.height)),/w/.test(t)&&(n&&lr(s.left-h.right)<10&&To(c,"left",h.left+p.width),lr(s.left-h.left)<5&&Ao(u,"left",h.right-p.width))});var f=i.children.filter(function(m){return!m.hidden&&!m.waypoints&&(S(m,"bpmn:FlowElement")||S(m,"bpmn:Artifact"))}),d=l?OP:DP;return f.forEach(function(m){var h=ke(m);/n/.test(t)&&(!l||r)&&Ao(u,"top",h.top-d.top),/e/.test(t)&&(l||o)&&To(u,"right",h.right+d.right),/s/.test(t)&&(!l||o)&&To(u,"bottom",h.bottom+d.bottom),/w/.test(t)&&(l||r)&&Ao(u,"left",h.left-d.left)}),{min:u,max:c}}function Vg(e){!e||typeof e.stopPropagation!="function"||e.stopPropagation()}function Mo(e){return e.originalEvent||e.srcEvent}function Cp(e){Vg(e),Vg(Mo(e))}function Hr(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 Wg(){return/mac/i.test(navigator.platform)}function Ug(e,t){return(Mo(e)||e).button===t}function pr(e){return Ug(e,0)}function IP(e){return Ug(e,1)}function Ea(e){var t=Mo(e)||e;return pr(e)?Wg()?t.metaKey:t.ctrlKey:!1}function gc(e){var t=Mo(e)||e;return pr(e)&&t.shiftKey}var Yg=1001;function qg(e,t){e.on("resize.start",Yg+500,function(n){var i=n.context,r=i.shape;(S(r,"bpmn:Lane")||S(r,"bpmn:Participant"))&&(i.balanced=!Ea(n))}),e.on("resize.end",Yg,function(n){var i=n.context,r=i.shape,o=i.canExecute,a=i.newBounds;if(S(r,"bpmn:Lane")||S(r,"bpmn:Participant"))return o&&(a=Em(a),t.resizeLane(r,a,i.balanced)),!1})}qg.$inject=["eventBus","modeling"];var BP=500;function Pp(e,t,n,i,r){n.invoke(J,this);function o(l){return We(l,["bpmn:ReceiveTask","bpmn:SendTask"])||NP(l,["bpmn:ErrorEventDefinition","bpmn:EscalationEventDefinition","bpmn:MessageEventDefinition","bpmn:SignalEventDefinition"])}function a(l){var p=e.getDefinitions(),f=p.get("rootElements");return!!mt(f,ao({id:l.id}))}function s(l){if(S(l,"bpmn:ErrorEventDefinition"))return"errorRef";if(S(l,"bpmn:EscalationEventDefinition"))return"escalationRef";if(S(l,"bpmn:MessageEventDefinition"))return"messageRef";if(S(l,"bpmn:SignalEventDefinition"))return"signalRef"}function c(l){if(We(l,["bpmn:ReceiveTask","bpmn:SendTask"]))return l.get("messageRef");var p=l.get("eventDefinitions"),f=p[0];return f.get(s(f))}function u(l,p){if(We(l,["bpmn:ReceiveTask","bpmn:SendTask"]))return l.set("messageRef",p);var f=l.get("eventDefinitions"),d=f[0];return d.set(s(d),p)}this.executed(["shape.create","element.updateProperties","element.updateModdleProperties"],function(l){var p=l.shape||l.element;if(o(p)){var f=te(p),d=c(f),m;d&&!a(d)&&(m=e.getDefinitions().get("rootElements"),Ot(m,d),l.addedRootElement=d)}},!0),this.reverted(["shape.create","element.updateProperties","element.updateModdleProperties"],function(l){var p=l.addedRootElement;if(p){var f=e.getDefinitions().get("rootElements");kt(f,p)}},!0),t.on("copyPaste.copyElement",function(l){var p=l.descriptor,f=l.element;if(!(f.labelTarget||!o(f))){var d=te(f),m=c(d);m&&(p.referencedRootElement=m)}}),t.on("copyPaste.pasteElement",BP,function(l){var p=l.descriptor,f=p.businessObject,d=p.referencedRootElement;d&&(a(d)||(d=i.copyElement(d,r.create(d.$type))),u(f,d),delete p.referencedRootElement)})}Pp.$inject=["bpmnjs","eventBus","injector","moddleCopy","bpmnFactory"],be(Pp,J);function NP(e,t){return De(t)||(t=[t]),Xi(t,function(n){return _o(e,n)})}var Kg=Math.max;function Xg(e){e.on("spaceTool.getMinDimensions",function(t){var n=t.shapes,i=t.axis,r=t.start,o={};return F(n,function(a){var s=a.id;S(a,"bpmn:Participant")&&(o[s]=FP(a,i,r)),S(a,"bpmn:Lane")&&(o[s]=Jt(a)?Sp:Rp),S(a,"bpmn:SubProcess")&&Xe(a)&&(o[s]=jg),S(a,"bpmn:TextAnnotation")&&(o[s]=Hg),S(a,"bpmn:Group")&&(o[s]=TP)}),o})}Xg.$inject=["eventBus"];function $P(e){return e==="x"}function FP(e,t,n){var i=Jt(e);if(!zP(e))return i?hc:mc;var r=$P(t),o={};return r?i?o=hc:o={width:HP(e,n,r),height:mc.height}:i?o={width:hc.width,height:jP(e,n,r)}:o=mc,o}function jP(e,t,n){var i;return i=GP(e,t,n),Kg(hc.height,i)}function HP(e,t,n){var i;return i=VP(e,t,n),Kg(mc.width,i)}function zP(e){return!!ur(e).length}function GP(e,t,n){var i=ur(e),r;return r=Ap(i,t,n),e.height-r.height+Sp.height}function VP(e,t,n){var i=ur(e),r;return r=Ap(i,t,n),e.width-r.width+Rp.width}function Ap(e,t,n){var i,r,o;for(i=0;i<e.length;i++)if(r=e[i],!n&&t>=r.y&&t<=r.y+r.height||n&&t>=r.x&&t<=r.x+r.width)return o=ur(r),o.length?Ap(o,t,n):r}var Zg="_plane";function Qg(e){var t=e.id;return WP(t)}function Ei(e){var t=e.id;return S(e,"bpmn:SubProcess")?Jg(t):t}function zr(e){return Jg(e)}function yc(e){var t=et(e);return S(t,"bpmndi:BPMNPlane")}function Jg(e){return e+Zg}function WP(e){return e.replace(new RegExp(Zg+"$"),"")}var ey=400,UP=600,ty={x:180,y:160};function ji(e,t,n,i,r,o,a){J.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(p){return S(p,"bpmn:SubProcess")&&!Xe(p)}function u(p){var f=p.shape,d=p.newRootElement,m=te(f);d=s._addDiagram(d||m),p.newRootElement=e.addRootElement(d)}function l(p){var f=p.shape,d=te(f);s._removeDiagram(d);var m=p.newRootElement=a.get(Ei(d));e.removeRootElement(m)}this.executed("shape.create",function(p){var f=p.shape;c(f)&&u(p)},!0),this.postExecuted("elements.create",function(p){var f=p.elements;F(f,function(d){if(c(d)){var m=a.get(Ei(d));if(!(!m||!d.children||!d.children.length)){var h=ny(d);s._showRecursively(h),s._moveChildrenToShape(h,m)}}})},!0),this.reverted("shape.create",function(p){var f=p.shape;c(f)&&l(p)},!0),this.preExecute("shape.delete",function(p){var f=p.shape;!S(f,"bpmn:SubProcess")||!Xe(f)||F(da([f]),d=>{n.removeShape(d.annotation)})},!0),this.preExecuted("shape.delete",function(p){var f=p.shape;if(c(f)){var d=a.get(Ei(f));d&&n.removeElements(d.children.slice())}},!0),this.executed("shape.delete",function(p){var f=p.shape;c(f)&&l(p)},!0),this.reverted("shape.delete",function(p){var f=p.shape;c(f)&&u(p)},!0),this.preExecuted("shape.replace",function(p){var f=p.oldShape,d=p.newShape;!c(f)||!c(d)||(p.oldRoot=e.removeRootElement(Ei(f)))},!0),this.postExecuted("shape.replace",function(p){var f=p.newShape,d=p.oldRoot,m=e.findRoot(Ei(f));if(!(!d||!m)){var h=d.children;n.moveElements(h,{x:0,y:0},m)}},!0),this.executed("element.updateProperties",function(p){var f=p.element;if(S(f,"bpmn:SubProcess")){var d=p.properties,m=p.oldProperties,h=m.id,y=d.id;if(h!==y){if(yc(f)){a.updateId(f,zr(y)),a.updateId(h,y);return}var g=a.get(zr(h));g&&a.updateId(zr(h),zr(y))}}},!0),this.reverted("element.updateProperties",function(p){var f=p.element;if(S(f,"bpmn:SubProcess")){var d=p.properties,m=p.oldProperties,h=m.id,y=d.id;if(h!==y){if(yc(f)){a.updateId(f,zr(h)),a.updateId(y,h);return}var g=a.get(zr(y));g&&a.updateId(g,zr(h))}}},!0),t.on("element.changed",function(p){var f=p.element;if(yc(f)){var d=f,m=a.get(Qg(d));!m||m===d||t.fire("element.changed",{element:m})}}),this.executed("shape.toggleCollapse",ey,function(p){var f=p.shape;S(f,"bpmn:SubProcess")&&(Xe(f)?l(p):(u(p),s._showRecursively(f.children)))},!0),this.reverted("shape.toggleCollapse",ey,function(p){var f=p.shape;S(f,"bpmn:SubProcess")&&(Xe(f)?l(p):(u(p),s._showRecursively(f.children)))},!0),this.postExecuted("shape.toggleCollapse",UP,function(p){var f=p.shape;if(S(f,"bpmn:SubProcess")){var d=p.newRootElement;if(d)if(Xe(f))s._moveChildrenToShape(d.children.slice(),f),F(da(f.children),h=>{n.moveShape(h.annotation,{x:0,y:0},f.parent),F(h.associations,y=>{n.moveConnection(y,{x:0,y:0},f.parent)})});else{s._disconnectSharedAnnotations(f);var m=ny(f);s._moveChildrenToShape(m,d)}}},!0),t.on("copyPaste.createTree",function(p){var f=p.element,d=p.children;if(c(f)){var m=Ei(f),h=a.get(m);h&&d.push.apply(d,h.children)}}),t.on("copyPaste.copyElement",function(p){var f=p.descriptor,d=p.element,m=p.elements,h=d.parent,y=S(et(h),"bpmndi:BPMNPlane");if(y){var g=Qg(h),v=mt(m,function(b){return b.id===g});v&&(f.parent=v.id)}}),t.on("copyPaste.pasteElement",function(p){var f=p.descriptor;f.parent&&(c(f.parent)||f.parent.hidden)&&(f.hidden=!0)})}be(ji,J),ji.prototype._moveChildrenToShape=function(e,t){var n=this._modeling;if(e.length){var i=e.filter(function(c){return!c.hidden});if(!i.length){n.moveElements(e,{x:0,y:0},t,{autoResize:!1});return}var r=Bt(i),o;if(!t.x)o={x:ty.x-r.x,y:ty.y-r.y};else{var a=Le(t),s=Le(r);o={x:a.x-s.x,y:a.y-s.y}}n.moveElements(e,o,t,{autoResize:!1})}},ji.prototype._disconnectSharedAnnotations=function(e){var t=this._modeling,n=new Set(Um(e).map(i=>i.annotation));n.size&&F(da(e.children),i=>{n.has(i.annotation)&&F(i.associations,r=>{t.removeConnection(r)})})},ji.prototype._showRecursively=function(e,t){var n=this,i=[];return e.forEach(function(r){r.hidden=!!t,i=i.concat(r),r.children&&(i=i.concat(n._showRecursively(r.children,r.collapsed||t)))}),i},ji.prototype._addDiagram=function(e){var t=this._bpmnjs,n=t.getDefinitions().diagrams;return e.businessObject||(e=this._createNewDiagram(e)),n.push(e.di.$parent),e},ji.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});i.$parent=r;var o=n.createRoot({id:Ei(e),type:e.$type,di:i,businessObject:e,collapsed:!0});return o},ji.prototype._removeDiagram=function(e){var t=this._bpmnjs,n=t.getDefinitions().diagrams,i=mt(n,function(r){return r.plane.bpmnElement.id===e.id});return n.splice(n.indexOf(i),1),i},ji.$inject=["canvas","eventBus","modeling","elementFactory","bpmnFactory","bpmnjs","elementRegistry"];function YP(e){var t=[];return F(da(e),n=>{t.push(n.annotation),t.push.apply(t,n.associations)}),t}function ny(e){return e.children.slice().concat(YP(e.children)).concat(qP(e))}function qP(e){return Dl(e.children||[]).reduce(function(t,n){return n.label&&n.label.parent!==e&&t.push(n.label),t},[])}function Tp(e,t){e.invoke(J,this),this.postExecuted("shape.replace",function(n){var i=n.context.oldShape,r=n.context.newShape;if(!(!S(r,"bpmn:SubProcess")||S(r,"bpmn:AdHocSubProcess")||!(S(i,"bpmn:Task")||S(i,"bpmn:CallActivity"))||!Xe(r))){var o=KP(r);t.createShape({type:"bpmn:StartEvent"},o,r)}})}Tp.$inject=["injector","modeling"],be(Tp,J);function KP(e){return{x:e.x+e.width/6,y:e.y+e.height/2}}function Mp(e,t){J.call(this,e),this.preExecute("connection.create",function(n){const{target:i}=n;S(i,"bpmn:TextAnnotation")&&(n.parent=i.parent)},!0),this.preExecute(["shape.create","shape.resize","elements.move"],function(n){const i=n.shapes||[n.shape];i.length===1&&S(i[0],"bpmn:TextAnnotation")&&(n.hints=n.hints||{},n.hints.autoResize=!1)},!0),this.preExecute("shape.resize",function(n){var i=n.context,r=i.shape,o=i.hints||{};if(!(!S(r,"bpmn:TextAnnotation")||o.autoResize)){var a=i.newBounds,s=t.getTextAnnotationBounds(a,qn(r)||""),c=a.y!==r.y&&Math.abs(a.y+a.height-(r.y+r.height))<=1,u=r.y+r.height;i.newBounds={width:a.width,height:s.height,x:a.x,y:c?u-s.height:a.y}}})}be(Mp,J),Mp.$inject=["eventBus","textRenderer"];function kp(e,t){J.call(this,e),this.postExecuted("shape.toggleCollapse",1500,function(n){var i=n.shape;if(Xe(i))return;var r=sa(i);r.forEach(function(a){var s=a.incoming.slice(),c=a.outgoing.slice();F(s,function(u){o(u,!0)}),F(c,function(u){o(u,!1)})});function o(a,s){r.indexOf(a.source)!==-1&&r.indexOf(a.target)!==-1||S(a,"bpmn:Association")&&(S(a.source,"bpmn:TextAnnotation")||S(a.target,"bpmn:TextAnnotation"))||(s?t.reconnectEnd(a,i,Le(i)):t.reconnectStart(a,i,Le(i)))}},!0)}be(kp,J),kp.$inject=["eventBus","modeling"];var Op=500;function Dp(e,t,n){J.call(this,e);function i(a){a.length&&a.forEach(function(s){s.type==="label"&&!s.businessObject.name&&(s.hidden=!0)})}function r(a,s){var c=a.children,u=s,l,p;return l=XP(c).concat([a]),p=lg(l),p?(u.width=Math.max(p.width,u.width),u.height=Math.max(p.height,u.height),u.x=p.x+(p.width-u.width)/2,u.y=p.y+(p.height-u.height)/2):(u.x=a.x+(a.width-u.width)/2,u.y=a.y+(a.height-u.height)/2),u}function o(a,s){return{x:a.x+(a.width-s.width)/2,y:a.y+(a.height-s.height)/2,width:s.width,height:s.height}}this.executed(["shape.toggleCollapse"],Op,function(a){var s=a.context,c=s.shape;S(c,"bpmn:SubProcess")&&(c.collapsed?et(c).isExpanded=!1:(i(c.children),et(c).isExpanded=!0))}),this.reverted(["shape.toggleCollapse"],Op,function(a){var s=a.context,c=s.shape;c.collapsed?et(c).isExpanded=!1:et(c).isExpanded=!0}),this.postExecuted(["shape.toggleCollapse"],Op,function(a){var s=a.context.shape,c=t.getDefaultSize(s),u;s.collapsed?u=o(s,c):u=r(s,c),n.resizeShape(s,u,null,{autoResize:s.collapsed?!1:"nwse"})})}be(Dp,J),Dp.$inject=["eventBus","elementFactory","modeling"];function XP(e){return e.filter(function(t){return!t.hidden})}function Lp(e,t,n,i){t.invoke(J,this),this.preExecute("shape.delete",function(r){var o=r.context,a=o.shape,s=a.businessObject;Ge(a)||(S(a,"bpmn:Participant")&&Xe(a)&&n.ids.unclaim(s.processRef.id),i.unclaimId(s.id,s))}),this.preExecute("connection.delete",function(r){var o=r.context,a=o.connection,s=a.businessObject;i.unclaimId(s.id,s)}),this.preExecute("canvas.updateRoot",function(){var r=e.getRootElement(),o=r.businessObject;S(r,"bpmn:Collaboration")&&n.ids.unclaim(o.id)})}be(Lp,J),Lp.$inject=["canvas","injector","moddle","modeling"];function Ip(e,t){J.call(this,e),this.preExecute("connection.delete",function(n){var i=n.context,r=i.connection,o=r.source;ZP(r,o)&&t.updateProperties(o,{default:null})})}be(Ip,J),Ip.$inject=["eventBus","modeling"];function ZP(e,t){if(!S(e,"bpmn:SequenceFlow"))return!1;var n=te(t),i=te(e);return n.get("default")===i}var QP=500,JP=5e3,iy=["shape.create","shape.delete","shape.move","shape.resize"],ry=[...iy,"spaceTool","lane.add","lane.resize","lane.split","elements.create","elements.delete","elements.move"];function Bp(e,t){J.call(this,e);var n;function i(){return n=n||new eA,n.enter(),n}function r(){if(!n)throw new Error("out of bounds release");return n}function o(){if(!n)throw new Error("out of bounds release");var a=n.leave();return a&&(t.updateLaneRefs(n.flowNodes,n.lanes),n=null),a}this.preExecute(ry,JP,function(){i()}),this.postExecuted(ry,QP,function(){o()}),this.preExecute(iy,function(a){var s=a.context,c=s.shape,u=r();!c||c.labelTarget||(S(c,"bpmn:Lane")&&u.addLane(c),S(c,"bpmn:FlowNode")&&u.addFlowNode(c))})}Bp.$inject=["eventBus","modeling"],be(Bp,J);function eA(){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}}var tA=500,nA=5e3,oy=["connection.create","connection.delete","connection.layout","connection.move","connection.reconnect","connection.updateWaypoints","shape.create","shape.delete","shape.move","shape.resize"],ay=[...oy,"elements.create","elements.delete","elements.move","label.create","spaceTool"];function Np(e,t){J.call(this,e);var n;function i(){return n=n||new iA,n.enter(),n}function r(){if(!n)throw new Error("out of bounds release");return n}function o(){if(!n)throw new Error("out of bounds release");var a=n.leave();return a&&(t.updateCategoryValueRefs(Array.from(n.affectedFlowElements),Array.from(n.affectedGroupEntries.values())),n=null),a}this.preExecute(ay,nA,function(){i()}),this.postExecuted(ay,tA,function(){o()}),this.preExecute(oy,function(a){var s=a.context.connection||a.context.shape,c=r();!s||s.labelTarget||(S(s,"bpmn:FlowElement")&&c.addFlowElement(s),S(s,"bpmn:Group")&&c.addGroup(s))}),this.preExecute("label.create",function(a){var s=a.context.labelTarget;S(s,"bpmn:Group")&&r().addGroup(s)})}Np.$inject=["eventBus","modeling"],be(Np,J);function iA(){this.affectedFlowElements=new Set,this.affectedGroupEntries=new Map,this.counter=0,this.addFlowElement=function(e){this.affectedFlowElements.add(e)},this.addGroup=function(e){this.affectedGroupEntries.has(e)||this.affectedGroupEntries.set(e,{categoryValue:e.businessObject.categoryValueRef,groupShape:e})},this.enter=function(){this.counter++},this.leave=function(){return this.counter--,!this.counter}}function $p(e,t){J.call(this,e),this.postExecuted("elements.create",function(n){const i=n.context,r=i.elements;for(const o of r)rA(o)&&!aA(o)&&t.updateProperties(o,{isForCompensation:void 0})})}be($p,J),$p.$inject=["eventBus","modeling"];function rA(e){const t=te(e);return t&&t.isForCompensation}function oA(e){return e&&S(e,"bpmn:BoundaryEvent")&&_o(e,"bpmn:CompensateEventDefinition")}function aA(e){return e.incoming.filter(n=>oA(n.source)).length>0}const sA={__init__:["adaptiveLabelPositioningBehavior","appendBehavior","artifactBehavior","associationBehavior","attachEventBehavior","boundaryEventBehavior","categoryRootElementReferenceBehavior","compensateBoundaryEventBehaviour","createBehavior","createDataObjectBehavior","createParticipantBehavior","dataInputAssociationBehavior","dataStoreBehavior","deleteLaneBehavior","detachEventBehavior","dropOnFlowBehavior","eventBasedGatewayBehavior","fixHoverBehavior","groupBehavior","importDockingFix","isHorizontalFix","labelBehavior","layoutConnectionBehavior","messageFlowBehavior","nonInterruptingBehavior","removeElementBehavior","removeEmbeddedLabelBoundsBehavior","removeParticipantBehavior","replaceConnectionBehavior","replaceElementBehaviour","resizeBehavior","resizeLaneBehavior","rootElementReferenceBehavior","spaceToolBehavior","subProcessPlaneBehavior","subProcessStartEventBehavior","textAnnotationBehavior","toggleCollapseConnectionBehaviour","toggleElementCollapseBehaviour","unclaimIdBehavior","updateFlowNodeRefsBehavior","updateCategoryValueRefsBehavior","unsetDefaultFlowBehavior","setCompensationActivityAfterPasteBehavior"],adaptiveLabelPositioningBehavior:["type",Ul],appendBehavior:["type",Yl],associationBehavior:["type",Kl],attachEventBehavior:["type",Qs],artifactBehavior:["type",ql],boundaryEventBehavior:["type",Xl],categoryRootElementReferenceBehavior:["type",Zl],compensateBoundaryEventBehaviour:["type",Ql],createBehavior:["type",Jl],createDataObjectBehavior:["type",ep],createParticipantBehavior:["type",ip],dataInputAssociationBehavior:["type",rp],dataStoreBehavior:["type",op],deleteLaneBehavior:["type",ap],detachEventBehavior:["type",ac],dropOnFlowBehavior:["type",cp],eventBasedGatewayBehavior:["type",up],fixHoverBehavior:["type",yg],groupBehavior:["type",lp],importDockingFix:["type",bg],isHorizontalFix:["type",fp],labelBehavior:["type",hp],layoutConnectionBehavior:["type",mp],messageFlowBehavior:["type",vp],nonInterruptingBehavior:["type",bp],removeElementBehavior:["type",_p],removeEmbeddedLabelBoundsBehavior:["type",xp],removeParticipantBehavior:["type",wp],replaceConnectionBehavior:["type",Ep],replaceElementBehaviour:["type",dc],resizeBehavior:["type",zg],resizeLaneBehavior:["type",qg],rootElementReferenceBehavior:["type",Pp],spaceToolBehavior:["type",Xg],subProcessPlaneBehavior:["type",ji],subProcessStartEventBehavior:["type",Tp],textAnnotationBehavior:["type",Mp],toggleCollapseConnectionBehaviour:["type",kp],toggleElementCollapseBehaviour:["type",Dp],unclaimIdBehavior:["type",Lp],unsetDefaultFlowBehavior:["type",Ip],updateFlowNodeRefsBehavior:["type",Bp],updateCategoryValueRefsBehavior:["type",Np],setCompensationActivityAfterPasteBehavior:["type",$p]};function Fp(e){this._commandStack=e.get("commandStack",!1)}Fp.$inject=["injector"],Fp.prototype.allowed=function(e,t){var n=!0,i=this._commandStack;return i&&(n=i.canExecute(e,t)),n===void 0?!0:n};const Si={__init__:["rules"],rules:["type",Fp]};function ti(e){J.call(this,e),this.init()}ti.$inject=["eventBus"],be(ti,J),ti.prototype.addRule=function(e,t,n){var i=this;typeof e=="string"&&(e=[e]),e.forEach(function(r){i.canExecute(r,t,function(o,a,s){return n(o)},!0)})},ti.prototype.init=function(){};function sy(e,t){var n=sn(e,t,-15);return n!=="intersect"?n:null}function un(e){ti.call(this,e)}be(un,ti),un.$inject=["eventBus"],un.prototype.init=function(){this.addRule("connection.start",function(e){var t=e.source;return cA(t)}),this.addRule("connection.create",function(e){var t=e.source,n=e.target,i=e.hints||{},r=i.targetParent,o=i.targetAttach;if(o)return!1;r&&(n.parent=r);try{return bc(t,n)}finally{r&&(n.parent=null)}}),this.addRule("connection.reconnect",function(e){var t=e.connection,n=e.source,i=e.target;return bc(n,i,t)}),this.addRule("connection.updateWaypoints",function(e){return{type:e.connection.type}}),this.addRule("shape.resize",function(e){var t=e.shape,n=e.newBounds,i=e.direction;return xy(t,n,i)}),this.addRule("elements.create",function(e){var t=e.elements,n=e.position,i=e.target;return ft(i)&&!xc(t,i)?!1:kr(t,function(r){return ft(r)?bc(r.source,r.target,r):r.host?Sa(r,r.host,null,n):Gp(r,i)})}),this.addRule("elements.move",function(e){var t=e.target,n=e.shapes,i=e.position,r=e.hints;return r!=null&&r.keyboardMove&&n.some(function(a){return hy(a)&&!n.includes(a.host)})?!1:Sa(n,t,null,i)||vy(n,t,i)||by(n,t)||xc(n,t)}),this.addRule("shape.create",function(e){return Gp(e.shape,e.target,e.source,e.position)}),this.addRule("shape.attach",function(e){return Sa(e.shape,e.target,null,e.position)}),this.addRule("element.copy",function(e){var t=e.element,n=e.elements;return Ry(n,t)})},un.prototype.canConnectMessageFlow=Ey,un.prototype.canConnectSequenceFlow=Sy,un.prototype.canConnectDataAssociation=Vp,un.prototype.canConnectAssociation=_y,un.prototype.canConnectCompensationAssociation=wy,un.prototype.canMove=by,un.prototype.canAttach=Sa,un.prototype.canReplace=vy,un.prototype.canDrop=ko,un.prototype.canInsert=xc,un.prototype.canCreate=Gp,un.prototype.canConnect=bc,un.prototype.canResize=xy,un.prototype.canCopy=Ry;function cA(e){return jp(e)?null:We(e,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference","bpmn:Group","bpmn:TextAnnotation"])}function jp(e){return!e||Ge(e)}function cy(e){do{if(S(e,"bpmn:Process"))return te(e);if(S(e,"bpmn:Participant"))return te(e).processRef||te(e)}while(e=e.parent)}function Hp(e){return S(e,"bpmn:TextAnnotation")}function zp(e){return S(e,"bpmn:Group")&&!e.labelTarget}function uy(e){return S(e,"bpmn:BoundaryEvent")&&Ri(e,"bpmn:CompensateEventDefinition")}function vc(e){return te(e).isForCompensation}function uA(e,t){var n=cy(e),i=cy(t);return n===i}function lA(e){return S(e,"bpmn:InteractionNode")&&!S(e,"bpmn:BoundaryEvent")&&(!S(e,"bpmn:Event")||S(e,"bpmn:ThrowEvent")&&fy(e,"bpmn:MessageEventDefinition"))}function pA(e){return S(e,"bpmn:InteractionNode")&&!vc(e)&&(!S(e,"bpmn:Event")||S(e,"bpmn:CatchEvent")&&fy(e,"bpmn:MessageEventDefinition"))&&!(S(e,"bpmn:BoundaryEvent")&&!Ri(e,"bpmn:MessageEventDefinition"))}function ly(e){for(var t=e;t=t.parent;){if(S(t,"bpmn:FlowElementsContainer"))return te(t);if(S(t,"bpmn:Participant"))return te(t).processRef}return null}function py(e,t){var n=ly(e),i=ly(t);return n===i}function Ri(e,t){var n=te(e);return!!mt(n.eventDefinitions||[],function(i){return S(i,t)})}function fy(e,t){var n=te(e);return(n.eventDefinitions||[]).every(function(i){return S(i,t)})}function fA(e){return S(e,"bpmn:FlowNode")&&!S(e,"bpmn:EndEvent")&&!yn(e)&&!(S(e,"bpmn:IntermediateThrowEvent")&&Ri(e,"bpmn:LinkEventDefinition"))&&!uy(e)&&!vc(e)}function dA(e){return S(e,"bpmn:FlowNode")&&!S(e,"bpmn:StartEvent")&&!S(e,"bpmn:BoundaryEvent")&&!yn(e)&&!(S(e,"bpmn:IntermediateCatchEvent")&&Ri(e,"bpmn:LinkEventDefinition"))&&!vc(e)}function hA(e){return S(e,"bpmn:ReceiveTask")||S(e,"bpmn:IntermediateCatchEvent")&&(Ri(e,"bpmn:MessageEventDefinition")||Ri(e,"bpmn:TimerEventDefinition")||Ri(e,"bpmn:ConditionalEventDefinition")||Ri(e,"bpmn:SignalEventDefinition"))}function mA(e){for(var t=[];e;)e=e.parent,e&&t.push(e);return t}function dy(e,t){var n=mA(t);return n.indexOf(e)!==-1}function bc(e,t,n){if(jp(e)||jp(t))return null;if(!S(n,"bpmn:DataAssociation")){if(Ey(e,t))return{type:"bpmn:MessageFlow"};if(Sy(e,t))return{type:"bpmn:SequenceFlow"}}var i=Vp(e,t);return i||(wy(e,t)?{type:"bpmn:Association",associationDirection:"One"}:_y(e,t)?{type:"bpmn:Association",associationDirection:"None"}:!1)}function ko(e,t){return Ge(e)||zp(e)?!0:S(t,"bpmn:Participant")&&!Xe(t)?!1:S(e,"bpmn:Participant")?S(t,"bpmn:Process")||S(t,"bpmn:Collaboration"):We(e,["bpmn:DataInput","bpmn:DataOutput"])&&e.parent?t===e.parent:S(e,"bpmn:Lane")?S(t,"bpmn:Participant")||S(t,"bpmn:Lane"):S(e,"bpmn:BoundaryEvent")&&!gA(e)?!1:S(e,"bpmn:FlowElement")&&!S(e,"bpmn:DataStoreReference")?S(t,"bpmn:FlowElementsContainer")?Xe(t):We(t,["bpmn:Participant","bpmn:Lane"]):S(e,"bpmn:DataStoreReference")&&S(t,"bpmn:Collaboration")?Xi(te(t).get("participants"),function(n){return!!n.get("processRef")}):We(e,["bpmn:Artifact","bpmn:DataAssociation","bpmn:DataStoreReference"])?We(t,["bpmn:Collaboration","bpmn:Lane","bpmn:Participant","bpmn:Process","bpmn:SubProcess"]):S(e,"bpmn:MessageFlow")?S(t,"bpmn:Collaboration")||e.source.parent==t||e.target.parent==t:!1}function gA(e){return te(e).cancelActivity&&(my(e)||gy(e))}function hy(e){return!Ge(e)&&S(e,"bpmn:BoundaryEvent")}function yA(e){return S(e,"bpmn:Lane")}function vA(e){return hy(e)||S(e,"bpmn:IntermediateThrowEvent")&&my(e)?!0:S(e,"bpmn:IntermediateCatchEvent")&&gy(e)}function my(e){var t=te(e);return t&&!(t.eventDefinitions&&t.eventDefinitions.length)}function gy(e){return yy(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])}function yy(e,t){return t.some(function(n){return Ri(e,n)})}function bA(e){return S(e,"bpmn:ReceiveTask")&&mt(e.incoming,function(t){return S(t.source,"bpmn:EventBasedGateway")})}function Sa(e,t,n,i){if(Array.isArray(e)||(e=[e]),e.length!==1)return!1;var r=e[0];return Ge(r)||!vA(r)||yn(t)||!S(t,"bpmn:Activity")||vc(t)||i&&!sy(i,t)||bA(t)?!1:"attach"}function vy(e,t,n){if(!t)return!1;var i={replacements:[]};return F(e,function(r){yn(t)||S(r,"bpmn:StartEvent")&&r.type!=="label"&&ko(r,t)&&(AR(r)||i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"}),(TR(r)||MR(r)||kR(r))&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"}),yy(r,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])&&S(t,"bpmn:SubProcess")&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"})),S(t,"bpmn:Transaction")||Ri(r,"bpmn:CancelEventDefinition")&&r.type!=="label"&&(S(r,"bpmn:EndEvent")&&ko(r,t)&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:EndEvent"}),S(r,"bpmn:BoundaryEvent")&&Sa(r,t,null,n)&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:BoundaryEvent"}))}),i.replacements.length?i:!1}function by(e,t){return Xi(e,yA)?!1:t===void 0?!0:t===null?!1:e.every(function(n){return ko(n,t)})}function Gp(e,t,n,i){return t?Ge(e)||zp(e)?!0:ko(e,t)||xc(e,t):!1}function xy(e,t,n){return S(e,"bpmn:SubProcess")?Xe(e)&&(!t||t.width>=100&&t.height>=80):S(e,"bpmn:Lane")||S(e,"bpmn:Participant")?!0:Hp(e)?n?n==="e"||n==="w":!0:zp(e)?!0:Ge(e)?n?n==="e"||n==="w":!0:!1}function xA(e,t){var n=Hp(e),i=Hp(t);return(n||i)&&n!==i}function _y(e,t){return dy(t,e)||dy(e,t)?!1:xA(e,t)?!0:!!Vp(e,t)}function wy(e,t){return py(e,t)&&uy(e)&&S(t,"bpmn:Activity")&&!wA(t,e)&&!yn(t)}function Ey(e,t){return Py(e)&&!Py(t)?!1:lA(e)&&pA(t)&&!uA(e,t)}function Sy(e,t){return fA(e)&&dA(t)&&py(e,t)&&!(S(e,"bpmn:EventBasedGateway")&&!hA(t))}function Vp(e,t){return We(e,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&We(t,["bpmn:Activity","bpmn:ThrowEvent"])?{type:"bpmn:DataInputAssociation"}:We(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&We(e,["bpmn:Activity","bpmn:CatchEvent"])?{type:"bpmn:DataOutputAssociation"}:!1}function xc(e,t,n){if(!t)return!1;if(Array.isArray(e)){if(e.length!==1)return!1;e=e[0]}return t.source===e||t.target===e?!1:We(t,["bpmn:SequenceFlow","bpmn:MessageFlow"])&&!Ge(t)&&S(e,"bpmn:FlowNode")&&!S(e,"bpmn:BoundaryEvent")&&ko(e,t.parent)}function Wp(e,t){return e&&t&&e.indexOf(t)!==-1}function Ry(e,t){return Ge(t)?!0:!(S(t,"bpmn:Lane")&&!Wp(e,t.parent)||S(t,"bpmn:MessageFlow")&&!_A(e,t))}function _A(e,t){var n=Cy(t.source),i=Cy(t.target);return Wp(e,n)&&Wp(e,i)}function Cy(e){for(;e;e=e.parent)if(S(e,"bpmn:Participant"))return e;return null}function Py(e){return So(e,"bpmn:Process")||So(e,"bpmn:Collaboration")}function wA(e,t){return e.attachers.includes(t)}const EA={__depends__:[Si],__init__:["bpmnRules"],bpmnRules:["type",un]};var SA=2e3;function Ay(e,t){e.on("saveXML.start",SA,n);function n(){var i=t.getRootElements();F(i,function(r){var o=et(r),a,s;a=sa([r]),a=Ye(a,function(c){return c!==r&&!c.labelTarget}),s=fn(a,et),o.set("planeElement",s)})}}Ay.$inject=["eventBus","canvas"];const RA={__init__:["bpmnDiOrdering"],bpmnDiOrdering:["type",Ay]};function _c(e){J.call(this,e);var t=this;this.preExecute(["shape.create","connection.create"],function(n){var i=n.context,r=i.shape||i.connection,o=i.parent,a=t.getOrdering(r,o);a&&(a.parent!==void 0&&(i.parent=a.parent),i.parentIndex=a.index)}),this.preExecute(["shape.move","connection.move"],function(n){var i=n.context,r=i.shape||i.connection,o=i.newParent||r.parent,a=t.getOrdering(r,o);a&&(a.parent!==void 0&&(i.newParent=a.parent),i.newParentIndex=a.index)})}_c.prototype.getOrdering=function(e,t){return null},be(_c,J);function Up(e,t){_c.call(this,e);var n=[{type:"bpmn:SubProcess",order:{level:6}},{type:"bpmn:SequenceFlow",order:{level:9,containers:["bpmn:Participant","bpmn:FlowElementsContainer"]}},{type:"bpmn:DataAssociation",order:{level:9,containers:["bpmn:Collaboration","bpmn:FlowElementsContainer"]}},{type:"bpmn:TextAnnotation",order:{level:9}},{type:"bpmn:MessageFlow",order:{level:9,containers:["bpmn:Collaboration"]}},{type:"bpmn:Association",order:{level:6,containers:["bpmn:Participant","bpmn:FlowElementsContainer","bpmn:Collaboration"]}},{type:"bpmn:BoundaryEvent",order:{level:8}},{type:"bpmn:Group",order:{level:10,containers:["bpmn:Collaboration","bpmn:FlowElementsContainer"]}},{type:"bpmn:FlowElement",order:{level:5}},{type:"bpmn:Participant",order:{level:-2}},{type:"bpmn:Lane",order:{level:-1}}];function i(a){if(a.labelTarget)return{level:10};var s=mt(n,function(c){return We(a,[c.type])});return s&&s.order||{level:1}}function r(a){var s=a.order;if(s||(a.order=s=i(a)),!s)throw new Error(`no order for <${a.id}>`);return s}function o(a,s,c){for(var u=s;u&&!We(u,c);)u=u.parent;if(!u)throw new Error(`no parent for <${a.id}> in <${s&&s.id}>`);return u}this.getOrdering=function(a,s){if(a.labelTarget||S(a,"bpmn:TextAnnotation"))return{parent:t.findRoot(s)||t.getRootElement(),index:-1};var c=r(a);c.containers&&(s=o(a,s,c.containers));var u=s.children.indexOf(a),l=Rd(s.children,function(p){return!a.labelTarget&&p.labelTarget?!1:c.level<r(p).level});return l!==-1&&u!==-1&&u<l&&(l-=1),{index:l,parent:s}}}Up.$inject=["eventBus","canvas"],be(Up,_c);const CA={__init__:["bpmnOrderingProvider"],bpmnOrderingProvider:["type",Up]};function Ra(){}Ra.prototype.get=function(){return this._data},Ra.prototype.set=function(e){this._data=e},Ra.prototype.clear=function(){var e=this._data;return delete this._data,e},Ra.prototype.isEmpty=function(){return!this._data};const PA={clipboard:["type",Ra]};var Ty=1500;function My(e,t,n){var i=this,r=n.get("dragging",!1);function o(a){if(!a.hover){var s=a.originalEvent,c=i._findTargetGfx(s),u=c&&e.get(c);c&&u&&(a.stopPropagation(),r.hover({element:u,gfx:c}),r.move(s))}}r&&t.on("drag.start",function(a){t.once("drag.move",Ty,function(s){o(s)})}),(function(){var a,s;t.on("element.hover",function(c){a=c.gfx,s=c.element}),t.on("element.hover",Ty,function(c){s&&t.fire("element.out",{element:s,gfx:a})}),t.on("element.out",function(){a=null,s=null})})(),this._findTargetGfx=function(a){var s,c;if(a instanceof MouseEvent)return s=Hr(a),c=document.elementFromPoint(s.x,s.y),AA(c)}}My.$inject=["elementRegistry","eventBus","injector"];function AA(e){return Ir(e,"svg, .djs-element",!0)}const TA={__init__:["hoverFix"],hoverFix:["type",My]};function MA(e){return!0}function wc(e){return pr(e)||IP(e)}var ky=500;function Oy(e,t,n){var i=this;function r(A,I,D){if(!s(A,I)){var L,z,ne;D?z=t.getGraphics(D):(L=I.delegateTarget||I.target,L&&(z=L,D=t.get(z))),!(!z||!D)&&(ne=e.fire(A,{element:D,gfx:z,originalEvent:I}),ne===!1&&(I.stopPropagation(),I.preventDefault()))}}var o={};function a(A){return o[A]}function s(A,I){var D=u[A]||pr;return!D(I)}var c={click:"element.click",contextmenu:"element.contextmenu",dblclick:"element.dblclick",mousedown:"element.mousedown",mousemove:"element.mousemove",mouseover:"element.hover",mouseout:"element.out",mouseup:"element.mouseup"},u={"element.contextmenu":MA,"element.mousedown":wc,"element.mouseup":wc,"element.click":wc,"element.dblclick":wc};function l(A,I,D){var L=c[A];if(!L)throw new Error("unmapped DOM event name <"+A+">");return r(L,I,D)}var p="svg, .djs-element";function f(A,I,D,L){var z=o[D]=function(ne){r(D,ne)};L&&(u[D]=L),z.$delegate=On.bind(A,p,I,z)}function d(A,I,D){var L=a(D);L&&On.unbind(A,I,L.$delegate)}function m(A){F(c,function(I,D){f(A,D,I)})}function h(A){F(c,function(I,D){d(A,D,I)})}e.on("canvas.destroy",function(A){h(A.svg)}),e.on("canvas.init",function(A){m(A.svg)}),e.on(["shape.added","connection.added"],function(A){var I=A.element,D=A.gfx;e.fire("interactionEvents.createHit",{element:I,gfx:D})}),e.on(["shape.changed","connection.changed"],ky,function(A){var I=A.element,D=A.gfx;e.fire("interactionEvents.updateHit",{element:I,gfx:D})}),e.on("interactionEvents.createHit",ky,function(A){var I=A.element,D=A.gfx;i.createDefaultHit(I,D)}),e.on("interactionEvents.updateHit",function(A){var I=A.element,D=A.gfx;i.updateDefaultHit(I,D)});var y=C("djs-hit djs-hit-stroke"),g=C("djs-hit djs-hit-click-stroke"),v=C("djs-hit djs-hit-all"),b=C("djs-hit djs-hit-no-move"),x={all:v,"click-stroke":g,stroke:y,"no-move":b};function C(A,I){return I=V({stroke:"white",strokeWidth:15},I||{}),n.cls(A,["no-fill","no-border"],I)}function T(A,I){var D=x[I];if(!D)throw new Error("invalid hit type <"+I+">");return xe(A,D),A}function k(A,I){$e(A,I)}this.removeHits=function(A){var I=Ds(".djs-hit",A);F(I,Yt)},this.createDefaultHit=function(A,I){var D=A.waypoints,L=A.isFrame,z;return D?this.createWaypointsHit(I,D):(z=L?"stroke":"all",this.createBoxHit(I,z,{width:A.width,height:A.height}))},this.createWaypointsHit=function(A,I){var D=aa(I);return T(D,"stroke"),k(A,D),D},this.createBoxHit=function(A,I,D){D=V({x:0,y:0},D);var L=Te("rect");return T(L,I),xe(L,D),k(A,L),L},this.updateDefaultHit=function(A,I){var D=lt(".djs-hit",I);if(D)return A.waypoints?Ol(D,A.waypoints):xe(D,{width:A.width,height:A.height}),D},this.fire=r,this.triggerMouseEvent=l,this.mouseHandler=a,this.registerEvent=f,this.unregisterEvent=d}Oy.$inject=["eventBus","elementRegistry","styles"];const Ec={__init__:["interactionEvents"],interactionEvents:["type",Oy]};function Oo(e,t){this._eventBus=e,this._canvas=t,this._selectedElements=new Set;var n=this;e.on(["shape.remove","connection.remove"],function(i){var r=i.element;n.deselect(r)}),e.on(["diagram.clear","root.set"],function(i){n.select(null)})}Oo.$inject=["eventBus","canvas"],Oo.prototype.deselect=function(e){if(this._selectedElements.has(e)){var t=this.get();this._selectedElements.delete(e),this._eventBus.fire("selection.changed",{oldSelection:t,newSelection:this.get()})}},Oo.prototype.get=function(){return Array.from(this._selectedElements)},Oo.prototype.isSelected=function(e){return this._selectedElements.has(e)},Oo.prototype.select=function(e,t){var n=this.get();De(e)||(e=e?[e]:[]);var i=this._canvas,r=i.getRootElement();e=e.filter(function(o){var a=i.findRoot(o);return r===a}),t?F(e,o=>{this._selectedElements.add(o)}):this._selectedElements=new Set(e),this._eventBus.fire("selection.changed",{oldSelection:n,newSelection:this.get()})};var Dy="hover",Ly="selected";function Iy(e,t){this._canvas=e;function n(r,o){e.addMarker(r,o)}function i(r,o){e.removeMarker(r,o)}t.on("element.hover",function(r){n(r.element,Dy)}),t.on("element.out",function(r){i(r.element,Dy)}),t.on("selection.changed",function(r){function o(u){i(u,Ly)}function a(u){n(u,Ly)}var s=new Set(r.oldSelection),c=new Set(r.newSelection);for(let u of s)c.has(u)||o(u);for(let u of c)s.has(u)||a(u)})}Iy.$inject=["canvas","eventBus"];function By(e,t,n,i){e.on("create.end",500,function(r){var o=r.context,a=o.canExecute,s=o.elements,c=o.hints||{},u=c.autoSelect;if(a){if(u===!1)return;De(u)?t.select(u):t.select(s.filter(kA))}}),e.on("connect.end",500,function(r){var o=r.context,a=o.connection;a&&t.select(a)}),e.on("shape.move.end",500,function(r){var o=r.previousSelection||[],a=i.get(r.context.shape.id),s=mt(o,function(c){return a.id===c.id});s||t.select(a)}),e.on("element.click",function(r){if(pr(r)){var o=r.element;o===n.getRootElement()&&(o=null);var a=t.isSelected(o),s=t.get().length>1,c=gc(r);if(a&&s)return c?t.deselect(o):t.select(o);a?t.deselect(o):t.select(o,c)}})}By.$inject=["eventBus","selection","canvas","elementRegistry"];function kA(e){return!e.hidden}const ni={__init__:["selectionVisuals","selectionBehavior"],__depends__:[Ec],selection:["type",Oo],selectionVisuals:["type",Iy],selectionBehavior:["type",By]};var OA=/^djs-cursor-.*$/;function Sc(e){var t=wt(document.body);t.removeMatching(OA),e&&t.add("djs-cursor-"+e)}function Ny(){Sc(null)}var DA=5e3;function $y(e,t){t=t||"element.click";function n(){return!1}return e.once(t,DA,n),function(){e.off(t,n)}}var LA=["c","C"],IA=["v","V"],BA=["d","D"],NA=["x","X"],$A=["y","Y"],Fy=["z","Z"];function FA(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function In(e){return e.altKey?!1:e.ctrlKey||e.metaKey}function qt(e,t){return e=De(e)?e:[e],e.indexOf(t.key)!==-1||e.indexOf(t.code)!==-1}function Yp(e){return e.shiftKey}function jA(e){return In(e)&&qt(LA,e)}function HA(e){return In(e)&&qt(IA,e)}function zA(e){return In(e)&&qt(BA,e)}function GA(e){return In(e)&&qt(NA,e)}function VA(e){return In(e)&&!Yp(e)&&qt(Fy,e)}function WA(e){return In(e)&&(qt($A,e)||qt(Fy,e)&&Yp(e))}var Do=Math.round,jy="djs-drag-active";function Gr(e){e.preventDefault()}function UA(e){return typeof TouchEvent<"u"&&e instanceof TouchEvent}function YA(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function Hy(e,t,n,i){var r={threshold:5,trapClick:!0},o;function a(b){var x=t.viewbox(),C=t._container.getBoundingClientRect();return{x:x.x+(b.x-C.left)/x.scale,y:x.y+(b.y-C.top)/x.scale}}function s(b,x){x=x||o;var C=e.createEvent(V({},x.payload,x.data,{isTouch:x.isTouch}));return e.fire("drag."+b,C)===!1?!1:e.fire(x.prefix+"."+b,C)}function c(b){var x=b.filter(function(C){return i.get(C.id)});x.length&&n.select(x)}function u(b,x){var C=o.payload,T=o.displacement,k=o.globalStart,A=Hr(b),I=pi(A,k),D=o.localStart,L=a(A),z=pi(L,D);if(!o.active&&(x||YA(I)>o.threshold)){if(V(C,{x:Do(D.x+T.x),y:Do(D.y+T.y),dx:0,dy:0},{originalEvent:b}),s("start")===!1)return y();o.active=!0,o.keepSelection||(C.previousSelection=n.get(),n.select(null)),o.cursor&&Sc(o.cursor),t.addMarker(t.getRootElement(),jy)}Cp(b),o.active&&(V(C,{x:Do(L.x+T.x),y:Do(L.y+T.y),dx:Do(z.x),dy:Do(z.y)},{originalEvent:b}),s("move"))}function l(b){var x,C=!0;o.active&&(b&&(o.payload.originalEvent=b,Cp(b)),C=s("end")),C===!1&&s("rejected"),x=g(C!==!0),s("ended",x)}function p(b){qt("Escape",b)&&(Gr(b),y())}function f(b){var x;o.active&&(x=$y(e),setTimeout(x,400),Gr(b)),l(b)}function d(b){u(b)}function m(b){var x=o.payload;x.hoverGfx=b.gfx,x.hover=b.element,s("hover")}function h(b){s("out");var x=o.payload;x.hoverGfx=null,x.hover=null}function y(b){var x;if(o){var C=o.active;C&&s("cancel"),x=g(b),C&&s("canceled",x)}}function g(b){var x,C;s("cleanup"),Ny(),o.trapClick?C=f:C=l,Ne.unbind(document,"mousemove",u),Ne.unbind(document,"dragstart",Gr),Ne.unbind(document,"selectstart",Gr),Ne.unbind(document,"mousedown",C,!0),Ne.unbind(document,"mouseup",C,!0),Ne.unbind(document,"keyup",p),Ne.unbind(document,"touchstart",d,!0),Ne.unbind(document,"touchcancel",y,!0),Ne.unbind(document,"touchmove",u,!0),Ne.unbind(document,"touchend",l,!0),e.off("element.hover",m),e.off("element.out",h),t.removeMarker(t.getRootElement(),jy);var T=o.payload.previousSelection;return b!==!1&&T&&!n.get().length&&c(T),x=o,o=null,x}function v(b,x,C,T){o&&y(!1),typeof x=="string"&&(T=C,C=x,x=null),T=V({},r,T||{});var k=T.data||{},A,I,D,L,z;if(T.trapClick?L=f:L=l,b?(A=Mo(b)||b,I=Hr(b),Cp(b),A.type==="dragstart"&&Gr(A)):(A=null,I={x:0,y:0}),D=a(I),x||(x=D),z=UA(A),o=V({prefix:C,data:k,payload:{},globalStart:I,displacement:pi(x,D),localStart:D,isTouch:z},T),T.manual||(z?(Ne.bind(document,"touchstart",d,!0),Ne.bind(document,"touchcancel",y,!0),Ne.bind(document,"touchmove",u,!0),Ne.bind(document,"touchend",l,!0)):(Ne.bind(document,"mousemove",u),Ne.bind(document,"dragstart",Gr),Ne.bind(document,"selectstart",Gr),Ne.bind(document,"mousedown",L,!0),Ne.bind(document,"mouseup",L,!0)),Ne.bind(document,"keyup",p),e.on("element.hover",m),e.on("element.out",h)),s("init")===!1)return y(),!1;T.autoActivate&&u(b,!0)}e.on("diagram.destroy",y),this.init=v,this.move=u,this.hover=m,this.out=h,this.end=l,this.cancel=y,this.context=function(){return o},this.setOptions=function(b){V(r,b)}}Hy.$inject=["eventBus","canvas","selection","elementRegistry"];const Hi={__depends__:[TA,ni],dragging:["type",Hy]};function Lo(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(Math.random()*1e9)+"-"}Lo.prototype.next=function(){return this._prefix+ ++this._counter};const qA=new Lo("ps");var KA=["marker-start","marker-mid","marker-end"],XA=["circle","ellipse","line","path","polygon","polyline","path","rect"];function fr(e,t,n,i){this._elementRegistry=e,this._canvas=n,this._styles=i}fr.$inject=["elementRegistry","eventBus","canvas","styles"],fr.prototype.cleanUp=function(){console.warn("PreviewSupport#cleanUp is deprecated and will be removed in future versions. You do not need to manually clean up previews anymore. cf. https://github.com/bpmn-io/diagram-js/pull/906")},fr.prototype.getGfx=function(e){return this._elementRegistry.getGraphics(e)},fr.prototype.addDragger=function(e,t,n,i="djs-dragger"){n=n||this.getGfx(e);var r=em(n);return this._cloneMarkers($r(r),i),xe(r,this._styles.cls(i,[])),$e(t,r),xe(r,"data-preview-support-element-id",e.id),r},fr.prototype.addFrame=function(e,t){var n=Te("rect",{class:"djs-resize-overlay",width:e.width,height:e.height,x:e.x,y:e.y});return $e(t,n),xe(n,"data-preview-support-element-id",e.id),n},fr.prototype._cloneMarkers=function(e,t="djs-dragger",n=e){var i=this;e.childNodes&&e.childNodes.forEach(r=>{i._cloneMarkers(r,t,n)}),eT(e)&&KA.forEach(function(r){if(xe(e,r)){var o=ZA(e,r,i._canvas.getContainer());o&&i._cloneMarker(n,e,o,r,t)}})},fr.prototype._cloneMarker=function(e,t,n,i,r="djs-dragger"){var o=[n.id,r,qA.next()].join("-"),a=lt("marker#"+n.id,e);e=e||this._canvas._svg;var s=a||em(n);s.id=o,Qe(s).add(r);var c=lt(":scope > defs",e);c||(c=Te("defs"),$e(e,c)),$e(c,s);var u=JA(s.id);xe(t,i,u)};function ZA(e,t,n){var i=QA(xe(e,t));return lt("marker#"+i,n||document)}function QA(e){return e.match(/url\(['"]?#([^'"]*)['"]?\)/)[1]}function JA(e){return"url(#"+e+")"}function eT(e){return XA.indexOf(e.nodeName)!==-1}const Io={__init__:["previewSupport"],previewSupport:["type",fr]};var tT="drop-ok",zy="drop-not-ok",Gy="attach-ok",Vy="new-parent",Wy="create",nT=2e3;function Uy(e,t,n,i,r){function o(c,u,l,p,f){if(!u)return!1;c=Ye(c,function(v){var b=v.labelTarget;return!v.parent&&!(Ge(v)&&c.indexOf(b)!==-1)});var d=mt(c,function(v){return!ft(v)}),m=!1,h=!1,y=!1;qy(c)&&(m=r.allowed("shape.attach",{position:l,shape:d,target:u})),m||(qy(c)?y=r.allowed("shape.create",{position:l,shape:d,source:p,target:u}):y=r.allowed("elements.create",{elements:c,position:l,target:u}));var g=f.connectionTarget;return y||m?(d&&p&&(h=r.allowed("connection.create",{source:g===p?d:p,target:g===p?p:d,hints:{targetParent:u,targetAttach:m}})),{attach:m,connect:h}):y===null||m===null?null:!1}function a(c,u){[Gy,tT,zy,Vy].forEach(function(l){l===u?e.addMarker(c,l):e.removeMarker(c,l)})}n.on(["create.move","create.hover"],function(c){var u=c.context,l=u.elements,p=c.hover,f=u.source,d=u.hints||{};if(!p){u.canExecute=!1,u.target=null;return}Yy(c);var m={x:c.x,y:c.y},h=u.canExecute=p&&o(l,p,m,f,d);p&&h!==null&&(u.target=p,h&&h.attach?a(p,Gy):a(p,h?Vy:zy))}),n.on(["create.end","create.out","create.cleanup"],function(c){var u=c.hover;u&&a(u,null)}),n.on("create.end",function(c){var u=c.context,l=u.source,p=u.shape,f=u.elements,d=u.target,m=u.canExecute,h=m&&m.attach,y=m&&m.connect,g=u.hints||{};if(m===!1||!d)return!1;Yy(c);var v={x:c.x,y:c.y};y?p=i.appendShape(l,p,v,d,{attach:h,connection:y===!0?{}:y,connectionTarget:g.connectionTarget}):(f=i.createElements(f,v,d,V({},g,{attach:h})),p=mt(f,function(b){return!ft(b)})),V(u,{elements:f,shape:p}),V(c,{elements:f,shape:p})});function s(){var c=t.context();c&&c.prefix===Wy&&t.cancel()}n.on("create.init",function(){n.on("elements.changed",s),n.once(["create.cancel","create.end"],nT,function(){n.off("elements.changed",s)})}),this.start=function(c,u,l){De(u)||(u=[u]);var p=mt(u,function(m){return!ft(m)});if(p){l=V({elements:u,hints:{},shape:p},l||{}),F(u,function(m){Be(m.x)||(m.x=0),Be(m.y)||(m.y=0)});var f=Ye(u,function(m){return!m.hidden}),d=Bt(f);F(u,function(m){ft(m)&&(m.waypoints=fn(m.waypoints,function(h){return{x:h.x-d.x-d.width/2,y:h.y-d.y-d.height/2}})),V(m,{x:m.x-d.x-d.width/2,y:m.y-d.y-d.height/2})}),t.init(c,Wy,{cursor:"grabbing",autoActivate:!0,data:{shape:p,elements:u,context:l}})}}}Uy.$inject=["canvas","dragging","eventBus","modeling","rules"];function Yy(e){var t=e.context,n=t.createConstraints;n&&(n.left&&(e.x=Math.max(e.x,n.left)),n.right&&(e.x=Math.min(e.x,n.right)),n.top&&(e.y=Math.max(e.y,n.top)),n.bottom&&(e.y=Math.min(e.y,n.bottom)))}function qy(e){return e&&e.length===1&&!ft(e[0])}var iT=750;function Ky(e,t,n,i,r){function o(a){var s=Te("g");xe(s,r.cls("djs-drag-group",["no-events"]));var c=Te("g");return a.forEach(function(u){var l;u.hidden||(u.waypoints?(l=n._createContainer("connection",c),n.drawConnection($r(l),u)):(l=n._createContainer("shape",c),n.drawShape($r(l),u),cn(l,u.x,u.y)),i.addDragger(u,s,l))}),s}t.on("create.move",iT,function(a){var s=a.hover,c=a.context,u=c.elements,l=c.dragGroup;l||(l=c.dragGroup=o(u));var p;s?(l.parentNode||(p=e.getActiveLayer(),$e(p,l)),cn(l,a.x,a.y)):Yt(l)}),t.on("create.cleanup",function(a){var s=a.context,c=s.dragGroup;c&&Yt(c)})}Ky.$inject=["canvas","eventBus","graphicsFactory","previewSupport","styles"];const Rc={__depends__:[Hi,Io,Si,ni],__init__:["create","createPreview"],create:["type",Uy],createPreview:["type",Ky]};function qp(e){var t=this;this._lastMoveEvent=null;function n(i){t._lastMoveEvent=i}e.on("canvas.init",function(i){var r=t._svg=i.svg;r.addEventListener("mousemove",n)}),e.on("canvas.destroy",function(){t._lastMouseEvent=null,t._svg.removeEventListener("mousemove",n)})}qp.$inject=["eventBus"],qp.prototype.getLastMoveEvent=function(){return this._lastMoveEvent||rT(0,0)};function rT(e,t){var n=document.createEvent("MouseEvent"),i=e,r=t,o=e,a=t;return n.initMouseEvent&&n.initMouseEvent("mousemove",!0,!0,window,0,i,r,o,a,!1,!1,!1,!1,0,null),n}const Ca={__init__:["mouse"],mouse:["type",qp]};var Xy=2e3;function Bn(e,t,n,i,r,o,a,s){this._canvas=e,this._create=t,this._elementFactory=i,this._eventBus=r,this._modeling=o,this._mouse=a,this._rules=s,r.on("copyPaste.copyElement",function(c){var u=c.descriptor,l=c.element,p=c.elementsSet;u.priority=1,u.id=l.id,p.has(l.parent)&&(u.parent=l.parent.id),oT(l)&&(u.priority=2,u.host=l.host.id),ft(l)&&(u.priority=3,u.source=l.source.id,u.target=l.target.id,u.waypoints=aT(l)),Ge(l)&&(u.priority=4,u.labelTarget=l.labelTarget.id),F(["x","y","width","height"],function(f){Be(l[f])&&(u[f]=l[f])}),u.hidden=l.hidden,u.collapsed=l.collapsed}),r.on("copyPaste.elementsCopied",Xy,function(c){var u;((u=c.hints)==null?void 0:u.clip)!==!1&&n.set(c.tree)}),r.on("copyPaste.pasteElements",Xy,function(c){c.tree||(c.tree=n.get())}),r.on("copyPaste.pasteElements",function(c){var u=c.hints;V(u,{createElementsBehavior:!1})})}Bn.$inject=["canvas","create","clipboard","elementFactory","eventBus","modeling","mouse","rules"],Bn.prototype.copy=function(e,t={}){var n,i;return De(e)||(e=e?[e]:[]),n=this._eventBus.fire("copyPaste.canCopyElements",{elements:e}),n===!1?i={}:i=this.createTree(De(n)?n:e),this._eventBus.fire("copyPaste.elementsCopied",{elements:e,tree:i,hints:t}),i},Bn.prototype.paste=function(e={}){var t=this._eventBus.createEvent({type:"copyPaste.pasteElements",hints:{},...e}),n=this._eventBus.fire(t);if(n!==!1){var i=t.tree;if(i){var r=t.hints,o=this._createElements(i);if(t.element&&t.point)return this._paste(o,t.element,t.point,r);this._create.start(this._mouse.getLastMoveEvent(),o,{hints:r})}}},Bn.prototype.duplicate=function(e,t={}){var n=this.copy(e,{clip:!1});return this.paste({...t,tree:n})},Bn.prototype.cut=function(e){var t=this.copy(e),n=this._getElementIdsFromTree(t),i=e.filter(function(r){return n[r.id]});return i.length>0&&this._modeling.removeElements(i),t},Bn.prototype._getElementIdsFromTree=function(e){var t={};return F(e,function(n){F(n,function(i){i.id&&(t[i.id]=!0)})}),t},Bn.prototype._paste=function(e,t,n,i){F(e,function(o){Be(o.x)||(o.x=0),Be(o.y)||(o.y=0)});var r=Bt(e);return F(e,function(o){ft(o)&&(o.waypoints=fn(o.waypoints,function(a){return{x:a.x-r.x-r.width/2,y:a.y-r.y-r.height/2}})),V(o,{x:o.x-r.x-r.width/2,y:o.y-r.y-r.height/2})}),this._modeling.createElements(e,n,t,V({},i))},Bn.prototype._createElements=function(e){var t=this,n=this._eventBus,i={},r=[];return F(e,function(o,a){o=di(o,"priority"),F(o,function(s){var c=V({},hi(s,["priority"]));i[s.parent]?c.parent=i[s.parent]:delete c.parent,n.fire("copyPaste.pasteElement",{cache:i,descriptor:c});var u;if(ft(c)){c.source=i[s.source],c.target=i[s.target],u=i[s.id]=t.createConnection(c),r.push(u);return}if(Ge(c)){c.labelTarget=i[c.labelTarget],u=i[s.id]=t.createLabel(c),r.push(u);return}c.host&&(c.host=i[c.host]),u=i[s.id]=t.createShape(c),r.push(u)})}),r},Bn.prototype.createConnection=function(e){var t=this._elementFactory.createConnection(hi(e,["id"]));return t},Bn.prototype.createLabel=function(e){var t=this._elementFactory.createLabel(hi(e,["id"]));return t},Bn.prototype.createShape=function(e){var t=this._elementFactory.createShape(hi(e,["id"]));return t},Bn.prototype.hasRelations=function(e,t,n){return n||(n=new Set(t)),!(ft(e)&&(!n.has(e.source)||!n.has(e.target))||Ge(e)&&!n.has(e.labelTarget))},Bn.prototype.createTree=function(e){var t=this._rules,n=this,i={},r=[],o=new Map,a=Ns(e);function s(p,f){return t.allowed("element.copy",{element:p,elements:f})}function c(p,f){var d=o.get(p);if(!d){var m={element:p,depth:f};r.push(m),o.set(p,m);return}if(d.depth<f){r=u(d,r);var h={element:d.element,depth:f};r.push(h),o.set(p,h)}}function u(p,f){var d=f.indexOf(p);return d!==-1&&f.splice(d,1),f}Nr(a,function(p,f,d){if(Ge(p))return;F(p.labels,function(y){c(y,d)});function m(y){y&&y.length&&F(y,function(g){F(g.labels,function(v){c(v,d)}),c(g,d)})}F([p.attachers,p.incoming,p.outgoing],m),c(p,d);var h=[];return p.children&&(h=p.children.slice()),n._eventBus.fire("copyPaste.createTree",{element:p,children:h}),h}),e=fn(r,function(p){return p.element});var l=new Set(e);return r=fn(r,function(p){return p.descriptor={},n._eventBus.fire("copyPaste.copyElement",{descriptor:p.descriptor,element:p.element,elements:e,elementsSet:l}),p}),r=di(r,function(p){return p.descriptor.priority}),e=fn(r,function(p){return p.element}),F(r,function(p){var f=p.depth;if(!n.hasRelations(p.element,e,l)){Qy(p.element,e),l.delete(p.element);return}if(!s(p.element,e)){Qy(p.element,e),l.delete(p.element);return}i[f]||(i[f]=[]),i[f].push(p.descriptor)}),i};function oT(e){return!!e.host}function aT(e){return fn(e.waypoints,function(t){return t=Zy(t),t.original&&(t.original=Zy(t.original)),t})}function Zy(e){return V({},e)}function Qy(e,t){var n=t.indexOf(e);return n===-1?t:t.splice(n,1)}const sT={__depends__:[PA,Rc,Ca,Si],__init__:["copyPaste"],copyPaste:["type",Bn]};function Kp(e,t,n){De(n)||(n=[n]),F(n,function(i){Mr(e[i])||(t[i]=e[i])})}var Xp=750;function Jy(e,t,n){function i(c,u){var l=e.create(c.$type);return n.copyElement(c,l,null,u)}t.on("copyPaste.copyElement",Xp,function(c){var u=c.descriptor,l=c.element,p=te(l);if(Ge(l))return u;var f=u.businessObject=i(p,!0),d=u.di=i(et(l),!0);d.bpmnElement=f,Kp(f,u,"name"),Kp(d,u,"isExpanded"),p.default&&(u.default=p.default.id)});var r="-bpmn-js-refs";function o(c){return c[r]=c[r]||{}}function a(c,u){c[r]=u}function s(c,u,l){var p=te(c);return c.default&&(l[c.default]={element:p,property:"default"}),c.host&&(te(c).attachedToRef=te(u[c.host])),hi(l,Mn(l,function(f,d,m){var h=d.element,y=d.property;return m===c.id&&(h.set(y,p),f.push(c.id)),f},[]))}t.on("copyPaste.pasteElement",function(c){var u=c.cache,l=c.descriptor,p=l.businessObject,f=l.di;if(Ge(l)){l.businessObject=te(u[l.labelTarget]),l.di=et(u[l.labelTarget]);return}p=l.businessObject=i(p),f=l.di=i(f),f.bpmnElement=p,Kp(l,p,["isExpanded","name"]),l.type=p.$type}),t.on("copyPaste.copyElement",Xp,function(c){var u=c.descriptor,l=c.element;if(S(l,"bpmn:Participant")){var p=te(l);p.processRef&&(u.processRef=i(p.processRef,!0))}}),t.on("copyPaste.pasteElement",function(c){var u=c.descriptor,l=u.processRef;l&&(u.processRef=i(l))}),t.on("copyPaste.createTree",function(c){var u=c.element,l=c.children;S(u,"bpmn:SubProcess")&&F(da(l),p=>{l.push(p.annotation)})}),t.on("copyPaste.pasteElement",Xp,function(c){var u=c.cache,l=c.descriptor;a(u,s(l,u,o(u)))})}Jy.$inject=["bpmnFactory","eventBus","moddleCopy"];const cT=["artifacts","dataInputAssociations","dataOutputAssociations","default","flowElements","lanes","incoming","outgoing","categoryValue"],uT=["errorRef","escalationRef","messageRef","signalRef","dataObjectRef"];function Pa(e,t,n){this._bpmnFactory=t,this._eventBus=e,this._moddle=n,e.on("moddleCopy.canCopyProperties",i=>{const{propertyNames:r}=i;if(!(!r||!r.length))return di(r,o=>o==="extensionElements")}),e.on("moddleCopy.canCopyProperty",i=>{const{parent:r,property:o,propertyName:a}=i,s=Xt(r)&&r.$descriptor;if(a&&uT.includes(a))return o;if(a&&cT.includes(a)||a&&s&&!mt(s.properties,ao({name:a})))return!1}),e.on("moddleCopy.canSetCopiedProperty",i=>{const{property:r}=i;if(S(r,"bpmn:ExtensionElements")&&(!r.values||!r.values.length))return!1})}Pa.$inject=["eventBus","bpmnFactory","moddle"],Pa.prototype.copyElement=function(e,t,n,i=!1){n&&!De(n)&&(n=[n]),n=n||Zp(e.$descriptor);const r=this._eventBus.fire("moddleCopy.canCopyProperties",{propertyNames:n,sourceElement:e,targetElement:t,clone:i});return r===!1||(De(r)&&(n=r),F(n,o=>{let a;Tn(e,o)&&(a=e.get(o));const s=this.copyProperty(a,t,o,i);!Wt(s)||this._eventBus.fire("moddleCopy.canSetCopiedProperty",{parent:t,property:s,propertyName:o})===!1||t.set(o,s)})),t},Pa.prototype.copyProperty=function(e,t,n,i=!1){let r=this._eventBus.fire("moddleCopy.canCopyProperty",{parent:t,property:e,propertyName:n,clone:i});if(r===!1)return;if(r)return Xt(r)&&r.$type&&!r.$parent&&(r.$parent=t),r;const o=this._moddle.getPropertyDescriptor(t,n);if(!o.isReference)return o.isId?e&&this._copyId(e,t,i):De(e)?Mn(e,(a,s)=>{const c=this.copyProperty(s,t,n,i);return c?a.concat(c):a},[]):Xt(e)&&e.$type?this._moddle.getElementDescriptor(e).isGeneric?void 0:(r=this._bpmnFactory.create(e.$type),r.$parent=t,r=this.copyElement(e,r,null,i),r):e},Pa.prototype._copyId=function(e,t,n=!1){if(n)return e;if(!this._moddle.ids.assigned(e))return this._moddle.ids.claim(e,t),e};function Zp(e,t){return Mn(e.properties,(n,i)=>t&&i.default?n:n.concat(i.name),[])}const ev={__depends__:[sT],__init__:["bpmnCopyPaste","moddleCopy"],bpmnCopyPaste:["type",Jy],moddleCopy:["type",Pa]};var tv=Math.round;function Qp(e,t){this._modeling=e,this._eventBus=t}Qp.$inject=["modeling","eventBus"],Qp.prototype.replaceElement=function(e,t,n){if(e.waypoints)return null;var i=this._modeling,r=this._eventBus;r.fire("replace.start",{element:e,attrs:t,hints:n});var o=t.width||e.width,a=t.height||e.height,s=t.x||e.x,c=t.y||e.y,u=tv(s+o/2),l=tv(c+a/2),p=i.replaceShape(e,V({},t,{x:u,y:l,width:o,height:a}),n);return r.fire("replace.end",{element:e,newElement:p,hints:n}),p};function nv(e,t){t.on("replace.end",500,function(n){const{newElement:i,hints:r={}}=n;r.select!==!1&&e.select(i)})}nv.$inject=["selection","eventBus"];const lT={__init__:["replace","replaceSelectionBehavior"],replaceSelectionBehavior:["type",nv],replace:["type",Qp]};function pT(e,t,n){De(n)||(n=[n]),F(n,function(i){Mr(e[i])||(t[i]=e[i])})}var fT=["cancelActivity","instantiate","eventGatewayType","triggeredByEvent","isInterrupting"];function dT(e,t){var n=e&&Tn(e,"collapsed")?e.collapsed:!Xe(e),i;return t&&(Tn(t,"collapsed")||Tn(t,"isExpanded"))?i=Tn(t,"collapsed")?t.collapsed:!t.isExpanded:i=n,n!==i}function iv(e,t,n,i,r,o){function a(s,c,u){u=u||{};var l=c.type,p=s.businessObject;if(Cc(p)&&(l==="bpmn:SubProcess"||l==="bpmn:AdHocSubProcess")&&dT(s,c))return i.toggleCollapse(s),s;var f=e.create(l),d={type:l,businessObject:f};d.di={},l==="bpmn:ExclusiveGateway"&&(d.di.isMarkerVisible=!0),pT(s.di,d.di,["fill","stroke","background-color","border-color","color"]);var m=Zp(p.$descriptor),h=Zp(f.$descriptor,!0),y=hT(m,h);V(f,ui(c,fT));var g=Ye(y,function(x){return x==="eventDefinitions"?rv(s,c.eventDefinitionType):x==="loopCharacteristics"?!yn(f):Tn(f,x)||x==="processRef"&&c.isExpanded===!1||x==="triggeredByEvent"?!1:x==="isForCompensation"?!yn(f):!0});if(f=n.copyElement(p,f,g),c.eventDefinitionType&&(rv(f,c.eventDefinitionType)||(d.eventDefinitionType=c.eventDefinitionType,d.eventDefinitionAttrs=c.eventDefinitionAttrs)),S(p,"bpmn:Activity")){if(Cc(p))d.isExpanded=Xe(s);else if(c&&Tn(c,"isExpanded")){d.isExpanded=c.isExpanded;var v=t.getDefaultSize(f,{isExpanded:d.isExpanded});d.width=v.width,d.height=v.height,d.x=s.x-(d.width-s.width)/2,d.y=s.y-(d.height-s.height)/2}Xe(s)&&!S(p,"bpmn:Task")&&d.isExpanded&&(d.width=s.width,d.height=s.height)}if(Cc(p)&&!Cc(f)&&(u.moveChildren=!1),S(p,"bpmn:Participant")){c.isExpanded===!0?f.processRef=e.create("bpmn:Process"):u.moveChildren=!1;var b=Jt(s);et(s).isHorizontal||(et(d).isHorizontal=b),d.width=b?s.width:t.getDefaultSize(d).width,d.height=b?t.getDefaultSize(d).height:s.height}return o.allowed("shape.resize",{shape:f})||(d.height=t.getDefaultSize(d).height,d.width=t.getDefaultSize(d).width),f.name=p.name,We(p,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&We(f,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&(f.default=p.default),c.host&&!S(p,"bpmn:BoundaryEvent")&&S(f,"bpmn:BoundaryEvent")&&(d.host=c.host),(d.type==="bpmn:DataStoreReference"||d.type==="bpmn:DataObjectReference")&&(d.x=s.x+(s.width-d.width)/2),r.replaceElement(s,d,{...u,targetElement:c})}this.replaceElement=a}iv.$inject=["bpmnFactory","elementFactory","moddleCopy","modeling","replace","rules"];function Cc(e){return S(e,"bpmn:SubProcess")}function rv(e,t){var n=te(e);return t&&n.get("eventDefinitions").some(function(i){return S(i,t)})}function hT(e,t){return e.filter(function(n){return t.includes(n)})}const ov={__depends__:[ev,lT,ni],bpmnReplace:["type",iv]};var mT=250;function Vr(e){this._eventBus=e,this._tools=[],this._active=null}Vr.$inject=["eventBus"],Vr.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)},Vr.prototype.isActive=function(e){return e&&this._active===e},Vr.prototype.length=function(e){return this._tools.length},Vr.prototype.setActive=function(e){var t=this._eventBus;this._active!==e&&(this._active=e,t.fire("tool-manager.update",{tool:e}))},Vr.prototype.bindEvents=function(e,t){var n=this._eventBus,i=[];n.on(t.tool+".init",function(r){var o=r.context;if(!o.reactivate&&this.isActive(e)){this.setActive(null);return}this.setActive(e)},this),F(t,function(r){i.push(r+".ended"),i.push(r+".canceled")}),n.on(i,mT,function(r){this._active&&(gT(r)||this.setActive(null))},this)};function gT(e){var t=e.originalEvent&&e.originalEvent.target;return t&&Ir(t,'.group[data-group="tools"]')}const Pc={__depends__:[Hi],__init__:["toolManager"],toolManager:["type",Vr]};function yT(e,t){if(e==="x"){if(t>0)return"e";if(t<0)return"w"}if(e==="y"){if(t>0)return"s";if(t<0)return"n"}return null}function vT(e,t){var n=[],i=new Set(e);F(t,function(o){i.add(o)});var r=new Set;return i.forEach(function(o){var a=o.incoming,s=o.outgoing;F(a.concat(s),function(c){var u=c.source,l=c.target;(i.has(u)||i.has(l))&&(r.has(c)||(r.add(c),n.push(c)))})}),n}function bT(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)}}var Jp=Math.abs,xT=Math.round,zi={x:"width",y:"height"},av="crosshair",dr={n:"top",w:"left",s:"bottom",e:"right"},_T=1500,Ac={n:"s",w:"e",s:"n",e:"w"},Tc=20;function ii(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(c){n.once("spaceTool.selection.ended",function(){s.activateMakeSpace(c.originalEvent)})}),n.on("spaceTool.move",_T,function(c){var u=c.context,l=u.initialized;l||(l=u.initialized=s.init(c,u)),l&&cv(c)}),n.on("spaceTool.end",function(c){var u=c.context,l=u.axis,p=u.direction,f=u.movingShapes,d=u.resizingShapes,m=u.start;if(u.initialized){cv(c);var h={x:0,y:0};h[l]=xT(c["d"+l]),s.makeSpace(f,d,h,p,m),n.once("spaceTool.ended",function(y){s.activateSelection(y.originalEvent,!0,!0)})}})}ii.$inject=["canvas","dragging","eventBus","modeling","rules","toolManager","mouse"],ii.prototype.activateSelection=function(e,t,n){this._dragging.init(e,"spaceTool.selection",{autoActivate:t,cursor:av,data:{context:{reactivate:n}},trapClick:!1})},ii.prototype.activateMakeSpace=function(e){this._dragging.init(e,"spaceTool",{autoActivate:!0,cursor:av,data:{context:{}}})},ii.prototype.makeSpace=function(e,t,n,i,r){return this._modeling.createSpace(e,t,n,i,r)},ii.prototype.init=function(e,t){var n=Jp(e.dx)>Jp(e.dy)?"x":"y",i=e["d"+n],r=e[n]-i;if(Jp(i)<5)return!1;i<0&&(i*=-1),Ea(e)&&(i*=-1);var o=yT(n,i),a=this._canvas.getRootElement();!gc(e)&&e.hover&&(a=e.hover);var s=[...sa(a),...a.attachers||[]],c=this.calculateAdjustments(s,n,i,r),u=this._eventBus.fire("spaceTool.getMinDimensions",{axis:n,direction:o,shapes:c.resizingShapes,start:r}),l=wT(c,n,o,r,u);return V(t,c,{axis:n,direction:o,spaceToolConstraints:l,start:r}),Sc("resize-"+(n==="x"?"ew":"ns")),!0},ii.prototype.calculateAdjustments=function(e,t,n,i){var r=this._rules,o=[],a=[],s=new Set,c=new Set,u=[],l=[];function p(d){s.has(d)||(s.add(d),o.push(d));var m=d.label;m&&!s.has(m)&&(s.add(m),o.push(m))}function f(d){c.has(d)||(c.add(d),a.push(d))}return F(e,function(d){if(!(!d.parent||Ge(d))){if(ft(d)){l.push(d);return}var m=d[t],h=m+d[zi[t]];if(ET(d)&&(n>0&&Le(d)[t]>i||n<0&&Le(d)[t]<i)){u.push(d);return}if(n>0&&m>i||n<0&&h<i){p(d);return}if(m<i&&h>i&&r.allowed("shape.resize",{shape:d})){f(d);return}}}),F(o,function(d){var m=d.attachers;m&&F(m,function(h){p(h)})}),F(u,function(d){var m=d.host;(s.has(m)||c.has(m))&&p(d)}),F(l,function(d){var m=d.source,h=d.target,y=d.label;(s.has(m)||c.has(m))&&(s.has(h)||c.has(h))&&y&&p(y)}),{movingShapes:o,resizingShapes:a}},ii.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},ii.prototype.isActive=function(){var e=this._dragging.context();return e?/^spaceTool/.test(e.prefix):!1};function sv(e){return{top:e.top-Tc,right:e.right+Tc,bottom:e.bottom+Tc,left:e.left-Tc}}function cv(e){var t=e.context,n=t.spaceToolConstraints;if(n){var i,r;Be(n.left)&&(i=Math.max(e.x,n.left),e.dx=e.dx+i-e.x,e.x=i),Be(n.right)&&(i=Math.min(e.x,n.right),e.dx=e.dx+i-e.x,e.x=i),Be(n.top)&&(r=Math.max(e.y,n.top),e.dy=e.dy+r-e.y,e.y=r),Be(n.bottom)&&(r=Math.min(e.y,n.bottom),e.dy=e.dy+r-e.y,e.y=r)}}function wT(e,t,n,i,r){var o=e.movingShapes,a=e.resizingShapes;if(a.length){var s={},c,u,l=new Set(o),p=new Set(a);return F(a,function(f){var d=f.attachers,m=f.children,h=ke(f),y=Ye(m,function(z){return!ft(z)&&!Ge(z)&&!l.has(z)&&!p.has(z)}),g=Ye(m,function(z){return!ft(z)&&!Ge(z)&&l.has(z)}),v,b,x,C=[],T=[],k,A,I,D;y.length&&(b=sv(ke(Bt(y))),v=i-h[dr[n]]+b[dr[n]],n==="n"?s.bottom=u=Be(u)?Math.min(u,v):v:n==="w"?s.right=u=Be(u)?Math.min(u,v):v:n==="s"?s.top=c=Be(c)?Math.max(c,v):v:n==="e"&&(s.left=c=Be(c)?Math.max(c,v):v)),g.length&&(x=sv(ke(Bt(g))),v=i-x[dr[Ac[n]]]+h[dr[Ac[n]]],n==="n"?s.bottom=u=Be(u)?Math.min(u,v):v:n==="w"?s.right=u=Be(u)?Math.min(u,v):v:n==="s"?s.top=c=Be(c)?Math.max(c,v):v:n==="e"&&(s.left=c=Be(c)?Math.max(c,v):v)),d&&d.length&&(d.forEach(function(z){l.has(z)?C.push(z):T.push(z)}),C.length&&(k=ke(Bt(C.map(Le))),A=h[dr[Ac[n]]]-(k[dr[Ac[n]]]-i)),T.length&&(I=ke(Bt(T.map(Le))),D=I[dr[n]]-(h[dr[n]]-i)),n==="n"?(v=Math.min(A||1/0,D||1/0),s.bottom=u=Be(u)?Math.min(u,v):v):n==="w"?(v=Math.min(A||1/0,D||1/0),s.right=u=Be(u)?Math.min(u,v):v):n==="s"?(v=Math.max(A||-1/0,D||-1/0),s.top=c=Be(c)?Math.max(c,v):v):n==="e"&&(v=Math.max(A||-1/0,D||-1/0),s.left=c=Be(c)?Math.max(c,v):v));var L=r&&r[f.id];L&&(n==="n"?(v=i+f[zi[t]]-L[zi[t]],s.bottom=u=Be(u)?Math.min(u,v):v):n==="w"?(v=i+f[zi[t]]-L[zi[t]],s.right=u=Be(u)?Math.min(u,v):v):n==="s"?(v=i-f[zi[t]]+L[zi[t]],s.top=c=Be(c)?Math.max(c,v):v):n==="e"&&(v=i-f[zi[t]]+L[zi[t]],s.left=c=Be(c)?Math.max(c,v):v))}),s}}function ET(e){return!!e.host}var ef="djs-dragging",uv="djs-resizing",ST=250,Mc=Math.max;function lv(e,t,n,i,r){function o(a,s){F(a,function(c){r.addDragger(c,s),n.addMarker(c,ef)})}e.on("spaceTool.selection.start",function(a){var s=n.getLayer("space"),c=a.context,u={x:"M 0,-10000 L 0,10000",y:"M -10000,0 L 10000,0"},l=Te("g");xe(l,i.cls("djs-crosshair-group",["no-events"])),$e(s,l);var p=Te("path");xe(p,"d",u.x),Qe(p).add("djs-crosshair"),$e(l,p);var f=Te("path");xe(f,"d",u.y),Qe(f).add("djs-crosshair"),$e(l,f),c.crosshairGroup=l}),e.on("spaceTool.selection.move",function(a){var s=a.context.crosshairGroup;cn(s,a.x,a.y)}),e.on("spaceTool.selection.cleanup",function(a){var s=a.context,c=s.crosshairGroup;c&&Yt(c)}),e.on("spaceTool.move",ST,function(a){var s=a.context,c=s.line,u=s.axis,l=s.movingShapes,p=s.resizingShapes;if(s.initialized){if(!s.dragGroup){var f=n.getLayer("space");c=Te("path"),xe(c,"d","M0,0 L0,0"),Qe(c).add("djs-crosshair"),$e(f,c),s.line=c;var d=Te("g");xe(d,i.cls("djs-drag-group",["no-events"])),$e(n.getActiveLayer(),d),o(l,d);var m=new Set(l);F(p,function(T){m.add(T)});var h=new Set,y=s.movingConnections=[];m.forEach(function(T){F(T.outgoing,function(k){h.has(k)||!ft(k)||!m.has(k.target)||(h.add(k),y.push(k))})}),o(y,d),s.dragGroup=d}if(!s.frameGroup){var g=Te("g");xe(g,i.cls("djs-frame-group",["no-events"])),$e(n.getActiveLayer(),g);var v=[];F(p,function(T){var k=r.addFrame(T,g),A=k.getBBox();v.push({element:k,initialBounds:A}),n.addMarker(T,uv)}),s.frameGroup=g,s.frames=v}var b={x:"M"+a.x+", -10000 L"+a.x+", 10000",y:"M -10000, "+a.y+" L 10000, "+a.y};xe(c,{d:b[u]});var x={x:"y",y:"x"},C={x:a.dx,y:a.dy};C[x[s.axis]]=0,cn(s.dragGroup,C.x,C.y),F(s.frames,function(T){var k=T.element,A=T.initialBounds,I,D;s.direction==="e"?xe(k,{width:Mc(A.width+C.x,5)}):(I=Mc(A.width-C.x,5),xe(k,{width:I,x:A.x+A.width-I})),s.direction==="s"?xe(k,{height:Mc(A.height+C.y,5)}):(D=Mc(A.height-C.y,5),xe(k,{height:D,y:A.y+A.height-D}))})}}),e.on("spaceTool.cleanup",function(a){var s=a.context,c=s.movingShapes,u=s.movingConnections,l=s.resizingShapes,p=s.line,f=s.dragGroup,d=s.frameGroup;F(c,function(m){n.removeMarker(m,ef)}),F(u,function(m){n.removeMarker(m,ef)}),f&&(Yt(p),Yt(f)),F(l,function(m){n.removeMarker(m,uv)}),d&&Yt(d)})}lv.$inject=["eventBus","elementRegistry","canvas","styles","previewSupport"];const RT={__init__:["spaceToolPreview"],__depends__:[Hi,Si,Pc,Io,Ca],spaceTool:["type",ii],spaceToolPreview:["type",lv]};function kc(e,t){e.invoke(ii,this),this._canvas=t}kc.$inject=["injector","canvas"],be(kc,ii),kc.prototype.calculateAdjustments=function(e,t,n,i){var r=this._canvas.getRootElement(),o=e[0]===r?null:e[0],a=[];o&&(a=ro(yo(r.children.filter(u=>S(u,"bpmn:Artifact")),Bt(o))));const s=[...e,...a];var c=ii.prototype.calculateAdjustments.call(this,s,t,n,i);return c.resizingShapes=c.resizingShapes.filter(function(u){return!(S(u,"bpmn:TextAnnotation")||CT(u)&&(t==="y"&&Jt(u)||t==="x"&&!Jt(u)))}),c};function CT(e){return S(e,"bpmn:Participant")&&!te(e).processRef}const pv={__depends__:[RT],spaceTool:["type",kc]};function St(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)}St.$inject=["eventBus","injector"],St.prototype.execute=function(e,t){if(!e)throw new Error("command required");this._currentExecution.trigger="execute";const n={command:e,context:t};this._pushAction(n),this._internalExecute(n),this._popAction()},St.prototype.canExecute=function(e,t){const n={command:e,context:t},i=this._getHandler(e);let r=this._fire(e,"canExecute",n);if(r===void 0){if(!i)return!1;i.canExecute&&(r=i.canExecute(t))}return r},St.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,e!==!1&&this._fire("changed",{trigger:"clear"})},St.prototype.undo=function(){let e=this._getUndoAction(),t;if(e){for(this._currentExecution.trigger="undo",this._pushAction(e);e&&(this._internalUndo(e),t=this._getUndoAction(),!(!t||t.id!==e.id));)e=t;this._popAction()}},St.prototype.redo=function(){let e=this._getRedoAction(),t;if(e){for(this._currentExecution.trigger="redo",this._pushAction(e);e&&(this._internalExecute(e,!0),t=this._getRedoAction(),!(!t||t.id!==e.id));)e=t;this._popAction()}},St.prototype.register=function(e,t){this._setHandler(e,t)},St.prototype.registerHandler=function(e,t){if(!e||!t)throw new Error("command and handlerCls must be defined");const n=this._injector.instantiate(t);this.register(e,n)},St.prototype.canUndo=function(){return!!this._getUndoAction()},St.prototype.canRedo=function(){return!!this._getRedoAction()},St.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},St.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},St.prototype._internalUndo=function(e){const t=e.command,n=e.context,i=this._getHandler(t);this._atomicDo(()=>{this._fire(t,"revert",e),i.revert&&this._markDirty(i.revert(n)),this._revertedAction(e),this._fire(t,"reverted",e)})},St.prototype._fire=function(e,t,n){arguments.length<3&&(n=t,t=null);const i=t?[e+"."+t,t]:[e];let r;n=this._eventBus.createEvent(n);for(const o of i)if(r=this._eventBus.fire("commandStack."+o,n),n.cancelBubble)break;return r},St.prototype._createId=function(){return this._uid++},St.prototype._atomicDo=function(e){const t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},St.prototype._internalExecute=function(e,t){const n=e.command,i=e.context,r=this._getHandler(n);if(!r)throw new Error("no command handler registered for <"+n+">");this._pushAction(e),t||(this._fire(n,"preExecute",e),r.preExecute&&r.preExecute(i),this._fire(n,"preExecuted",e)),this._atomicDo(()=>{this._fire(n,"execute",e),r.execute&&this._markDirty(r.execute(i)),this._executedAction(e,t),this._fire(n,"executed",e)}),t||(this._fire(n,"postExecute",e),r.postExecute&&r.postExecute(i),this._fire(n,"postExecuted",e)),this._popAction()},St.prototype._pushAction=function(e){const t=this._currentExecution,n=t.actions,i=n[0];if(t.atomic)throw new Error("illegal invocation in <execute> or <revert> phase (action: "+e.command+")");e.id||(e.id=i&&i.id||this._createId()),n.push(e)},St.prototype._popAction=function(){const e=this._currentExecution,t=e.trigger,n=e.actions,i=e.dirty;n.pop(),n.length||(this._eventBus.fire("elements.changed",{elements:Cd("id",i.reverse())}),i.length=0,this._fire("changed",{trigger:t}),e.trigger=null)},St.prototype._markDirty=function(e){const t=this._currentExecution;e&&(e=De(e)?e:[e],t.dirty=t.dirty.concat(e))},St.prototype._executedAction=function(e,t){const n=++this._stackIdx;t||this._stack.splice(n,this._stack.length,e)},St.prototype._revertedAction=function(e){this._stackIdx--},St.prototype._getHandler=function(e){return this._handlerMap[e]},St.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};const PT={commandStack:["type",St]};function hr(e,t){if(typeof t!="function")throw new Error("removeFn iterator must be a function");if(!e)return[];for(var n;n=e[0];)t(n);return e}var AT=250,fv=1400;function tf(e,t,n){J.call(this,t);var i=e.get("movePreview",!1);t.on("shape.move.start",fv,function(r){var o=r.context,a=o.shapes,s=o.validatedShapes;o.shapes=dv(a),o.validatedShapes=dv(s)}),i&&t.on("shape.move.start",AT,function(r){var o=r.context,a=new Set(o.shapes),s=new Set;for(const c of a)for(const u of c.labels)!u.hidden&&!a.has(u)&&s.add(u),c.labelTarget&&s.add(c);for(const c of s)i.makeDraggable(o,c,!0)}),this.preExecuted("elements.move",fv,function(r){var o=r.context,a=o.closure,s=a.enclosedElements,c=[];F(s,function(u){F(u.labels,function(l){s[l.id]||c.push(l)})}),a.addAll(c)}),this.preExecute(["connection.delete","shape.delete"],function(r){var o=r.context,a=o.connection||o.shape;hr(a.labels,function(s){n.removeShape(s,{nested:!0})})}),this.execute("shape.delete",function(r){var o=r.context,a=o.shape,s=a.labelTarget;s&&(o.labelTargetIndex=Ll(s.labels,a),o.labelTarget=s,a.labelTarget=null)}),this.revert("shape.delete",function(r){var o=r.context,a=o.shape,s=o.labelTarget,c=o.labelTargetIndex;s&&(Ot(s.labels,a,c),a.labelTarget=s)})}be(tf,J),tf.$inject=["injector","eventBus","modeling"];function dv(e){var t=new Set(e);return Ye(e,function(n){return!t.has(n.labelTarget)})}const TT={__init__:["labelSupport"],labelSupport:["type",tf]};var MT=251,hv=1401,mv="attach-ok";function nf(e,t,n,i,r){J.call(this,t);var o=e.get("movePreview",!1);t.on("shape.move.start",hv,function(a){var s=a.context,c=s.shapes,u=s.validatedShapes;s.shapes=kT(c),s.validatedShapes=OT(u)}),o&&t.on("shape.move.start",MT,function(a){var s=a.context,c=s.shapes,u=rf(c);F(u,function(l){o.makeDraggable(s,l,!0),F(l.labels,function(p){o.makeDraggable(s,p,!0)})})}),o&&t.on("shape.move.start",function(a){var s=a.context,c=s.shapes;if(c.length===1){var u=c[0],l=u.host;l&&(n.addMarker(l,mv),t.once(["shape.move.out","shape.move.cleanup"],function(){n.removeMarker(l,mv)}))}}),this.preExecuted("elements.move",hv,function(a){var s=a.context,c=s.closure,u=s.shapes,l=rf(u);F(l,function(p){c.add(p,c.topLevel[p.host.id])})}),this.postExecuted("elements.move",function(a){var s=a.context,c=s.shapes,u=s.newHost,l;u&&c.length!==1||(u?l=c:l=Ye(c,function(p){var f=p.host;return DT(p)&&!LT(c,f)}),F(l,function(p){r.updateAttachment(p,u)}))}),this.postExecuted("elements.move",function(a){var s=a.context.shapes;F(s,function(c){F(c.attachers,function(u){F(u.outgoing.slice(),function(l){var p=i.allowed("connection.reconnect",{connection:l,source:l.source,target:l.target});p||r.removeConnection(l)}),F(u.incoming.slice(),function(l){var p=i.allowed("connection.reconnect",{connection:l,source:l.source,target:l.target});p||r.removeConnection(l)})})})}),this.postExecute("shape.create",function(a){var s=a.context,c=s.shape,u=s.host;u&&r.updateAttachment(c,u)}),this.postExecute("shape.replace",function(a){var s=a.context,c=s.oldShape,u=s.newShape;hr(c.attachers,function(l){var p=i.allowed("elements.move",{target:u,shapes:[l]});p==="attach"?r.updateAttachment(l,u):r.removeShape(l)}),u.attachers.length&&F(u.attachers,function(l){var p=Dg(l,c,u);r.moveShape(l,p,l.parent)})}),this.postExecute("shape.resize",function(a){var s=a.context,c=s.shape,u=s.oldBounds,l=s.newBounds,p=c.attachers,f=s.hints||{};f.attachSupport!==!1&&F(p,function(d){var m=Dg(d,u,l);r.moveShape(d,m,d.parent),F(d.labels,function(h){r.moveShape(h,m,h.parent)})})}),this.preExecute("shape.delete",function(a){var s=a.context.shape;hr(s.attachers,function(c){r.removeShape(c)}),s.host&&r.updateAttachment(s,null)})}be(nf,J),nf.$inject=["injector","eventBus","canvas","rules","modeling"];function rf(e){return Vu(fn(e,function(t){return t.attachers||[]}))}function kT(e){var t=rf(e);return cw("id",e,t)}function OT(e){var t=oo(e,"id");return Ye(e,function(n){for(;n;){if(n.host&&t[n.host.id])return!1;n=n.parent}return!0})}function DT(e){return!!e.host}function LT(e,t){return e.indexOf(t)!==-1}const IT={__depends__:[Si],__init__:["attachSupport"],attachSupport:["type",nf]};function gv(e,t,n,i){e.on("element.changed",function(r){var o=r.element;(o.parent||o===t.getRootElement())&&(r.gfx=n.getGraphics(o)),r.gfx&&e.fire(cm(o)+".changed",r)}),e.on("elements.changed",function(r){var o=r.elements;o.forEach(function(a){e.fire("element.changed",{element:a})}),i.updateContainments(o)}),e.on("shape.changed",function(r){i.update("shape",r.element,r.gfx)}),e.on("connection.changed",function(r){i.update("connection",r.element,r.gfx)})}gv.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];const of={__init__:["changeSupport"],changeSupport:["type",gv]};function ri(e){this._model=e}ri.$inject=["moddle"],ri.prototype._needsId=function(e){return We(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"])},ri.prototype._ensureId=function(e){if(e.id){this._model.ids.claim(e.id,e);return}var t;S(e,"bpmn:Activity")?t="Activity":S(e,"bpmn:Event")?t="Event":S(e,"bpmn:Gateway")?t="Gateway":We(e,["bpmn:SequenceFlow","bpmn:MessageFlow"])?t="Flow":t=(e.$type||"").replace(/^[^:]*:/g,""),t+="_",!e.id&&this._needsId(e)&&(e.id=this._model.ids.nextPrefixed(t,e))},ri.prototype.create=function(e,t){var n=this._model.create(e,t||{});return this._ensureId(n),n},ri.prototype.createDiLabel=function(){return this.create("bpmndi:BPMNLabel",{bounds:this.createDiBounds()})},ri.prototype.createDiShape=function(e,t){return this.create("bpmndi:BPMNShape",V({bpmnElement:e,bounds:this.createDiBounds()},t))},ri.prototype.createDiBounds=function(e){return this.create("dc:Bounds",e)},ri.prototype.createDiWaypoints=function(e){var t=this;return fn(e,function(n){return t.createDiWaypoint(n)})},ri.prototype.createDiWaypoint=function(e){return this.create("dc:Point",ui(e,["x","y"]))},ri.prototype.createDiEdge=function(e,t){return this.create("bpmndi:BPMNEdge",V({bpmnElement:e,waypoint:this.createDiWaypoints([])},t))},ri.prototype.createDiPlane=function(e,t){return this.create("bpmndi:BPMNPlane",V({bpmnElement:e},t))};function Nn(e,t,n){J.call(this,e),this._bpmnFactory=t;var i=this;function r(d){var m=d.context,h=m.hints||{},y;!m.cropped&&h.createElementsBehavior!==!1&&(y=m.connection,y.waypoints=n.getCroppedWaypoints(y),m.cropped=!0)}this.executed(["connection.layout","connection.create"],r),this.reverted(["connection.layout"],function(d){delete d.context.cropped});function o(d){var m=d.context;i.updateParent(m.shape||m.connection,m.oldParent)}function a(d){var m=d.context,h=m.shape||m.connection,y=m.parent||m.newParent;i.updateParent(h,y)}this.executed(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],$n(o)),this.reverted(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],$n(a));function s(d){var m=d.context,h=m.oldRoot,y=h.children;F(y,function(g){S(g,"bpmn:BaseElement")&&i.updateParent(g)})}this.executed(["canvas.updateRoot"],s),this.reverted(["canvas.updateRoot"],s);function c(d){var m=d.context.shape;S(m,"bpmn:BaseElement")&&i.updateBounds(m)}this.executed(["shape.move","shape.create","shape.resize"],$n(function(d){d.context.shape.type!=="label"&&c(d)})),this.reverted(["shape.move","shape.create","shape.resize"],$n(function(d){d.context.shape.type!=="label"&&c(d)})),e.on("shape.changed",function(d){d.element.type==="label"&&c({context:{shape:d.element}})});function u(d){i.updateConnection(d.context)}this.executed(["connection.create","connection.move","connection.delete","connection.reconnect"],$n(u)),this.reverted(["connection.create","connection.move","connection.delete","connection.reconnect"],$n(u));function l(d){i.updateConnectionWaypoints(d.context.connection)}this.executed(["connection.layout","connection.move","connection.updateWaypoints"],$n(l)),this.reverted(["connection.layout","connection.move","connection.updateWaypoints"],$n(l)),this.executed("connection.reconnect",$n(function(d){var m=d.context,h=m.connection,y=m.oldSource,g=m.newSource,v=te(h),b=te(y),x=te(g);v.conditionExpression&&!We(x,["bpmn:Activity","bpmn:ExclusiveGateway","bpmn:InclusiveGateway"])&&(m.oldConditionExpression=v.conditionExpression,delete v.conditionExpression),y!==g&&b.default===v&&(m.oldDefault=b.default,delete b.default)})),this.reverted("connection.reconnect",$n(function(d){var m=d.context,h=m.connection,y=m.oldSource,g=m.newSource,v=te(h),b=te(y),x=te(g);m.oldConditionExpression&&(v.conditionExpression=m.oldConditionExpression),m.oldDefault&&(b.default=m.oldDefault,delete x.default)}));function p(d){i.updateAttachment(d.context)}this.executed(["element.updateAttachment"],$n(p)),this.reverted(["element.updateAttachment"],$n(p)),this.executed("element.updateLabel",$n(f)),this.reverted("element.updateLabel",$n(f));function f(d){const{element:m}=d.context,h=qn(m),y=et(m),g=y&&y.get("label");sr(m)||yc(m)||(h&&!g?y.set("label",t.create("bpmndi:BPMNLabel")):!h&&g&&y.set("label",void 0))}}be(Nn,J),Nn.$inject=["eventBus","bpmnFactory","connectionDocking"],Nn.prototype.updateAttachment=function(e){var t=e.shape,n=t.businessObject,i=t.host;n.attachedToRef=i&&i.businessObject},Nn.prototype.updateParent=function(e,t){if(!Ge(e)&&!(S(e,"bpmn:DataStoreReference")&&e.parent&&S(e.parent,"bpmn:Collaboration"))){var n=e.parent,i=e.businessObject,r=et(e),o=n&&n.businessObject,a=et(n);S(e,"bpmn:FlowNode")&&this.updateFlowNodeRefs(i,o,t&&t.businessObject),S(e,"bpmn:DataOutputAssociation")&&(e.source?o=e.source.businessObject:o=null),S(e,"bpmn:DataInputAssociation")&&(e.target?o=e.target.businessObject:o=null),this.updateSemanticParent(i,o),S(e,"bpmn:DataObjectReference")&&i.dataObjectRef&&this.updateSemanticParent(i.dataObjectRef,o),this.updateDiParent(r,a)}},Nn.prototype.updateBounds=function(e){var t=et(e),n=NT(e);if(n){var i=pi(n,t.get("bounds"));V(n,{x:e.x+i.x,y:e.y+i.y})}var r=Ge(e)?this._getLabel(t):t,o=r.bounds;o||(o=this._bpmnFactory.createDiBounds(),r.set("bounds",o)),V(o,{x:e.x,y:e.y,width:e.width,height:e.height})},Nn.prototype.updateFlowNodeRefs=function(e,t,n){if(n!==t){var i,r;S(n,"bpmn:Lane")&&(i=n.get("flowNodeRef"),kt(i,e)),S(t,"bpmn:Lane")&&(r=t.get("flowNodeRef"),Ot(r,e))}},Nn.prototype.updateDiConnection=function(e,t,n){var i=et(e),r=et(t),o=et(n);i.sourceElement&&i.sourceElement.bpmnElement!==te(t)&&(i.sourceElement=t&&r),i.targetElement&&i.targetElement.bpmnElement!==te(n)&&(i.targetElement=n&&o)},Nn.prototype.updateDiParent=function(e,t){if(t&&!S(t,"bpmndi:BPMNPlane")&&(t=t.$parent),e.$parent!==t){var n=(t||e.$parent).get("planeElement");t?(n.push(e),e.$parent=t):(kt(n,e),e.$parent=null)}};function BT(e){for(;e&&!S(e,"bpmn:Definitions");)e=e.$parent;return e}Nn.prototype.getLaneSet=function(e){var t,n;return S(e,"bpmn:Lane")?(t=e.childLaneSet,t||(t=this._bpmnFactory.create("bpmn:LaneSet"),e.childLaneSet=t,t.$parent=e),t):(S(e,"bpmn:Participant")&&(e=e.processRef),n=e.get("laneSets"),t=n[0],t||(t=this._bpmnFactory.create("bpmn:LaneSet"),t.$parent=e,n.push(t)),t)},Nn.prototype.updateSemanticParent=function(e,t,n){var i;if(e.$parent!==t&&!((S(e,"bpmn:DataInput")||S(e,"bpmn:DataOutput"))&&(S(t,"bpmn:Participant")&&"processRef"in t&&(t=t.processRef),"ioSpecification"in t&&t.ioSpecification===e.$parent))){if(S(e,"bpmn:Lane"))t&&(t=this.getLaneSet(t)),i="lanes";else if(S(e,"bpmn:FlowElement")){if(t){if(S(t,"bpmn:Participant"))t=t.processRef;else if(S(t,"bpmn:Lane"))do t=t.$parent.$parent;while(S(t,"bpmn:Lane"))}i="flowElements"}else if(S(e,"bpmn:Artifact")){for(;t&&!S(t,"bpmn:Process")&&!S(t,"bpmn:SubProcess")&&!S(t,"bpmn:Collaboration");)if(S(t,"bpmn:Participant")){t=t.processRef;break}else t=t.$parent;i="artifacts"}else if(S(e,"bpmn:MessageFlow"))i="messageFlows";else if(S(e,"bpmn:Participant")){i="participants";var r=e.processRef,o;r&&(o=BT(e.$parent||t),e.$parent&&(kt(o.get("rootElements"),r),r.$parent=null),t&&(Ot(o.get("rootElements"),r),r.$parent=o))}else S(e,"bpmn:DataOutputAssociation")?i="dataOutputAssociations":S(e,"bpmn:DataInputAssociation")&&(i="dataInputAssociations");if(!i)throw new Error(`no parent for <${e.id}> in <${t.id}>`);var a;if(e.$parent&&(a=e.$parent.get(i),kt(a,e)),t?(a=t.get(i),a.push(e),e.$parent=t):e.$parent=null,n){var s=n.get(i);kt(a,e),t&&(s||(s=[],t.set(i,s)),s.push(e))}}},Nn.prototype.updateConnectionWaypoints=function(e){var t=et(e);t.set("waypoint",this._bpmnFactory.createDiWaypoints(e.waypoints))},Nn.prototype.updateConnection=function(e){var t=e.connection,n=te(t),i=t.source,r=te(i),o=t.target,a=te(t.target),s;if(S(n,"bpmn:DataAssociation"))S(n,"bpmn:DataInputAssociation")?(n.get("sourceRef")[0]=r,s=e.parent||e.newParent||a,this.updateSemanticParent(n,a,s)):S(n,"bpmn:DataOutputAssociation")&&(s=e.parent||e.newParent||r,this.updateSemanticParent(n,r,s),n.targetRef=a);else{var c=S(n,"bpmn:SequenceFlow");n.sourceRef!==r&&(c&&(kt(n.sourceRef&&n.sourceRef.get("outgoing"),n),r&&r.get("outgoing")&&r.get("outgoing").push(n)),n.sourceRef=r),n.targetRef!==a&&(c&&(kt(n.targetRef&&n.targetRef.get("incoming"),n),a&&a.get("incoming")&&a.get("incoming").push(n)),n.targetRef=a)}this.updateConnectionWaypoints(t),this.updateDiConnection(t,i,o)},Nn.prototype._getLabel=function(e){return e.label||(e.label=this._bpmnFactory.createDiLabel()),e.label};function $n(e){return function(t){var n=t.context,i=n.shape||n.connection||n.element;S(i,"bpmn:BaseElement")&&e(t)}}function NT(e){if(S(e,"bpmn:Activity")){var t=et(e);if(t){var n=t.get("label");if(n)return n.get("bounds")}}}function mr(e,t){Ni.call(this),this._bpmnFactory=e,this._moddle=t}be(mr,Ni),mr.$inject=["bpmnFactory","moddle"],mr.prototype._baseCreate=Ni.prototype.create,mr.prototype.create=function(e,t){if(e==="label"){var n=t.di||this._bpmnFactory.createDiLabel();return this._baseCreate(e,V({type:"label",di:n},Fr,t))}return this.createElement(e,t)},mr.prototype.createElement=function(e,t){t=V({},t||{});var n,i=t.businessObject,r=t.di;if(!i){if(!t.type)throw new Error("no shape type specified");i=this._bpmnFactory.create(t.type)}if(!FT(r)){var o=V({},r||{},{id:i.id+"_di"});e==="root"?r=this._bpmnFactory.createDiPlane(i,o):e==="connection"?r=this._bpmnFactory.createDiEdge(i,o):r=this._bpmnFactory.createDiShape(i,o)}S(i,"bpmn:Group")&&(t=V({isFrame:!0},t)),t=$T(i,t,["processRef","isInterrupting","associationDirection","isForCompensation"]),t.isExpanded&&(t=af(r,t,"isExpanded")),We(i,["bpmn:Lane","bpmn:Participant"])&&(t=af(r,t,"isHorizontal")),S(i,"bpmn:SubProcess")&&(t.collapsed=!Xe(i,r)),S(i,"bpmn:ExclusiveGateway")&&(Tn(r,"isMarkerVisible")?r.isMarkerVisible===void 0&&(r.isMarkerVisible=!1):r.isMarkerVisible=!0),Wt(t.triggeredByEvent)&&(i.triggeredByEvent=t.triggeredByEvent,delete t.triggeredByEvent),Wt(t.cancelActivity)&&(i.cancelActivity=t.cancelActivity,delete t.cancelActivity);var a,s;return t.eventDefinitionType&&(a=i.get("eventDefinitions")||[],s=this._bpmnFactory.create(t.eventDefinitionType,t.eventDefinitionAttrs),t.eventDefinitionType==="bpmn:ConditionalEventDefinition"&&(s.condition=this._bpmnFactory.create("bpmn:FormalExpression")),a.push(s),s.$parent=i,i.eventDefinitions=a,delete t.eventDefinitionType),n=this.getDefaultSize(i,r),t=V({id:i.id},n,t,{businessObject:i,di:r}),this._baseCreate(e,t)},mr.prototype.getDefaultSize=function(e,t){var n=te(e);if(t=t||et(e),S(n,"bpmn:SubProcess"))return Xe(n,t)?{width:350,height:200}:{width:100,height:80};if(S(n,"bpmn:Task"))return{width:100,height:80};if(S(n,"bpmn:Gateway"))return{width:50,height:50};if(S(n,"bpmn:Event"))return{width:36,height:36};if(S(n,"bpmn:Participant")){var i=t.isHorizontal===void 0||t.isHorizontal===!0;return Xe(n,t)?i?{width:600,height:250}:{width:250,height:600}:i?{width:400,height:60}:{width:60,height:400}}return S(n,"bpmn:Lane")?{width:400,height:100}:S(n,"bpmn:DataObjectReference")?{width:36,height:50}:S(n,"bpmn:DataStoreReference")?{width:50,height:50}:S(n,"bpmn:TextAnnotation")?{width:100,height:40}:S(n,"bpmn:Group")?{width:300,height:300}:{width:100,height:80}},mr.prototype.createParticipantShape=function(e){return Xt(e)||(e={isExpanded:e}),e=V({type:"bpmn:Participant"},e||{}),e.isExpanded!==!1&&(e.processRef=this._bpmnFactory.create("bpmn:Process")),this.createShape(e)};function $T(e,t,n){return F(n,function(i){t=af(e,t,i)}),t}function af(e,t,n){return t[n]===void 0?t:(e[n]=t[n],hi(t,[n]))}function FT(e){return We(e,["bpmndi:BPMNShape","bpmndi:BPMNEdge","bpmndi:BPMNDiagram","bpmndi:BPMNPlane"])}function Oc(e,t){this._modeling=e,this._canvas=t}Oc.$inject=["modeling","canvas"],Oc.prototype.preExecute=function(e){var t=this._modeling,n=e.elements,i=e.alignment;F(n,function(r){var o={x:0,y:0};Wt(i.left)?o.x=i.left-r.x:Wt(i.right)?o.x=i.right-r.width-r.x:Wt(i.center)?o.x=i.center-Math.round(r.width/2)-r.x:Wt(i.top)?o.y=i.top-r.y:Wt(i.bottom)?o.y=i.bottom-r.height-r.y:Wt(i.middle)&&(o.y=i.middle-Math.round(r.height/2)-r.y),t.moveElements([r],o,r.parent)})},Oc.prototype.postExecute=function(e){};function Dc(e){this._modeling=e}Dc.$inject=["modeling"],Dc.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},Dc.prototype.postExecute=function(e){var t=e.hints||{};jT(e.source,e.shape)||(t.connectionTarget===e.source?this._modeling.connect(e.shape,e.source,e.connection):this._modeling.connect(e.source,e.shape,e.connection))};function jT(e,t){return Xi(e.outgoing,function(n){return n.target===t})}function Lc(e,t){this._canvas=e,this._layouter=t}Lc.$inject=["canvas","layouter"],Lc.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},Lc.prototype.revert=function(e){var t=e.connection;return this._canvas.removeConnection(t),t.source=null,t.target=null,t};var Ic=Math.round;function sf(e){this._modeling=e}sf.$inject=["modeling"],sf.prototype.preExecute=function(e){var t=e.elements,n=e.parent,i=e.parentIndex,r=e.position,o=e.hints,a=this._modeling;F(t,function(p){Be(p.x)||(p.x=0),Be(p.y)||(p.y=0)});var s=Ye(t,function(p){return!p.hidden}),c=Bt(s);F(t,function(p){ft(p)&&(p.waypoints=fn(p.waypoints,function(f){return{x:Ic(f.x-c.x-c.width/2+r.x),y:Ic(f.y-c.y-c.height/2+r.y)}})),V(p,{x:Ic(p.x-c.x-c.width/2+r.x),y:Ic(p.y-c.y-c.height/2+r.y)})});var u=new Set(Ns(t)),l={};F(t,function(p){if(ft(p)){l[p.id]=Be(i)?a.createConnection(l[p.source.id],l[p.target.id],i,p,p.parent||n,o):a.createConnection(l[p.source.id],l[p.target.id],p,p.parent||n,o);return}var f=V({},o);u.has(p)||(f.autoResize=!1),Ge(p)&&(f=hi(f,["attach"])),l[p.id]=Be(i)?a.createShape(p,ui(p,["x","y","width","height"]),p.parent||n,i,f):a.createShape(p,ui(p,["x","y","width","height"]),p.parent||n,f)}),e.elements=ro(l)};var yv=Math.round;function gr(e){this._canvas=e}gr.$inject=["canvas"],gr.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 n.width!==void 0?V(t,n):V(t,{x:n.x-yv(t.width/2),y:n.y-yv(t.height/2)}),this._canvas.addShape(t,i,r),t},gr.prototype.revert=function(e){var t=e.shape;return this._canvas.removeShape(t),t};function Aa(e){gr.call(this,e)}be(Aa,gr),Aa.$inject=["canvas"];var HT=gr.prototype.execute;Aa.prototype.execute=function(e){var t=e.shape;return GT(t),t.labelTarget=e.labelTarget,HT.call(this,e)};var zT=gr.prototype.revert;Aa.prototype.revert=function(e){return e.shape.labelTarget=null,zT.call(this,e)};function GT(e){["width","height"].forEach(function(t){typeof e[t]>"u"&&(e[t]=0)})}function Ta(e,t){this._canvas=e,this._modeling=t}Ta.$inject=["canvas","modeling"],Ta.prototype.preExecute=function(e){var t=this._modeling,n=e.connection;hr(n.incoming,function(i){t.removeConnection(i,{nested:!0})}),hr(n.outgoing,function(i){t.removeConnection(i,{nested:!0})})},Ta.prototype.execute=function(e){var t=e.connection,n=t.parent;return e.parent=n,e.parentIndex=Ll(n.children,t),e.source=t.source,e.target=t.target,this._canvas.removeConnection(t),t.source=null,t.target=null,t},Ta.prototype.revert=function(e){var t=e.connection,n=e.parent,i=e.parentIndex;return t.source=e.source,t.target=e.target,Ot(n.children,t,i),this._canvas.addConnection(t,n),t};function cf(e,t){this._modeling=e,this._elementRegistry=t}cf.$inject=["modeling","elementRegistry"],cf.prototype.postExecute=function(e){var t=this._modeling,n=this._elementRegistry,i=e.elements;F(i,function(r){n.get(r.id)&&(r.waypoints?t.removeConnection(r):t.removeShape(r))})};function Ma(e,t){this._canvas=e,this._modeling=t}Ma.$inject=["canvas","modeling"],Ma.prototype.preExecute=function(e){var t=this._modeling,n=e.shape;hr(n.incoming,function(i){t.removeConnection(i,{nested:!0})}),hr(n.outgoing,function(i){t.removeConnection(i,{nested:!0})}),hr(n.children,function(i){ft(i)?t.removeConnection(i,{nested:!0}):t.removeShape(i,{nested:!0})})},Ma.prototype.execute=function(e){var t=this._canvas,n=e.shape,i=n.parent;return e.oldParent=i,e.oldParentIndex=Ll(i.children,n),t.removeShape(n),n},Ma.prototype.revert=function(e){var t=this._canvas,n=e.shape,i=e.oldParent,r=e.oldParentIndex;return Ot(i.children,n,r),t.addShape(n,i),n};function Bc(e){this._modeling=e}Bc.$inject=["modeling"];var vv={x:"y",y:"x"};Bc.prototype.preExecute=function(e){var t=this._modeling,n=e.groups,i=e.axis,r=e.dimension;function o(y,g){y.range.min=Math.min(g[i],y.range.min),y.range.max=Math.max(g[i]+g[r],y.range.max)}function a(y){return y[i]+y[r]/2}function s(y){return y.length-1}function c(y){return y.max-y.min}function u(y,g){var v={y:0};v[i]=y-a(g),v[i]&&(v[vv[i]]=0,t.moveElements([g],v,g.parent))}var l=n[0],p=s(n),f=n[p],d,m,h=0;F(n,function(y,g){var v,b,x;if(y.elements.length<2){g&&g!==n.length-1&&(o(y,y.elements[0]),h+=c(y.range));return}v=di(y.elements,i),b=v[0],g===p&&(b=v[s(v)]),x=a(b),y.range=null,F(v,function(C){if(u(x,C),y.range===null){y.range={min:C[i],max:C[i]+C[r]};return}o(y,C)}),g&&g!==n.length-1&&(h+=c(y.range))}),m=Math.abs(f.range.min-l.range.max),d=Math.round((m-h)/(n.length-1)),!(d<n.length-1)&&F(n,function(y,g){var v={},b;y===l||y===f||(b=n[g-1],y.range.max=0,F(y.elements,function(x,C){v[vv[i]]=0,v[i]=b.range.max-x[i]+d,y.range.min!==x[i]&&(v[i]+=x[i]-y.range.min),v[i]&&t.moveElements([x],v,x.parent),y.range.max=Math.max(x[i]+x[r],C?y.range.max:0)}))})},Bc.prototype.postExecute=function(e){};function Nc(e,t){this._layouter=e,this._canvas=t}Nc.$inject=["layouter","canvas"],Nc.prototype.execute=function(e){var t=e.connection,n=t.waypoints;return V(e,{oldWaypoints:n}),t.waypoints=this._layouter.layoutConnection(t,e.hints),t},Nc.prototype.revert=function(e){var t=e.connection;return t.waypoints=e.oldWaypoints,t};function uf(){}uf.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=kt(o.children,t),Ot(i.children,t,r),t.parent=i,F(t.waypoints,function(a){a.x+=n.x,a.y+=n.y,a.original&&(a.original.x+=n.x,a.original.y+=n.y)}),t},uf.prototype.revert=function(e){var t=e.connection,n=t.parent,i=e.oldParent,r=e.oldParentIndex,o=e.delta;return kt(n.children,t),Ot(i.children,t,r),t.parent=i,F(t.waypoints,function(a){a.x-=o.x,a.y-=o.y,a.original&&(a.original.x-=o.x,a.original.y-=o.y)}),t};function lf(){this.allShapes={},this.allConnections={},this.enclosedElements={},this.enclosedConnections={},this.topLevel={}}lf.prototype.add=function(e,t){return this.addAll([e],t)},lf.prototype.addAll=function(e,t){var n=bS(e,!!t,this);return V(this,n),this};function ka(e){this._modeling=e}ka.prototype.moveRecursive=function(e,t,n){return e?this.moveClosure(this.getClosure(e),t,n):[]},ka.prototype.moveClosure=function(e,t,n,i,r){var o=this._modeling,a=e.allShapes,s=e.allConnections,c=e.enclosedConnections,u=e.topLevel,l=!1;r&&r.parent===n&&(l=!0),F(a,function(p){o.moveShape(p,t,u[p.id]&&!l&&n,{recurse:!1,layout:!1})}),F(s,function(p){var f=!!a[p.source.id],d=!!a[p.target.id];c[p.id]&&f&&d?o.moveConnection(p,t,u[p.id]&&!l&&n):o.layoutConnection(p,{connectionStart:f&&gp(p,p.source,t),connectionEnd:d&&yp(p,p.target,t)})})},ka.prototype.getClosure=function(e){return new lf().addAll(e,!0)};function $c(e){this._helper=new ka(e)}$c.$inject=["modeling"],$c.prototype.preExecute=function(e){e.closure=this._helper.getClosure(e.shapes)},$c.prototype.postExecute=function(e){var t=e.hints,n;t&&t.primaryShape&&(n=t.primaryShape,t.oldParent=n.parent),this._helper.moveClosure(e.closure,e.delta,e.newParent,e.newHost,n)};function Wr(e){this._modeling=e,this._helper=new ka(e)}Wr.$inject=["modeling"],Wr.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=ui(t,["x","y","width","height"]),e.oldParent=o,e.oldParentIndex=kt(o.children,t),Ot(i.children,t,r),V(t,{parent:i,x:t.x+n.x,y:t.y+n.y}),t},Wr.prototype.postExecute=function(e){var t=e.shape,n=e.delta,i=e.hints,r=this._modeling;i.layout!==!1&&(F(t.incoming,function(o){r.layoutConnection(o,{connectionEnd:yp(o,t,n)})}),F(t.outgoing,function(o){r.layoutConnection(o,{connectionStart:gp(o,t,n)})})),i.recurse!==!1&&this.moveChildren(e)},Wr.prototype.revert=function(e){var t=e.shape,n=e.oldParent,i=e.oldParentIndex,r=e.delta;return Ot(n.children,t,i),V(t,{parent:n,x:t.x-r.x,y:t.y-r.y}),t},Wr.prototype.moveChildren=function(e){var t=e.delta,n=e.shape;this._helper.moveRecursive(n.children,t,null)},Wr.prototype.getNewParent=function(e){return e.newParent||e.shape.parent};function Oa(e){this._modeling=e}Oa.$inject=["modeling"],Oa.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 De(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},Oa.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),o.layoutConnection!==!1&&(n&&(!i||o.docking==="source")&&(a.connectionStart=a.connectionStart||bv(De(r)?r[0]:r)),i&&(!n||o.docking==="target")&&(a.connectionEnd=a.connectionEnd||bv(De(r)?r[r.length-1]:r)),o.newWaypoints&&(a.waypoints=o.newWaypoints),this._modeling.layoutConnection(t,a))},Oa.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};function bv(e){return e.original||e}function Gi(e,t){this._modeling=e,this._rules=t}Gi.$inject=["modeling","rules"],Gi.prototype.preExecute=function(e){var t=this,n=this._modeling,i=this._rules,r=e.oldShape,o=e.newData,a=e.hints||{},s;function c(m,h,y){return i.allowed("connection.reconnect",{connection:y,source:m,target:h})}var u={x:o.x,y:o.y},l={x:r.x,y:r.y,width:r.width,height:r.height};s=e.newShape=e.newShape||t.createShape(o,u,r.parent,a),r.host&&n.updateAttachment(s,r.host);var p;a.moveChildren!==!1&&(p=r.children.slice(),n.moveElements(p,{x:0,y:0},s,a));var f=r.incoming.slice(),d=r.outgoing.slice();F(f,function(m){var h=m.source,y=c(h,s,m);y&&t.reconnectEnd(m,s,pc(m,s,l),a)}),F(d,function(m){var h=m.target,y=c(s,h,m);y&&t.reconnectStart(m,s,lc(m,s,l),a)})},Gi.prototype.postExecute=function(e){var t=e.oldShape;this._modeling.removeShape(t)},Gi.prototype.execute=function(e){},Gi.prototype.revert=function(e){},Gi.prototype.createShape=function(e,t,n,i){return this._modeling.createShape(e,t,n,i)},Gi.prototype.reconnectStart=function(e,t,n,i){this._modeling.reconnectStart(e,t,n,i)},Gi.prototype.reconnectEnd=function(e,t,n,i){this._modeling.reconnectEnd(e,t,n,i)};function Da(e){this._modeling=e}Da.$inject=["modeling"],Da.prototype.execute=function(e){var t=e.shape,n=e.newBounds,i=e.minBounds;if(n.x===void 0||n.y===void 0||n.width===void 0||n.height===void 0)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},V(t,{width:n.width,height:n.height,x:n.x,y:n.y}),t},Da.prototype.postExecute=function(e){var t=this._modeling,n=e.shape,i=e.oldBounds,r=e.hints||{};r.layout!==!1&&(F(n.incoming,function(o){t.layoutConnection(o,{connectionEnd:pc(o,n,i)})}),F(n.outgoing,function(o){t.layoutConnection(o,{connectionStart:lc(o,n,i)})}))},Da.prototype.revert=function(e){var t=e.shape,n=e.oldBounds;return V(t,{width:n.width,height:n.height,x:n.x,y:n.y}),t};function yr(e){this._modeling=e}yr.$inject=["modeling"],yr.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),F(r,function(s){a[s.id]=WT(s)}),this.resizeShapes(r,t,n),this.updateConnectionWaypoints(vT(i,r),t,n,o,i,r,a)},yr.prototype.execute=function(){},yr.prototype.revert=function(){},yr.prototype.moveShapes=function(e,t){var n=this;F(e,function(i){n._modeling.moveShape(i,t,null,{autoResize:!1,layout:!1,recurse:!1})})},yr.prototype.resizeShapes=function(e,t,n){var i=this;F(e,function(r){var o=bT(r,n,t);i._modeling.resizeShape(r,o,null,{attachSupport:!1,autoResize:!1,layout:!1})})},yr.prototype.updateConnectionWaypoints=function(e,t,n,i,r,o,a){var s=this,c=new Set(r),u=new Set(o);F(e,function(l){var p=l.source,f=l.target,d=VT(l),m=_v(n),h={},y=c.has(p)||u.has(p),g=c.has(f)||u.has(f);y&&g?(d=fn(d,function(v){return wv(v,i,n)&&(v[m]=v[m]+t[m]),v.original&&wv(v.original,i,n)&&(v.original[m]=v.original[m]+t[m]),v}),s._modeling.updateWaypoints(l,d,{labelBehavior:!1})):(y||g)&&(c.has(p)?h.connectionStart=gp(l,p,t):c.has(f)?h.connectionEnd=yp(l,f,t):u.has(p)?h.connectionStart=lc(l,p,a[p.id]):u.has(f)&&(h.connectionEnd=pc(l,f,a[f.id])),s._modeling.layoutConnection(l,h))})};function xv(e){return V({},e)}function VT(e){return fn(e.waypoints,function(t){return t=xv(t),t.original&&(t.original=xv(t.original)),t})}function _v(e){switch(e){case"n":return"y";case"w":return"x";case"s":return"y";case"e":return"x"}}function wv(e,t,n){var i=_v(n);if(/e|s/.test(n))return e[i]>t;if(/n|w/.test(n))return e[i]<t}function WT(e){return{x:e.x,y:e.y,height:e.height,width:e.width}}function Fc(e){this._modeling=e}Fc.$inject=["modeling"],Fc.prototype.execute=function(e){var t=e.shape,n=t.children;e.oldChildrenVisibility=Ev(n),t.collapsed=!t.collapsed;var i=Sv(n,t.collapsed);return[t].concat(i)},Fc.prototype.revert=function(e){var t=e.shape,n=e.oldChildrenVisibility,i=t.children,r=Rv(i,n);return t.collapsed=!t.collapsed,[t].concat(r)};function Ev(e){var t={};return F(e,function(n){t[n.id]=n.hidden,n.children&&(t=V({},t,Ev(n.children)))}),t}function Sv(e,t){var n=[];return F(e,function(i){i.hidden=t,n=n.concat(i),i.children&&(n=n.concat(Sv(i.children,i.collapsed||t)))}),n}function Rv(e,t){var n=[];return F(e,function(i){i.hidden=t[i.id],n=n.concat(i),i.children&&(n=n.concat(Rv(i.children,t)))}),n}function jc(e){this._modeling=e}jc.$inject=["modeling"],jc.prototype.execute=function(e){var t=e.shape,n=e.newHost,i=t.host;return e.oldHost=i,e.attacherIdx=Cv(i,t),Pv(n,t),t.host=n,t},jc.prototype.revert=function(e){var t=e.shape,n=e.newHost,i=e.oldHost,r=e.attacherIdx;return t.host=i,Cv(n,t),Pv(i,t,r),t};function Cv(e,t){return kt(e&&e.attachers,t)}function Pv(e,t,n){if(e){var i=e.attachers;i||(e.attachers=i=[]),Ot(i,t,n)}}function pf(){}pf.prototype.execute=function(e){var t=e.connection,n=e.newWaypoints;return e.oldWaypoints=t.waypoints,t.waypoints=n,t},pf.prototype.revert=function(e){var t=e.connection,n=e.oldWaypoints;return t.waypoints=n,t};function dt(e,t,n){this._eventBus=e,this._elementFactory=t,this._commandStack=n;var i=this;e.on("diagram.init",function(){i.registerHandlers(n)})}dt.$inject=["eventBus","elementFactory","commandStack"],dt.prototype.getHandlers=function(){return{"shape.append":Dc,"shape.create":gr,"shape.delete":Ma,"shape.move":Wr,"shape.resize":Da,"shape.replace":Gi,"shape.toggleCollapse":Fc,spaceTool:yr,"label.create":Aa,"connection.create":Lc,"connection.delete":Ta,"connection.move":uf,"connection.layout":Nc,"connection.updateWaypoints":pf,"connection.reconnect":Oa,"elements.create":sf,"elements.move":$c,"elements.delete":cf,"elements.distribute":Bc,"elements.align":Oc,"element.updateAttachment":jc}},dt.prototype.registerHandlers=function(e){F(this.getHandlers(),function(t,n){e.registerHandler(n,t)})},dt.prototype.moveShape=function(e,t,n,i,r){typeof i=="object"&&(r=i,i=null);var o={shape:e,delta:t,newParent:n,newParentIndex:i,hints:r||{}};this._commandStack.execute("shape.move",o)},dt.prototype.updateAttachment=function(e,t){var n={shape:e,newHost:t};this._commandStack.execute("element.updateAttachment",n)},dt.prototype.moveElements=function(e,t,n,i){i=i||{};var r=i.attach,o=n,a;r===!0?(a=n,o=n.parent):r===!1&&(a=null);var s={shapes:e,delta:t,newParent:o,newHost:a,hints:i};this._commandStack.execute("elements.move",s)},dt.prototype.moveConnection=function(e,t,n,i,r){typeof i=="object"&&(r=i,i=void 0);var o={connection:e,delta:t,newParent:n,newParentIndex:i,hints:r||{}};this._commandStack.execute("connection.move",o)},dt.prototype.layoutConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.layout",n)},dt.prototype.createConnection=function(e,t,n,i,r,o){typeof n=="object"&&(o=r,r=i,i=n,n=void 0),i=this._create("connection",i);var a={source:e,target:t,parent:r,parentIndex:n,connection:i,hints:o};return this._commandStack.execute("connection.create",a),a.connection},dt.prototype.createShape=function(e,t,n,i,r){typeof i!="number"&&(r=i,i=void 0),r=r||{};var o=r.attach,a,s;e=this._create("shape",e),o?(a=n.parent,s=n):a=n;var c={position:t,shape:e,parent:a,parentIndex:i,host:s,hints:r};return this._commandStack.execute("shape.create",c),c.shape},dt.prototype.createElements=function(e,t,n,i,r){De(e)||(e=[e]),typeof i!="number"&&(r=i,i=void 0),r=r||{};var o={position:t,elements:e,parent:n,parentIndex:i,hints:r};return this._commandStack.execute("elements.create",o),o.elements},dt.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},dt.prototype.appendShape=function(e,t,n,i,r){r=r||{},t=this._create("shape",t);var o={source:e,position:n,target:i,shape:t,connection:r.connection,connectionParent:r.connectionParent,hints:r};return this._commandStack.execute("shape.append",o),o.shape},dt.prototype.removeElements=function(e){var t={elements:e};this._commandStack.execute("elements.delete",t)},dt.prototype.distributeElements=function(e,t,n){var i={groups:e,axis:t,dimension:n};this._commandStack.execute("elements.distribute",i)},dt.prototype.removeShape=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.delete",n)},dt.prototype.removeConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.delete",n)},dt.prototype.replaceShape=function(e,t,n){var i={oldShape:e,newData:t,hints:n||{}};return this._commandStack.execute("shape.replace",i),i.newShape},dt.prototype.alignElements=function(e,t){var n={elements:e,alignment:t};this._commandStack.execute("elements.align",n)},dt.prototype.resizeShape=function(e,t,n,i){var r={shape:e,newBounds:t,minBounds:n,hints:i};this._commandStack.execute("shape.resize",r)},dt.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)},dt.prototype.updateWaypoints=function(e,t,n){var i={connection:e,newWaypoints:t,hints:n||{}};this._commandStack.execute("connection.updateWaypoints",i)},dt.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)},dt.prototype.reconnectStart=function(e,t,n,i){i||(i={}),this.reconnect(e,t,e.target,n,V(i,{docking:"source"}))},dt.prototype.reconnectEnd=function(e,t,n,i){i||(i={}),this.reconnect(e,e.source,t,n,V(i,{docking:"target"}))},dt.prototype.connect=function(e,t,n,i){return this.createConnection(e,t,n||{},e.parent,i)},dt.prototype._create=function(e,t){return rR(t)?t:this._elementFactory.create(e,t)},dt.prototype.toggleCollapse=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.toggleCollapse",n)};function La(e){this._elementRegistry=e}La.$inject=["elementRegistry"],La.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||UT(n,ls(i));return Av(n,i),e.oldProperties=o,e.changed=r,r},La.prototype.revert=function(e){var t=e.oldProperties,n=e.moddleElement,i=e.changed;return Av(n,t),i},La.prototype._getVisualReferences=function(e){var t=this._elementRegistry;return S(e,"bpmn:DataObject")?YT(e,t):[]};function UT(e,t){return Mn(t,function(n,i){return n[i]=e.get(i),n},{})}function Av(e,t){F(t,function(n,i){e.set(i,n)})}function YT(e,t){return t.filter(function(n){return S(n,"bpmn:DataObjectReference")&&te(n).dataObjectRef===e})}var Ia="default",Vi="id",Tv="di",qT={width:0,height:0};function Ba(e,t,n,i){this._elementRegistry=e,this._moddle=t,this._modeling=n,this._textRenderer=i}Ba.$inject=["elementRegistry","moddle","modeling","textRenderer"],Ba.prototype.execute=function(e){var t=e.element,n=[t];if(!t)throw new Error("element required");var i=this._elementRegistry,r=this._moddle.ids,o=t.businessObject,a=JT(e.properties),s=e.oldProperties||KT(t,a);return Mv(a,o)&&(r.unclaim(o[Vi]),i.updateId(t,a[Vi]),r.claim(a[Vi],o)),Ia in a&&(a[Ia]&&n.push(i.get(a[Ia].id)),o[Ia]&&n.push(i.get(o[Ia].id))),kv(t,a),e.oldProperties=s,e.changed=n,n},Ba.prototype.postExecute=function(e){var t=e.element,n=t.label,i=n&&te(n).name;if(i){var r=this._textRenderer.getExternalLabelBounds(n,i);this._modeling.resizeShape(n,r,qT)}},Ba.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 kv(t,i),Mv(n,r)&&(a.unclaim(n[Vi]),o.updateId(t,i[Vi]),a.claim(i[Vi],r)),e.changed};function Mv(e,t){return Vi in e&&e[Vi]!==t[Vi]}function KT(e,t){var n=ls(t),i=e.businessObject,r=et(e);return Mn(n,function(o,a){return a!==Tv?o[a]=i.get(a):o[a]=XT(r,ls(t.di)),o},{})}function XT(e,t){return Mn(t,function(n,i){return n[i]=e&&e.get(i),n},{})}function kv(e,t){var n=e.businessObject,i=et(e);F(t,function(r,o){o!==Tv?n.set(o,r):i&&ZT(i,r)})}function ZT(e,t){F(t,function(n,i){e.set(i,n)})}var QT=["default"];function JT(e){var t=V({},e);return QT.forEach(function(n){n in e&&(t[n]=te(t[n]))}),t}function Hc(e,t){this._canvas=e,this._modeling=t}Hc.$inject=["canvas","modeling"],Hc.prototype.execute=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=t.getRootElement(),o=r.businessObject,a=o.$parent,s=et(r);return t.setRootElement(n),t.removeRootElement(r),Ot(a.rootElements,i),i.$parent=a,kt(a.rootElements,o),o.$parent=null,r.di=null,s.bpmnElement=i,n.di=s,e.oldRoot=r,[]},Hc.prototype.revert=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=e.oldRoot,o=r.businessObject,a=i.$parent,s=et(n);return t.setRootElement(r),t.removeRootElement(n),kt(a.rootElements,i),i.$parent=null,Ot(a.rootElements,o),o.$parent=a,n.di=null,s.bpmnElement=o,r.di=s,[]};function ff(e,t){this._modeling=e,this._spaceTool=t}ff.$inject=["modeling","spaceTool"],ff.prototype.preExecute=function(e){var t=this._spaceTool,n=this._modeling,i=e.shape,r=e.location,o=ei(i),a=o===i,s=a?i:i.parent,c=ur(s),u=Jt(i);if(u?r==="left"?r="top":r==="right"&&(r="bottom"):r==="top"?r="left":r==="bottom"&&(r="right"),!c.length){var l=u?{x:i.x+Jn,y:i.y,width:i.width-Jn,height:i.height}:{x:i.x,y:i.y+Jn,width:i.width,height:i.height-Jn};n.createShape({type:"bpmn:Lane",isHorizontal:u},l,s)}var p=[];Nr(o,function(x){return p.push(x),x.label&&p.push(x.label),x===i?[]:Ye(x.children,function(C){return C!==i})});var f,d,m,h,y;r==="top"?(f=-120,d=i.y,m=d+10,h="n",y="y"):r==="left"?(f=-120,d=i.x,m=d+10,h="w",y="x"):r==="bottom"?(f=120,d=i.y+i.height,m=d-10,h="s",y="y"):r==="right"&&(f=120,d=i.x+i.width,m=d-10,h="e",y="x");var g=t.calculateAdjustments(p,y,f,m),v=u?{x:0,y:f}:{x:f,y:0};t.makeSpace(g.movingShapes,g.resizingShapes,v,h,m);var b=u?{x:i.x+(a?Jn:0),y:d-(r==="top"?120:0),width:i.width-(a?Jn:0),height:120}:{x:d-(r==="left"?120:0),y:i.y+(a?Jn:0),width:120,height:i.height-(a?Jn:0)};e.newLane=n.createShape({type:"bpmn:Lane",isHorizontal:u},b,s)};function df(e){this._modeling=e}df.$inject=["modeling"],df.prototype.preExecute=function(e){var t=this._modeling,n=e.shape,i=e.count,r=ur(n),o=r.length;if(o>i)throw new Error(`more than <${i}> child lanes`);var a=Jt(n),s=a?n.height:n.width,c=Math.round(s/i),u,l,p,f;for(f=0;f<i;f++)f===i-1?u=s-c*f:u=c,l=a?{x:n.x+Jn,y:n.y+f*c,width:n.width-Jn,height:u}:{x:n.x+f*c,y:n.y+Jn,width:u,height:n.height-Jn},f<o?t.resizeShape(r[f],l):(p={type:"bpmn:Lane",isHorizontal:a},t.createShape(p,l,n))};function Na(e,t){this._modeling=e,this._spaceTool=t}Na.$inject=["modeling","spaceTool"],Na.prototype.preExecute=function(e){var t=e.shape,n=e.newBounds,i=e.balanced;i!==!1?this.resizeBalanced(t,n):this.resizeSpace(t,n)},Na.prototype.resizeBalanced=function(e,t){var n=this._modeling,i=YC(e,t);n.resizeShape(e,t),i.forEach(function(r){n.resizeShape(r.shape,r.newBounds)})},Na.prototype.resizeSpace=function(e,t){var n=this._spaceTool,i=ke(e),r=ke(t),o=ug(r,i),a=ei(e),s=[],c=[];Nr(a,function(m){return s.push(m),(S(m,"bpmn:Lane")||S(m,"bpmn:Participant"))&&c.push(m),m.children});var u,l,p,f,d;(o.bottom||o.top)&&(u=o.bottom||o.top,l=e.y+(o.bottom?e.height:0)+(o.bottom?-10:10),p=o.bottom?"s":"n",f=o.top>0||o.bottom<0?-u:u,d=n.calculateAdjustments(s,"y",f,l),n.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:u},p)),(o.left||o.right)&&(u=o.right||o.left,l=e.x+(o.right?e.width:0)+(o.right?-10:100),p=o.right?"e":"w",f=o.left>0||o.right<0?-u:u,d=n.calculateAdjustments(c,"x",f,l),n.makeSpace(d.movingShapes,d.resizingShapes,{x:u,y:0},p))};var $a="flowNodeRef",hf="lanes";function zc(){}zc.prototype._computeUpdates=function(e,t){var n=[],i=[],r={},o=[];function a(l,p){var f=ke(p),d={x:l.x+l.width/2,y:l.y+l.height/2};return d.x>f.left&&d.x<f.right&&d.y>f.top&&d.y<f.bottom}function s(l){n.indexOf(l)===-1&&(o.push(l),n.push(l))}function c(l){var p=ei(l);return r[p.id]||(r[p.id]=oc(p)),r[p.id]}function u(l){if(!l.parent)return[];var p=c(l);return p.filter(function(f){return a(l,f)}).map(function(f){return f.businessObject})}return t.forEach(function(l){var p=ei(l);if(!(!p||n.indexOf(p)!==-1)){var f=p.children.filter(function(d){return S(d,"bpmn:FlowNode")});f.forEach(s),n.push(p)}}),e.forEach(s),o.forEach(function(l){var p=l.businessObject,f=p.get(hf),d=f.slice(),m=u(l);i.push({flowNode:p,remove:d,add:m})}),t.forEach(function(l){var p=l.businessObject;l.parent||p.get($a).forEach(function(f){i.push({flowNode:f,remove:[p],add:[]})})}),i},zc.prototype.execute=function(e){var t=e.updates;return t||(t=e.updates=this._computeUpdates(e.flowNodeShapes,e.laneShapes)),t.forEach(function(n){var i=n.flowNode,r=i.get(hf);n.remove.forEach(function(o){kt(r,o),kt(o.get($a),i)}),n.add.forEach(function(o){Ot(r,o),Ot(o.get($a),i)})}),[]},zc.prototype.revert=function(e){var t=e.updates;return t.forEach(function(n){var i=n.flowNode,r=i.get(hf);n.add.forEach(function(o){kt(r,o),kt(o.get($a),i)}),n.remove.forEach(function(o){Ot(r,o),Ot(o.get($a),i)})}),[]};var mf="categoryValueRef";function Fa(e,t){this._bpmnFactory=e,this._elementRegistry=t}Fa.$inject=["bpmnFactory","elementRegistry"],Fa.prototype._computeUpdates=function(e,t){var n=this._elementRegistry,i=this._bpmnFactory,r=new Map,o=[],a=new Map;function s(v,b,x){if(b){var C=a.get(v);C||(C={},a.set(v,C)),!(x&&C.present)&&(!x&&C.past||(x?C.present={categoryValue:b,root:gf(v)}:C.past={categoryValue:b}))}}function c(v){r.set(v,te(v))}function u(){n.filter(function(v){return S(v,"bpmn:FlowElement")&&!Ge(v)&&v.parent}).forEach(c)}function l(v){var b=te(v),x=b.get("categoryValueRef");return x||(x=rg(i,b),o.push(eM(v,x))),x}function p(v){return v.reduce(function(b,x){var C=gf(x),T=b.get(C);return T||(T=[],b.set(C,T)),T.push(x),b},new Map)}e=Array.from(e||[]);var f=p(e);t.length&&u(),e.forEach(c),n.filter(function(v){return S(v,"bpmn:Group")&&!Ge(v)&&v.parent}).forEach(function(v){var b=te(v).get("categoryValueRef");if(!b){var x=gf(v),C=f.get(x)||[],T=yo(C,v),k=Object.keys(T).length>0;k&&(b=l(v))}s(v,b,!0)}),t.forEach(function(v){s(v.groupShape,v.categoryValue,!1)}),o.length&&u();var d=Array.from(r.keys()),m=Array.from(a.values()).reduce(function(v,b){return b.present&&v.add(b.present.categoryValue),b.past&&v.add(b.past.categoryValue),v},new Set),h=new Map,y=p(d);a.forEach(function(v,b){var x=v.present;if(x){var C=y.get(x.root)||[],T=yo(C,b);C.forEach(function(k){if(T[k.id]){var A=h.get(k);A||(A=new Set,h.set(k,A)),A.add(x.categoryValue)}})}});var g=d.reduce(function(v,b){var x=r.get(b),C=x.get(mf),T=new Set(C),k=h.get(b)||new Set,A=Array.from(k).filter(function(D){return!T.has(D)}),I=C.filter(function(D){return m.has(D)&&!k.has(D)});return(A.length||I.length)&&v.push({businessObject:x,categoryValuesToAdd:A,categoryValuesToRemove:I}),v},[]);return{flowElements:g,groups:o}},Fa.prototype.execute=function(e){var t=e.updates;return t||(t=e.updates=this._computeUpdates(e.affectedFlowElements,e.affectedGroupEntries)),tM(t.groups),iM(t.flowElements),[]},Fa.prototype.revert=function(e){var t=e.updates;return rM(t.flowElements),nM(t.groups),[]};function eM(e,t){return{groupShape:e,categoryValue:t,category:t.$parent}}function tM(e){e.forEach(function(t){te(t.groupShape).categoryValueRef=t.categoryValue,t.categoryValue.$parent=t.category})}function nM(e){e.forEach(function(t){te(t.groupShape).categoryValueRef=null})}function iM(e){e.forEach(function(t){var n=t.businessObject,i=n.get(mf);t.categoryValuesToRemove.forEach(function(r){kt(i,r)}),t.categoryValuesToAdd.forEach(function(r){Ot(i,r,!0)})})}function rM(e){e.forEach(function(t){var n=t.businessObject,i=n.get(mf);t.categoryValuesToAdd.forEach(function(r){kt(i,r)}),t.categoryValuesToRemove.forEach(function(r){Ot(i,r,!0)})})}function gf(e){for(;e.parent;)e=e.parent;return e}function Gc(e){this._moddle=e}Gc.$inject=["moddle"],Gc.prototype.execute=function(e){var t=this._moddle.ids,n=e.id,i=e.element,r=e.claiming;return r?t.claim(n,i):t.unclaim(n),[]},Gc.prototype.revert=function(e){var t=this._moddle.ids,n=e.id,i=e.element,r=e.claiming;return r?t.unclaim(n):t.claim(n,i),[]};var oM={fill:void 0,stroke:void 0};function yf(e){this._commandStack=e,this._normalizeColor=function(t){if(t){if(An(t)){var n=aM(t);if(n)return n}throw new Error(`invalid color value: ${t}`)}}}yf.$inject=["commandStack"],yf.prototype.postExecute=function(e){var t=e.elements,n=e.colors||oM,i=this,r={};"fill"in n&&V(r,{"background-color":this._normalizeColor(n.fill)}),"stroke"in n&&V(r,{"border-color":this._normalizeColor(n.stroke)}),F(t,function(o){var a=ft(o)?ui(r,["border-color"]):r,s=et(o);if(sM(a),Ge(o)){if(!s||!S(s.label,"bpmndi:BPMNLabel"))return;i._commandStack.execute("element.updateModdleProperties",{element:o,moddleElement:s.label,properties:{color:r["border-color"]}})}else{if(!We(s,["bpmndi:BPMNEdge","bpmndi:BPMNShape"]))return;i._commandStack.execute("element.updateProperties",{element:o,properties:{di:a}})}})};function aM(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}function sM(e){"border-color"in e&&(e.stroke=e["border-color"]),"background-color"in e&&(e.fill=e["background-color"])}var cM={width:0,height:0};function Ov(e,t,n){function i(c,u){var l=c.label||c,p=c.labelTarget||c;return BR(l,u),[l,p]}function r(c){var u=c.element,l=u.businessObject,p=c.newLabel;if(!Ge(u)&&sr(u)&&!Us(u)&&!Dv(p)){var f=7,d=jl(u);d={x:d.x,y:d.y+f},e.createLabel(u,d,{id:l.id+"_label",businessObject:l,di:u.di})}}function o(c){return c.oldLabel=qn(c.element),i(c.element,c.newLabel)}function a(c){return i(c.element,c.oldLabel)}function s(c){var u=c.element,l=u.label||u,p=c.newLabel,f=c.newBounds,d=c.hints||{};if(!(!Ge(l)&&!S(l,"bpmn:TextAnnotation"))){if(Ge(l)&&Dv(p)){d.removeShape!==!1&&e.removeShape(l,{unsetLabel:!1});return}var m=qn(u);typeof f>"u"&&(f=t.getExternalLabelBounds(l,m)),f&&e.resizeShape(l,f,cM)}}this.preExecute=r,this.execute=o,this.revert=a,this.postExecute=s}Ov.$inject=["modeling","textRenderer","bpmnFactory"];function Dv(e){return!e||!e.trim()}function ln(e,t,n,i){dt.call(this,e,t,n),this._bpmnRules=i}be(ln,dt),ln.$inject=["eventBus","elementFactory","commandStack","bpmnRules"],ln.prototype.getHandlers=function(){var e=dt.prototype.getHandlers.call(this);return e["element.updateModdleProperties"]=La,e["element.updateProperties"]=Ba,e["canvas.updateRoot"]=Hc,e["lane.add"]=ff,e["lane.resize"]=Na,e["lane.split"]=df,e["lane.updateRefs"]=zc,e["group.updateRefs"]=Fa,e["id.updateClaim"]=Gc,e["element.setColor"]=yf,e["element.updateLabel"]=Ov,e},ln.prototype.updateLabel=function(e,t,n,i){this._commandStack.execute("element.updateLabel",{element:e,newLabel:t,newBounds:n,hints:i||{}})},ln.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)},ln.prototype.updateModdleProperties=function(e,t,n){this._commandStack.execute("element.updateModdleProperties",{element:e,moddleElement:t,properties:n})},ln.prototype.updateProperties=function(e,t){this._commandStack.execute("element.updateProperties",{element:e,properties:t})},ln.prototype.resizeLane=function(e,t,n){this._commandStack.execute("lane.resize",{shape:e,newBounds:t,balanced:n})},ln.prototype.addLane=function(e,t){var n={shape:e,location:t};return this._commandStack.execute("lane.add",n),n.newLane},ln.prototype.splitLane=function(e,t){this._commandStack.execute("lane.split",{shape:e,count:t})},ln.prototype.makeCollaboration=function(){var e=this._create("root",{type:"bpmn:Collaboration"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},ln.prototype.makeProcess=function(){var e=this._create("root",{type:"bpmn:Process"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},ln.prototype.updateLaneRefs=function(e,t){this._commandStack.execute("lane.updateRefs",{flowNodeShapes:e,laneShapes:t})},ln.prototype.updateCategoryValueRefs=function(e,t){this._commandStack.execute("group.updateRefs",{affectedFlowElements:e,affectedGroupEntries:t})},ln.prototype.claimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t,claiming:!0})},ln.prototype.unclaimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t})},ln.prototype.setColor=function(e,t){e.length||(e=[e]),this._commandStack.execute("element.setColor",{elements:e,colors:t})};function Lv(){}Lv.prototype.layoutConnection=function(e,t){return t=t||{},[t.connectionStart||Le(t.source||e.source),t.connectionEnd||Le(t.target||e.target)]};var Vc=20,uM=5,Wc=Math.round,Iv=20,lM={"h:h":20,"v:v":20,"h:v":-10,"v:h":-10};function pM(e,t){return!{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/./,v:/./}[t].test(e)}function fM(e,t){return{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/left|right/,v:/top|bottom/}[e].test(t)}function Bv(e,t,n){var i=sn(t,e,uM),r=n.split(":")[0],o=Wc((t.x-e.x)/2+e.x),a=Wc((t.y-e.y)/2+e.y),s,c,u=fM(r,i),l=/h|r|l/.test(r),p=!1,f=!1;return u?(s=l?{x:o,y:e.y}:{x:e.x,y:a},c=l?"h:h":"v:v"):(p=pM(i,r),c=l?"h:v":"v:h",p?l?(f=a===e.y,s={x:e.x+Vc*(/l/.test(r)?-1:1),y:f?a+Vc:a}):(f=o===e.x,s={x:f?o+Vc:o,y:e.y+Vc*(/t/.test(r)?-1:1)}):s={x:o,y:a}),{waypoints:vf(e,s,c).concat(s),directions:c,turnNextDirections:f}}function dM(e,t,n){return Bv(e,t,n)}function hM(e,t,n){var i=Bv(t,e,Nv(n));return{waypoints:i.waypoints.slice().reverse(),directions:Nv(i.directions),turnNextDirections:i.turnNextDirections}}function mM(e,t){var n=e.directions.split(":")[1],i=t.directions.split(":")[0];e.turnNextDirections&&(n=n=="h"?"v":"h"),t.turnNextDirections&&(i=i=="h"?"v":"h");var r=n+":"+i,o=vf(e.waypoints[e.waypoints.length-1],t.waypoints[0],r);return{waypoints:o,directions:r}}function Nv(e){return e.split(":").reverse().join(":")}function gM(e,t,n){var i=Wc((t.x-e.x)/2+e.x),r=Wc((t.y-e.y)/2+e.y);if(n==="h:v")return[{x:t.x,y:e.y}];if(n==="v:h")return[{x:e.x,y:t.y}];if(n==="h:h")return[{x:i,y:e.y},{x:i,y:t.y}];if(n==="v:v")return[{x:e.x,y:r},{x:t.x,y:r}];throw new Error("invalid directions: can only handle varians of [hv]:[hv]")}function vf(e,t,n){if(n=n||"h:h",!RM(n))throw new Error("unknown directions: <"+n+">: must be specified as <start>:<end> with start/end in { h,v,t,r,b,l }");if(Fv(n)){var i=dM(e,t,n),r=hM(e,t,n),o=mM(i,r);return[].concat(i.waypoints,o.waypoints,r.waypoints)}return gM(e,t,n)}function yM(e,t,n){var i=vf(e,t,n);return i.unshift(e),i.push(t),Hv(i)}function vM(e,t,n,i,r){var o=r&&r.preferredLayouts||[],a=aw(o,"straight")[0]||"h:h",s=lM[a]||0,c=sn(e,t,s),u=SM(c,a);n=n||Le(e),i=i||Le(t);var l=u.split(":"),p=jv(n,e,l[0],CM(c)),f=jv(i,t,l[1],c);return yM(p,f,u)}function bM(e,t,n,i,r,o){De(n)&&(r=n,o=i,n=Le(e),i=Le(t)),o=V({preferredLayouts:[]},o),r=r||[];var a=o.preferredLayouts,s=a.indexOf("straight")!==-1,c;return c=s&&_M(e,t,n,i,o),c||(c=o.connectionEnd&&EM(t,e,i,r),c)||(c=o.connectionStart&&wM(e,t,n,r),c)?c:!o.connectionStart&&!o.connectionEnd&&r&&r.length?r:vM(e,t,n,i,o)}function xM(e,t,n){return e>=t&&e<=n}function $v(e,t,n){var i={x:"width",y:"height"};return xM(t[e],n[e],n[e]+n[i[e]])}function _M(e,t,n,i,r){var o={},a,s;return s=sn(e,t),/^(top|bottom|left|right)$/.test(s)?(/top|bottom/.test(s)&&(a="x"),/left|right/.test(s)&&(a="y"),r.preserveDocking==="target"?$v(a,i,e)?(o[a]=i[a],[{x:o.x!==void 0?o.x:n.x,y:o.y!==void 0?o.y:n.y,original:{x:o.x!==void 0?o.x:n.x,y:o.y!==void 0?o.y:n.y}},{x:i.x,y:i.y}]):null:$v(a,n,t)?(o[a]=n[a],[{x:n.x,y:n.y},{x:o.x!==void 0?o.x:i.x,y:o.y!==void 0?o.y:i.y,original:{x:o.x!==void 0?o.x:i.x,y:o.y!==void 0?o.y:i.y}}]):null):null}function wM(e,t,n,i){return bf(e,t,n,i)}function EM(e,t,n,i){var r=i.slice().reverse();return r=bf(e,t,n,r),r?r.reverse():null}function bf(e,t,n,i){function r(l){return l.length<3?!0:l.length>4?!1:!!mt(l,function(p,f){var d=l[f-1];return d&&ua(p,d)<3})}function o(l,p,f){var d=Ii(p,l);switch(d){case"v":return{x:f.x,y:l.y};case"h":return{x:l.x,y:f.y}}return{x:l.x,y:l.y}}function a(l,p,f){var d;for(d=l.length-2;d!==0;d--)if(lm(l[d],p,Iv)||lm(l[d],f,Iv))return l.slice(d);return l}if(r(i))return null;var s=i[0],c=i.slice(),u;return c[0]=n,c[1]=o(c[1],s,n),u=a(c,e,t),u!==c&&(c=bf(e,t,n,u)),c&&Ii(c)?null:c}function SM(e,t){if(Fv(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}}function RM(e){return e&&/^h|v|t|r|b|l:h|v|t|r|b|l$/.test(e)}function Fv(e){return e&&/t|r|b|l/.test(e)}function CM(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]}function jv(e,t,n,i){if(n==="h"&&(n=/left/.test(i)?"l":"r"),n==="v"&&(n=/top/.test(i)?"t":"b"),n==="t")return{original:e,x:e.x,y:t.y};if(n==="r")return{original:e,x:t.x+t.width,y:e.y};if(n==="b")return{original:e,x:e.x,y:t.y+t.height};if(n==="l")return{original:e,x:t.x,y:e.y};throw new Error("unexpected dockingDirection: <"+n+">")}function Hv(e){return e.reduce(function(t,n,i){var r=t[t.length-1],o=e[i+1];return Il(r,o,n,0)||t.push(n),t},[])}var PM=-10,AM=40,TM={default:["h:h"],fromGateway:["v:h"],toGateway:["h:v"],loop:{fromTop:["t:r"],fromRight:["r:b"],fromLeft:["l:t"],fromBottom:["b:l"]},boundaryLoop:{alternateHorizontalSide:"b",alternateVerticalSide:"l",default:"v"},messageFlow:["straight","v:v"],subProcess:["straight","h:h"],isHorizontal:!0},MM={default:["v:v"],fromGateway:["h:v"],toGateway:["v:h"],loop:{fromTop:["t:l"],fromRight:["r:t"],fromLeft:["l:b"],fromBottom:["b:r"]},boundaryLoop:{alternateHorizontalSide:"t",alternateVerticalSide:"r",default:"h"},messageFlow:["straight","h:h"],subProcess:["straight","v:v"],isHorizontal:!1},xf={top:"bottom","top-right":"bottom-left","top-left":"bottom-right",right:"left",bottom:"top","bottom-right":"top-left","bottom-left":"top-right",left:"right"},ja={top:"t",right:"r",bottom:"b",left:"l"};function Uc(e){this._elementRegistry=e}be(Uc,Lv),Uc.prototype.layoutConnection=function(e,t){t||(t={});var n=t.source||e.source,i=t.target||e.target,r=t.waypoints||e.waypoints,o=t.connectionStart,a=t.connectionEnd,s=this._elementRegistry,c,u;if(o||(o=zv(r&&r[0],n)),a||(a=zv(r&&r[r.length-1],i)),(S(e,"bpmn:Association")||S(e,"bpmn:DataAssociation"))&&r&&!Gv(n,i))return[].concat([o],r.slice(1,-1),[a]);var l=eg(n,s)?TM:MM;return S(e,"bpmn:MessageFlow")?c=OM(n,i,l):(S(e,"bpmn:SequenceFlow")||Gv(n,i))&&(n===i?c={preferredLayouts:$M(n,e,l)}:S(n,"bpmn:BoundaryEvent")?c={preferredLayouts:FM(n,i,a,l)}:Ha(n)||Ha(i)?c={preferredLayouts:l.subProcess,preserveDocking:LM(n)}:S(n,"bpmn:Gateway")?c={preferredLayouts:l.fromGateway}:S(i,"bpmn:Gateway")?c={preferredLayouts:l.toGateway}:c={preferredLayouts:l.default}),c&&(c=V(c,t),u=Hv(bM(n,i,o,a,r,c))),u||[o,a]};function kM(e){var t=e.host;return sn(Le(e),t,PM)}function OM(e,t,n){return{preferredLayouts:n.messageFlow,preserveDocking:DM(e,t)}}function DM(e,t){return S(t,"bpmn:Participant")?"source":S(e,"bpmn:Participant")?"target":Ha(t)?"source":Ha(e)||S(t,"bpmn:Event")?"target":S(e,"bpmn:Event")?"source":null}function LM(e){return Ha(e)?"target":"source"}function zv(e,t){return e?e.original||e:Le(t)}function Gv(e,t){return S(t,"bpmn:Activity")&&S(e,"bpmn:BoundaryEvent")&&t.businessObject.isForCompensation}function Ha(e){return S(e,"bpmn:SubProcess")&&Xe(e)}function Ur(e,t){return e===t}function IM(e,t){return t.indexOf(e)!==-1}function Bo(e){var t=/right|left/.exec(e);return t&&t[0]}function No(e){var t=/top|bottom/.exec(e);return t&&t[0]}function Vv(e,t){return xf[e]===t}function BM(e,t){var n=Bo(e),i=xf[n];return t.indexOf(i)!==-1}function NM(e,t){var n=No(e),i=xf[n];return t.indexOf(i)!==-1}function Wv(e){return e==="right"||e==="left"}function $M(e,t,n){var i=t.waypoints,r=i&&i.length&&sn(i[0],e);return r==="top"?n.loop.fromTop:r==="right"?n.loop.fromRight:r==="left"?n.loop.fromLeft:n.loop.fromBottom}function FM(e,t,n,i){var r=Le(e),o=Le(t),a=kM(e),s,c,u=Ur(e.host,t),l=IM(a,["top","right","bottom","left"]),p=sn(o,r,{x:e.width/2+t.width/2,y:e.height/2+t.height/2});return u?jM(a,l,e,t,n,i):(s=HM(a,p,l,i.isHorizontal),c=zM(a,p,l,i.isHorizontal),[s+":"+c])}function jM(e,t,n,i,r,o){var a=t?e:o.isHorizontal?No(e):Bo(e),s=ja[a],c;return t?Wv(e)?c=Uv("y",n,i,r)?"h":o.boundaryLoop.alternateHorizontalSide:c=Uv("x",n,i,r)?"v":o.boundaryLoop.alternateVerticalSide:c=o.boundaryLoop.default,[s+":"+c]}function Uv(e,t,n,i){var r=AM;return!(_f(e,i,n,r)||_f(e,i,{x:n.x+n.width,y:n.y+n.height},r)||_f(e,i,Le(t),r))}function _f(e,t,n,i){return Math.abs(t[e]-n[e])<i}function HM(e,t,n,i){if(n)return ja[e];var r=No(e),o=Bo(e),a=No(t),s=Bo(t);if(i){if(Ur(r,a)||Vv(o,s))return ja[r]}else if(Ur(o,s)||Vv(r,a))return ja[o];return ja[i?o:r]}function zM(e,t,n,i){if(n)return Wv(e)?BM(e,t)||Ur(e,t)?"h":"v":NM(e,t)||Ur(e,t)?"v":"h";var r=No(e),o=Bo(e),a=No(t),s=Bo(t);return a&&!s?"v":s&&!a?"h":i?Ur(r,a)?"h":"v":Ur(o,s)?"v":"h"}Uc.$inject=["elementRegistry"];function Yv(e){return V({original:e.point.original||e.point},e.actual)}function vr(e,t){this._elementRegistry=e,this._graphicsFactory=t}vr.$inject=["elementRegistry","graphicsFactory"],vr.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(Yv(i)),o.push(Yv(r)),o},vr.prototype.getDockingPoint=function(e,t,n){var i=e.waypoints,r,o,a;return r=n?0:i.length-1,o=i[r],a=this._getIntersection(t,e,n),{point:o,actual:a||o,idx:r}},vr.prototype._getIntersection=function(e,t,n){var i=this._getShapePath(e),r=this._getConnectionPath(t);return la(i,r,n)},vr.prototype._getConnectionPath=function(e){return this._graphicsFactory.getConnectionPath(e)},vr.prototype._getShapePath=function(e){return this._graphicsFactory.getShapePath(e)},vr.prototype._getGfx=function(e){return this._elementRegistry.getGraphics(e)};const wf={__init__:["modeling","bpmnUpdater"],__depends__:[sA,EA,RA,CA,ov,PT,TT,IT,ni,of,pv],bpmnFactory:["type",ri],bpmnUpdater:["type",Nn],elementFactory:["type",mr],modeling:["type",ln],layouter:["type",Uc],connectionDocking:["type",vr]};var GM=10,qv=50,VM=250;function Ef(e,t,n,i){for(var r;r=WM(e,n,t);)n=i(t,n,r);return n}function Sf(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=o==="x"?"width":"height",c=a.margin,u=a.minDistance;c<0?r[o]=Math.min(i[o]+c-t[s]/2,n[o]-u+c):r[o]=Math.max(i[o]+i[s]+c+t[s]/2,n[o]+u+c)}}),r}}function WM(e,t,n){var i={x:t.x-n.width/2,y:t.y-n.height/2,width:n.width,height:n.height},r=YM(e);return mt(r,function(o){if(o===n)return!1;var a=sn(o,i,GM);return a==="intersect"})}function UM(e,t){t||(t={});function n(m){return m.source===e?1:-1}var i=t.defaultDistance||qv,r=t.direction||"e",o=t.filter,a=t.getWeight||n,s=t.maxDistance||VM,c=t.reference||"start";o||(o=XM);function u(m,h){return r==="n"?c==="start"?ke(m).top-ke(h).bottom:c==="center"?ke(m).top-Le(h).y:ke(m).top-ke(h).top:r==="w"?c==="start"?ke(m).left-ke(h).right:c==="center"?ke(m).left-Le(h).x:ke(m).left-ke(h).left:r==="s"?c==="start"?ke(h).top-ke(m).bottom:c==="center"?Le(h).y-ke(m).bottom:ke(h).bottom-ke(m).bottom:c==="start"?ke(h).left-ke(m).right:c==="center"?Le(h).x-ke(m).right:ke(h).right-ke(m).right}var l=e.incoming.filter(o).map(function(m){var h=a(m),y=h<0?u(m.source,e):u(e,m.source);return{id:m.source.id,distance:y,weight:h}}),p=e.outgoing.filter(o).map(function(m){var h=a(m),y=h>0?u(e,m.target):u(m.target,e);return{id:m.target.id,distance:y,weight:h}}),f=l.concat(p).reduce(function(m,h){return m[h.id+"__weight_"+h.weight]=h,m},{}),d=Mn(f,function(m,h){var y=h.distance,g=h.weight;return y<0||y>s||(m[String(y)]||(m[String(y)]=0),m[String(y)]+=1*g,(!m.distance||m[m.distance]<m[String(y)])&&(m.distance=y)),m},{});return d.distance||i}function YM(e){var t=Rf(e);return e.host&&(t=t.concat(Rf(e.host))),e.attachers&&(t=t.concat(e.attachers.reduce(function(n,i){return n.concat(Rf(i))},[]))),t}function Rf(e){return KM(e).concat(qM(e))}function qM(e){return e.incoming.map(function(t){return t.source})}function KM(e){return e.outgoing.map(function(t){return t.target})}function XM(){return!0}var ZM=100;function Kv(e,t,n){e.on("autoPlace",ZM,function(i){var r=i.shape,o=i.source;return QM(o,r)}),e.on("autoPlace.end",function(i){n.scrollToElement(i.shape)}),this.append=function(i,r,o){e.fire("autoPlace.start",{source:i,shape:r});var a=e.fire("autoPlace",{source:i,shape:r}),s=t.appendShape(i,r,a,i.parent,o);return e.fire("autoPlace.end",{source:i,shape:s}),s}}Kv.$inject=["eventBus","modeling","canvas"];function QM(e,t,n){n||(n={});var i=n.defaultDistance||qv,r=Le(e),o=ke(e);return{x:o.right+i+t.width/2,y:r.y}}function Xv(e,t){e.on("autoPlace.end",500,function(n){t.select(n.shape)})}Xv.$inject=["eventBus","selection"];const JM={__init__:["autoPlaceSelectionBehavior"],autoPlace:["type",Kv],autoPlaceSelectionBehavior:["type",Xv]};function Zv(e,t,n){var i=eg(e,n);if(S(t,"bpmn:TextAnnotation"))return t2(e,t,i);if(We(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"]))return n2(e,t,i);if(S(t,"bpmn:FlowNode"))return e2(e,t,i)}function e2(e,t,n){var i=ke(e),r=Le(e),o=n?{directionHint:"e",minDistance:80,baseOrientation:"left",boundaryOrientation:"top",start:"top",end:"bottom"}:{directionHint:"s",minDistance:90,baseOrientation:"top",boundaryOrientation:"left",start:"left",end:"right"},a=UM(e,{filter:function(d){return S(d,"bpmn:SequenceFlow")},direction:o.directionHint}),s=30,c=o.minDistance,u=o.baseOrientation;S(e,"bpmn:BoundaryEvent")&&(u=sn(e,e.host,-25),u.indexOf(o.boundaryOrientation)!==-1&&(s*=-1));var l=n?{x:i.right+a+t.width/2,y:r.y+Qv(u,c,o)}:{x:r.x+Qv(u,c,o),y:i.bottom+a+t.height/2},p={margin:s,minDistance:c},f=n?{y:p}:{x:p};return Ef(e,t,l,Sf(f))}function Qv(e,t,n){return e.includes(n.start)?-1*t:e.includes(n.end)?t:0}function t2(e,t,n){var i=ke(e),r=n?{x:i.right+t.width/2,y:i.top-50-t.height/2}:{x:i.right+50+t.width/2,y:i.bottom+t.height/2};ft(e)&&(r=Le(e),n?(r.x+=100,r.y-=50):(r.x+=100,r.y+=50));var o={margin:n?-30:30,minDistance:20},a=n?{y:o}:{x:o};return Ef(e,t,r,Sf(a))}function n2(e,t,n){var i=ke(e),r=n?{x:i.right-10+t.width/2,y:i.bottom+40+t.width/2}:{x:i.left-40-t.width/2,y:i.bottom-10+t.height/2},o={margin:30,minDistance:30},a=n?{x:o}:{y:o};return Ef(e,t,r,Sf(a))}function Jv(e,t){e.on("autoPlace",function(n){var i=n.shape,r=n.source;return Zv(r,i,t)})}Jv.$inject=["eventBus","elementRegistry"];const Yc={__depends__:[JM],__init__:["bpmnAutoPlace"],bpmnAutoPlace:["type",Jv]},eb=[Qm,ga,wf,Yc];function i2(e={}){qd(globalThis,e.dom);const t=document.createElement("div");return document.body.appendChild(t),new xo({container:t,moddleExtensions:e.moddleExtensions??ys,additionalModules:[...eb,...e.additionalModules??[]]})}var r2=new Lo("ov"),o2=500;function nn(e,t,n,i){this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=r2,this._overlayDefaults=V({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=a2(n.getContainer()),this._init()}nn.$inject=["config.overlays","eventBus","canvas","elementRegistry"],nn.prototype.get=function(e){if(An(e)&&(e={id:e}),An(e.element)&&(e.element=this._elementRegistry.get(e.element)),e.element){var t=this._getOverlayContainer(e.element,!0);return t?e.type?Ye(t.overlays,ao({type:e.type})):t.overlays.slice():[]}else return e.type?Ye(this._overlays,ao({type:e.type})):e.id?this._overlays[e.id]:null},nn.prototype.add=function(e,t,n){if(Xt(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=V({},this._overlayDefaults,n,{id:i,type:t,element:e,html:n.html}),this._addOverlay(n),i},nn.prototype.remove=function(e){var t=this.get(e)||[];De(t)||(t=[t]);var n=this;F(t,function(i){var r=n._getOverlayContainer(i.element,!0);if(i&&(vi(i.html),vi(i.htmlContainer),delete i.htmlContainer,delete i.element,delete n._overlays[i.id]),r){var o=r.overlays.indexOf(i);o!==-1&&r.overlays.splice(o,1)}})},nn.prototype.isShown=function(){return this._overlayRoot.style.display!=="none"},nn.prototype.show=function(){qc(this._overlayRoot)},nn.prototype.hide=function(){qc(this._overlayRoot,!1)},nn.prototype.clear=function(){this._overlays={},this._overlayContainers=[],ks(this._overlayRoot)},nn.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=Bt(t);i=o.x,r=o.y}tb(n,i,r),mn(e.html,"data-container-id",t.id)},nn.prototype._updateOverlay=function(e){var t=e.position,n=e.htmlContainer,i=e.element,r=t.left,o=t.top;if(t.right!==void 0){var a;i.waypoints?a=Bt(i).width:a=i.width,r=t.right*-1+a}if(t.bottom!==void 0){var s;i.waypoints?s=Bt(i).height:s=i.height,o=t.bottom*-1+s}tb(n,r||0,o||0),this._updateOverlayVisibilty(e,this._canvas.viewbox())},nn.prototype._createOverlayContainer=function(e){var t=bt('<div class="djs-overlays" />');_n(t,{position:"absolute"}),this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},nn.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";nb(this._overlayRoot,n)},nn.prototype._getOverlayContainer=function(e,t){var n=mt(this._overlayContainers,function(i){return i.element===e});return!n&&!t?this._createOverlayContainer(e):n},nn.prototype._addOverlay=function(e){var t=e.id,n=e.element,i=e.html,r,o;i.get&&i.constructor.prototype.jquery&&(i=i.get(0)),An(i)&&(i=bt(i)),o=this._getOverlayContainer(n),r=bt('<div class="djs-overlay" data-overlay-id="'+t+'">'),_n(r,{position:"absolute"}),r.appendChild(i),e.type&&wt(r).add("djs-overlay-"+e.type);var a=this._canvas.findRoot(n),s=this._canvas.getRootElement();qc(r,a===s),e.htmlContainer=r,o.overlays.push(e),o.html.appendChild(r),this._overlays[t]=e,this._updateOverlay(e),this._updateOverlayVisibilty(e,this._canvas.viewbox())},nn.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=this._canvas.getRootElement(),c=!0;(i!==s||n&&(Wt(r)&&r>t.scale||Wt(o)&&o<t.scale))&&(c=!1),qc(a,c),this._updateOverlayScale(e,t)},nn.prototype._updateOverlayScale=function(e,t){var n=e.scale,i,r,o=e.htmlContainer,a,s="";n!==!0&&(n===!1?(i=1,r=1):(i=n.min,r=n.max),Wt(i)&&t.scale<i&&(a=(1/t.scale||1)*i),Wt(r)&&t.scale>r&&(a=(1/t.scale||1)*r)),Wt(a)&&(s="scale("+a+","+a+")"),nb(o,s)},nn.prototype._updateOverlaysVisibilty=function(e){var t=this;F(this._overlays,function(n){t._updateOverlayVisibilty(n,e)})},nn.prototype._init=function(){var e=this._eventBus,t=this;function n(i){t._updateRoot(i),t._updateOverlaysVisibilty(i),t.show()}e.on("canvas.viewbox.changing",function(i){t.hide()}),e.on("canvas.viewbox.changed",function(i){n(i.viewbox)}),e.on(["shape.remove","connection.remove"],function(i){var r=i.element,o=t.get({element:r});F(o,function(c){t.remove(c.id)});var a=t._getOverlayContainer(r);if(a){vi(a.html);var s=t._overlayContainers.indexOf(a);s!==-1&&t._overlayContainers.splice(s,1)}}),e.on("element.changed",o2,function(i){var r=i.element,o=t._getOverlayContainer(r,!0);o&&(F(o.overlays,function(a){t._updateOverlay(a)}),t._updateOverlayContainer(o))}),e.on("element.marker.update",function(i){var r=t._getOverlayContainer(i.element,!0);r&&wt(r.html)[i.add?"add":"remove"](i.marker)}),e.on("root.set",function(){t._updateOverlaysVisibilty(t._canvas.viewbox())}),e.on("diagram.clear",this.clear,this)};function a2(e){var t=bt('<div class="djs-overlay-container" />');return _n(t,{position:"absolute",width:0,height:0}),e.insertBefore(t,e.firstChild),t}function tb(e,t,n){_n(e,{left:t+"px",top:n+"px"})}function qc(e,t){e.style.display=t===!1?"none":""}function nb(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach(function(n){e.style[n+"transform"]=t})}const Kc={__init__:["overlays"],overlays:["type",nn]};function Cf(e,t){t.invoke(J,this),this.executed(function(n){var i=n.context;i.rootElement?e.setRootElement(i.rootElement):i.rootElement=e.getRootElement()}),this.revert(function(n){var i=n.context;i.rootElement&&e.setRootElement(i.rootElement)})}be(Cf,J),Cf.$inject=["canvas","injector"];const s2={__init__:["rootElementsBehavior"],rootElementsBehavior:["type",Cf]};function za(e){return CSS.escape(e)}var c2={"&":"&","<":"<",">":">",'"':""","'":"'"};function ib(e){return e=""+e,e&&e.replace(/[&<>"']/g,function(t){return c2[t]})}var u2="bjs-breadcrumbs-shown";function rb(e,t,n){var i=bt('<ul class="bjs-breadcrumbs"></ul>'),r=n.getContainer(),o=wt(r);r.appendChild(i);var a=[];e.on("element.changed",function(c){var u=c.element,l=te(u),p=mt(a,function(f){return f===l});p&&s()});function s(c){c&&(a=l2(c));var u=a.flatMap(function(p){var f=n.findRoot(Ei(p))||n.findRoot(p.id);if(!f&&S(p,"bpmn:Process")){var d=t.find(function(y){var g=te(y);return g&&g.get("processRef")===p});f=d&&n.findRoot(d.id)}if(!f)return[];var m=ib(p.name||p.id),h=bt('<li><span class="bjs-crumb"><a title="'+m+'">'+m+"</a></span></li>");return h.addEventListener("click",function(){n.setRootElement(f)}),h});i.innerHTML="";var l=u.length>1;o.toggle(u2,l),u.forEach(function(p){i.appendChild(p)})}e.on("root.set",function(c){s(c.element)})}rb.$inject=["eventBus","elementRegistry","canvas"];function l2(e){for(var t=te(e),n=[],i=t;i;i=i.$parent)(S(i,"bpmn:SubProcess")||S(i,"bpmn:Process"))&&n.push(i);return n.reverse()}function ob(e,t){var n=null,i=new p2;e.on("root.set",function(r){var o=r.element,a=t.viewbox(),s=i.get(o);if(i.set(n,{x:a.x,y:a.y,zoom:a.scale}),n=o,!(!S(o,"bpmn:SubProcess")&&!s)){s=s||{x:0,y:0,zoom:1};var c=(a.x-s.x)*a.scale,u=(a.y-s.y)*a.scale;(c!==0||u!==0)&&t.scroll({dx:c,dy:u}),s.zoom!==a.scale&&t.zoom(s.zoom,{x:0,y:0})}}),e.on("diagram.clear",function(){i.clear(),n=null})}ob.$inject=["eventBus","canvas"];function p2(){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}t!==-1&&this._entries.splice(t,1)}}var ab={x:180,y:160};function Yr(e,t){this._eventBus=e,this._moddle=t;var n=this;e.on("import.render.start",1500,function(i,r){n._handleImport(r.definitions)})}Yr.prototype._handleImport=function(e){if(e.diagrams){var t=this;this._definitions=e,this._processToDiagramMap={},e.diagrams.forEach(function(i){!i.plane||!i.plane.bpmnElement||(t._processToDiagramMap[i.plane.bpmnElement.id]=i)});var n=e.diagrams.filter(i=>i.plane).flatMap(i=>t._createNewDiagrams(i.plane));n.forEach(function(i){t._movePlaneElementsToOrigin(i.plane)})}},Yr.prototype._createNewDiagrams=function(e){var t=this,n=[],i=[];e.get("planeElement").forEach(function(o){var a=o.bpmnElement;if(a){var s=a.$parent;S(a,"bpmn:SubProcess")&&!o.isExpanded&&n.push(a),d2(a,e)&&i.push({diElement:o,parent:s})}});var r=[];return n.forEach(function(o){if(!t._processToDiagramMap[o.id]){var a=t._createDiagram(o);t._processToDiagramMap[o.id]=a,r.push(a)}}),i.forEach(function(o){for(var a=o.diElement,s=o.parent;s&&n.indexOf(s)===-1;)s=s.$parent;if(s){var c=t._processToDiagramMap[s.id];t._moveToDiPlane(a,c.plane)}}),r},Yr.prototype._movePlaneElementsToOrigin=function(e){var t=e.get("planeElement"),n=f2(e),i={x:n.x-ab.x,y:n.y-ab.y};t.forEach(function(r){r.waypoint?r.waypoint.forEach(function(o){o.x=o.x-i.x,o.y=o.y-i.y}):r.bounds&&(r.bounds.x=r.bounds.x-i.x,r.bounds.y=r.bounds.y-i.y)})},Yr.prototype._moveToDiPlane=function(e,t){var n=sb(e),i=n.plane.get("planeElement");i.splice(i.indexOf(e),1),t.get("planeElement").push(e)},Yr.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},Yr.$inject=["eventBus","moddle"];function sb(e){return S(e,"bpmndi:BPMNDiagram")?e:sb(e.$parent)}function f2(e){var t={top:1/0,right:-1/0,bottom:-1/0,left:1/0};return e.planeElement.forEach(function(n){if(n.bounds){var i=ke(n.bounds);t.top=Math.min(i.top,t.top),t.left=Math.min(i.left,t.left)}}),js(t)}function d2(e,t){var n=e.$parent;return!(!S(n,"bpmn:SubProcess")||n===t.bpmnElement||We(e,["bpmn:DataInputAssociation","bpmn:DataOutputAssociation"]))}var Xc=250,h2='<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>',m2="bjs-drilldown-empty";function br(e,t,n,i,r){J.call(this,t),this._canvas=e,this._eventBus=t,this._elementRegistry=n,this._overlays=i,this._translate=r;var o=this;this.executed("shape.toggleCollapse",Xc,function(a){var s=a.shape;o._canDrillDown(s)?o._addOverlay(s):o._removeOverlay(s)},!0),this.reverted("shape.toggleCollapse",Xc,function(a){var s=a.shape;o._canDrillDown(s)?o._addOverlay(s):o._removeOverlay(s)},!0),this.executed(["shape.create","shape.move","shape.delete"],Xc,function(a){var s=a.oldParent,c=a.newParent||a.parent,u=a.shape;o._canDrillDown(u)&&o._addOverlay(u),o._updateDrilldownOverlay(s),o._updateDrilldownOverlay(c),o._updateDrilldownOverlay(u)},!0),this.reverted(["shape.create","shape.move","shape.delete"],Xc,function(a){var s=a.oldParent,c=a.newParent||a.parent,u=a.shape;o._canDrillDown(u)&&o._addOverlay(u),o._updateDrilldownOverlay(s),o._updateDrilldownOverlay(c),o._updateDrilldownOverlay(u)},!0),t.on("import.render.complete",function(){n.filter(function(a){return o._canDrillDown(a)}).map(function(a){o._addOverlay(a)})})}be(br,J),br.prototype._updateDrilldownOverlay=function(e){var t=this._canvas;if(e){var n=t.findRoot(e);n&&this._updateOverlayVisibility(n)}},br.prototype._canDrillDown=function(e){var t=this._canvas;return S(e,"bpmn:SubProcess")&&t.findRoot(Ei(e))},br.prototype._updateOverlayVisibility=function(e){var t=this._overlays,n=te(e),i=t.get({element:n.id,type:"drilldown"})[0];if(i){var r=n&&n.get("flowElements")&&n.get("flowElements").length;wt(i.html).toggle(m2,!r)}},br.prototype._addOverlay=function(e){var t=this._canvas,n=this._overlays,i=te(e),r=n.get({element:e,type:"drilldown"});r.length&&this._removeOverlay(e);var o=bt('<button type="button" class="bjs-drilldown">'+h2+"</button>"),a=i.get("name")||i.get("id"),s=this._translate("Open {element}",{element:a});o.setAttribute("title",s),o.addEventListener("click",function(){t.setRootElement(t.findRoot(Ei(e)))}),n.add(e,"drilldown",{position:{bottom:-7,right:-8},html:o}),this._updateOverlayVisibility(e)},br.prototype._removeOverlay=function(e){var t=this._overlays;t.remove({element:e,type:"drilldown"})},br.$inject=["canvas","eventBus","elementRegistry","overlays","translate"];const g2={__depends__:[Kc,of,s2],__init__:["drilldownBreadcrumbs","drilldownOverlayBehavior","drilldownCentering","subprocessCompatibility"],drilldownBreadcrumbs:["type",rb],drilldownCentering:["type",ob],drilldownOverlayBehavior:["type",br],subprocessCompatibility:["type",Yr]};function xr(e){Et.call(this,e)}be(xr,Et),xr.prototype._modules=[Qm,g2,Kc,ni,ga],xr.prototype._moddleExtensions={};var Zc="keyboard.keydown",y2="keyboard.keyup",v2=1e3,cb="Keyboard binding is now implicit; explicit binding to an element got removed. For more information, see https://github.com/bpmn-io/diagram-js/issues/661";function wn(e,t){var n=this;this._config=e=e||{},this._eventBus=t,this._keydownHandler=this._keydownHandler.bind(this),this._keyupHandler=this._keyupHandler.bind(this),t.on("diagram.destroy",function(){n._fire("destroy"),n.unbind()}),e.bindTo&&console.error("unsupported configuration <keyboard.bindTo>",new Error(cb));var i=e&&e.bind!==!1;t.on("canvas.init",function(r){n._target=r.svg,i&&n.bind(),n._fire("init")})}wn.$inject=["config.keyboard","eventBus"],wn.prototype._keydownHandler=function(e){this._keyHandler(e,Zc)},wn.prototype._keyupHandler=function(e){this._keyHandler(e,y2)},wn.prototype._keyHandler=function(e,t){var n;if(!this._isEventIgnored(e)){var i={keyEvent:e};n=this._eventBus.fire(t||Zc,i),n&&e.preventDefault()}},wn.prototype._isEventIgnored=function(e){return!1},wn.prototype.bind=function(e){e&&console.error("unsupported argument <node>",new Error(cb)),this.unbind(),e=this._node=this._target,Ne.bind(e,"keydown",this._keydownHandler),Ne.bind(e,"keyup",this._keyupHandler),this._fire("bind")},wn.prototype.getBinding=function(){return this._node},wn.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),Ne.unbind(e,"keydown",this._keydownHandler),Ne.unbind(e,"keyup",this._keyupHandler)),this._node=null},wn.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},wn.prototype.addListener=function(e,t,n){Zt(e)&&(n=t,t=e,e=v2),this._eventBus.on(n||Zc,e,t)},wn.prototype.removeListener=function(e,t){this._eventBus.off(t||Zc,e)},wn.prototype.hasModifier=FA,wn.prototype.isCmd=In,wn.prototype.isShift=Yp,wn.prototype.isKey=qt;var b2=500;function $o(e,t){var n=this;e.on("editorActions.init",b2,function(i){var r=i.editorActions;n.registerBindings(t,r)})}$o.$inject=["eventBus","keyboard"],$o.prototype.registerBindings=function(e,t){function n(i,r){t.isRegistered(i)&&e.addListener(r)}n("undo",function(i){var r=i.keyEvent;if(VA(r))return t.trigger("undo"),!0}),n("redo",function(i){var r=i.keyEvent;if(WA(r))return t.trigger("redo"),!0}),n("copy",function(i){var r=i.keyEvent;if(jA(r))return t.trigger("copy"),!0}),n("paste",function(i){var r=i.keyEvent;if(HA(r))return t.trigger("paste"),!0}),n("duplicate",function(i){var r=i.keyEvent;if(zA(r))return t.trigger("duplicate"),!0}),n("cut",function(i){var r=i.keyEvent;if(GA(r))return t.trigger("cut"),!0}),n("stepZoom",function(i){var r=i.keyEvent;if(qt(["+","Add","="],r)&&In(r))return t.trigger("stepZoom",{value:1}),!0}),n("stepZoom",function(i){var r=i.keyEvent;if(qt(["-","Subtract"],r)&&In(r))return t.trigger("stepZoom",{value:-1}),!0}),n("zoom",function(i){var r=i.keyEvent;if(qt("0",r)&&In(r))return t.trigger("zoom",{value:1}),!0}),n("removeSelection",function(i){var r=i.keyEvent;if(qt(["Backspace","Delete","Del"],r))return t.trigger("removeSelection"),!0})};const Pf={__init__:["keyboard","keyboardBindings"],keyboard:["type",wn],keyboardBindings:["type",$o]};var x2={moveSpeed:50,moveSpeedAccelerated:200};function ub(e,t,n){var i=this;this._config=V({},x2,e||{}),t.addListener(r);function r(o){var a=o.keyEvent,s=i._config;if(t.isCmd(a)&&t.isKey(["ArrowLeft","Left","ArrowUp","Up","ArrowDown","Down","ArrowRight","Right"],a)){var c=t.isShift(a)?s.moveSpeedAccelerated:s.moveSpeed,u;switch(a.key){case"ArrowLeft":case"Left":u="left";break;case"ArrowUp":case"Up":u="up";break;case"ArrowRight":case"Right":u="right";break;case"ArrowDown":case"Down":u="down";break}return i.moveCanvas({speed:c,direction:u}),!0}}this.moveCanvas=function(o){var a=0,s=0,c=o.speed,u=c/Math.min(Math.sqrt(n.viewbox().scale),1);switch(o.direction){case"left":a=u;break;case"up":s=u;break;case"right":a=-u;break;case"down":s=-u;break}n.scroll({dx:a,dy:s})}}ub.$inject=["config.keyboardMove","keyboard","canvas"];const lb={__depends__:[Pf],__init__:["keyboardMove"],keyboardMove:["type",ub]};var _2=15;function pb(e,t){var n;function i(s){return a(s.originalEvent)}e.on("canvas.focus.changed",function(s){s.focused?e.on("element.mousedown",500,i):e.off("element.mousedown",i)});function r(s){var c=n.start,u=n.button,l=Hr(s),p=pi(l,c);if(!n.dragging&&w2(p)>_2&&(n.dragging=!0,u===0&&$y(e),Sc("grab")),n.dragging){var f=n.last||n.start;p=pi(l,f),t.scroll({dx:p.x,dy:p.y}),n.last=l}s.preventDefault()}function o(s){Ne.unbind(document,"mousemove",r),Ne.unbind(document,"mouseup",o),n=null,Ny()}function a(s){if(!Ir(s.target,".djs-draggable")){var c=s.button;if(!(c>=2||s.ctrlKey||s.shiftKey||s.altKey))return n={button:c,start:Hr(s)},Ne.bind(document,"mousemove",r),Ne.bind(document,"mouseup",o),!0}}this.isActive=function(){return!!n}}pb.$inject=["eventBus","canvas"];function w2(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}const fb={__init__:["moveCanvas"],moveCanvas:["type",pb]};function db(e,t){var n=Vl(e.min),i=Vl(e.max),r=Math.abs(n)+Math.abs(i);return r/t}function E2(e,t){return Math.max(e.min,Math.min(e.max,t))}var S2=Math.sign||function(e){return e>=0?1:-1},Af={min:.2,max:4},hb=10,R2=.1,C2=.75;function Ci(e,t,n){e=e||{},this._enabled=!1,this._canvas=n,this._container=n._container,this._handleWheel=Sn(this._handleWheel,this),this._totalDelta=0,this._scale=e.scale||C2;var i=this;t.on("canvas.mouseover",function(){i._init(e.enabled!==!1)}),t.on("canvas.mouseout",function(){i._init(!1)})}Ci.$inject=["config.zoomScroll","eventBus","canvas"],Ci.prototype.scroll=function(t){this._canvas.scroll(t)},Ci.prototype.reset=function(){this._canvas.zoom("fit-viewport")},Ci.prototype.zoom=function(t,n){var i=db(Af,hb*2);this._totalDelta+=t,Math.abs(this._totalDelta)>R2&&(this._zoom(t,n,i),this._totalDelta=0)},Ci.prototype._handleWheel=function(t){if(this._enabled){var n=this._container;t.preventDefault();var i=t.ctrlKey||Wg()&&t.metaKey,r=t.shiftKey,o=-1*this._scale,a;if(i?o*=t.deltaMode===0?.02:.32:o*=t.deltaMode===0?1:16,i){var s=n.getBoundingClientRect(),c={x:t.clientX-s.left,y:t.clientY-s.top};a=Math.sqrt(Math.pow(t.deltaY,2)+Math.pow(t.deltaX,2))*S2(t.deltaY)*o,this.zoom(a,c)}else r?a={dx:o*t.deltaY,dy:0}:a={dx:o*t.deltaX,dy:o*t.deltaY},this.scroll(a)}},Ci.prototype.stepZoom=function(t,n){var i=db(Af,hb);this._zoom(t,n,i)},Ci.prototype._zoom=function(e,t,n){var i=this._canvas,r=e>0?1:-1,o=Vl(i.zoom()),a=Math.round(o/n)*n;a+=n*r;var s=Math.pow(10,a);i.zoom(E2(Af,s),t)},Ci.prototype.toggle=function(t){var n=this._container,i=this._handleWheel,r=this._enabled;return typeof t>"u"&&(t=!r),r!==t&&Ne[t?"bind":"unbind"](n,"wheel",i,!1),this._enabled=t,t},Ci.prototype._init=function(e){this.toggle(e)};const mb={__init__:["zoomScroll"],zoomScroll:["type",Ci]};function Ga(e){xr.call(this,e)}be(Ga,xr),Ga.prototype._navigationModules=[lb,fb,mb],Ga.prototype._modules=[].concat(xr.prototype._modules,Ga.prototype._navigationModules);function Tf(e){return e&&e[e.length-1]}function gb(e){return e.y}function yb(e){return e.x}var P2={left:yb,center:yb,right:function(e){return e.x+e.width},top:gb,middle:gb,bottom:function(e){return e.y+e.height}};function Fo(e,t){this._modeling=e,this._rules=t}Fo.$inject=["modeling","rules"],Fo.prototype._getOrientationDetails=function(e){var t=["top","bottom","middle"],n="x",i="width";return t.indexOf(e)!==-1&&(n="y",i="height"),{axis:n,dimension:i}},Fo.prototype._isType=function(e,t){return t.indexOf(e)!==-1},Fo.prototype._alignmentPosition=function(e,t){var n=this._getOrientationDetails(e),i=n.axis,r=n.dimension,o={},a={},s=!1,c,u,l;function p(f,d){return Math.round((f[i]+d[i]+d[r])/2)}if(this._isType(e,["left","top"]))o[e]=t[0][i];else if(this._isType(e,["right","bottom"]))l=Tf(t),o[e]=l[i]+l[r];else if(this._isType(e,["center","middle"])){if(F(t,function(f){var d=f[i]+Math.round(f[r]/2);a[d]?a[d].elements.push(f):a[d]={elements:[f],center:d}}),c=di(a,function(f){return f.elements.length>1&&(s=!0),f.elements.length}),s)return o[e]=Tf(c).center,o;u=t[0],t=di(t,function(f){return f[i]+f[r]}),l=Tf(t),o[e]=p(u,l)}return o},Fo.prototype.trigger=function(e,t){var n=this._modeling,i,r=Ye(e,function(c){return!(c.waypoints||c.host||c.labelTarget)});if(i=this._rules.allowed("elements.align",{elements:r}),De(i)&&(r=i),!(r.length<2||!i)){var o=P2[t],a=di(r,o),s=this._alignmentPosition(t,a);n.alignElements(a,s)}};const A2={__init__:["alignElements"],alignElements:["type",Fo]},T2=new Lo;function jo(e){this._scheduled={},e.on("diagram.destroy",()=>{Object.keys(this._scheduled).forEach(t=>{this.cancel(t)})})}jo.$inject=["eventBus"],jo.prototype.schedule=function(e,t=T2.next()){this.cancel(t);const n=this._schedule(e,t);return this._scheduled[t]=n,n.promise},jo.prototype._schedule=function(e,t){const n=M2();return{executionId:setTimeout(()=>{try{this._scheduled[t]=null;try{n.resolve(e())}catch(r){n.reject(r)}}catch(r){console.error("Scheduler#_schedule execution failed",r)}}),promise:n.promise}},jo.prototype.cancel=function(e){const t=this._scheduled[e];t&&(this._cancel(t),this._scheduled[e]=null)},jo.prototype._cancel=function(e){clearTimeout(e.executionId)};function M2(){const e={};return e.promise=new Promise((t,n)=>{e.resolve=t,e.reject=n}),e}const k2={scheduler:["type",jo]};var O2="djs-element-hidden",Qc=".entry",D2=1e3,vb=8,L2=300;function $t(e,t,n,i){this._canvas=e,this._elementRegistry=t,this._eventBus=n,this._scheduler=i,this._current=null,this._init()}$t.$inject=["canvas","elementRegistry","eventBus","scheduler"],$t.prototype._init=function(){var e=this;this._eventBus.on("selection.changed",function(t){var n=t.newSelection,i=n.length?n.length===1?n[0]:n:null;i?e.open(i,!0):e.close()}),this._eventBus.on("elements.changed",function(t){var n=t.elements,i=e._current;if(i){var r=i.target,o=De(r)?r:[r],a=o.filter(function(c){return n.includes(c)});if(a.length){e.close();var s=o.filter(function(c){return e._elementRegistry.get(c.id)});s.length&&e._updateAndOpen(s.length>1?s:s[0])}}}),this._eventBus.on("canvas.viewbox.changed",function(){e._updatePosition()}),this._eventBus.on("element.marker.update",function(t){if(e.isOpen()){var n=t.element,i=e._current,r=De(i.target)?i.target:[i.target];r.includes(n)&&e._updateVisibility()}}),this._container=this._createContainer()},$t.prototype._createContainer=function(){var e=bt('<div class="djs-context-pad-parent"></div>');return this._canvas.getContainer().appendChild(e),e},$t.prototype.registerProvider=function(e,t){t||(t=e,e=D2),this._eventBus.on("contextPad.getProviders",e,function(n){n.providers.push(t)})},$t.prototype.getEntries=function(e){var t=this._getProviders(),n=De(e)?"getMultiElementContextPadEntries":"getContextPadEntries",i={};return F(t,function(r){if(Zt(r[n])){var o=r[n](e);Zt(o)?i=o(i):F(o,function(a,s){i[s]=a})}}),i},$t.prototype.trigger=function(e,t,n){var i=this,r,o,a=t.delegateTarget||t.target;if(!a)return t.preventDefault();if(r=mn(a,"data-action"),o=t.originalEvent||t,e==="mouseover"){this._timeout=setTimeout(function(){i._mouseout=i.triggerEntry(r,"hover",o,n)},L2);return}else if(e==="mouseout"){clearTimeout(this._timeout),this._mouseout&&(this._mouseout(),this._mouseout=null);return}return this.triggerEntry(r,e,o,n)},$t.prototype.triggerEntry=function(e,t,n,i){if(this.isShown()){var r=this._current.target,o=this._current.entries,a=o[e];if(a){var s=a.action;if(this._eventBus.fire("contextPad.trigger",{entry:a,event:n})!==!1){if(Zt(s)){if(t==="click")return s(n,r,i)}else if(s[t])return s[t](n,r,i);n.preventDefault()}}}},$t.prototype.open=function(e,t){if(!(!t&&this.isOpen(e))){var n=this._eventBus.fire("contextPad.open.allowed",{target:e});n!==!1&&(this.close(),this._updateAndOpen(e))}},$t.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"contextPad.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},$t.prototype._updateAndOpen=function(e){var t=this.getEntries(e),n=this._createHtml(e),i;F(t,function(r,o){var a=r.group||"default",s=bt(r.html||'<div class="entry" draggable="true"></div>'),c;mn(s,"data-action",o),c=lt("[data-group="+za(a)+"]",n),c||(c=bt('<div class="group"></div>'),mn(c,"data-group",a),n.appendChild(c)),c.appendChild(s),r.className&&I2(s,r.className),r.title&&mn(s,"title",r.title),r.imageUrl&&(i=bt("<img>"),mn(i,"src",r.imageUrl),i.style.width="100%",i.style.height="100%",s.appendChild(i))}),wt(n).add("open"),this._current={entries:t,html:n,target:e},this._updatePosition(),this._updateVisibility(),this._eventBus.fire("contextPad.open",{current:this._current})},$t.prototype._createHtml=function(e){var t=this,n=bt('<div class="djs-context-pad"></div>');return On.bind(n,Qc,"click",function(i){t.trigger("click",i)}),On.bind(n,Qc,"dragstart",function(i){t.trigger("dragstart",i)}),On.bind(n,Qc,"mouseover",function(i){t.trigger("mouseover",i)}),On.bind(n,Qc,"mouseout",function(i){t.trigger("mouseout",i)}),Ne.bind(n,"mousedown",function(i){i.stopPropagation()}),this._container.appendChild(n),this._eventBus.fire("contextPad.create",{target:e,pad:n}),n},$t.prototype.getPad=function(e){console.warn(new Error("ContextPad#getPad is deprecated and will be removed in future library versions, cf. https://github.com/bpmn-io/diagram-js/pull/888"));let t;return this.isOpen()&&N2(this._current.target,e)?t=this._current.html:t=this._createHtml(e),{html:t}},$t.prototype.close=function(){this.isOpen()&&(clearTimeout(this._timeout),this._container.innerHTML="",this._eventBus.fire("contextPad.close",{current:this._current}),this._current=null)},$t.prototype.isOpen=function(e){var t=this._current;if(!t)return!1;if(!e)return!0;var n=t.target;return De(e)!==De(n)?!1:De(e)?e.length===n.length&&kr(e,function(i){return n.includes(i)}):n===e},$t.prototype.isShown=function(){return this.isOpen()&&wt(this._current.html).has("open")},$t.prototype.show=function(){this.isOpen()&&(wt(this._current.html).add("open"),this._updatePosition(),this._eventBus.fire("contextPad.show",{current:this._current}))},$t.prototype.hide=function(){this.isOpen()&&(wt(this._current.html).remove("open"),this._eventBus.fire("contextPad.hide",{current:this._current}))},$t.prototype._getPosition=function(e){if(!De(e)&&ft(e)){var t=this._canvas.viewbox(),n=B2(e),i=n.x*t.scale-t.x*t.scale,r=n.y*t.scale-t.y*t.scale;return{left:i+vb*this._canvas.zoom(),top:r}}var o=this._canvas.getContainer(),a=o.getBoundingClientRect(),s=this._getTargetBounds(e);return{left:s.right-a.left+vb*this._canvas.zoom(),top:s.top-a.top}},$t.prototype._updatePosition=function(){const e=()=>{if(this.isOpen()){var t=this._current.html,n=this._getPosition(this._current.target);"x"in n&&"y"in n?(t.style.left=n.x+"px",t.style.top=n.y+"px"):["top","right","bottom","left"].forEach(function(i){i in n&&(t.style[i]=n[i]+"px")})}};this._scheduler.schedule(e,"ContextPad#_updatePosition")},$t.prototype._updateVisibility=function(){const e=()=>{if(this.isOpen()){var t=this,n=this._current.target,i=De(n)?n:[n],r=i.some(function(o){return t._canvas.hasMarker(o,O2)});r?t.hide():t.show()}};this._scheduler.schedule(e,"ContextPad#_updateVisibility")},$t.prototype._getTargetBounds=function(e){var t=this,n=De(e)?e:[e],i=n.map(function(r){return t._canvas.getGraphics(r)});return i.reduce(function(r,o){const a=o.getBoundingClientRect();return r.top=Math.min(r.top,a.top),r.right=Math.max(r.right,a.right),r.bottom=Math.max(r.bottom,a.bottom),r.left=Math.min(r.left,a.left),r.x=r.left,r.y=r.top,r.width=r.right-r.left,r.height=r.bottom-r.top,r},{top:1/0,right:-1/0,bottom:-1/0,left:1/0})};function I2(e,t){var n=wt(e);t=De(t)?t:t.split(/\s+/g),t.forEach(function(i){n.add(i)})}function B2(e){return e.waypoints[e.waypoints.length-1]}function N2(e,t){return e=De(e)?e:[e],t=De(t)?t:[t],e.length===t.length&&kr(e,function(n){return t.includes(n)})}const bb={__depends__:[Ec,k2,Kc],contextPad:["type",$t]};var Jc,Rt,xb,_r,_b,wb,Eb,Mf,eu,Va,Sb,kf,Of,Df,tu={},nu=[],$2=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,iu=Array.isArray;function Wi(e,t){for(var n in t)e[n]=t[n];return e}function Lf(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function Rb(e,t,n){var i,r,o,a={};for(o in t)o=="key"?i=t[o]:o=="ref"?r=t[o]:a[o]=t[o];if(arguments.length>2&&(a.children=arguments.length>3?Jc.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(o in e.defaultProps)a[o]===void 0&&(a[o]=e.defaultProps[o]);return ru(e,a,i,r,null)}function ru(e,t,n,i,r){var o={type:e,props:t,key:n,ref:i,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:r??++xb,__i:-1,__u:0};return r==null&&Rt.vnode!=null&&Rt.vnode(o),o}function ou(e){return e.children}function au(e,t){this.props=e,this.context=t}function qr(e,t){if(t==null)return e.__?qr(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type=="function"?qr(e):null}function F2(e){if(e.__P&&e.__d){var t=e.__v,n=t.__e,i=[],r=[],o=Wi({},t);o.__v=t.__v+1,Rt.vnode&&Rt.vnode(o),If(e.__P,o,t,e.__n,e.__P.namespaceURI,32&t.__u?[n]:null,i,n??qr(t),!!(32&t.__u),r),o.__v=t.__v,o.__.__k[o.__i]=o,Db(i,o,r),t.__e=t.__=null,o.__e!=n&&Cb(o)}}function Cb(e){if((e=e.__)!=null&&e.__c!=null)return e.__e=e.__c.base=null,e.__k.some(function(t){if(t!=null&&t.__e!=null)return e.__e=e.__c.base=t.__e}),Cb(e)}function Pb(e){(!e.__d&&(e.__d=!0)&&_r.push(e)&&!su.__r++||_b!=Rt.debounceRendering)&&((_b=Rt.debounceRendering)||wb)(su)}function su(){try{for(var e,t=1;_r.length;)_r.length>t&&_r.sort(Eb),e=_r.shift(),t=_r.length,F2(e)}finally{_r.length=su.__r=0}}function Ab(e,t,n,i,r,o,a,s,c,u,l){var p,f,d,m,h,y,g=i&&i.__k||nu,v=t.length;for(c=j2(n,t,g,c,v),p=0;p<v;p++)(d=n.__k[p])!=null&&(f=d.__i!=-1&&g[d.__i]||tu,d.__i=p,y=If(e,d,f,r,o,a,s,c,u,l),m=d.__e,d.ref&&f.ref!=d.ref&&(f.ref&&Bf(f.ref,null,d),l.push(d.ref,d.__c||m,d)),h==null&&m!=null&&(h=m),4&d.__u?(c=Tb(d,c,e),f.__e&&(f.__e=null)):typeof d.type=="function"&&y!==void 0?c=y:m&&(c=m.nextSibling),d.__u&=-7);return n.__e=h,c}function j2(e,t,n,i,r){var o,a,s,c,u,l=n.length,p=l,f=0;for(e.__k=new Array(r),o=0;o<r;o++)(a=t[o])!=null&&typeof a!="boolean"&&typeof a!="function"?(typeof a=="string"||typeof a=="number"||typeof a=="bigint"||a.constructor==String?a=e.__k[o]=ru(null,a,null,null,null):iu(a)?a=e.__k[o]=ru(ou,{children:a},null,null,null):a.constructor===void 0&&a.__b>0?a=e.__k[o]=ru(a.type,a.props,a.key,a.ref?a.ref:null,a.__v):e.__k[o]=a,c=o+f,a.__=e,a.__b=e.__b+1,s=null,(u=a.__i=H2(a,n,c,p))!=-1&&(p--,(s=n[u])&&(s.__u|=2)),s==null||s.__v==null?(u==-1&&(r>l?f--:r<l&&f++),typeof a.type!="function"&&(a.__u|=4)):u!=c&&(u==c-1?f--:u==c+1?f++:(u>c?f--:f++,a.__u|=4))):e.__k[o]=null;if(p)for(o=0;o<l;o++)(s=n[o])!=null&&(2&s.__u)==0&&(s.__e==i&&(i=qr(s)),Ib(s,s));return i}function Tb(e,t,n){var i,r;if(typeof e.type=="function"){for(i=e.__k,r=0;i&&r<i.length;r++)i[r]&&(i[r].__=e,t=Tb(i[r],t,n));return t}e.__e!=t&&(t&&e.type&&!t.parentNode&&(t=qr(e)),t=n.insertBefore(e.__e,t||null));do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function H2(e,t,n,i){var r,o,a,s=e.key,c=e.type,u=t[n],l=u!=null&&(2&u.__u)==0;if(u===null&&s==null||l&&s==u.key&&c==u.type)return n;if(i>(l?1:0)){for(r=n-1,o=n+1;r>=0||o<t.length;)if((u=t[a=r>=0?r--:o++])!=null&&(2&u.__u)==0&&s==u.key&&c==u.type)return a}return-1}function Mb(e,t,n){t[0]=="-"?e.setProperty(t,n??""):e[t]=n==null?"":typeof n!="number"||$2.test(t)?n:n+"px"}function cu(e,t,n,i,r){var o,a;e:if(t=="style")if(typeof n=="string")e.style.cssText=n;else{if(typeof i=="string"&&(e.style.cssText=i=""),i)for(t in i)n&&t in n||Mb(e.style,t,"");if(n)for(t in n)i&&n[t]==i[t]||Mb(e.style,t,n[t])}else if(t[0]=="o"&&t[1]=="n")o=t!=(t=t.replace(Sb,"$1")),a=t.toLowerCase(),t=a in e||t=="onFocusOut"||t=="onFocusIn"?a.slice(2):t.slice(2),e.l||(e.l={}),e.l[t+o]=n,n?i?n[Va]=i[Va]:(n[Va]=kf,e.addEventListener(t,o?Df:Of,o)):e.removeEventListener(t,o?Df:Of,o);else{if(r=="http://www.w3.org/2000/svg")t=t.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(t!="width"&&t!="height"&&t!="href"&&t!="list"&&t!="form"&&t!="tabIndex"&&t!="download"&&t!="rowSpan"&&t!="colSpan"&&t!="role"&&t!="popover"&&t in e)try{e[t]=n??"";break e}catch{}typeof n=="function"||(n==null||n===!1&&t[4]!="-"?e.removeAttribute(t):e.setAttribute(t,t=="popover"&&n==1?"":n))}}function kb(e){return function(t){if(this.l){var n=this.l[t.type+e];if(t[eu]==null)t[eu]=kf++;else if(t[eu]<n[Va])return;return n(Rt.event?Rt.event(t):t)}}}function If(e,t,n,i,r,o,a,s,c,u){var l,p,f,d,m,h,y,g,v,b,x,C,T,k,A,I,D=t.type;if(t.constructor!==void 0)return null;128&n.__u&&(c=!!(32&n.__u),o=[s=t.__e=n.__e]),(l=Rt.__b)&&l(t);e:if(typeof D=="function"){p=a.length;try{if(v=t.props,b=D.prototype&&D.prototype.render,x=(l=D.contextType)&&i[l.__c],C=l?x?x.props.value:l.__:i,n.__c?g=(f=t.__c=n.__c).__=f.__E:(b?t.__c=f=new D(v,C):(t.__c=f=new au(v,C),f.constructor=D,f.render=G2),x&&x.sub(f),f.state||(f.state={}),f.__n=i,d=f.__d=!0,f.__h=[],f._sb=[]),b&&f.__s==null&&(f.__s=f.state),b&&D.getDerivedStateFromProps!=null&&(f.__s==f.state&&(f.__s=Wi({},f.__s)),Wi(f.__s,D.getDerivedStateFromProps(v,f.__s))),m=f.props,h=f.state,f.__v=t,d)b&&D.getDerivedStateFromProps==null&&f.componentWillMount!=null&&f.componentWillMount(),b&&f.componentDidMount!=null&&f.__h.push(f.componentDidMount);else{if(b&&D.getDerivedStateFromProps==null&&v!==m&&f.componentWillReceiveProps!=null&&f.componentWillReceiveProps(v,C),t.__v==n.__v||!f.__e&&f.shouldComponentUpdate!=null&&f.shouldComponentUpdate(v,f.__s,C)===!1){t.__v!=n.__v&&(f.props=v,f.state=f.__s,f.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(L){L&&(L.__=t)}),nu.push.apply(f.__h,f._sb),f._sb=[],f.__h.length&&a.push(f),s=qr(n);break e}f.componentWillUpdate!=null&&f.componentWillUpdate(v,f.__s,C),b&&f.componentDidUpdate!=null&&f.__h.push(function(){f.componentDidUpdate(m,h,y)})}if(f.context=C,f.props=v,f.__P=e,f.__e=!1,T=Rt.__r,k=0,b)f.state=f.__s,f.__d=!1,T&&T(t),l=f.render(f.props,f.state,f.context),nu.push.apply(f.__h,f._sb),f._sb=[];else do f.__d=!1,T&&T(t),l=f.render(f.props,f.state,f.context),f.state=f.__s;while(f.__d&&++k<25);f.state=f.__s,f.getChildContext!=null&&(i=Wi(Wi({},i),f.getChildContext())),b&&!d&&f.getSnapshotBeforeUpdate!=null&&(y=f.getSnapshotBeforeUpdate(m,h)),A=l!=null&&l.type===ou&&l.key==null?Lb(l.props.children):l,s=Ab(e,iu(A)?A:[A],t,n,i,r,o,a,s,c,u),f.base=t.__e,t.__u&=-161,f.__h.length&&a.push(f),g&&(f.__E=f.__=null)}catch(L){if(a.length=p,t.__v=null,c||o!=null){if(L.then){for(t.__u|=c?160:128;s&&s.nodeType==8&&s.nextSibling;)s=s.nextSibling;o!=null&&(o[o.indexOf(s)]=null),t.__e=s}else if(o!=null)for(I=o.length;I--;)Lf(o[I])}else t.__e=n.__e;t.__k==null&&(t.__k=n.__k||[]),L.then||Ob(t),Rt.__e(L,t,n)}}else o==null&&t.__v==n.__v?(t.__k=n.__k,t.__e=n.__e):s=t.__e=z2(n.__e,t,n,i,r,o,a,c,u);return(l=Rt.diffed)&&l(t),128&t.__u?void 0:s}function Ob(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some(Ob))}function Db(e,t,n){for(var i=0;i<n.length;i++)Bf(n[i],n[++i],n[++i]);Rt.__c&&Rt.__c(t,e),e.some(function(r){try{e=r.__h,r.__h=[],e.some(function(o){o.call(r)})}catch(o){Rt.__e(o,r.__v)}})}function Lb(e){return typeof e!="object"||e==null||e.__b>0?e:iu(e)?e.map(Lb):e.constructor!==void 0?null:Wi({},e)}function z2(e,t,n,i,r,o,a,s,c){var u,l,p,f,d,m,h,y=n.props||tu,g=t.props,v=t.type;if(v=="svg"?r="http://www.w3.org/2000/svg":v=="math"?r="http://www.w3.org/1998/Math/MathML":r||(r="http://www.w3.org/1999/xhtml"),o!=null){for(u=0;u<o.length;u++)if((d=o[u])&&"setAttribute"in d==!!v&&(v?d.localName==v:d.nodeType==3)){e=d,o[u]=null;break}}if(e==null){if(v==null)return document.createTextNode(g);e=document.createElementNS(r,v,g.is&&g),s&&(Rt.__m&&Rt.__m(t,o),s=!1),o=null}if(v==null)y===g||s&&e.data==g||(e.data=g);else{if(o=v=="textarea"&&g.defaultValue!=null?null:o&&Jc.call(e.childNodes),!s&&o!=null)for(y={},u=0;u<e.attributes.length;u++)y[(d=e.attributes[u]).name]=d.value;for(u in y)d=y[u],u=="dangerouslySetInnerHTML"?p=d:u=="children"||u in g||u=="value"&&"defaultValue"in g||u=="checked"&&"defaultChecked"in g||cu(e,u,null,d,r);for(u in g)d=g[u],u=="children"?f=d:u=="dangerouslySetInnerHTML"?l=d:u=="value"?m=d:u=="checked"?h=d:s&&typeof d!="function"||y[u]===d||cu(e,u,d,y[u],r);if(l)s||p&&(l.__html==p.__html||l.__html==e.innerHTML)||(e.innerHTML=l.__html),t.__k=[];else if(p&&(e.innerHTML=""),Ab(t.type=="template"?e.content:e,iu(f)?f:[f],t,n,i,v=="foreignObject"?"http://www.w3.org/1999/xhtml":r,o,a,o?o[0]:n.__k&&qr(n,0),s,c),o!=null)for(u=o.length;u--;)Lf(o[u]);s&&v!="textarea"||(u="value",v=="progress"&&m==null?e.removeAttribute("value"):m!=null&&(m!==e[u]||v=="progress"&&!m||v=="option"&&m!=y[u])&&cu(e,u,m,y[u],r),u="checked",h!=null&&h!=e[u]&&cu(e,u,h,y[u],r))}return e}function Bf(e,t,n){try{if(typeof e=="function"){var i=typeof e.__u=="function";i&&e.__u(),i&&t==null||(e.__u=e(t))}else e.current=t}catch(r){Rt.__e(r,n)}}function Ib(e,t,n){var i,r;if(Rt.unmount&&Rt.unmount(e),(i=e.ref)&&(i.current&&i.current!=e.__e||Bf(i,null,t)),(i=e.__c)!=null){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(o){Rt.__e(o,t)}i.base=i.__P=i.__n=null}if(i=e.__k)for(r=0;r<i.length;r++)i[r]&&Ib(i[r],t,n||typeof e.type!="function");n||Lf(e.__e),e.__c=e.__=e.__e=void 0}function G2(e,t,n){return this.constructor(e,n)}function Bb(e,t,n){var i,r,o,a;t==document&&(t=document.documentElement),Rt.__&&Rt.__(e,t),r=(i=!1)?null:t.__k,o=[],a=[],If(t,e=t.__k=Rb(ou,null,[e]),r||tu,tu,t.namespaceURI,r?null:t.firstChild?Jc.call(t.childNodes):null,o,r?r.__e:t.firstChild,i,a),Db(o,e,a),e.props.children=null}Jc=nu.slice,Rt={__e:function(e,t,n,i){for(var r,o,a;t=t.__;)if((r=t.__c)&&!r.__)try{if((o=r.constructor)&&o.getDerivedStateFromError!=null&&(r.setState(o.getDerivedStateFromError(e)),a=r.__d),r.componentDidCatch!=null&&(r.componentDidCatch(e,i||{}),a=r.__d),a)return r.__E=r}catch(s){e=s}throw e}},xb=0,au.prototype.setState=function(e,t){var n;n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=Wi({},this.state),typeof e=="function"&&(e=e(Wi({},n),this.props)),e&&Wi(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),Pb(this))},au.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),Pb(this))},au.prototype.render=ou,_r=[],wb=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Eb=function(e,t){return e.__v.__b-t.__v.__b},su.__r=0,Mf=Math.random().toString(8),eu="__d"+Mf,Va="__a"+Mf,Sb=/(PointerCapture)$|Capture$/i,kf=0,Of=kb(!1),Df=kb(!0);var Nb=function(e,t,n,i){var r;t[0]=0;for(var o=1;o<t.length;o++){var a=t[o++],s=t[o]?(t[0]|=a?1:2,n[t[o++]]):t[++o];a===3?i[0]=s:a===4?i[1]=Object.assign(i[1]||{},s):a===5?(i[1]=i[1]||{})[t[++o]]=s:a===6?i[1][t[++o]]+=s+"":a?(r=e.apply(s,Nb(e,s,n,["",null])),i.push(r),s[0]?t[0]|=2:(t[o-2]=0,t[o]=r)):i.push(s)}return i},$b=new Map;function V2(e){var t=$b.get(this);return t||(t=new Map,$b.set(this,t)),(t=Nb(this,t.get(e)||(t.set(e,t=(function(n){for(var i,r,o=1,a="",s="",c=[0],u=function(f){o===1&&(f||(a=a.replace(/^\s*\n\s*|\s*\n\s*$/g,"")))?c.push(0,f,a):o===3&&(f||a)?(c.push(3,f,a),o=2):o===2&&a==="..."&&f?c.push(4,f,0):o===2&&a&&!f?c.push(5,0,!0,a):o>=5&&((a||!f&&o===5)&&(c.push(o,0,a,r),o=6),f&&(c.push(o,f,0,r),o=6)),a=""},l=0;l<n.length;l++){l&&(o===1&&u(),u(l));for(var p=0;p<n[l].length;p++)i=n[l][p],o===1?i==="<"?(u(),c=[c],o=3):a+=i:o===4?a==="--"&&i===">"?(o=1,a=""):a=i+a[0]:s?i===s?s="":a+=i:i==='"'||i==="'"?s=i:i===">"?(u(),o=1):o&&(i==="="?(o=5,r=a,a=""):i==="/"&&(o<5||n[l][p+1]===">")?(u(),o===3&&(c=c[0]),o=c,(c=c[0]).push(2,0,o),o=0):i===" "||i===" "||i===`
|
|
11
|
+
`||i==="\r"?(u(),o=2):a+=i),o===3&&a==="!--"&&(o=4,c=c[0])}return u(),c})(e)),t),arguments,[])).length>1?t:t[0]}var ht=V2.bind(Rb),Ho,Ft,Nf,Fb,Wa=0,jb=[],Kt=Rt,Hb=Kt.__b,zb=Kt.__r,Gb=Kt.diffed,Vb=Kt.__c,Wb=Kt.unmount,Ub=Kt.__;function uu(e,t){Kt.__h&&Kt.__h(Ft,e,Wa||t),Wa=0;var n=Ft.__H||(Ft.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({}),n.__[e]}function $f(e){return Wa=1,W2(qb,e)}function W2(e,t,n){var i=uu(Ho++,2);if(i.t=e,!i.__c&&(i.__=[qb(void 0,t),function(s){var c=i.__N?i.__N[0]:i.__[0],u=i.t(c,s);c!==u&&(i.__N=[u,i.__[1]],i.__c.setState({}))}],i.__c=Ft,!Ft.__f)){var r=function(s,c,u){if(!i.__c.__H)return!0;var l=!1,p=i.__c.props!==s;if(i.__c.__H.__.some(function(d){if(d.__N){l=!0;var m=d.__[0];d.__=d.__N,d.__N=void 0,m!==d.__[0]&&(p=!0)}}),o){var f=o.call(this,s,c,u);return l?f||p:f}return!l||p};Ft.__f=!0;var o=Ft.shouldComponentUpdate,a=Ft.componentWillUpdate;Ft.componentWillUpdate=function(s,c,u){if(this.__e){var l=o;o=void 0,r(s,c,u),o=l}a&&a.call(this,s,c,u)},Ft.shouldComponentUpdate=r}return i.__N||i.__}function lu(e,t){var n=uu(Ho++,3);!Kt.__s&&Hf(n.__H,t)&&(n.__=e,n.u=t,Ft.__H.__h.push(n))}function Ff(e,t){var n=uu(Ho++,4);!Kt.__s&&Hf(n.__H,t)&&(n.__=e,n.u=t,Ft.__h.push(n))}function pu(e){return Wa=5,Ui(function(){return{current:e}},[])}function Ui(e,t){var n=uu(Ho++,7);return Hf(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function Ua(e,t){return Wa=8,Ui(function(){return e},t)}function U2(){for(var e;e=jb.shift();){var t=e.__H;if(e.__P&&t)try{t.__h.some(fu),t.__h.some(jf),t.__h=[]}catch(n){t.__h=[],Kt.__e(n,e.__v)}}}Kt.__b=function(e){Ft=null,Hb&&Hb(e)},Kt.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),Ub&&Ub(e,t)},Kt.__r=function(e){zb&&zb(e),Ho=0;var t=(Ft=e.__c).__H;t&&(Nf===Ft?(t.__h=[],Ft.__h=[],t.__.some(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(t.__h.some(fu),t.__h.some(jf),t.__h=[],Ho=0)),Nf=Ft},Kt.diffed=function(e){Gb&&Gb(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(jb.push(t)!==1&&Fb===Kt.requestAnimationFrame||((Fb=Kt.requestAnimationFrame)||Y2)(U2)),t.__H.__.some(function(n){n.u&&(n.__H=n.u,n.u=void 0)})),Nf=Ft=null},Kt.__c=function(e,t){t.some(function(n){try{n.__h.some(fu),n.__h=n.__h.filter(function(i){return!i.__||jf(i)})}catch(i){t.some(function(r){r.__h&&(r.__h=[])}),t=[],Kt.__e(i,n.__v)}}),Vb&&Vb(e,t)},Kt.unmount=function(e){Wb&&Wb(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.some(function(i){try{fu(i)}catch(r){t=r}}),n.__H=void 0,t&&Kt.__e(t,n.__v))};var Yb=typeof requestAnimationFrame=="function";function Y2(e){var t,n=function(){clearTimeout(i),Yb&&cancelAnimationFrame(t),setTimeout(e)},i=setTimeout(n,35);Yb&&(t=requestAnimationFrame(n))}function fu(e){var t=Ft,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Ft=t}function jf(e){var t=Ft;e.__c=e.__(),Ft=t}function Hf(e,t){return!e||e.length!==t.length||t.some(function(n,i){return n!==e[i]})}function qb(e,t){return typeof t=="function"?t(e):t}function q2(e){const{navigationStack:t,setNavigationStack:n}=e,i=Ui(()=>t.length<=1?[]:t.slice(0,-1).map((a,s)=>({label:a.label,onClick:()=>n(c=>c.slice(0,s+1))})),[t,n]),r=t.length>0?()=>n([]):null,o=t.length>0?t[t.length-1].label:null;return ht`
|
|
12
12
|
<div class="djs-popup-breadcrumbs">
|
|
13
|
-
${r&&
|
|
13
|
+
${r&&ht`
|
|
14
14
|
<button
|
|
15
15
|
type="button"
|
|
16
16
|
class="djs-popup-breadcrumbs-item djs-popup-breadcrumbs-item--back"
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
</svg>
|
|
24
24
|
</button>
|
|
25
25
|
`}
|
|
26
|
-
${i.map((a,s)=>
|
|
26
|
+
${i.map((a,s)=>ht`
|
|
27
27
|
<button
|
|
28
28
|
key=${s}
|
|
29
29
|
type="button"
|
|
@@ -35,22 +35,22 @@
|
|
|
35
35
|
</button>
|
|
36
36
|
<span class="djs-popup-breadcrumbs-item--separator" aria-hidden="true"></span>
|
|
37
37
|
`)}
|
|
38
|
-
${o&&
|
|
38
|
+
${o&&ht`
|
|
39
39
|
<span class="djs-popup-breadcrumbs-item djs-popup-breadcrumbs-item--current" title=${o}>
|
|
40
40
|
${o}
|
|
41
41
|
</span>
|
|
42
42
|
`}
|
|
43
43
|
</div>
|
|
44
|
-
`}function
|
|
44
|
+
`}function Kb(e){var t,n,i="";if(typeof e=="string"||typeof e=="number")i+=e;else if(typeof e=="object")if(Array.isArray(e)){var r=e.length;for(t=0;t<r;t++)e[t]&&(n=Kb(e[t]))&&(i&&(i+=" "),i+=n)}else for(n in e)e[n]&&(i&&(i+=" "),i+=n);return i}function du(){for(var e,t,n=0,i="",r=arguments.length;n<r;n++)(e=arguments[n])&&(t=Kb(e))&&(i&&(i+=" "),i+=t);return i}function K2(e){const{headerEntries:t,onSelect:n,selectedEntry:i,setSelectedEntry:r,title:o}=e,a=Ui(()=>X2(t),[t]),s=u=>u.action&&!u.disabled,c=(u,l)=>{if(s(l))return n(u,l)};return ht`
|
|
45
45
|
<div class="djs-popup-header">
|
|
46
46
|
<h3 class="djs-popup-title" title=${o}>${o}</h3>
|
|
47
|
-
${a.map(u=>
|
|
47
|
+
${a.map(u=>ht`
|
|
48
48
|
<ul key=${u.id} class="djs-popup-header-group" data-header-group=${u.id}>
|
|
49
49
|
|
|
50
|
-
${u.entries.map(l=>
|
|
50
|
+
${u.entries.map(l=>ht`
|
|
51
51
|
<li key=${l.id}>
|
|
52
52
|
<${s(l)?"button":"span"}
|
|
53
|
-
class=${
|
|
53
|
+
class=${Z2(l,l===i)}
|
|
54
54
|
onClick=${p=>c(p,l)}
|
|
55
55
|
title=${l.title||l.label}
|
|
56
56
|
data-id=${l.id}
|
|
@@ -60,8 +60,8 @@
|
|
|
60
60
|
onFocus=${()=>s(l)&&r(l)}
|
|
61
61
|
onBlur=${()=>s(l)&&r(null)}
|
|
62
62
|
>
|
|
63
|
-
${l.imageUrl&&
|
|
64
|
-
${l.label?
|
|
63
|
+
${l.imageUrl&&ht`<img class="djs-popup-entry-icon" src=${l.imageUrl} alt="" />`||l.imageHtml&&ht`<div class="djs-popup-entry-icon" dangerouslySetInnerHTML=${{__html:l.imageHtml}} />`}
|
|
64
|
+
${l.label?ht`
|
|
65
65
|
<span class="djs-popup-label">${l.label}</span>
|
|
66
66
|
`:null}
|
|
67
67
|
</${l.action?"button":"span"}>
|
|
@@ -70,11 +70,11 @@
|
|
|
70
70
|
</ul>
|
|
71
71
|
`)}
|
|
72
72
|
</div>
|
|
73
|
-
`}function
|
|
73
|
+
`}function X2(e){return e.reduce((t,n)=>{const i=n.group||"default",r=t.find(o=>o.id===i);return r?r.entries.push(n):t.push({id:i,entries:[n]}),t},[])}function Z2(e,t){return du("entry",e.className,e.active?"active":"",e.disabled?"disabled":"",t?"selected":"")}function Xb(e,t){return`${e}-entry-${t.id}`}function Q2(e){const{idPrefix:t,entry:n,selected:i,onMouseEnter:r,onMouseLeave:o,onAction:a}=e,s=(u,l)=>{if(!n.disabled)return a(u,n,l)},c=!n.entries;return ht`
|
|
74
74
|
<li
|
|
75
|
-
class=${
|
|
75
|
+
class=${du("entry",{selected:i,disabled:n.disabled})}
|
|
76
76
|
data-id=${n.id}
|
|
77
|
-
id=${
|
|
77
|
+
id=${Xb(t,n)}
|
|
78
78
|
role="option"
|
|
79
79
|
aria-selected=${i||void 0}
|
|
80
80
|
aria-haspopup=${n.entries?"true":void 0}
|
|
@@ -88,17 +88,17 @@
|
|
|
88
88
|
>
|
|
89
89
|
<div class="djs-popup-entry-content">
|
|
90
90
|
<span
|
|
91
|
-
class=${
|
|
91
|
+
class=${du("djs-popup-entry-name",n.className)}
|
|
92
92
|
>
|
|
93
|
-
${n.imageUrl&&
|
|
93
|
+
${n.imageUrl&&ht`<img class="djs-popup-entry-icon" src=${n.imageUrl} alt="" />`||n.imageHtml&&ht`<div class="djs-popup-entry-icon" dangerouslySetInnerHTML=${{__html:n.imageHtml}} />`}
|
|
94
94
|
|
|
95
|
-
${n.label?
|
|
95
|
+
${n.label?ht`
|
|
96
96
|
<span class="djs-popup-label">
|
|
97
97
|
${n.label}
|
|
98
98
|
</span>
|
|
99
99
|
`:null}
|
|
100
100
|
|
|
101
|
-
${n.documentationRef&&
|
|
101
|
+
${n.documentationRef&&ht`
|
|
102
102
|
<a
|
|
103
103
|
class="djs-popup-entry-docs"
|
|
104
104
|
href=${n.documentationRef}
|
|
@@ -115,7 +115,7 @@
|
|
|
115
115
|
</a>
|
|
116
116
|
`}
|
|
117
117
|
</span>
|
|
118
|
-
${n.description&&
|
|
118
|
+
${n.description&&ht`
|
|
119
119
|
<span
|
|
120
120
|
class="djs-popup-entry-description"
|
|
121
121
|
>
|
|
@@ -123,7 +123,7 @@
|
|
|
123
123
|
</span>
|
|
124
124
|
`}
|
|
125
125
|
</div>
|
|
126
|
-
${n.entries&&
|
|
126
|
+
${n.entries&&ht`
|
|
127
127
|
<div class="djs-popup-entry-chevron" aria-hidden="true">
|
|
128
128
|
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
129
129
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M3.96967 1.46967C4.26256 1.17678 4.73744 1.17678 5.03033 1.46967L9.03033 5.46967C9.32322 5.76256 9.32322 6.23744 9.03033 6.53033L5.03033 10.5303C4.73744 10.8232 4.26256 10.8232 3.96967 10.5303C3.67678 10.2374 3.67678 9.76256 3.96967 9.46967L7.43934 6L3.96967 2.53033C3.67678 2.23744 3.67678 1.76256 3.96967 1.46967Z" fill="currentColor"/>
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
</div>
|
|
132
132
|
`}
|
|
133
133
|
</li>
|
|
134
|
-
`}function
|
|
134
|
+
`}function J2(e){const{selectedEntry:t,setSelectedEntry:n,groupedEntries:i,keyboardSelection:r,idPrefix:o,id:a,ariaLabel:s,tabIndex:c,ariaActivedescendant:u,...l}=e,p=pu();Ff(()=>{if(!r||!r.current)return;const h=p.current;if(!h)return;const y=h.querySelector(".selected");y&&ek(y)},[t]);const f=()=>{r.current=!1},d=h=>{r.current||n(h)},m=()=>{r.current||n(null)};return ht`
|
|
135
135
|
<div
|
|
136
136
|
class="djs-popup-results"
|
|
137
137
|
ref=${p}
|
|
@@ -142,9 +142,9 @@
|
|
|
142
142
|
aria-activedescendant=${u}
|
|
143
143
|
onMouseMove=${f}
|
|
144
144
|
>
|
|
145
|
-
${i.map(h=>
|
|
146
|
-
${h.name&&
|
|
147
|
-
<div key=${h.id} id=${
|
|
145
|
+
${i.map(h=>ht`
|
|
146
|
+
${h.name&&ht`
|
|
147
|
+
<div key=${h.id} id=${Zb(o,h)} class="entry-header" title=${h.name}>
|
|
148
148
|
${h.name}
|
|
149
149
|
</div>
|
|
150
150
|
`}
|
|
@@ -152,10 +152,10 @@
|
|
|
152
152
|
class="djs-popup-group"
|
|
153
153
|
data-group=${h.id}
|
|
154
154
|
role="group"
|
|
155
|
-
aria-labelledby=${h.name?
|
|
155
|
+
aria-labelledby=${h.name?Zb(o,h):void 0}
|
|
156
156
|
>
|
|
157
|
-
${h.entries.map(y=>
|
|
158
|
-
<${
|
|
157
|
+
${h.entries.map(y=>ht`
|
|
158
|
+
<${Q2}
|
|
159
159
|
key=${y.id}
|
|
160
160
|
idPrefix=${o}
|
|
161
161
|
entry=${y}
|
|
@@ -168,8 +168,8 @@
|
|
|
168
168
|
</ul>
|
|
169
169
|
`)}
|
|
170
170
|
</div>
|
|
171
|
-
`}function
|
|
172
|
-
<${
|
|
171
|
+
`}function Zb(e,t){return`${e}-group-${t.id}`}function ek(e){typeof e.scrollIntoViewIfNeeded=="function"?e.scrollIntoViewIfNeeded():e.scrollIntoView({scrollMode:"if-needed",block:"nearest"})}const tk=new Lo("djs-popup");function nk(e){const{onClose:t,onSelect:n,className:i,headerEntries:r,position:o,title:a,width:s,scale:c,search:u,emptyPlaceholder:l,searchFn:p,entries:f,onOpened:d,onClosed:m}=e,[h,y]=$f([]);lu(()=>{y([])},[f]);const[g,v]=$f(""),b=g.trim().length>0,x=Ui(()=>ok(f),[f]),C=Ui(()=>Wt(u)?x.length>5:!1,[u,x]),T=Ui(()=>{const W=h.length?h[h.length-1].entries:f;return C?b?p(x.filter(({searchable:Y})=>Y!==!1),g,{keys:["label","search","description"]}).map(({item:Y})=>Y):W.filter(({rank:Y=0})=>Y>=0):W},[C,b,x,g,p,h,f]),k=Ui(()=>b?T.length?[{id:"default",entries:T}]:[]:ak(T),[T,b]),[A,I]=$f(T[0]),D=pu(null),L=pu(!1),z=Ui(()=>tk.next(),[]),ne=`${z}-results`,me=A&&Xb(z,A);lu(()=>{const W=D.current;W&&T.includes(W)?I(W):I(T[0]),D.current=null},[T]);const Ue=Ua(W=>{const Y=rk(k);let Ce=Y.indexOf(A)+W;Ce<0&&(Ce=Y.length-1),Ce>=Y.length&&(Ce=0),L.current=!0,I(Y[Ce])},[k,A]),je=Ua(W=>{W>0&&A&&A.entries&&(L.current=!0,y(Y=>[...Y,A])),W<0&&h.length>0&&(L.current=!0,D.current=h[h.length+W],y(Y=>Y.slice(0,W)))},[A,h]),q=Ua((W,Y,ee)=>{if(!(!Y||Y.disabled))return Y.entries?(W.preventDefault(),je(1)):n(W,Y,ee)},[n,je]),le=Ua(W=>{if(W.key==="Enter"&&A){const Y=W.target;return!!Ir(Y,"a, button",!0)||A.disabled?void 0:q(W,A)}if(W.key==="Backspace"){const Y=W.target;if(!(El(Y,"input")&&Y.value!==""))return je(-1),W.preventDefault()}if(W.key==="ArrowUp")return Ue(-1),W.preventDefault();if(W.key==="ArrowDown")return Ue(1),W.preventDefault();if(W.key==="ArrowRight")return je(1),W.preventDefault();if(W.key==="ArrowLeft")return je(-1),W.preventDefault()},[A,Ue,je,q]),ae=Ua(W=>{El(W.target,"input")&&v(()=>W.target.value)},[v]);lu(()=>(d(),()=>{m()}),[]);const ge=!b&&h.length>0,Ae=(a||r.length>0)&&!ge;return ht`
|
|
172
|
+
<${Qb}
|
|
173
173
|
onClose=${t}
|
|
174
174
|
onKeyup=${ae}
|
|
175
175
|
onKeydown=${le}
|
|
@@ -179,8 +179,8 @@
|
|
|
179
179
|
scale=${c}
|
|
180
180
|
navigationStack=${h}
|
|
181
181
|
>
|
|
182
|
-
${
|
|
183
|
-
<${
|
|
182
|
+
${Ae&&ht`
|
|
183
|
+
<${K2}
|
|
184
184
|
headerEntries=${r}
|
|
185
185
|
onSelect=${n}
|
|
186
186
|
selectedEntry=${A}
|
|
@@ -188,16 +188,16 @@
|
|
|
188
188
|
title=${a}
|
|
189
189
|
/>
|
|
190
190
|
`}
|
|
191
|
-
${
|
|
192
|
-
<${
|
|
191
|
+
${ge&&ht`
|
|
192
|
+
<${q2}
|
|
193
193
|
navigationStack=${h}
|
|
194
194
|
setNavigationStack=${y}
|
|
195
195
|
/>
|
|
196
196
|
`}
|
|
197
|
-
${f.length>0&&
|
|
197
|
+
${f.length>0&&ht`
|
|
198
198
|
<div class="djs-popup-body">
|
|
199
199
|
|
|
200
|
-
${C&&
|
|
200
|
+
${C&&ht`
|
|
201
201
|
<div class="djs-popup-search">
|
|
202
202
|
<svg class="djs-popup-search-icon" width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
203
203
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M9.0325 8.5H9.625L13.3675 12.25L12.25 13.3675L8.5 9.625V9.0325L8.2975 8.8225C7.4425 9.5575 6.3325 10 5.125 10C2.4325 10 0.25 7.8175 0.25 5.125C0.25 2.4325 2.4325 0.25 5.125 0.25C7.8175 0.25 10 2.4325 10 5.125C10 6.3325 9.5575 7.4425 8.8225 8.2975L9.0325 8.5ZM1.75 5.125C1.75 6.9925 3.2575 8.5 5.125 8.5C6.9925 8.5 8.5 6.9925 8.5 5.125C8.5 3.2575 6.9925 1.75 5.125 1.75C3.2575 1.75 1.75 3.2575 1.75 5.125Z" fill="#22242A"/>
|
|
@@ -208,33 +208,33 @@
|
|
|
208
208
|
role="combobox"
|
|
209
209
|
aria-label="${a||"Search"}"
|
|
210
210
|
aria-expanded="true"
|
|
211
|
-
aria-controls=${
|
|
212
|
-
aria-activedescendant=${
|
|
211
|
+
aria-controls=${ne}
|
|
212
|
+
aria-activedescendant=${me||void 0}
|
|
213
213
|
aria-autocomplete="list"
|
|
214
214
|
/>
|
|
215
215
|
</div>
|
|
216
216
|
`}
|
|
217
217
|
|
|
218
|
-
${b&&
|
|
218
|
+
${b&&ht`
|
|
219
219
|
<div class="djs-popup-search-count" aria-live="polite">
|
|
220
220
|
${T.length} ${T.length===1?"result":"results"} found
|
|
221
221
|
</div>
|
|
222
222
|
`}
|
|
223
223
|
|
|
224
|
-
<${
|
|
224
|
+
<${J2}
|
|
225
225
|
groupedEntries=${k}
|
|
226
226
|
selectedEntry=${A}
|
|
227
227
|
setSelectedEntry=${I}
|
|
228
228
|
keyboardSelection=${L}
|
|
229
229
|
onAction=${q}
|
|
230
230
|
idPrefix=${z}
|
|
231
|
-
id=${
|
|
231
|
+
id=${ne}
|
|
232
232
|
ariaLabel=${a||"Results"}
|
|
233
233
|
tabIndex=${C?-1:0}
|
|
234
|
-
ariaActivedescendant=${C?void 0:
|
|
234
|
+
ariaActivedescendant=${C?void 0:me||void 0}
|
|
235
235
|
/>
|
|
236
236
|
|
|
237
|
-
${A&&A.documentationRef&&
|
|
237
|
+
${A&&A.documentationRef&&ht`
|
|
238
238
|
<div class="djs-popup-footer">
|
|
239
239
|
<a
|
|
240
240
|
class="djs-popup-footer-docs"
|
|
@@ -254,14 +254,14 @@
|
|
|
254
254
|
`}
|
|
255
255
|
</div>
|
|
256
256
|
`}
|
|
257
|
-
${l&&T.length===0&&
|
|
257
|
+
${l&&T.length===0&&ht`
|
|
258
258
|
<div class="djs-popup-no-results">${Zt(l)?l(g):l}</div>
|
|
259
259
|
`}
|
|
260
|
-
</${
|
|
261
|
-
`}function
|
|
260
|
+
</${Qb}>
|
|
261
|
+
`}function Qb(e){const{onClose:t,onKeydown:n,onKeyup:i,className:r,children:o,navigationStack:a,position:s}=e,c=pu();return Ff(()=>{if(typeof s!="function")return;const u=c.current,l=s(u);u.style.left=`${l.x}px`,u.style.top=`${l.y}px`},[c.current,s]),Ff(()=>{const u=c.current;if(!u)return;(u.querySelector("input")||u.querySelector('[role="listbox"]')||u).focus()},[a]),lu(()=>{const u=p=>{if(p.key==="Escape")return p.preventDefault(),t()},l=p=>{if(!Ir(p.target,".djs-popup",!0))return t()};return document.documentElement.addEventListener("keydown",u),document.body.addEventListener("click",l,!0),()=>{document.documentElement.removeEventListener("keydown",u),document.body.removeEventListener("click",l,!0)}},[]),ht`
|
|
262
262
|
<div
|
|
263
|
-
class=${
|
|
264
|
-
style=${
|
|
263
|
+
class=${du("djs-popup",r)}
|
|
264
|
+
style=${ik(e)}
|
|
265
265
|
onKeydown=${n}
|
|
266
266
|
onKeyup=${i}
|
|
267
267
|
ref=${c}
|
|
@@ -269,8 +269,8 @@
|
|
|
269
269
|
>
|
|
270
270
|
${o}
|
|
271
271
|
</div>
|
|
272
|
-
`}function
|
|
273
|
-
<${
|
|
272
|
+
`}function ik(e){const{width:t}=e,n=typeof t=="number"?`${t}px`:t;return{transform:`scale(${e.scale})`,width:Wt(t)?n:void 0,maxWidth:Wt(t)?"unset":void 0,"transform-origin":"top left"}}function rk(e){const t=[];return e.forEach(n=>{n.entries.forEach(i=>{t.push(i)})}),t}function ok(e){const t=[];function n(i){i.forEach(r=>{if(r.entries){n(r.entries);return}t.push(r)})}return n(e),t}function ak(e){const t=[],n=o=>t.find(a=>o.id===a.id),i=o=>!!n(o),r=o=>typeof o=="string"?{id:o}:o;return e.forEach(o=>{const a=o.group?r(o.group):{id:"default"};i(a)?n(a).entries.push(o):t.push({...a,entries:[o]})}),t}var sk="data-id",Jb=["contextPad.close","canvas.viewbox.changing","commandStack.changed"],ck=1e3;function Ct(e,t,n,i){this._eventBus=t,this._canvas=n,this._search=i,this._current=null;var r=Wt(e&&e.scale)?e.scale:{min:1,max:1};this._config={scale:r},t.on("diagram.destroy",()=>{this.close()}),t.on("element.changed",o=>{const a=this.isOpen()&&this._current.target;o.element===a&&this.refresh()})}Ct.$inject=["config.popupMenu","eventBus","canvas","search"],Ct.prototype._render=function(){const{position:e,providerId:t,entries:n,headerEntries:i,emptyPlaceholder:r,options:o}=this._current,a=ex(n),s=Object.entries(i).map(([f,d])=>({id:f,...d})),c=e&&(f=>this._ensureVisible(f,e)),u=this._updateScale(this._current.container);Bb(ht`
|
|
273
|
+
<${nk}
|
|
274
274
|
onClose=${f=>this.close(f)}
|
|
275
275
|
onSelect=${(f,d,m)=>this.trigger(f,d,m)}
|
|
276
276
|
position=${c}
|
|
@@ -284,7 +284,7 @@
|
|
|
284
284
|
searchFn=${this._search}
|
|
285
285
|
...${{...o}}
|
|
286
286
|
/>
|
|
287
|
-
`,this._current.container)},
|
|
287
|
+
`,this._current.container)},Ct.prototype.open=function(e,t,n,i){if(!e)throw new Error("target is missing");if(!t)throw new Error("providers for <"+t+"> not found");if(!n)throw new Error("position is missing");var r=this._eventBus.fire("popupMenu.open.allowed",{target:e,providerId:t});if(r===!1)return;this.isOpen()&&this.close();const{entries:o,headerEntries:a,emptyPlaceholder:s}=this._getContext(e,t);this._current={position:n,providerId:t,target:e,entries:o,headerEntries:a,emptyPlaceholder:s,container:this._createContainer({provider:t}),options:i},this._emit("open"),this._bindAutoClose(),this._render()},Ct.prototype.refresh=function(){if(!this.isOpen())return;const{target:e,providerId:t}=this._current,{entries:n,headerEntries:i,emptyPlaceholder:r}=this._getContext(e,t);this._current={...this._current,entries:n,headerEntries:i,emptyPlaceholder:r},this._emit("refresh"),this._render()},Ct.prototype._getContext=function(e,t){const n=this._getProviders(t);if(!n||!n.length)throw new Error("provider for <"+t+"> not found");const i=this._getEntries(e,n),r=this._getHeaderEntries(e,n),o=this._getEmptyPlaceholder(n);return{entries:i,headerEntries:r,emptyPlaceholder:o,empty:!(Object.keys(i).length||Object.keys(r).length)}},Ct.prototype.close=function(){this.isOpen()&&(this._emit("close"),this.reset(),this._canvas.restoreFocus(),this._current=null)},Ct.prototype.reset=function(){const e=this._current.container;Bb(null,e),vi(e)},Ct.prototype._emit=function(e,t){this._eventBus.fire(`popupMenu.${e}`,t)},Ct.prototype._onOpened=function(){this._emit("opened")},Ct.prototype._onClosed=function(){this._emit("closed")},Ct.prototype._createContainer=function(e){var t=this._canvas,n=t.getContainer();const i=bt(`<div class="djs-popup-parent djs-scrollable" data-popup=${e.provider}></div>`);return n.appendChild(i),i},Ct.prototype._bindAutoClose=function(){this._eventBus.once(Jb,this.close,this)},Ct.prototype._unbindAutoClose=function(){this._eventBus.off(Jb,this.close,this)},Ct.prototype._updateScale=function(){var e=this._canvas.zoom(),t=this._config.scale,n,i,r=e;return t!==!0&&(t===!1?(n=1,i=1):(n=t.min,i=t.max),Wt(n)&&e<n&&(r=n),Wt(i)&&e>i&&(r=i)),r},Ct.prototype._ensureVisible=function(e,t){var n=document.documentElement.getBoundingClientRect(),i=e.getBoundingClientRect(),r={},o=t.x,a=t.y;return t.x+i.width>n.width&&(r.x=!0),t.y+i.height>n.height&&(r.y=!0),r.x&&r.y?(o=t.x-i.width,a=t.y-i.height):r.x?(o=t.x-i.width,a=t.y):r.y&&t.y<i.height?(o=t.x,a=10):r.y&&(o=t.x,a=t.y-i.height),t.y<n.top&&(a=t.y+i.height),{x:o,y:a}},Ct.prototype.isEmpty=function(e,t){if(!e)throw new Error("target is missing");if(!t)throw new Error("provider ID is missing");const n=this._getProviders(t);return!n||!n.length?!0:this._getContext(e,t).empty},Ct.prototype.registerProvider=function(e,t,n){n||(n=t,t=ck),this._eventBus.on("popupMenu.getProviders."+e,t,function(i){i.providers.push(n)})},Ct.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"popupMenu.getProviders."+e,providers:[]});return this._eventBus.fire(t),t.providers},Ct.prototype._getEntries=function(e,t){var n={};return F(t,function(i){if(!i.getPopupMenuEntries){F(i.getEntries(e),function(o){var a=o.id;if(!a)throw new Error("entry ID is missing");n[a]=hi(o,["id"])});return}var r=i.getPopupMenuEntries(e);Zt(r)?n=r(n):F(r,function(o,a){n[a]=o})}),n},Ct.prototype._getHeaderEntries=function(e,t){var n={};return F(t,function(i){if(!i.getPopupMenuHeaderEntries){if(!i.getHeaderEntries)return;F(i.getHeaderEntries(e),function(o){var a=o.id;if(!a)throw new Error("entry ID is missing");n[a]=hi(o,["id"])});return}var r=i.getPopupMenuHeaderEntries(e);Zt(r)?n=r(n):F(r,function(o,a){n[a]=o})}),n},Ct.prototype._getEmptyPlaceholder=function(e){const t=e.find(n=>Zt(n.getEmptyPlaceholder));return t&&t.getEmptyPlaceholder()},Ct.prototype.isOpen=function(){return!!this._current},Ct.prototype.trigger=function(e,t,n="click"){if(e.preventDefault(),!t){let r=Ir(e.delegateTarget||e.target,".entry",!0),o=mn(r,sk);t={id:o,...this._getEntry(o)}}const i=t.action;if(this._emit("trigger",{entry:t,event:e})!==!1){if(Zt(i)){if(n==="click")return i(e,t)}else if(i[n])return i[n](e,t)}},Ct.prototype._getEntry=function(e){var t=this._current.entries[e]||this._current.headerEntries[e];if(!t)throw new Error("entry not found");return t};function ex(e,t=[]){return Object.entries(e).map(([n,i])=>{const r={id:n,...i};return r.entries?r.entries=ex(r.entries,[...t,...tx(r.search)]):t.length&&(r.search=[...t,...tx(r.search)]),r})}function tx(e){return e?De(e)?e:[e]:[]}function uk(e,t,n){const{keys:i}=n;if(t=t.trim().toLowerCase(),!t)throw new Error("<pattern> must not be empty");const r=t.trim().toLowerCase().split(/\s+/);return e.flatMap(o=>{const a=lk(o,r,i);return a?{item:o,tokens:a}:[]}).sort(pk(i))}function lk(e,t,n){const{matchedWords:i,tokens:r}=n.reduce((o,a)=>{const s=e[a],{tokens:c,matchedWords:u}=De(s)?s.reduce((l,p)=>{const{tokens:f,matchedWords:d}=ax(p,t);return{tokens:[...l.tokens,f],matchedWords:{...l.matchedWords,...d}}},{matchedWords:{},tokens:[]}):ax(s,t);return{tokens:{...o.tokens,[a]:c},matchedWords:{...o.matchedWords,...u}}},{matchedWords:{},tokens:{}});return Object.keys(i).length!==t.length?null:r}function pk(e){return(t,n)=>{let i=0,r=1;for(const o of e){const a=fk(t.tokens[o],n.tokens[o]);if(a!==0){i+=a*r,r*=nx;continue}const s=dk(t.item[o],n.item[o]);if(s!==0){i+=s*r,r*=nx;continue}}return i}}function fk(e,t){return ix(t)-ix(e)}const nx=.5,zo={FULL:131.9,START_FULL_WORD:8,START_WORD_PART:7.87,WORD_START:2.19,WORD_PART:1,NO_MATCH:-.07};function ix(e){const t=e.reduce((s,c)=>s+rx(c),0),n=e.flat(),i=n.reduce((s,c)=>s+c.value.length,0),r=n.reduce((s,c)=>s+(c.match?c.value.length:0),0),o=i?r/i:0;return t*(1+o)}function rx(e){if(De(e))return Math.max(...e.map(rx));const t=Math.log(e.value.length);return e.match?(e.start?e.end?zo.FULL:e.wordEnd?zo.START_FULL_WORD:zo.START_WORD_PART:e.wordStart?zo.WORD_START:zo.WORD_PART)*t:zo.NO_MATCH*t}function ox(e=""){return De(e)?e.join(", "):e}function dk(e,t){return ox(e).localeCompare(ox(t))}function ax(e,t){var u;if(!e)return{tokens:[],matchedWords:{}};const n=[],i={},r=t.map(hk),o=[`(?<all>${r.join("\\s+")})`,...r].join("|"),a=new RegExp(o,"ig");let s,c=0;for(;s=a.exec(e);){const[l]=s,p=s.index,f=s.index+l.length,d=p===0,m=f===e.length,h=!!((u=s.groups)!=null&&u.all),y=d||/\s/.test(e.charAt(p-1)),g=m||/\s/.test(e.charAt(f));s.index>c&&n.push({value:e.slice(c,s.index),index:c}),n.push({value:l,index:s.index,match:!0,wordStart:y,wordEnd:g,start:d,end:m,all:h});const v=h?t:[l];for(const b of v)i[b.toLowerCase()]=!0;c=s.index+l.length}return c<e.length&&n.push({value:e.slice(c),index:c}),{tokens:n,matchedWords:i}}function hk(e){return e.replace(/[/\-\\^$*+?.()|[\]{}]/g,"\\$&")}const sx={search:["value",uk]},zf={__depends__:[sx],__init__:["popupMenu"],popupMenu:["type",Ct]};var cx={align:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2000 2000">
|
|
288
288
|
<line x1="200" y1="150" x2="200" y2="1850" style="stroke:currentColor;stroke-width:100;stroke-linecap:round;"/>
|
|
289
289
|
<rect x="500" y="150" width="1300" height="700" rx="1" style="fill:none;stroke:currentColor;stroke-width:100;"></rect>
|
|
290
290
|
<rect x="500" y="1150" width="700" height="700" rx="1" style="fill:currentColor;stroke:currentColor;stroke-width:100;opacity:.5;"></rect>
|
|
@@ -312,8 +312,8 @@
|
|
|
312
312
|
<line x1="150" y1="900" x2="1650" y2="900" style="stroke:currentColor;stroke-width:100;stroke-linecap:round;"/>
|
|
313
313
|
<rect x="150" y="250" width="600" height="1300" rx="1" style="fill:none;stroke:currentColor;stroke-width:100;"></rect>
|
|
314
314
|
<rect x="1050" y="500" width="600" height="800" rx="1" style="fill:currentColor;stroke:currentColor;stroke-width:100;opacity:.5;"></rect>
|
|
315
|
-
</svg>`},hk=900;function zo(e,t,n,i){e.registerProvider(hk,this),this._contextPad=e,this._popupMenu=t,this._translate=n,this._canvas=i}zo.$inject=["contextPad","popupMenu","translate","canvas"],zo.prototype.getMultiElementContextPadEntries=function(e){var t={};return this._isAllowed(e)&&V(t,this._getEntries(e)),t},zo.prototype._isAllowed=function(e){return!this._popupMenu.isEmpty(e,"align-elements")},zo.prototype._getEntries=function(){var e=this;return{"align-elements":{group:"align-elements",title:e._translate("Align elements"),html:`<div class="entry">${sx.align}</div>`,action:{click:function(t,n){var i=e._getMenuPosition(n);V(i,{cursor:{x:t.x,y:t.y}}),e._popupMenu.open(n,"align-elements",i)}}}}},zo.prototype._getMenuPosition=function(e){var t=5,n=this._contextPad.getPad(e).html,i=n.getBoundingClientRect(),r={x:i.left,y:i.bottom+t};return r};var mk=["left","center","right","top","middle","bottom"];function Ua(e,t,n,i){this._alignElements=t,this._translate=n,this._popupMenu=e,this._rules=i,e.registerProvider("align-elements",this)}Ua.$inject=["popupMenu","alignElements","translate","rules"],Ua.prototype.getPopupMenuEntries=function(e){var t={};return this._isAllowed(e)&&V(t,this._getEntries(e)),t},Ua.prototype._isAllowed=function(e){return this._rules.allowed("elements.align",{elements:e})},Ua.prototype._getEntries=function(e){var t=this._alignElements,n=this._translate,i=this._popupMenu,r={};return F(mk,function(o){r["align-elements-"+o]={group:"align",title:n("Align elements "+o),className:"bjs-align-elements-menu-entry",imageHtml:sx[o],action:function(){t.trigger(e,o),i.close()}}}),r};function du(e){ei.call(this,e)}du.$inject=["eventBus"],ye(du,ei),du.prototype.init=function(){this.addRule("elements.align",function(e){var t=e.elements,n=Ye(t,function(i){return!(i.waypoints||i.host||i.labelTarget)});return n=Bs(n),n.length<2?!1:n})};const gk={__depends__:[P2,vb,Hf],__init__:["alignElementsContextPadProvider","alignElementsMenuProvider","bpmnAlignElements"],alignElementsContextPadProvider:["type",zo],alignElementsMenuProvider:["type",Ua],bpmnAlignElements:["type",du]};function Ui(e,t,n,i){J.call(this,e),this._elementRegistry=t,this._modeling=n,this._rules=i;var r=this;this.postExecuted(["shape.create"],function(o){var a=o.context,s=a.hints||{},c=a.shape,u=a.parent||a.newParent;s.autoResize!==!1&&r._expand([c],u)}),this.postExecuted(["elements.move"],function(o){var a=o.context,s=Gu(io(a.closure.topLevel)),c=a.hints,u=c?c.autoResize:!0;if(u!==!1){var l=ro(s,function(p){return p.parent.id});F(l,function(p,f){De(u)&&(p=p.filter(function(d){return ht(u,oo({id:d.id}))})),r._expand(p,f)})}}),this.postExecuted(["shape.toggleCollapse"],function(o){var a=o.context,s=a.hints,c=a.shape;s&&s.autoResize===!1||c.collapsed||r._expand(c.children||[],c)}),this.postExecuted(["shape.resize"],function(o){var a=o.context,s=a.hints,c=a.shape,u=c.parent;s&&s.autoResize===!1||u&&r._expand([c],u)})}Ui.$inject=["eventBus","elementRegistry","modeling","rules"],ye(Ui,J),Ui.prototype._getOptimalBounds=function(e,t){var n=this.getOffset(t),i=this.getPadding(t),r=ke(Bt(e)),o=ke(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),Fs(V({},o,a))},Ui.prototype._expand=function(e,t){typeof t=="string"&&(t=this._elementRegistry.get(t));var n=this._rules.allowed("element.autoResize",{elements:e,target:t});if(n){var i=this._getOptimalBounds(e,t);if(yk(i,t)){var r=vk(ci(t,["x","y","width","height"]),i);this.resize(t,i,{autoResize:r});var o=t.parent;o&&this._expand([t],o)}}},Ui.prototype.getOffset=function(e){return{top:60,bottom:60,left:100,right:100}},Ui.prototype.getPadding=function(e){return{top:2,bottom:2,left:15,right:15}},Ui.prototype.resize=function(e,t,n){this._modeling.resizeShape(e,t,null,n)};function yk(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}function vk(e,t){var n="";return e=ke(e),t=ke(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")),n}function hu(e){e.invoke(Ui,this)}hu.$inject=["injector"],ye(hu,Ui),hu.prototype.resize=function(e,t,n){S(e,"bpmn:Participant")?this._modeling.resizeLane(e,t,null,n):this._modeling.resizeShape(e,t,null,n)};function Ya(e){ei.call(this,e);var t=this;this.addRule("element.autoResize",function(n){return t.canResize(n.elements,n.target)})}Ya.$inject=["eventBus"],ye(Ya,ei),Ya.prototype.canResize=function(e,t){return!1};function mu(e,t){Ya.call(this,e),this._modeling=t}ye(mu,Ya),mu.$inject=["eventBus","modeling"],mu.prototype.canResize=function(e,t){if(S(t.di,"bpmndi:BPMNPlane")||!S(t,"bpmn:Participant")&&!S(t,"bpmn:Lane")&&!S(t,"bpmn:SubProcess"))return!1;var n=!0;return F(e,function(i){if(S(i,"bpmn:Lane")||Ge(i)){n=!1;return}}),n};const bk={__init__:["bpmnAutoResize","bpmnAutoResizeProvider"],bpmnAutoResize:["type",hu],bpmnAutoResizeProvider:["type",mu]};function Go(e,t,n){this._canvas=n,this._opts=V({scrollThresholdIn:[20,20,20,20],scrollThresholdOut:[0,0,0,0],scrollRepeatTimeout:15,scrollStep:10},e);var i=this;t.on("drag.move",function(r){var o=i._toBorderPoint(r);i.startScroll(o)}),t.on(["drag.cleanup"],function(){i.stopScroll()})}Go.$inject=["config.autoScroll","eventBus","canvas"],Go.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++)xk(o[c],n.scrollThresholdOut[c],n.scrollThresholdIn[c])&&(c===0?a=n.scrollStep:c==1?s=n.scrollStep:c==2?a=-n.scrollStep:c==3&&(s=-n.scrollStep));(a!==0||s!==0)&&(t.scroll({dx:a,dy:s}),this._scrolling=setTimeout(function(){i.startScroll(e)},n.scrollRepeatTimeout))};function xk(e,t,n){return t<e&&e<n}Go.prototype.stopScroll=function(){clearTimeout(this._scrolling)},Go.prototype.setOptions=function(e){this._opts=V({},this._opts,e)},Go.prototype._toBorderPoint=function(e){var t=this._canvas._container.getBoundingClientRect(),n=jr(e.originalEvent);return{x:n.x-t.left,y:n.y-t.top}};const _k={__depends__:[ji],__init__:["autoScroll"],autoScroll:["type",Go]};var cx="djs-bendpoint",ux="djs-segment-dragger";function wk(e,t){var n=jr(t),i=e._container.getBoundingClientRect(),r;r={x:i.left,y:i.top};var o=e.viewbox();return{x:o.x+(n.x-r.x)/o.scale,y:o.y+(n.y-r.y)/o.scale}}function zf(e,t,n){var i=wk(e,n),r=ap(t,i);return r}function Gf(e,t){var n=Ae("g");Qe(n).add(cx),$e(e,n);var i=Ae("circle");ve(i,{cx:0,cy:0,r:4}),Qe(i).add("djs-visual"),$e(n,i);var r=Ae("circle");return ve(r,{cx:0,cy:0,r:10}),Qe(r).add("djs-hit"),$e(n,r),t&&Qe(n).add(t),n}function Ek(e,t,n,i){var r=Ae("g");$e(e,r);var o=18,a=6,s=11,c=Rk(t,n,i),u=a+s,l=Ae("rect");ve(l,{x:-o/2,y:-a/2,width:o,height:a}),Qe(l).add("djs-visual"),$e(r,l);var p=Ae("rect");return ve(p,{x:-c/2,y:-u/2,width:c,height:u}),Qe(p).add("djs-hit"),$e(r,p),Bm(r,i==="v"?90:0),r}function lx(e,t,n){var i=Ae("g"),r=Il(t,n),o=Li(t,n);return $e(e,i),Ek(i,t,n,o),Qe(i).add(ux),Qe(i).add(o==="h"?"horizontal":"vertical"),sn(i,r.x,r.y),i}function Vf(e){return Math.abs(Math.round(e*2/3))}function Sk(e,t){var n=Ck(e,t);return fp(e,n)}function Rk(e,t,n){var i=t.x-e.x,r=t.y-e.y;return Vf(n==="h"?i:r)}function Ck(e,t){for(var n=t.waypoints,i=1/0,r,o=0;o<n.length-1;o++){var a=n[o],s=n[o+1],c=wg(e,[a,s]);c<i&&(i=c,r=o)}return[n[r],n[r+1]]}function px(e,t,n,i,r){function o(b,x,C){var T=b.index,k=b.point,A,I,D,L,z,re;return T<=0||b.bendpoint?!1:(A=x[T-1],I=x[T],D=Il(A,I),L=Li(A,I),z=Math.abs(k.x-D.x),re=Math.abs(k.y-D.y),L&&z<=C&&re<=C)}function a(b,x){var C=b.waypoints,T,k,A,I;return x.index<=0||x.bendpoint||(T={start:C[x.index-1],end:C[x.index]},k=Li(T.start,T.end),!k)?null:(k==="h"?A=T.end.x-T.start.x:A=T.end.y-T.start.y,I=Vf(A)/2,I)}function s(b,x){var C=x.waypoints,T=zf(t,C,b),k;if(T){k=a(x,T);var A;if(o(T,C,k)?A=r.start(b,x,T.index):A=i.start(b,x,T.index,!T.bendpoint),A!==!1)return!0}}function c(b,x,C){Ne.bind(b,x,function(T){n.triggerMouseEvent(x,T,C),T.stopPropagation()})}function u(b,x){var C=t.getLayer("overlays"),T=ut('.djs-bendpoints[data-element-id="'+Ha(b.id)+'"]',C);return!T&&x&&(T=Ae("g"),ve(T,{"data-element-id":b.id}),Qe(T).add("djs-bendpoints"),$e(C,T),c(T,"mousedown",b),c(T,"click",b),c(T,"dblclick",b)),T}function l(b,x){return ut('.djs-segment-dragger[data-segment-idx="'+b+'"]',x)}function p(b,x){x.waypoints.forEach(function(C,T){var k=Gf(b);$e(b,k),sn(k,C.x,C.y)}),Gf(b,"floating")}function f(b,x){for(var C=x.waypoints,T,k,A,I=1;I<C.length;I++)T=C[I-1],k=C[I],Li(T,k)&&(A=lx(b,T,k),ve(A,{"data-segment-idx":I}),c(A,"mousemove",x))}function d(b){F(Os("."+cx,b),function(x){Ut(x)})}function m(b){F(Os("."+ux,b),function(x){Ut(x)})}function h(b){var x=u(b);return x||(x=u(b,!0),p(x,b),f(x,b)),x}function y(b){var x=u(b);x&&(m(x),d(x),f(x,b),p(x,b))}function g(b,x){var C=ut(".floating",b),T=x.point;C&&(sn(C,T.x,T.y),Qe(C).add("positioned"))}function v(b,x,C){var T=l(x.index,b),k=C[x.index-1],A=C[x.index],I=x.point,D=Il(k,A),L=Li(k,A),z,re;T&&(z=Pk(T),re={x:I.x-D.x,y:I.y-D.y},L==="v"&&(re={x:re.y,y:re.x}),sn(z,re.x,re.y))}e.on("connection.changed",function(b){y(b.element)}),e.on("connection.remove",function(b){var x=u(b.element);x&&Ut(x)}),e.on("element.marker.update",function(b){var x=b.element,C;x.waypoints&&(C=h(x),b.add?Qe(C).add(b.marker):Qe(C).remove(b.marker))}),e.on("element.mousemove",function(b){var x=b.element,C=x.waypoints,T,k;if(C){if(T=u(x,!0),k=zf(t,C,b.originalEvent),!k)return;g(T,k),k.bendpoint||v(T,k,C)}}),e.on("element.mousedown",function(b){if(lr(b)){var x=b.originalEvent,C=b.element;if(C.waypoints)return s(x,C)}}),e.on("selection.changed",function(b){var x=b.newSelection,C=x[0];C&&C.waypoints&&h(C)}),e.on("element.hover",function(b){var x=b.element;x.waypoints&&h(x)}),e.on("element.out",function(b){var x=b.element;if(x.waypoints){var C=u(x);if(C){var T=ut(".floating",C);T&&Qe(T).remove("positioned")}}}),e.on("element.updateId",function(b){var x=b.element,C=b.newId;if(x.waypoints){var T=u(x);T&&ve(T,{"data-element-id":C})}}),this.addHandles=h,this.updateHandles=y,this.getBendpointsContainer=u,this.getSegmentDragger=l}px.$inject=["eventBus","canvas","interactionEvents","bendpointMove","connectionSegmentMove"];function Pk(e){return ut(".djs-visual",e)}var fx=Math.round,qr="reconnectStart",Kr="reconnectEnd",qa="updateWaypoints";function Wf(e,t,n,i,r,o){this._injector=e,this.start=function(a,s,c,u){var l=n.getGraphics(s),p=s.source,f=s.target,d=s.waypoints,m;!u&&c===0?m=qr:!u&&c===d.length-1?m=Kr:m=qa;var h=m===qa?"connection.updateWaypoints":"connection.reconnect",y=r.allowed(h,{connection:s,source:p,target:f});if(y===!1&&(y=r.allowed(h,{connection:s,source:f,target:p})),y!==!1)return i.init(a,"bendpoint.move",{data:{connection:s,connectionGfx:l,context:{allowed:y,bendpointIndex:c,connection:s,source:p,target:f,insert:u,type:m}}})},t.on("bendpoint.move.hover",function(a){var s=a.context,c=s.connection,u=c.source,l=c.target,p=a.hover,f=s.type;s.hover=p;var d;if(p){var m=f===qa?"connection.updateWaypoints":"connection.reconnect";if(d=s.allowed=r.allowed(m,{connection:c,source:f===qr?p:u,target:f===Kr?p:l}),d){s.source=f===qr?p:u,s.target=f===Kr?p:l;return}d===!1&&(d=s.allowed=r.allowed(m,{connection:c,source:f===Kr?p:l,target:f===qr?p:u})),d&&(s.source=f===Kr?p:l,s.target=f===qr?p:u)}}),t.on(["bendpoint.move.out","bendpoint.move.cleanup"],function(a){var s=a.context,c=s.type;s.hover=null,s.source=null,s.target=null,c!==qa&&(s.allowed=!1)}),t.on("bendpoint.move.end",function(a){var s=a.context,c=s.allowed,u=s.bendpointIndex,l=s.connection,p=s.insert,f=l.waypoints.slice(),d=s.source,m=s.target,h=s.type,y=s.hints||{},g={x:fx(a.x),y:fx(a.y)};if(!c)return!1;h===qa?(p?f.splice(u,0,g):f[u]=g,y.bendpointMove={insert:p,bendpointIndex:u},f=this.cropWaypoints(l,f),o.updateWaypoints(l,VS(f),y)):(h===qr?(y.docking="source",gu(s)&&(y.docking="target",y.newWaypoints=f.reverse())):h===Kr&&(y.docking="target",gu(s)&&(y.docking="source",y.newWaypoints=f.reverse())),o.reconnect(l,d,m,g,y))},this)}Wf.$inject=["injector","eventBus","canvas","dragging","rules","modeling"],Wf.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};function gu(e){var t=e.hover,n=e.source,i=e.target,r=e.type;if(r===qr)return t&&i&&t===i&&n!==i;if(r===Kr)return t&&n&&t===n&&n!==i}var Ak="reconnectStart",Tk="reconnectEnd",dx="updateWaypoints",Ka="connect-ok",yu="connect-not-ok",hx="connect-hover",mx="djs-updating",gx="djs-dragging",yx=1100;function vx(e,t,n,i){this._injector=t;var r=t.get("connectionPreview",!1);n.on("bendpoint.move.start",function(o){var a=o.context,s=a.bendpointIndex,c=a.connection,u=a.insert,l=c.waypoints,p=l.slice();a.waypoints=l,u&&p.splice(s,0,{x:o.x,y:o.y}),c.waypoints=p;var f=a.draggerGfx=Gf(i.getLayer("overlays"));Qe(f).add("djs-dragging"),i.addMarker(c,gx),i.addMarker(c,mx)}),n.on("bendpoint.move.hover",function(o){var a=o.context,s=a.allowed,c=a.hover,u=a.type;if(c){if(i.addMarker(c,hx),u===dx)return;s?(i.removeMarker(c,yu),i.addMarker(c,Ka)):s===!1&&(i.removeMarker(c,Ka),i.addMarker(c,yu))}}),n.on(["bendpoint.move.out","bendpoint.move.cleanup"],yx,function(o){var a=o.context,s=a.hover,c=a.target;s&&(i.removeMarker(s,hx),i.removeMarker(s,c?Ka:yu))}),n.on("bendpoint.move.move",function(o){var a=o.context,s=a.allowed,c=a.bendpointIndex,u=a.draggerGfx,l=a.hover,p=a.type,f=a.connection,d=f.source,m=f.target,h=f.waypoints.slice(),y={x:o.x,y:o.y},g=a.hints||{},v={};r&&(g.connectionStart&&(v.connectionStart=g.connectionStart),g.connectionEnd&&(v.connectionEnd=g.connectionEnd),p===Ak?gu(a)?(v.connectionEnd=v.connectionEnd||y,v.source=m,v.target=l||d,h=h.reverse()):(v.connectionStart=v.connectionStart||y,v.source=l||d,v.target=m):p===Tk?gu(a)?(v.connectionStart=v.connectionStart||y,v.source=l||m,v.target=d,h=h.reverse()):(v.connectionEnd=v.connectionEnd||y,v.source=d,v.target=l||m):(v.noCropping=!0,v.noLayout=!0,h[c]=y),p===dx&&(h=e.cropWaypoints(f,h)),v.waypoints=h,r.drawPreview(a,s,v)),sn(u,o.x,o.y)},this),n.on(["bendpoint.move.end","bendpoint.move.cancel"],yx,function(o){var a=o.context,s=a.connection,c=a.draggerGfx,u=a.hover,l=a.target,p=a.waypoints;s.waypoints=p,Ut(c),i.removeMarker(s,mx),i.removeMarker(s,gx),u&&(i.removeMarker(u,Ka),i.removeMarker(u,l?Ka:yu)),r&&r.cleanUp(a)})}vx.$inject=["bendpointMove","injector","eventBus","canvas"];var bx="connect-hover",xx="djs-updating";function _x(e,t,n){return Uf(e,t,e[t]+n)}function Uf(e,t,n){return{x:t==="x"?n:e.x,y:t==="y"?n:e.y}}function Mk(e,t,n,i){var r=Math.max(t[i],n[i]),o=Math.min(t[i],n[i]),a=20,s=Math.min(Math.max(o+a,e[i]),r-a);return Uf(t,i,s)}function wx(e){return e==="x"?"y":"x"}function Ex(e,t,n){var i,r;return e.original?e.original:(i=Le(t),r=wx(n),Uf(e,r,i[r]))}function Sx(e,t,n,i,r,o){var a=e.get("connectionDocking",!1);this.start=function(p,f,d){var m,h=n.getGraphics(f),y=d-1,g=d,v=f.waypoints,b=v[y],x=v[g],C=zf(n,v,p),T,k,A;if(T=Li(b,x),!!T)return k=T==="v"?"x":"y",y===0&&(b=Ex(b,f.source,k)),g===v.length-1&&(x=Ex(x,f.target,k)),C?A=C.point:A={x:(b.x+x.x)/2,y:(b.y+x.y)/2},m={connection:f,segmentStartIndex:y,segmentEndIndex:g,segmentStart:b,segmentEnd:x,axis:k,dragPosition:A},i.init(p,A,"connectionSegment.move",{cursor:k==="x"?"resize-ew":"resize-ns",data:{connection:f,connectionGfx:h,context:m}})};function s(p,f){if(!a)return f;var d=p.waypoints,m;return p.waypoints=f,m=a.getCroppedWaypoints(p),p.waypoints=d,m}function c(p){r.update("connection",p.connection,p.connectionGfx)}function u(p,f,d){var m=p.newWaypoints,h=p.segmentStartIndex+f,y=m[h],g=p.segmentEndIndex+f,v=m[g],b=wx(p.axis),x=Mk(d,y,v,b);sn(p.draggerGfx,x.x,x.y)}function l(p,f){var d=0,m=p.filter(function(h,y){return Ll(p[y-1],p[y+1],h)?(d=y<=f?d-1:d,!1):!0});return{waypoints:m,segmentOffset:d}}t.on("connectionSegment.move.start",function(p){var f=p.context,d=p.connection,m=n.getLayer("overlays");f.originalWaypoints=d.waypoints.slice(),f.draggerGfx=lx(m,f.segmentStart,f.segmentEnd),Qe(f.draggerGfx).add("djs-dragging"),n.addMarker(d,xx)}),t.on("connectionSegment.move.move",function(p){var f=p.context,d=f.connection,m=f.segmentStartIndex,h=f.segmentEndIndex,y=f.segmentStart,g=f.segmentEnd,v=f.axis,b=f.originalWaypoints.slice(),x=_x(y,v,p["d"+v]),C=_x(g,v,p["d"+v]),T=b.length,k=0;b[m]=x,b[h]=C;var A,I;m<2&&(A=an(d.source,x),m===1?A==="intersect"&&(b.shift(),b[0]=x,k--):A!=="intersect"&&(b.unshift(y),k++)),h>T-3&&(I=an(d.target,C),h===T-2?I==="intersect"&&(b.pop(),b[b.length-1]=C):I!=="intersect"&&b.push(g)),f.newWaypoints=d.waypoints=s(d,b),u(f,k,p),f.newSegmentStartIndex=m+k,c(p)}),t.on("connectionSegment.move.hover",function(p){p.context.hover=p.hover,n.addMarker(p.hover,bx)}),t.on(["connectionSegment.move.out","connectionSegment.move.cleanup"],function(p){var f=p.context.hover;f&&n.removeMarker(f,bx)}),t.on("connectionSegment.move.cleanup",function(p){var f=p.context,d=f.connection;f.draggerGfx&&Ut(f.draggerGfx),n.removeMarker(d,xx)}),t.on(["connectionSegment.move.cancel","connectionSegment.move.end"],function(p){var f=p.context,d=f.connection;d.waypoints=f.originalWaypoints,c(p)}),t.on("connectionSegment.move.end",function(p){var f=p.context,d=f.connection,m=f.newWaypoints,h=f.newSegmentStartIndex;m=m.map(function(C){return{original:C.original,x:Math.round(C.x),y:Math.round(C.y)}});var y=l(m,h),g=y.waypoints,v=s(d,g),b=y.segmentOffset,x={segmentMove:{segmentStartIndex:f.segmentStartIndex,newSegmentStartIndex:h+b}};o.updateWaypoints(d,v,x)})}Sx.$inject=["injector","eventBus","canvas","dragging","graphicsFactory","modeling"];var kk=Math.abs,Rx=Math.round;function Ok(e,t,n){n=n===void 0?10:n;var i,r;for(i=0;i<t.length;i++)if(r=t[i],kk(r-e)<=n)return r}function Cx(e){return{x:e.x,y:e.y}}function Px(e){return{x:e.x+e.width,y:e.y+e.height}}function ri(e,t){return!e||isNaN(e.x)||isNaN(e.y)?t:{x:Rx(e.x+e.width/2),y:Rx(e.y+e.height/2)}}function Vo(e,t){var n=e.snapped;return n?typeof t=="string"?n[t]:n.x&&n.y:!1}function jt(e,t,n){if(typeof t!="string")throw new Error("axis must be in [x, y]");if(typeof n!="number"&&n!==!1)throw new Error("value must be Number or false");var i,r=e[t],o=e.snapped=e.snapped||{};return n===!1?o[t]=!1:(o[t]=!0,i=n-r,e[t]+=i,e["d"+t]+=i),r}function Ax(e){return e.children||[]}var Dk=Math.abs,Tx=Math.round,Yf=10;function Mx(e){function t(o,a){if(De(o)){for(var s=o.length;s--;)if(Dk(o[s]-a)<=Yf)return o[s]}else{o=+o;var c=a%o;if(c<Yf)return a-c;if(c>o-Yf)return a-c+o}return a}function n(o,a){if(o.waypoints)return Sk(a,o);if(o.width)return{x:Tx(o.width/2+o.x),y:Tx(o.height/2+o.y)}}function i(o){var a=o.context,s=a.snapPoints,c=a.connection,u=c.waypoints,l=a.segmentStart,p=a.segmentStartIndex,f=a.segmentEnd,d=a.segmentEndIndex,m=a.axis;if(s)return s;var h=[u[p-1],l,f,u[d+1]];return p<2&&h.unshift(n(c.source,o)),d>u.length-3&&h.unshift(n(c.target,o)),a.snapPoints=s={horizontal:[],vertical:[]},F(h,function(y){y&&(y=y.original||y,m==="y"&&s.horizontal.push(y.y),m==="x"&&s.vertical.push(y.x))}),s}e.on("connectionSegment.move.move",1500,function(o){var a=i(o),s=o.x,c=o.y,u,l;if(a){u=t(a.vertical,s),l=t(a.horizontal,c);var p=s-u,f=c-l;V(o,{dx:o.dx-p,dy:o.dy-f,x:u,y:l}),(p||a.vertical.indexOf(s)!==-1)&&jt(o,"x",u),(f||a.horizontal.indexOf(c)!==-1)&&jt(o,"y",l)}});function r(o){var a=o.snapPoints,s=o.connection.waypoints,c=o.bendpointIndex;if(a)return a;var u=[s[c-1],s[c+1]];return o.snapPoints=a={horizontal:[],vertical:[]},F(u,function(l){l&&(l=l.original||l,a.horizontal.push(l.y),a.vertical.push(l.x))}),a}e.on(["connect.hover","connect.move","connect.end"],1500,function(o){var a=o.context,s=a.hover,c=s&&n(s,o);!pt(s)||!c||!c.x||!c.y||(jt(o,"x",c.x),jt(o,"y",c.y))}),e.on(["bendpoint.move.move","bendpoint.move.end"],1500,function(o){var a=o.context,s=r(a),c=a.hover,u=c&&n(c,o),l=o.x,p=o.y,f,d;if(s){f=t(u?s.vertical.concat([u.x]):s.vertical,l),d=t(u?s.horizontal.concat([u.y]):s.horizontal,p);var m=l-f,h=p-d;V(o,{dx:o.dx-m,dy:o.dy-h,x:o.x-m,y:o.y-h}),(m||s.vertical.indexOf(l)!==-1)&&jt(o,"x",f),(h||s.horizontal.indexOf(p)!==-1)&&jt(o,"y",d)}})}Mx.$inject=["eventBus"];const Lk={__depends__:[ji,Ei],__init__:["bendpoints","bendpointSnapping","bendpointMovePreview"],bendpoints:["type",px],bendpointMove:["type",Wf],bendpointMovePreview:["type",vx],connectionSegmentMove:["type",Sx],bendpointSnapping:["type",Mx]};function kx(e,t,n,i){function r(a,s){return i.allowed("connection.create",{source:a,target:s})}function o(a,s){return r(s,a)}e.on("connect.hover",function(a){var s=a.context,c=s.start,u=a.hover,l;if(s.hover=u,l=s.canExecute=r(c,u),!no(l)){if(l!==!1){s.source=c,s.target=u;return}l=s.canExecute=o(c,u),!no(l)&&l!==!1&&(s.source=u,s.target=c)}}),e.on(["connect.out","connect.cleanup"],function(a){var s=a.context;s.hover=null,s.source=null,s.target=null,s.canExecute=!1}),e.on("connect.end",function(a){var s=a.context,c=s.canExecute,u=s.connectionStart,l={x:a.x,y:a.y},p=s.source,f=s.target;if(!c)return!1;var d=null,m={connectionStart:qf(s)?l:u,connectionEnd:qf(s)?u:l};Xt(c)&&(d=c),s.connection=n.connect(p,f,d,m)}),this.start=function(a,s,c,u){Xt(c)||(u=c,c=Le(s)),t.init(a,"connect",{autoActivate:u,data:{shape:s,context:{start:s,connectionStart:c}}})}}kx.$inject=["eventBus","dragging","modeling","rules"];function qf(e){var t=e.hover,n=e.source,i=e.target;return t&&n&&t===n&&n!==i}var Ik=1100,Bk=900,Ox="connect-ok",Dx="connect-not-ok";function Lx(e,t,n){var i=e.get("connectionPreview",!1);i&&t.on("connect.move",function(r){var o=r.context,a=o.canExecute,s=o.hover,c=o.source,u=o.start,l=o.startPosition,p=o.target,f=o.connectionStart||l,d=o.connectionEnd||{x:r.x,y:r.y},m=f,h=d;qf(o)&&(m=d,h=f),i.drawPreview(o,a,{source:c||u,target:p||s,connectionStart:m,connectionEnd:h})}),t.on("connect.hover",Bk,function(r){var o=r.context,a=r.hover,s=o.canExecute;s!==null&&n.addMarker(a,s?Ox:Dx)}),t.on(["connect.out","connect.cleanup"],Ik,function(r){var o=r.hover;o&&(n.removeMarker(o,Ox),n.removeMarker(o,Dx))}),i&&t.on("connect.cleanup",function(r){i.cleanUp(r.context)})}Lx.$inject=["injector","eventBus","canvas"];const Kf={__depends__:[ti,Ei,ji],__init__:["connectPreview"],connect:["type",kx],connectPreview:["type",Lx]};var Nk="djs-dragger";function Yi(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)}Yi.$inject=["injector","canvas","graphicsFactory","elementFactory"],Yi.prototype.drawPreview=function(e,t,n){n=n||{};var i=e.connectionPreviewGfx,r=e.getConnection,o=n.source,a=n.target,s=n.waypoints,c=n.connectionStart,u=n.connectionEnd,l=n.noLayout,p=n.noCropping,f=n.noNoop,d,m=this;if(i||(i=e.connectionPreviewGfx=this.createConnectionPreviewGfx()),Ds(i),r||(r=e.getConnection=$k(function(h,y,g){return m.getConnection(h,y,g)})),t&&(d=r(t,o,a)),!d){!f&&this.drawNoopPreview(i,n);return}d.waypoints=s||[],this._layouter&&!l&&(d.waypoints=this._layouter.layoutConnection(d,{source:o,target:a,connectionStart:c,connectionEnd:u,waypoints:n.waypoints||d.waypoints})),(!d.waypoints||!d.waypoints.length)&&(d.waypoints=[o?Le(o):c,a?Le(a):u]),this._connectionDocking&&(o||a)&&!p&&(d.waypoints=this._connectionDocking.getCroppedWaypoints(d,o,a)),this._graphicsFactory.drawConnection(i,d,{stroke:"var(--element-dragger-color)"})},Yi.prototype.drawNoopPreview=function(e,t){var n=t.source,i=t.target,r=t.connectionStart||Le(n),o=t.connectionEnd||Le(i),a=this.cropWaypoints(r,o,n,i),s=this.createNoopConnection(a[0],a[1]);$e(e,s)},Yi.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&&ua(o,s,!0)||e,t=i&&ua(a,s,!1)||t,[e,t]},Yi.prototype.cleanUp=function(e){e&&e.connectionPreviewGfx&&Ut(e.connectionPreviewGfx)},Yi.prototype.getConnection=function(e){var t=Fk(e);return this._elementFactory.createConnection(t)},Yi.prototype.createConnectionPreviewGfx=function(){var e=Ae("g");return ve(e,{pointerEvents:"none"}),Qe(e).add(Nk),$e(this._canvas.getActiveLayer(),e),e},Yi.prototype.createNoopConnection=function(e,t){return oa([e,t],{stroke:"#333",strokeDasharray:[1],strokeWidth:2,"pointer-events":"none"})};function $k(e){var t={};return function(n){var i=JSON.stringify(n),r=t[i];return r||(r=t[i]=e.apply(null,arguments)),r}}function Fk(e){return Xt(e)?e:{}}const jk={__init__:["connectionPreview"],connectionPreview:["type",Yi]},vu="complex-preview";class Ix{constructor(t,n,i){this._canvas=t,this._graphicsFactory=n,this._previewSupport=i,this._markers=[]}create(t){this.cleanUp();const{created:n=[],moved:i=[],removed:r=[],resized:o=[]}=t,a=this._canvas.getLayer(vu);n.filter(s=>!Hk(s)).forEach(s=>{let c;pt(s)?(c=this._graphicsFactory._createContainer("connection",Ae("g")),this._graphicsFactory.drawConnection(Nr(c),s)):(c=this._graphicsFactory._createContainer("shape",Ae("g")),this._graphicsFactory.drawShape(Nr(c),s),sn(c,s.x,s.y)),this._previewSupport.addDragger(s,a,c)}),i.forEach(({element:s,delta:c})=>{this._previewSupport.addDragger(s,a,void 0,"djs-dragging"),this._canvas.addMarker(s,"djs-element-hidden"),this._markers.push([s,"djs-element-hidden"]);const u=this._previewSupport.addDragger(s,a);pt(s)?sn(u,c.x,c.y):sn(u,s.x+c.x,s.y+c.y)}),r.forEach(s=>{this._previewSupport.addDragger(s,a,void 0,"djs-dragging"),this._canvas.addMarker(s,"djs-element-hidden"),this._markers.push([s,"djs-element-hidden"])}),o.forEach(({shape:s,bounds:c})=>{this._canvas.addMarker(s,"djs-hidden"),this._markers.push([s,"djs-hidden"]),this._previewSupport.addDragger(s,a,void 0,"djs-dragging");const u=this._graphicsFactory._createContainer("shape",Ae("g"));this._graphicsFactory.drawShape(Nr(u),s,{width:c.width,height:c.height}),sn(u,c.x,c.y),this._previewSupport.addDragger(s,a,u)})}cleanUp(){Ds(this._canvas.getLayer(vu)),this._markers.forEach(([t,n])=>this._canvas.removeMarker(t,n)),this._markers=[]}show(){this._canvas.showLayer(vu)}hide(){this._canvas.hideLayer(vu)}}Ix.$inject=["canvas","graphicsFactory","previewSupport"];function Hk(e){return e.hidden}const zk={__depends__:[Lo],__init__:["complexPreview"],complexPreview:["type",Ix]},Bx=Math.round;function bu(e,t,n,i,r,o){this._complexPreview=e,this._connectionDocking=t,this._elementFactory=n,this._eventBus=i,this._layouter=r,this._rules=o}bu.prototype.create=function(e,t,n){const i=this._complexPreview,r=this._connectionDocking,o=this._elementFactory,a=this._eventBus,s=this._layouter,c=this._rules,u=o.createShape(V({type:t},n)),l=a.fire("autoPlace",{source:e,shape:u});if(!l)return;V(u,{x:l.x-Bx(u.width/2),y:l.y-Bx(u.height/2)});const p=c.allowed("connection.create",{source:e,target:u,hints:{targetParent:e.parent}});let f=null;p&&(f=o.createConnection(p),f.waypoints=s.layoutConnection(f,{source:e,target:u}),f.waypoints=r.getCroppedWaypoints(f,e,u)),i.create({created:[u,f].filter(d=>!no(d))})},bu.prototype.cleanUp=function(){this._complexPreview.cleanUp()},bu.$inject=["complexPreview","connectionDocking","elementFactory","eventBus","layouter","rules"];const Gk={__depends__:[Uc,zk,_f],__init__:["appendPreview"],appendPreview:["type",bu]};var Nx=Math.min,$x=Math.max;function Xf(e){e.preventDefault()}function Xa(e){e.stopPropagation()}function Vk(e){return e.nodeType===Node.TEXT_NODE}function Wk(e){return[].slice.call(e)}function pi(e){this.container=e.container,this.parent=bt('<div class="djs-direct-editing-parent"><div class="djs-direct-editing-content" contenteditable="true"></div></div>'),this.content=ut("[contenteditable]",this.parent),this.keyHandler=e.keyHandler||function(){},this.resizeHandler=e.resizeHandler||function(){},this.focusoutHandler=e.focusoutHandler||function(){},this.autoResize=Sn(this.autoResize,this),this.handlePaste=Sn(this.handlePaste,this)}pi.prototype.create=function(e,t,n,i){var r=this,o=this.parent,a=this.content,s=this.container;i=this.options=i||{},t=this.style=t||{};var c=ci(t,["width","height","maxWidth","maxHeight","minWidth","minHeight","left","top","backgroundColor","position","overflow","border","wordWrap","textAlign","outline","transform"]);V(o.style,{width:e.width+"px",height:e.height+"px",maxWidth:e.maxWidth+"px",maxHeight:e.maxHeight+"px",minWidth:e.minWidth+"px",minHeight:e.minHeight+"px",left:e.x+"px",top:e.y+"px",backgroundColor:"#ffffff",position:"absolute",overflow:"visible",border:"1px solid #ccc",boxSizing:"border-box",wordWrap:"normal",textAlign:"center",outline:"none"},c);var u=ci(t,["fontFamily","fontSize","fontWeight","lineHeight","padding","paddingTop","paddingRight","paddingBottom","paddingLeft"]);return V(a.style,{boxSizing:"border-box",width:"100%",outline:"none",wordWrap:"break-word"},u),i.centerVertically&&V(a.style,{position:"absolute",top:"50%",transform:"translate(0, -50%)"},u),a.innerText=n,Ne.bind(a,"keydown",this.keyHandler),Ne.bind(a,"mousedown",Xa),Ne.bind(a,"paste",r.handlePaste),Ne.bind(a,"focusout",this.focusoutHandler),i.autoResize&&Ne.bind(a,"input",this.autoResize),i.resizable&&this.resizable(t),s.appendChild(o),this.setSelection(a.lastChild,a.lastChild&&a.lastChild.length),o},pi.prototype.handlePaste=function(e){var t=this.options,n=this.style;e.preventDefault();var i;if(e.clipboardData?i=e.clipboardData.getData("text/plain"):i=window.clipboardData.getData("Text"),this.insertText(i),t.autoResize){var r=this.autoResize(n);r&&this.resizeHandler(r)}},pi.prototype.insertText=function(e){e=Uk(e);var t=document.execCommand("insertText",!1,e);t||this._insertTextIE(e)},pi.prototype._insertTextIE=function(e){var t=this.getSelection(),n=t.startContainer,i=t.endContainer,r=t.startOffset,o=t.endOffset,a=t.commonAncestorContainer,s=Wk(a.childNodes),c,u;if(Vk(a)){var l=n.textContent;n.textContent=l.substring(0,r)+e+l.substring(o),c=n,u=r+e.length}else if(n===this.content&&i===this.content){var p=document.createTextNode(e);this.content.insertBefore(p,s[r]),c=p,u=p.textContent.length}else{var f=s.indexOf(n),d=s.indexOf(i);s.forEach(function(m,h){h===f?m.textContent=n.textContent.substring(0,r)+e+i.textContent.substring(o):h>f&&h<=d&&yi(m)}),c=n,u=r+e.length}c&&u!==void 0&&setTimeout(function(){self.setSelection(c,u)})},pi.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})}},pi.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){n=this.resizeHandle=bt('<div class="djs-direct-editing-resize-handle"></div>');var s,c,u,l,p=function(m){Xf(m),Xa(m),s=m.clientX,c=m.clientY;var h=t.getBoundingClientRect();u=h.width,l=h.height,Ne.bind(document,"mousemove",f),Ne.bind(document,"mouseup",d)},f=function(m){Xf(m),Xa(m);var h=Nx($x(u+m.clientX-s,i),o),y=Nx($x(l+m.clientY-c,r),a);t.style.width=h+"px",t.style.height=y+"px",e.resizeHandler({width:u,height:l,dx:m.clientX-s,dy:m.clientY-c})},d=function(m){Xf(m),Xa(m),Ne.unbind(document,"mousemove",f,!1),Ne.unbind(document,"mouseup",d,!1)};Ne.bind(n,"mousedown",p)}V(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)},pi.prototype.destroy=function(){var e=this.parent,t=this.content,n=this.resizeHandle;t.innerText="",e.removeAttribute("style"),t.removeAttribute("style"),Ne.unbind(t,"keydown",this.keyHandler),Ne.unbind(t,"mousedown",Xa),Ne.unbind(t,"input",this.autoResize),Ne.unbind(t,"paste",this.handlePaste),Ne.unbind(t,"focusout",this.focusoutHandler),n&&(n.removeAttribute("style"),yi(n)),yi(e)},pi.prototype.getValue=function(){return this.content.innerText.trim()},pi.prototype.getSelection=function(){var e=window.getSelection(),t=e.getRangeAt(0);return t},pi.prototype.setSelection=function(e,t){var n=document.createRange();e===null?n.selectNodeContents(this.content):(n.setStart(e,t),n.setEnd(e,t));var i=window.getSelection();i.removeAllRanges(),i.addRange(n)};function Uk(e){return e.replace(/\r\n|\r|\n/g,`
|
|
316
|
-
`)}function $n(e,t){this._eventBus=e,this._canvas=t,this._providers=[],this._textbox=new pi({container:t.getContainer(),keyHandler:Sn(this._handleKey,this),resizeHandler:Sn(this._handleResize,this),focusoutHandler:Sn(this._handleFocusout,this)}),e.on(["diagram.clear","diagram.destroy"],()=>this._cleanup())}$n.$inject=["eventBus","canvas"],$n.prototype.registerProvider=function(e){this._providers.push(e)},$n.prototype.isActive=function(e){return!!(this._active&&(!e||this._active.element===e))},$n.prototype.cancel=function(){this._active&&(this._fire("cancel"),this.close())},$n.prototype._fire=function(e,t){this._eventBus.fire("directEditing."+e,t||{active:this._active})},$n.prototype.close=function(){this._fire("deactivate"),this._cleanup(),this._canvas.restoreFocus&&this._canvas.restoreFocus()},$n.prototype._cleanup=function(){this._active&&(this._textbox.destroy(),this._active=null,this.resizable=void 0)},$n.prototype.complete=function(){var e=this._active;if(e){var t,n=e.context.bounds,i=this.$textbox.getBoundingClientRect(),r=this.getValue(),o=e.context.text;(r!==o||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()}},$n.prototype.getValue=function(){return this._textbox.getValue()},$n.prototype._handleKey=function(e){e.stopPropagation();var t=e.keyCode||e.charCode;if(t===27)return e.preventDefault(),this.cancel();if(t===13&&!e.shiftKey)return e.preventDefault(),this.complete()},$n.prototype._handleResize=function(e){this._fire("resize",e)},$n.prototype._handleFocusout=function(e){e.relatedTarget&&this._textbox.parent.contains(e.relatedTarget)||this.complete()},$n.prototype.activate=function(e){if(this.isActive()&&this.cancel(),this._eventBus.fire("directEditing.activate.allowed",{element:e})===!1)return!1;var t,n=ht(this._providers,function(i){return(t=i.activate(e))?i: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};const Fx={__depends__:[wc],__init__:["directEditing"],directEditing:["type",$n]};function Yk(e){return function(t){var n=t.target,i=te(e),r=i.eventDefinitions&&i.eventDefinitions[0],o=i.$type===n.type,a=(r&&r.$type)===n.eventDefinitionType,s=!!n.triggeredByEvent==!!i.triggeredByEvent,c=n.isExpanded===void 0||n.isExpanded===Xe(e);return!o||!a||!s||!c}}const qk={task:{label:"Task",className:"bpmn-icon-task",target:{type:"bpmn:Task"}},"user-task":{label:"User task",className:"bpmn-icon-user",target:{type:"bpmn:UserTask"}},"service-task":{label:"Service task",className:"bpmn-icon-service",target:{type:"bpmn:ServiceTask"}},"send-task":{label:"Send task",className:"bpmn-icon-send",target:{type:"bpmn:SendTask"}},"receive-task":{label:"Receive task",className:"bpmn-icon-receive",target:{type:"bpmn:ReceiveTask"}},"manual-task":{label:"Manual task",className:"bpmn-icon-manual",target:{type:"bpmn:ManualTask"}},"rule-task":{label:"Business rule task",className:"bpmn-icon-business-rule",target:{type:"bpmn:BusinessRuleTask"}},"script-task":{label:"Script task",className:"bpmn-icon-script",target:{type:"bpmn:ScriptTask"}},"call-activity":{label:"Call activity",className:"bpmn-icon-call-activity",target:{type:"bpmn:CallActivity"}},transaction:{label:"Transaction",className:"bpmn-icon-transaction",target:{type:"bpmn:Transaction",isExpanded:!0}},"event-subprocess":{label:"Event sub-process",className:"bpmn-icon-event-subprocess-expanded",target:{type:"bpmn:SubProcess",triggeredByEvent:!0,isExpanded:!0}},"collapsed-subprocess":{label:"Sub-process (collapsed)",className:"bpmn-icon-subprocess-collapsed",target:{type:"bpmn:SubProcess",isExpanded:!1}},"expanded-subprocess":{label:"Sub-process (expanded)",className:"bpmn-icon-subprocess-expanded",target:{type:"bpmn:SubProcess",isExpanded:!0}},"collapsed-ad-hoc-subprocess":{label:"Ad-hoc sub-process (collapsed)",className:"bpmn-icon-subprocess-collapsed",target:{type:"bpmn:AdHocSubProcess",isExpanded:!1}},"expanded-ad-hoc-subprocess":{label:"Ad-hoc sub-process (expanded)",className:"bpmn-icon-subprocess-expanded",target:{type:"bpmn:AdHocSubProcess",isExpanded:!0}},"exclusive-gateway":{label:"Exclusive gateway",className:"bpmn-icon-gateway-xor",target:{type:"bpmn:ExclusiveGateway"}},"parallel-gateway":{label:"Parallel gateway",className:"bpmn-icon-gateway-parallel",target:{type:"bpmn:ParallelGateway"}},"inclusive-gateway":{label:"Inclusive gateway",className:"bpmn-icon-gateway-or",target:{type:"bpmn:InclusiveGateway"}},"complex-gateway":{label:"Complex gateway",className:"bpmn-icon-gateway-complex",target:{type:"bpmn:ComplexGateway"}},"event-based-gateway":{label:"Event-based gateway",className:"bpmn-icon-gateway-eventbased",target:{type:"bpmn:EventBasedGateway",instantiate:!1,eventGatewayType:"Exclusive"}},"data-store-reference":{label:"Data store reference",className:"bpmn-icon-data-store",target:{type:"bpmn:DataStoreReference"}},"data-object-reference":{label:"Data object reference",className:"bpmn-icon-data-object",target:{type:"bpmn:DataObjectReference"}},"expanded-pool":{label:"Expanded pool/participant",className:"bpmn-icon-participant",target:{type:"bpmn:Participant",isExpanded:!0}},"collapsed-pool":{label:"Empty pool/participant",className:"bpmn-icon-lane",target:{type:"bpmn:Participant",isExpanded:!1}},"none-start-event":{label:"Start event",className:"bpmn-icon-start-event-none",target:{type:"bpmn:StartEvent"}},"none-intermediate-throwing":{label:"Intermediate throw event",className:"bpmn-icon-intermediate-event-none",target:{type:"bpmn:IntermediateThrowEvent"}},"none-boundary-event":{label:"Boundary event",className:"bpmn-icon-intermediate-event-none",target:{type:"bpmn:BoundaryEvent"}},"none-end-event":{label:"End event",className:"bpmn-icon-end-event-none",target:{type:"bpmn:EndEvent"}},"message-start":{label:"Message start event",className:"bpmn-icon-start-event-message",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:MessageEventDefinition",isInterrupting:!0}},"timer-start":{label:"Timer start event",className:"bpmn-icon-start-event-timer",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:TimerEventDefinition",isInterrupting:!0}},"conditional-start":{label:"Conditional start event",className:"bpmn-icon-start-event-condition",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",isInterrupting:!0}},"signal-start":{label:"Signal start event",className:"bpmn-icon-start-event-signal",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:SignalEventDefinition",isInterrupting:!0}},"error-start":{label:"Error start event",className:"bpmn-icon-start-event-error",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ErrorEventDefinition",isInterrupting:!0}},"escalation-start":{label:"Escalation start event",className:"bpmn-icon-start-event-escalation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",isInterrupting:!0}},"compensation-start":{label:"Compensation start event",className:"bpmn-icon-start-event-compensation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:CompensateEventDefinition",isInterrupting:!0}},"non-interrupting-message-start":{label:"Message start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-message",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:MessageEventDefinition",isInterrupting:!1}},"non-interrupting-timer-start":{label:"Timer start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-timer",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:TimerEventDefinition",isInterrupting:!1}},"non-interrupting-conditional-start":{label:"Conditional start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-condition",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",isInterrupting:!1}},"non-interrupting-signal-start":{label:"Signal start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-signal",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:SignalEventDefinition",isInterrupting:!1}},"non-interrupting-escalation-start":{label:"Escalation start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-escalation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",isInterrupting:!1}},"message-intermediate-catch":{label:"Message intermediate catch event",className:"bpmn-icon-intermediate-event-catch-message",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},"message-intermediate-throw":{label:"Message intermediate throw event",className:"bpmn-icon-intermediate-event-throw-message",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},"timer-intermediate-catch":{label:"Timer intermediate catch event",className:"bpmn-icon-intermediate-event-catch-timer",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:TimerEventDefinition"}},"escalation-intermediate-throw":{label:"Escalation intermediate throw event",className:"bpmn-icon-intermediate-event-throw-escalation",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},"conditional-intermediate-catch":{label:"Conditional intermediate catch event",className:"bpmn-icon-intermediate-event-catch-condition",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition"}},"link-intermediate-catch":{label:"Link intermediate catch event",className:"bpmn-icon-intermediate-event-catch-link",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:LinkEventDefinition",eventDefinitionAttrs:{name:""}}},"link-intermediate-throw":{label:"Link intermediate throw event",className:"bpmn-icon-intermediate-event-throw-link",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:LinkEventDefinition",eventDefinitionAttrs:{name:""}}},"compensation-intermediate-throw":{label:"Compensation intermediate throw event",className:"bpmn-icon-intermediate-event-throw-compensation",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},"signal-intermediate-catch":{label:"Signal intermediate catch event",className:"bpmn-icon-intermediate-event-catch-signal",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},"signal-intermediate-throw":{label:"Signal intermediate throw event",className:"bpmn-icon-intermediate-event-throw-signal",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},"message-boundary":{label:"Message boundary event",className:"bpmn-icon-intermediate-event-catch-message",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:MessageEventDefinition",cancelActivity:!0}},"timer-boundary":{label:"Timer boundary event",className:"bpmn-icon-intermediate-event-catch-timer",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:TimerEventDefinition",cancelActivity:!0}},"escalation-boundary":{label:"Escalation boundary event",className:"bpmn-icon-intermediate-event-catch-escalation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",cancelActivity:!0}},"conditional-boundary":{label:"Conditional boundary event",className:"bpmn-icon-intermediate-event-catch-condition",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",cancelActivity:!0}},"error-boundary":{label:"Error boundary event",className:"bpmn-icon-intermediate-event-catch-error",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ErrorEventDefinition",cancelActivity:!0}},"cancel-boundary":{label:"Cancel boundary event",className:"bpmn-icon-intermediate-event-catch-cancel",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:CancelEventDefinition",cancelActivity:!0}},"signal-boundary":{label:"Signal boundary event",className:"bpmn-icon-intermediate-event-catch-signal",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:SignalEventDefinition",cancelActivity:!0}},"compensation-boundary":{label:"Compensation boundary event",className:"bpmn-icon-intermediate-event-catch-compensation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:CompensateEventDefinition",cancelActivity:!0}},"non-interrupting-message-boundary":{label:"Message boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-message",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:MessageEventDefinition",cancelActivity:!1}},"non-interrupting-timer-boundary":{label:"Timer boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-timer",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:TimerEventDefinition",cancelActivity:!1}},"non-interrupting-escalation-boundary":{label:"Escalation boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-escalation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",cancelActivity:!1}},"non-interrupting-conditional-boundary":{label:"Conditional boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-condition",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",cancelActivity:!1}},"non-interrupting-signal-boundary":{label:"Signal boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-signal",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:SignalEventDefinition",cancelActivity:!1}},"message-end":{label:"Message end event",className:"bpmn-icon-end-event-message",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},"escalation-end":{label:"Escalation end event",className:"bpmn-icon-end-event-escalation",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},"error-end":{label:"Error end event",className:"bpmn-icon-end-event-error",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:ErrorEventDefinition"}},"cancel-end":{label:"Cancel end event",className:"bpmn-icon-end-event-cancel",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:CancelEventDefinition"}},"compensation-end":{label:"Compensation end event",className:"bpmn-icon-end-event-compensation",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},"signal-end":{label:"Signal end event",className:"bpmn-icon-end-event-signal",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},"terminate-end":{label:"Terminate end event",className:"bpmn-icon-end-event-terminate",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:TerminateEventDefinition"}}};function Q(e,t={}){var n=qk[e];if(!n)throw new Error("unknown popup entry <"+e+">");return{...n,actionName:"replace-with-"+e,...t}}var Kk=[Q("none-start-event",{actionName:"replace-with-none-start"}),Q("none-intermediate-throwing"),Q("none-end-event",{actionName:"replace-with-none-end"}),Q("message-start"),Q("timer-start"),Q("conditional-start"),Q("signal-start")],Xk=[Q("none-start-event",{actionName:"replace-with-none-start"}),Q("none-intermediate-throwing"),Q("none-end-event",{actionName:"replace-with-none-end"})],Zk=[Q("none-start-event",{actionName:"replace-with-none-start"}),Q("none-intermediate-throwing",{actionName:"replace-with-none-intermediate-throw"}),Q("none-end-event",{actionName:"replace-with-none-end"}),Q("message-intermediate-catch"),Q("message-intermediate-throw"),Q("timer-intermediate-catch"),Q("escalation-intermediate-throw"),Q("conditional-intermediate-catch"),Q("link-intermediate-catch"),Q("link-intermediate-throw"),Q("compensation-intermediate-throw"),Q("signal-intermediate-catch"),Q("signal-intermediate-throw")],Qk=[Q("none-start-event",{actionName:"replace-with-none-start"}),Q("none-intermediate-throwing",{actionName:"replace-with-none-intermediate-throw"}),Q("none-end-event",{actionName:"replace-with-none-end"}),Q("message-end"),Q("escalation-end"),Q("error-end"),Q("cancel-end"),Q("compensation-end"),Q("signal-end"),Q("terminate-end")],Jk=[Q("exclusive-gateway"),Q("parallel-gateway"),Q("inclusive-gateway"),Q("complex-gateway"),Q("event-based-gateway")],eO=[Q("transaction"),Q("event-subprocess"),Q("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess",label:"Ad-hoc sub-process"}),Q("collapsed-subprocess")],tO=[Q("expanded-subprocess",{actionName:"replace-with-subprocess",label:"Sub-process"}),Q("transaction"),Q("event-subprocess"),Q("collapsed-ad-hoc-subprocess")],jx=[Q("transaction"),Q("expanded-subprocess",{actionName:"replace-with-subprocess",label:"Sub-process"}),Q("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess",label:"Ad-hoc sub-process"}),Q("event-subprocess")],nO=jx,Hx=[Q("task"),Q("user-task"),Q("service-task"),Q("send-task"),Q("receive-task"),Q("manual-task"),Q("rule-task"),Q("script-task"),Q("call-activity"),Q("collapsed-subprocess"),Q("expanded-subprocess"),Q("collapsed-ad-hoc-subprocess"),Q("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess"})],iO=[Q("data-store-reference")],rO=[Q("data-object-reference")],oO=[Q("message-boundary"),Q("timer-boundary"),Q("escalation-boundary"),Q("conditional-boundary"),Q("error-boundary"),Q("cancel-boundary"),Q("signal-boundary"),Q("compensation-boundary"),Q("non-interrupting-message-boundary"),Q("non-interrupting-timer-boundary"),Q("non-interrupting-escalation-boundary"),Q("non-interrupting-conditional-boundary"),Q("non-interrupting-signal-boundary")],aO=[Q("message-start"),Q("timer-start"),Q("conditional-start"),Q("signal-start"),Q("error-start"),Q("escalation-start"),Q("compensation-start"),Q("non-interrupting-message-start"),Q("non-interrupting-timer-start"),Q("non-interrupting-conditional-start"),Q("non-interrupting-signal-start"),Q("non-interrupting-escalation-start")],sO=[{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"}],cO=[Q("expanded-pool"),Q("collapsed-pool",{label:function(e){var t="Empty pool/participant";return e.children&&e.children.length&&(t+=" (removes content)"),t}})],uO={"bpmn:MessageEventDefinition":[Q("message-start"),Q("message-intermediate-catch"),Q("message-intermediate-throw"),Q("message-end")],"bpmn:TimerEventDefinition":[Q("timer-start"),Q("timer-intermediate-catch")],"bpmn:ConditionalEventDefinition":[Q("conditional-start"),Q("conditional-intermediate-catch")],"bpmn:SignalEventDefinition":[Q("signal-start"),Q("signal-intermediate-catch"),Q("signal-intermediate-throw"),Q("signal-end")],"bpmn:ErrorEventDefinition":[Q("error-start"),Q("error-end")],"bpmn:EscalationEventDefinition":[Q("escalation-start"),Q("escalation-intermediate-throw"),Q("escalation-end")],"bpmn:CompensateEventDefinition":[Q("compensation-start"),Q("compensation-intermediate-throw"),Q("compensation-end")]};const zx={"start-event-non-interrupting":`
|
|
315
|
+
</svg>`},mk=900;function Go(e,t,n,i){e.registerProvider(mk,this),this._contextPad=e,this._popupMenu=t,this._translate=n,this._canvas=i}Go.$inject=["contextPad","popupMenu","translate","canvas"],Go.prototype.getMultiElementContextPadEntries=function(e){var t={};return this._isAllowed(e)&&V(t,this._getEntries(e)),t},Go.prototype._isAllowed=function(e){return!this._popupMenu.isEmpty(e,"align-elements")},Go.prototype._getEntries=function(){var e=this;return{"align-elements":{group:"align-elements",title:e._translate("Align elements"),html:`<div class="entry">${cx.align}</div>`,action:{click:function(t,n){var i=e._getMenuPosition(n);V(i,{cursor:{x:t.x,y:t.y}}),e._popupMenu.open(n,"align-elements",i)}}}}},Go.prototype._getMenuPosition=function(e){var t=5,n=this._contextPad.getPad(e).html,i=n.getBoundingClientRect(),r={x:i.left,y:i.bottom+t};return r};var gk=["left","center","right","top","middle","bottom"];function Ya(e,t,n,i){this._alignElements=t,this._translate=n,this._popupMenu=e,this._rules=i,e.registerProvider("align-elements",this)}Ya.$inject=["popupMenu","alignElements","translate","rules"],Ya.prototype.getPopupMenuEntries=function(e){var t={};return this._isAllowed(e)&&V(t,this._getEntries(e)),t},Ya.prototype._isAllowed=function(e){return this._rules.allowed("elements.align",{elements:e})},Ya.prototype._getEntries=function(e){var t=this._alignElements,n=this._translate,i=this._popupMenu,r={};return F(gk,function(o){r["align-elements-"+o]={group:"align",title:n("Align elements "+o),className:"bjs-align-elements-menu-entry",imageHtml:cx[o],action:function(){t.trigger(e,o),i.close()}}}),r};function hu(e){ti.call(this,e)}hu.$inject=["eventBus"],be(hu,ti),hu.prototype.init=function(){this.addRule("elements.align",function(e){var t=e.elements,n=Ye(t,function(i){return!(i.waypoints||i.host||i.labelTarget)});return n=Ns(n),n.length<2?!1:n})};const yk={__depends__:[A2,bb,zf],__init__:["alignElementsContextPadProvider","alignElementsMenuProvider","bpmnAlignElements"],alignElementsContextPadProvider:["type",Go],alignElementsMenuProvider:["type",Ya],bpmnAlignElements:["type",hu]};function Yi(e,t,n,i){J.call(this,e),this._elementRegistry=t,this._modeling=n,this._rules=i;var r=this;this.postExecuted(["shape.create"],function(o){var a=o.context,s=a.hints||{},c=a.shape,u=a.parent||a.newParent;s.autoResize!==!1&&r._expand([c],u)}),this.postExecuted(["elements.move"],function(o){var a=o.context,s=Vu(ro(a.closure.topLevel)),c=a.hints,u=c?c.autoResize:!0;if(u!==!1){var l=oo(s,function(p){return p.parent.id});F(l,function(p,f){De(u)&&(p=p.filter(function(d){return mt(u,ao({id:d.id}))})),r._expand(p,f)})}}),this.postExecuted(["shape.toggleCollapse"],function(o){var a=o.context,s=a.hints,c=a.shape;s&&s.autoResize===!1||c.collapsed||r._expand(c.children||[],c)}),this.postExecuted(["shape.resize"],function(o){var a=o.context,s=a.hints,c=a.shape,u=c.parent;s&&s.autoResize===!1||u&&r._expand([c],u)})}Yi.$inject=["eventBus","elementRegistry","modeling","rules"],be(Yi,J),Yi.prototype._getOptimalBounds=function(e,t){var n=this.getOffset(t),i=this.getPadding(t),r=ke(Bt(e)),o=ke(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),js(V({},o,a))},Yi.prototype._expand=function(e,t){typeof t=="string"&&(t=this._elementRegistry.get(t));var n=this._rules.allowed("element.autoResize",{elements:e,target:t});if(n){var i=this._getOptimalBounds(e,t);if(vk(i,t)){var r=bk(ui(t,["x","y","width","height"]),i);this.resize(t,i,{autoResize:r});var o=t.parent;o&&this._expand([t],o)}}},Yi.prototype.getOffset=function(e){return{top:60,bottom:60,left:100,right:100}},Yi.prototype.getPadding=function(e){return{top:2,bottom:2,left:15,right:15}},Yi.prototype.resize=function(e,t,n){this._modeling.resizeShape(e,t,null,n)};function vk(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}function bk(e,t){var n="";return e=ke(e),t=ke(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")),n}function mu(e){e.invoke(Yi,this)}mu.$inject=["injector"],be(mu,Yi),mu.prototype.resize=function(e,t,n){S(e,"bpmn:Participant")?this._modeling.resizeLane(e,t,null,n):this._modeling.resizeShape(e,t,null,n)};function qa(e){ti.call(this,e);var t=this;this.addRule("element.autoResize",function(n){return t.canResize(n.elements,n.target)})}qa.$inject=["eventBus"],be(qa,ti),qa.prototype.canResize=function(e,t){return!1};function gu(e,t){qa.call(this,e),this._modeling=t}be(gu,qa),gu.$inject=["eventBus","modeling"],gu.prototype.canResize=function(e,t){if(S(t.di,"bpmndi:BPMNPlane")||!S(t,"bpmn:Participant")&&!S(t,"bpmn:Lane")&&!S(t,"bpmn:SubProcess"))return!1;var n=!0;return F(e,function(i){if(S(i,"bpmn:Lane")||Ge(i)){n=!1;return}}),n};const xk={__init__:["bpmnAutoResize","bpmnAutoResizeProvider"],bpmnAutoResize:["type",mu],bpmnAutoResizeProvider:["type",gu]};function Vo(e,t,n){this._canvas=n,this._opts=V({scrollThresholdIn:[20,20,20,20],scrollThresholdOut:[0,0,0,0],scrollRepeatTimeout:15,scrollStep:10},e);var i=this;t.on("drag.move",function(r){var o=i._toBorderPoint(r);i.startScroll(o)}),t.on(["drag.cleanup"],function(){i.stopScroll()})}Vo.$inject=["config.autoScroll","eventBus","canvas"],Vo.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++)_k(o[c],n.scrollThresholdOut[c],n.scrollThresholdIn[c])&&(c===0?a=n.scrollStep:c==1?s=n.scrollStep:c==2?a=-n.scrollStep:c==3&&(s=-n.scrollStep));(a!==0||s!==0)&&(t.scroll({dx:a,dy:s}),this._scrolling=setTimeout(function(){i.startScroll(e)},n.scrollRepeatTimeout))};function _k(e,t,n){return t<e&&e<n}Vo.prototype.stopScroll=function(){clearTimeout(this._scrolling)},Vo.prototype.setOptions=function(e){this._opts=V({},this._opts,e)},Vo.prototype._toBorderPoint=function(e){var t=this._canvas._container.getBoundingClientRect(),n=Hr(e.originalEvent);return{x:n.x-t.left,y:n.y-t.top}};const wk={__depends__:[Hi],__init__:["autoScroll"],autoScroll:["type",Vo]};var ux="djs-bendpoint",lx="djs-segment-dragger";function Ek(e,t){var n=Hr(t),i=e._container.getBoundingClientRect(),r;r={x:i.left,y:i.top};var o=e.viewbox();return{x:o.x+(n.x-r.x)/o.scale,y:o.y+(n.y-r.y)/o.scale}}function Gf(e,t,n){var i=Ek(e,n),r=sp(t,i);return r}function Vf(e,t){var n=Te("g");Qe(n).add(ux),$e(e,n);var i=Te("circle");xe(i,{cx:0,cy:0,r:4}),Qe(i).add("djs-visual"),$e(n,i);var r=Te("circle");return xe(r,{cx:0,cy:0,r:10}),Qe(r).add("djs-hit"),$e(n,r),t&&Qe(n).add(t),n}function Sk(e,t,n,i){var r=Te("g");$e(e,r);var o=18,a=6,s=11,c=Ck(t,n,i),u=a+s,l=Te("rect");xe(l,{x:-o/2,y:-a/2,width:o,height:a}),Qe(l).add("djs-visual"),$e(r,l);var p=Te("rect");return xe(p,{x:-c/2,y:-u/2,width:c,height:u}),Qe(p).add("djs-hit"),$e(r,p),Nm(r,i==="v"?90:0),r}function px(e,t,n){var i=Te("g"),r=Bl(t,n),o=Ii(t,n);return $e(e,i),Sk(i,t,n,o),Qe(i).add(lx),Qe(i).add(o==="h"?"horizontal":"vertical"),cn(i,r.x,r.y),i}function Wf(e){return Math.abs(Math.round(e*2/3))}function Rk(e,t){var n=Pk(e,t);return dp(e,n)}function Ck(e,t,n){var i=t.x-e.x,r=t.y-e.y;return Wf(n==="h"?i:r)}function Pk(e,t){for(var n=t.waypoints,i=1/0,r,o=0;o<n.length-1;o++){var a=n[o],s=n[o+1],c=Eg(e,[a,s]);c<i&&(i=c,r=o)}return[n[r],n[r+1]]}function fx(e,t,n,i,r){function o(b,x,C){var T=b.index,k=b.point,A,I,D,L,z,ne;return T<=0||b.bendpoint?!1:(A=x[T-1],I=x[T],D=Bl(A,I),L=Ii(A,I),z=Math.abs(k.x-D.x),ne=Math.abs(k.y-D.y),L&&z<=C&&ne<=C)}function a(b,x){var C=b.waypoints,T,k,A,I;return x.index<=0||x.bendpoint||(T={start:C[x.index-1],end:C[x.index]},k=Ii(T.start,T.end),!k)?null:(k==="h"?A=T.end.x-T.start.x:A=T.end.y-T.start.y,I=Wf(A)/2,I)}function s(b,x){var C=x.waypoints,T=Gf(t,C,b),k;if(T){k=a(x,T);var A;if(o(T,C,k)?A=r.start(b,x,T.index):A=i.start(b,x,T.index,!T.bendpoint),A!==!1)return!0}}function c(b,x,C){Ne.bind(b,x,function(T){n.triggerMouseEvent(x,T,C),T.stopPropagation()})}function u(b,x){var C=t.getLayer("overlays"),T=lt('.djs-bendpoints[data-element-id="'+za(b.id)+'"]',C);return!T&&x&&(T=Te("g"),xe(T,{"data-element-id":b.id}),Qe(T).add("djs-bendpoints"),$e(C,T),c(T,"mousedown",b),c(T,"click",b),c(T,"dblclick",b)),T}function l(b,x){return lt('.djs-segment-dragger[data-segment-idx="'+b+'"]',x)}function p(b,x){x.waypoints.forEach(function(C,T){var k=Vf(b);$e(b,k),cn(k,C.x,C.y)}),Vf(b,"floating")}function f(b,x){for(var C=x.waypoints,T,k,A,I=1;I<C.length;I++)T=C[I-1],k=C[I],Ii(T,k)&&(A=px(b,T,k),xe(A,{"data-segment-idx":I}),c(A,"mousemove",x))}function d(b){F(Ds("."+ux,b),function(x){Yt(x)})}function m(b){F(Ds("."+lx,b),function(x){Yt(x)})}function h(b){var x=u(b);return x||(x=u(b,!0),p(x,b),f(x,b)),x}function y(b){var x=u(b);x&&(m(x),d(x),f(x,b),p(x,b))}function g(b,x){var C=lt(".floating",b),T=x.point;C&&(cn(C,T.x,T.y),Qe(C).add("positioned"))}function v(b,x,C){var T=l(x.index,b),k=C[x.index-1],A=C[x.index],I=x.point,D=Bl(k,A),L=Ii(k,A),z,ne;T&&(z=Ak(T),ne={x:I.x-D.x,y:I.y-D.y},L==="v"&&(ne={x:ne.y,y:ne.x}),cn(z,ne.x,ne.y))}e.on("connection.changed",function(b){y(b.element)}),e.on("connection.remove",function(b){var x=u(b.element);x&&Yt(x)}),e.on("element.marker.update",function(b){var x=b.element,C;x.waypoints&&(C=h(x),b.add?Qe(C).add(b.marker):Qe(C).remove(b.marker))}),e.on("element.mousemove",function(b){var x=b.element,C=x.waypoints,T,k;if(C){if(T=u(x,!0),k=Gf(t,C,b.originalEvent),!k)return;g(T,k),k.bendpoint||v(T,k,C)}}),e.on("element.mousedown",function(b){if(pr(b)){var x=b.originalEvent,C=b.element;if(C.waypoints)return s(x,C)}}),e.on("selection.changed",function(b){var x=b.newSelection,C=x[0];C&&C.waypoints&&h(C)}),e.on("element.hover",function(b){var x=b.element;x.waypoints&&h(x)}),e.on("element.out",function(b){var x=b.element;if(x.waypoints){var C=u(x);if(C){var T=lt(".floating",C);T&&Qe(T).remove("positioned")}}}),e.on("element.updateId",function(b){var x=b.element,C=b.newId;if(x.waypoints){var T=u(x);T&&xe(T,{"data-element-id":C})}}),this.addHandles=h,this.updateHandles=y,this.getBendpointsContainer=u,this.getSegmentDragger=l}fx.$inject=["eventBus","canvas","interactionEvents","bendpointMove","connectionSegmentMove"];function Ak(e){return lt(".djs-visual",e)}var dx=Math.round,Kr="reconnectStart",Xr="reconnectEnd",Ka="updateWaypoints";function Uf(e,t,n,i,r,o){this._injector=e,this.start=function(a,s,c,u){var l=n.getGraphics(s),p=s.source,f=s.target,d=s.waypoints,m;!u&&c===0?m=Kr:!u&&c===d.length-1?m=Xr:m=Ka;var h=m===Ka?"connection.updateWaypoints":"connection.reconnect",y=r.allowed(h,{connection:s,source:p,target:f});if(y===!1&&(y=r.allowed(h,{connection:s,source:f,target:p})),y!==!1)return i.init(a,"bendpoint.move",{data:{connection:s,connectionGfx:l,context:{allowed:y,bendpointIndex:c,connection:s,source:p,target:f,insert:u,type:m}}})},t.on("bendpoint.move.hover",function(a){var s=a.context,c=s.connection,u=c.source,l=c.target,p=a.hover,f=s.type;s.hover=p;var d;if(p){var m=f===Ka?"connection.updateWaypoints":"connection.reconnect";if(d=s.allowed=r.allowed(m,{connection:c,source:f===Kr?p:u,target:f===Xr?p:l}),d){s.source=f===Kr?p:u,s.target=f===Xr?p:l;return}d===!1&&(d=s.allowed=r.allowed(m,{connection:c,source:f===Xr?p:l,target:f===Kr?p:u})),d&&(s.source=f===Xr?p:l,s.target=f===Kr?p:u)}}),t.on(["bendpoint.move.out","bendpoint.move.cleanup"],function(a){var s=a.context,c=s.type;s.hover=null,s.source=null,s.target=null,c!==Ka&&(s.allowed=!1)}),t.on("bendpoint.move.end",function(a){var s=a.context,c=s.allowed,u=s.bendpointIndex,l=s.connection,p=s.insert,f=l.waypoints.slice(),d=s.source,m=s.target,h=s.type,y=s.hints||{},g={x:dx(a.x),y:dx(a.y)};if(!c)return!1;h===Ka?(p?f.splice(u,0,g):f[u]=g,y.bendpointMove={insert:p,bendpointIndex:u},f=this.cropWaypoints(l,f),o.updateWaypoints(l,WS(f),y)):(h===Kr?(y.docking="source",yu(s)&&(y.docking="target",y.newWaypoints=f.reverse())):h===Xr&&(y.docking="target",yu(s)&&(y.docking="source",y.newWaypoints=f.reverse())),o.reconnect(l,d,m,g,y))},this)}Uf.$inject=["injector","eventBus","canvas","dragging","rules","modeling"],Uf.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};function yu(e){var t=e.hover,n=e.source,i=e.target,r=e.type;if(r===Kr)return t&&i&&t===i&&n!==i;if(r===Xr)return t&&n&&t===n&&n!==i}var Tk="reconnectStart",Mk="reconnectEnd",hx="updateWaypoints",Xa="connect-ok",vu="connect-not-ok",mx="connect-hover",gx="djs-updating",yx="djs-dragging",vx=1100;function bx(e,t,n,i){this._injector=t;var r=t.get("connectionPreview",!1);n.on("bendpoint.move.start",function(o){var a=o.context,s=a.bendpointIndex,c=a.connection,u=a.insert,l=c.waypoints,p=l.slice();a.waypoints=l,u&&p.splice(s,0,{x:o.x,y:o.y}),c.waypoints=p;var f=a.draggerGfx=Vf(i.getLayer("overlays"));Qe(f).add("djs-dragging"),i.addMarker(c,yx),i.addMarker(c,gx)}),n.on("bendpoint.move.hover",function(o){var a=o.context,s=a.allowed,c=a.hover,u=a.type;if(c){if(i.addMarker(c,mx),u===hx)return;s?(i.removeMarker(c,vu),i.addMarker(c,Xa)):s===!1&&(i.removeMarker(c,Xa),i.addMarker(c,vu))}}),n.on(["bendpoint.move.out","bendpoint.move.cleanup"],vx,function(o){var a=o.context,s=a.hover,c=a.target;s&&(i.removeMarker(s,mx),i.removeMarker(s,c?Xa:vu))}),n.on("bendpoint.move.move",function(o){var a=o.context,s=a.allowed,c=a.bendpointIndex,u=a.draggerGfx,l=a.hover,p=a.type,f=a.connection,d=f.source,m=f.target,h=f.waypoints.slice(),y={x:o.x,y:o.y},g=a.hints||{},v={};r&&(g.connectionStart&&(v.connectionStart=g.connectionStart),g.connectionEnd&&(v.connectionEnd=g.connectionEnd),p===Tk?yu(a)?(v.connectionEnd=v.connectionEnd||y,v.source=m,v.target=l||d,h=h.reverse()):(v.connectionStart=v.connectionStart||y,v.source=l||d,v.target=m):p===Mk?yu(a)?(v.connectionStart=v.connectionStart||y,v.source=l||m,v.target=d,h=h.reverse()):(v.connectionEnd=v.connectionEnd||y,v.source=d,v.target=l||m):(v.noCropping=!0,v.noLayout=!0,h[c]=y),p===hx&&(h=e.cropWaypoints(f,h)),v.waypoints=h,r.drawPreview(a,s,v)),cn(u,o.x,o.y)},this),n.on(["bendpoint.move.end","bendpoint.move.cancel"],vx,function(o){var a=o.context,s=a.connection,c=a.draggerGfx,u=a.hover,l=a.target,p=a.waypoints;s.waypoints=p,Yt(c),i.removeMarker(s,gx),i.removeMarker(s,yx),u&&(i.removeMarker(u,Xa),i.removeMarker(u,l?Xa:vu)),r&&r.cleanUp(a)})}bx.$inject=["bendpointMove","injector","eventBus","canvas"];var xx="connect-hover",_x="djs-updating";function wx(e,t,n){return Yf(e,t,e[t]+n)}function Yf(e,t,n){return{x:t==="x"?n:e.x,y:t==="y"?n:e.y}}function kk(e,t,n,i){var r=Math.max(t[i],n[i]),o=Math.min(t[i],n[i]),a=20,s=Math.min(Math.max(o+a,e[i]),r-a);return Yf(t,i,s)}function Ex(e){return e==="x"?"y":"x"}function Sx(e,t,n){var i,r;return e.original?e.original:(i=Le(t),r=Ex(n),Yf(e,r,i[r]))}function Rx(e,t,n,i,r,o){var a=e.get("connectionDocking",!1);this.start=function(p,f,d){var m,h=n.getGraphics(f),y=d-1,g=d,v=f.waypoints,b=v[y],x=v[g],C=Gf(n,v,p),T,k,A;if(T=Ii(b,x),!!T)return k=T==="v"?"x":"y",y===0&&(b=Sx(b,f.source,k)),g===v.length-1&&(x=Sx(x,f.target,k)),C?A=C.point:A={x:(b.x+x.x)/2,y:(b.y+x.y)/2},m={connection:f,segmentStartIndex:y,segmentEndIndex:g,segmentStart:b,segmentEnd:x,axis:k,dragPosition:A},i.init(p,A,"connectionSegment.move",{cursor:k==="x"?"resize-ew":"resize-ns",data:{connection:f,connectionGfx:h,context:m}})};function s(p,f){if(!a)return f;var d=p.waypoints,m;return p.waypoints=f,m=a.getCroppedWaypoints(p),p.waypoints=d,m}function c(p){r.update("connection",p.connection,p.connectionGfx)}function u(p,f,d){var m=p.newWaypoints,h=p.segmentStartIndex+f,y=m[h],g=p.segmentEndIndex+f,v=m[g],b=Ex(p.axis),x=kk(d,y,v,b);cn(p.draggerGfx,x.x,x.y)}function l(p,f){var d=0,m=p.filter(function(h,y){return Il(p[y-1],p[y+1],h)?(d=y<=f?d-1:d,!1):!0});return{waypoints:m,segmentOffset:d}}t.on("connectionSegment.move.start",function(p){var f=p.context,d=p.connection,m=n.getLayer("overlays");f.originalWaypoints=d.waypoints.slice(),f.draggerGfx=px(m,f.segmentStart,f.segmentEnd),Qe(f.draggerGfx).add("djs-dragging"),n.addMarker(d,_x)}),t.on("connectionSegment.move.move",function(p){var f=p.context,d=f.connection,m=f.segmentStartIndex,h=f.segmentEndIndex,y=f.segmentStart,g=f.segmentEnd,v=f.axis,b=f.originalWaypoints.slice(),x=wx(y,v,p["d"+v]),C=wx(g,v,p["d"+v]),T=b.length,k=0;b[m]=x,b[h]=C;var A,I;m<2&&(A=sn(d.source,x),m===1?A==="intersect"&&(b.shift(),b[0]=x,k--):A!=="intersect"&&(b.unshift(y),k++)),h>T-3&&(I=sn(d.target,C),h===T-2?I==="intersect"&&(b.pop(),b[b.length-1]=C):I!=="intersect"&&b.push(g)),f.newWaypoints=d.waypoints=s(d,b),u(f,k,p),f.newSegmentStartIndex=m+k,c(p)}),t.on("connectionSegment.move.hover",function(p){p.context.hover=p.hover,n.addMarker(p.hover,xx)}),t.on(["connectionSegment.move.out","connectionSegment.move.cleanup"],function(p){var f=p.context.hover;f&&n.removeMarker(f,xx)}),t.on("connectionSegment.move.cleanup",function(p){var f=p.context,d=f.connection;f.draggerGfx&&Yt(f.draggerGfx),n.removeMarker(d,_x)}),t.on(["connectionSegment.move.cancel","connectionSegment.move.end"],function(p){var f=p.context,d=f.connection;d.waypoints=f.originalWaypoints,c(p)}),t.on("connectionSegment.move.end",function(p){var f=p.context,d=f.connection,m=f.newWaypoints,h=f.newSegmentStartIndex;m=m.map(function(C){return{original:C.original,x:Math.round(C.x),y:Math.round(C.y)}});var y=l(m,h),g=y.waypoints,v=s(d,g),b=y.segmentOffset,x={segmentMove:{segmentStartIndex:f.segmentStartIndex,newSegmentStartIndex:h+b}};o.updateWaypoints(d,v,x)})}Rx.$inject=["injector","eventBus","canvas","dragging","graphicsFactory","modeling"];var Ok=Math.abs,Cx=Math.round;function Dk(e,t,n){n=n===void 0?10:n;var i,r;for(i=0;i<t.length;i++)if(r=t[i],Ok(r-e)<=n)return r}function Px(e){return{x:e.x,y:e.y}}function Ax(e){return{x:e.x+e.width,y:e.y+e.height}}function oi(e,t){return!e||isNaN(e.x)||isNaN(e.y)?t:{x:Cx(e.x+e.width/2),y:Cx(e.y+e.height/2)}}function Wo(e,t){var n=e.snapped;return n?typeof t=="string"?n[t]:n.x&&n.y:!1}function jt(e,t,n){if(typeof t!="string")throw new Error("axis must be in [x, y]");if(typeof n!="number"&&n!==!1)throw new Error("value must be Number or false");var i,r=e[t],o=e.snapped=e.snapped||{};return n===!1?o[t]=!1:(o[t]=!0,i=n-r,e[t]+=i,e["d"+t]+=i),r}function Tx(e){return e.children||[]}var Lk=Math.abs,Mx=Math.round,qf=10;function kx(e){function t(o,a){if(De(o)){for(var s=o.length;s--;)if(Lk(o[s]-a)<=qf)return o[s]}else{o=+o;var c=a%o;if(c<qf)return a-c;if(c>o-qf)return a-c+o}return a}function n(o,a){if(o.waypoints)return Rk(a,o);if(o.width)return{x:Mx(o.width/2+o.x),y:Mx(o.height/2+o.y)}}function i(o){var a=o.context,s=a.snapPoints,c=a.connection,u=c.waypoints,l=a.segmentStart,p=a.segmentStartIndex,f=a.segmentEnd,d=a.segmentEndIndex,m=a.axis;if(s)return s;var h=[u[p-1],l,f,u[d+1]];return p<2&&h.unshift(n(c.source,o)),d>u.length-3&&h.unshift(n(c.target,o)),a.snapPoints=s={horizontal:[],vertical:[]},F(h,function(y){y&&(y=y.original||y,m==="y"&&s.horizontal.push(y.y),m==="x"&&s.vertical.push(y.x))}),s}e.on("connectionSegment.move.move",1500,function(o){var a=i(o),s=o.x,c=o.y,u,l;if(a){u=t(a.vertical,s),l=t(a.horizontal,c);var p=s-u,f=c-l;V(o,{dx:o.dx-p,dy:o.dy-f,x:u,y:l}),(p||a.vertical.indexOf(s)!==-1)&&jt(o,"x",u),(f||a.horizontal.indexOf(c)!==-1)&&jt(o,"y",l)}});function r(o){var a=o.snapPoints,s=o.connection.waypoints,c=o.bendpointIndex;if(a)return a;var u=[s[c-1],s[c+1]];return o.snapPoints=a={horizontal:[],vertical:[]},F(u,function(l){l&&(l=l.original||l,a.horizontal.push(l.y),a.vertical.push(l.x))}),a}e.on(["connect.hover","connect.move","connect.end"],1500,function(o){var a=o.context,s=a.hover,c=s&&n(s,o);!ft(s)||!c||!c.x||!c.y||(jt(o,"x",c.x),jt(o,"y",c.y))}),e.on(["bendpoint.move.move","bendpoint.move.end"],1500,function(o){var a=o.context,s=r(a),c=a.hover,u=c&&n(c,o),l=o.x,p=o.y,f,d;if(s){f=t(u?s.vertical.concat([u.x]):s.vertical,l),d=t(u?s.horizontal.concat([u.y]):s.horizontal,p);var m=l-f,h=p-d;V(o,{dx:o.dx-m,dy:o.dy-h,x:o.x-m,y:o.y-h}),(m||s.vertical.indexOf(l)!==-1)&&jt(o,"x",f),(h||s.horizontal.indexOf(p)!==-1)&&jt(o,"y",d)}})}kx.$inject=["eventBus"];const Ik={__depends__:[Hi,Si],__init__:["bendpoints","bendpointSnapping","bendpointMovePreview"],bendpoints:["type",fx],bendpointMove:["type",Uf],bendpointMovePreview:["type",bx],connectionSegmentMove:["type",Rx],bendpointSnapping:["type",kx]};function Ox(e,t,n,i){function r(a,s){return i.allowed("connection.create",{source:a,target:s})}function o(a,s){return r(s,a)}e.on("connect.hover",function(a){var s=a.context,c=s.start,u=a.hover,l;if(s.hover=u,l=s.canExecute=r(c,u),!io(l)){if(l!==!1){s.source=c,s.target=u;return}l=s.canExecute=o(c,u),!io(l)&&l!==!1&&(s.source=u,s.target=c)}}),e.on(["connect.out","connect.cleanup"],function(a){var s=a.context;s.hover=null,s.source=null,s.target=null,s.canExecute=!1}),e.on("connect.end",function(a){var s=a.context,c=s.canExecute,u=s.connectionStart,l={x:a.x,y:a.y},p=s.source,f=s.target;if(!c)return!1;var d=null,m={connectionStart:Kf(s)?l:u,connectionEnd:Kf(s)?u:l};Xt(c)&&(d=c),s.connection=n.connect(p,f,d,m)}),this.start=function(a,s,c,u){Xt(c)||(u=c,c=Le(s)),t.init(a,"connect",{autoActivate:u,data:{shape:s,context:{start:s,connectionStart:c}}})}}Ox.$inject=["eventBus","dragging","modeling","rules"];function Kf(e){var t=e.hover,n=e.source,i=e.target;return t&&n&&t===n&&n!==i}var Bk=1100,Nk=900,Dx="connect-ok",Lx="connect-not-ok";function Ix(e,t,n){var i=e.get("connectionPreview",!1);i&&t.on("connect.move",function(r){var o=r.context,a=o.canExecute,s=o.hover,c=o.source,u=o.start,l=o.startPosition,p=o.target,f=o.connectionStart||l,d=o.connectionEnd||{x:r.x,y:r.y},m=f,h=d;Kf(o)&&(m=d,h=f),i.drawPreview(o,a,{source:c||u,target:p||s,connectionStart:m,connectionEnd:h})}),t.on("connect.hover",Nk,function(r){var o=r.context,a=r.hover,s=o.canExecute;s!==null&&n.addMarker(a,s?Dx:Lx)}),t.on(["connect.out","connect.cleanup"],Bk,function(r){var o=r.hover;o&&(n.removeMarker(o,Dx),n.removeMarker(o,Lx))}),i&&t.on("connect.cleanup",function(r){i.cleanUp(r.context)})}Ix.$inject=["injector","eventBus","canvas"];const Xf={__depends__:[ni,Si,Hi],__init__:["connectPreview"],connect:["type",Ox],connectPreview:["type",Ix]};var $k="djs-dragger";function qi(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)}qi.$inject=["injector","canvas","graphicsFactory","elementFactory"],qi.prototype.drawPreview=function(e,t,n){n=n||{};var i=e.connectionPreviewGfx,r=e.getConnection,o=n.source,a=n.target,s=n.waypoints,c=n.connectionStart,u=n.connectionEnd,l=n.noLayout,p=n.noCropping,f=n.noNoop,d,m=this;if(i||(i=e.connectionPreviewGfx=this.createConnectionPreviewGfx()),Ls(i),r||(r=e.getConnection=Fk(function(h,y,g){return m.getConnection(h,y,g)})),t&&(d=r(t,o,a)),!d){!f&&this.drawNoopPreview(i,n);return}d.waypoints=s||[],this._layouter&&!l&&(d.waypoints=this._layouter.layoutConnection(d,{source:o,target:a,connectionStart:c,connectionEnd:u,waypoints:n.waypoints||d.waypoints})),(!d.waypoints||!d.waypoints.length)&&(d.waypoints=[o?Le(o):c,a?Le(a):u]),this._connectionDocking&&(o||a)&&!p&&(d.waypoints=this._connectionDocking.getCroppedWaypoints(d,o,a)),this._graphicsFactory.drawConnection(i,d,{stroke:"var(--element-dragger-color)"})},qi.prototype.drawNoopPreview=function(e,t){var n=t.source,i=t.target,r=t.connectionStart||Le(n),o=t.connectionEnd||Le(i),a=this.cropWaypoints(r,o,n,i),s=this.createNoopConnection(a[0],a[1]);$e(e,s)},qi.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&&la(o,s,!0)||e,t=i&&la(a,s,!1)||t,[e,t]},qi.prototype.cleanUp=function(e){e&&e.connectionPreviewGfx&&Yt(e.connectionPreviewGfx)},qi.prototype.getConnection=function(e){var t=jk(e);return this._elementFactory.createConnection(t)},qi.prototype.createConnectionPreviewGfx=function(){var e=Te("g");return xe(e,{pointerEvents:"none"}),Qe(e).add($k),$e(this._canvas.getActiveLayer(),e),e},qi.prototype.createNoopConnection=function(e,t){return aa([e,t],{stroke:"#333",strokeDasharray:[1],strokeWidth:2,"pointer-events":"none"})};function Fk(e){var t={};return function(n){var i=JSON.stringify(n),r=t[i];return r||(r=t[i]=e.apply(null,arguments)),r}}function jk(e){return Xt(e)?e:{}}const Hk={__init__:["connectionPreview"],connectionPreview:["type",qi]},bu="complex-preview";class Bx{constructor(t,n,i){this._canvas=t,this._graphicsFactory=n,this._previewSupport=i,this._markers=[]}create(t){this.cleanUp();const{created:n=[],moved:i=[],removed:r=[],resized:o=[]}=t,a=this._canvas.getLayer(bu);n.filter(s=>!zk(s)).forEach(s=>{let c;ft(s)?(c=this._graphicsFactory._createContainer("connection",Te("g")),this._graphicsFactory.drawConnection($r(c),s)):(c=this._graphicsFactory._createContainer("shape",Te("g")),this._graphicsFactory.drawShape($r(c),s),cn(c,s.x,s.y)),this._previewSupport.addDragger(s,a,c)}),i.forEach(({element:s,delta:c})=>{this._previewSupport.addDragger(s,a,void 0,"djs-dragging"),this._canvas.addMarker(s,"djs-element-hidden"),this._markers.push([s,"djs-element-hidden"]);const u=this._previewSupport.addDragger(s,a);ft(s)?cn(u,c.x,c.y):cn(u,s.x+c.x,s.y+c.y)}),r.forEach(s=>{this._previewSupport.addDragger(s,a,void 0,"djs-dragging"),this._canvas.addMarker(s,"djs-element-hidden"),this._markers.push([s,"djs-element-hidden"])}),o.forEach(({shape:s,bounds:c})=>{this._canvas.addMarker(s,"djs-hidden"),this._markers.push([s,"djs-hidden"]),this._previewSupport.addDragger(s,a,void 0,"djs-dragging");const u=this._graphicsFactory._createContainer("shape",Te("g"));this._graphicsFactory.drawShape($r(u),s,{width:c.width,height:c.height}),cn(u,c.x,c.y),this._previewSupport.addDragger(s,a,u)})}cleanUp(){Ls(this._canvas.getLayer(bu)),this._markers.forEach(([t,n])=>this._canvas.removeMarker(t,n)),this._markers=[]}show(){this._canvas.showLayer(bu)}hide(){this._canvas.hideLayer(bu)}}Bx.$inject=["canvas","graphicsFactory","previewSupport"];function zk(e){return e.hidden}const Gk={__depends__:[Io],__init__:["complexPreview"],complexPreview:["type",Bx]},Nx=Math.round;function xu(e,t,n,i,r,o){this._complexPreview=e,this._connectionDocking=t,this._elementFactory=n,this._eventBus=i,this._layouter=r,this._rules=o}xu.prototype.create=function(e,t,n){const i=this._complexPreview,r=this._connectionDocking,o=this._elementFactory,a=this._eventBus,s=this._layouter,c=this._rules,u=o.createShape(V({type:t},n)),l=a.fire("autoPlace",{source:e,shape:u});if(!l)return;V(u,{x:l.x-Nx(u.width/2),y:l.y-Nx(u.height/2)});const p=c.allowed("connection.create",{source:e,target:u,hints:{targetParent:e.parent}});let f=null;p&&(f=o.createConnection(p),f.waypoints=s.layoutConnection(f,{source:e,target:u}),f.waypoints=r.getCroppedWaypoints(f,e,u)),i.create({created:[u,f].filter(d=>!io(d))})},xu.prototype.cleanUp=function(){this._complexPreview.cleanUp()},xu.$inject=["complexPreview","connectionDocking","elementFactory","eventBus","layouter","rules"];const Vk={__depends__:[Yc,Gk,wf],__init__:["appendPreview"],appendPreview:["type",xu]};var $x=Math.min,Fx=Math.max;function Zf(e){e.preventDefault()}function Za(e){e.stopPropagation()}function Wk(e){return e.nodeType===Node.TEXT_NODE}function Uk(e){return[].slice.call(e)}function fi(e){this.container=e.container,this.parent=bt('<div class="djs-direct-editing-parent"><div class="djs-direct-editing-content" contenteditable="true"></div></div>'),this.content=lt("[contenteditable]",this.parent),this.keyHandler=e.keyHandler||function(){},this.resizeHandler=e.resizeHandler||function(){},this.focusoutHandler=e.focusoutHandler||function(){},this.autoResize=Sn(this.autoResize,this),this.handlePaste=Sn(this.handlePaste,this)}fi.prototype.create=function(e,t,n,i){var r=this,o=this.parent,a=this.content,s=this.container;i=this.options=i||{},t=this.style=t||{};var c=ui(t,["width","height","maxWidth","maxHeight","minWidth","minHeight","left","top","backgroundColor","position","overflow","border","wordWrap","textAlign","outline","transform"]);V(o.style,{width:e.width+"px",height:e.height+"px",maxWidth:e.maxWidth+"px",maxHeight:e.maxHeight+"px",minWidth:e.minWidth+"px",minHeight:e.minHeight+"px",left:e.x+"px",top:e.y+"px",backgroundColor:"#ffffff",position:"absolute",overflow:"visible",border:"1px solid #ccc",boxSizing:"border-box",wordWrap:"normal",textAlign:"center",outline:"none"},c);var u=ui(t,["fontFamily","fontSize","fontWeight","lineHeight","padding","paddingTop","paddingRight","paddingBottom","paddingLeft"]);return V(a.style,{boxSizing:"border-box",width:"100%",outline:"none",wordWrap:"break-word"},u),i.centerVertically&&V(a.style,{position:"absolute",top:"50%",transform:"translate(0, -50%)"},u),a.innerText=n,Ne.bind(a,"keydown",this.keyHandler),Ne.bind(a,"mousedown",Za),Ne.bind(a,"paste",r.handlePaste),Ne.bind(a,"focusout",this.focusoutHandler),i.autoResize&&Ne.bind(a,"input",this.autoResize),i.resizable&&this.resizable(t),s.appendChild(o),this.setSelection(a.lastChild,a.lastChild&&a.lastChild.length),o},fi.prototype.handlePaste=function(e){var t=this.options,n=this.style;e.preventDefault();var i;if(e.clipboardData?i=e.clipboardData.getData("text/plain"):i=window.clipboardData.getData("Text"),this.insertText(i),t.autoResize){var r=this.autoResize(n);r&&this.resizeHandler(r)}},fi.prototype.insertText=function(e){e=Yk(e);var t=document.execCommand("insertText",!1,e);t||this._insertTextIE(e)},fi.prototype._insertTextIE=function(e){var t=this.getSelection(),n=t.startContainer,i=t.endContainer,r=t.startOffset,o=t.endOffset,a=t.commonAncestorContainer,s=Uk(a.childNodes),c,u;if(Wk(a)){var l=n.textContent;n.textContent=l.substring(0,r)+e+l.substring(o),c=n,u=r+e.length}else if(n===this.content&&i===this.content){var p=document.createTextNode(e);this.content.insertBefore(p,s[r]),c=p,u=p.textContent.length}else{var f=s.indexOf(n),d=s.indexOf(i);s.forEach(function(m,h){h===f?m.textContent=n.textContent.substring(0,r)+e+i.textContent.substring(o):h>f&&h<=d&&vi(m)}),c=n,u=r+e.length}c&&u!==void 0&&setTimeout(function(){self.setSelection(c,u)})},fi.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})}},fi.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){n=this.resizeHandle=bt('<div class="djs-direct-editing-resize-handle"></div>');var s,c,u,l,p=function(m){Zf(m),Za(m),s=m.clientX,c=m.clientY;var h=t.getBoundingClientRect();u=h.width,l=h.height,Ne.bind(document,"mousemove",f),Ne.bind(document,"mouseup",d)},f=function(m){Zf(m),Za(m);var h=$x(Fx(u+m.clientX-s,i),o),y=$x(Fx(l+m.clientY-c,r),a);t.style.width=h+"px",t.style.height=y+"px",e.resizeHandler({width:u,height:l,dx:m.clientX-s,dy:m.clientY-c})},d=function(m){Zf(m),Za(m),Ne.unbind(document,"mousemove",f,!1),Ne.unbind(document,"mouseup",d,!1)};Ne.bind(n,"mousedown",p)}V(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)},fi.prototype.destroy=function(){var e=this.parent,t=this.content,n=this.resizeHandle;t.innerText="",e.removeAttribute("style"),t.removeAttribute("style"),Ne.unbind(t,"keydown",this.keyHandler),Ne.unbind(t,"mousedown",Za),Ne.unbind(t,"input",this.autoResize),Ne.unbind(t,"paste",this.handlePaste),Ne.unbind(t,"focusout",this.focusoutHandler),n&&(n.removeAttribute("style"),vi(n)),vi(e)},fi.prototype.getValue=function(){return this.content.innerText.trim()},fi.prototype.getSelection=function(){var e=window.getSelection(),t=e.getRangeAt(0);return t},fi.prototype.setSelection=function(e,t){var n=document.createRange();e===null?n.selectNodeContents(this.content):(n.setStart(e,t),n.setEnd(e,t));var i=window.getSelection();i.removeAllRanges(),i.addRange(n)};function Yk(e){return e.replace(/\r\n|\r|\n/g,`
|
|
316
|
+
`)}function Fn(e,t){this._eventBus=e,this._canvas=t,this._providers=[],this._textbox=new fi({container:t.getContainer(),keyHandler:Sn(this._handleKey,this),resizeHandler:Sn(this._handleResize,this),focusoutHandler:Sn(this._handleFocusout,this)}),e.on(["diagram.clear","diagram.destroy"],()=>this._cleanup())}Fn.$inject=["eventBus","canvas"],Fn.prototype.registerProvider=function(e){this._providers.push(e)},Fn.prototype.isActive=function(e){return!!(this._active&&(!e||this._active.element===e))},Fn.prototype.cancel=function(){this._active&&(this._fire("cancel"),this.close())},Fn.prototype._fire=function(e,t){this._eventBus.fire("directEditing."+e,t||{active:this._active})},Fn.prototype.close=function(){this._fire("deactivate"),this._cleanup(),this._canvas.restoreFocus&&this._canvas.restoreFocus()},Fn.prototype._cleanup=function(){this._active&&(this._textbox.destroy(),this._active=null,this.resizable=void 0)},Fn.prototype.complete=function(){var e=this._active;if(e){var t,n=e.context.bounds,i=this.$textbox.getBoundingClientRect(),r=this.getValue(),o=e.context.text;(r!==o||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()}},Fn.prototype.getValue=function(){return this._textbox.getValue()},Fn.prototype._handleKey=function(e){e.stopPropagation();var t=e.keyCode||e.charCode;if(t===27)return e.preventDefault(),this.cancel();if(t===13&&!e.shiftKey)return e.preventDefault(),this.complete()},Fn.prototype._handleResize=function(e){this._fire("resize",e)},Fn.prototype._handleFocusout=function(e){e.relatedTarget&&this._textbox.parent.contains(e.relatedTarget)||this.complete()},Fn.prototype.activate=function(e){if(this.isActive()&&this.cancel(),this._eventBus.fire("directEditing.activate.allowed",{element:e})===!1)return!1;var t,n=mt(this._providers,function(i){return(t=i.activate(e))?i: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};const jx={__depends__:[Ec],__init__:["directEditing"],directEditing:["type",Fn]};function qk(e){return function(t){var n=t.target,i=te(e),r=i.eventDefinitions&&i.eventDefinitions[0],o=i.$type===n.type,a=(r&&r.$type)===n.eventDefinitionType,s=!!n.triggeredByEvent==!!i.triggeredByEvent,c=n.isExpanded===void 0||n.isExpanded===Xe(e);return!o||!a||!s||!c}}const Kk={task:{label:"Task",className:"bpmn-icon-task",target:{type:"bpmn:Task"}},"user-task":{label:"User task",className:"bpmn-icon-user",target:{type:"bpmn:UserTask"}},"service-task":{label:"Service task",className:"bpmn-icon-service",target:{type:"bpmn:ServiceTask"}},"send-task":{label:"Send task",className:"bpmn-icon-send",target:{type:"bpmn:SendTask"}},"receive-task":{label:"Receive task",className:"bpmn-icon-receive",target:{type:"bpmn:ReceiveTask"}},"manual-task":{label:"Manual task",className:"bpmn-icon-manual",target:{type:"bpmn:ManualTask"}},"rule-task":{label:"Business rule task",className:"bpmn-icon-business-rule",target:{type:"bpmn:BusinessRuleTask"}},"script-task":{label:"Script task",className:"bpmn-icon-script",target:{type:"bpmn:ScriptTask"}},"call-activity":{label:"Call activity",className:"bpmn-icon-call-activity",target:{type:"bpmn:CallActivity"}},transaction:{label:"Transaction",className:"bpmn-icon-transaction",target:{type:"bpmn:Transaction",isExpanded:!0}},"event-subprocess":{label:"Event sub-process",className:"bpmn-icon-event-subprocess-expanded",target:{type:"bpmn:SubProcess",triggeredByEvent:!0,isExpanded:!0}},"collapsed-subprocess":{label:"Sub-process (collapsed)",className:"bpmn-icon-subprocess-collapsed",target:{type:"bpmn:SubProcess",isExpanded:!1}},"expanded-subprocess":{label:"Sub-process (expanded)",className:"bpmn-icon-subprocess-expanded",target:{type:"bpmn:SubProcess",isExpanded:!0}},"collapsed-ad-hoc-subprocess":{label:"Ad-hoc sub-process (collapsed)",className:"bpmn-icon-subprocess-collapsed",target:{type:"bpmn:AdHocSubProcess",isExpanded:!1}},"expanded-ad-hoc-subprocess":{label:"Ad-hoc sub-process (expanded)",className:"bpmn-icon-subprocess-expanded",target:{type:"bpmn:AdHocSubProcess",isExpanded:!0}},"exclusive-gateway":{label:"Exclusive gateway",className:"bpmn-icon-gateway-xor",target:{type:"bpmn:ExclusiveGateway"}},"parallel-gateway":{label:"Parallel gateway",className:"bpmn-icon-gateway-parallel",target:{type:"bpmn:ParallelGateway"}},"inclusive-gateway":{label:"Inclusive gateway",className:"bpmn-icon-gateway-or",target:{type:"bpmn:InclusiveGateway"}},"complex-gateway":{label:"Complex gateway",className:"bpmn-icon-gateway-complex",target:{type:"bpmn:ComplexGateway"}},"event-based-gateway":{label:"Event-based gateway",className:"bpmn-icon-gateway-eventbased",target:{type:"bpmn:EventBasedGateway",instantiate:!1,eventGatewayType:"Exclusive"}},"data-store-reference":{label:"Data store reference",className:"bpmn-icon-data-store",target:{type:"bpmn:DataStoreReference"}},"data-object-reference":{label:"Data object reference",className:"bpmn-icon-data-object",target:{type:"bpmn:DataObjectReference"}},"expanded-pool":{label:"Expanded pool/participant",className:"bpmn-icon-participant",target:{type:"bpmn:Participant",isExpanded:!0}},"collapsed-pool":{label:"Empty pool/participant",className:"bpmn-icon-lane",target:{type:"bpmn:Participant",isExpanded:!1}},"none-start-event":{label:"Start event",className:"bpmn-icon-start-event-none",target:{type:"bpmn:StartEvent"}},"none-intermediate-throwing":{label:"Intermediate throw event",className:"bpmn-icon-intermediate-event-none",target:{type:"bpmn:IntermediateThrowEvent"}},"none-boundary-event":{label:"Boundary event",className:"bpmn-icon-intermediate-event-none",target:{type:"bpmn:BoundaryEvent"}},"none-end-event":{label:"End event",className:"bpmn-icon-end-event-none",target:{type:"bpmn:EndEvent"}},"message-start":{label:"Message start event",className:"bpmn-icon-start-event-message",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:MessageEventDefinition",isInterrupting:!0}},"timer-start":{label:"Timer start event",className:"bpmn-icon-start-event-timer",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:TimerEventDefinition",isInterrupting:!0}},"conditional-start":{label:"Conditional start event",className:"bpmn-icon-start-event-condition",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",isInterrupting:!0}},"signal-start":{label:"Signal start event",className:"bpmn-icon-start-event-signal",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:SignalEventDefinition",isInterrupting:!0}},"error-start":{label:"Error start event",className:"bpmn-icon-start-event-error",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ErrorEventDefinition",isInterrupting:!0}},"escalation-start":{label:"Escalation start event",className:"bpmn-icon-start-event-escalation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",isInterrupting:!0}},"compensation-start":{label:"Compensation start event",className:"bpmn-icon-start-event-compensation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:CompensateEventDefinition",isInterrupting:!0}},"non-interrupting-message-start":{label:"Message start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-message",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:MessageEventDefinition",isInterrupting:!1}},"non-interrupting-timer-start":{label:"Timer start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-timer",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:TimerEventDefinition",isInterrupting:!1}},"non-interrupting-conditional-start":{label:"Conditional start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-condition",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",isInterrupting:!1}},"non-interrupting-signal-start":{label:"Signal start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-signal",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:SignalEventDefinition",isInterrupting:!1}},"non-interrupting-escalation-start":{label:"Escalation start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-escalation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",isInterrupting:!1}},"message-intermediate-catch":{label:"Message intermediate catch event",className:"bpmn-icon-intermediate-event-catch-message",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},"message-intermediate-throw":{label:"Message intermediate throw event",className:"bpmn-icon-intermediate-event-throw-message",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},"timer-intermediate-catch":{label:"Timer intermediate catch event",className:"bpmn-icon-intermediate-event-catch-timer",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:TimerEventDefinition"}},"escalation-intermediate-throw":{label:"Escalation intermediate throw event",className:"bpmn-icon-intermediate-event-throw-escalation",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},"conditional-intermediate-catch":{label:"Conditional intermediate catch event",className:"bpmn-icon-intermediate-event-catch-condition",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition"}},"link-intermediate-catch":{label:"Link intermediate catch event",className:"bpmn-icon-intermediate-event-catch-link",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:LinkEventDefinition",eventDefinitionAttrs:{name:""}}},"link-intermediate-throw":{label:"Link intermediate throw event",className:"bpmn-icon-intermediate-event-throw-link",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:LinkEventDefinition",eventDefinitionAttrs:{name:""}}},"compensation-intermediate-throw":{label:"Compensation intermediate throw event",className:"bpmn-icon-intermediate-event-throw-compensation",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},"signal-intermediate-catch":{label:"Signal intermediate catch event",className:"bpmn-icon-intermediate-event-catch-signal",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},"signal-intermediate-throw":{label:"Signal intermediate throw event",className:"bpmn-icon-intermediate-event-throw-signal",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},"message-boundary":{label:"Message boundary event",className:"bpmn-icon-intermediate-event-catch-message",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:MessageEventDefinition",cancelActivity:!0}},"timer-boundary":{label:"Timer boundary event",className:"bpmn-icon-intermediate-event-catch-timer",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:TimerEventDefinition",cancelActivity:!0}},"escalation-boundary":{label:"Escalation boundary event",className:"bpmn-icon-intermediate-event-catch-escalation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",cancelActivity:!0}},"conditional-boundary":{label:"Conditional boundary event",className:"bpmn-icon-intermediate-event-catch-condition",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",cancelActivity:!0}},"error-boundary":{label:"Error boundary event",className:"bpmn-icon-intermediate-event-catch-error",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ErrorEventDefinition",cancelActivity:!0}},"cancel-boundary":{label:"Cancel boundary event",className:"bpmn-icon-intermediate-event-catch-cancel",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:CancelEventDefinition",cancelActivity:!0}},"signal-boundary":{label:"Signal boundary event",className:"bpmn-icon-intermediate-event-catch-signal",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:SignalEventDefinition",cancelActivity:!0}},"compensation-boundary":{label:"Compensation boundary event",className:"bpmn-icon-intermediate-event-catch-compensation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:CompensateEventDefinition",cancelActivity:!0}},"non-interrupting-message-boundary":{label:"Message boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-message",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:MessageEventDefinition",cancelActivity:!1}},"non-interrupting-timer-boundary":{label:"Timer boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-timer",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:TimerEventDefinition",cancelActivity:!1}},"non-interrupting-escalation-boundary":{label:"Escalation boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-escalation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",cancelActivity:!1}},"non-interrupting-conditional-boundary":{label:"Conditional boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-condition",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",cancelActivity:!1}},"non-interrupting-signal-boundary":{label:"Signal boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-signal",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:SignalEventDefinition",cancelActivity:!1}},"message-end":{label:"Message end event",className:"bpmn-icon-end-event-message",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},"escalation-end":{label:"Escalation end event",className:"bpmn-icon-end-event-escalation",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},"error-end":{label:"Error end event",className:"bpmn-icon-end-event-error",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:ErrorEventDefinition"}},"cancel-end":{label:"Cancel end event",className:"bpmn-icon-end-event-cancel",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:CancelEventDefinition"}},"compensation-end":{label:"Compensation end event",className:"bpmn-icon-end-event-compensation",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},"signal-end":{label:"Signal end event",className:"bpmn-icon-end-event-signal",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},"terminate-end":{label:"Terminate end event",className:"bpmn-icon-end-event-terminate",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:TerminateEventDefinition"}}};function Q(e,t={}){var n=Kk[e];if(!n)throw new Error("unknown popup entry <"+e+">");return{...n,actionName:"replace-with-"+e,...t}}var Xk=[Q("none-start-event",{actionName:"replace-with-none-start"}),Q("none-intermediate-throwing"),Q("none-end-event",{actionName:"replace-with-none-end"}),Q("message-start"),Q("timer-start"),Q("conditional-start"),Q("signal-start")],Zk=[Q("none-start-event",{actionName:"replace-with-none-start"}),Q("none-intermediate-throwing"),Q("none-end-event",{actionName:"replace-with-none-end"})],Qk=[Q("none-start-event",{actionName:"replace-with-none-start"}),Q("none-intermediate-throwing",{actionName:"replace-with-none-intermediate-throw"}),Q("none-end-event",{actionName:"replace-with-none-end"}),Q("message-intermediate-catch"),Q("message-intermediate-throw"),Q("timer-intermediate-catch"),Q("escalation-intermediate-throw"),Q("conditional-intermediate-catch"),Q("link-intermediate-catch"),Q("link-intermediate-throw"),Q("compensation-intermediate-throw"),Q("signal-intermediate-catch"),Q("signal-intermediate-throw")],Jk=[Q("none-start-event",{actionName:"replace-with-none-start"}),Q("none-intermediate-throwing",{actionName:"replace-with-none-intermediate-throw"}),Q("none-end-event",{actionName:"replace-with-none-end"}),Q("message-end"),Q("escalation-end"),Q("error-end"),Q("cancel-end"),Q("compensation-end"),Q("signal-end"),Q("terminate-end")],eO=[Q("exclusive-gateway"),Q("parallel-gateway"),Q("inclusive-gateway"),Q("complex-gateway"),Q("event-based-gateway")],tO=[Q("transaction"),Q("event-subprocess"),Q("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess",label:"Ad-hoc sub-process"}),Q("collapsed-subprocess")],nO=[Q("expanded-subprocess",{actionName:"replace-with-subprocess",label:"Sub-process"}),Q("transaction"),Q("event-subprocess"),Q("collapsed-ad-hoc-subprocess")],Hx=[Q("transaction"),Q("expanded-subprocess",{actionName:"replace-with-subprocess",label:"Sub-process"}),Q("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess",label:"Ad-hoc sub-process"}),Q("event-subprocess")],iO=Hx,zx=[Q("task"),Q("user-task"),Q("service-task"),Q("send-task"),Q("receive-task"),Q("manual-task"),Q("rule-task"),Q("script-task"),Q("call-activity"),Q("collapsed-subprocess"),Q("expanded-subprocess"),Q("collapsed-ad-hoc-subprocess"),Q("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess"})],rO=[Q("data-store-reference")],oO=[Q("data-object-reference")],aO=[Q("message-boundary"),Q("timer-boundary"),Q("escalation-boundary"),Q("conditional-boundary"),Q("error-boundary"),Q("cancel-boundary"),Q("signal-boundary"),Q("compensation-boundary"),Q("non-interrupting-message-boundary"),Q("non-interrupting-timer-boundary"),Q("non-interrupting-escalation-boundary"),Q("non-interrupting-conditional-boundary"),Q("non-interrupting-signal-boundary")],sO=[Q("message-start"),Q("timer-start"),Q("conditional-start"),Q("signal-start"),Q("error-start"),Q("escalation-start"),Q("compensation-start"),Q("non-interrupting-message-start"),Q("non-interrupting-timer-start"),Q("non-interrupting-conditional-start"),Q("non-interrupting-signal-start"),Q("non-interrupting-escalation-start")],cO=[{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"}],uO=[Q("expanded-pool"),Q("collapsed-pool",{label:function(e){var t="Empty pool/participant";return e.children&&e.children.length&&(t+=" (removes content)"),t}})],lO={"bpmn:MessageEventDefinition":[Q("message-start"),Q("message-intermediate-catch"),Q("message-intermediate-throw"),Q("message-end")],"bpmn:TimerEventDefinition":[Q("timer-start"),Q("timer-intermediate-catch")],"bpmn:ConditionalEventDefinition":[Q("conditional-start"),Q("conditional-intermediate-catch")],"bpmn:SignalEventDefinition":[Q("signal-start"),Q("signal-intermediate-catch"),Q("signal-intermediate-throw"),Q("signal-end")],"bpmn:ErrorEventDefinition":[Q("error-start"),Q("error-end")],"bpmn:EscalationEventDefinition":[Q("escalation-start"),Q("escalation-intermediate-throw"),Q("escalation-end")],"bpmn:CompensateEventDefinition":[Q("compensation-start"),Q("compensation-intermediate-throw"),Q("compensation-end")]};const Gx={"start-event-non-interrupting":`
|
|
317
317
|
<svg viewBox="0 0 2048 2048" xmlns="http://www.w3.org/2000/svg">
|
|
318
318
|
<g transform="translate(0 995.64)">
|
|
319
319
|
<path d="m1899 28.357c21.545 567.43-598.38 1023.5-1133.6 835.92-548.09-147.21-801.57-873.95-463.59-1330 302.62-480.3 1071.7-507.54 1407.6-49.847 122.14 153.12 190.07 348.07 189.59 543.91z" fill="none" stroke="currentColor" stroke-dasharray="418.310422, 361.2328165" stroke-linecap="round" stroke-width="100"/>
|
|
@@ -324,7 +324,7 @@
|
|
|
324
324
|
<circle cx="1024" cy="28.357" r="875" stroke-dasharray="418.310422, 361.2328165" stroke-width="100"/>
|
|
325
325
|
<circle cx="1024" cy="28.357" r="685" stroke-dasharray="348.31044857,261.23283643" stroke-dashoffset="500" stroke-width="100"/>
|
|
326
326
|
</g>
|
|
327
|
-
</svg>`};function oi(e,t,n,i,r,o,a,s){this._bpmnFactory=e,this._popupMenu=t,this._modeling=n,this._moddle=i,this._bpmnReplace=r,this._rules=o,this._translate=a,this._moddleCopy=s,this._register()}oi.$inject=["bpmnFactory","popupMenu","modeling","moddle","bpmnReplace","rules","translate","moddleCopy"],oi.prototype._register=function(){this._popupMenu.registerProvider("bpmn-replace",this)},oi.prototype.getPopupMenuEntries=function(e){var s;var t=e.businessObject,n=this._rules,i=[],r,o=[];if(De(e)||!n.allowed("shape.replace",{element:e}))return{};var a=Yk(e);return S(t,"bpmn:DataObjectReference")?this._createEntries(e,iO):S(t,"bpmn:DataStoreReference")&&!S(e.parent,"bpmn:Collaboration")?this._createEntries(e,rO):(S(t,"bpmn:Event")&&!S(t,"bpmn:BoundaryEvent")&&(r=(s=t.get("eventDefinitions")[0])==null?void 0:s.$type,i=uO[r]||[],!gn(t.$parent)&&S(t.$parent,"bpmn:SubProcess")&&(i=Ye(i,function(c){return c.target.type!=="bpmn:StartEvent"}))),S(t,"bpmn:StartEvent")&&!S(t.$parent,"bpmn:SubProcess")?(o=Ye(Kk.concat(i),a),this._createEntries(e,o)):S(t,"bpmn:Participant")?(o=Ye(cO,function(c){return Xe(e)!==c.target.isExpanded}),this._createEntries(e,o)):S(t,"bpmn:StartEvent")&&gn(t.$parent)?(o=Ye(aO.concat(i),function(c){var u=c.target,l=u.isInterrupting!==!1,p=t.isInterrupting===l;return a(c)||!a(c)&&!p}),this._createEntries(e,o)):S(t,"bpmn:StartEvent")&&!gn(t.$parent)&&S(t.$parent,"bpmn:SubProcess")?(o=Ye(Xk.concat(i),a),this._createEntries(e,o)):S(t,"bpmn:EndEvent")?(o=Ye(Qk.concat(i),function(c){var u=c.target;return u.eventDefinitionType=="bpmn:CancelEventDefinition"&&!S(t.$parent,"bpmn:Transaction")?!1:a(c)}),this._createEntries(e,o)):S(t,"bpmn:BoundaryEvent")?(o=Ye(oO,function(c){var u=c.target;if(u.eventDefinitionType=="bpmn:CancelEventDefinition"&&!S(t.attachedToRef,"bpmn:Transaction"))return!1;var l=u.cancelActivity!==!1,p=t.cancelActivity==l;return a(c)||!a(c)&&!p}),this._createEntries(e,o)):S(t,"bpmn:IntermediateCatchEvent")||S(t,"bpmn:IntermediateThrowEvent")?(o=Ye(Zk.concat(i),a),this._createEntries(e,o)):S(t,"bpmn:Gateway")?(o=Ye(Jk,a),this._createEntries(e,o)):S(t,"bpmn:Transaction")?(o=Ye(jx,a),this._createEntries(e,o)):gn(t)&&Xe(e)?(o=Ye(nO,a),this._createEntries(e,o)):S(t,"bpmn:AdHocSubProcess")&&Xe(e)?(o=Ye(tO,a),this._createEntries(e,o)):S(t,"bpmn:SubProcess")&&Xe(e)?(o=Ye(eO,a),this._createEntries(e,o)):S(t,"bpmn:SubProcess")&&!Xe(e)?(o=Ye(Hx,function(c){var u=c.target.type===e.type,l=c.target.isExpanded===!0;return u===l}),this._createEntries(e,o)):S(t,"bpmn:SequenceFlow")?this._createSequenceFlowEntries(e,sO):S(t,"bpmn:FlowNode")?(o=Ye(Hx,a),this._createEntries(e,o)):{})},oi.prototype.getPopupMenuHeaderEntries=function(e){var t={};return S(e,"bpmn:Activity")&&!gn(e)&&(t={...t,...this._getLoopCharacteristicsHeaderEntries(e)}),S(e,"bpmn:DataObjectReference")&&(t={...t,...this._getCollectionHeaderEntries(e)}),S(e,"bpmn:Participant")&&(t={...t,...this._getParticipantMultiplicityHeaderEntries(e)}),Ng(e)&&(t={...t,...this._getNonInterruptingHeaderEntries(e)}),t},oi.prototype._createEntries=function(e,t){var n={},i=this;return F(t,function(r){n[r.actionName]=i._createEntry(r,e)}),n},oi.prototype._createSequenceFlowEntries=function(e,t){var n=te(e),i={},r=this._modeling,o=this._moddle,a=this;return F(t,function(s){switch(s.actionName){case"replace-with-default-flow":n.sourceRef.default!==n&&(S(n.sourceRef,"bpmn:ExclusiveGateway")||S(n.sourceRef,"bpmn:InclusiveGateway")||S(n.sourceRef,"bpmn:ComplexGateway")||S(n.sourceRef,"bpmn:Activity"))&&(i={...i,[s.actionName]:a._createEntry(s,e,function(){r.updateProperties(e.source,{default:n})})});break;case"replace-with-conditional-flow":!n.conditionExpression&&S(n.sourceRef,"bpmn:Activity")&&(i={...i,[s.actionName]:a._createEntry(s,e,function(){var c=o.create("bpmn:FormalExpression",{body:""});r.updateProperties(e,{conditionExpression:c})})});break;default:S(n.sourceRef,"bpmn:Activity")&&n.conditionExpression&&(i={...i,[s.actionName]:a._createEntry(s,e,function(){r.updateProperties(e,{conditionExpression:void 0})})}),(S(n.sourceRef,"bpmn:ExclusiveGateway")||S(n.sourceRef,"bpmn:InclusiveGateway")||S(n.sourceRef,"bpmn:ComplexGateway")||S(n.sourceRef,"bpmn:Activity"))&&n.sourceRef.default===n&&(i={...i,[s.actionName]:a._createEntry(s,e,function(){r.updateProperties(e.source,{default:void 0})})})}}),i},oi.prototype._createEntry=function(e,t,n){var i=this._translate,r=this._bpmnReplace.replaceElement,o=function(){return r(t,e.target)},a=e.label;return a&&typeof a=="function"&&(a=a(t)),n=n||o,{label:i(a),className:e.className,action:n}},oi.prototype._getLoopCharacteristicsHeaderEntries=function(e){var t=this,n=this._translate;function i(u,l){if(l.active){t._modeling.updateProperties(e,{loopCharacteristics:void 0});return}var p=e.businessObject.get("loopCharacteristics");p&&S(p,l.options.loopCharacteristics)?t._modeling.updateModdleProperties(e,p,{isSequential:l.options.isSequential}):(p=t._moddle.create(l.options.loopCharacteristics,{isSequential:l.options.isSequential}),t._modeling.updateProperties(e,{loopCharacteristics:p}))}var r=te(e),o=r.loopCharacteristics,a,s,c;return o&&(a=o.isSequential,s=o.isSequential===void 0,c=o.isSequential!==void 0&&!o.isSequential),{"toggle-parallel-mi":{className:"bpmn-icon-parallel-mi-marker",title:n("Parallel multi-instance"),active:c,action:i,options:{loopCharacteristics:"bpmn:MultiInstanceLoopCharacteristics",isSequential:!1}},"toggle-sequential-mi":{className:"bpmn-icon-sequential-mi-marker",title:n("Sequential multi-instance"),active:a,action:i,options:{loopCharacteristics:"bpmn:MultiInstanceLoopCharacteristics",isSequential:!0}},"toggle-loop":{className:"bpmn-icon-loop-marker",title:n("Loop"),active:s,action:i,options:{loopCharacteristics:"bpmn:StandardLoopCharacteristics"}}}},oi.prototype._getCollectionHeaderEntries=function(e){var t=this,n=this._translate,i=e.businessObject.dataObjectRef;if(!i)return{};function r(a,s){t._modeling.updateModdleProperties(e,i,{isCollection:!s.active})}var o=i.isCollection;return{"toggle-is-collection":{className:"bpmn-icon-parallel-mi-marker",title:n("Collection"),active:o,action:r}}},oi.prototype._getParticipantMultiplicityHeaderEntries=function(e){var t=this,n=this._bpmnFactory,i=this._translate;function r(a,s){var c=s.active,u;c||(u=n.create("bpmn:ParticipantMultiplicity")),t._modeling.updateProperties(e,{participantMultiplicity:u})}var o=e.businessObject.participantMultiplicity;return{"toggle-participant-multiplicity":{className:"bpmn-icon-parallel-mi-marker",title:i("Participant multiplicity"),active:!!o,action:r}}},oi.prototype._getNonInterruptingHeaderEntries=function(e){const t=this._translate,n=te(e),i=this,r=$g(e),o=S(e,"bpmn:BoundaryEvent")?zx["intermediate-event-non-interrupting"]:zx["start-event-non-interrupting"],a=!n[r];return{"toggle-non-interrupting":{imageHtml:o,title:t("Toggle non-interrupting"),active:a,action:function(){i._modeling.updateProperties(e,{[r]:!!a})}}}};const lO={__depends__:[Hf,rv,Uc],__init__:["replaceMenuProvider"],replaceMenuProvider:["type",oi]};function Za(e,t,n,i,r,o,a,s,c,u,l,p,f){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=u,this._rules=l,this._translate=p,this._eventBus=n,this._appendPreview=f,e.autoPlace!==!1&&(this._autoPlace=t.get("autoPlace",!1)),n.on("create.end",250,function(d){var m=d.context,h=m.shape;if(!(!wa(d)||!i.isOpen(h))){var y=i.getEntries(h);y.replace&&y.replace.action.click(d,h)}}),n.on("contextPad.close",function(){f.cleanUp()})}Za.$inject=["config.contextPad","injector","eventBus","contextPad","modeling","elementFactory","connect","create","popupMenu","canvas","rules","translate","appendPreview"],Za.prototype.getMultiElementContextPadEntries=function(e){var t=this._modeling,n={};return this._isDeleteAllowed(e)&&V(n,{delete:{group:"edit",className:"bpmn-icon-trash",title:this._translate("Delete"),action:{click:function(i,r){t.removeElements(r.slice())}}}}),n},Za.prototype._isDeleteAllowed=function(e){var t=this._rules.allowed("elements.delete",{elements:e});return De(t)?Mr(e,n=>t.includes(n)):t},Za.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._autoPlace,c=this._translate,u=this._appendPreview,l={};if(e.type==="label")return this._isDeleteAllowed([e])&&V(l,m()),l;var p=e.businessObject;function f(b,x){r.start(b,x)}function d(b,x){n.removeElements([x])}function m(){return{delete:{group:"edit",className:"bpmn-icon-trash",title:c("Delete"),action:{click:d}}}}function h(b){var x=5,C=t.getPad(b).html,T=C.getBoundingClientRect(),k={x:T.left,y:T.bottom+x};return k}function y(b,x,C,T){function k(D,L){var z=i.createShape(V({type:b},T));o.start(D,z,{source:L})}var A=s?function(D,L){var z=i.createShape(V({type:b},T));s.append(L,z)}:k,I=s?function(D,L){return u.create(L,b,T),()=>{u.cleanUp()}}:null;return{group:"model",className:x,title:C,action:{dragstart:k,click:A,hover:I}}}function g(b){return function(x,C){n.splitLane(C,b),t.open(C,!0)}}if(We(p,["bpmn:Lane","bpmn:Participant"])&&Xe(e)){var v=cr(e);V(l,{"lane-insert-above":{group:"lane-insert-above",className:"bpmn-icon-lane-insert-above",title:c("Add lane above"),action:{click:function(b,x){n.addLane(x,"top")}}}}),v.length<2&&((Jt(e)?e.height>=120:e.width>=120)&&V(l,{"lane-divide-two":{group:"lane-divide",className:"bpmn-icon-lane-divide-two",title:c("Divide into two lanes"),action:{click:g(2)}}}),(Jt(e)?e.height>=180:e.width>=180)&&V(l,{"lane-divide-three":{group:"lane-divide",className:"bpmn-icon-lane-divide-three",title:c("Divide into three lanes"),action:{click:g(3)}}})),V(l,{"lane-insert-below":{group:"lane-insert-below",className:"bpmn-icon-lane-insert-below",title:c("Add lane below"),action:{click:function(b,x){n.addLane(x,"bottom")}}}})}return S(p,"bpmn:FlowNode")&&(S(p,"bpmn:EventBasedGateway")?V(l,{"append.receive-task":y("bpmn:ReceiveTask","bpmn-icon-receive-task",c("Append receive task")),"append.message-intermediate-event":y("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-message",c("Append message intermediate catch event"),{eventDefinitionType:"bpmn:MessageEventDefinition"}),"append.timer-intermediate-event":y("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-timer",c("Append timer intermediate catch event"),{eventDefinitionType:"bpmn:TimerEventDefinition"}),"append.condition-intermediate-event":y("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-condition",c("Append conditional intermediate catch event"),{eventDefinitionType:"bpmn:ConditionalEventDefinition"}),"append.signal-intermediate-event":y("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-signal",c("Append signal intermediate catch event"),{eventDefinitionType:"bpmn:SignalEventDefinition"})}):Gx(p,"bpmn:BoundaryEvent","bpmn:CompensateEventDefinition")?V(l,{"append.compensation-activity":y("bpmn:Task","bpmn-icon-task",c("Append compensation activity"),{isForCompensation:!0})}):!S(p,"bpmn:EndEvent")&&!p.isForCompensation&&!Gx(p,"bpmn:IntermediateThrowEvent","bpmn:LinkEventDefinition")&&!gn(p)&&V(l,{"append.end-event":y("bpmn:EndEvent","bpmn-icon-end-event-none",c("Append end event")),"append.gateway":y("bpmn:ExclusiveGateway","bpmn-icon-gateway-none",c("Append gateway")),"append.append-task":y("bpmn:Task","bpmn-icon-task",c("Append task")),"append.intermediate-event":y("bpmn:IntermediateThrowEvent","bpmn-icon-intermediate-event-none",c("Append intermediate/boundary event"))})),a.isEmpty(e,"bpmn-replace")||V(l,{replace:{group:"edit",className:"bpmn-icon-screw-wrench",title:c("Change element"),action:{click:function(b,x){var C=V(h(x),{cursor:{x:b.x,y:b.y}});a.open(x,"bpmn-replace",C,{title:c("Change element"),width:"var(--bpmn-replace-popup-width, 300px)",search:!0})}}}}),S(p,"bpmn:SequenceFlow")&&V(l,{"append.text-annotation":y("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),S(p,"bpmn:MessageFlow")&&V(l,{"append.text-annotation":y("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),We(p,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference"])&&V(l,{"append.text-annotation":y("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation")),connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect to other element"),action:{click:f,dragstart:f}}}),S(p,"bpmn:TextAnnotation")&&V(l,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect using association"),action:{click:f,dragstart:f}}}),We(p,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&V(l,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect using data input association"),action:{click:f,dragstart:f}}}),S(p,"bpmn:Group")&&V(l,{"append.text-annotation":y("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),this._isDeleteAllowed([e])&&V(l,m()),l};function Gx(e,t,n){var i=e.$instanceOf(t),r=!1,o=e.eventDefinitions||[];return F(o,function(a){a.$type===n&&(r=!0)}),i&&r}const pO={__depends__:[Gk,Fx,vb,ti,Kf,Sc,lO],__init__:["contextPadProvider"],contextPadProvider:["type",Za]};var fO={horizontal:["x","width"],vertical:["y","height"]},Vx=5;function qi(e,t){this._modeling=e,this._filters=[],this.registerFilter(function(n){var i=t.allowed("elements.distribute",{elements:n});return De(i)?i:i?n:[]})}qi.$inject=["modeling","rules"],qi.prototype.registerFilter=function(e){if(typeof e!="function")throw new Error("the filter has to be a function");this._filters.push(e)},qi.prototype.trigger=function(e,t){var n=this._modeling,i,r;if(!(e.length<3)&&(this._setOrientation(t),r=this._filterElements(e),i=this._createGroups(r),!(i.length<=2)))return n.distributeElements(i,this._axis,this._dimension),i},qi.prototype._filterElements=function(e){var t=this._filters,n=this._axis,i=this._dimension,r=[].concat(e);return t.length?(F(t,function(o){r=o(r,n,i)}),r):e},qi.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"');var o=fi(e,i);return F(o,function(a,s){var c=n._findRange(a,i,r),u,l=t[t.length-1];l&&n._hasIntersection(l.range,c)?t[t.length-1].elements.push(a):(u={range:c,elements:[a]},t.push(u))}),t},qi.prototype._setOrientation=function(e){var t=fO[e];this._axis=t[0],this._dimension=t[1]},qi.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)},qi.prototype._findRange=function(e){var t=e[this._axis],n=e[this._dimension];return{min:t+Vx,max:t+n-Vx}};const dO={__init__:["distributeElements"],distributeElements:["type",qi]};function xu(e){ei.call(this,e)}xu.$inject=["eventBus"],ye(xu,ei),xu.prototype.init=function(){this.addRule("elements.distribute",function(e){var t=e.elements;return t=Ye(t,function(n){var i=We(n,["bpmn:Association","bpmn:BoundaryEvent","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:Lane","bpmn:MessageFlow","bpmn:SequenceFlow","bpmn:TextAnnotation"]);return!(n.labelTarget||i)}),t=Bs(t),t.length<3?!1:t})};var Wx={horizontal:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 1800">
|
|
327
|
+
</svg>`};function ai(e,t,n,i,r,o,a,s){this._bpmnFactory=e,this._popupMenu=t,this._modeling=n,this._moddle=i,this._bpmnReplace=r,this._rules=o,this._translate=a,this._moddleCopy=s,this._register()}ai.$inject=["bpmnFactory","popupMenu","modeling","moddle","bpmnReplace","rules","translate","moddleCopy"],ai.prototype._register=function(){this._popupMenu.registerProvider("bpmn-replace",this)},ai.prototype.getPopupMenuEntries=function(e){var s;var t=e.businessObject,n=this._rules,i=[],r,o=[];if(De(e)||!n.allowed("shape.replace",{element:e}))return{};var a=qk(e);return S(t,"bpmn:DataObjectReference")?this._createEntries(e,rO):S(t,"bpmn:DataStoreReference")&&!S(e.parent,"bpmn:Collaboration")?this._createEntries(e,oO):(S(t,"bpmn:Event")&&!S(t,"bpmn:BoundaryEvent")&&(r=(s=t.get("eventDefinitions")[0])==null?void 0:s.$type,i=lO[r]||[],!yn(t.$parent)&&S(t.$parent,"bpmn:SubProcess")&&(i=Ye(i,function(c){return c.target.type!=="bpmn:StartEvent"}))),S(t,"bpmn:StartEvent")&&!S(t.$parent,"bpmn:SubProcess")?(o=Ye(Xk.concat(i),a),this._createEntries(e,o)):S(t,"bpmn:Participant")?(o=Ye(uO,function(c){return Xe(e)!==c.target.isExpanded}),this._createEntries(e,o)):S(t,"bpmn:StartEvent")&&yn(t.$parent)?(o=Ye(sO.concat(i),function(c){var u=c.target,l=u.isInterrupting!==!1,p=t.isInterrupting===l;return a(c)||!a(c)&&!p}),this._createEntries(e,o)):S(t,"bpmn:StartEvent")&&!yn(t.$parent)&&S(t.$parent,"bpmn:SubProcess")?(o=Ye(Zk.concat(i),a),this._createEntries(e,o)):S(t,"bpmn:EndEvent")?(o=Ye(Jk.concat(i),function(c){var u=c.target;return u.eventDefinitionType=="bpmn:CancelEventDefinition"&&!S(t.$parent,"bpmn:Transaction")?!1:a(c)}),this._createEntries(e,o)):S(t,"bpmn:BoundaryEvent")?(o=Ye(aO,function(c){var u=c.target;if(u.eventDefinitionType=="bpmn:CancelEventDefinition"&&!S(t.attachedToRef,"bpmn:Transaction"))return!1;var l=u.cancelActivity!==!1,p=t.cancelActivity==l;return a(c)||!a(c)&&!p}),this._createEntries(e,o)):S(t,"bpmn:IntermediateCatchEvent")||S(t,"bpmn:IntermediateThrowEvent")?(o=Ye(Qk.concat(i),a),this._createEntries(e,o)):S(t,"bpmn:Gateway")?(o=Ye(eO,a),this._createEntries(e,o)):S(t,"bpmn:Transaction")?(o=Ye(Hx,a),this._createEntries(e,o)):yn(t)&&Xe(e)?(o=Ye(iO,a),this._createEntries(e,o)):S(t,"bpmn:AdHocSubProcess")&&Xe(e)?(o=Ye(nO,a),this._createEntries(e,o)):S(t,"bpmn:SubProcess")&&Xe(e)?(o=Ye(tO,a),this._createEntries(e,o)):S(t,"bpmn:SubProcess")&&!Xe(e)?(o=Ye(zx,function(c){var u=c.target.type===e.type,l=c.target.isExpanded===!0;return u===l}),this._createEntries(e,o)):S(t,"bpmn:SequenceFlow")?this._createSequenceFlowEntries(e,cO):S(t,"bpmn:FlowNode")?(o=Ye(zx,a),this._createEntries(e,o)):{})},ai.prototype.getPopupMenuHeaderEntries=function(e){var t={};return S(e,"bpmn:Activity")&&!yn(e)&&(t={...t,...this._getLoopCharacteristicsHeaderEntries(e)}),S(e,"bpmn:DataObjectReference")&&(t={...t,...this._getCollectionHeaderEntries(e)}),S(e,"bpmn:Participant")&&(t={...t,...this._getParticipantMultiplicityHeaderEntries(e)}),$g(e)&&(t={...t,...this._getNonInterruptingHeaderEntries(e)}),t},ai.prototype._createEntries=function(e,t){var n={},i=this;return F(t,function(r){n[r.actionName]=i._createEntry(r,e)}),n},ai.prototype._createSequenceFlowEntries=function(e,t){var n=te(e),i={},r=this._modeling,o=this._moddle,a=this;return F(t,function(s){switch(s.actionName){case"replace-with-default-flow":n.sourceRef.default!==n&&(S(n.sourceRef,"bpmn:ExclusiveGateway")||S(n.sourceRef,"bpmn:InclusiveGateway")||S(n.sourceRef,"bpmn:ComplexGateway")||S(n.sourceRef,"bpmn:Activity"))&&(i={...i,[s.actionName]:a._createEntry(s,e,function(){r.updateProperties(e.source,{default:n})})});break;case"replace-with-conditional-flow":!n.conditionExpression&&S(n.sourceRef,"bpmn:Activity")&&(i={...i,[s.actionName]:a._createEntry(s,e,function(){var c=o.create("bpmn:FormalExpression",{body:""});r.updateProperties(e,{conditionExpression:c})})});break;default:S(n.sourceRef,"bpmn:Activity")&&n.conditionExpression&&(i={...i,[s.actionName]:a._createEntry(s,e,function(){r.updateProperties(e,{conditionExpression:void 0})})}),(S(n.sourceRef,"bpmn:ExclusiveGateway")||S(n.sourceRef,"bpmn:InclusiveGateway")||S(n.sourceRef,"bpmn:ComplexGateway")||S(n.sourceRef,"bpmn:Activity"))&&n.sourceRef.default===n&&(i={...i,[s.actionName]:a._createEntry(s,e,function(){r.updateProperties(e.source,{default:void 0})})})}}),i},ai.prototype._createEntry=function(e,t,n){var i=this._translate,r=this._bpmnReplace.replaceElement,o=function(){return r(t,e.target)},a=e.label;return a&&typeof a=="function"&&(a=a(t)),n=n||o,{label:i(a),className:e.className,action:n}},ai.prototype._getLoopCharacteristicsHeaderEntries=function(e){var t=this,n=this._translate;function i(u,l){if(l.active){t._modeling.updateProperties(e,{loopCharacteristics:void 0});return}var p=e.businessObject.get("loopCharacteristics");p&&S(p,l.options.loopCharacteristics)?t._modeling.updateModdleProperties(e,p,{isSequential:l.options.isSequential}):(p=t._moddle.create(l.options.loopCharacteristics,{isSequential:l.options.isSequential}),t._modeling.updateProperties(e,{loopCharacteristics:p}))}var r=te(e),o=r.loopCharacteristics,a,s,c;return o&&(a=o.isSequential,s=o.isSequential===void 0,c=o.isSequential!==void 0&&!o.isSequential),{"toggle-parallel-mi":{className:"bpmn-icon-parallel-mi-marker",title:n("Parallel multi-instance"),active:c,action:i,options:{loopCharacteristics:"bpmn:MultiInstanceLoopCharacteristics",isSequential:!1}},"toggle-sequential-mi":{className:"bpmn-icon-sequential-mi-marker",title:n("Sequential multi-instance"),active:a,action:i,options:{loopCharacteristics:"bpmn:MultiInstanceLoopCharacteristics",isSequential:!0}},"toggle-loop":{className:"bpmn-icon-loop-marker",title:n("Loop"),active:s,action:i,options:{loopCharacteristics:"bpmn:StandardLoopCharacteristics"}}}},ai.prototype._getCollectionHeaderEntries=function(e){var t=this,n=this._translate,i=e.businessObject.dataObjectRef;if(!i)return{};function r(a,s){t._modeling.updateModdleProperties(e,i,{isCollection:!s.active})}var o=i.isCollection;return{"toggle-is-collection":{className:"bpmn-icon-parallel-mi-marker",title:n("Collection"),active:o,action:r}}},ai.prototype._getParticipantMultiplicityHeaderEntries=function(e){var t=this,n=this._bpmnFactory,i=this._translate;function r(a,s){var c=s.active,u;c||(u=n.create("bpmn:ParticipantMultiplicity")),t._modeling.updateProperties(e,{participantMultiplicity:u})}var o=e.businessObject.participantMultiplicity;return{"toggle-participant-multiplicity":{className:"bpmn-icon-parallel-mi-marker",title:i("Participant multiplicity"),active:!!o,action:r}}},ai.prototype._getNonInterruptingHeaderEntries=function(e){const t=this._translate,n=te(e),i=this,r=Fg(e),o=S(e,"bpmn:BoundaryEvent")?Gx["intermediate-event-non-interrupting"]:Gx["start-event-non-interrupting"],a=!n[r];return{"toggle-non-interrupting":{imageHtml:o,title:t("Toggle non-interrupting"),active:a,action:function(){i._modeling.updateProperties(e,{[r]:!!a})}}}};const pO={__depends__:[zf,ov,Yc],__init__:["replaceMenuProvider"],replaceMenuProvider:["type",ai]};function Qa(e,t,n,i,r,o,a,s,c,u,l,p,f){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=u,this._rules=l,this._translate=p,this._eventBus=n,this._appendPreview=f,e.autoPlace!==!1&&(this._autoPlace=t.get("autoPlace",!1)),n.on("create.end",250,function(d){var m=d.context,h=m.shape;if(!(!Ea(d)||!i.isOpen(h))){var y=i.getEntries(h);y.replace&&y.replace.action.click(d,h)}}),n.on("contextPad.close",function(){f.cleanUp()})}Qa.$inject=["config.contextPad","injector","eventBus","contextPad","modeling","elementFactory","connect","create","popupMenu","canvas","rules","translate","appendPreview"],Qa.prototype.getMultiElementContextPadEntries=function(e){var t=this._modeling,n={};return this._isDeleteAllowed(e)&&V(n,{delete:{group:"edit",className:"bpmn-icon-trash",title:this._translate("Delete"),action:{click:function(i,r){t.removeElements(r.slice())}}}}),n},Qa.prototype._isDeleteAllowed=function(e){var t=this._rules.allowed("elements.delete",{elements:e});return De(t)?kr(e,n=>t.includes(n)):t},Qa.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._autoPlace,c=this._translate,u=this._appendPreview,l={};if(e.type==="label")return this._isDeleteAllowed([e])&&V(l,m()),l;var p=e.businessObject;function f(b,x){r.start(b,x)}function d(b,x){n.removeElements([x])}function m(){return{delete:{group:"edit",className:"bpmn-icon-trash",title:c("Delete"),action:{click:d}}}}function h(b){var x=5,C=t.getPad(b).html,T=C.getBoundingClientRect(),k={x:T.left,y:T.bottom+x};return k}function y(b,x,C,T){function k(D,L){var z=i.createShape(V({type:b},T));o.start(D,z,{source:L})}var A=s?function(D,L){var z=i.createShape(V({type:b},T));s.append(L,z)}:k,I=s?function(D,L){return u.create(L,b,T),()=>{u.cleanUp()}}:null;return{group:"model",className:x,title:C,action:{dragstart:k,click:A,hover:I}}}function g(b){return function(x,C){n.splitLane(C,b),t.open(C,!0)}}if(We(p,["bpmn:Lane","bpmn:Participant"])&&Xe(e)){var v=ur(e);V(l,{"lane-insert-above":{group:"lane-insert-above",className:"bpmn-icon-lane-insert-above",title:c("Add lane above"),action:{click:function(b,x){n.addLane(x,"top")}}}}),v.length<2&&((Jt(e)?e.height>=120:e.width>=120)&&V(l,{"lane-divide-two":{group:"lane-divide",className:"bpmn-icon-lane-divide-two",title:c("Divide into two lanes"),action:{click:g(2)}}}),(Jt(e)?e.height>=180:e.width>=180)&&V(l,{"lane-divide-three":{group:"lane-divide",className:"bpmn-icon-lane-divide-three",title:c("Divide into three lanes"),action:{click:g(3)}}})),V(l,{"lane-insert-below":{group:"lane-insert-below",className:"bpmn-icon-lane-insert-below",title:c("Add lane below"),action:{click:function(b,x){n.addLane(x,"bottom")}}}})}return S(p,"bpmn:FlowNode")&&(S(p,"bpmn:EventBasedGateway")?V(l,{"append.receive-task":y("bpmn:ReceiveTask","bpmn-icon-receive-task",c("Append receive task")),"append.message-intermediate-event":y("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-message",c("Append message intermediate catch event"),{eventDefinitionType:"bpmn:MessageEventDefinition"}),"append.timer-intermediate-event":y("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-timer",c("Append timer intermediate catch event"),{eventDefinitionType:"bpmn:TimerEventDefinition"}),"append.condition-intermediate-event":y("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-condition",c("Append conditional intermediate catch event"),{eventDefinitionType:"bpmn:ConditionalEventDefinition"}),"append.signal-intermediate-event":y("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-signal",c("Append signal intermediate catch event"),{eventDefinitionType:"bpmn:SignalEventDefinition"})}):Vx(p,"bpmn:BoundaryEvent","bpmn:CompensateEventDefinition")?V(l,{"append.compensation-activity":y("bpmn:Task","bpmn-icon-task",c("Append compensation activity"),{isForCompensation:!0})}):!S(p,"bpmn:EndEvent")&&!p.isForCompensation&&!Vx(p,"bpmn:IntermediateThrowEvent","bpmn:LinkEventDefinition")&&!yn(p)&&V(l,{"append.end-event":y("bpmn:EndEvent","bpmn-icon-end-event-none",c("Append end event")),"append.gateway":y("bpmn:ExclusiveGateway","bpmn-icon-gateway-none",c("Append gateway")),"append.append-task":y("bpmn:Task","bpmn-icon-task",c("Append task")),"append.intermediate-event":y("bpmn:IntermediateThrowEvent","bpmn-icon-intermediate-event-none",c("Append intermediate/boundary event"))})),a.isEmpty(e,"bpmn-replace")||V(l,{replace:{group:"edit",className:"bpmn-icon-screw-wrench",title:c("Change element"),action:{click:function(b,x){var C=V(h(x),{cursor:{x:b.x,y:b.y}});a.open(x,"bpmn-replace",C,{title:c("Change element"),width:"var(--bpmn-replace-popup-width, 300px)",search:!0})}}}}),S(p,"bpmn:SequenceFlow")&&V(l,{"append.text-annotation":y("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),S(p,"bpmn:MessageFlow")&&V(l,{"append.text-annotation":y("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),We(p,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference"])&&V(l,{"append.text-annotation":y("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation")),connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect to other element"),action:{click:f,dragstart:f}}}),S(p,"bpmn:TextAnnotation")&&V(l,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect using association"),action:{click:f,dragstart:f}}}),We(p,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&V(l,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect using data input association"),action:{click:f,dragstart:f}}}),S(p,"bpmn:Group")&&V(l,{"append.text-annotation":y("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),this._isDeleteAllowed([e])&&V(l,m()),l};function Vx(e,t,n){var i=e.$instanceOf(t),r=!1,o=e.eventDefinitions||[];return F(o,function(a){a.$type===n&&(r=!0)}),i&&r}const fO={__depends__:[Vk,jx,bb,ni,Xf,Rc,pO],__init__:["contextPadProvider"],contextPadProvider:["type",Qa]};var dO={horizontal:["x","width"],vertical:["y","height"]},Wx=5;function Ki(e,t){this._modeling=e,this._filters=[],this.registerFilter(function(n){var i=t.allowed("elements.distribute",{elements:n});return De(i)?i:i?n:[]})}Ki.$inject=["modeling","rules"],Ki.prototype.registerFilter=function(e){if(typeof e!="function")throw new Error("the filter has to be a function");this._filters.push(e)},Ki.prototype.trigger=function(e,t){var n=this._modeling,i,r;if(!(e.length<3)&&(this._setOrientation(t),r=this._filterElements(e),i=this._createGroups(r),!(i.length<=2)))return n.distributeElements(i,this._axis,this._dimension),i},Ki.prototype._filterElements=function(e){var t=this._filters,n=this._axis,i=this._dimension,r=[].concat(e);return t.length?(F(t,function(o){r=o(r,n,i)}),r):e},Ki.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"');var o=di(e,i);return F(o,function(a,s){var c=n._findRange(a,i,r),u,l=t[t.length-1];l&&n._hasIntersection(l.range,c)?t[t.length-1].elements.push(a):(u={range:c,elements:[a]},t.push(u))}),t},Ki.prototype._setOrientation=function(e){var t=dO[e];this._axis=t[0],this._dimension=t[1]},Ki.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)},Ki.prototype._findRange=function(e){var t=e[this._axis],n=e[this._dimension];return{min:t+Wx,max:t+n-Wx}};const hO={__init__:["distributeElements"],distributeElements:["type",Ki]};function _u(e){ti.call(this,e)}_u.$inject=["eventBus"],be(_u,ti),_u.prototype.init=function(){this.addRule("elements.distribute",function(e){var t=e.elements;return t=Ye(t,function(n){var i=We(n,["bpmn:Association","bpmn:BoundaryEvent","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:Lane","bpmn:MessageFlow","bpmn:SequenceFlow","bpmn:TextAnnotation"]);return!(n.labelTarget||i)}),t=Ns(t),t.length<3?!1:t})};var Ux={horizontal:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 1800">
|
|
328
328
|
<polyline points="450 400 450 150 1350 150 1350 400" style="fill:none;stroke:currentColor;stroke-width:100;stroke-linejoin:round;"/>
|
|
329
329
|
<rect x="150" y="450" width="600" height="1200" rx="1" style="fill:none;stroke:currentColor;stroke-width:100;"></rect>
|
|
330
330
|
<rect x="1050" y="450" width="600" height="800" rx="1" style="fill:currentColor;stroke:currentColor;stroke-width:100;opacity:.5;"></rect>
|
|
@@ -332,7 +332,7 @@
|
|
|
332
332
|
<polyline points="400 1350 150 1350 150 450 400 450" style="fill:none;stroke:currentColor;stroke-width:100;stroke-linejoin:round;"/>
|
|
333
333
|
<rect x="450" y="150" width="1200" height="600" rx="1" style="fill:none;stroke:currentColor;stroke-width:100;"></rect>
|
|
334
334
|
<rect x="450" y="1050" width="800" height="600" rx="1" style="fill:currentColor;stroke:currentColor;stroke-width:100;opacity:.5;"></rect>
|
|
335
|
-
</svg>`},hO=900;function Qa(e,t,n,i){this._distributeElements=t,this._translate=n,this._popupMenu=e,this._rules=i,e.registerProvider("align-elements",hO,this)}Qa.$inject=["popupMenu","distributeElements","translate","rules"],Qa.prototype.getPopupMenuEntries=function(e){var t={};return this._isAllowed(e)&&V(t,this._getEntries(e)),t},Qa.prototype._isAllowed=function(e){return this._rules.allowed("elements.distribute",{elements:e})},Qa.prototype._getEntries=function(e){var t=this._distributeElements,n=this._translate,i=this._popupMenu,r={"distribute-elements-horizontal":{group:"distribute",title:n("Distribute elements horizontally"),className:"bjs-align-elements-menu-entry",imageHtml:Wx.horizontal,action:function(o,a){t.trigger(e,"horizontal"),i.close()}},"distribute-elements-vertical":{group:"distribute",title:n("Distribute elements vertically"),imageHtml:Wx.vertical,action:function(o,a){t.trigger(e,"vertical"),i.close()}}};return r};const mO={__depends__:[Hf,dO],__init__:["bpmnDistributeElements","distributeElementsMenuProvider"],bpmnDistributeElements:["type",xu],distributeElementsMenuProvider:["type",Qa]};var Ux="is not a registered action",gO="is already registered";function ai(e,t){this._eventBus=e,this._actions={};var n=this;e.on("diagram.init",function(){n._registerDefaultActions(t),e.fire("editorActions.init",{editorActions:n})})}ai.$inject=["eventBus","injector"],ai.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),u=e.get("keyboardMoveSelection",!1);t&&(this.register("undo",function(){t.undo()}),this.register("redo",function(){t.redo()})),o&&i&&this.register("copy",function(){var l=i.get();if(l.length)return o.copy(l)}),o&&i&&this.register("duplicate",function(){var l=i.get();if(l.length)return o.duplicate(l)}),o&&this.register("paste",function(){o.paste()}),o&&i&&s&&this.register("cut",function(){var l=i.get();if(l.length){var p=s.allowed("elements.delete",{elements:l});if(p!==!1){var f=De(p)?p:l;return o.cut(f.slice())}}}),r&&this.register("stepZoom",function(l){r.stepZoom(l.value)}),a&&this.register("zoom",function(l){a.zoom(l.value)}),n&&i&&s&&this.register("removeSelection",function(){var l=i.get();if(l.length){var p=s.allowed("elements.delete",{elements:l}),f;p!==!1&&(De(p)?f=p:f=l,f.length&&n.removeElements(f.slice()))}}),c&&this.register("moveCanvas",function(l){c.moveCanvas(l)}),u&&this.register("moveSelection",function(l){u.moveSelection(l.direction,l.accelerated)})},ai.prototype.trigger=function(e,t){if(!this._actions[e])throw Zf(e,Ux);var n=this._eventBus.fire("editorActions.allowed",{action:e,opts:t});if(n!==!1)return this._actions[e](t)},ai.prototype.register=function(e,t){var n=this;if(typeof e=="string")return this._registerAction(e,t);F(e,function(i,r){n._registerAction(r,i)})},ai.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw Zf(e,gO);this._actions[e]=t},ai.prototype.unregister=function(e){if(!this.isRegistered(e))throw Zf(e,Ux);this._actions[e]=void 0},ai.prototype.getActions=function(){return Object.keys(this._actions)},ai.prototype.isRegistered=function(e){return!!this._actions[e]};function Zf(e,t){return new Error(e+" "+t)}const yO={__init__:["editorActions"],editorActions:["type",ai]};function _u(e){e.invoke(ai,this)}ye(_u,ai),_u.$inject=["injector"],_u.prototype._registerDefaultActions=function(e){ai.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),u=e.get("alignElements",!1),l=e.get("directEditing",!1),p=e.get("searchPad",!1),f=e.get("modeling",!1),d=e.get("contextPad",!1);t&&n&&i&&this._registerAction("selectElements",function(){var m=t.getRootElement(),h=n.filter(function(y){return y!==m});return i.select(h),h}),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(m){var h=i.get(),y=m.type;h.length&&c.trigger(h,y)}),i&&u&&this._registerAction("alignElements",function(m){var h=i.get(),y=[],g=m.type;h.length&&(y=Ye(h,function(v){return!S(v,"bpmn:Lane")}),u.trigger(y,g))}),i&&f&&this._registerAction("setColor",function(m){var h=i.get();h.length&&f.setColor(h,m)}),i&&l&&this._registerAction("directEditing",function(){var m=i.get();m.length&&l.activate(m[0])}),p&&this._registerAction("find",function(){p.toggle()}),t&&f&&this._registerAction("moveToOrigin",function(){var m=t.getRootElement(),h,y;S(m,"bpmn:Collaboration")?y=n.filter(function(g){return S(g.parent,"bpmn:Collaboration")}):y=n.filter(function(g){return g!==m&&!S(g.parent,"bpmn:SubProcess")}),h=Bt(y),f.moveElements(y,{x:-h.x,y:-h.y},m)}),i&&d&&this._registerAction("replaceElement",function(m){d.triggerEntry("replace","click",m)})};const vO={__depends__:[yO],editorActions:["type",_u]};function Yx(e){e.on(["create.init","shape.move.init"],function(t){var n=t.context,i=t.shape;We(i,["bpmn:Participant","bpmn:SubProcess","bpmn:TextAnnotation"])&&(n.gridSnappingContext||(n.gridSnappingContext={}),n.gridSnappingContext.snapLocation="top-left")})}Yx.$inject=["eventBus"];function Xr(e,t){J.call(this,e),this._gridSnapping=t;var n=this;this.preExecute("shape.resize",function(i){var r=i.context,o=r.hints||{},a=o.autoResize;if(a){var s=r.shape,c=r.newBounds;Pn(a)?r.newBounds=n.snapComplex(c,a):r.newBounds=n.snapSimple(s,c)}})}Xr.$inject=["eventBus","gridSnapping","modeling"],ye(Xr,J),Xr.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},Xr.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},Xr.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),V(e,o),e},Xr.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),V(e,o),e};var bO=2e3;function qx(e,t){e.on(["spaceTool.move","spaceTool.end"],bO,function(n){var i=n.context;if(i.initialized){var r=i.axis,o;r==="x"?(o=t.snapValue(n.dx),n.x=n.x+o-n.dx,n.dx=o):(o=t.snapValue(n.dy),n.y=n.y+o-n.dy,n.dy=o)}})}qx.$inject=["eventBus","gridSnapping"];const xO={__init__:["gridSnappingResizeBehavior","gridSnappingSpaceToolBehavior"],gridSnappingResizeBehavior:["type",Xr],gridSnappingSpaceToolBehavior:["type",qx]};var wu=10;function Qf(e,t,n){return n||(n="round"),Math[n](e/t)*t}var _O=1200,wO=800;function _r(e,t,n){var i=!n||n.active!==!1;this._eventBus=t;var r=this;t.on("diagram.init",wO,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"],_O,function(o){var a=o.originalEvent;if(!(!r.active||a&&Ln(a))){var s=o.context,c=s.gridSnappingContext;c||(c=s.gridSnappingContext={}),["x","y"].forEach(function(u){var l={},p=SO(o,u,e);p&&(l.offset=p);var f=EO(o,u);f&&V(l,f),Vo(o,u)||r.snapEvent(o,u,l)})}})}_r.prototype.snapEvent=function(e,t,n){var i=this.snapValue(e[t],n);jt(e,t,i)},_r.prototype.getGridSpacing=function(){return wu},_r.prototype.snapValue=function(e,t){var n=0;t&&t.offset&&(n=t.offset),e+=n,e=Qf(e,wu);var i,r;return t&&t.min&&(i=t.min,Be(i)&&(i=Qf(i+n,wu,"ceil"),e=Math.max(e,i))),t&&t.max&&(r=t.max,Be(r)&&(r=Qf(r+n,wu,"floor"),e=Math.min(e,r))),e-=n,e},_r.prototype.isActive=function(){return this.active},_r.prototype.setActive=function(e){this.active=e,this._eventBus.fire("gridSnapping.toggle",{active:e})},_r.prototype.toggleActive=function(){this.setActive(!this.active)},_r.$inject=["elementRegistry","eventBus","config.gridSnapping"];function EO(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&&(Eu(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,u=r.max;return c&&(Eu(t)?Xx(s)?a.x.max=c.left:a.x.min=c.right:Kx(s)?a.y.max=c.top:a.y.min=c.bottom),u&&(Eu(t)?Xx(s)?a.x.min=u.left:a.x.max=u.right:Kx(s)?a.y.min=u.top:a.y.max=u.bottom),a[t]}function SO(e,t,n){var i=e.context,r=e.shape,o=i.gridSnappingContext,a=o.snapLocation,s=o.snapOffset;return s&&Be(s[t])||(s||(s=o.snapOffset={}),Be(s[t])||(s[t]=0),!r)||(n.get(r.id)||(Eu(t)?s[t]+=r[t]+r.width/2:s[t]+=r[t]+r.height/2),!a)||(t==="x"?/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)),s[t]}function Eu(e){return e==="x"}function Kx(e){return e.indexOf("n")!==-1}function Xx(e){return e.indexOf("w")!==-1}const RO={__depends__:[xO],__init__:["gridSnapping"],gridSnapping:["type",_r]};var CO=2e3;function Zx(e,t,n){e.on("autoPlace",CO,function(i){var r=i.source,o=Le(r),a=i.shape,s=Xv(r,a,n);return["x","y"].forEach(function(c){var u={};s[c]!==o[c]&&(s[c]>o[c]?u.min=s[c]:u.max=s[c],S(a,"bpmn:TextAnnotation")&&(PO(c)?u.offset=-a.width/2:u.offset=-a.height/2),s[c]=t.snapValue(s[c],u))}),s})}Zx.$inject=["eventBus","gridSnapping","elementRegistry"];function PO(e){return e==="x"}var AO=1750;function Qx(e,t,n){t.on(["create.start","shape.move.start"],AO,function(i){var r=i.context,o=r.shape,a=e.getRootElement();if(!(!S(o,"bpmn:Participant")||!S(a,"bpmn:Process")||!a.children.length)){var s=r.createConstraints;s&&(o.width=n.snapValue(o.width,{min:o.width}),o.height=n.snapValue(o.height,{min:o.height}))}})}Qx.$inject=["canvas","eventBus","gridSnapping"];var TO=3e3;function Su(e,t,n){J.call(this,e),this._gridSnapping=t;var i=this;this.postExecuted(["connection.create","connection.layout"],TO,function(r){var o=r.context,a=o.connection,s=o.hints||{},c=a.waypoints;s.connectionStart||s.connectionEnd||s.createElementsBehavior===!1||MO(c)&&n.updateWaypoints(a,i.snapMiddleSegments(c))})}Su.$inject=["eventBus","gridSnapping","modeling"],ye(Su,J),Su.prototype.snapMiddleSegments=function(e){var t=this._gridSnapping,n;e=e.slice();for(var i=1;i<e.length-2;i++)n=DO(t,e[i],e[i+1]),e[i]=n[0],e[i+1]=n[1];return e};function MO(e){return e.length>3}function kO(e){return e==="h"}function OO(e){return e==="v"}function DO(e,t,n){var i=Li(t,n),r={};return kO(i)&&(r.y=e.snapValue(t.y)),OO(i)&&(r.x=e.snapValue(t.x)),("x"in r||"y"in r)&&(t=V({},t,r),n=V({},n,r)),[t,n]}const LO={__depends__:[RO,{__init__:["gridSnappingAutoPlaceBehavior","gridSnappingParticipantBehavior","gridSnappingLayoutConnectionBehavior"],gridSnappingAutoPlaceBehavior:["type",Zx],gridSnappingParticipantBehavior:["type",Qx],gridSnappingLayoutConnectionBehavior:["type",Su]}],__init__:["bpmnGridSnapping"],bpmnGridSnapping:["type",Yx]};var IO=30,Jx=30;function Ja(e,t){this._interactionEvents=t;var n=this;e.on(["interactionEvents.createHit","interactionEvents.updateHit"],function(i){var r=i.element,o=i.gfx;if(S(r,"bpmn:Lane"))return n._createParticipantHit(r,o);if(S(r,"bpmn:Participant"))return Xe(r)?n._createParticipantHit(r,o):n._createDefaultHit(r,o);if(S(r,"bpmn:SubProcess"))return Xe(r)?n._createSubProcessHit(r,o):n._createDefaultHit(r,o)})}Ja.$inject=["eventBus","interactionEvents"],Ja.prototype._createDefaultHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createDefaultHit(e,t),!0},Ja.prototype._createParticipantHit=function(e,t){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});var n=Jt(e)?{width:IO,height:e.height}:{width:e.width,height:Jx};return this._interactionEvents.createBoxHit(t,"all",n),!0},Ja.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:Jx}),!0};const BO={__init__:["bpmnInteractionEvents"],bpmnInteractionEvents:["type",Ja]};function Ru(e){e.invoke(No,this)}ye(Ru,No),Ru.$inject=["injector"],Ru.prototype.registerBindings=function(e,t){No.prototype.registerBindings.call(this,e,t);function n(i,r){t.isRegistered(i)&&e.addListener(r)}n("selectElements",function(i){var r=i.keyEvent;if(e.isKey(["a","A"],r)&&e.isCmd(r))return t.trigger("selectElements"),!0}),n("find",function(i){var r=i.keyEvent;if(e.isKey(["f","F"],r)&&e.isCmd(r))return t.trigger("find"),!0}),n("spaceTool",function(i){var r=i.keyEvent;if(!e.hasModifier(r)&&e.isKey(["s","S"],r))return t.trigger("spaceTool"),!0}),n("lassoTool",function(i){var r=i.keyEvent;if(!e.hasModifier(r)&&e.isKey(["l","L"],r))return t.trigger("lassoTool"),!0}),n("handTool",function(i){var r=i.keyEvent;if(!e.hasModifier(r)&&e.isKey(["h","H"],r))return t.trigger("handTool"),!0}),n("globalConnectTool",function(i){var r=i.keyEvent;if(!e.hasModifier(r)&&e.isKey(["c","C"],r))return t.trigger("globalConnectTool"),!0}),n("directEditing",function(i){var r=i.keyEvent;if(!e.hasModifier(r)&&e.isKey(["e","E"],r))return t.trigger("directEditing"),!0}),n("replaceElement",function(i){var r=i.keyEvent;if(!e.hasModifier(r)&&e.isKey(["r","R"],r))return t.trigger("replaceElement",r),!0})};const NO={__depends__:[Cf],__init__:["keyboardBindings"],keyboardBindings:["type",Ru]};var $O={moveSpeed:1,moveSpeedAccelerated:10},FO=1500,e_="left",t_="up",n_="right",i_="down",jO={ArrowLeft:e_,Left:e_,ArrowUp:t_,Up:t_,ArrowRight:n_,Right:n_,ArrowDown:i_,Down:i_},HO={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 r_(e,t,n,i,r){var o=this;this._config=V({},$O,e||{}),t.addListener(FO,function(a){var s=a.keyEvent,c=jO[s.key];if(c&&!t.isCmd(s)){var u=t.isShift(s);return o.moveSelection(c,u),!0}}),this.moveSelection=function(a,s){var c=r.get();if(c.length){var u=this._config[s?"moveSpeedAccelerated":"moveSpeed"],l=HO[a](u),p=i.allowed("elements.move",{shapes:c,hints:{keyboardMove:!0}});p&&n.moveElements(c,l)}}}r_.$inject=["config.keyboardMoveSelection","keyboard","modeling","rules","selection"];const zO={__depends__:[Cf,ti],__init__:["keyboardMoveSelection"],keyboardMoveSelection:["type",r_]};var o_=10;function es(e,t,n,i){this._dragging=i,this._rules=t;var r=this;function o(c,u){var l=c.shape,p=c.direction,f=c.resizeConstraints,d;c.delta=u,d=$C(l,p,u),c.newBounds=jC(d,f),c.canExecute=r.canResize(c)}function a(c){var u=c.resizeConstraints,l=c.minBounds;u===void 0&&(l===void 0&&(l=r.computeMinResizeBox(c)),c.resizeConstraints={min:ke(l)})}function s(c){var u=c.shape,l=c.canExecute,p=c.newBounds;if(l){if(p=wm(p),!GO(u,p))return;n.resizeShape(u,p)}}e.on("resize.start",function(c){a(c.context)}),e.on("resize.move",function(c){var u={x:c.dx,y:c.dy};o(c.context,u)}),e.on("resize.end",function(c){s(c.context)})}es.prototype.canResize=function(e){var t=this._rules,n=ci(e,["newBounds","shape","delta","direction"]);return t.allowed("shape.resize",n)},es.prototype.activate=function(e,t,n){var i=this._dragging,r,o;if(typeof n=="string"&&(n={direction:n}),r=V({shape:t},n),o=r.direction,!o)throw new Error("must provide a direction (n|w|s|e|nw|se|ne|sw)");i.init(e,a_(t,o),"resize",{autoActivate:!0,cursor:VO(o),data:{shape:t,context:r}})},es.prototype.computeMinResizeBox=function(e){var t=e.shape,n=e.direction,i,r;return i=e.minDimensions||{width:o_,height:o_},r=ug(t,e.childrenBoxPadding),HC(n,t,i,r)},es.$inject=["eventBus","rules","modeling","dragging"];function GO(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}function a_(e,t){var n=Le(e),i=ke(e),r={x:n.x,y:n.y};return t.indexOf("n")!==-1?r.y=i.top:t.indexOf("s")!==-1&&(r.y=i.bottom),t.indexOf("e")!==-1?r.x=i.right:t.indexOf("w")!==-1&&(r.x=i.left),r}function VO(e){var t="resize-";return e==="n"||e==="s"?t+"ns":e==="e"||e==="w"?t+"ew":e==="nw"||e==="se"?t+"nwse":t+"nesw"}var s_="djs-resizing",c_="resize-not-ok",WO=500;function u_(e,t,n){function i(o){var a=o.shape,s=o.newBounds,c=o.frame;c||(c=o.frame=n.addFrame(a,t.getActiveLayer()),t.addMarker(a,s_)),s.width>5&&ve(c,{x:s.x,width:s.width}),s.height>5&&ve(c,{y:s.y,height:s.height}),o.canExecute?Qe(c).remove(c_):Qe(c).add(c_)}function r(o){var a=o.shape,s=o.frame;s&&Ut(o.frame),t.removeMarker(a,s_)}e.on("resize.move",WO,function(o){i(o.context)}),e.on("resize.cleanup",function(o){r(o.context)})}u_.$inject=["eventBus","canvas","previewSupport"];var Cu=-6,Pu=8,Au=20,ts="djs-resizer",UO=["n","w","s","e","nw","ne","se","sw"];function wr(e,t,n,i){this._resize=i,this._canvas=t;var r=this;e.on("selection.changed",function(o){var a=o.newSelection;r.removeResizers(),a.length===1&&F(a,Sn(r.addResizer,r))}),e.on("shape.changed",function(o){var a=o.element;n.isSelected(a)&&(r.removeResizers(),r.addResizer(a))})}wr.prototype.makeDraggable=function(e,t,n){var i=this._resize;function r(o){lr(o)&&i.activate(o,e,n)}Ne.bind(t,"mousedown",r),Ne.bind(t,"touchstart",r)},wr.prototype._createResizer=function(e,t,n,i){var r=this._getResizersParent(),o=YO(i),a=Ae("g");Qe(a).add(ts),Qe(a).add(ts+"-"+e.id),Qe(a).add(ts+"-"+i),$e(r,a);var s=Ae("rect");ve(s,{x:-Pu/2+o.x,y:-Pu/2+o.y,width:Pu,height:Pu}),Qe(s).add(ts+"-visual"),$e(a,s);var c=Ae("rect");return ve(c,{x:-Au/2+o.x,y:-Au/2+o.y,width:Au,height:Au}),Qe(c).add(ts+"-hit"),$e(a,c),zs(a,t,n),a},wr.prototype.createResizer=function(e,t){var n=a_(e,t),i=this._createResizer(e,n.x,n.y,t);this.makeDraggable(e,i,t)},wr.prototype.addResizer=function(e){var t=this;pt(e)||F(UO,function(n){t._resize.canResize({shape:e,direction:n})&&t.createResizer(e,n)})},wr.prototype.removeResizers=function(){var e=this._getResizersParent();Ds(e)},wr.prototype._getResizersParent=function(){return this._canvas.getLayer("resizers")},wr.$inject=["eventBus","canvas","selection","resize"];function YO(e){var t={x:0,y:0};return e.indexOf("e")!==-1?t.x=-Cu:e.indexOf("w")!==-1&&(t.x=Cu),e.indexOf("s")!==-1?t.y=-Cu:e.indexOf("n")!==-1&&(t.y=Cu),t}const l_={__depends__:[Ei,ji,Lo],__init__:["resize","resizePreview","resizeHandles"],resize:["type",es],resizePreview:["type",u_],resizeHandles:["type",wr]};var qO=2e3;function ns(e,t,n,i,r,o,a){this._bpmnFactory=t,this._canvas=n,this._modeling=r,this._textRenderer=a,i.registerProvider(this),e.on("element.dblclick",function(c){s(c.element,!0)}),e.on(["autoPlace.start","canvas.viewbox.changing","drag.init","element.mousedown","popupMenu.open","root.set","selection.changed"],function(){i.isActive()&&i.complete()}),e.on(["shape.remove","connection.remove"],qO,function(c){i.isActive(c.element)&&i.cancel()}),e.on(["commandStack.changed"],function(c){i.isActive()&&i.cancel()}),e.on("directEditing.activate",function(c){o.removeResizers()}),e.on("create.end",500,function(c){var u=c.context,l=u.shape,p=c.context.canExecute,f=c.isTouch;f||p&&(u.hints&&u.hints.createElementsBehavior===!1||s(l))}),e.on("autoPlace.end",500,function(c){s(c.shape)});function s(c,u){(u||We(c,["bpmn:Activity","bpmn:Event","bpmn:TextAnnotation","bpmn:Participant"]))&&i.activate(c)}}ns.$inject=["eventBus","bpmnFactory","canvas","directEditing","modeling","resizeHandles","textRenderer"],ns.prototype.activate=function(e){var t=Yn(e);if(t!==void 0){var n={text:t},i=this.getEditingBBox(e);V(n,i);var r={},o=n.style||{};return V(o,{backgroundColor:null,border:null}),(We(e,["bpmn:Task","bpmn:Participant","bpmn:Lane","bpmn:CallActivity"])||p_(e))&&V(r,{centerVertically:!0}),ar(e)&&(V(r,{resizable:!0,autoResize:!0}),V(o,{backgroundColor:"#ffffff",border:"1px solid #ccc"})),S(e,"bpmn:TextAnnotation")&&(V(r,{resizable:!0,autoResize:!0}),V(o,{backgroundColor:"#ffffff",border:"1px solid #ccc"})),V(n,{options:r,style:o}),n}},ns.prototype.getEditingBBox=function(e){var t=this._canvas,n=e.label||e,i=t.getAbsoluteBBox(n),r={x:i.x+i.width/2,y:i.y+i.height/2},o={x:i.x,y:i.y},a=t.zoom(),s=this._textRenderer.getDefaultStyle(),c=this._textRenderer.getExternalStyle(),u=c.fontSize*a,l=c.lineHeight,p=s.fontSize*a,f=s.lineHeight,d={fontFamily:this._textRenderer.getDefaultStyle().fontFamily,fontWeight:this._textRenderer.getDefaultStyle().fontWeight};if(S(e,"bpmn:Lane")||ZO(e)){var m=Jt(e),h=m?{width:i.height,height:30*a,x:i.x-i.height/2+15*a,y:r.y-30*a/2}:{width:i.width,height:30*a};V(o,h),V(d,{fontSize:p+"px",lineHeight:f,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px",transform:m?"rotate(-90deg)":null})}if(XO(e)){var y=Jt(e),g=y?{width:i.width,height:i.height}:{width:i.height,height:i.width,x:r.x-i.height/2,y:r.y-i.width/2};V(o,g),V(d,{fontSize:p+"px",lineHeight:f,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px",transform:y?null:"rotate(-90deg)"})}(We(e,["bpmn:Task","bpmn:CallActivity"])||p_(e))&&(V(o,{width:i.width,height:i.height}),V(d,{fontSize:p+"px",lineHeight:f,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px"})),KO(e)&&(V(o,{width:i.width,x:i.x}),V(d,{fontSize:p+"px",lineHeight:f,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px"}));var v=1,b=i.width+2*v;if(n.labelTarget&&(V(o,{width:b,height:i.height+2*v,x:i.x-v,y:i.y-v}),V(d,{fontSize:u+"px",lineHeight:l})),ar(n)&&!Ws(n)&&!Ge(n)){var x=Fl(e),C=t.getAbsoluteBBox({x:x.x,y:x.y,width:0,height:0}),T=u,k=$r.width*a+2*v;V(o,{width:k,height:T+2*v,x:C.x-k/2,y:C.y-T/2-v}),V(d,{fontSize:u+"px",lineHeight:l})}return S(e,"bpmn:TextAnnotation")&&(V(o,{width:i.width+2*v,height:i.height+2*v,x:i.x-v,y:i.y-v,minWidth:30*a,minHeight:10*a}),V(d,{textAlign:"left",paddingTop:_o*a+"px",paddingBottom:_o*a+"px",paddingLeft:_o*a+"px",paddingRight:_o*a+"px",fontSize:p+"px",lineHeight:f})),{bounds:o,style:d}},ns.prototype.update=function(e,t,n,i){var r,o;S(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}),QO(t)&&(t=null),this._modeling.updateLabel(e,t,r)};function p_(e){return S(e,"bpmn:SubProcess")&&!Xe(e)}function KO(e){return S(e,"bpmn:SubProcess")&&Xe(e)}function XO(e){return S(e,"bpmn:Participant")&&!Xe(e)}function ZO(e){return S(e,"bpmn:Participant")&&Xe(e)}function QO(e){return!e||!e.trim()}var f_="djs-element-hidden",d_="djs-label-hidden";function h_(e,t,n){var i=this,r=t.getDefaultLayer(),o,a,s;e.on("directEditing.activate",function(c){var u=c.active;if(o=u.element.label||u.element,S(o,"bpmn:TextAnnotation")){a=t.getAbsoluteBBox(o),s=Ae("g");var l=n.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:o.width,containerHeight:o.height,position:{mx:0,my:0}}),p=i.path=Ae("path");ve(p,{d:l,strokeWidth:2,stroke:JO(o)}),$e(s,p),$e(r,s),sn(s,o.x,o.y)}S(o,"bpmn:TextAnnotation")||o.labelTarget?t.addMarker(o,f_):(S(o,"bpmn:Task")||S(o,"bpmn:CallActivity")||S(o,"bpmn:SubProcess")||S(o,"bpmn:Participant")||S(o,"bpmn:Lane"))&&t.addMarker(o,d_)}),e.on("directEditing.resize",function(c){if(S(o,"bpmn:TextAnnotation")){var u=c.height,l=c.dy,p=Math.max(o.height/a.height*(u+l),0),f=n.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:o.width,containerHeight:p,position:{mx:0,my:0}});ve(i.path,{d:f})}}),e.on(["directEditing.complete","directEditing.cancel"],function(c){var u=c.active;u&&(t.removeMarker(u.element.label||u.element,f_),t.removeMarker(o,d_)),o=void 0,a=void 0,s&&(Ut(s),s=void 0)})}h_.$inject=["eventBus","canvas","pathMap"];function JO(e,t){var n=Je(e);return n.get("stroke")||t||"black"}const eD={__depends__:[rf,l_,Fx],__init__:["labelEditingProvider","labelEditingPreview"],labelEditingProvider:["type",ns],labelEditingPreview:["type",h_]};var tD=500,nD=1e3;function Ci(e,t,n){this._eventBus=e,this._elementRegistry=n,this._outlineOffset=5,this._outlineStyle=t.cls("djs-outline",["no-fill"]);var i=this;function r(o){jS(o)||i.createOutline(o)}e.on("element.hover",function(o){r(o.element)}),e.on("selection.changed",function(o){F(o.newSelection,r)}),e.on(["shape.changed","connection.changed"],tD,function(o){var a=o.element,s=o.gfx,c=ut(".djs-outline",s);c&&i.updateOutline(a,c)})}Ci.prototype.createOutline=function(e){var t=this._elementRegistry.getGraphics(e);if(!t)throw new Error("cannot create outline for non-rendered element");var n=ut(".djs-outline",t);return n||(n=this.getOutline(e)||this._createOutlineGfx(),$e(t,n),this.updateOutline(e,n)),n},Ci.prototype._createOutlineGfx=function(){var e=Ae("rect");return ve(e,V({x:0,y:0,rx:4,width:100,height:100},this._outlineStyle)),e},Ci.prototype.updateOutline=function(e,t){e.waypoints?this.updateConnectionOutline(t,e):this.updateShapeOutline(t,e)},Ci.prototype.updateShapeOutline=function(e,t){var n=!1,i=this._getProviders();i.length&&F(i,function(r){n=n||r.updateOutline(t,e)}),n||ve(e,{x:-this._outlineOffset,y:-this._outlineOffset,width:t.width+this._outlineOffset*2,height:t.height+this._outlineOffset*2})},Ci.prototype.updateConnectionOutline=function(e,t){var n=Bt(t);ve(e,{x:n.x-this._outlineOffset,y:n.y-this._outlineOffset,width:n.width+this._outlineOffset*2,height:n.height+this._outlineOffset*2})},Ci.prototype.registerProvider=function(e,t){t||(t=e,e=nD),this._eventBus.on("outline.getProviders",e,function(n){n.providers.push(t)})},Ci.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"outline.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},Ci.prototype.getOutline=function(e){var t,n=this._getProviders();return F(n,function(i){Zt(i.getOutline)&&(t=t||i.getOutline(e))}),t},Ci.$inject=["eventBus","styles","elementRegistry"];var Tu=6;function Jf(e,t,n){this._canvas=t;var i=this;e.on("element.changed",function(r){n.isSelected(r.element)&&i._updateMultiSelectionOutline(n.get())}),e.on("selection.changed",function(r){var o=r.newSelection;i._updateMultiSelectionOutline(o)})}Jf.prototype._updateMultiSelectionOutline=function(e){var t=this._canvas.getLayer("selectionOutline");Ds(t);var n=e.length>1,i=this._canvas.getContainer();if(Qe(i)[n?"add":"remove"]("djs-multi-select"),!!n){var r=iD(Bt(e)),o=Ae("rect");ve(o,V({rx:3},r)),Qe(o).add("djs-selection-outline"),$e(t,o)}},Jf.$inject=["eventBus","canvas","selection"];function iD(e){return{x:e.x-Tu,y:e.y-Tu,width:e.width+Tu*2,height:e.height+Tu*2}}const ed={__depends__:[ti],__init__:["outline","multiSelectionOutline"],outline:["type",Ci],multiSelectionOutline:["type",Jf]},m_=["bpmn:Event","bpmn:SequenceFlow","bpmn:Gateway"],g_={class:"bjs-label-link",stroke:"var(--element-selected-outline-secondary-stroke-color)",strokeDasharray:"5, 5"},rD=15,Mu=2;function y_(e,t,n,i,r){const o=t.getLayer("overlays");e.on(["selection.changed","shape.changed"],function(){s()}),e.on("selection.changed",function({newSelection:p}){var d;const f=p.filter(m=>We(m,m_));if(f.length===1){const m=f[0];Ge(m)?a(m,m.labelTarget):(d=m.labels)!=null&&d.length&&a(m.labels[0],m)}if(f.length===2){const m=f.find(Ge),h=f.find(y=>{var g;return(g=y.labels)==null?void 0:g.includes(m)});m&&h&&a(m,h)}}),e.on("shape.changed",function({element:p}){var f;!We(p,m_)||!l(p)||(Ge(p)?a(p,p.labelTarget):(f=p.labels)!=null&&f.length&&a(p.labels[0],p))});function a(p,f){const d=oa([Le(f),Le(p)],g_),m=d.getAttribute("d"),y=r.isSelected(p)?c(p):u(p),g=ua(y,m);if(!g)return;const b=r.isSelected(f)?c(f):u(f),x=ua(b,m)||Le(f);ba(x,g)<rD||(kl(d,[x,g]),$e(o,d))}function s(){Os(`.${g_.class}`,o).forEach(Ut)}function c(p){const f=i.getOutline(p);if(!f)return u(p);if(f.x){const d={x:p.x+Er(f,"x")-Mu,y:p.y+Er(f,"y")-Mu,width:Er(f,"width")+Mu*2,height:Er(f,"height")+Mu*2};return Hl(d,Er(f,"rx"))}if(f.cx){const d=Er(f,"r"),m={x:p.x+Er(f,"cx")-d,y:p.y+Er(f,"cy")-d,width:d*2,height:d*2};return Um(m)}}function u(p){return n.getShapePath(p)}function l(p){return r.isSelected(p)}}y_.$inject=["eventBus","canvas","graphicsFactory","outline","selection"];function Er(e,t){return parseFloat(ve(e,t)||0)}const oD={__depends__:[ti,ed],__init__:["labelLink"],labelLink:["type",y_]};var aD=new Do("tt");function sD(e){var t=bt('<div class="djs-tooltip-container" />');return _n(t,{position:"absolute",width:"0",height:"0"}),e.insertBefore(t,e.firstChild),t}function cD(e,t,n){_n(e,{left:t+"px",top:n+"px"})}function td(e,t){e.style.display=t===!1?"none":""}var v_="djs-tooltip",nd="."+v_;function Cn(e,t){this._eventBus=e,this._canvas=t,this._ids=aD,this._tooltipDefaults={show:{minZoom:.7,maxZoom:5}},this._tooltips={},this._tooltipRoot=sD(t.getContainer());var n=this;kn.bind(this._tooltipRoot,nd,"mousedown",function(i){i.stopPropagation()}),kn.bind(this._tooltipRoot,nd,"mouseover",function(i){n.trigger("mouseover",i)}),kn.bind(this._tooltipRoot,nd,"mouseout",function(i){n.trigger("mouseout",i)}),this._init()}Cn.$inject=["eventBus","canvas"],Cn.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=V({},this._tooltipDefaults,e,{id:t}),this._addTooltip(e),e.timeout&&this.setTimeout(e),t},Cn.prototype.trigger=function(e,t){var n=t.delegateTarget||t.target,i=this.get(hn(n,"data-tooltip-id"));i&&(e==="mouseover"&&i.timeout&&this.clearTimeout(i),e==="mouseout"&&i.timeout&&(i.timeout=1e3,this.setTimeout(i)))},Cn.prototype.get=function(e){return typeof e!="string"&&(e=e.id),this._tooltips[e]},Cn.prototype.clearTimeout=function(e){if(e=this.get(e),!!e){var t=e.removeTimer;t&&(clearTimeout(t),e.removeTimer=null)}},Cn.prototype.setTimeout=function(e){if(e=this.get(e),!!e){this.clearTimeout(e);var t=this;e.removeTimer=setTimeout(function(){t.remove(e)},e.timeout)}},Cn.prototype.remove=function(e){var t=this.get(e);t&&(yi(t.html),yi(t.htmlContainer),delete t.htmlContainer,delete this._tooltips[t.id])},Cn.prototype.show=function(){td(this._tooltipRoot)},Cn.prototype.hide=function(){td(this._tooltipRoot,!1)},Cn.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},Cn.prototype._addTooltip=function(e){var t=e.id,n=e.html,i,r=this._tooltipRoot;n.get&&n.constructor.prototype.jquery&&(n=n.get(0)),Pn(n)&&(n=bt(n)),i=bt('<div data-tooltip-id="'+t+'" class="'+v_+'">'),_n(i,{position:"absolute"}),i.appendChild(n),e.type&&Et(i).add("djs-tooltip-"+e.type),e.className&&Et(i).add(e.className),e.htmlContainer=i,r.appendChild(i),this._tooltips[t]=e,this._updateTooltip(e)},Cn.prototype._updateTooltip=function(e){var t=e.position,n=e.htmlContainer;cD(n,t.x,t.y)},Cn.prototype._updateTooltipVisibilty=function(e){F(this._tooltips,function(t){var n=t.show,i=t.htmlContainer,r=!0;n&&((n.minZoom>e.scale||n.maxZoom<e.scale)&&(r=!1),td(i,r))})},Cn.prototype._init=function(){var e=this;function t(n){e._updateRoot(n),e._updateTooltipVisibilty(n),e.show()}this._eventBus.on("canvas.viewbox.changing",function(n){e.hide()}),this._eventBus.on("canvas.viewbox.changed",function(n){t(n.viewbox)})};const uD={__init__:["tooltips"],tooltips:["type",Cn]};var lD="flow elements must be children of pools/participants",pD="Data object must be placed within a pool/participant.";function b_(e,t,n){function i(r,o,a){t.add({position:{x:r.x+5,y:r.y+5},type:"error",timeout:2e3,html:"<div>"+o+"</div>"})}e.on(["shape.move.rejected","create.rejected"],function(r){var o=r.context,a=o.shape,s=o.target;S(s,"bpmn:Collaboration")&&(S(a,"bpmn:FlowNode")?i(r,n(lD)):S(a,"bpmn:DataObjectReference")&&i(r,n(pD)))})}b_.$inject=["eventBus","tooltips","translate"];const fD={__depends__:[uD],__init__:["modelingFeedback"],modelingFeedback:["type",b_]};var dD=500,hD=1250,mD=1500,ku=Math.round;function gD(e){return{x:e.x+ku(e.width/2),y:e.y+ku(e.height/2)}}function x_(e,t,n,i,r){function o(s,c,u,l){return r.allowed("elements.move",{shapes:s,delta:c,position:u,target:l})}e.on("shape.move.start",mD,function(s){var c=s.context,u=s.shape,l=i.get().slice();l.indexOf(u)===-1&&(l=[u]),l=yD(l),V(c,{shapes:l,validatedShapes:l,shape:u})}),e.on("shape.move.start",hD,function(s){var c=s.context,u=c.validatedShapes,l;if(l=c.canExecute=o(u),!l)return!1}),e.on("shape.move.move",dD,function(s){var c=s.context,u=c.validatedShapes,l=s.hover,p={x:s.dx,y:s.dy},f={x:s.x,y:s.y},d;if(d=o(u,p,f,l),c.delta=p,c.canExecute=d,d===null){c.target=null;return}c.target=l}),e.on("shape.move.end",function(s){var c=s.context,u=c.delta,l=c.canExecute,p=l==="attach",f=c.shapes;if(l===!1)return!1;u.x=ku(u.x),u.y=ku(u.y),!(u.x===0&&u.y===0)&&n.moveElements(f,u,c.target,{primaryShape:c.shape,attach:p})}),e.on("element.mousedown",function(s){if(lr(s)){var c=To(s);if(!c)throw new Error("must supply DOM mousedown event");return a(c,s.element)}});function a(s,c,u,l){if(Xt(u)&&(l=u,u=!1),!(c.waypoints||!c.parent)&&!Qe(s.target).has("djs-hit-no-move")){var p=gD(c),f=t.init(s,p,"shape.move",{cursor:"grabbing",autoActivate:u,data:{shape:c,context:l||{}}});if(f!==!1)return!0}}this.start=a}x_.$inject=["eventBus","dragging","modeling","selection","rules"];function yD(e){var t=ro(e,"id");return Ye(e,function(n){for(;n=n.parent;)if(t[n.id])return!1;return!0})}var __=499,id="djs-dragging",w_="drop-ok",E_="drop-not-ok",S_="new-parent",R_="attach-ok";function C_(e,t,n,i){function r(c){var u=o(c),l=vD(u);return l}function o(c){var u=aa(c),l=u.flatMap(d=>(d.incoming||[]).concat(d.outgoing||[])),p=u.concat(l),f=[...new Set(p)];return f}function a(c,u){[R_,w_,E_,S_].forEach(function(l){l===u?t.addMarker(c,l):t.removeMarker(c,l)})}function s(c,u,l){i.addDragger(u,c.dragGroup),l&&t.addMarker(u,id),c.allDraggedElements?c.allDraggedElements.push(u):c.allDraggedElements=[u]}e.on("shape.move.start",__,function(c){var u=c.context,l=u.shapes,p=u.allDraggedElements,f=r(l);if(!u.dragGroup){var d=Ae("g");ve(d,n.cls("djs-drag-group",["no-events"]));var m=t.getActiveLayer();$e(m,d),u.dragGroup=d}f.forEach(function(h){i.addDragger(h,u.dragGroup)}),p?p=Gu([p,o(l)]):p=o(l),F(p,function(h){t.addMarker(h,id)}),u.allDraggedElements=p,u.differentParents=bD(l)}),e.on("shape.move.move",__,function(c){var u=c.context,l=u.dragGroup,p=u.target,f=u.shape.parent,d=u.canExecute;p&&(d==="attach"?a(p,R_):u.canExecute&&f&&p.id!==f.id?a(p,S_):a(p,u.canExecute?w_:E_)),sn(l,c.dx,c.dy)}),e.on(["shape.move.out","shape.move.cleanup"],function(c){var u=c.context,l=u.target;l&&a(l,null)}),e.on("shape.move.cleanup",function(c){var u=c.context,l=u.allDraggedElements,p=u.dragGroup;F(l,function(f){t.removeMarker(f,id)}),p&&Ut(p)}),this.makeDraggable=s}C_.$inject=["eventBus","canvas","styles","previewSupport"];function vD(e){var t=new Set;e.forEach(function(i){t.add(i.id)});var n=Ye(e,function(i){return pt(i)?t.has(i.source.id)&&t.has(i.target.id):!0});return n}function bD(e){return aw(ro(e,function(t){return t.parent&&t.parent.id}))!==1}const xD={__depends__:[wc,ti,ed,Ei,ji,Lo],__init__:["move","movePreview"],move:["type",x_],movePreview:["type",C_]};var P_=".djs-palette-toggle",A_=".entry",_D=P_+", "+A_,rd="djs-palette-",wD="shown",od="open",T_="two-column",ED=1e3;function Ht(e,t){this._eventBus=e,this._canvas=t;var n=this;e.on("tool-manager.update",function(i){var r=i.tool;n.updateToolHighlight(r)}),e.on("i18n.changed",function(){n._update()}),e.on("diagram.init",function(){n._diagramInitialized=!0,n._rebuild()})}Ht.$inject=["eventBus","canvas"],Ht.prototype.registerProvider=function(e,t){t||(t=e,e=ED),this._eventBus.on("palette.getProviders",e,function(n){n.providers.push(t)}),this._rebuild()},Ht.prototype.getEntries=function(){var e=this._getProviders();return e.reduce(RD,{})},Ht.prototype._rebuild=function(){if(this._diagramInitialized){var e=this._getProviders();e.length&&(this._container||this._init(),this._update())}},Ht.prototype._init=function(){var e=this,t=this._eventBus,n=this._getParentContainer(),i=this._container=bt(Ht.HTML_MARKUP);n.appendChild(i),Et(n).add(rd+wD),kn.bind(i,_D,"click",function(r){var o=r.delegateTarget;if(wl(o,P_))return e.toggle();e.trigger("click",r)}),Ne.bind(i,"mousedown",function(r){r.stopPropagation()}),kn.bind(i,A_,"dragstart",function(r){e.trigger("dragstart",r)}),t.on("canvas.resized",this._layoutChanged,this),t.fire("palette.create",{container:i})},Ht.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"palette.getProviders",providers:[]});return this._eventBus.fire(t),t.providers},Ht.prototype._toggleState=function(e){e=e||{};var t=this._getParentContainer(),n=this._container,i=this._eventBus,r,o=Et(n),a=Et(t);"twoColumn"in e?r=e.twoColumn:r=this._needsCollapse(t.clientHeight,this._entries||{}),o.toggle(T_,r),a.toggle(rd+T_,r),"open"in e&&(o.toggle(od,e.open),a.toggle(rd+od,e.open)),i.fire("palette.changed",{twoColumn:r,open:this.isOpen()})},Ht.prototype._update=function(){var e=ut(".djs-palette-entries",this._container),t=this._entries=this.getEntries();Ms(e),F(t,function(n,i){var r=n.group||"default",o=ut("[data-group="+Ha(r)+"]",e);o||(o=bt('<div class="group"></div>'),hn(o,"data-group",r),e.appendChild(o));var a=n.html||(n.separator?'<hr class="separator" />':'<div class="entry" draggable="true"></div>'),s=bt(a);if(o.appendChild(s),!n.separator&&(hn(s,"data-action",i),n.title&&hn(s,"title",n.title),n.className&&SD(s,n.className),n.imageUrl)){var c=bt("<img>");hn(c,"src",n.imageUrl),s.appendChild(c)}}),this.open()},Ht.prototype.trigger=function(e,t,n){var i,r,o=t.delegateTarget||t.target;return o?(i=hn(o,"data-action"),r=t.originalEvent||t,this.triggerEntry(i,e,r,n)):t.preventDefault()},Ht.prototype.triggerEntry=function(e,t,n,i){var r=this._entries,o,a;if(o=r[e],!!o&&(a=o.action,this._eventBus.fire("palette.trigger",{entry:o,event:n})!==!1)){if(Zt(a)){if(t==="click")return a(n,i)}else if(a[t])return a[t](n,i);n.preventDefault()}},Ht.prototype._layoutChanged=function(){this._toggleState({})},Ht.prototype._needsCollapse=function(e,t){var n=50,i=Object.keys(t).length*46;return e<i+n},Ht.prototype.close=function(){this._toggleState({open:!1,twoColumn:!1})},Ht.prototype.open=function(){this._toggleState({open:!0})},Ht.prototype.toggle=function(){this.isOpen()?this.close():this.open()},Ht.prototype.isActiveTool=function(e){return e&&this._activeTool===e},Ht.prototype.updateToolHighlight=function(e){var t,n;this._toolsContainer||(t=ut(".djs-palette-entries",this._container),this._toolsContainer=ut("[data-group=tools]",t)),n=this._toolsContainer,F(n.children,function(i){var r=i.getAttribute("data-action");if(r){var o=Et(i);r=r.replace("-tool",""),o.contains("entry")&&r===e?o.add("highlighted-entry"):o.remove("highlighted-entry")}})},Ht.prototype.isOpen=function(){return Et(this._container).has(od)},Ht.prototype._getParentContainer=function(){return this._canvas.getContainer()},Ht.HTML_MARKUP='<div class="djs-palette"><div class="djs-palette-entries"></div><div class="djs-palette-toggle"></div></div>';function SD(e,t){var n=Et(e),i=De(t)?t:t.split(/\s+/g);i.forEach(function(r){n.add(r)})}function RD(e,t){var n=t.getPaletteEntries();return Zt(n)?n(e):(F(n,function(i,r){e[r]=i}),e)}const CD={__init__:["palette"],palette:["type",Ht]};var M_="crosshair",k_="selected",PD="djs-dragging-active-lasso";function Sr(e,t,n,i,r,o,a){this._selection=r,this._dragging=n,this._mouse=a;var s=this,c={create:function(p){var f=t.getActiveLayer(),d=p.frame=Ae("rect");ve(d,{class:"djs-lasso-overlay",width:1,height:1,x:0,y:0}),$e(f,d),u(!0),this.update(p)},update:function(p){var f=p.frame,d=p.bbox;f&&d&&ve(f,{x:d.x,y:d.y,width:d.width,height:d.height});var m=p.marked,h=p.lastMarked;if(m&&h){for(const y of h)m.has(y)||t.removeMarker(y,k_);for(const y of m)h.has(y)||t.addMarker(y,k_)}},remove:function(p){this.update(p),p.frame&&Ut(p.frame),u(!1)}};function u(p){Qe(t.getContainer()).toggle(PD,p)}function l(p){var f=i.getAll();return new Set(io(go(f,p)))}o.registerTool("lasso",{tool:"lasso.selection",dragging:"lasso"}),e.on("lasso.selection.end",function(p){var f=p.originalEvent.target;!p.hover&&!(f instanceof SVGElement)||e.once("lasso.selection.ended",function(){s.activateLasso(p.originalEvent,!0)})}),e.on("lasso.end",0,function(p){var f=p.context;s._select(Array.from(f.marked))}),e.on("lasso.start",function(p){var f=p.context;f.bbox=O_(p),f.add=mc(p),f.lastMarked=new Set(r.get()),f.add?f.marked=f.lastMarked:f.marked=new Set,f.initialMarked=f.marked,c.create(f)}),e.on("lasso.move",function(p){var f=p.context,d=f.bbox=O_(p),m=l(d),h=f.initialMarked.union(m);f.lastMarked=f.marked,f.marked=h,c.update(f)}),e.on("lasso.cleanup",function(p){var f=p.context;f.lastMarked=f.marked,f.marked=new Set(r.get()),c.remove(p.context)}),e.on("element.mousedown",1500,function(p){if(mc(p))return s.activateLasso(p.originalEvent),!0})}Sr.$inject=["eventBus","canvas","dragging","elementRegistry","selection","toolManager","mouse"],Sr.prototype.activateLasso=function(e,t){this._dragging.init(e,"lasso",{autoActivate:t,cursor:M_,data:{context:{}},keepSelection:!0})},Sr.prototype.activateSelection=function(e,t){this._dragging.init(e,"lasso.selection",{trapClick:!1,autoActivate:t,cursor:M_,data:{context:{}},keepSelection:!0})},Sr.prototype._select=function(e){this._selection.select(e)},Sr.prototype.select=function(e,t,n=[]){var i=io(go(e,t));this._select([...n,...i])},Sr.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},Sr.prototype.isActive=function(){var e=this._dragging.context();return e&&/^lasso/.test(e.prefix)};function O_(e){var t={x:e.x-e.dx,y:e.y-e.dy},n={x:e.x,y:e.y},i;return t.x<=n.x&&t.y<n.y||t.x<n.x&&t.y<=n.y?i={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?i={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?i={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?i={x:n.x,y:n.y,width:t.x-n.x,height:t.y-n.y}:i={x:n.x,y:n.y,width:0,height:0},i}const AD={__depends__:[Cc,Ra],__init__:["lassoTool"],lassoTool:["type",Sr]};var ad=1500,D_="grab";function Wo(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",ad,function(c){if(wa(c))return a.activateMove(c.originalEvent,!0),!1}),s&&s.addListener(ad,function(c){if(!(!L_(c.keyEvent)||a.isActive())){var u=a._mouse.getLastMoveEvent();a.activateMove(u,!!u)}},"keyboard.keydown"),s&&s.addListener(ad,function(c){!L_(c.keyEvent)||!a.isActive()||a.toggle()},"keyboard.keyup"),e.on("hand.end",function(c){var u=c.originalEvent.target;if(!c.hover&&!(u instanceof SVGElement))return!1;e.once("hand.ended",function(){a.activateMove(c.originalEvent,{reactivate:!0})})}),e.on("hand.move.move",function(c){var u=t.viewbox().scale;t.scroll({dx:c.dx*u,dy:c.dy*u})}),e.on("hand.move.end",function(c){var u=c.context,l=u.reactivate;return!wa(c)&&l&&e.once("hand.move.ended",function(p){a.activateHand(p.originalEvent,!0,!0)}),!1})}Wo.$inject=["eventBus","canvas","dragging","injector","toolManager","mouse"],Wo.prototype.activateMove=function(e,t,n){typeof t=="object"&&(n=t,t=!1),this._dragging.init(e,"hand.move",{autoActivate:t,cursor:D_,data:{context:n||{}}})},Wo.prototype.activateHand=function(e,t,n){this._dragging.init(e,"hand",{trapClick:!1,autoActivate:t,cursor:D_,data:{context:{reactivate:n}}})},Wo.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateHand(e,!!e)},Wo.prototype.isActive=function(){var e=this._dragging.context();return e?/^(hand|hand\.move)$/.test(e.prefix):!1};function L_(e){return Yt("Space",e)}const TD={__depends__:[Cc,Ra],__init__:["handTool"],handTool:["type",Wo]};var I_="connect-ok",B_="connect-not-ok";function Uo(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(c){var u=c.context,l=c.hover,p=u.canStartConnect=s.canStartConnect(l);p!==null&&(u.startTarget=l,i.addMarker(l,p?I_:B_))}),e.on(["global-connect.out","global-connect.cleanup"],function(c){var u=c.context.startTarget,l=c.context.canStartConnect;u&&i.removeMarker(u,l?I_:B_)}),e.on(["global-connect.ended"],function(c){var u=c.context,l=u.startTarget,p={x:c.x,y:c.y},f=s.canStartConnect(l);if(f)return e.once("element.out",function(){e.once(["connect.ended","connect.canceled"],function(){e.fire("global-connect.drag.ended")}),n.start(null,l,p)}),!1})}Uo.$inject=["eventBus","dragging","connect","canvas","toolManager","rules","mouse"],Uo.prototype.start=function(e,t){this._dragging.init(e,"global-connect",{autoActivate:t,trapClick:!1,data:{context:{}}})},Uo.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();return this.start(e,!!e)},Uo.prototype.isActive=function(){var e=this._dragging.context();return e&&/^global-connect/.test(e.prefix)},Uo.prototype.canStartConnect=function(e){return this._rules.allowed("connection.start",{source:e})};const MD={__depends__:[Kf,Ei,ji,Cc,Ra],globalConnect:["type",Uo]};function sd(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)}sd.$inject=["palette","create","elementFactory","spaceTool","lassoTool","handTool","globalConnect","translate"],sd.prototype.getPaletteEntries=function(){var e={},t=this._create,n=this._elementFactory,i=this._spaceTool,r=this._lassoTool,o=this._handTool,a=this._globalConnect,s=this._translate;function c(p,f,d,m,h){function y(g){var v=n.createShape(V({type:p},h));t.start(g,v)}return{group:f,className:d,title:m,action:{dragstart:y,click:y}}}function u(p){var f=n.createShape({type:"bpmn:SubProcess",x:0,y:0,isExpanded:!0}),d=n.createShape({type:"bpmn:StartEvent",x:40,y:82,parent:f});t.start(p,[f,d],{hints:{autoSelect:[f]}})}function l(p){t.start(p,n.createParticipantShape())}return V(e,{"hand-tool":{group:"tools",className:"bpmn-icon-hand-tool",title:s("Activate hand tool"),action:{click:function(p){o.activateHand(p)}}},"lasso-tool":{group:"tools",className:"bpmn-icon-lasso-tool",title:s("Activate lasso tool"),action:{click:function(p){r.activateSelection(p)}}},"space-tool":{group:"tools",className:"bpmn-icon-space-tool",title:s("Activate create/remove space tool"),action:{click:function(p){i.activateSelection(p)}}},"global-connect-tool":{group:"tools",className:"bpmn-icon-connection-multi",title:s("Activate global connect tool"),action:{click:function(p){a.start(p)}}},"tool-separator":{group:"tools",separator:!0},"create.start-event":c("bpmn:StartEvent","event","bpmn-icon-start-event-none",s("Create start event")),"create.intermediate-event":c("bpmn:IntermediateThrowEvent","event","bpmn-icon-intermediate-event-none",s("Create intermediate/boundary event")),"create.end-event":c("bpmn:EndEvent","event","bpmn-icon-end-event-none",s("Create end event")),"create.exclusive-gateway":c("bpmn:ExclusiveGateway","gateway","bpmn-icon-gateway-none",s("Create gateway")),"create.task":c("bpmn:Task","activity","bpmn-icon-task",s("Create task")),"create.data-object":c("bpmn:DataObjectReference","data-object","bpmn-icon-data-object",s("Create data object reference")),"create.data-store":c("bpmn:DataStoreReference","data-store","bpmn-icon-data-store",s("Create data store reference")),"create.subprocess-expanded":{group:"activity",className:"bpmn-icon-subprocess-expanded",title:s("Create expanded sub-process"),action:{dragstart:u,click:u}},"create.participant-expanded":{group:"collaboration",className:"bpmn-icon-participant",title:s("Create pool/participant"),action:{dragstart:l,click:l}},"create.group":c("bpmn:Group","artifact","bpmn-icon-group",s("Create group"))}),e};const kD={__depends__:[CD,Sc,lv,AD,TD,MD,ma],__init__:["paletteProvider"],paletteProvider:["type",sd]};var OD=250;function cd(e,t,n,i,r){J.call(this,e);function o(s){var c=s.canExecute.replacements;F(c,function(u){var l=u.oldElementId,p={type:u.newElementType};if(!s.visualReplacements[l]){var f=t.get(l);V(p,{x:f.x,y:f.y});var d=n.createShape(p);i.addShape(d,f.parent);var m=ut('[data-element-id="'+Ha(f.id)+'"]',s.dragGroup);m&&ve(m,{display:"none"});var h=r.addDragger(d,s.dragGroup);s.visualReplacements[l]=h,i.removeShape(d)}})}function a(s){var c=s.visualReplacements;F(c,function(u,l){var p=ut('[data-element-id="'+Ha(l)+'"]',s.dragGroup);p&&ve(p,{display:"inline"}),u.remove(),c[l]&&delete c[l]})}e.on("shape.move.move",OD,function(s){var c=s.context,u=c.canExecute;c.visualReplacements||(c.visualReplacements={}),u&&u.replacements?o(c):a(c)})}cd.$inject=["eventBus","elementRegistry","elementFactory","canvas","previewSupport"],ye(cd,J);const DD={__depends__:[Lo],__init__:["bpmnReplacePreview"],bpmnReplacePreview:["type",cd]};var LD=1250,ud=40,ID=20,BD=10,N_=20,$_=["x","y"],ND=Math.abs;function F_(e){e.on(["connect.hover","connect.move","connect.end"],LD,function(t){var n=t.context,i=n.canExecute,r=n.start,o=n.hover,a=n.source,s=n.target;t.originalEvent&&Ln(t.originalEvent)||(n.initialConnectionStart||(n.initialConnectionStart=n.connectionStart),i&&o&&$D(t,o,zD(o)),o&&HD(i,["bpmn:Association","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:SequenceFlow"])?(n.connectionStart=ri(r),We(o,["bpmn:Event","bpmn:Gateway"])&&j_(t,ri(o)),We(o,["bpmn:Task","bpmn:SubProcess"])&&FD(t,o),S(a,"bpmn:BoundaryEvent")&&s===a.host&&jD(t)):H_(i,"bpmn:MessageFlow")?(S(r,"bpmn:Event")&&(n.connectionStart=ri(r)),S(o,"bpmn:Event")&&j_(t,ri(o))):n.connectionStart=n.initialConnectionStart)})}F_.$inject=["eventBus"];function $D(e,t,n){$_.forEach(function(i){var r=z_(i,t);e[i]<t[i]+n?jt(e,i,t[i]+n):e[i]>t[i]+r-n&&jt(e,i,t[i]+r-n)})}function FD(e,t){var n=ri(t);$_.forEach(function(i){GD(e,t,i)&&jt(e,i,n[i])})}function jD(e){var t=e.context,n=t.source,i=t.target;if(!VD(t)){var r=ri(n),o=an(r,i,-10),a=[];/top|bottom/.test(o)&&a.push("x"),/left|right/.test(o)&&a.push("y"),a.forEach(function(s){var c=e[s],u;ND(c-r[s])<ud&&(c>r[s]?u=r[s]+ud:u=r[s]-ud,jt(e,s,u))})}}function j_(e,t){jt(e,"x",t.x),jt(e,"y",t.y)}function H_(e,t){return e&&e.type===t}function HD(e,t){return Ki(t,function(n){return H_(e,n)})}function z_(e,t){return e==="x"?t.width:t.height}function zD(e){return S(e,"bpmn:Task")?BD:ID}function GD(e,t,n){return e[n]>t[n]+N_&&e[n]<t[n]+z_(n,t)-N_}function VD(e){var t=e.hover,n=e.source;return t&&n&&t===n}function Rr(){this._targets={},this._snapOrigins={},this._snapLocations=[],this._defaultSnaps={}}Rr.prototype.getSnapOrigin=function(e){return this._snapOrigins[e]},Rr.prototype.setSnapOrigin=function(e,t){this._snapOrigins[e]=t,this._snapLocations.indexOf(e)===-1&&this._snapLocations.push(e)},Rr.prototype.addDefaultSnap=function(e,t){var n=this._defaultSnaps[e];n||(n=this._defaultSnaps[e]=[]),n.push(t)},Rr.prototype.getSnapLocations=function(){return this._snapLocations},Rr.prototype.setSnapLocations=function(e){this._snapLocations=e},Rr.prototype.pointsForTarget=function(e){var t=e.id||e,n=this._targets[t];return n||(n=this._targets[t]=new Ou,n.initDefaults(this._defaultSnaps)),n};function Ou(){this._snapValues={}}Ou.prototype.add=function(e,t){var n=this._snapValues[e];n||(n=this._snapValues[e]={x:[],y:[]}),n.x.indexOf(t.x)===-1&&n.x.push(t.x),n.y.indexOf(t.y)===-1&&n.y.push(t.y)},Ou.prototype.snap=function(e,t,n,i){var r=this._snapValues[t];return r&&Ok(e[n],r[n],i)},Ou.prototype.initDefaults=function(e){var t=this;F(e||{},function(n,i){F(n,function(r){t.add(i,r)})})};var WD=1250;function Pi(e,t,n){var i=this;this._elementRegistry=e,t.on(["create.start","shape.move.start"],function(r){i.initSnap(r)}),t.on(["create.move","create.end","shape.move.move","shape.move.end"],WD,function(r){var o=r.context,a=o.shape,s=o.snapContext,c=o.target;if(!(r.originalEvent&&Ln(r.originalEvent))&&!(Vo(r)||!c)){var u=s.pointsForTarget(c);u.initialized||(u=i.addSnapTargetPoints(u,a,c),u.initialized=!0),n.snap(r,u)}}),t.on(["create.cleanup","shape.move.cleanup"],function(){n.hide()})}Pi.$inject=["elementRegistry","eventBus","snapping"],Pi.prototype.initSnap=function(e){var t=this._elementRegistry,n=e.context,i=n.shape,r=n.snapContext;r||(r=n.snapContext=new Rr);var o;t.get(i.id)?o=ri(i,e):o={x:e.x+ri(i).x,y:e.y+ri(i).y};var a={x:o.x-i.width/2,y:o.y-i.height/2},s={x:o.x+i.width/2,y:o.y+i.height/2};return r.setSnapOrigin("mid",{x:o.x-e.x,y:o.y-e.y}),Ge(i)||(r.setSnapOrigin("top-left",{x:a.x-e.x,y:a.y-e.y}),r.setSnapOrigin("bottom-right",{x:s.x-e.x,y:s.y-e.y})),r},Pi.prototype.addSnapTargetPoints=function(e,t,n){var i=this.getSnapTargets(t,n);return F(i,function(r){if(Ge(r)){Ge(t)&&e.add("mid",ri(r));return}if(pt(r)){if(r.waypoints.length<3)return;var o=r.waypoints.slice(1,-1);F(o,function(a){e.add("mid",a)});return}e.add("mid",ri(r))}),!Be(t.x)||!Be(t.y)||this._elementRegistry.get(t.id)&&e.add("mid",ri(t)),e},Pi.prototype.getSnapTargets=function(e,t){return Ax(t).filter(function(n){return!UD(n)})};function UD(e){return!!e.hidden}var G_=1500;function Yo(e,t){t.invoke(Pi,this),e.on(["create.move","create.end"],G_,XD),e.on(["create.move","create.end","shape.move.move","shape.move.end"],G_,function(n){var i=n.context,r=i.canExecute,o=i.target,a=r&&(r==="attach"||r.attach);a&&!Vo(n)&&YD(n,o)})}ye(Yo,Pi),Yo.$inject=["eventBus","injector"],Yo.prototype.initSnap=function(e){var t=Pi.prototype.initSnap.call(this,e),n=e.shape,i=!!this._elementRegistry.get(n.id);return F(n.outgoing,function(r){var o=r.waypoints[0];o=o.original||o,t.setSnapOrigin(r.id+"-docking",W_(o,i,e))}),F(n.incoming,function(r){var o=r.waypoints[r.waypoints.length-1];o=o.original||o,t.setSnapOrigin(r.id+"-docking",W_(o,i,e))}),S(n,"bpmn:Participant")&&t.setSnapLocations(["top-left","bottom-right","mid"]),t},Yo.prototype.addSnapTargetPoints=function(e,t,n){Pi.prototype.addSnapTargetPoints.call(this,e,t,n);var i=this.getSnapTargets(t,n);F(i,function(o){(KD(o)||qD([t,o],"bpmn:TextAnnotation"))&&(e.add("top-left",Cx(o)),e.add("bottom-right",Px(o)))});var r=this._elementRegistry;return F(t.incoming,function(o){if(r.get(t.id)){V_(i,o.source)||e.add("mid",Le(o.source));var a=o.waypoints[0];e.add(o.id+"-docking",a.original||a)}}),F(t.outgoing,function(o){if(r.get(t.id)){V_(i,o.target)||e.add("mid",Le(o.target));var a=o.waypoints[o.waypoints.length-1];e.add(o.id+"-docking",a.original||a)}}),S(n,"bpmn:SequenceFlow")&&(e=this.addSnapTargetPoints(e,t,n.parent)),e},Yo.prototype.getSnapTargets=function(e,t){return Pi.prototype.getSnapTargets.call(this,e,t).filter(function(n){return!S(n,"bpmn:Lane")})};function YD(e,t){var n=ke(t),i=ay(e,t),r=e.context,o=r.shape,a;o.parent?a={x:0,y:0}:a=Le(o),/top/.test(i)?jt(e,"y",n.top-a.y):/bottom/.test(i)&&jt(e,"y",n.bottom-a.y),/left/.test(i)?jt(e,"x",n.left-a.x):/right/.test(i)&&jt(e,"x",n.right-a.x)}function qD(e,t){return e.every(function(n){return S(n,t)})}function KD(e){return S(e,"bpmn:SubProcess")&&Xe(e)?!0:S(e,"bpmn:Participant")}function XD(e){var t=e.context,n=t.createConstraints;if(n){var i=n.top,r=n.right,o=n.bottom,a=n.left;(a&&a>=e.x||r&&r<=e.x)&&jt(e,"x",e.x),(i&&i>=e.y||o&&o<=e.y)&&jt(e,"y",e.y)}}function V_(e,t){return e.indexOf(t)!==-1}function W_(e,t,n){return t?{x:e.x-n.x,y:e.y-n.y}:{x:e.x,y:e.y}}var ZD=1250;function is(e,t){var n=this;e.on(["resize.start"],function(i){n.initSnap(i)}),e.on(["resize.move","resize.end"],ZD,function(i){var r=i.context,o=r.shape,a=o.parent,s=r.direction,c=r.snapContext;if(!(i.originalEvent&&Ln(i.originalEvent))&&!Vo(i)){var u=c.pointsForTarget(a);u.initialized||(u=n.addSnapTargetPoints(u,o,a,s),u.initialized=!0),eL(s)&&jt(i,"x",i.x),tL(s)&&jt(i,"y",i.y),t.snap(i,u)}}),e.on(["resize.cleanup"],function(){t.hide()})}is.prototype.initSnap=function(e){var t=e.context,n=t.shape,i=t.direction,r=t.snapContext;r||(r=t.snapContext=new Rr);var o=U_(n,i);return r.setSnapOrigin("corner",{x:o.x-e.x,y:o.y-e.y}),r},is.prototype.addSnapTargetPoints=function(e,t,n,i){var r=this.getSnapTargets(t,n);return F(r,function(o){e.add("corner",Px(o)),e.add("corner",Cx(o))}),e.add("corner",U_(t,i)),e},is.$inject=["eventBus","snapping"],is.prototype.getSnapTargets=function(e,t){return Ax(t).filter(function(n){return!QD(n,e)&&!pt(n)&&!JD(n)&&!Ge(n)})};function U_(e,t){var n=Le(e),i=ke(e),r={x:n.x,y:n.y};return t.indexOf("n")!==-1?r.y=i.top:t.indexOf("s")!==-1&&(r.y=i.bottom),t.indexOf("e")!==-1?r.x=i.right:t.indexOf("w")!==-1&&(r.x=i.left),r}function QD(e,t){return e.host===t}function JD(e){return!!e.hidden}function eL(e){return e==="n"||e==="s"}function tL(e){return e==="e"||e==="w"}var nL=7,iL=1e3;function Cr(e){this._canvas=e,this._asyncHide=Wu(Sn(this.hide,this),iL)}Cr.$inject=["canvas"],Cr.prototype.snap=function(e,t){var n=e.context,i=n.snapContext,r=i.getSnapLocations(),o={x:Vo(e,"x"),y:Vo(e,"y")};F(r,function(a){var s=i.getSnapOrigin(a),c={x:e.x+s.x,y:e.y+s.y};if(F(["x","y"],function(u){var l;o[u]||(l=t.snap(c,a,u,nL),l!==void 0&&(o[u]={value:l,originValue:l-s[u]}))}),o.x&&o.y)return!1}),this.showSnapLine("vertical",o.x&&o.x.value),this.showSnapLine("horizontal",o.y&&o.y.value),F(["x","y"],function(a){var s=o[a];Xt(s)&&jt(e,a,s.originValue)})},Cr.prototype._createLine=function(e){var t=this._canvas.getLayer("snap"),n=Ae("path");return ve(n,{d:"M0,0 L0,0"}),Qe(n).add("djs-snap-line"),$e(t,n),{update:function(i){Be(i)?e==="horizontal"?ve(n,{d:"M-100000,"+i+" L+100000,"+i,display:""}):ve(n,{d:"M "+i+",-100000 L "+i+", +100000",display:""}):ve(n,{display:"none"})}}},Cr.prototype._createSnapLines=function(){this._snapLines={horizontal:this._createLine("horizontal"),vertical:this._createLine("vertical")}},Cr.prototype.showSnapLine=function(e,t){var n=this.getSnapLine(e);n&&n.update(t),this._asyncHide()},Cr.prototype.getSnapLine=function(e){return this._snapLines||this._createSnapLines(),this._snapLines[e]},Cr.prototype.hide=function(){F(this._snapLines,function(e){e.update()})};const rL={__depends__:[{__init__:["createMoveSnapping","resizeSnapping","snapping"],createMoveSnapping:["type",Pi],resizeSnapping:["type",is],snapping:["type",Cr]}],__init__:["connectSnapping","createMoveSnapping"],connectSnapping:["type",F_],createMoveSnapping:["type",Yo]};var Y_=300;function Fe(e,t,n,i){this._open=!1,this._results={},this._eventMaps=[],this._cachedRootElement=null,this._cachedSelection=null,this._cachedViewbox=null,this._canvas=e,this._eventBus=t,this._selection=n,this._translate=i,this._container=this._getBoxHtml(),this._searchInput=ut(Fe.INPUT_SELECTOR,this._container),this._resultsContainer=ut(Fe.RESULTS_CONTAINER_SELECTOR,this._container),this._canvas.getContainer().appendChild(this._container),t.on(["canvas.destroy","diagram.destroy","drag.init","elements.changed"],this.close,this)}Fe.$inject=["canvas","eventBus","selection","translate"],Fe.prototype._bindEvents=function(){var e=this;function t(n,i,r,o){e._eventMaps.push({el:n,type:r,listener:kn.bind(n,i,r,o)})}t(document,"html","click",function(n){e.close(!1)}),t(this._container,Fe.INPUT_SELECTOR,"click",function(n){n.stopPropagation(),n.delegateTarget.focus()}),t(this._container,Fe.RESULT_SELECTOR,"mouseover",function(n){n.stopPropagation(),e._scrollToNode(n.delegateTarget),e._preselect(n.delegateTarget)}),t(this._container,Fe.RESULT_SELECTOR,"click",function(n){n.stopPropagation(),e._select(n.delegateTarget)}),t(this._container,Fe.INPUT_SELECTOR,"keydown",function(n){Yt("ArrowUp",n)&&n.preventDefault(),Yt("ArrowDown",n)&&n.preventDefault()}),t(this._container,Fe.INPUT_SELECTOR,"keyup",function(n){if(Yt("Escape",n))return e.close();if(Yt("Enter",n)){var i=e._getCurrentResult();return i?e._select(i):e.close(!1)}if(Yt("ArrowUp",n))return e._scrollToDirection(!0);if(Yt("ArrowDown",n))return e._scrollToDirection();Yt(["ArrowLeft","ArrowRight"],n)||e._search(n.delegateTarget.value)})},Fe.prototype._unbindEvents=function(){this._eventMaps.forEach(function(e){kn.unbind(e.el,e.type,e.listener)})},Fe.prototype._search=function(e){var t=this;if(this._clearResults(),!!e.trim()){var n=this._searchProvider.find(e);if(n=n.filter(function(r){return!t._canvas.getRootElements().includes(r.element)}),!n.length){this._selection.select(null);return}n.forEach(function(r){var o=r.element.id,a=t._createResultNode(r,o);t._results[o]={element:r.element,node:a}});var i=ut(Fe.RESULT_SELECTOR,this._resultsContainer);this._scrollToNode(i),this._preselect(i)}},Fe.prototype._scrollToDirection=function(e){var t=this._getCurrentResult();if(t){var n=e?t.previousElementSibling:t.nextElementSibling;n&&(this._scrollToNode(n),this._preselect(n))}},Fe.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)}},Fe.prototype._clearResults=function(){Ms(this._resultsContainer),this._results={},this._eventBus.fire("searchPad.cleared")},Fe.prototype._getCurrentResult=function(){return ut(Fe.RESULT_SELECTED_SELECTOR,this._resultsContainer)},Fe.prototype._createResultNode=function(e,t){var n=bt(Fe.RESULT_HTML);return e.primaryTokens.length>0&&q_(n,e.primaryTokens,Fe.RESULT_PRIMARY_HTML),q_(n,e.secondaryTokens,Fe.RESULT_SECONDARY_HTML),hn(n,Fe.RESULT_ID_ATTRIBUTE,t),this._resultsContainer.appendChild(n),n},Fe.prototype.registerProvider=function(e){this._searchProvider=e},Fe.prototype.open=function(){if(!this._searchProvider)throw new Error("no search provider registered");this.isOpen()||(this._cachedRootElement=this._canvas.getRootElement(),this._cachedSelection=this._selection.get(),this._cachedViewbox=this._canvas.viewbox(),this._selection.select(null),this._bindEvents(),this._open=!0,Et(this._canvas.getContainer()).add("djs-search-open"),Et(this._container).add("open"),this._searchInput.focus(),this._eventBus.fire("searchPad.opened"))},Fe.prototype.close=function(e=!0){this.isOpen()&&(e&&(this._cachedRootElement&&this._canvas.setRootElement(this._cachedRootElement),this._cachedSelection&&this._selection.select(this._cachedSelection),this._cachedViewbox&&this._canvas.viewbox(this._cachedViewbox),this._eventBus.fire("searchPad.restored")),this._cachedRootElement=null,this._cachedSelection=null,this._cachedViewbox=null,this._unbindEvents(),this._open=!1,Et(this._canvas.getContainer()).remove("djs-search-open"),Et(this._container).remove("open"),this._clearResults(),this._searchInput.value="",this._searchInput.blur(),this._eventBus.fire("searchPad.closed"),this._canvas.restoreFocus())},Fe.prototype.toggle=function(){this.isOpen()?this.close():this.open()},Fe.prototype.isOpen=function(){return this._open},Fe.prototype._preselect=function(e){var t=this._getCurrentResult();if(e!==t){t&&Et(t).remove(Fe.RESULT_SELECTED_CLASS);var n=hn(e,Fe.RESULT_ID_ATTRIBUTE),i=this._results[n].element;Et(e).add(Fe.RESULT_SELECTED_CLASS),this._canvas.scrollToElement(i,{top:Y_}),this._selection.select(i),this._eventBus.fire("searchPad.preselected",i)}},Fe.prototype._select=function(e){var t=hn(e,Fe.RESULT_ID_ATTRIBUTE),n=this._results[t].element;this._cachedSelection=null,this._cachedViewbox=null,this.close(!1),this._canvas.scrollToElement(n,{top:Y_}),this._selection.select(n),this._eventBus.fire("searchPad.selected",n)},Fe.prototype._getBoxHtml=function(){const e=bt(Fe.BOX_HTML),t=ut(Fe.INPUT_SELECTOR,e);return t&&t.setAttribute("aria-label",this._translate("Search in diagram")),e};function q_(e,t,n){var i=oL(t),r=bt(n);r.innerHTML=i,e.appendChild(r)}function oL(e){var t="";return e.forEach(function(n){var i=nb(n.value||n.matched||n.normal),r=n.match||n.matched;r?t+='<b class="'+Fe.RESULT_HIGHLIGHT_CLASS+'">'+i+"</b>":t+=i}),t!==""?t:null}Fe.CONTAINER_SELECTOR=".djs-search-container",Fe.INPUT_SELECTOR=".djs-search-input input",Fe.RESULTS_CONTAINER_SELECTOR=".djs-search-results",Fe.RESULT_SELECTOR=".djs-search-result",Fe.RESULT_SELECTED_CLASS="djs-search-result-selected",Fe.RESULT_SELECTED_SELECTOR="."+Fe.RESULT_SELECTED_CLASS,Fe.RESULT_ID_ATTRIBUTE="data-result-id",Fe.RESULT_HIGHLIGHT_CLASS="djs-search-highlight",Fe.BOX_HTML=`<div class="djs-search-container djs-scrollable">
|
|
335
|
+
</svg>`},mO=900;function Ja(e,t,n,i){this._distributeElements=t,this._translate=n,this._popupMenu=e,this._rules=i,e.registerProvider("align-elements",mO,this)}Ja.$inject=["popupMenu","distributeElements","translate","rules"],Ja.prototype.getPopupMenuEntries=function(e){var t={};return this._isAllowed(e)&&V(t,this._getEntries(e)),t},Ja.prototype._isAllowed=function(e){return this._rules.allowed("elements.distribute",{elements:e})},Ja.prototype._getEntries=function(e){var t=this._distributeElements,n=this._translate,i=this._popupMenu,r={"distribute-elements-horizontal":{group:"distribute",title:n("Distribute elements horizontally"),className:"bjs-align-elements-menu-entry",imageHtml:Ux.horizontal,action:function(o,a){t.trigger(e,"horizontal"),i.close()}},"distribute-elements-vertical":{group:"distribute",title:n("Distribute elements vertically"),imageHtml:Ux.vertical,action:function(o,a){t.trigger(e,"vertical"),i.close()}}};return r};const gO={__depends__:[zf,hO],__init__:["bpmnDistributeElements","distributeElementsMenuProvider"],bpmnDistributeElements:["type",_u],distributeElementsMenuProvider:["type",Ja]};var Yx="is not a registered action",yO="is already registered";function si(e,t){this._eventBus=e,this._actions={};var n=this;e.on("diagram.init",function(){n._registerDefaultActions(t),e.fire("editorActions.init",{editorActions:n})})}si.$inject=["eventBus","injector"],si.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),u=e.get("keyboardMoveSelection",!1);t&&(this.register("undo",function(){t.undo()}),this.register("redo",function(){t.redo()})),o&&i&&this.register("copy",function(){var l=i.get();if(l.length)return o.copy(l)}),o&&i&&this.register("duplicate",function(){var l=i.get();if(l.length)return o.duplicate(l)}),o&&this.register("paste",function(){o.paste()}),o&&i&&s&&this.register("cut",function(){var l=i.get();if(l.length){var p=s.allowed("elements.delete",{elements:l});if(p!==!1){var f=De(p)?p:l;return o.cut(f.slice())}}}),r&&this.register("stepZoom",function(l){r.stepZoom(l.value)}),a&&this.register("zoom",function(l){a.zoom(l.value)}),n&&i&&s&&this.register("removeSelection",function(){var l=i.get();if(l.length){var p=s.allowed("elements.delete",{elements:l}),f;p!==!1&&(De(p)?f=p:f=l,f.length&&n.removeElements(f.slice()))}}),c&&this.register("moveCanvas",function(l){c.moveCanvas(l)}),u&&this.register("moveSelection",function(l){u.moveSelection(l.direction,l.accelerated)})},si.prototype.trigger=function(e,t){if(!this._actions[e])throw Qf(e,Yx);var n=this._eventBus.fire("editorActions.allowed",{action:e,opts:t});if(n!==!1)return this._actions[e](t)},si.prototype.register=function(e,t){var n=this;if(typeof e=="string")return this._registerAction(e,t);F(e,function(i,r){n._registerAction(r,i)})},si.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw Qf(e,yO);this._actions[e]=t},si.prototype.unregister=function(e){if(!this.isRegistered(e))throw Qf(e,Yx);this._actions[e]=void 0},si.prototype.getActions=function(){return Object.keys(this._actions)},si.prototype.isRegistered=function(e){return!!this._actions[e]};function Qf(e,t){return new Error(e+" "+t)}const vO={__init__:["editorActions"],editorActions:["type",si]};function wu(e){e.invoke(si,this)}be(wu,si),wu.$inject=["injector"],wu.prototype._registerDefaultActions=function(e){si.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),u=e.get("alignElements",!1),l=e.get("directEditing",!1),p=e.get("searchPad",!1),f=e.get("modeling",!1),d=e.get("contextPad",!1);t&&n&&i&&this._registerAction("selectElements",function(){var m=t.getRootElement(),h=n.filter(function(y){return y!==m});return i.select(h),h}),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(m){var h=i.get(),y=m.type;h.length&&c.trigger(h,y)}),i&&u&&this._registerAction("alignElements",function(m){var h=i.get(),y=[],g=m.type;h.length&&(y=Ye(h,function(v){return!S(v,"bpmn:Lane")}),u.trigger(y,g))}),i&&f&&this._registerAction("setColor",function(m){var h=i.get();h.length&&f.setColor(h,m)}),i&&l&&this._registerAction("directEditing",function(){var m=i.get();m.length&&l.activate(m[0])}),p&&this._registerAction("find",function(){p.toggle()}),t&&f&&this._registerAction("moveToOrigin",function(){var m=t.getRootElement(),h,y;S(m,"bpmn:Collaboration")?y=n.filter(function(g){return S(g.parent,"bpmn:Collaboration")}):y=n.filter(function(g){return g!==m&&!S(g.parent,"bpmn:SubProcess")}),h=Bt(y),f.moveElements(y,{x:-h.x,y:-h.y},m)}),i&&d&&this._registerAction("replaceElement",function(m){d.triggerEntry("replace","click",m)})};const bO={__depends__:[vO],editorActions:["type",wu]};function qx(e){e.on(["create.init","shape.move.init"],function(t){var n=t.context,i=t.shape;We(i,["bpmn:Participant","bpmn:SubProcess","bpmn:TextAnnotation"])&&(n.gridSnappingContext||(n.gridSnappingContext={}),n.gridSnappingContext.snapLocation="top-left")})}qx.$inject=["eventBus"];function Zr(e,t){J.call(this,e),this._gridSnapping=t;var n=this;this.preExecute("shape.resize",function(i){var r=i.context,o=r.hints||{},a=o.autoResize;if(a){var s=r.shape,c=r.newBounds;An(a)?r.newBounds=n.snapComplex(c,a):r.newBounds=n.snapSimple(s,c)}})}Zr.$inject=["eventBus","gridSnapping","modeling"],be(Zr,J),Zr.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},Zr.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},Zr.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),V(e,o),e},Zr.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),V(e,o),e};var xO=2e3;function Kx(e,t){e.on(["spaceTool.move","spaceTool.end"],xO,function(n){var i=n.context;if(i.initialized){var r=i.axis,o;r==="x"?(o=t.snapValue(n.dx),n.x=n.x+o-n.dx,n.dx=o):(o=t.snapValue(n.dy),n.y=n.y+o-n.dy,n.dy=o)}})}Kx.$inject=["eventBus","gridSnapping"];const _O={__init__:["gridSnappingResizeBehavior","gridSnappingSpaceToolBehavior"],gridSnappingResizeBehavior:["type",Zr],gridSnappingSpaceToolBehavior:["type",Kx]};var Eu=10;function Jf(e,t,n){return n||(n="round"),Math[n](e/t)*t}var wO=1200,EO=800;function wr(e,t,n){var i=!n||n.active!==!1;this._eventBus=t;var r=this;t.on("diagram.init",EO,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"],wO,function(o){var a=o.originalEvent;if(!(!r.active||a&&In(a))){var s=o.context,c=s.gridSnappingContext;c||(c=s.gridSnappingContext={}),["x","y"].forEach(function(u){var l={},p=RO(o,u,e);p&&(l.offset=p);var f=SO(o,u);f&&V(l,f),Wo(o,u)||r.snapEvent(o,u,l)})}})}wr.prototype.snapEvent=function(e,t,n){var i=this.snapValue(e[t],n);jt(e,t,i)},wr.prototype.getGridSpacing=function(){return Eu},wr.prototype.snapValue=function(e,t){var n=0;t&&t.offset&&(n=t.offset),e+=n,e=Jf(e,Eu);var i,r;return t&&t.min&&(i=t.min,Be(i)&&(i=Jf(i+n,Eu,"ceil"),e=Math.max(e,i))),t&&t.max&&(r=t.max,Be(r)&&(r=Jf(r+n,Eu,"floor"),e=Math.min(e,r))),e-=n,e},wr.prototype.isActive=function(){return this.active},wr.prototype.setActive=function(e){this.active=e,this._eventBus.fire("gridSnapping.toggle",{active:e})},wr.prototype.toggleActive=function(){this.setActive(!this.active)},wr.$inject=["elementRegistry","eventBus","config.gridSnapping"];function SO(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&&(Su(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,u=r.max;return c&&(Su(t)?Zx(s)?a.x.max=c.left:a.x.min=c.right:Xx(s)?a.y.max=c.top:a.y.min=c.bottom),u&&(Su(t)?Zx(s)?a.x.min=u.left:a.x.max=u.right:Xx(s)?a.y.min=u.top:a.y.max=u.bottom),a[t]}function RO(e,t,n){var i=e.context,r=e.shape,o=i.gridSnappingContext,a=o.snapLocation,s=o.snapOffset;return s&&Be(s[t])||(s||(s=o.snapOffset={}),Be(s[t])||(s[t]=0),!r)||(n.get(r.id)||(Su(t)?s[t]+=r[t]+r.width/2:s[t]+=r[t]+r.height/2),!a)||(t==="x"?/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)),s[t]}function Su(e){return e==="x"}function Xx(e){return e.indexOf("n")!==-1}function Zx(e){return e.indexOf("w")!==-1}const CO={__depends__:[_O],__init__:["gridSnapping"],gridSnapping:["type",wr]};var PO=2e3;function Qx(e,t,n){e.on("autoPlace",PO,function(i){var r=i.source,o=Le(r),a=i.shape,s=Zv(r,a,n);return["x","y"].forEach(function(c){var u={};s[c]!==o[c]&&(s[c]>o[c]?u.min=s[c]:u.max=s[c],S(a,"bpmn:TextAnnotation")&&(AO(c)?u.offset=-a.width/2:u.offset=-a.height/2),s[c]=t.snapValue(s[c],u))}),s})}Qx.$inject=["eventBus","gridSnapping","elementRegistry"];function AO(e){return e==="x"}var TO=1750;function Jx(e,t,n){t.on(["create.start","shape.move.start"],TO,function(i){var r=i.context,o=r.shape,a=e.getRootElement();if(!(!S(o,"bpmn:Participant")||!S(a,"bpmn:Process")||!a.children.length)){var s=r.createConstraints;s&&(o.width=n.snapValue(o.width,{min:o.width}),o.height=n.snapValue(o.height,{min:o.height}))}})}Jx.$inject=["canvas","eventBus","gridSnapping"];var MO=3e3;function Ru(e,t,n){J.call(this,e),this._gridSnapping=t;var i=this;this.postExecuted(["connection.create","connection.layout"],MO,function(r){var o=r.context,a=o.connection,s=o.hints||{},c=a.waypoints;s.connectionStart||s.connectionEnd||s.createElementsBehavior===!1||kO(c)&&n.updateWaypoints(a,i.snapMiddleSegments(c))})}Ru.$inject=["eventBus","gridSnapping","modeling"],be(Ru,J),Ru.prototype.snapMiddleSegments=function(e){var t=this._gridSnapping,n;e=e.slice();for(var i=1;i<e.length-2;i++)n=LO(t,e[i],e[i+1]),e[i]=n[0],e[i+1]=n[1];return e};function kO(e){return e.length>3}function OO(e){return e==="h"}function DO(e){return e==="v"}function LO(e,t,n){var i=Ii(t,n),r={};return OO(i)&&(r.y=e.snapValue(t.y)),DO(i)&&(r.x=e.snapValue(t.x)),("x"in r||"y"in r)&&(t=V({},t,r),n=V({},n,r)),[t,n]}const IO={__depends__:[CO,{__init__:["gridSnappingAutoPlaceBehavior","gridSnappingParticipantBehavior","gridSnappingLayoutConnectionBehavior"],gridSnappingAutoPlaceBehavior:["type",Qx],gridSnappingParticipantBehavior:["type",Jx],gridSnappingLayoutConnectionBehavior:["type",Ru]}],__init__:["bpmnGridSnapping"],bpmnGridSnapping:["type",qx]};var BO=30,e_=30;function es(e,t){this._interactionEvents=t;var n=this;e.on(["interactionEvents.createHit","interactionEvents.updateHit"],function(i){var r=i.element,o=i.gfx;if(S(r,"bpmn:Lane"))return n._createParticipantHit(r,o);if(S(r,"bpmn:Participant"))return Xe(r)?n._createParticipantHit(r,o):n._createDefaultHit(r,o);if(S(r,"bpmn:SubProcess"))return Xe(r)?n._createSubProcessHit(r,o):n._createDefaultHit(r,o)})}es.$inject=["eventBus","interactionEvents"],es.prototype._createDefaultHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createDefaultHit(e,t),!0},es.prototype._createParticipantHit=function(e,t){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});var n=Jt(e)?{width:BO,height:e.height}:{width:e.width,height:e_};return this._interactionEvents.createBoxHit(t,"all",n),!0},es.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:e_}),!0};const NO={__init__:["bpmnInteractionEvents"],bpmnInteractionEvents:["type",es]};function Cu(e){e.invoke($o,this)}be(Cu,$o),Cu.$inject=["injector"],Cu.prototype.registerBindings=function(e,t){$o.prototype.registerBindings.call(this,e,t);function n(i,r){t.isRegistered(i)&&e.addListener(r)}n("selectElements",function(i){var r=i.keyEvent;if(e.isKey(["a","A"],r)&&e.isCmd(r))return t.trigger("selectElements"),!0}),n("find",function(i){var r=i.keyEvent;if(e.isKey(["f","F"],r)&&e.isCmd(r))return t.trigger("find"),!0}),n("spaceTool",function(i){var r=i.keyEvent;if(!e.hasModifier(r)&&e.isKey(["s","S"],r))return t.trigger("spaceTool"),!0}),n("lassoTool",function(i){var r=i.keyEvent;if(!e.hasModifier(r)&&e.isKey(["l","L"],r))return t.trigger("lassoTool"),!0}),n("handTool",function(i){var r=i.keyEvent;if(!e.hasModifier(r)&&e.isKey(["h","H"],r))return t.trigger("handTool"),!0}),n("globalConnectTool",function(i){var r=i.keyEvent;if(!e.hasModifier(r)&&e.isKey(["c","C"],r))return t.trigger("globalConnectTool"),!0}),n("directEditing",function(i){var r=i.keyEvent;if(!e.hasModifier(r)&&e.isKey(["e","E"],r))return t.trigger("directEditing"),!0}),n("replaceElement",function(i){var r=i.keyEvent;if(!e.hasModifier(r)&&e.isKey(["r","R"],r))return t.trigger("replaceElement",r),!0})};const $O={__depends__:[Pf],__init__:["keyboardBindings"],keyboardBindings:["type",Cu]};var FO={moveSpeed:1,moveSpeedAccelerated:10},jO=1500,t_="left",n_="up",i_="right",r_="down",HO={ArrowLeft:t_,Left:t_,ArrowUp:n_,Up:n_,ArrowRight:i_,Right:i_,ArrowDown:r_,Down:r_},zO={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 o_(e,t,n,i,r){var o=this;this._config=V({},FO,e||{}),t.addListener(jO,function(a){var s=a.keyEvent,c=HO[s.key];if(c&&!t.isCmd(s)){var u=t.isShift(s);return o.moveSelection(c,u),!0}}),this.moveSelection=function(a,s){var c=r.get();if(c.length){var u=this._config[s?"moveSpeedAccelerated":"moveSpeed"],l=zO[a](u),p=i.allowed("elements.move",{shapes:c,hints:{keyboardMove:!0}});p&&n.moveElements(c,l)}}}o_.$inject=["config.keyboardMoveSelection","keyboard","modeling","rules","selection"];const GO={__depends__:[Pf,ni],__init__:["keyboardMoveSelection"],keyboardMoveSelection:["type",o_]};var a_=10;function ts(e,t,n,i){this._dragging=i,this._rules=t;var r=this;function o(c,u){var l=c.shape,p=c.direction,f=c.resizeConstraints,d;c.delta=u,d=FC(l,p,u),c.newBounds=HC(d,f),c.canExecute=r.canResize(c)}function a(c){var u=c.resizeConstraints,l=c.minBounds;u===void 0&&(l===void 0&&(l=r.computeMinResizeBox(c)),c.resizeConstraints={min:ke(l)})}function s(c){var u=c.shape,l=c.canExecute,p=c.newBounds;if(l){if(p=Em(p),!VO(u,p))return;n.resizeShape(u,p)}}e.on("resize.start",function(c){a(c.context)}),e.on("resize.move",function(c){var u={x:c.dx,y:c.dy};o(c.context,u)}),e.on("resize.end",function(c){s(c.context)})}ts.prototype.canResize=function(e){var t=this._rules,n=ui(e,["newBounds","shape","delta","direction"]);return t.allowed("shape.resize",n)},ts.prototype.activate=function(e,t,n){var i=this._dragging,r,o;if(typeof n=="string"&&(n={direction:n}),r=V({shape:t},n),o=r.direction,!o)throw new Error("must provide a direction (n|w|s|e|nw|se|ne|sw)");i.init(e,s_(t,o),"resize",{autoActivate:!0,cursor:WO(o),data:{shape:t,context:r}})},ts.prototype.computeMinResizeBox=function(e){var t=e.shape,n=e.direction,i,r;return i=e.minDimensions||{width:a_,height:a_},r=lg(t,e.childrenBoxPadding),zC(n,t,i,r)},ts.$inject=["eventBus","rules","modeling","dragging"];function VO(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}function s_(e,t){var n=Le(e),i=ke(e),r={x:n.x,y:n.y};return t.indexOf("n")!==-1?r.y=i.top:t.indexOf("s")!==-1&&(r.y=i.bottom),t.indexOf("e")!==-1?r.x=i.right:t.indexOf("w")!==-1&&(r.x=i.left),r}function WO(e){var t="resize-";return e==="n"||e==="s"?t+"ns":e==="e"||e==="w"?t+"ew":e==="nw"||e==="se"?t+"nwse":t+"nesw"}var c_="djs-resizing",u_="resize-not-ok",UO=500;function l_(e,t,n){function i(o){var a=o.shape,s=o.newBounds,c=o.frame;c||(c=o.frame=n.addFrame(a,t.getActiveLayer()),t.addMarker(a,c_)),s.width>5&&xe(c,{x:s.x,width:s.width}),s.height>5&&xe(c,{y:s.y,height:s.height}),o.canExecute?Qe(c).remove(u_):Qe(c).add(u_)}function r(o){var a=o.shape,s=o.frame;s&&Yt(o.frame),t.removeMarker(a,c_)}e.on("resize.move",UO,function(o){i(o.context)}),e.on("resize.cleanup",function(o){r(o.context)})}l_.$inject=["eventBus","canvas","previewSupport"];var Pu=-6,Au=8,Tu=20,ns="djs-resizer",YO=["n","w","s","e","nw","ne","se","sw"];function Er(e,t,n,i){this._resize=i,this._canvas=t;var r=this;e.on("selection.changed",function(o){var a=o.newSelection;r.removeResizers(),a.length===1&&F(a,Sn(r.addResizer,r))}),e.on("shape.changed",function(o){var a=o.element;n.isSelected(a)&&(r.removeResizers(),r.addResizer(a))})}Er.prototype.makeDraggable=function(e,t,n){var i=this._resize;function r(o){pr(o)&&i.activate(o,e,n)}Ne.bind(t,"mousedown",r),Ne.bind(t,"touchstart",r)},Er.prototype._createResizer=function(e,t,n,i){var r=this._getResizersParent(),o=qO(i),a=Te("g");Qe(a).add(ns),Qe(a).add(ns+"-"+e.id),Qe(a).add(ns+"-"+i),$e(r,a);var s=Te("rect");xe(s,{x:-Au/2+o.x,y:-Au/2+o.y,width:Au,height:Au}),Qe(s).add(ns+"-visual"),$e(a,s);var c=Te("rect");return xe(c,{x:-Tu/2+o.x,y:-Tu/2+o.y,width:Tu,height:Tu}),Qe(c).add(ns+"-hit"),$e(a,c),Gs(a,t,n),a},Er.prototype.createResizer=function(e,t){var n=s_(e,t),i=this._createResizer(e,n.x,n.y,t);this.makeDraggable(e,i,t)},Er.prototype.addResizer=function(e){var t=this;ft(e)||F(YO,function(n){t._resize.canResize({shape:e,direction:n})&&t.createResizer(e,n)})},Er.prototype.removeResizers=function(){var e=this._getResizersParent();Ls(e)},Er.prototype._getResizersParent=function(){return this._canvas.getLayer("resizers")},Er.$inject=["eventBus","canvas","selection","resize"];function qO(e){var t={x:0,y:0};return e.indexOf("e")!==-1?t.x=-Pu:e.indexOf("w")!==-1&&(t.x=Pu),e.indexOf("s")!==-1?t.y=-Pu:e.indexOf("n")!==-1&&(t.y=Pu),t}const p_={__depends__:[Si,Hi,Io],__init__:["resize","resizePreview","resizeHandles"],resize:["type",ts],resizePreview:["type",l_],resizeHandles:["type",Er]};var KO=2e3;function is(e,t,n,i,r,o,a){this._bpmnFactory=t,this._canvas=n,this._modeling=r,this._textRenderer=a,i.registerProvider(this),e.on("element.dblclick",function(c){s(c.element,!0)}),e.on(["autoPlace.start","canvas.viewbox.changing","drag.init","element.mousedown","popupMenu.open","root.set","selection.changed"],function(){i.isActive()&&i.complete()}),e.on(["shape.remove","connection.remove"],KO,function(c){i.isActive(c.element)&&i.cancel()}),e.on(["commandStack.changed"],function(c){i.isActive()&&i.cancel()}),e.on("directEditing.activate",function(c){o.removeResizers()}),e.on("create.end",500,function(c){var u=c.context,l=u.shape,p=c.context.canExecute,f=c.isTouch;f||p&&(u.hints&&u.hints.createElementsBehavior===!1||s(l))}),e.on("autoPlace.end",500,function(c){s(c.shape)});function s(c,u){(u||We(c,["bpmn:Activity","bpmn:Event","bpmn:TextAnnotation","bpmn:Participant"]))&&i.activate(c)}}is.$inject=["eventBus","bpmnFactory","canvas","directEditing","modeling","resizeHandles","textRenderer"],is.prototype.activate=function(e){var t=qn(e);if(t!==void 0){var n={text:t},i=this.getEditingBBox(e);V(n,i);var r={},o=n.style||{};return V(o,{backgroundColor:null,border:null}),(We(e,["bpmn:Task","bpmn:Participant","bpmn:Lane","bpmn:CallActivity"])||f_(e))&&V(r,{centerVertically:!0}),sr(e)&&(V(r,{resizable:!0,autoResize:!0}),V(o,{backgroundColor:"#ffffff",border:"1px solid #ccc"})),S(e,"bpmn:TextAnnotation")&&(V(r,{resizable:!0,autoResize:!0}),V(o,{backgroundColor:"#ffffff",border:"1px solid #ccc"})),V(n,{options:r,style:o}),n}},is.prototype.getEditingBBox=function(e){var t=this._canvas,n=e.label||e,i=t.getAbsoluteBBox(n),r={x:i.x+i.width/2,y:i.y+i.height/2},o={x:i.x,y:i.y},a=t.zoom(),s=this._textRenderer.getDefaultStyle(),c=this._textRenderer.getExternalStyle(),u=c.fontSize*a,l=c.lineHeight,p=s.fontSize*a,f=s.lineHeight,d={fontFamily:this._textRenderer.getDefaultStyle().fontFamily,fontWeight:this._textRenderer.getDefaultStyle().fontWeight};if(S(e,"bpmn:Lane")||QO(e)){var m=Jt(e),h=m?{width:i.height,height:30*a,x:i.x-i.height/2+15*a,y:r.y-30*a/2}:{width:i.width,height:30*a};V(o,h),V(d,{fontSize:p+"px",lineHeight:f,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px",transform:m?"rotate(-90deg)":null})}if(ZO(e)){var y=Jt(e),g=y?{width:i.width,height:i.height}:{width:i.height,height:i.width,x:r.x-i.height/2,y:r.y-i.width/2};V(o,g),V(d,{fontSize:p+"px",lineHeight:f,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px",transform:y?null:"rotate(-90deg)"})}(We(e,["bpmn:Task","bpmn:CallActivity"])||f_(e))&&(V(o,{width:i.width,height:i.height}),V(d,{fontSize:p+"px",lineHeight:f,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px"})),XO(e)&&(V(o,{width:i.width,x:i.x}),V(d,{fontSize:p+"px",lineHeight:f,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px"}));var v=1,b=i.width+2*v;if(n.labelTarget&&(V(o,{width:b,height:i.height+2*v,x:i.x-v,y:i.y-v}),V(d,{fontSize:u+"px",lineHeight:l})),sr(n)&&!Us(n)&&!Ge(n)){var x=jl(e),C=t.getAbsoluteBBox({x:x.x,y:x.y,width:0,height:0}),T=u,k=Fr.width*a+2*v;V(o,{width:k,height:T+2*v,x:C.x-k/2,y:C.y-T/2-v}),V(d,{fontSize:u+"px",lineHeight:l})}return S(e,"bpmn:TextAnnotation")&&(V(o,{width:i.width+2*v,height:i.height+2*v,x:i.x-v,y:i.y-v,minWidth:30*a,minHeight:10*a}),V(d,{textAlign:"left",paddingTop:wo*a+"px",paddingBottom:wo*a+"px",paddingLeft:wo*a+"px",paddingRight:wo*a+"px",fontSize:p+"px",lineHeight:f})),{bounds:o,style:d}},is.prototype.update=function(e,t,n,i){var r,o;S(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}),JO(t)&&(t=null),this._modeling.updateLabel(e,t,r)};function f_(e){return S(e,"bpmn:SubProcess")&&!Xe(e)}function XO(e){return S(e,"bpmn:SubProcess")&&Xe(e)}function ZO(e){return S(e,"bpmn:Participant")&&!Xe(e)}function QO(e){return S(e,"bpmn:Participant")&&Xe(e)}function JO(e){return!e||!e.trim()}var d_="djs-element-hidden",h_="djs-label-hidden";function m_(e,t,n){var i=this,r=t.getDefaultLayer(),o,a,s;e.on("directEditing.activate",function(c){var u=c.active;if(o=u.element.label||u.element,S(o,"bpmn:TextAnnotation")){a=t.getAbsoluteBBox(o),s=Te("g");var l=n.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:o.width,containerHeight:o.height,position:{mx:0,my:0}}),p=i.path=Te("path");xe(p,{d:l,strokeWidth:2,stroke:eD(o)}),$e(s,p),$e(r,s),cn(s,o.x,o.y)}S(o,"bpmn:TextAnnotation")||o.labelTarget?t.addMarker(o,d_):(S(o,"bpmn:Task")||S(o,"bpmn:CallActivity")||S(o,"bpmn:SubProcess")||S(o,"bpmn:Participant")||S(o,"bpmn:Lane"))&&t.addMarker(o,h_)}),e.on("directEditing.resize",function(c){if(S(o,"bpmn:TextAnnotation")){var u=c.height,l=c.dy,p=Math.max(o.height/a.height*(u+l),0),f=n.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:o.width,containerHeight:p,position:{mx:0,my:0}});xe(i.path,{d:f})}}),e.on(["directEditing.complete","directEditing.cancel"],function(c){var u=c.active;u&&(t.removeMarker(u.element.label||u.element,d_),t.removeMarker(o,h_)),o=void 0,a=void 0,s&&(Yt(s),s=void 0)})}m_.$inject=["eventBus","canvas","pathMap"];function eD(e,t){var n=et(e);return n.get("stroke")||t||"black"}const tD={__depends__:[of,p_,jx],__init__:["labelEditingProvider","labelEditingPreview"],labelEditingProvider:["type",is],labelEditingPreview:["type",m_]};var nD=500,iD=1e3;function Pi(e,t,n){this._eventBus=e,this._elementRegistry=n,this._outlineOffset=5,this._outlineStyle=t.cls("djs-outline",["no-fill"]);var i=this;function r(o){HS(o)||i.createOutline(o)}e.on("element.hover",function(o){r(o.element)}),e.on("selection.changed",function(o){F(o.newSelection,r)}),e.on(["shape.changed","connection.changed"],nD,function(o){var a=o.element,s=o.gfx,c=lt(".djs-outline",s);c&&i.updateOutline(a,c)})}Pi.prototype.createOutline=function(e){var t=this._elementRegistry.getGraphics(e);if(!t)throw new Error("cannot create outline for non-rendered element");var n=lt(".djs-outline",t);return n||(n=this.getOutline(e)||this._createOutlineGfx(),$e(t,n),this.updateOutline(e,n)),n},Pi.prototype._createOutlineGfx=function(){var e=Te("rect");return xe(e,V({x:0,y:0,rx:4,width:100,height:100},this._outlineStyle)),e},Pi.prototype.updateOutline=function(e,t){e.waypoints?this.updateConnectionOutline(t,e):this.updateShapeOutline(t,e)},Pi.prototype.updateShapeOutline=function(e,t){var n=!1,i=this._getProviders();i.length&&F(i,function(r){n=n||r.updateOutline(t,e)}),n||xe(e,{x:-this._outlineOffset,y:-this._outlineOffset,width:t.width+this._outlineOffset*2,height:t.height+this._outlineOffset*2})},Pi.prototype.updateConnectionOutline=function(e,t){var n=Bt(t);xe(e,{x:n.x-this._outlineOffset,y:n.y-this._outlineOffset,width:n.width+this._outlineOffset*2,height:n.height+this._outlineOffset*2})},Pi.prototype.registerProvider=function(e,t){t||(t=e,e=iD),this._eventBus.on("outline.getProviders",e,function(n){n.providers.push(t)})},Pi.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"outline.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},Pi.prototype.getOutline=function(e){var t,n=this._getProviders();return F(n,function(i){Zt(i.getOutline)&&(t=t||i.getOutline(e))}),t},Pi.$inject=["eventBus","styles","elementRegistry"];var Mu=6;function ed(e,t,n){this._canvas=t;var i=this;e.on("element.changed",function(r){n.isSelected(r.element)&&i._updateMultiSelectionOutline(n.get())}),e.on("selection.changed",function(r){var o=r.newSelection;i._updateMultiSelectionOutline(o)})}ed.prototype._updateMultiSelectionOutline=function(e){var t=this._canvas.getLayer("selectionOutline");Ls(t);var n=e.length>1,i=this._canvas.getContainer();if(Qe(i)[n?"add":"remove"]("djs-multi-select"),!!n){var r=rD(Bt(e)),o=Te("rect");xe(o,V({rx:3},r)),Qe(o).add("djs-selection-outline"),$e(t,o)}},ed.$inject=["eventBus","canvas","selection"];function rD(e){return{x:e.x-Mu,y:e.y-Mu,width:e.width+Mu*2,height:e.height+Mu*2}}const td={__depends__:[ni],__init__:["outline","multiSelectionOutline"],outline:["type",Pi],multiSelectionOutline:["type",ed]},g_=["bpmn:Event","bpmn:SequenceFlow","bpmn:Gateway"],y_={class:"bjs-label-link",stroke:"var(--element-selected-outline-secondary-stroke-color)",strokeDasharray:"5, 5"},oD=15,ku=2;function v_(e,t,n,i,r){const o=t.getLayer("overlays");e.on(["selection.changed","shape.changed"],function(){s()}),e.on("selection.changed",function({newSelection:p}){var d;const f=p.filter(m=>We(m,g_));if(f.length===1){const m=f[0];Ge(m)?a(m,m.labelTarget):(d=m.labels)!=null&&d.length&&a(m.labels[0],m)}if(f.length===2){const m=f.find(Ge),h=f.find(y=>{var g;return(g=y.labels)==null?void 0:g.includes(m)});m&&h&&a(m,h)}}),e.on("shape.changed",function({element:p}){var f;!We(p,g_)||!l(p)||(Ge(p)?a(p,p.labelTarget):(f=p.labels)!=null&&f.length&&a(p.labels[0],p))});function a(p,f){const d=aa([Le(f),Le(p)],y_),m=d.getAttribute("d"),y=r.isSelected(p)?c(p):u(p),g=la(y,m);if(!g)return;const b=r.isSelected(f)?c(f):u(f),x=la(b,m)||Le(f);xa(x,g)<oD||(Ol(d,[x,g]),$e(o,d))}function s(){Ds(`.${y_.class}`,o).forEach(Yt)}function c(p){const f=i.getOutline(p);if(!f)return u(p);if(f.x){const d={x:p.x+Sr(f,"x")-ku,y:p.y+Sr(f,"y")-ku,width:Sr(f,"width")+ku*2,height:Sr(f,"height")+ku*2};return zl(d,Sr(f,"rx"))}if(f.cx){const d=Sr(f,"r"),m={x:p.x+Sr(f,"cx")-d,y:p.y+Sr(f,"cy")-d,width:d*2,height:d*2};return Ym(m)}}function u(p){return n.getShapePath(p)}function l(p){return r.isSelected(p)}}v_.$inject=["eventBus","canvas","graphicsFactory","outline","selection"];function Sr(e,t){return parseFloat(xe(e,t)||0)}const aD={__depends__:[ni,td],__init__:["labelLink"],labelLink:["type",v_]};var sD=new Lo("tt");function cD(e){var t=bt('<div class="djs-tooltip-container" />');return _n(t,{position:"absolute",width:"0",height:"0"}),e.insertBefore(t,e.firstChild),t}function uD(e,t,n){_n(e,{left:t+"px",top:n+"px"})}function nd(e,t){e.style.display=t===!1?"none":""}var b_="djs-tooltip",id="."+b_;function Cn(e,t){this._eventBus=e,this._canvas=t,this._ids=sD,this._tooltipDefaults={show:{minZoom:.7,maxZoom:5}},this._tooltips={},this._tooltipRoot=cD(t.getContainer());var n=this;On.bind(this._tooltipRoot,id,"mousedown",function(i){i.stopPropagation()}),On.bind(this._tooltipRoot,id,"mouseover",function(i){n.trigger("mouseover",i)}),On.bind(this._tooltipRoot,id,"mouseout",function(i){n.trigger("mouseout",i)}),this._init()}Cn.$inject=["eventBus","canvas"],Cn.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=V({},this._tooltipDefaults,e,{id:t}),this._addTooltip(e),e.timeout&&this.setTimeout(e),t},Cn.prototype.trigger=function(e,t){var n=t.delegateTarget||t.target,i=this.get(mn(n,"data-tooltip-id"));i&&(e==="mouseover"&&i.timeout&&this.clearTimeout(i),e==="mouseout"&&i.timeout&&(i.timeout=1e3,this.setTimeout(i)))},Cn.prototype.get=function(e){return typeof e!="string"&&(e=e.id),this._tooltips[e]},Cn.prototype.clearTimeout=function(e){if(e=this.get(e),!!e){var t=e.removeTimer;t&&(clearTimeout(t),e.removeTimer=null)}},Cn.prototype.setTimeout=function(e){if(e=this.get(e),!!e){this.clearTimeout(e);var t=this;e.removeTimer=setTimeout(function(){t.remove(e)},e.timeout)}},Cn.prototype.remove=function(e){var t=this.get(e);t&&(vi(t.html),vi(t.htmlContainer),delete t.htmlContainer,delete this._tooltips[t.id])},Cn.prototype.show=function(){nd(this._tooltipRoot)},Cn.prototype.hide=function(){nd(this._tooltipRoot,!1)},Cn.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},Cn.prototype._addTooltip=function(e){var t=e.id,n=e.html,i,r=this._tooltipRoot;n.get&&n.constructor.prototype.jquery&&(n=n.get(0)),An(n)&&(n=bt(n)),i=bt('<div data-tooltip-id="'+t+'" class="'+b_+'">'),_n(i,{position:"absolute"}),i.appendChild(n),e.type&&wt(i).add("djs-tooltip-"+e.type),e.className&&wt(i).add(e.className),e.htmlContainer=i,r.appendChild(i),this._tooltips[t]=e,this._updateTooltip(e)},Cn.prototype._updateTooltip=function(e){var t=e.position,n=e.htmlContainer;uD(n,t.x,t.y)},Cn.prototype._updateTooltipVisibilty=function(e){F(this._tooltips,function(t){var n=t.show,i=t.htmlContainer,r=!0;n&&((n.minZoom>e.scale||n.maxZoom<e.scale)&&(r=!1),nd(i,r))})},Cn.prototype._init=function(){var e=this;function t(n){e._updateRoot(n),e._updateTooltipVisibilty(n),e.show()}this._eventBus.on("canvas.viewbox.changing",function(n){e.hide()}),this._eventBus.on("canvas.viewbox.changed",function(n){t(n.viewbox)})};const lD={__init__:["tooltips"],tooltips:["type",Cn]};var pD="flow elements must be children of pools/participants",fD="Data object must be placed within a pool/participant.";function x_(e,t,n){function i(r,o,a){t.add({position:{x:r.x+5,y:r.y+5},type:"error",timeout:2e3,html:"<div>"+o+"</div>"})}e.on(["shape.move.rejected","create.rejected"],function(r){var o=r.context,a=o.shape,s=o.target;S(s,"bpmn:Collaboration")&&(S(a,"bpmn:FlowNode")?i(r,n(pD)):S(a,"bpmn:DataObjectReference")&&i(r,n(fD)))})}x_.$inject=["eventBus","tooltips","translate"];const dD={__depends__:[lD],__init__:["modelingFeedback"],modelingFeedback:["type",x_]};var hD=500,mD=1250,gD=1500,Ou=Math.round;function yD(e){return{x:e.x+Ou(e.width/2),y:e.y+Ou(e.height/2)}}function __(e,t,n,i,r){function o(s,c,u,l){return r.allowed("elements.move",{shapes:s,delta:c,position:u,target:l})}e.on("shape.move.start",gD,function(s){var c=s.context,u=s.shape,l=i.get().slice();l.indexOf(u)===-1&&(l=[u]),l=vD(l),V(c,{shapes:l,validatedShapes:l,shape:u})}),e.on("shape.move.start",mD,function(s){var c=s.context,u=c.validatedShapes,l;if(l=c.canExecute=o(u),!l)return!1}),e.on("shape.move.move",hD,function(s){var c=s.context,u=c.validatedShapes,l=s.hover,p={x:s.dx,y:s.dy},f={x:s.x,y:s.y},d;if(d=o(u,p,f,l),c.delta=p,c.canExecute=d,d===null){c.target=null;return}c.target=l}),e.on("shape.move.end",function(s){var c=s.context,u=c.delta,l=c.canExecute,p=l==="attach",f=c.shapes;if(l===!1)return!1;u.x=Ou(u.x),u.y=Ou(u.y),!(u.x===0&&u.y===0)&&n.moveElements(f,u,c.target,{primaryShape:c.shape,attach:p})}),e.on("element.mousedown",function(s){if(pr(s)){var c=Mo(s);if(!c)throw new Error("must supply DOM mousedown event");return a(c,s.element)}});function a(s,c,u,l){if(Xt(u)&&(l=u,u=!1),!(c.waypoints||!c.parent)&&!Qe(s.target).has("djs-hit-no-move")){var p=yD(c),f=t.init(s,p,"shape.move",{cursor:"grabbing",autoActivate:u,data:{shape:c,context:l||{}}});if(f!==!1)return!0}}this.start=a}__.$inject=["eventBus","dragging","modeling","selection","rules"];function vD(e){var t=oo(e,"id");return Ye(e,function(n){for(;n=n.parent;)if(t[n.id])return!1;return!0})}var w_=499,rd="djs-dragging",E_="drop-ok",S_="drop-not-ok",R_="new-parent",C_="attach-ok";function P_(e,t,n,i){function r(c){var u=o(c),l=bD(u);return l}function o(c){var u=sa(c),l=u.flatMap(d=>(d.incoming||[]).concat(d.outgoing||[])),p=u.concat(l),f=[...new Set(p)];return f}function a(c,u){[C_,E_,S_,R_].forEach(function(l){l===u?t.addMarker(c,l):t.removeMarker(c,l)})}function s(c,u,l){i.addDragger(u,c.dragGroup),l&&t.addMarker(u,rd),c.allDraggedElements?c.allDraggedElements.push(u):c.allDraggedElements=[u]}e.on("shape.move.start",w_,function(c){var u=c.context,l=u.shapes,p=u.allDraggedElements,f=r(l);if(!u.dragGroup){var d=Te("g");xe(d,n.cls("djs-drag-group",["no-events"]));var m=t.getActiveLayer();$e(m,d),u.dragGroup=d}f.forEach(function(h){i.addDragger(h,u.dragGroup)}),p?p=Vu([p,o(l)]):p=o(l),F(p,function(h){t.addMarker(h,rd)}),u.allDraggedElements=p,u.differentParents=xD(l)}),e.on("shape.move.move",w_,function(c){var u=c.context,l=u.dragGroup,p=u.target,f=u.shape.parent,d=u.canExecute;p&&(d==="attach"?a(p,C_):u.canExecute&&f&&p.id!==f.id?a(p,R_):a(p,u.canExecute?E_:S_)),cn(l,c.dx,c.dy)}),e.on(["shape.move.out","shape.move.cleanup"],function(c){var u=c.context,l=u.target;l&&a(l,null)}),e.on("shape.move.cleanup",function(c){var u=c.context,l=u.allDraggedElements,p=u.dragGroup;F(l,function(f){t.removeMarker(f,rd)}),p&&Yt(p)}),this.makeDraggable=s}P_.$inject=["eventBus","canvas","styles","previewSupport"];function bD(e){var t=new Set;e.forEach(function(i){t.add(i.id)});var n=Ye(e,function(i){return ft(i)?t.has(i.source.id)&&t.has(i.target.id):!0});return n}function xD(e){return sw(oo(e,function(t){return t.parent&&t.parent.id}))!==1}const _D={__depends__:[Ec,ni,td,Si,Hi,Io],__init__:["move","movePreview"],move:["type",__],movePreview:["type",P_]};var A_=".djs-palette-toggle",T_=".entry",wD=A_+", "+T_,od="djs-palette-",ED="shown",ad="open",M_="two-column",SD=1e3;function Ht(e,t){this._eventBus=e,this._canvas=t;var n=this;e.on("tool-manager.update",function(i){var r=i.tool;n.updateToolHighlight(r)}),e.on("i18n.changed",function(){n._update()}),e.on("diagram.init",function(){n._diagramInitialized=!0,n._rebuild()})}Ht.$inject=["eventBus","canvas"],Ht.prototype.registerProvider=function(e,t){t||(t=e,e=SD),this._eventBus.on("palette.getProviders",e,function(n){n.providers.push(t)}),this._rebuild()},Ht.prototype.getEntries=function(){var e=this._getProviders();return e.reduce(CD,{})},Ht.prototype._rebuild=function(){if(this._diagramInitialized){var e=this._getProviders();e.length&&(this._container||this._init(),this._update())}},Ht.prototype._init=function(){var e=this,t=this._eventBus,n=this._getParentContainer(),i=this._container=bt(Ht.HTML_MARKUP);n.appendChild(i),wt(n).add(od+ED),On.bind(i,wD,"click",function(r){var o=r.delegateTarget;if(El(o,A_))return e.toggle();e.trigger("click",r)}),Ne.bind(i,"mousedown",function(r){r.stopPropagation()}),On.bind(i,T_,"dragstart",function(r){e.trigger("dragstart",r)}),t.on("canvas.resized",this._layoutChanged,this),t.fire("palette.create",{container:i})},Ht.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"palette.getProviders",providers:[]});return this._eventBus.fire(t),t.providers},Ht.prototype._toggleState=function(e){e=e||{};var t=this._getParentContainer(),n=this._container,i=this._eventBus,r,o=wt(n),a=wt(t);"twoColumn"in e?r=e.twoColumn:r=this._needsCollapse(t.clientHeight,this._entries||{}),o.toggle(M_,r),a.toggle(od+M_,r),"open"in e&&(o.toggle(ad,e.open),a.toggle(od+ad,e.open)),i.fire("palette.changed",{twoColumn:r,open:this.isOpen()})},Ht.prototype._update=function(){var e=lt(".djs-palette-entries",this._container),t=this._entries=this.getEntries();ks(e),F(t,function(n,i){var r=n.group||"default",o=lt("[data-group="+za(r)+"]",e);o||(o=bt('<div class="group"></div>'),mn(o,"data-group",r),e.appendChild(o));var a=n.html||(n.separator?'<hr class="separator" />':'<div class="entry" draggable="true"></div>'),s=bt(a);if(o.appendChild(s),!n.separator&&(mn(s,"data-action",i),n.title&&mn(s,"title",n.title),n.className&&RD(s,n.className),n.imageUrl)){var c=bt("<img>");mn(c,"src",n.imageUrl),s.appendChild(c)}}),this.open()},Ht.prototype.trigger=function(e,t,n){var i,r,o=t.delegateTarget||t.target;return o?(i=mn(o,"data-action"),r=t.originalEvent||t,this.triggerEntry(i,e,r,n)):t.preventDefault()},Ht.prototype.triggerEntry=function(e,t,n,i){var r=this._entries,o,a;if(o=r[e],!!o&&(a=o.action,this._eventBus.fire("palette.trigger",{entry:o,event:n})!==!1)){if(Zt(a)){if(t==="click")return a(n,i)}else if(a[t])return a[t](n,i);n.preventDefault()}},Ht.prototype._layoutChanged=function(){this._toggleState({})},Ht.prototype._needsCollapse=function(e,t){var n=50,i=Object.keys(t).length*46;return e<i+n},Ht.prototype.close=function(){this._toggleState({open:!1,twoColumn:!1})},Ht.prototype.open=function(){this._toggleState({open:!0})},Ht.prototype.toggle=function(){this.isOpen()?this.close():this.open()},Ht.prototype.isActiveTool=function(e){return e&&this._activeTool===e},Ht.prototype.updateToolHighlight=function(e){var t,n;this._toolsContainer||(t=lt(".djs-palette-entries",this._container),this._toolsContainer=lt("[data-group=tools]",t)),n=this._toolsContainer,F(n.children,function(i){var r=i.getAttribute("data-action");if(r){var o=wt(i);r=r.replace("-tool",""),o.contains("entry")&&r===e?o.add("highlighted-entry"):o.remove("highlighted-entry")}})},Ht.prototype.isOpen=function(){return wt(this._container).has(ad)},Ht.prototype._getParentContainer=function(){return this._canvas.getContainer()},Ht.HTML_MARKUP='<div class="djs-palette"><div class="djs-palette-entries"></div><div class="djs-palette-toggle"></div></div>';function RD(e,t){var n=wt(e),i=De(t)?t:t.split(/\s+/g);i.forEach(function(r){n.add(r)})}function CD(e,t){var n=t.getPaletteEntries();return Zt(n)?n(e):(F(n,function(i,r){e[r]=i}),e)}const PD={__init__:["palette"],palette:["type",Ht]};var k_="crosshair",O_="selected",AD="djs-dragging-active-lasso";function Rr(e,t,n,i,r,o,a){this._selection=r,this._dragging=n,this._mouse=a;var s=this,c={create:function(p){var f=t.getActiveLayer(),d=p.frame=Te("rect");xe(d,{class:"djs-lasso-overlay",width:1,height:1,x:0,y:0}),$e(f,d),u(!0),this.update(p)},update:function(p){var f=p.frame,d=p.bbox;f&&d&&xe(f,{x:d.x,y:d.y,width:d.width,height:d.height});var m=p.marked,h=p.lastMarked;if(m&&h){for(const y of h)m.has(y)||t.removeMarker(y,O_);for(const y of m)h.has(y)||t.addMarker(y,O_)}},remove:function(p){this.update(p),p.frame&&Yt(p.frame),u(!1)}};function u(p){Qe(t.getContainer()).toggle(AD,p)}function l(p){var f=i.getAll();return new Set(ro(yo(f,p)))}o.registerTool("lasso",{tool:"lasso.selection",dragging:"lasso"}),e.on("lasso.selection.end",function(p){var f=p.originalEvent.target;!p.hover&&!(f instanceof SVGElement)||e.once("lasso.selection.ended",function(){s.activateLasso(p.originalEvent,!0)})}),e.on("lasso.end",0,function(p){var f=p.context;s._select(Array.from(f.marked))}),e.on("lasso.start",function(p){var f=p.context;f.bbox=D_(p),f.add=gc(p),f.lastMarked=new Set(r.get()),f.add?f.marked=f.lastMarked:f.marked=new Set,f.initialMarked=f.marked,c.create(f)}),e.on("lasso.move",function(p){var f=p.context,d=f.bbox=D_(p),m=l(d),h=f.initialMarked.union(m);f.lastMarked=f.marked,f.marked=h,c.update(f)}),e.on("lasso.cleanup",function(p){var f=p.context;f.lastMarked=f.marked,f.marked=new Set(r.get()),c.remove(p.context)}),e.on("element.mousedown",1500,function(p){if(gc(p))return s.activateLasso(p.originalEvent),!0})}Rr.$inject=["eventBus","canvas","dragging","elementRegistry","selection","toolManager","mouse"],Rr.prototype.activateLasso=function(e,t){this._dragging.init(e,"lasso",{autoActivate:t,cursor:k_,data:{context:{}},keepSelection:!0})},Rr.prototype.activateSelection=function(e,t){this._dragging.init(e,"lasso.selection",{trapClick:!1,autoActivate:t,cursor:k_,data:{context:{}},keepSelection:!0})},Rr.prototype._select=function(e){this._selection.select(e)},Rr.prototype.select=function(e,t,n=[]){var i=ro(yo(e,t));this._select([...n,...i])},Rr.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},Rr.prototype.isActive=function(){var e=this._dragging.context();return e&&/^lasso/.test(e.prefix)};function D_(e){var t={x:e.x-e.dx,y:e.y-e.dy},n={x:e.x,y:e.y},i;return t.x<=n.x&&t.y<n.y||t.x<n.x&&t.y<=n.y?i={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?i={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?i={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?i={x:n.x,y:n.y,width:t.x-n.x,height:t.y-n.y}:i={x:n.x,y:n.y,width:0,height:0},i}const TD={__depends__:[Pc,Ca],__init__:["lassoTool"],lassoTool:["type",Rr]};var sd=1500,L_="grab";function Uo(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",sd,function(c){if(Ea(c))return a.activateMove(c.originalEvent,!0),!1}),s&&s.addListener(sd,function(c){if(!(!I_(c.keyEvent)||a.isActive())){var u=a._mouse.getLastMoveEvent();a.activateMove(u,!!u)}},"keyboard.keydown"),s&&s.addListener(sd,function(c){!I_(c.keyEvent)||!a.isActive()||a.toggle()},"keyboard.keyup"),e.on("hand.end",function(c){var u=c.originalEvent.target;if(!c.hover&&!(u instanceof SVGElement))return!1;e.once("hand.ended",function(){a.activateMove(c.originalEvent,{reactivate:!0})})}),e.on("hand.move.move",function(c){var u=t.viewbox().scale;t.scroll({dx:c.dx*u,dy:c.dy*u})}),e.on("hand.move.end",function(c){var u=c.context,l=u.reactivate;return!Ea(c)&&l&&e.once("hand.move.ended",function(p){a.activateHand(p.originalEvent,!0,!0)}),!1})}Uo.$inject=["eventBus","canvas","dragging","injector","toolManager","mouse"],Uo.prototype.activateMove=function(e,t,n){typeof t=="object"&&(n=t,t=!1),this._dragging.init(e,"hand.move",{autoActivate:t,cursor:L_,data:{context:n||{}}})},Uo.prototype.activateHand=function(e,t,n){this._dragging.init(e,"hand",{trapClick:!1,autoActivate:t,cursor:L_,data:{context:{reactivate:n}}})},Uo.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateHand(e,!!e)},Uo.prototype.isActive=function(){var e=this._dragging.context();return e?/^(hand|hand\.move)$/.test(e.prefix):!1};function I_(e){return qt("Space",e)}const MD={__depends__:[Pc,Ca],__init__:["handTool"],handTool:["type",Uo]};var B_="connect-ok",N_="connect-not-ok";function Yo(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(c){var u=c.context,l=c.hover,p=u.canStartConnect=s.canStartConnect(l);p!==null&&(u.startTarget=l,i.addMarker(l,p?B_:N_))}),e.on(["global-connect.out","global-connect.cleanup"],function(c){var u=c.context.startTarget,l=c.context.canStartConnect;u&&i.removeMarker(u,l?B_:N_)}),e.on(["global-connect.ended"],function(c){var u=c.context,l=u.startTarget,p={x:c.x,y:c.y},f=s.canStartConnect(l);if(f)return e.once("element.out",function(){e.once(["connect.ended","connect.canceled"],function(){e.fire("global-connect.drag.ended")}),n.start(null,l,p)}),!1})}Yo.$inject=["eventBus","dragging","connect","canvas","toolManager","rules","mouse"],Yo.prototype.start=function(e,t){this._dragging.init(e,"global-connect",{autoActivate:t,trapClick:!1,data:{context:{}}})},Yo.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();return this.start(e,!!e)},Yo.prototype.isActive=function(){var e=this._dragging.context();return e&&/^global-connect/.test(e.prefix)},Yo.prototype.canStartConnect=function(e){return this._rules.allowed("connection.start",{source:e})};const kD={__depends__:[Xf,Si,Hi,Pc,Ca],globalConnect:["type",Yo]};function cd(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)}cd.$inject=["palette","create","elementFactory","spaceTool","lassoTool","handTool","globalConnect","translate"],cd.prototype.getPaletteEntries=function(){var e={},t=this._create,n=this._elementFactory,i=this._spaceTool,r=this._lassoTool,o=this._handTool,a=this._globalConnect,s=this._translate;function c(p,f,d,m,h){function y(g){var v=n.createShape(V({type:p},h));t.start(g,v)}return{group:f,className:d,title:m,action:{dragstart:y,click:y}}}function u(p){var f=n.createShape({type:"bpmn:SubProcess",x:0,y:0,isExpanded:!0}),d=n.createShape({type:"bpmn:StartEvent",x:40,y:82,parent:f});t.start(p,[f,d],{hints:{autoSelect:[f]}})}function l(p){t.start(p,n.createParticipantShape())}return V(e,{"hand-tool":{group:"tools",className:"bpmn-icon-hand-tool",title:s("Activate hand tool"),action:{click:function(p){o.activateHand(p)}}},"lasso-tool":{group:"tools",className:"bpmn-icon-lasso-tool",title:s("Activate lasso tool"),action:{click:function(p){r.activateSelection(p)}}},"space-tool":{group:"tools",className:"bpmn-icon-space-tool",title:s("Activate create/remove space tool"),action:{click:function(p){i.activateSelection(p)}}},"global-connect-tool":{group:"tools",className:"bpmn-icon-connection-multi",title:s("Activate global connect tool"),action:{click:function(p){a.start(p)}}},"tool-separator":{group:"tools",separator:!0},"create.start-event":c("bpmn:StartEvent","event","bpmn-icon-start-event-none",s("Create start event")),"create.intermediate-event":c("bpmn:IntermediateThrowEvent","event","bpmn-icon-intermediate-event-none",s("Create intermediate/boundary event")),"create.end-event":c("bpmn:EndEvent","event","bpmn-icon-end-event-none",s("Create end event")),"create.exclusive-gateway":c("bpmn:ExclusiveGateway","gateway","bpmn-icon-gateway-none",s("Create gateway")),"create.task":c("bpmn:Task","activity","bpmn-icon-task",s("Create task")),"create.data-object":c("bpmn:DataObjectReference","data-object","bpmn-icon-data-object",s("Create data object reference")),"create.data-store":c("bpmn:DataStoreReference","data-store","bpmn-icon-data-store",s("Create data store reference")),"create.subprocess-expanded":{group:"activity",className:"bpmn-icon-subprocess-expanded",title:s("Create expanded sub-process"),action:{dragstart:u,click:u}},"create.participant-expanded":{group:"collaboration",className:"bpmn-icon-participant",title:s("Create pool/participant"),action:{dragstart:l,click:l}},"create.group":c("bpmn:Group","artifact","bpmn-icon-group",s("Create group"))}),e};const OD={__depends__:[PD,Rc,pv,TD,MD,kD,ga],__init__:["paletteProvider"],paletteProvider:["type",cd]};var DD=250;function ud(e,t,n,i,r){J.call(this,e);function o(s){var c=s.canExecute.replacements;F(c,function(u){var l=u.oldElementId,p={type:u.newElementType};if(!s.visualReplacements[l]){var f=t.get(l);V(p,{x:f.x,y:f.y});var d=n.createShape(p);i.addShape(d,f.parent);var m=lt('[data-element-id="'+za(f.id)+'"]',s.dragGroup);m&&xe(m,{display:"none"});var h=r.addDragger(d,s.dragGroup);s.visualReplacements[l]=h,i.removeShape(d)}})}function a(s){var c=s.visualReplacements;F(c,function(u,l){var p=lt('[data-element-id="'+za(l)+'"]',s.dragGroup);p&&xe(p,{display:"inline"}),u.remove(),c[l]&&delete c[l]})}e.on("shape.move.move",DD,function(s){var c=s.context,u=c.canExecute;c.visualReplacements||(c.visualReplacements={}),u&&u.replacements?o(c):a(c)})}ud.$inject=["eventBus","elementRegistry","elementFactory","canvas","previewSupport"],be(ud,J);const LD={__depends__:[Io],__init__:["bpmnReplacePreview"],bpmnReplacePreview:["type",ud]};var ID=1250,ld=40,BD=20,ND=10,$_=20,F_=["x","y"],$D=Math.abs;function j_(e){e.on(["connect.hover","connect.move","connect.end"],ID,function(t){var n=t.context,i=n.canExecute,r=n.start,o=n.hover,a=n.source,s=n.target;t.originalEvent&&In(t.originalEvent)||(n.initialConnectionStart||(n.initialConnectionStart=n.connectionStart),i&&o&&FD(t,o,GD(o)),o&&zD(i,["bpmn:Association","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:SequenceFlow"])?(n.connectionStart=oi(r),We(o,["bpmn:Event","bpmn:Gateway"])&&H_(t,oi(o)),We(o,["bpmn:Task","bpmn:SubProcess"])&&jD(t,o),S(a,"bpmn:BoundaryEvent")&&s===a.host&&HD(t)):z_(i,"bpmn:MessageFlow")?(S(r,"bpmn:Event")&&(n.connectionStart=oi(r)),S(o,"bpmn:Event")&&H_(t,oi(o))):n.connectionStart=n.initialConnectionStart)})}j_.$inject=["eventBus"];function FD(e,t,n){F_.forEach(function(i){var r=G_(i,t);e[i]<t[i]+n?jt(e,i,t[i]+n):e[i]>t[i]+r-n&&jt(e,i,t[i]+r-n)})}function jD(e,t){var n=oi(t);F_.forEach(function(i){VD(e,t,i)&&jt(e,i,n[i])})}function HD(e){var t=e.context,n=t.source,i=t.target;if(!WD(t)){var r=oi(n),o=sn(r,i,-10),a=[];/top|bottom/.test(o)&&a.push("x"),/left|right/.test(o)&&a.push("y"),a.forEach(function(s){var c=e[s],u;$D(c-r[s])<ld&&(c>r[s]?u=r[s]+ld:u=r[s]-ld,jt(e,s,u))})}}function H_(e,t){jt(e,"x",t.x),jt(e,"y",t.y)}function z_(e,t){return e&&e.type===t}function zD(e,t){return Xi(t,function(n){return z_(e,n)})}function G_(e,t){return e==="x"?t.width:t.height}function GD(e){return S(e,"bpmn:Task")?ND:BD}function VD(e,t,n){return e[n]>t[n]+$_&&e[n]<t[n]+G_(n,t)-$_}function WD(e){var t=e.hover,n=e.source;return t&&n&&t===n}function Cr(){this._targets={},this._snapOrigins={},this._snapLocations=[],this._defaultSnaps={}}Cr.prototype.getSnapOrigin=function(e){return this._snapOrigins[e]},Cr.prototype.setSnapOrigin=function(e,t){this._snapOrigins[e]=t,this._snapLocations.indexOf(e)===-1&&this._snapLocations.push(e)},Cr.prototype.addDefaultSnap=function(e,t){var n=this._defaultSnaps[e];n||(n=this._defaultSnaps[e]=[]),n.push(t)},Cr.prototype.getSnapLocations=function(){return this._snapLocations},Cr.prototype.setSnapLocations=function(e){this._snapLocations=e},Cr.prototype.pointsForTarget=function(e){var t=e.id||e,n=this._targets[t];return n||(n=this._targets[t]=new Du,n.initDefaults(this._defaultSnaps)),n};function Du(){this._snapValues={}}Du.prototype.add=function(e,t){var n=this._snapValues[e];n||(n=this._snapValues[e]={x:[],y:[]}),n.x.indexOf(t.x)===-1&&n.x.push(t.x),n.y.indexOf(t.y)===-1&&n.y.push(t.y)},Du.prototype.snap=function(e,t,n,i){var r=this._snapValues[t];return r&&Dk(e[n],r[n],i)},Du.prototype.initDefaults=function(e){var t=this;F(e||{},function(n,i){F(n,function(r){t.add(i,r)})})};var UD=1250;function Ai(e,t,n){var i=this;this._elementRegistry=e,t.on(["create.start","shape.move.start"],function(r){i.initSnap(r)}),t.on(["create.move","create.end","shape.move.move","shape.move.end"],UD,function(r){var o=r.context,a=o.shape,s=o.snapContext,c=o.target;if(!(r.originalEvent&&In(r.originalEvent))&&!(Wo(r)||!c)){var u=s.pointsForTarget(c);u.initialized||(u=i.addSnapTargetPoints(u,a,c),u.initialized=!0),n.snap(r,u)}}),t.on(["create.cleanup","shape.move.cleanup"],function(){n.hide()})}Ai.$inject=["elementRegistry","eventBus","snapping"],Ai.prototype.initSnap=function(e){var t=this._elementRegistry,n=e.context,i=n.shape,r=n.snapContext;r||(r=n.snapContext=new Cr);var o;t.get(i.id)?o=oi(i,e):o={x:e.x+oi(i).x,y:e.y+oi(i).y};var a={x:o.x-i.width/2,y:o.y-i.height/2},s={x:o.x+i.width/2,y:o.y+i.height/2};return r.setSnapOrigin("mid",{x:o.x-e.x,y:o.y-e.y}),Ge(i)||(r.setSnapOrigin("top-left",{x:a.x-e.x,y:a.y-e.y}),r.setSnapOrigin("bottom-right",{x:s.x-e.x,y:s.y-e.y})),r},Ai.prototype.addSnapTargetPoints=function(e,t,n){var i=this.getSnapTargets(t,n);return F(i,function(r){if(Ge(r)){Ge(t)&&e.add("mid",oi(r));return}if(ft(r)){if(r.waypoints.length<3)return;var o=r.waypoints.slice(1,-1);F(o,function(a){e.add("mid",a)});return}e.add("mid",oi(r))}),!Be(t.x)||!Be(t.y)||this._elementRegistry.get(t.id)&&e.add("mid",oi(t)),e},Ai.prototype.getSnapTargets=function(e,t){return Tx(t).filter(function(n){return!YD(n)})};function YD(e){return!!e.hidden}var V_=1500;function qo(e,t){t.invoke(Ai,this),e.on(["create.move","create.end"],V_,ZD),e.on(["create.move","create.end","shape.move.move","shape.move.end"],V_,function(n){var i=n.context,r=i.canExecute,o=i.target,a=r&&(r==="attach"||r.attach);a&&!Wo(n)&&qD(n,o)})}be(qo,Ai),qo.$inject=["eventBus","injector"],qo.prototype.initSnap=function(e){var t=Ai.prototype.initSnap.call(this,e),n=e.shape,i=!!this._elementRegistry.get(n.id);return F(n.outgoing,function(r){var o=r.waypoints[0];o=o.original||o,t.setSnapOrigin(r.id+"-docking",U_(o,i,e))}),F(n.incoming,function(r){var o=r.waypoints[r.waypoints.length-1];o=o.original||o,t.setSnapOrigin(r.id+"-docking",U_(o,i,e))}),S(n,"bpmn:Participant")&&t.setSnapLocations(["top-left","bottom-right","mid"]),t},qo.prototype.addSnapTargetPoints=function(e,t,n){Ai.prototype.addSnapTargetPoints.call(this,e,t,n);var i=this.getSnapTargets(t,n);F(i,function(o){(XD(o)||KD([t,o],"bpmn:TextAnnotation"))&&(e.add("top-left",Px(o)),e.add("bottom-right",Ax(o)))});var r=this._elementRegistry;return F(t.incoming,function(o){if(r.get(t.id)){W_(i,o.source)||e.add("mid",Le(o.source));var a=o.waypoints[0];e.add(o.id+"-docking",a.original||a)}}),F(t.outgoing,function(o){if(r.get(t.id)){W_(i,o.target)||e.add("mid",Le(o.target));var a=o.waypoints[o.waypoints.length-1];e.add(o.id+"-docking",a.original||a)}}),S(n,"bpmn:SequenceFlow")&&(e=this.addSnapTargetPoints(e,t,n.parent)),e},qo.prototype.getSnapTargets=function(e,t){return Ai.prototype.getSnapTargets.call(this,e,t).filter(function(n){return!S(n,"bpmn:Lane")})};function qD(e,t){var n=ke(t),i=sy(e,t),r=e.context,o=r.shape,a;o.parent?a={x:0,y:0}:a=Le(o),/top/.test(i)?jt(e,"y",n.top-a.y):/bottom/.test(i)&&jt(e,"y",n.bottom-a.y),/left/.test(i)?jt(e,"x",n.left-a.x):/right/.test(i)&&jt(e,"x",n.right-a.x)}function KD(e,t){return e.every(function(n){return S(n,t)})}function XD(e){return S(e,"bpmn:SubProcess")&&Xe(e)?!0:S(e,"bpmn:Participant")}function ZD(e){var t=e.context,n=t.createConstraints;if(n){var i=n.top,r=n.right,o=n.bottom,a=n.left;(a&&a>=e.x||r&&r<=e.x)&&jt(e,"x",e.x),(i&&i>=e.y||o&&o<=e.y)&&jt(e,"y",e.y)}}function W_(e,t){return e.indexOf(t)!==-1}function U_(e,t,n){return t?{x:e.x-n.x,y:e.y-n.y}:{x:e.x,y:e.y}}var QD=1250;function rs(e,t){var n=this;e.on(["resize.start"],function(i){n.initSnap(i)}),e.on(["resize.move","resize.end"],QD,function(i){var r=i.context,o=r.shape,a=o.parent,s=r.direction,c=r.snapContext;if(!(i.originalEvent&&In(i.originalEvent))&&!Wo(i)){var u=c.pointsForTarget(a);u.initialized||(u=n.addSnapTargetPoints(u,o,a,s),u.initialized=!0),tL(s)&&jt(i,"x",i.x),nL(s)&&jt(i,"y",i.y),t.snap(i,u)}}),e.on(["resize.cleanup"],function(){t.hide()})}rs.prototype.initSnap=function(e){var t=e.context,n=t.shape,i=t.direction,r=t.snapContext;r||(r=t.snapContext=new Cr);var o=Y_(n,i);return r.setSnapOrigin("corner",{x:o.x-e.x,y:o.y-e.y}),r},rs.prototype.addSnapTargetPoints=function(e,t,n,i){var r=this.getSnapTargets(t,n);return F(r,function(o){e.add("corner",Ax(o)),e.add("corner",Px(o))}),e.add("corner",Y_(t,i)),e},rs.$inject=["eventBus","snapping"],rs.prototype.getSnapTargets=function(e,t){return Tx(t).filter(function(n){return!JD(n,e)&&!ft(n)&&!eL(n)&&!Ge(n)})};function Y_(e,t){var n=Le(e),i=ke(e),r={x:n.x,y:n.y};return t.indexOf("n")!==-1?r.y=i.top:t.indexOf("s")!==-1&&(r.y=i.bottom),t.indexOf("e")!==-1?r.x=i.right:t.indexOf("w")!==-1&&(r.x=i.left),r}function JD(e,t){return e.host===t}function eL(e){return!!e.hidden}function tL(e){return e==="n"||e==="s"}function nL(e){return e==="e"||e==="w"}var iL=7,rL=1e3;function Pr(e){this._canvas=e,this._asyncHide=Uu(Sn(this.hide,this),rL)}Pr.$inject=["canvas"],Pr.prototype.snap=function(e,t){var n=e.context,i=n.snapContext,r=i.getSnapLocations(),o={x:Wo(e,"x"),y:Wo(e,"y")};F(r,function(a){var s=i.getSnapOrigin(a),c={x:e.x+s.x,y:e.y+s.y};if(F(["x","y"],function(u){var l;o[u]||(l=t.snap(c,a,u,iL),l!==void 0&&(o[u]={value:l,originValue:l-s[u]}))}),o.x&&o.y)return!1}),this.showSnapLine("vertical",o.x&&o.x.value),this.showSnapLine("horizontal",o.y&&o.y.value),F(["x","y"],function(a){var s=o[a];Xt(s)&&jt(e,a,s.originValue)})},Pr.prototype._createLine=function(e){var t=this._canvas.getLayer("snap"),n=Te("path");return xe(n,{d:"M0,0 L0,0"}),Qe(n).add("djs-snap-line"),$e(t,n),{update:function(i){Be(i)?e==="horizontal"?xe(n,{d:"M-100000,"+i+" L+100000,"+i,display:""}):xe(n,{d:"M "+i+",-100000 L "+i+", +100000",display:""}):xe(n,{display:"none"})}}},Pr.prototype._createSnapLines=function(){this._snapLines={horizontal:this._createLine("horizontal"),vertical:this._createLine("vertical")}},Pr.prototype.showSnapLine=function(e,t){var n=this.getSnapLine(e);n&&n.update(t),this._asyncHide()},Pr.prototype.getSnapLine=function(e){return this._snapLines||this._createSnapLines(),this._snapLines[e]},Pr.prototype.hide=function(){F(this._snapLines,function(e){e.update()})};const oL={__depends__:[{__init__:["createMoveSnapping","resizeSnapping","snapping"],createMoveSnapping:["type",Ai],resizeSnapping:["type",rs],snapping:["type",Pr]}],__init__:["connectSnapping","createMoveSnapping"],connectSnapping:["type",j_],createMoveSnapping:["type",qo]};var q_=300;function Fe(e,t,n,i){this._open=!1,this._results={},this._eventMaps=[],this._cachedRootElement=null,this._cachedSelection=null,this._cachedViewbox=null,this._canvas=e,this._eventBus=t,this._selection=n,this._translate=i,this._container=this._getBoxHtml(),this._searchInput=lt(Fe.INPUT_SELECTOR,this._container),this._resultsContainer=lt(Fe.RESULTS_CONTAINER_SELECTOR,this._container),this._canvas.getContainer().appendChild(this._container),t.on(["canvas.destroy","diagram.destroy","drag.init","elements.changed"],this.close,this)}Fe.$inject=["canvas","eventBus","selection","translate"],Fe.prototype._bindEvents=function(){var e=this;function t(n,i,r,o){e._eventMaps.push({el:n,type:r,listener:On.bind(n,i,r,o)})}t(document,"html","click",function(n){e.close(!1)}),t(this._container,Fe.INPUT_SELECTOR,"click",function(n){n.stopPropagation(),n.delegateTarget.focus()}),t(this._container,Fe.RESULT_SELECTOR,"mouseover",function(n){n.stopPropagation(),e._scrollToNode(n.delegateTarget),e._preselect(n.delegateTarget)}),t(this._container,Fe.RESULT_SELECTOR,"click",function(n){n.stopPropagation(),e._select(n.delegateTarget)}),t(this._container,Fe.INPUT_SELECTOR,"keydown",function(n){qt("ArrowUp",n)&&n.preventDefault(),qt("ArrowDown",n)&&n.preventDefault()}),t(this._container,Fe.INPUT_SELECTOR,"keyup",function(n){if(qt("Escape",n))return e.close();if(qt("Enter",n)){var i=e._getCurrentResult();return i?e._select(i):e.close(!1)}if(qt("ArrowUp",n))return e._scrollToDirection(!0);if(qt("ArrowDown",n))return e._scrollToDirection();qt(["ArrowLeft","ArrowRight"],n)||e._search(n.delegateTarget.value)})},Fe.prototype._unbindEvents=function(){this._eventMaps.forEach(function(e){On.unbind(e.el,e.type,e.listener)})},Fe.prototype._search=function(e){var t=this;if(this._clearResults(),!!e.trim()){var n=this._searchProvider.find(e);if(n=n.filter(function(r){return!t._canvas.getRootElements().includes(r.element)}),!n.length){this._selection.select(null);return}n.forEach(function(r){var o=r.element.id,a=t._createResultNode(r,o);t._results[o]={element:r.element,node:a}});var i=lt(Fe.RESULT_SELECTOR,this._resultsContainer);this._scrollToNode(i),this._preselect(i)}},Fe.prototype._scrollToDirection=function(e){var t=this._getCurrentResult();if(t){var n=e?t.previousElementSibling:t.nextElementSibling;n&&(this._scrollToNode(n),this._preselect(n))}},Fe.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)}},Fe.prototype._clearResults=function(){ks(this._resultsContainer),this._results={},this._eventBus.fire("searchPad.cleared")},Fe.prototype._getCurrentResult=function(){return lt(Fe.RESULT_SELECTED_SELECTOR,this._resultsContainer)},Fe.prototype._createResultNode=function(e,t){var n=bt(Fe.RESULT_HTML);return e.primaryTokens.length>0&&K_(n,e.primaryTokens,Fe.RESULT_PRIMARY_HTML),K_(n,e.secondaryTokens,Fe.RESULT_SECONDARY_HTML),mn(n,Fe.RESULT_ID_ATTRIBUTE,t),this._resultsContainer.appendChild(n),n},Fe.prototype.registerProvider=function(e){this._searchProvider=e},Fe.prototype.open=function(){if(!this._searchProvider)throw new Error("no search provider registered");this.isOpen()||(this._cachedRootElement=this._canvas.getRootElement(),this._cachedSelection=this._selection.get(),this._cachedViewbox=this._canvas.viewbox(),this._selection.select(null),this._bindEvents(),this._open=!0,wt(this._canvas.getContainer()).add("djs-search-open"),wt(this._container).add("open"),this._searchInput.focus(),this._eventBus.fire("searchPad.opened"))},Fe.prototype.close=function(e=!0){this.isOpen()&&(e&&(this._cachedRootElement&&this._canvas.setRootElement(this._cachedRootElement),this._cachedSelection&&this._selection.select(this._cachedSelection),this._cachedViewbox&&this._canvas.viewbox(this._cachedViewbox),this._eventBus.fire("searchPad.restored")),this._cachedRootElement=null,this._cachedSelection=null,this._cachedViewbox=null,this._unbindEvents(),this._open=!1,wt(this._canvas.getContainer()).remove("djs-search-open"),wt(this._container).remove("open"),this._clearResults(),this._searchInput.value="",this._searchInput.blur(),this._eventBus.fire("searchPad.closed"),this._canvas.restoreFocus())},Fe.prototype.toggle=function(){this.isOpen()?this.close():this.open()},Fe.prototype.isOpen=function(){return this._open},Fe.prototype._preselect=function(e){var t=this._getCurrentResult();if(e!==t){t&&wt(t).remove(Fe.RESULT_SELECTED_CLASS);var n=mn(e,Fe.RESULT_ID_ATTRIBUTE),i=this._results[n].element;wt(e).add(Fe.RESULT_SELECTED_CLASS),this._canvas.scrollToElement(i,{top:q_}),this._selection.select(i),this._eventBus.fire("searchPad.preselected",i)}},Fe.prototype._select=function(e){var t=mn(e,Fe.RESULT_ID_ATTRIBUTE),n=this._results[t].element;this._cachedSelection=null,this._cachedViewbox=null,this.close(!1),this._canvas.scrollToElement(n,{top:q_}),this._selection.select(n),this._eventBus.fire("searchPad.selected",n)},Fe.prototype._getBoxHtml=function(){const e=bt(Fe.BOX_HTML),t=lt(Fe.INPUT_SELECTOR,e);return t&&t.setAttribute("aria-label",this._translate("Search in diagram")),e};function K_(e,t,n){var i=aL(t),r=bt(n);r.innerHTML=i,e.appendChild(r)}function aL(e){var t="";return e.forEach(function(n){var i=ib(n.value||n.matched||n.normal),r=n.match||n.matched;r?t+='<b class="'+Fe.RESULT_HIGHLIGHT_CLASS+'">'+i+"</b>":t+=i}),t!==""?t:null}Fe.CONTAINER_SELECTOR=".djs-search-container",Fe.INPUT_SELECTOR=".djs-search-input input",Fe.RESULTS_CONTAINER_SELECTOR=".djs-search-results",Fe.RESULT_SELECTOR=".djs-search-result",Fe.RESULT_SELECTED_CLASS="djs-search-result-selected",Fe.RESULT_SELECTED_SELECTOR="."+Fe.RESULT_SELECTED_CLASS,Fe.RESULT_ID_ATTRIBUTE="data-result-id",Fe.RESULT_HIGHLIGHT_CLASS="djs-search-highlight",Fe.BOX_HTML=`<div class="djs-search-container djs-scrollable">
|
|
336
336
|
<div class="djs-search-input">
|
|
337
337
|
<svg class="djs-search-icon" width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
338
338
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M9.0325 8.5H9.625L13.3675 12.25L12.25 13.3675L8.5 9.625V9.0325L8.2975 8.8225C7.4425 9.5575 6.3325 10 5.125 10C2.4325 10 0.25 7.8175 0.25 5.125C0.25 2.4325 2.4325 0.25 5.125 0.25C7.8175 0.25 10 2.4325 10 5.125C10 6.3325 9.5575 7.4425 8.8225 8.2975L9.0325 8.5ZM1.75 5.125C1.75 6.9925 3.2575 8.5 5.125 8.5C6.9925 8.5 8.5 6.9925 8.5 5.125C8.5 3.2575 6.9925 1.75 5.125 1.75C3.2575 1.75 1.75 3.2575 1.75 5.125Z" fill="#22242A"/>
|
|
@@ -340,4 +340,4 @@
|
|
|
340
340
|
<input type="text" spellcheck="false" />
|
|
341
341
|
</div>
|
|
342
342
|
<div class="djs-search-results" />
|
|
343
|
-
</div>`,Fe.RESULT_HTML='<div class="djs-search-result"></div>',Fe.RESULT_PRIMARY_HTML='<div class="djs-search-result-primary"></div>',Fe.RESULT_SECONDARY_HTML='<p class="djs-search-result-secondary"></p>';const
|
|
343
|
+
</div>`,Fe.RESULT_HTML='<div class="djs-search-result"></div>',Fe.RESULT_PRIMARY_HTML='<div class="djs-search-result-primary"></div>',Fe.RESULT_SECONDARY_HTML='<p class="djs-search-result-secondary"></p>';const sL={__depends__:[ga,Kc,ni],searchPad:["type",Fe]};function pd(e,t,n,i){this._elementRegistry=e,this._canvas=n,this._search=i,t.registerProvider(this)}pd.$inject=["elementRegistry","searchPad","canvas","search"],pd.prototype.find=function(e){var t=this._canvas.getRootElements(),n=this._elementRegistry.filter(function(i){return!Ge(i)&&!t.includes(i)});return this._search(n.map(i=>({element:i,label:qn(i),id:i.id})),e,{keys:["label","id"]}).map(cL)};function cL(e){const{item:{element:t},tokens:n}=e;return{element:t,primaryTokens:n.label,secondaryTokens:n.id}}const uL={__depends__:[sL,sx],__init__:["bpmnSearch"],bpmnSearch:["type",pd]},lL="M44.7648 11.3263L36.9892 2.64074C36.0451 1.58628 34.5651 0.988708 33.1904 0.988708H5.98667C3.22688 0.988708 0.989624 3.34892 0.989624 6.26039V55.0235C0.989624 57.9349 3.22688 60.2952 5.98667 60.2952H40.966C43.7257 60.2952 45.963 57.9349 45.963 55.0235V14.9459C45.963 13.5998 45.6407 12.3048 44.7648 11.3263Z",pL="M1.03845 48.1347C1.03845 49.3511 1.07295 50.758 1.38342 52.064C1.69949 53.3938 2.32428 54.7154 3.56383 55.6428C6.02533 57.4841 10.1161 58.7685 14.8212 59.6067C19.5772 60.4538 25.1388 60.8738 30.6831 60.8738C36.2276 60.8738 41.7891 60.4538 46.545 59.6067C51.2504 58.7687 55.3412 57.4842 57.8028 55.6429C59.0424 54.7156 59.6673 53.3938 59.9834 52.064C60.2938 50.7579 60.3285 49.351 60.3285 48.1344V13.8415C60.3285 12.6249 60.2938 11.218 59.9834 9.91171C59.6673 8.58194 59.0423 7.2602 57.8027 6.33294C55.341 4.49168 51.2503 3.20723 46.545 2.36914C41.7891 1.522 36.2276 1.10204 30.6831 1.10205C25.1388 1.10206 19.5772 1.52206 14.8213 2.36923C10.1162 3.20734 6.02543 4.49183 3.5639 6.33314C2.32433 7.26038 1.69951 8.58206 1.38343 9.91181C1.07295 11.2179 1.03845 12.6247 1.03845 13.8411V48.1347Z",fL={width:36,height:50},dL={width:50,height:50};function X_(e,t,n){return Te("path",{d:e,strokeWidth:2,transform:`translate(${t.x}, ${t.y})`,...n})}const ci=5;function Lu(e,t){this._styles=t,e.registerProvider(this)}Lu.$inject=["outline","styles"],Lu.prototype.getOutline=function(e){const t=this._styles.cls("djs-outline",["no-fill"]);var n;if(NR(e))return n=Te("rect"),xe(n,V({x:-ci,y:-ci,rx:4,width:e.width+ci*2,height:e.height+ci*2},t)),n;if(!Ge(e))return S(e,"bpmn:Gateway")?(n=Te("rect"),V(n.style,{"transform-box":"fill-box",transform:"rotate(45deg)","transform-origin":"center"}),xe(n,V({x:2,y:2,rx:4,width:e.width-4,height:e.height-4},t))):We(e,["bpmn:Task","bpmn:SubProcess","bpmn:Group","bpmn:CallActivity"])?(n=Te("rect"),xe(n,V({x:-ci,y:-ci,rx:14,width:e.width+ci*2,height:e.height+ci*2},t))):S(e,"bpmn:EndEvent")?(n=Te("circle"),xe(n,V({cx:e.width/2,cy:e.height/2,r:e.width/2+ci+1},t))):S(e,"bpmn:Event")?(n=Te("circle"),xe(n,V({cx:e.width/2,cy:e.height/2,r:e.width/2+ci},t))):S(e,"bpmn:DataObjectReference")&&Z_(e,"bpmn:DataObjectReference")?n=X_(lL,{x:-6,y:-6},t):S(e,"bpmn:DataStoreReference")&&Z_(e,"bpmn:DataStoreReference")&&(n=X_(pL,{x:-6,y:-6},t)),n},Lu.prototype.updateOutline=function(e,t){if(!Ge(e))return We(e,["bpmn:SubProcess","bpmn:Group"])?(xe(t,{width:e.width+ci*2,height:e.height+ci*2}),!0):!!We(e,["bpmn:Event","bpmn:Gateway","bpmn:DataStoreReference","bpmn:DataObjectReference"])};function Z_(e,t){var n;return t==="bpmn:DataObjectReference"?n=fL:t==="bpmn:DataStoreReference"&&(n=dL),e.width===n.width&&e.height===n.height}const hL={__depends__:[td],__init__:["outlineProvider"],outlineProvider:["type",Lu]};var mL='<?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>';function Ti(e){xo.call(this,e)}be(Ti,xo),Ti.Viewer=xr,Ti.NavigatedViewer=Ga,Ti.prototype.createDiagram=function(){return this.importXML(mL)},Ti.prototype._interactionModules=[lb,fb,mb],Ti.prototype._modelingModules=[yk,Yc,wk,xk,Ik,Xf,Hk,fO,ev,Rc,gO,bO,IO,NO,$O,GO,tD,aD,wf,dD,_D,OD,LD,p_,oL,uL,hL],Ti.prototype._modules=[].concat(xr.prototype._modules,Ti.prototype._interactionModules,Ti.prototype._modelingModules);const gL=((e,t)=>{const n=e.__vccOpts||e;for(const[i,r]of t)n[i]=r;return n})(It.defineComponent({__name:"BpmnModelerView",props:{xml:{}},emits:["ready","imported","import-error"],setup(e,{expose:t,emit:n}){const i=e,r=n,o=It.ref();let a;async function s(u){if(!a)throw new Error("modeler not mounted");try{const{warnings:l}=await a.importXML(u),p=al(l);return r("imported",p),{warnings:p}}catch(l){throw r("import-error",l),l}}async function c(){if(!a)throw new Error("modeler not mounted");const{xml:u}=await a.saveXML({format:!0});return u??""}return It.onMounted(async()=>{a=new Ti({container:o.value,moddleExtensions:ys}),i.xml&&await s(i.xml),r("ready")}),It.watch(()=>i.xml,u=>{u&&a&&s(u)}),It.onBeforeUnmount(()=>{a==null||a.destroy(),a=void 0}),t({importXml:s,saveXml:c,getModeler:()=>a}),(u,l)=>(It.openBlock(),It.createElementBlock("div",{ref_key:"container",ref:o,class:"bpmn-modeler-view"},null,512))}}),[["__scopeId","data-v-a9b41c97"]]);se.ADDABLE_FLOW_NODE_TYPES=us,se.APPLY_BPMN_OPS_SCHEMA=iw,se.BPMN_MODDLE_EXTENSIONS=ys,se.BWL_MODDLE_SCHEMA=xd,se.BWL_NS=bd,se.BWL_PREFIX=Hu,se.BWL_SIDES=zu,se.BpmnModelerView=gL,se.EDITOR=B1,se.FLOW_LABEL_INDENT=eh,se.HEADLESS_BPMN_MODULES=eb,se.HEADLESS_TEXT_METRICS=uo,se.I18N_NS=IE,se.I18N_PREFIX=Wd,se.IR_FLOW_NODE_TYPES=Tr,se.LABEL_FORK_MARGIN=ll,se.SYMBOLIC_OP_KINDS=Ed,se.SYMBOLIC_OP_SCHEMA=Sd,se.UNDO_EPISODE_COMMAND=Gu,se.applyBpmnOpBatch=Yh,se.applyBpmnOps=Gh,se.approximateTextWidth=lo,se.auditBpmnGeometry=ph,se.auditBpmnGeometryXml=s1,se.auditGeometry=on,se.auditTargetsOf=Wn,se.axisSegmentsOf=xn,se.blackBoxNameRect=cl,se.buildBpmnOpBatch=I1,se.buildRegistryIndex=dh,se.containerBoundarySegments=na,se.createBpmnEditorController=N1,se.createBpmnModdle=Ud,se.createHeadlessBpmnModeler=i2,se.crossedShapesOf=rn,se.crossingCost=Vn,se.describeProcess=Uh,se.describeProcessXml=L1,se.edgeCrossCount=ia,se.edgeCrossingPairsOf=ws,se.edgeCrossingStatsOf=oh,se.executeAsUndoEpisode=wd,se.forwardThreePointCandidates=Ss,se.geometryFindingKey=hn,se.installHeadlessBpmnDom=qd,se.isAddableFlowNodeType=vd,se.isEdgeOverlapFinding=ul,se.isIrFlowNodeType=yd,se.labelRectsOf=ho,se.lineCrossesLabel=Oi,se.lineThroughLabel=nh,se.lineThroughShapeLabel=uh,se.loadBpmnXml=ol,se.lowerOps=zh,se.oppositeOverlapCount=qE,se.oppositeOverlapOf=Jd,se.planBackEdgeBoundaryClearance=wh,se.planCrossPoolRoute=bh,se.planEdgeRepair=hl,se.planLabelLineClearance=Oh,se.planLabelPlacement=kh,se.planMiddleSegmentShifts=mh,se.planOppositeOverlapRepair=Sh,se.planSegmentDetours=Es,se.planShapeLabelClearance=Ih,se.repairIntroducedBoundaryHugging=Eh,se.repairIntroducedCrossings=ml,se.repairIntroducedEdgeCrossings=yh,se.repairIntroducedFakeMerges=Ch,se.repairIntroducedLabelLines=Dh,se.repairIntroducedOppositeOverlaps=Mh,se.repairIntroducedShapeLabelLines=Bh,se.repairIntroducedSharedSegmentLabels=Lh,se.rerouteIntroducedCrossPoolEdges=xh,se.resolverServicesOf=jh,se.saveBpmnXml=BE,se.sceneCrossingCost=rh,se.sceneFromDefinitions=lh,se.sceneFromRegistry=ot,se.sharedSegmentUnderLabel=_s,se.sharedSpansOf=xs,se.unreadableOverlapCount=Gn,se.unreadableOverlapOf=po,se.validateOps=Fh,se.warningMessages=al,Object.defineProperty(se,Symbol.toStringTag,{value:"Module"})}));
|