@g1cloud/bpmn-modeler-next 5.0.0-alpha.64 → 5.0.0-alpha.66

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.
@@ -1,16 +1,16 @@
1
- (function(ae,Ot){typeof exports=="object"&&typeof module<"u"?Ot(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],Ot):(ae=typeof globalThis<"u"?globalThis:ae||self,Ot(ae.BpmnModeler={},ae.Vue))})(this,(function(ae,Ot){"use strict";var hL=Object.defineProperty;var mL=(ae,Ot,Rr)=>Ot in ae?hL(ae,Ot,{enumerable:!0,configurable:!0,writable:!0,value:Rr}):ae[Ot]=Rr;var Zr=(ae,Ot,Rr)=>mL(ae,typeof Ot!="symbol"?Ot+"":Ot,Rr);const Rr=["startEvent","endEvent","userTask","serviceTask","task","sendTask","receiveTask","exclusiveGateway","parallelGateway","subProcess","boundaryEvent"],is=["startEvent","endEvent","userTask","serviceTask","task","sendTask","receiveTask","exclusiveGateway","parallelGateway"];function sd(e){return Rr.includes(e)}function cd(e){return is.includes(e)}const ud="http://g1project.net/spec/bpmn/bwl/1.0",ku="bwl",Ou=["top-left","top","top-right","right","bottom-right","bottom","bottom-left","left"],ld={name:"bwl-hints",uri:ud,prefix:ku,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"}]}]},Du="bwl.undoEpisode",pd=new WeakSet;function k0(e){pd.has(e)||(e.register(Du,{preExecute(t){try{t.run()}catch(n){t.error=n}}}),pd.add(e))}function fd(e,t){k0(e);const n={run:t};if(e.execute(Du,n),n.error!==void 0)throw e.canUndo()&&e.undo(),n.error}const dd=["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"],O0={description:"생략 = 보존, null = 제거.",anyOf:[{type:"string"},{type:"null"}]},D0={type:"object",description:"레인. 배열 선언 순서 = 풀 내 상→하 순서.",properties:{id:{type:"string"},name:{type:"string"}},required:["id"],additionalProperties:!1},L0={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},I0={type:"object",description:"플로우 노드. 좌표는 지정하지 않는다 — 배치는 resolver 가 결정한다. ⚠ type 집합은 **읽을 수 있는 것보다 좁다** — describe 는 subProcess·boundaryEvent 도 노드로 내지만 그 둘을 새로 만드는 배치는 미실증이라 여기서 받지 않는다(B-87 ⓐ).",properties:{id:{type:"string"},type:{type:"string",enum:[...is]},name:{type:"string"},participant:{type:"string",description:"소속 풀 id(협업 문서)."},lane:{type:"string",description:"소속 레인 id(풀 정의에 선언된 것)."}},required:["id","type"],additionalProperties:!1},B0={type:"object",description:"분기 조건 — 게이트웨이가 아닌 플로우에 붙인다. MVP 는 label 만.",properties:{label:{type:"string"}},required:["label"],additionalProperties:!1},N0={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},$0={type:"object",description:"메시지 플로우(풀 경계를 넘는 연결 — 노드 또는 블랙박스 풀 자체가 끝점).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"},name:{type:"string"}},required:["id","source","target"],additionalProperties:!1},F0={type:"object",properties:{id:{type:"string"},name:{type:"string"}},required:["id"],additionalProperties:!1},j0={type:"object",description:"데이터 입출력 연관. 방향 = source→target(태스크→스토어 = 쓰기, 스토어→태스크 = 읽기).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"}},required:["source","target"],additionalProperties:!1},H0={type:"object",properties:{id:{type:"string"},text:{type:"string"}},required:["id","text"],additionalProperties:!1},z0={type:"object",description:"연관선(주석 ↔ 요소).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"}},required:["source","target"],additionalProperties:!1},G0={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},V0={type:"object",description:"주석 방위 힌트 — 앵커 요소 기준 상대 배치. 있으면 결정적 배치, 없으면 휴리스틱.",properties:{anchor:{type:"string",description:"기준 요소 id."},side:{type:"string",enum:[...Ou]},offset:{type:"number",description:"앵커 가장자리 → 주석 가장자리 간격(px). 생략 시 50."}},required:["anchor","side"],additionalProperties:!1};function an(e,t){return{type:"object",description:t.description,properties:{kind:{const:e},...t.properties},required:["kind",...t.required??[]],additionalProperties:!1}}const W0={"participant.add":an("participant.add",{description:"풀 추가. order = 풀 세로 순서 힌트 — **작을수록 위**(생략 시 op 순서가 곧 배치 순서). 값은 상대 순서만 쓰므로 1,2,3… 연속이든 10,20,30 간격이든 같다.",properties:{participant:{$ref:"#/$defs/irParticipant"},order:{type:"integer"}},required:["participant"]}),"participant.update":an("participant.update",{description:"풀 이름/레인 갱신. lanes 는 전체 재선언(생략 = 보존) — 기존 레인을 유지하려면 함께 다시 나열한다.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},lanes:{type:"array",items:{$ref:"#/$defs/irLane"}}},required:["id"]}),"node.add":an("node.add",{description:'플로우 노드 추가. band = 가로 밴드 순번 힌트(주 흐름 0, 갈래 1, 2…) — 위/아래가 아니라 "주 흐름에서 몇 번째 갈래"다. 행 배치(어느 갈래가 위/아래인지)는 호스트가 정한다(대칭·메시지 방향). 레인이 있으면 그 레인 안의 밴드다 — 한 레인 안에서 게이트웨이 출구를 갈라 놓을 때 쓴다. 컨테이너(풀·레인)는 밴드 수만큼 자란다.',properties:{node:{$ref:"#/$defs/irNode"},band:{type:"integer",description:"0 이상 정수(음수는 payload-invalid 로 거부)."}},required:["node"]}),"node.update":an("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:[...is]},band:{type:"integer",description:"0 이상 정수(음수는 payload-invalid 로 거부)."}},required:["id"]}),"sequenceFlow.add":an("sequenceFlow.add",{description:"시퀀스 플로우 추가. 분기 조건은 게이트웨이가 아닌 플로우의 condition 에 싣는다.",properties:{flow:{$ref:"#/$defs/irSequenceFlow"}},required:["flow"]}),"sequenceFlow.update":an("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":an("messageFlow.add",{description:"메시지 플로우 추가(풀 경계를 넘는 연결).",properties:{flow:{$ref:"#/$defs/irMessageFlow"}},required:["flow"]}),"messageFlow.update":an("messageFlow.update",{description:"메시지 플로우 이름 갱신.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"}},required:["id"]}),"dataStore.add":an("dataStore.add",{description:"데이터 스토어 추가(+ 입출력 연관 동반 가능).",properties:{dataStore:{$ref:"#/$defs/irDataStore"},associations:{type:"array",items:{$ref:"#/$defs/irDataAssociation"}}},required:["dataStore"]}),"dataStore.update":an("dataStore.update",{description:"데이터 스토어 이름 갱신.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"}},required:["id"]}),"dataAssociation.add":an("dataAssociation.add",{description:"기존 노드 ↔ 기존 데이터 스토어의 입출력 연관 추가.",properties:{association:{$ref:"#/$defs/irDataAssociation"}},required:["association"]}),"association.add":an("association.add",{description:"주석 ↔ 요소 연관 추가(한쪽 끝은 주석). 주석 신설과 함께면 annotation.add 의 association 을 쓰고, 이 op 는 추가 연관(한 주석에 여러 연관)용.",properties:{association:{$ref:"#/$defs/irAssociation"}},required:["association"]}),"annotation.add":an("annotation.add",{description:"텍스트 주석 추가. association 으로 대상 요소와 연결하고, placement 로 방위를 지정하면 결정적 배치된다.",properties:{annotation:{$ref:"#/$defs/irTextAnnotation"},association:{$ref:"#/$defs/irAssociation"},placement:{$ref:"#/$defs/bwlPlacement"}},required:["annotation"]}),"annotation.update":an("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":an("group.add",{description:"그룹 추가 — 바운즈는 members 의 bbox 로 산출되므로 좌표를 지정하지 않는다.",properties:{group:{$ref:"#/$defs/irGroup"}},required:["group"]}),"group.update":an("group.update",{description:"그룹 이름/멤버 갱신. members 는 전체 재선언(생략 = 보존).",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},members:{type:"array",items:{type:"string"}}},required:["id"]}),"element.remove":an("element.remove",{description:"요소 제거(카테고리 무관). 부착된 연결선은 함께 제거된다.",properties:{id:{type:"string"}},required:["id"]})},hd={anyOf:dd.map(e=>W0[e])},U0={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:D0,irParticipant:L0,irNode:I0,irFlowCondition:B0,irSequenceFlow:N0,irMessageFlow:$0,irDataStore:F0,irDataAssociation:j0,irTextAnnotation:H0,irAssociation:z0,irGroup:G0,bwlPlacement:V0,nullableString:O0,symbolicOp:hd}};function Lu(e){return Array.prototype.concat.apply([],e)}const Yo=Object.prototype.toString,q0=Object.prototype.hasOwnProperty;function Cr(e){return e===void 0}function Ft(e){return e!==void 0}function Qr(e){return e==null}function De(e){return Yo.call(e)==="[object Array]"}function Wt(e){return Yo.call(e)==="[object Object]"}function Be(e){return Yo.call(e)==="[object Number]"}function Ut(e){const t=Yo.call(e);return t==="[object Function]"||t==="[object AsyncFunction]"||t==="[object GeneratorFunction]"||t==="[object AsyncGeneratorFunction]"||t==="[object Proxy]"}function Sn(e){return Yo.call(e)==="[object String]"}function Y0(e){if(!De(e))throw new Error("must supply array")}function Rn(e,t){return!Qr(e)&&q0.call(e,t)}function lt(e,t){const n=os(t);let i;return B(e,function(r,o){if(n(r,o))return i=r,!1}),i}function md(e,t){const n=os(t);let i=De(e)?-1:void 0;return B(e,function(r,o){if(n(r,o))return i=o,!1}),i}function We(e,t){const n=os(t);let i=[];return B(e,function(r,o){n(r,o)&&i.push(r)}),i}function B(e,t){let n,i;if(Cr(e))return;const r=De(e)?J0:Q0;for(let o in e)if(Rn(e,o)&&(n=e[o],i=t(n,r(o)),i===!1))return n}function K0(e,t){if(Cr(e))return[];Y0(e);const n=os(t);return e.filter(function(i,r){return!n(i,r)})}function Cn(e,t,n){return B(e,function(i,r){n=t(n,i,r)}),n}function Pr(e,t){return!!Cn(e,function(n,i,r){return n&&t(i,r)},!0)}function qi(e,t){return!!lt(e,t)}function sn(e,t){let n=[];return B(e,function(i,r){n.push(t(i,r))}),n}function rs(e){return e&&Object.keys(e)||[]}function X0(e){return rs(e).length}function Jr(e){return sn(e,t=>t)}function eo(e,t,n={}){return t=Iu(t),B(e,function(i){let r=t(i)||"_",o=n[r];o||(o=n[r]=[]),o.push(i)}),n}function gd(e,...t){e=Iu(e);let n={};return B(t,r=>eo(r,e,n)),sn(n,function(r,o){return r[0]})}const Z0=gd;function li(e,t){t=Iu(t);let n=[];return B(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)}),sn(n,i=>i.v)}function to(e){return function(t){return Pr(e,function(n,i){return t[i]===n})}}function Iu(e){return Ut(e)?e:t=>t[e]}function os(e){return Ut(e)?e:t=>t===e}function Q0(e){return e}function J0(e){return Number(e)}function Bu(e,t){let n,i,r,o;function a(f){let p=Date.now(),d=f?0:o+t-p;if(d>0)return s(d);e.apply(r,i),c()}function s(f){n=setTimeout(a,f)}function c(){n&&clearTimeout(n),n=o=i=r=void 0}function u(){n&&a(!0),c()}function l(...f){o=Date.now(),i=f,r=this,n||s(t)}return l.flush=u,l.cancel=c,l}function xn(e,t){return e.bind(t)}function V(e,...t){return Object.assign(e,...t)}function ew(e,t,n){let i=e;return B(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];Ft(a)&&Qr(s)&&(s=i[r]=isNaN(+a)?{}:[]),Cr(a)?Cr(n)?delete i[r]:i[r]=n:i=s}),e}function oi(e,t){let n={},i=Object(e);return B(t,function(r){r in i&&(n[r]=e[r])}),n}function pi(e,t){let n={},i=Object(e);return B(i,function(r,o){t.indexOf(o)===-1&&(n[o]=r)}),n}function Nu(){}Nu.prototype.get=function(e){return this.$model.properties.get(this,e)},Nu.prototype.set=function(e,t){this.$model.properties.set(this,e,t)};function yd(e,t){this.model=e,this.properties=t}yd.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(Nu.prototype);B(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}),B(a,xn(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 tw=V(Object.create(null),{String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0}),vd=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 $u(e,t){var n=vd[e];return n?n(t):t}function Fu(e){return!!tw[e]}function bd(e){return!!vd[e]}function cn(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 Nn(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName=Object.create(null),this.properties=[],this.propertiesByName=Object.create(null)}Nn.prototype.build=function(){return oi(this,["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"])},Nn.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)},Nn.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},Nn.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=cn(r[0],i),a=cn(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},Nn.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},Nn.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},Nn.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},Nn.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},Nn.prototype.assertNotTrait=function(e){if((e.extends||[]).length)throw new Error(`cannot create <${e.name}> extending <${e.extends}>`)},Nn.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")},Nn.prototype.hasProperty=function(e){return this.propertiesByName[e]},Nn.prototype.addTrait=function(e,t){t&&this.assertNotTrait(e);var n=this.allTypesByName,i=this.allTypes,r=e.name;r in n||(B(e.properties,xn(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 Yi(e,t){this.packageMap=Object.create(null),this.typeMap=Object.create(null),this.packages=[],this.properties=t,B(e,xn(this.registerPackage,this))}Yi.prototype.getPackage=function(e){return this.packageMap[e]},Yi.prototype.getPackages=function(){return this.packages},Yi.prototype.registerPackage=function(e){e=V({},e);var t=this.packageMap;_d(t,e,"prefix"),_d(t,e,"uri"),B(e.types,xn(function(n){this.registerType(n,e)},this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},Yi.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=cn(e.name,t.prefix),i=n.name,r=Object.create(null);B(e.properties,xn(function(o){var a=cn(o.name,n.prefix),s=a.name;Fu(o.type)||(o.type=cn(o.type,a.prefix).name),V(o,{ns:a,name:s}),r[s]=o},this)),V(e,{ns:n,name:i,propertiesByName:r}),B(e.extends,xn(function(o){var a=cn(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},Yi.prototype.mapTypes=function(e,t,n){var i=Fu(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(c,u){var l=cn(c,Fu(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+">");B(i.superClass,n?a:s),t(i,!n),B(i.traits,a)},Yi.prototype.getEffectiveDescriptor=function(e){var t=cn(e),n=new Nn(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},Yi.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})};function _d(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function Ar(e){this.model=e}Ar.prototype.set=function(e,t,n){if(!Sn(t)||!t.length)throw new TypeError("property name must be a non-empty string");var i=this.getProperty(e,t),r=i&&i.name;nw(n)?i?delete e[r]:delete e.$attrs[ju(t)]:i?r in e?e[r]=n:xd(e,i,n):e.$attrs[ju(t)]=n},Ar.prototype.get=function(e,t){var n=this.getProperty(e,t);if(!n)return e.$attrs[ju(t)];var i=n.name;return!e[i]&&n.isMany&&xd(e,n,[]),e[i]},Ar.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)},Ar.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},Ar.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},Ar.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 nw(e){return typeof e>"u"}function xd(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function ju(e){return e.replace(/^:/,"")}function Gn(e,t={}){this.properties=new Ar(this),this.factory=new yd(this,this.properties),this.registry=new Yi(e,this.properties),this.typeCache=Object.create(null),this.config=t}Gn.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},Gn.prototype.getType=function(e){var t=this.typeCache,n=Sn(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},Gn.prototype.createAny=function(e,t,n){var i=cn(e),r={$type:e,$instanceOf:function(a){return a===this.$type},get:function(a){return this[a]},set:function(a,s){ew(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}),B(n,function(a,s){Wt(a)&&a.value!==void 0?r[a.name]=a.value:r[s]=a}),r},Gn.prototype.getPackage=function(e){return this.registry.getPackage(e)},Gn.prototype.getPackages=function(){return this.registry.getPackages()},Gn.prototype.getElementDescriptor=function(e){return e.$descriptor},Gn.prototype.hasType=function(e,t){t===void 0&&(t=e,e=this);var n=e.$model.getElementDescriptor(e);return t in n.allTypesByName},Gn.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},Gn.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var wd=String.fromCharCode,iw=Object.prototype.hasOwnProperty,rw=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/ig,Ko={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};Object.keys(Ko).forEach(function(e){Ko[e.toUpperCase()]=Ko[e]});function ow(e,t,n,i){return i?iw.call(Ko,i)?Ko[i]:"&"+i+";":wd(t||parseInt(n,16))}function Tr(e){return e.length>3&&e.indexOf("&")!==-1?e.replace(rw,ow):e}var Ed="non-whitespace outside of root node";function Ki(e){return new Error(e)}function aw(e){return"missing namespace for prefix <"+e+">"}function as(e){return{get:e,enumerable:!0}}function sw(e){var t=Object.create(null),n;for(n in e)t[n]=e[n];return t}var Sd=Symbol("nameCache");function Hu(e){return e+"$uri"}function cw(e){var t=Object.create(null),n,i;for(n in e)i=e[n],t[i]=i,t[Hu(i)]=n;return t}function ss(){return{line:0,column:0}}function uw(e){throw e}function Rd(e){if(!this)return new Rd(e);var t=e&&e.proxy,n,i,r,o,a=uw,s,c,u,l,f=ss,p=!1,d=!1,g="",h=!1,m=!1,x=null,y=!1,_,S,P,C;function L(D){D instanceof Error||(D=Ki(D)),x=D,a(D,f)}function T(D){s&&(D instanceof Error||(D=Ki(D)),s(D,f))}this.on=function(D,z){if(typeof z!="function")throw Ki("required args <name, cb>");switch(D){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 Ki("unsupported event: "+D)}return this},this.ns=function(D){if(typeof D>"u"&&(D={}),typeof D!="object")throw Ki("required args <nsMap={}>");var z=Object.create(null),ce;for(ce in D)z[ce]=D[ce];return m=!0,C=z,this};function j(){_=m?[]:null,S=m?cw(C):null,P=[],f=ss,y=!1,x=null,d=!1,g=""}this.parse=function(D){if(typeof D!="string")throw Ki("required args <xml=string>");if(p)throw Ki("parse during stream; call end() first");return j(),k(D),f=ss,y=!1,x},this.write=function(D){if(typeof D!="string")throw Ki("required args <xml=string>");return p||(j(),p=!0),x||(g=k(g+D,!0)||""),this},this.end=function(){return p||j(),p=!1,x||k(g),g="",f=ss,y=!1,x},this.stop=function(){y=!0};function k(D,z=!1){var ce=null,Ee=null,Ye,ze=0,Y=!1,ue=!1,oe=0,le=0,Me,W,q,J,Te,ft,M,E,b,H="",U=0,Q;function we(nt,St){var dn=nt.indexOf(":");if(dn===-1)return nt;var Kt=S[nt.substring(0,dn)];return Kt?St===Kt?nt.substr(dn+1):Kt+nt.substr(dn):(T(aw(nt.substring(0,dn))),null)}function He(){if(Q!==null)return Q;var nt,St,dn=m&&S.xmlns,Kt=m&&h?[]:null,dt=U,Mt=H,rn=Mt.length,Vo,Bn,ri,on,Vt,_n={},Pi=new Set,hn,tt,it;e:for(;dt<rn;dt++)if(hn=!1,tt=Mt.charCodeAt(dt),!(tt===32||tt<14&&tt>8)){for((tt<65||tt>122||tt>90&&tt<97)&&tt!==95&&tt!==58&&(T("illegal first char attribute name"),hn=!0),it=dt+1;it<rn;it++)if(tt=Mt.charCodeAt(it),!(tt>96&&tt<123||tt>64&&tt<91||tt>47&&tt<59||tt===46||tt===45||tt===95)){if(tt===32||tt<14&&tt>8){T("missing attribute value"),dt=it;continue e}if(tt===61)break;T("illegal attribute name char"),hn=!0}if(Vt=Mt.substring(dt,it),Vt==="xmlns:xmlns"&&(T("illegal declaration of xmlns"),hn=!0),tt=Mt.charCodeAt(it+1),tt===34)it=Mt.indexOf('"',dt=it+2),it===-1&&(it=Mt.indexOf("'",dt),it!==-1&&(T("attribute value quote missmatch"),hn=!0));else if(tt===39)it=Mt.indexOf("'",dt=it+2),it===-1&&(it=Mt.indexOf('"',dt),it!==-1&&(T("attribute value quote missmatch"),hn=!0));else for(T("missing attribute value quotes"),hn=!0,it=it+1;it<rn&&(tt=Mt.charCodeAt(it+1),!(tt===32||tt<14&&tt>8));it++);for(it===-1&&(T("missing closing quotes"),it=rn,hn=!0),hn||(ri=Mt.substring(dt,it)),dt=it;it+1<rn&&(tt=Mt.charCodeAt(it+1),!(tt===32||tt<14&&tt>8));it++)dt===it&&(T("illegal character after attribute end"),hn=!0);if(dt=it+1,hn)continue e;if(Pi.has(Vt)){T("attribute <"+Vt+"> already defined");continue}if(Pi.add(Vt),!m){_n[Vt]=ri;continue}if(h){if(Bn=Vt==="xmlns"?"xmlns":Vt.charCodeAt(0)===120&&Vt.substr(0,6)==="xmlns:"?Vt.substr(6):null,Bn!==null){if(nt=Tr(ri),St=Hu(Bn),on=C[nt],!on){if(Bn==="xmlns"||St in S&&S[St]!==nt)do on="ns"+ze++;while(typeof S[on]<"u");else on=Bn;C[nt]=on}S[Bn]!==on&&(Vo||(S=sw(S),Vo=!0),S[Bn]=on,Bn==="xmlns"&&(S[Hu(on)]=nt,dn=on),S[St]=nt),_n[Vt]=ri;continue}Kt.push(Vt,ri);continue}Vt=we(Vt,dn),Vt!==null&&(_n[Vt]=ri)}if(h)for(dt=0,rn=Kt.length;dt<rn;dt++)Vt=we(Kt[dt++],dn),ri=Kt[dt],Vt!==null&&(_n[Vt]=ri);return Q=_n}function et(){for(var nt=/(\r\n|\r|\n)/g,St=0,dn=0,Kt=0,dt=le,Mt,rn;oe>=Kt&&(Mt=nt.exec(D),!(!Mt||(dt=Mt[0].length+Mt.index,dt>oe)));)St+=1,Kt=dt;return oe==-1?(dn=dt,rn=D.substring(le)):le===0?rn=D.substring(le,oe):(dn=oe-Kt,rn=le==-1?D.substring(oe):D.substring(oe,le+1)),{data:rn,line:St,column:dn}}for(f=et,t&&(b=Object.create({},{name:as(function(){return M}),originalName:as(function(){return E}),attrs:as(He),ns:as(function(){return S})}));le!==-1;){if(D.charCodeAt(le)===60?oe=le:oe=D.indexOf("<",le),oe===-1){if(z)return D.substring(le);if(P.length)return L("unexpected end of file");if(!d)return L("missing start tag");le<D.length&&D.substring(le).trim()&&T(Ed);return}if(d||(d=!0),le!==oe){if(P.length){if(n&&(n(D.substring(le,oe),Tr,f),y))return}else if(D.substring(le,oe).trim()&&(T(Ed),y))return}if(J=D.charCodeAt(oe+1),J===33){if(q=D.charCodeAt(oe+2),q===91&&D.substr(oe+3,6)==="CDATA["){if(le=D.indexOf("]]>",oe),le===-1)return z?D.substring(oe):L("unclosed cdata");if(o&&(o(D.substring(oe+9,le),f),y))return;le+=3;continue}if(q===45&&D.charCodeAt(oe+3)===45){if(le=D.indexOf("-->",oe),le===-1)return z?D.substring(oe):L("unclosed comment");if(c&&(c(D.substring(oe+4,le),Tr,f),y))return;le+=3;continue}}if(J===63){if(le=D.indexOf("?>",oe),le===-1)return z?D.substring(oe):L("unclosed question");if(u&&(u(D.substring(oe,le+2),f),y))return;le+=2;continue}for(Me=oe+1;;Me++){if(Te=D.charCodeAt(Me),isNaN(Te))return z?D.substring(oe):(le=-1,L("unclosed tag"));if(Te===34)q=D.indexOf('"',Me+1),Me=q!==-1?q:Me;else if(Te===39)q=D.indexOf("'",Me+1),Me=q!==-1?q:Me;else if(Te===62){le=Me;break}}if(J===33){if(l&&(l(D.substring(oe,le+1),Tr,f),y))return;le+=1;continue}if(Q={},J===47){if(Y=!1,ue=!0,!P.length)return L("missing open tag");if(Me=M=P.pop(),q=oe+2+Me.length,D.substring(oe+2,q)!==Me)return L("closing tag mismatch");for(;q<le;q++)if(J=D.charCodeAt(q),!(J===32||J>8&&J<14))return L("close tag")}else{if(D.charCodeAt(le-1)===47?(Me=M=D.substring(oe+1,le-1),Y=!0,ue=!0):(Me=M=D.substring(oe+1,le),Y=!0,ue=!1),!(J>96&&J<123||J>64&&J<91||J===95||J===58))return L("illegal first char nodeName");for(q=1,W=Me.length;q<W;q++)if(J=Me.charCodeAt(q),!(J>96&&J<123||J>64&&J<91||J>47&&J<59||J===45||J===95||J==46)){if(J===32||J<14&&J>8){M=Me.substring(0,q),Q=null;break}return L("invalid nodeName")}ue||P.push(M)}if(m){Ye=S,Y&&(ue||_.push(Ye),Q===null&&(h=Me.indexOf("xmlns",q)!==-1)&&(U=q,H=Me,He(),h=!1)),E=M,Ee!==S&&(ce=S[Sd],ce===void 0&&(ce=S[Sd]=Object.create(null)),Ee=S);var Pt=ce[M];if(Pt!==void 0)M=Pt;else{if(J=M.indexOf(":"),J!==-1){if(ft=S[M.substring(0,J)],!ft)return L("missing namespace on <"+E+">");M=M.substr(J+1)}else ft=S.xmlns;ft&&(M=ft+":"+M),ce[E]=M}}if(Y&&(U=q,H=Me,i&&(t?i(b,Tr,ue,f):i(M,He,Tr,ue,f),y)))return;if(ue){if(r&&(r(t?b:M,Tr,Y,f),y))return;m&&(Y?S=Ye:S=_.pop())}le+=1}}}function Cd(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"},Pd="property";function Ad(e){return e.xml&&e.xml.serialize}function lw(e){const t=Ad(e);return t!==Pd&&(t||null)}function pw(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Td(e,t){return Cd(t)?e.prefix+":"+pw(e.localName):e.name}function fw(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 dw(e,t,n){const i=cn(e,t.xmlns),r=`${t[i.prefix]||i.prefix}:${i.localName}`,o=cn(r);var a=n.getPackage(o.prefix);return fw(o,a)}function Xi(e){return new Error(e)}function Ai(e){return e.$descriptor}function hw(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 Xi("expected element");var n=this.elementsById,i=Ai(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 Xi("duplicate ID <"+o+">");n[o]=t}},this.addWarning=function(t){this.warnings.push(t)}}function Xo(){}Xo.prototype.handleEnd=function(){},Xo.prototype.handleText=function(){},Xo.prototype.handleNode=function(){};function Gu(){}Gu.prototype=Object.create(Xo.prototype),Gu.prototype.handleNode=function(){return this};function no(){}no.prototype=Object.create(Xo.prototype),no.prototype.handleText=function(e){this.body=(this.body||"")+e};function Zo(e,t){this.property=e,this.context=t}Zo.prototype=Object.create(no.prototype),Zo.prototype.handleNode=function(e){if(this.element)throw Xi("expected no sub nodes");return this.element=this.createReference(e),this},Zo.prototype.handleEnd=function(){this.element.id=this.body},Zo.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}};function Vu(e,t){this.element=t,this.propertyDesc=e}Vu.prototype=Object.create(no.prototype),Vu.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=$u(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)};function cs(){}cs.prototype=Object.create(no.prototype),cs.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 gn(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}gn.prototype=Object.create(cs.prototype),gn.prototype.addReference=function(e){this.context.addReference(e)},gn.prototype.handleText=function(e){var t=this.element,n=Ai(t),i=n.bodyProperty;if(!i)throw Xi("unexpected body text <"+e+">");no.prototype.handleText.call(this,e)},gn.prototype.handleEnd=function(){var e=this.body,t=this.element,n=Ai(t),i=n.bodyProperty;i&&e!==void 0&&(e=$u(i.type,e),t.set(i.name,e))},gn.prototype.createElement=function(e){var t=e.attributes,n=this.type,i=Ai(n),r=this.context,o=new n({}),a=this.model,s;return B(t,function(c,u){var l=i.propertiesByName[u],f;l&&l.isReference?l.isMany?(f=c.split(" "),B(f,function(p){r.addReference({element:o,property:l.ns.name,id:p})})):r.addReference({element:o,property:l.ns.name,id:c}):(l?c=$u(l.type,c):u==="xmlns"?u=":"+u:(s=cn(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},gn.prototype.getPropertyForNode=function(e){var t=e.name,n=cn(t),i=this.type,r=this.model,o=Ai(i),a=n.name,s=o.propertiesByName[a];if(s&&!s.isAttr){const u=lw(s);if(u){const l=e.attributes[u];if(l){const f=dw(l,e.ns,r),p=r.getType(f);return V({},s,{effectiveType:Ai(p).name})}}return s}var c=r.getPackage(n.prefix);if(c){const u=Td(n,c),l=r.getType(u);if(s=lt(o.properties,function(f){return!f.isVirtual&&!f.isReference&&!f.isAttribute&&l.hasType(f.type)}),s)return V({},s,{effectiveType:Ai(l).name})}else if(s=lt(o.properties,function(u){return!u.isReference&&!u.isAttribute&&u.type==="Element"}),s)return s;throw Xi("unrecognized element <"+n.name+">")},gn.prototype.toString=function(){return"ElementDescriptor["+Ai(this.type).name+"]"},gn.prototype.valueHandler=function(e,t){return new Vu(e,t)},gn.prototype.referenceHandler=function(e){return new Zo(e,this.context)},gn.prototype.handler=function(e){return e==="Element"?new io(this.model,e,this.context):new gn(this.model,e,this.context)},gn.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,n=t.effectiveType||t.type,bd(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 Wu(e,t,n){gn.call(this,e,t,n)}Wu.prototype=Object.create(gn.prototype),Wu.prototype.createElement=function(e){var t=e.name,n=cn(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),a=o&&Td(n,o)||t;if(!r.hasType(a))throw Xi("unexpected element <"+e.originalName+">");return gn.prototype.createElement.call(this,e)};function io(e,t,n){this.model=e,this.context=n}io.prototype=Object.create(cs.prototype),io.prototype.createElement=function(e){var t=e.name,n=cn(t),i=n.prefix,r=e.ns[i+"$uri"],o=e.attributes;return this.model.createAny(t,r,o)},io.prototype.handleChild=function(e){var t=new io(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},io.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)};function Uu(e){e instanceof Gn&&(e={model:e}),V(this,{lax:!1},e)}Uu.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof gn?(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 hw(V({},t,{rootHandler:i})),s=new Rd({proxy:!0}),c=mw();i.context=a,c.push(i);function u(P,C,L){var T=C(),j=T.line,k=T.column,D=T.data;D.charAt(0)==="<"&&D.indexOf(" ")!==-1&&(D=D.slice(0,D.indexOf(" "))+">");var z="unparsable content "+(D?D+" ":"")+`detected
2
- line: `+j+`
1
+ (function(ae,Ot){typeof exports=="object"&&typeof module<"u"?Ot(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],Ot):(ae=typeof globalThis<"u"?globalThis:ae||self,Ot(ae.BpmnModeler={},ae.Vue))})(this,(function(ae,Ot){"use strict";var vL=Object.defineProperty;var bL=(ae,Ot,Rr)=>Ot in ae?vL(ae,Ot,{enumerable:!0,configurable:!0,writable:!0,value:Rr}):ae[Ot]=Rr;var Zr=(ae,Ot,Rr)=>bL(ae,typeof Ot!="symbol"?Ot+"":Ot,Rr);const Rr=["startEvent","endEvent","userTask","serviceTask","task","sendTask","receiveTask","exclusiveGateway","parallelGateway","subProcess","boundaryEvent"],rs=["startEvent","endEvent","userTask","serviceTask","task","sendTask","receiveTask","exclusiveGateway","parallelGateway"];function ld(e){return Rr.includes(e)}function pd(e){return rs.includes(e)}const fd="http://g1project.net/spec/bpmn/bwl/1.0",Lu="bwl",Iu=["top-left","top","top-right","right","bottom-right","bottom","bottom-left","left"],dd={name:"bwl-hints",uri:fd,prefix:Lu,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"}]}]},Bu="bwl.undoEpisode",hd=new WeakSet;function D0(e){hd.has(e)||(e.register(Bu,{preExecute(t){try{t.run()}catch(n){t.error=n}}}),hd.add(e))}function md(e,t){D0(e);const n={run:t};if(e.execute(Bu,n),n.error!==void 0)throw e.canUndo()&&e.undo(),n.error}const gd=["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"],L0={description:"생략 = 보존, null = 제거.",anyOf:[{type:"string"},{type:"null"}]},I0={type:"object",description:"레인. 배열 선언 순서 = 풀 내 상→하 순서.",properties:{id:{type:"string"},name:{type:"string"}},required:["id"],additionalProperties:!1},B0={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},N0={type:"object",description:"플로우 노드. 좌표는 지정하지 않는다 — 배치는 resolver 가 결정한다. ⚠ type 집합은 **읽을 수 있는 것보다 좁다** — describe 는 subProcess·boundaryEvent 도 노드로 내지만 그 둘을 새로 만드는 배치는 미실증이라 여기서 받지 않는다(B-87 ⓐ).",properties:{id:{type:"string"},type:{type:"string",enum:[...rs]},name:{type:"string"},participant:{type:"string",description:"소속 풀 id(협업 문서)."},lane:{type:"string",description:"소속 레인 id(풀 정의에 선언된 것)."}},required:["id","type"],additionalProperties:!1},$0={type:"object",description:"분기 조건 — 게이트웨이가 아닌 플로우에 붙인다. MVP 는 label 만.",properties:{label:{type:"string"}},required:["label"],additionalProperties:!1},F0={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},j0={type:"object",description:"메시지 플로우(풀 경계를 넘는 연결 — 노드 또는 블랙박스 풀 자체가 끝점).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"},name:{type:"string"}},required:["id","source","target"],additionalProperties:!1},H0={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},G0={type:"object",properties:{id:{type:"string"},text:{type:"string"}},required:["id","text"],additionalProperties:!1},V0={type:"object",description:"연관선(주석 ↔ 요소).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"}},required:["source","target"],additionalProperties:!1},W0={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},U0={type:"object",description:"주석 방위 힌트 — 앵커 요소 기준 상대 배치. 있으면 결정적 배치, 없으면 휴리스틱.",properties:{anchor:{type:"string",description:"기준 요소 id."},side:{type:"string",enum:[...Iu]},offset:{type:"number",description:"앵커 가장자리 → 주석 가장자리 간격(px). 생략 시 50."}},required:["anchor","side"],additionalProperties:!1};function sn(e,t){return{type:"object",description:t.description,properties:{kind:{const:e},...t.properties},required:["kind",...t.required??[]],additionalProperties:!1}}const Y0={"participant.add":sn("participant.add",{description:"풀 추가. order = 풀 세로 순서 힌트 — **작을수록 위**(생략 시 op 순서가 곧 배치 순서). 값은 상대 순서만 쓰므로 1,2,3… 연속이든 10,20,30 간격이든 같다.",properties:{participant:{$ref:"#/$defs/irParticipant"},order:{type:"integer"}},required:["participant"]}),"participant.update":sn("participant.update",{description:"풀 이름/레인 갱신. lanes 는 전체 재선언(생략 = 보존) — 기존 레인을 유지하려면 함께 다시 나열한다.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},lanes:{type:"array",items:{$ref:"#/$defs/irLane"}}},required:["id"]}),"node.add":sn("node.add",{description:'플로우 노드 추가. band = 가로 밴드 순번 힌트(주 흐름 0, 갈래 1, 2…) — 위/아래가 아니라 "주 흐름에서 몇 번째 갈래"다. 행 배치(어느 갈래가 위/아래인지)는 호스트가 정한다(대칭·메시지 방향). 레인이 있으면 그 레인 안의 밴드다 — 한 레인 안에서 게이트웨이 출구를 갈라 놓을 때 쓴다. 컨테이너(풀·레인)는 밴드 수만큼 자란다.',properties:{node:{$ref:"#/$defs/irNode"},band:{type:"integer",description:"0 이상 정수(음수는 payload-invalid 로 거부)."}},required:["node"]}),"node.update":sn("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:[...rs]},band:{type:"integer",description:"0 이상 정수(음수는 payload-invalid 로 거부)."}},required:["id"]}),"sequenceFlow.add":sn("sequenceFlow.add",{description:"시퀀스 플로우 추가. 분기 조건은 게이트웨이가 아닌 플로우의 condition 에 싣는다.",properties:{flow:{$ref:"#/$defs/irSequenceFlow"}},required:["flow"]}),"sequenceFlow.update":sn("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":sn("messageFlow.add",{description:"메시지 플로우 추가(풀 경계를 넘는 연결).",properties:{flow:{$ref:"#/$defs/irMessageFlow"}},required:["flow"]}),"messageFlow.update":sn("messageFlow.update",{description:"메시지 플로우 이름 갱신.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"}},required:["id"]}),"dataStore.add":sn("dataStore.add",{description:"데이터 스토어 추가(+ 입출력 연관 동반 가능).",properties:{dataStore:{$ref:"#/$defs/irDataStore"},associations:{type:"array",items:{$ref:"#/$defs/irDataAssociation"}}},required:["dataStore"]}),"dataStore.update":sn("dataStore.update",{description:"데이터 스토어 이름 갱신.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"}},required:["id"]}),"dataAssociation.add":sn("dataAssociation.add",{description:"기존 노드 ↔ 기존 데이터 스토어의 입출력 연관 추가.",properties:{association:{$ref:"#/$defs/irDataAssociation"}},required:["association"]}),"association.add":sn("association.add",{description:"주석 ↔ 요소 연관 추가(한쪽 끝은 주석). 주석 신설과 함께면 annotation.add 의 association 을 쓰고, 이 op 는 추가 연관(한 주석에 여러 연관)용.",properties:{association:{$ref:"#/$defs/irAssociation"}},required:["association"]}),"annotation.add":sn("annotation.add",{description:"텍스트 주석 추가. association 으로 대상 요소와 연결하고, placement 로 방위를 지정하면 결정적 배치된다.",properties:{annotation:{$ref:"#/$defs/irTextAnnotation"},association:{$ref:"#/$defs/irAssociation"},placement:{$ref:"#/$defs/bwlPlacement"}},required:["annotation"]}),"annotation.update":sn("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":sn("group.add",{description:"그룹 추가 — 바운즈는 members 의 bbox 로 산출되므로 좌표를 지정하지 않는다.",properties:{group:{$ref:"#/$defs/irGroup"}},required:["group"]}),"group.update":sn("group.update",{description:"그룹 이름/멤버 갱신. members 는 전체 재선언(생략 = 보존).",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},members:{type:"array",items:{type:"string"}}},required:["id"]}),"element.remove":sn("element.remove",{description:"요소 제거(카테고리 무관). 부착된 연결선은 함께 제거된다.",properties:{id:{type:"string"}},required:["id"]})},yd={anyOf:gd.map(e=>Y0[e])},q0={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:I0,irParticipant:B0,irNode:N0,irFlowCondition:$0,irSequenceFlow:F0,irMessageFlow:j0,irDataStore:H0,irDataAssociation:z0,irTextAnnotation:G0,irAssociation:V0,irGroup:W0,bwlPlacement:U0,nullableString:L0,symbolicOp:yd}};function Nu(e){return Array.prototype.concat.apply([],e)}const qo=Object.prototype.toString,K0=Object.prototype.hasOwnProperty;function Cr(e){return e===void 0}function Ft(e){return e!==void 0}function Qr(e){return e==null}function De(e){return qo.call(e)==="[object Array]"}function Wt(e){return qo.call(e)==="[object Object]"}function Be(e){return qo.call(e)==="[object Number]"}function Ut(e){const t=qo.call(e);return t==="[object Function]"||t==="[object AsyncFunction]"||t==="[object GeneratorFunction]"||t==="[object AsyncGeneratorFunction]"||t==="[object Proxy]"}function Sn(e){return qo.call(e)==="[object String]"}function X0(e){if(!De(e))throw new Error("must supply array")}function Rn(e,t){return!Qr(e)&&K0.call(e,t)}function pt(e,t){const n=as(t);let i;return N(e,function(r,o){if(n(r,o))return i=r,!1}),i}function vd(e,t){const n=as(t);let i=De(e)?-1:void 0;return N(e,function(r,o){if(n(r,o))return i=o,!1}),i}function We(e,t){const n=as(t);let i=[];return N(e,function(r,o){n(r,o)&&i.push(r)}),i}function N(e,t){let n,i;if(Cr(e))return;const r=De(e)?tw:ew;for(let o in e)if(Rn(e,o)&&(n=e[o],i=t(n,r(o)),i===!1))return n}function Z0(e,t){if(Cr(e))return[];X0(e);const n=as(t);return e.filter(function(i,r){return!n(i,r)})}function Cn(e,t,n){return N(e,function(i,r){n=t(n,i,r)}),n}function Pr(e,t){return!!Cn(e,function(n,i,r){return n&&t(i,r)},!0)}function Yi(e,t){return!!pt(e,t)}function cn(e,t){let n=[];return N(e,function(i,r){n.push(t(i,r))}),n}function os(e){return e&&Object.keys(e)||[]}function Q0(e){return os(e).length}function Jr(e){return cn(e,t=>t)}function eo(e,t,n={}){return t=$u(t),N(e,function(i){let r=t(i)||"_",o=n[r];o||(o=n[r]=[]),o.push(i)}),n}function bd(e,...t){e=$u(e);let n={};return N(t,r=>eo(r,e,n)),cn(n,function(r,o){return r[0]})}const J0=bd;function li(e,t){t=$u(t);let n=[];return N(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)}),cn(n,i=>i.v)}function to(e){return function(t){return Pr(e,function(n,i){return t[i]===n})}}function $u(e){return Ut(e)?e:t=>t[e]}function as(e){return Ut(e)?e:t=>t===e}function ew(e){return e}function tw(e){return Number(e)}function Fu(e,t){let n,i,r,o;function a(f){let p=Date.now(),d=f?0:o+t-p;if(d>0)return s(d);e.apply(r,i),c()}function s(f){n=setTimeout(a,f)}function c(){n&&clearTimeout(n),n=o=i=r=void 0}function u(){n&&a(!0),c()}function l(...f){o=Date.now(),i=f,r=this,n||s(t)}return l.flush=u,l.cancel=c,l}function xn(e,t){return e.bind(t)}function V(e,...t){return Object.assign(e,...t)}function nw(e,t,n){let i=e;return N(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];Ft(a)&&Qr(s)&&(s=i[r]=isNaN(+a)?{}:[]),Cr(a)?Cr(n)?delete i[r]:i[r]=n:i=s}),e}function ai(e,t){let n={},i=Object(e);return N(t,function(r){r in i&&(n[r]=e[r])}),n}function pi(e,t){let n={},i=Object(e);return N(i,function(r,o){t.indexOf(o)===-1&&(n[o]=r)}),n}function ju(){}ju.prototype.get=function(e){return this.$model.properties.get(this,e)},ju.prototype.set=function(e,t){this.$model.properties.set(this,e,t)};function _d(e,t){this.model=e,this.properties=t}_d.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(ju.prototype);N(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}),N(a,xn(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 iw=V(Object.create(null),{String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0}),xd=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 Hu(e,t){var n=xd[e];return n?n(t):t}function zu(e){return!!iw[e]}function wd(e){return!!xd[e]}function un(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 $n(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName=Object.create(null),this.properties=[],this.propertiesByName=Object.create(null)}$n.prototype.build=function(){return ai(this,["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"])},$n.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)},$n.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},$n.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=un(r[0],i),a=un(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},$n.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},$n.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},$n.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},$n.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},$n.prototype.assertNotTrait=function(e){if((e.extends||[]).length)throw new Error(`cannot create <${e.name}> extending <${e.extends}>`)},$n.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")},$n.prototype.hasProperty=function(e){return this.propertiesByName[e]},$n.prototype.addTrait=function(e,t){t&&this.assertNotTrait(e);var n=this.allTypesByName,i=this.allTypes,r=e.name;r in n||(N(e.properties,xn(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 qi(e,t){this.packageMap=Object.create(null),this.typeMap=Object.create(null),this.packages=[],this.properties=t,N(e,xn(this.registerPackage,this))}qi.prototype.getPackage=function(e){return this.packageMap[e]},qi.prototype.getPackages=function(){return this.packages},qi.prototype.registerPackage=function(e){e=V({},e);var t=this.packageMap;Ed(t,e,"prefix"),Ed(t,e,"uri"),N(e.types,xn(function(n){this.registerType(n,e)},this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},qi.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=un(e.name,t.prefix),i=n.name,r=Object.create(null);N(e.properties,xn(function(o){var a=un(o.name,n.prefix),s=a.name;zu(o.type)||(o.type=un(o.type,a.prefix).name),V(o,{ns:a,name:s}),r[s]=o},this)),V(e,{ns:n,name:i,propertiesByName:r}),N(e.extends,xn(function(o){var a=un(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},qi.prototype.mapTypes=function(e,t,n){var i=zu(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(c,u){var l=un(c,zu(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+">");N(i.superClass,n?a:s),t(i,!n),N(i.traits,a)},qi.prototype.getEffectiveDescriptor=function(e){var t=un(e),n=new $n(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},qi.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})};function Ed(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function Ar(e){this.model=e}Ar.prototype.set=function(e,t,n){if(!Sn(t)||!t.length)throw new TypeError("property name must be a non-empty string");var i=this.getProperty(e,t),r=i&&i.name;rw(n)?i?delete e[r]:delete e.$attrs[Gu(t)]:i?r in e?e[r]=n:Sd(e,i,n):e.$attrs[Gu(t)]=n},Ar.prototype.get=function(e,t){var n=this.getProperty(e,t);if(!n)return e.$attrs[Gu(t)];var i=n.name;return!e[i]&&n.isMany&&Sd(e,n,[]),e[i]},Ar.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)},Ar.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},Ar.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},Ar.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 rw(e){return typeof e>"u"}function Sd(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function Gu(e){return e.replace(/^:/,"")}function Un(e,t={}){this.properties=new Ar(this),this.factory=new _d(this,this.properties),this.registry=new qi(e,this.properties),this.typeCache=Object.create(null),this.config=t}Un.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},Un.prototype.getType=function(e){var t=this.typeCache,n=Sn(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},Un.prototype.createAny=function(e,t,n){var i=un(e),r={$type:e,$instanceOf:function(a){return a===this.$type},get:function(a){return this[a]},set:function(a,s){nw(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}),N(n,function(a,s){Wt(a)&&a.value!==void 0?r[a.name]=a.value:r[s]=a}),r},Un.prototype.getPackage=function(e){return this.registry.getPackage(e)},Un.prototype.getPackages=function(){return this.registry.getPackages()},Un.prototype.getElementDescriptor=function(e){return e.$descriptor},Un.prototype.hasType=function(e,t){t===void 0&&(t=e,e=this);var n=e.$model.getElementDescriptor(e);return t in n.allTypesByName},Un.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},Un.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var Rd=String.fromCharCode,ow=Object.prototype.hasOwnProperty,aw=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/ig,Ko={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};Object.keys(Ko).forEach(function(e){Ko[e.toUpperCase()]=Ko[e]});function sw(e,t,n,i){return i?ow.call(Ko,i)?Ko[i]:"&"+i+";":Rd(t||parseInt(n,16))}function Tr(e){return e.length>3&&e.indexOf("&")!==-1?e.replace(aw,sw):e}var Cd="non-whitespace outside of root node";function Ki(e){return new Error(e)}function cw(e){return"missing namespace for prefix <"+e+">"}function ss(e){return{get:e,enumerable:!0}}function uw(e){var t=Object.create(null),n;for(n in e)t[n]=e[n];return t}var Pd=Symbol("nameCache");function Vu(e){return e+"$uri"}function lw(e){var t=Object.create(null),n,i;for(n in e)i=e[n],t[i]=i,t[Vu(i)]=n;return t}function cs(){return{line:0,column:0}}function pw(e){throw e}function Ad(e){if(!this)return new Ad(e);var t=e&&e.proxy,n,i,r,o,a=pw,s,c,u,l,f=cs,p=!1,d=!1,h="",m=!1,g=!1,y=null,v=!1,b,_,C,P;function D(O){O instanceof Error||(O=Ki(O)),y=O,a(O,f)}function T(O){s&&(O instanceof Error||(O=Ki(O)),s(O,f))}this.on=function(O,H){if(typeof H!="function")throw Ki("required args <name, cb>");switch(O){case"openTag":i=H;break;case"text":n=H;break;case"closeTag":r=H;break;case"error":a=H;break;case"warn":s=H;break;case"cdata":o=H;break;case"attention":l=H;break;case"question":u=H;break;case"comment":c=H;break;default:throw Ki("unsupported event: "+O)}return this},this.ns=function(O){if(typeof O>"u"&&(O={}),typeof O!="object")throw Ki("required args <nsMap={}>");var H=Object.create(null),se;for(se in O)H[se]=O[se];return g=!0,P=H,this};function I(){b=g?[]:null,_=g?lw(P):null,C=[],f=cs,v=!1,y=null,d=!1,h=""}this.parse=function(O){if(typeof O!="string")throw Ki("required args <xml=string>");if(p)throw Ki("parse during stream; call end() first");return I(),k(O),f=cs,v=!1,y},this.write=function(O){if(typeof O!="string")throw Ki("required args <xml=string>");return p||(I(),p=!0),y||(h=k(h+O,!0)||""),this},this.end=function(){return p||I(),p=!1,y||k(h),h="",f=cs,v=!1,y},this.stop=function(){v=!0};function k(O,H=!1){var se=null,Ee=null,qe,ze=0,q=!1,ue=!1,oe=0,le=0,Me,W,Y,J,Te,ft,M,S,w,z="",U=0,Q;function we(nt,St){var dn=nt.indexOf(":");if(dn===-1)return nt;var Kt=_[nt.substring(0,dn)];return Kt?St===Kt?nt.substr(dn+1):Kt+nt.substr(dn):(T(cw(nt.substring(0,dn))),null)}function He(){if(Q!==null)return Q;var nt,St,dn=g&&_.xmlns,Kt=g&&m?[]:null,dt=U,Mt=z,on=Mt.length,Vo,Nn,oi,an,Vt,_n={},Pi=new Set,hn,tt,it;e:for(;dt<on;dt++)if(hn=!1,tt=Mt.charCodeAt(dt),!(tt===32||tt<14&&tt>8)){for((tt<65||tt>122||tt>90&&tt<97)&&tt!==95&&tt!==58&&(T("illegal first char attribute name"),hn=!0),it=dt+1;it<on;it++)if(tt=Mt.charCodeAt(it),!(tt>96&&tt<123||tt>64&&tt<91||tt>47&&tt<59||tt===46||tt===45||tt===95)){if(tt===32||tt<14&&tt>8){T("missing attribute value"),dt=it;continue e}if(tt===61)break;T("illegal attribute name char"),hn=!0}if(Vt=Mt.substring(dt,it),Vt==="xmlns:xmlns"&&(T("illegal declaration of xmlns"),hn=!0),tt=Mt.charCodeAt(it+1),tt===34)it=Mt.indexOf('"',dt=it+2),it===-1&&(it=Mt.indexOf("'",dt),it!==-1&&(T("attribute value quote missmatch"),hn=!0));else if(tt===39)it=Mt.indexOf("'",dt=it+2),it===-1&&(it=Mt.indexOf('"',dt),it!==-1&&(T("attribute value quote missmatch"),hn=!0));else for(T("missing attribute value quotes"),hn=!0,it=it+1;it<on&&(tt=Mt.charCodeAt(it+1),!(tt===32||tt<14&&tt>8));it++);for(it===-1&&(T("missing closing quotes"),it=on,hn=!0),hn||(oi=Mt.substring(dt,it)),dt=it;it+1<on&&(tt=Mt.charCodeAt(it+1),!(tt===32||tt<14&&tt>8));it++)dt===it&&(T("illegal character after attribute end"),hn=!0);if(dt=it+1,hn)continue e;if(Pi.has(Vt)){T("attribute <"+Vt+"> already defined");continue}if(Pi.add(Vt),!g){_n[Vt]=oi;continue}if(m){if(Nn=Vt==="xmlns"?"xmlns":Vt.charCodeAt(0)===120&&Vt.substr(0,6)==="xmlns:"?Vt.substr(6):null,Nn!==null){if(nt=Tr(oi),St=Vu(Nn),an=P[nt],!an){if(Nn==="xmlns"||St in _&&_[St]!==nt)do an="ns"+ze++;while(typeof _[an]<"u");else an=Nn;P[nt]=an}_[Nn]!==an&&(Vo||(_=uw(_),Vo=!0),_[Nn]=an,Nn==="xmlns"&&(_[Vu(an)]=nt,dn=an),_[St]=nt),_n[Vt]=oi;continue}Kt.push(Vt,oi);continue}Vt=we(Vt,dn),Vt!==null&&(_n[Vt]=oi)}if(m)for(dt=0,on=Kt.length;dt<on;dt++)Vt=we(Kt[dt++],dn),oi=Kt[dt],Vt!==null&&(_n[Vt]=oi);return Q=_n}function et(){for(var nt=/(\r\n|\r|\n)/g,St=0,dn=0,Kt=0,dt=le,Mt,on;oe>=Kt&&(Mt=nt.exec(O),!(!Mt||(dt=Mt[0].length+Mt.index,dt>oe)));)St+=1,Kt=dt;return oe==-1?(dn=dt,on=O.substring(le)):le===0?on=O.substring(le,oe):(dn=oe-Kt,on=le==-1?O.substring(oe):O.substring(oe,le+1)),{data:on,line:St,column:dn}}for(f=et,t&&(w=Object.create({},{name:ss(function(){return M}),originalName:ss(function(){return S}),attrs:ss(He),ns:ss(function(){return _})}));le!==-1;){if(O.charCodeAt(le)===60?oe=le:oe=O.indexOf("<",le),oe===-1){if(H)return O.substring(le);if(C.length)return D("unexpected end of file");if(!d)return D("missing start tag");le<O.length&&O.substring(le).trim()&&T(Cd);return}if(d||(d=!0),le!==oe){if(C.length){if(n&&(n(O.substring(le,oe),Tr,f),v))return}else if(O.substring(le,oe).trim()&&(T(Cd),v))return}if(J=O.charCodeAt(oe+1),J===33){if(Y=O.charCodeAt(oe+2),Y===91&&O.substr(oe+3,6)==="CDATA["){if(le=O.indexOf("]]>",oe),le===-1)return H?O.substring(oe):D("unclosed cdata");if(o&&(o(O.substring(oe+9,le),f),v))return;le+=3;continue}if(Y===45&&O.charCodeAt(oe+3)===45){if(le=O.indexOf("-->",oe),le===-1)return H?O.substring(oe):D("unclosed comment");if(c&&(c(O.substring(oe+4,le),Tr,f),v))return;le+=3;continue}}if(J===63){if(le=O.indexOf("?>",oe),le===-1)return H?O.substring(oe):D("unclosed question");if(u&&(u(O.substring(oe,le+2),f),v))return;le+=2;continue}for(Me=oe+1;;Me++){if(Te=O.charCodeAt(Me),isNaN(Te))return H?O.substring(oe):(le=-1,D("unclosed tag"));if(Te===34)Y=O.indexOf('"',Me+1),Me=Y!==-1?Y:Me;else if(Te===39)Y=O.indexOf("'",Me+1),Me=Y!==-1?Y:Me;else if(Te===62){le=Me;break}}if(J===33){if(l&&(l(O.substring(oe,le+1),Tr,f),v))return;le+=1;continue}if(Q={},J===47){if(q=!1,ue=!0,!C.length)return D("missing open tag");if(Me=M=C.pop(),Y=oe+2+Me.length,O.substring(oe+2,Y)!==Me)return D("closing tag mismatch");for(;Y<le;Y++)if(J=O.charCodeAt(Y),!(J===32||J>8&&J<14))return D("close tag")}else{if(O.charCodeAt(le-1)===47?(Me=M=O.substring(oe+1,le-1),q=!0,ue=!0):(Me=M=O.substring(oe+1,le),q=!0,ue=!1),!(J>96&&J<123||J>64&&J<91||J===95||J===58))return D("illegal first char nodeName");for(Y=1,W=Me.length;Y<W;Y++)if(J=Me.charCodeAt(Y),!(J>96&&J<123||J>64&&J<91||J>47&&J<59||J===45||J===95||J==46)){if(J===32||J<14&&J>8){M=Me.substring(0,Y),Q=null;break}return D("invalid nodeName")}ue||C.push(M)}if(g){qe=_,q&&(ue||b.push(qe),Q===null&&(m=Me.indexOf("xmlns",Y)!==-1)&&(U=Y,z=Me,He(),m=!1)),S=M,Ee!==_&&(se=_[Pd],se===void 0&&(se=_[Pd]=Object.create(null)),Ee=_);var Pt=se[M];if(Pt!==void 0)M=Pt;else{if(J=M.indexOf(":"),J!==-1){if(ft=_[M.substring(0,J)],!ft)return D("missing namespace on <"+S+">");M=M.substr(J+1)}else ft=_.xmlns;ft&&(M=ft+":"+M),se[S]=M}}if(q&&(U=Y,z=Me,i&&(t?i(w,Tr,ue,f):i(M,He,Tr,ue,f),v)))return;if(ue){if(r&&(r(t?w:M,Tr,q,f),v))return;g&&(q?_=qe:_=b.pop())}le+=1}}}function Td(e){return e.xml&&e.xml.tagAlias==="lowerCase"}var Wu={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},Md="property";function kd(e){return e.xml&&e.xml.serialize}function fw(e){const t=kd(e);return t!==Md&&(t||null)}function dw(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Od(e,t){return Td(t)?e.prefix+":"+dw(e.localName):e.name}function hw(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 mw(e,t,n){const i=un(e,t.xmlns),r=`${t[i.prefix]||i.prefix}:${i.localName}`,o=un(r);var a=n.getPackage(o.prefix);return hw(o,a)}function Xi(e){return new Error(e)}function Ai(e){return e.$descriptor}function gw(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 Xi("expected element");var n=this.elementsById,i=Ai(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 Xi("duplicate ID <"+o+">");n[o]=t}},this.addWarning=function(t){this.warnings.push(t)}}function Xo(){}Xo.prototype.handleEnd=function(){},Xo.prototype.handleText=function(){},Xo.prototype.handleNode=function(){};function Uu(){}Uu.prototype=Object.create(Xo.prototype),Uu.prototype.handleNode=function(){return this};function no(){}no.prototype=Object.create(Xo.prototype),no.prototype.handleText=function(e){this.body=(this.body||"")+e};function Zo(e,t){this.property=e,this.context=t}Zo.prototype=Object.create(no.prototype),Zo.prototype.handleNode=function(e){if(this.element)throw Xi("expected no sub nodes");return this.element=this.createReference(e),this},Zo.prototype.handleEnd=function(){this.element.id=this.body},Zo.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}};function Yu(e,t){this.element=t,this.propertyDesc=e}Yu.prototype=Object.create(no.prototype),Yu.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=Hu(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)};function us(){}us.prototype=Object.create(no.prototype),us.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 gn(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}gn.prototype=Object.create(us.prototype),gn.prototype.addReference=function(e){this.context.addReference(e)},gn.prototype.handleText=function(e){var t=this.element,n=Ai(t),i=n.bodyProperty;if(!i)throw Xi("unexpected body text <"+e+">");no.prototype.handleText.call(this,e)},gn.prototype.handleEnd=function(){var e=this.body,t=this.element,n=Ai(t),i=n.bodyProperty;i&&e!==void 0&&(e=Hu(i.type,e),t.set(i.name,e))},gn.prototype.createElement=function(e){var t=e.attributes,n=this.type,i=Ai(n),r=this.context,o=new n({}),a=this.model,s;return N(t,function(c,u){var l=i.propertiesByName[u],f;l&&l.isReference?l.isMany?(f=c.split(" "),N(f,function(p){r.addReference({element:o,property:l.ns.name,id:p})})):r.addReference({element:o,property:l.ns.name,id:c}):(l?c=Hu(l.type,c):u==="xmlns"?u=":"+u:(s=un(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},gn.prototype.getPropertyForNode=function(e){var t=e.name,n=un(t),i=this.type,r=this.model,o=Ai(i),a=n.name,s=o.propertiesByName[a];if(s&&!s.isAttr){const u=fw(s);if(u){const l=e.attributes[u];if(l){const f=mw(l,e.ns,r),p=r.getType(f);return V({},s,{effectiveType:Ai(p).name})}}return s}var c=r.getPackage(n.prefix);if(c){const u=Od(n,c),l=r.getType(u);if(s=pt(o.properties,function(f){return!f.isVirtual&&!f.isReference&&!f.isAttribute&&l.hasType(f.type)}),s)return V({},s,{effectiveType:Ai(l).name})}else if(s=pt(o.properties,function(u){return!u.isReference&&!u.isAttribute&&u.type==="Element"}),s)return s;throw Xi("unrecognized element <"+n.name+">")},gn.prototype.toString=function(){return"ElementDescriptor["+Ai(this.type).name+"]"},gn.prototype.valueHandler=function(e,t){return new Yu(e,t)},gn.prototype.referenceHandler=function(e){return new Zo(e,this.context)},gn.prototype.handler=function(e){return e==="Element"?new io(this.model,e,this.context):new gn(this.model,e,this.context)},gn.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,n=t.effectiveType||t.type,wd(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 qu(e,t,n){gn.call(this,e,t,n)}qu.prototype=Object.create(gn.prototype),qu.prototype.createElement=function(e){var t=e.name,n=un(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),a=o&&Od(n,o)||t;if(!r.hasType(a))throw Xi("unexpected element <"+e.originalName+">");return gn.prototype.createElement.call(this,e)};function io(e,t,n){this.model=e,this.context=n}io.prototype=Object.create(us.prototype),io.prototype.createElement=function(e){var t=e.name,n=un(t),i=n.prefix,r=e.ns[i+"$uri"],o=e.attributes;return this.model.createAny(t,r,o)},io.prototype.handleChild=function(e){var t=new io(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},io.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)};function Ku(e){e instanceof Un&&(e={model:e}),V(this,{lax:!1},e)}Ku.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof gn?(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 gw(V({},t,{rootHandler:i})),s=new Ad({proxy:!0}),c=yw();i.context=a,c.push(i);function u(C,P,D){var T=P(),I=T.line,k=T.column,O=T.data;O.charAt(0)==="<"&&O.indexOf(" ")!==-1&&(O=O.slice(0,O.indexOf(" "))+">");var H="unparsable content "+(O?O+" ":"")+`detected
2
+ line: `+I+`
3
3
  column: `+k+`
4
- nested error: `+P.message;if(L)return a.addWarning({message:z,error:P}),!0;throw Xi(z)}function l(P,C){return u(P,C,!0)}function f(){var P=a.elementsById,C=a.references,L,T;for(L=0;T=C[L];L++){var j=T.element,k=P[T.id],D=Ai(j).propertiesByName[T.property];if(k||a.addWarning({message:"unresolved reference <"+T.id+">",element:T.element,property:T.property,value:T.id}),D.isMany){var z=j.get(D.name),ce=z.indexOf(T);ce===-1&&(ce=z.length),k?z[ce]=k:z.splice(ce,1)}else j.set(D.name,k)}}function p(){c.pop().handleEnd()}var d=/^<\?xml /i,g=/ encoding="([^"]+)"/i,h=/^utf-8$/i;function m(P){if(d.test(P)){var C=g.exec(P),L=C&&C[1];!L||h.test(L)||a.addWarning({message:"unsupported document encoding <"+L+">, falling back to UTF-8"})}}function x(P,C){var L=c.peek();try{c.push(L.handleNode(P))}catch(T){u(T,C,o)&&c.push(new Gu)}}function y(P,C){try{c.peek().handleText(P)}catch(L){l(L,C)}}function _(P,C){P.trim()&&y(P,C)}var S=r.getPackages().reduce(function(P,C){return P[C.uri]=C.prefix,P},Object.entries(zu).reduce(function(P,[C,L]){return P[L]=C,P},r.config&&r.config.nsMap||{}));return s.ns(S).on("openTag",function(P,C,L,T){var j=P.attrs||{},k=Object.keys(j).reduce(function(z,ce){var Ee=C(j[ce]);return z[ce]=Ee,z},{}),D={name:P.name,originalName:P.originalName,attributes:k,ns:P.ns};x(D,T)}).on("question",m).on("closeTag",p).on("cdata",y).on("text",function(P,C,L){_(C(P),L)}).on("error",u).on("warn",l),new Promise(function(P,C){var L;try{s.parse(e),f()}catch(z){L=z}var T=i.element;!L&&!T&&(L=Xi("failed to parse document as <"+i.type.$descriptor.name+">"));var j=a.warnings,k=a.references,D=a.elementsById;return L?(L.warnings=j,C(L)):P({rootElement:T,elementsById:D,references:k,warnings:j})})},Uu.prototype.handler=function(e){return new Wu(this.model,e)};function mw(){var e=[];return Object.defineProperty(e,"peek",{value:function(){return this[this.length-1]}}),e}var gw=`<?xml version="1.0" encoding="UTF-8"?>
5
- `,yw=/<|>|'|"|&|\n\r|\n/g,Md=/<|>|&/g;function fi(e){this.prefixMap={},this.uriMap={},this.used={},this.wellknown=[],this.custom=[],this.parent=e,this.defaultPrefixMap=e&&e.defaultPrefixMap||{}}fi.prototype.mapDefaultPrefixes=function(e){this.defaultPrefixMap=e},fi.prototype.defaultUriByPrefix=function(e){return this.defaultPrefixMap[e]},fi.prototype.byUri=function(e){return this.uriMap[e]||this.parent&&this.parent.byUri(e)},fi.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)},fi.prototype.uriByPrefix=function(e){return this.prefixMap[e||"xmlns"]||this.parent&&this.parent.uriByPrefix(e)},fi.prototype.mapPrefix=function(e,t){this.prefixMap[e||"xmlns"]=t},fi.prototype.getNSKey=function(e){return e.prefix!==void 0?e.uri+"|"+e.prefix:e.uri},fi.prototype.logUsed=function(e){var t=e.uri,n=this.getNSKey(e);this.used[n]=this.byUri(t),this.parent&&this.parent.logUsed(e)},fi.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 vw(e){return e.charAt(0).toLowerCase()+e.slice(1)}function bw(e,t){return Cd(t)?vw(e):e}function kd(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function Od(e){return Sn(e)?e:(e.prefix?e.prefix+":":"")+e.localName}function _w(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 xw(e,t){return t.isGeneric?V({localName:t.ns.localName},e):V({localName:bw(t.ns.localName,t.$pkg)},e)}function ww(e,t){return V({localName:t.ns.localName},e)}function Ew(e){var t=e.$descriptor;return We(t.properties,function(n){var i=n.name;if(n.isVirtual||!Rn(e,i))return!1;var r=e[i];return r===n.default||r===null?!1:n.isMany?r.length:!0})}var Sw={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},Rw={"<":"lt",">":"gt","&":"amp"};function Dd(e,t,n){return e=Sn(e)?e:""+e,e.replace(t,function(i){return"&"+n[i]+";"})}function Cw(e){return Dd(e,yw,Sw)}function Pw(e){return Dd(e,Md,Rw)}function Aw(e){return We(e,function(t){return t.isAttr})}function Tw(e){return We(e,function(t){return!t.isAttr})}function qu(e){this.tagName=e}qu.prototype.build=function(e){return this.element=e,this},qu.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()};function Mr(){}Mr.prototype.serializeValue=Mr.prototype.serializeTo=function(e){e.append(this.escape?Pw(this.value):this.value)},Mr.prototype.build=function(e,t){return this.value=t,e.type==="String"&&t.search(Md)!==-1&&(this.escape=!0),this};function Yu(e){this.tagName=e}kd(Yu,Mr),Yu.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()};function vt(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}vt.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=Ew(e),this.parseAttributes(Aw(r)),this.parseContainments(Tw(r))),this.parseGenericAttributes(e,i),this},vt.prototype.nsTagName=function(e){var t=this.logNamespaceUsed(e.ns);return xw(t,e)},vt.prototype.nsPropertyTagName=function(e){var t=this.logNamespaceUsed(e.ns);return ww(t,e)},vt.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},vt.prototype.nsAttributeName=function(e){var t;if(Sn(e)?t=cn(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)},vt.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}))},vt.prototype.parseGenericContainments=function(e){var t=e.$body;t&&this.body.push(new Mr().build({type:"String"},t));var n=e.$children;n&&B(n,i=>{this.body.push(new vt(this).build(i))})},vt.prototype.parseNsAttribute=function(e,t,n){var i=e.$model,r=cn(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)}},vt.prototype.parseNsAttributes=function(e){var t=this,n=e.$attrs,i=[];return B(n,function(r,o){var a=t.parseNsAttribute(e,o,r);a&&i.push(a)}),i},vt.prototype.parseGenericAttributes=function(e,t){var n=this;B(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)}})},vt.prototype.parseContainments=function(e){var t=this,n=this.body,i=this.element;B(e,function(r){var o=i.get(r.name),a=r.isReference,s=r.isMany;if(s||(o=[o]),r.isBody)n.push(new Mr().build(r,o[0]));else if(bd(r.type))B(o,function(u){n.push(new Yu(t.addTagName(t.nsPropertyTagName(r))).build(r,u))});else if(a)B(o,function(u){n.push(new qu(t.addTagName(t.nsPropertyTagName(r))).build(u))});else{var c=Ad(r);B(o,function(u){var l;c?c===Pd?l=new vt(t,r):l=new us(t,r,c):l=new vt(t),n.push(l.build(u))})}})},vt.prototype.getNamespaces=function(e){var t=this.namespaces,n=this.parent,i;return t||(i=n&&n.getNamespaces(),e||!i?this.namespaces=t=new fi(i):t=i),t},vt.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},vt.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},vt.prototype.parseAttributes=function(e){var t=this,n=this.element;B(e,function(i){var r=n.get(i.name);if(i.isReference)if(!i.isMany)r=r.id;else{var o=[];B(r,function(a){o.push(a.id)}),r=o.join(" ")}t.addAttribute(t.nsAttributeName(i),r)})},vt.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),Od(e)},vt.prototype.addAttribute=function(e,t){var n=this.attrs;Sn(t)&&(t=Cw(t));var i=md(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)},vt.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=_w(n).concat(t)),B(t,function(i){e.append(" ").append(Od(i.name)).append('="').append(i.value).append('"')})},vt.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==Mr;e.appendIndent().append("<"+this.tagName),this.serializeAttributes(e),e.append(t?">":" />"),t&&(n&&e.appendNewLine().indent(),B(this.body,function(i){i.serializeTo(e)}),n&&e.unindent().appendIndent(),e.append("</"+this.tagName+">")),e.appendNewLine()};function us(e,t,n){vt.call(this,e,t),this.serialization=n}kd(us,vt),us.prototype.parseNsAttributes=function(e){var t=vt.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},us.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri};function Mw(){this.value="",this.write=function(e){this.value+=e}}function kw(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 Ow(e){e=V({format:!1,preamble:!0},e||{});function t(n,i){var r=i||new Mw,o=new kw(r,e.format);e.preamble&&o.append(gw);var a=new vt,s=n.$model;if(a.getNamespaces().mapDefaultPrefixes(Dw(s)),a.build(n).serializeTo(o),!i)return r.value}return{toXML:t}}function Dw(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 ls(e,t){Gn.call(this,e,t)}ls.prototype=Object.create(Gn.prototype),ls.prototype.fromXML=function(e,t,n){Sn(t)||(n=t,t="bpmn:Definitions");var i=new Uu(V({model:this,lax:!0},n)),r=i.handler(t);return i.fromXML(e,r)},ls.prototype.toXML=function(e,t){var n=new Ow(t);return new Promise(function(i,r){try{var o=n.toXML(e);return i({xml:o})}catch(a){return r(a)}})};var Lw="BPMN20",Iw="http://www.omg.org/spec/BPMN/20100524/MODEL",Bw="bpmn",Nw=[],$w=[{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"}]}],Fw=[{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"}]}],jw={tagAlias:"lowerCase",typePrefix:"t"},Hw={name:Lw,uri:Iw,prefix:Bw,associations:Nw,types:$w,enumerations:Fw,xml:jw},zw="BPMNDI",Gw="http://www.omg.org/spec/BPMN/20100524/DI",Vw="bpmndi",Ww=[{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"]}],Uw=[{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"}]}],qw=[],Yw={name:zw,uri:Gw,prefix:Vw,types:Ww,enumerations:Uw,associations:qw},Kw="DC",Xw="http://www.omg.org/spec/DD/20100524/DC",Zw="dc",Qw=[{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}]}],Jw=[],eE={name:Kw,uri:Xw,prefix:Zw,types:Qw,associations:Jw},tE="DI",nE="http://www.omg.org/spec/DD/20100524/DI",iE="di",rE=[{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"}]}],oE=[],aE={tagAlias:"lowerCase"},sE={name:tE,uri:nE,prefix:iE,types:rE,associations:oE,xml:aE},cE="bpmn.io colors for BPMN",uE="http://bpmn.io/schema/bpmn/biocolor/1.0",lE="bioc",pE=[{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"}]}],fE=[],dE=[],hE={name:cE,uri:uE,prefix:lE,types:pE,enumerations:fE,associations:dE},mE="BPMN in Color",gE="http://www.omg.org/spec/BPMN/non-normative/color/1.0",yE="color",vE=[{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"}]}],bE=[],_E=[],xE={name:mE,uri:gE,prefix:yE,types:vE,enumerations:bE,associations:_E};const wE={bpmn:Hw,bpmndi:Yw,dc:eE,di:sE,bioc:hE,color:xE};function Ld(e,t){const n=V({},wE,e);return new ls(n,t)}const EE={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"}},SE="http://www.omg.org/spec/BPMN/non-normative/extensions/i18n/1.0",Id="i18n",ps={[Id]:EE,[ku]:ld};function Bd(){return Ld(ps)}const Nd=Bd();async function Ku(e){const{rootElement:t,warnings:n}=await Nd.fromXML(e,"bpmn:Definitions");return{definitions:t,warnings:n}}async function RE(e){const{xml:t}=await Nd.toXML(e,{format:!0});return t}function Xu(e){return e.map(t=>typeof t=="string"?t:t.message??String(t))}const ro={cjkEm:.865,upperEm:.68,lowerEm:.5,digitEm:.556,spaceEm:.278,otherEm:.35,ascentEm:.9,descentEm:.25},CE=/[ᄀ-ᇿ -〿぀-ヿ㐀-鿿가-힯＀-⦆]/;function PE(e){const t=ro;return CE.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 oo(e,t){let n=0;for(const i of e)n+=t*PE(i);return n}function $d(e=globalThis,{textMeasurement:t="approximate"}={}){if(!(e!=null&&e.SVGElement))throw new Error("installHeadlessBpmnDom: DOM 전역이 없다 — jsdom window 를 전역에 올린 뒤 호출할 것");t==="approximate"&&AE(e),TE(e),ME(e),kE(e)}function AE(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:oo(r,o),fontBoundingBoxAscent:o*ro.ascentEm,fontBoundingBoxDescent:o*ro.descentEm,actualBoundingBoxAscent:o*ro.ascentEm,actualBoundingBoxDescent:o*ro.descentEm}}};t.getContext=()=>n}function TE(e){if(e.SVGMatrix)return;class t{constructor(){Zr(this,"a",1);Zr(this,"b",0);Zr(this,"c",0);Zr(this,"d",1);Zr(this,"e",0);Zr(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 ME(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,f=Math.cos(l),p=Math.sin(l);a.a=f,a.b=p,a.c=-p,a.d=f,a.e=c-f*c+p*u,a.f=u-p*c-f*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 kE(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:oo(n,12),height:14}})}const fs=new Set(["bpmn:Participant","bpmn:Lane","bpmn:Group","bpmn:SubProcess","bpmn:AdHocSubProcess","bpmn:Transaction"]),OE=1,Zu=new Set(["bpmn:TextAnnotation","bpmn:DataStoreReference","bpmn:DataObjectReference","bpmn:DataInput","bpmn:DataOutput"]),DE=2;function ai(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"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"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 Fd=20,ds=5,jd=3,LE=8,Hd=12,IE=Hd*1.2;function Qu(e,t){const n=t.split(/\r?\n/),i=Math.max(...n.map(o=>oo(o,Hd))),r=n.length*IE;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 yn(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 ao(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 yn(e))for(const s of yn(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>=Fd&&(!n||u>n.length)&&(n={axis:a.axis,length:u,kind:c})}return n}function Ju(e){return e.kind==="edge-overlap-opposite"||e.kind==="edge-overlap-mixed"||e.kind==="edge-overlap-unrelated"}function Gd(e,t){const n=ao(e,t);return n&&n.kind==="opposite"?{axis:n.axis,length:n.length}:null}function BE(e,t){let n=0;for(const i of t)i.id!==e.id&&Gd(e,i)&&n++;return n}function $n(e,t){let n=0;for(const i of t)i.id!==e.id&&ao(e,i)&&n++;return n}const Vd=15,Wd=20;function NE(e,t){const n=t.axis==="v"?[e.x,e.x+e.width]:[e.y,e.y+e.height];if(t.at<n[0]-Wd||t.at>n[1]+Wd)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 el=20;function hs(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<Fd||n.push([r-el,o+el])}return n}function ms(e,t){const n=e.label;if(!n)return null;let i=null;for(const r of yn(e)){const o=NE(n,r);if(o){for(const a of t)if(a.id!==e.id&&!(i&&a.id>=i.other)){for(const[s,c]of hs(r,yn(a)))if(Math.min(c,o[1])>Math.max(s,o[0])){i={other:a.id,axis:r.axis};break}}}}return i}const $E=1,FE=(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,f=1;const p=(d,g)=>{if(g===0)return d<=0;const h=d/g;if(g>0){if(h>f)return!1;h>l&&(l=h)}else{if(h<l)return!1;h<f&&(f=h)}return!0};return p(r-e.x,c)&&p(e.x-a,-c)&&p(o-e.y,u)&&p(e.y-s,-u)&&f>l}function tl(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 HE=(e,t)=>e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height,so=1;function Ti(e,t){const n=e.x+so,i=e.x+e.width-so,r=e.y+so,o=e.y+e.height-so;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 Qo(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 Ud(e,t){const n=e.label;if(!n)return null;if(yn(e).some(i=>Ti(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(yn(i).some(r=>Ti(n,r)))return i.id;for(const i of t.shapes.filter(r=>r.container).sort((r,o)=>r.id.localeCompare(o.id)))if(Qo(i).some(r=>Ti(n,r)))return i.id;return null}function un(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,DE)){i.push(r);break}}return i}function zE(e,t,n,i){const r=(u,l,f)=>(l.x-u.x)*(f.y-u.y)-(l.y-u.y)*(f.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 qd=(e,t)=>e.endpoints.some(n=>t.endpoints.includes(n));function gs(e,t){let n=0;for(const i of t){if(i.id===e.id||qd(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++)zE(e.waypoints[o],e.waypoints[o+1],i.waypoints[a],i.waypoints[a+1])&&(r=!0);r&&n++}return n}function Fn(e,t){let n=0;for(const i of t)i.id===e.id||qd(e,i)||gs(e,[i])>0&&(n+=i.type===e.type?2:1);return n}function Yd(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++)gs(n[i],[n[r]])>0&&(t+=n[i].type===n[r].type?2:1);return t}function nl(e){const t=[],n=e.edges;for(let i=0;i<n.length;i++)for(let r=i+1;r<n.length;r++)if(gs(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 Kd(e){const t=nl(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),f=n(u.type);l==="solid"&&f==="solid"?r++:l==="dashed"&&f==="dashed"&&o++}return{pairs:t,solidPairs:r,dashedPairs:o,mixedPairs:t.length-r-o,crossPoolMessages:GE(e)}}function GE(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 Xd(e,t,n){const i=new Set(t.flatMap(r=>[...r.members]));return e.shapes.filter(r=>!r.container&&!Zu.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 Zd(e){var n;const t=(n=yt(e==null?void 0:e.extensionElements))==null?void 0:n.values;if(Array.isArray(t))for(const i of t){const r=yt(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 Qd=e=>e?{members:e}:{},Vn=e=>e.shapes.filter(t=>!t.container);function VE(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 Jd(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(yn(i).some(r=>Ti(n,r)))return i.id;for(const i of[...t.shapes].filter(r=>r.container).sort((r,o)=>r.id.localeCompare(o.id)))if(Qo(i).some(r=>Ti(n,r)))return i.id;return null}function co(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 Wn(e){const t=[],n=e.shapes.filter(h=>!h.container);for(const h of e.edges)for(const m of un(h,n))t.push({kind:"edge-crosses-shape",edge:h.id,shape:m.id});const i=n.filter(h=>!h.attached);for(let h=0;h<i.length;h++)for(let m=h+1;m<i.length;m++){const x=i[h],y=i[m];if(!tl(x,y,OE))continue;const _=x.id<y.id?[x.id,y.id]:[y.id,x.id];t.push({kind:"shape-overlap",shapes:_,identical:HE(x,y)})}const r=e.shapes.filter(h=>h.type==="bpmn:Group"&&Array.isArray(h.members)&&h.members.length>0);for(let h=0;h<r.length;h++)for(let m=h+1;m<r.length;m++){const x=r[h],y=r[m],_=Math.min(x.x+x.width,y.x+y.width)-Math.max(x.x,y.x),S=Math.min(x.y+x.height,y.y+y.height)-Math.max(x.y,y.y);if(_<=ds||S<=ds)continue;const P=x.id<y.id?[x.id,y.id]:[y.id,x.id],C=new Set(y.members);if(x.members.some(T=>C.has(T))){const T=Xd(e,r,{x:Math.max(x.x,y.x),y:Math.max(x.y,y.y),right:Math.min(x.x+x.width,y.x+y.width),bottom:Math.min(x.y+x.height,y.y+y.height)});T.length&&t.push({kind:"group-overlap-unreadable",reason:"orphan",groups:P,shapes:T});continue}const L=x.x<=y.x&&x.y<=y.y&&x.x+x.width>=y.x+y.width&&x.y+x.height>=y.y+y.height?x.id:y.x<=x.x&&y.y<=x.y&&y.x+y.width>=x.x+x.width&&y.y+y.height>=x.y+x.height?y.id:void 0;t.push({kind:"group-overlap-unintended",groups:P,...L?{container:L}:{}})}const o=new Set(r.flatMap(h=>[...h.members])),a=h=>e.shapes.filter(m=>!m.container&&!Zu.has(m.type)&&m.x>=h.x&&m.y>=h.y&&m.x+m.width<=h.x+h.width&&m.y+m.height<=h.y+h.height);for(const h of r){const m=a(h);if(!m.length)continue;const x=new Set(h.members),y=m.filter(_=>!x.has(_.id));y.some(_=>o.has(_.id))&&(y.length*2<m.length||t.push({kind:"group-overlap-unreadable",reason:"minority",group:h.id,shapes:y.map(_=>_.id).sort()}))}for(const h of r){const m=new Set(a(h).map(C=>C.id)),x=new Set(h.members),y=new Set([...m].filter(C=>!x.has(C)&&o.has(C)));if(!y.size)continue;let _=!1,S=!1,P=!1;for(const C of e.edges){if(C.type!=="bpmn:SequenceFlow"||!C.source||!C.target)continue;const L=y.has(C.source),T=y.has(C.target);!L&&T&&!m.has(C.source)?_=!0:L&&!T&&!m.has(C.target)?S=!0:L&&T&&(P=!0)}_&&S&&P&&t.push({kind:"group-overlap-unreadable",reason:"throughpass",group:h.id,shapes:[...y].sort()})}const s=e.shapes.filter(h=>h.type==="bpmn:Group");for(let h=0;h<s.length;h++)for(let m=h+1;m<s.length;m++)for(let x=m+1;x<s.length;x++){const y=[s[h],s[m],s[x]],_={x:Math.max(...y.map(C=>C.x)),y:Math.max(...y.map(C=>C.y)),right:Math.min(...y.map(C=>C.x+C.width)),bottom:Math.min(...y.map(C=>C.y+C.height))};if(_.right-_.x<=ds||_.bottom-_.y<=ds)continue;const S=Xd(e,[],_);if(!S.length)continue;const P=y.map(C=>C.id).sort();t.push({kind:"group-stack-unreadable",groups:P,shapes:S})}for(const h of e.shapes.filter(m=>m.type==="bpmn:Group"))for(const m of e.shapes){if(m.container||m.attached||Zu.has(m.type)||m.width<=0||m.height<=0)continue;const x=[["top",h.y,"h",h.x,h.x+h.width],["bottom",h.y+h.height,"h",h.x,h.x+h.width],["left",h.x,"v",h.y,h.y+h.height],["right",h.x+h.width,"v",h.y,h.y+h.height]];for(const[y,_,S,P,C]of x){const L=S==="h"?m.x:m.y,T=S==="h"?m.x+m.width:m.y+m.height;if(!(L<C&&P<T))continue;const j=S==="h"?m.y:m.x,k=S==="h"?m.y+m.height:m.x+m.width;if(!(j<_&&_<k))continue;const D=Math.min(_-j,k-_);D<LE||t.push({kind:"group-cuts-shape",group:h.id,shape:m.id,side:y,depth:D})}}const c=e.shapes.filter(h=>h.container&&h.type!=="bpmn:Group"&&h.type!=="bpmn:Lane");for(const h of e.shapes.filter(m=>m.type==="bpmn:Group"))for(const m of c){const x=h.x<m.x+m.width&&m.x<h.x+h.width,y=h.y<m.y+m.height&&m.y<h.y+h.height,_=[["top",h.y,m.y,x],["bottom",h.y+h.height,m.y+m.height,x],["left",h.x,m.x,y],["right",h.x+h.width,m.x+m.width,y]];for(const[S,P,C,L]of _)L&&Math.abs(P-C)<=jd&&t.push({kind:"group-on-container-boundary",group:h.id,container:m.id,side:S})}const u=e.shapes.filter(h=>h.type==="bpmn:Group");for(let h=0;h<u.length;h++)for(let m=h+1;m<u.length;m++){const x=u[h],y=u[m],_=x.x<y.x+y.width&&y.x<x.x+x.width,S=x.y<y.y+y.height&&y.y<x.y+x.height,P=[["x",x.x+x.width,y.x,S],["x",y.x+y.width,x.x,S],["y",x.y+x.height,y.y,_],["y",y.y+y.height,x.y,_]];for(const[C,L,T,j]of P)if(j&&Math.abs(L-T)<=jd){t.push({kind:"group-on-group-boundary",groups:x.id<y.id?[x.id,y.id]:[y.id,x.id],axis:C});break}}for(let h=0;h<e.edges.length;h++)for(let m=h+1;m<e.edges.length;m++){const x=e.edges[h],y=e.edges[m],_=ao(x,y);if(!_)continue;const S=x.id<y.id?[x.id,y.id]:[y.id,x.id];t.push({kind:_.kind==="opposite"?"edge-overlap-opposite":_.kind==="mixed"?"edge-overlap-mixed":"edge-overlap-unrelated",edges:S,axis:_.axis,length:Math.round(_.length)})}for(const h of e.edges){if(!h.label)continue;const m=ms(h,e.edges);m&&t.push({kind:"label-on-shared-segment",edge:h.id,other:m.other,axis:m.axis})}for(const h of e.edges){if(!h.label)continue;const m=Ud(h,e);m&&t.push({kind:"label-over-line",edge:h.id,line:m})}const l=new Set(n.map(h=>h.id)),f=e.shapes.filter(h=>h.type==="bpmn:Participant"&&h.label);for(const h of[...n,...f.filter(m=>!l.has(m.id))]){if(!h.label)continue;const m=Jd(h,e);m&&t.push({kind:"label-over-line",edge:h.id,line:m})}const p=new Set(e.shapes.filter(h=>h.type==="bpmn:TextAnnotation").map(h=>h.id));for(const h of f)for(const{owner:m,rect:x}of co(e))m===h.id||p.has(m)||tl(h.label,x,so)&&t.push({kind:"pool-name-over-label",pool:h.id,label:m});const d=co(e);for(const h of n)if(h.type==="bpmn:TextAnnotation")for(const{owner:m,rect:x}of d)m!==h.id&&tl(h,x,so)&&t.push({kind:"annotation-over-label",annotation:h.id,label:m});const g=new Map(e.shapes.map(h=>[h.id,h]));for(const h of n){const m=h.parent??VE(h,e,g);if(!m)continue;const x=g.get(m);!x||!x.container||FE(x,h,$E)||t.push({kind:"shape-outside-container",shape:h.id,container:x.id})}return t.sort((h,m)=>ai(h).localeCompare(ai(m)))}const yt=e=>typeof e=="object"&&e!==null?e:void 0,Rt=e=>typeof e=="number"?e:0,Mi=e=>{const t=yt(e);return typeof(t==null?void 0:t.id)=="string"?t.id:void 0};function WE(e){const t=yt(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=Mi(o);a&&n.push(a)}}return n}function UE(e){const t=yt(e);if(!t)return{};const n=Array.isArray(t.sourceRef)?void 0:Mi(t.sourceRef),i=Array.isArray(t.targetRef)?void 0:Mi(t.targetRef);return n&&i?{source:n,target:i}:{}}function qE(e,t){const n=yt(e.$parent);if(!n)return;const i=typeof n.$type=="string"?n.$type:"";if(i==="bpmn:Process"){const r=Mi(n);return r?t.get(r):void 0}if(fs.has(i)&&i!=="bpmn:Lane"&&i!=="bpmn:Group")return Mi(n)}function eh(e){var a,s,c,u,l;const t=[],n=[],i=((a=yt(e))==null?void 0:a.diagrams)??[],r=new Map,o=new Set;for(const f of((s=yt(e))==null?void 0:s.rootElements)??[]){const p=yt(f);if((p==null?void 0:p.$type)==="bpmn:Collaboration")for(const d of p.participants??[]){const g=yt(d),h=Mi(g),m=Mi(g==null?void 0:g.processRef);h&&m?r.set(m,h):h&&o.add(h)}}for(const f of i){const p=yt((c=yt(f))==null?void 0:c.plane),d=(p==null?void 0:p.planeElement)??[];for(const g of d){const h=yt(g);if(!h)continue;const m=yt(h.bpmnElement),x=typeof(m==null?void 0:m.id)=="string"?m.id:void 0;if(!x)continue;const y=typeof(m==null?void 0:m.$type)=="string"?m.$type:"",_=yt(h.bounds);if(_){const P=h.isExpanded===!1&&y!=="bpmn:Participant",C=yt((u=yt(h.label))==null?void 0:u.bounds),L={id:x,type:y,x:Rt(_.x),y:Rt(_.y),width:Rt(_.width),height:Rt(_.height),container:fs.has(y)&&!P,attached:(m==null?void 0:m.attachedToRef)!==void 0,...m?{parent:qE(m,r)}:{},...C?{label:{x:Rt(C.x),y:Rt(C.y),width:Rt(C.width),height:Rt(C.height)}}:{},...y==="bpmn:Group"?Qd(Zd(m)):{}},T=h.isHorizontal!==!1,j=typeof(m==null?void 0:m.name)=="string"?m.name:"";o.has(x)&&T&&j&&(L.label=Qu(L,j)),t.push(L);continue}const S=h.waypoint;if(Array.isArray(S)){const P=yt((l=yt(h.label))==null?void 0:l.bounds);n.push({id:x,type:y,waypoints:S.map(C=>{var L,T;return{x:Rt((L=yt(C))==null?void 0:L.x),y:Rt((T=yt(C))==null?void 0:T.y)}}),endpoints:WE(m),...UE(m),...P?{label:{x:Rt(P.x),y:Rt(P.y),width:Rt(P.width),height:Rt(P.height)}}:{}})}}}return{shapes:t,edges:n}}function th(e){return Wn(eh(e))}async function YE(e){const{definitions:t,warnings:n}=await Ku(e);return{findings:th(t),warnings:n}}function pt(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=yt(o.label),m=Mi(o.source),x=Mi(o.target);n.push({id:o.id,type:a,waypoints:s.map(y=>({x:Rt(y.x),y:Rt(y.y)})),endpoints:[m,x].filter(y=>!!y),...m&&x?{source:m,target:x}:{},...h&&typeof h.x=="number"?{label:{x:h.x,y:Rt(h.y),width:Rt(h.width),height:Rt(h.height)}}:{}});continue}if(typeof o.x!="number"||typeof o.y!="number")continue;const c=yt(o.businessObject),u=yt(o.label);let l=yt(o.parent);for(;l&&l.type==="bpmn:Lane";)l=yt(l.parent);const f=typeof(l==null?void 0:l.type)=="string"?l.type:"",p=l&&fs.has(f)&&f!=="bpmn:Group"&&typeof l.id=="string"?l.id:void 0,d={id:o.id,type:a,x:o.x,y:o.y,width:Rt(o.width),height:Rt(o.height),container:fs.has(a)&&(a==="bpmn:Participant"||o.collapsed!==!0),attached:(c==null?void 0:c.attachedToRef)!==void 0,...p!==void 0?{parent:p}:{},...u&&typeof u.x=="number"?{label:{x:u.x,y:Rt(u.y),width:Rt(u.width),height:Rt(u.height)}}:{},...a==="bpmn:Group"?Qd(Zd(c)):{}},g=typeof(c==null?void 0:c.name)=="string"?c.name:"";a==="bpmn:Participant"&&!(c!=null&&c.processRef)&&g&&((i=yt(o.di))==null?void 0:i.isHorizontal)!==!1&&(d.label=Qu(d,g)),t.push(d)}return{shapes:t,edges:n}}const KE={"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 XE(e,t){const n=KE[e];return n||(e==="label"||e.startsWith("bpmndi:")?"other":e.startsWith("bpmn:")&&!("waypoints"in t&&t.waypoints)?"flowNode":"other")}function nh(e){let t=e.parent;for(;t;){if(t.type==="bpmn:Participant")return t.id;t=t.parent}}function ih(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 XE(i.type,i)},lanesOf:n=>t().filter(i=>i.type==="bpmn:Lane"&&nh(i)===n).sort((i,r)=>i.y-r.y).map(i=>i.id),participantOf:n=>{const i=e.get(n);return i?nh(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 il=20,ZE=4,ht=(e,t)=>Math.abs(e-t)<.5;function rl(e,t,n,i=il){if(ht(e.y,t.y)&&!ht(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(ht(e.x,t.x)&&!ht(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 rh(e,t,n,i=il){if(n.length<2)return null;if(ht(e.y,t.y)&&!ht(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,f=Math.max(...n.map(d=>d.y+d.height))+i,p=d=>[{x:c,y:e.y},{x:c,y:d},{x:u,y:d},{x:u,y:e.y}];return[p(l),p(f)]}if(ht(e.x,t.x)&&!ht(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,f=Math.max(...n.map(d=>d.x+d.width))+i,p=d=>[{x:e.x,y:c},{x:d,y:c},{x:d,y:u},{x:e.x,y:u}];return[p(l),p(f)]}return null}function oh(e,t,n=il){if(e.length!==4)return null;const[i,r,o,a]=e;if(ht(i.y,r.y)&&ht(r.x,o.x)&&ht(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(ht(i.x,r.x)&&ht(r.y,o.y)&&ht(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 ol(e,t){if(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[];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 ah=30,QE=[0,-25,25,-40,40];function JE(e,t){if(e.type!=="bpmn:MessageFlow"||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[];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+ah:s-ah,u=a?i.y+i.height:i.y,l=n.x+n.width/2,f=i.x+i.width/2;return QE.map(p=>[{x:l,y:s},{x:l,y:c},{x:f+p,y:c},{x:f+p,y:u}])}const sh=(e,t,n)=>[...e.slice(0,t+1),...n,...e.slice(t+1)],uo=(e,t,n)=>un({...e,waypoints:t},n).length;function ch(e,t,n,i){let r=[...e.waypoints],o=uo(e,r,t);if(o===0)return null;let a=!1;for(const f of ol(e,t))if(uo(e,f,t)===0)return f;const s=(i??[]).filter(f=>f.id!==e.id).flatMap(yn),c=f=>yn({...e,waypoints:f}).some(p=>hs(p,s).length>0),u=JE(e,t).filter(f=>uo(e,f,t)===0);if(u.length)return u.find(f=>!c(f))??u[0];const l=f=>!n||f.every(p=>p.x>=n.x&&p.x<=n.x+n.width&&p.y>=n.y&&p.y<=n.y+n.height);if(e.endpoints.length===2&&r.length>2){const f=t.find(d=>d.id===e.endpoints[0]),p=t.find(d=>d.id===e.endpoints[1]);if(f&&p&&ht(f.y+f.height/2,p.y+p.height/2)){const d=[r[0],r[r.length-1]];if(ht(d[0].y,d[1].y)&&!ht(d[0].x,d[1].x)){const g=t.filter(y=>!e.endpoints.includes(y.id)&&un({...e,waypoints:d},[y]).length>0),h=g.length>=2?rh(d[0],d[1],g):null,x=(h?h.map(y=>[d[0],...y,d[1]]):g.length===1?(rl(d[0],d[1],g[0])??[]).map(y=>[d[0],...y,d[1]]):g.length===0?[d]:[]).filter(y=>uo(e,y,t)===0&&y.length<=r.length).sort((y,_)=>Number(l(_))-Number(l(y)));if(x.length)return x.find(y=>!c(y))??x[0]}}}for(let f=0;f+1<r.length;f++){const p=r[f],d=r[f+1],g=t.filter(x=>!e.endpoints.includes(x.id)&&un({...e,waypoints:[p,d]},[x]).length>0);if(g.length<2)continue;const h=rh(p,d,g);if(!h)continue;const m=h.map(x=>sh(r,f,x)).filter(x=>uo(e,x,t)===0).sort((x,y)=>Number(l(y))-Number(l(x)));if(m.length)return m.find(x=>!c(x))??m[0]}for(let f=0;f<ZE&&o>0;f++){let p=!1;for(let d=0;d+1<r.length&&!p;d++){const g=r[d],h=r[d+1];for(const m of t){if(e.endpoints.includes(m.id)||un({...e,waypoints:[g,h]},[m]).length===0)continue;const x=rl(g,h,m),y=x?x.map(S=>sh(r,d,S)):oh(r,m)??[];if(!y.length)continue;const _=[...y].sort((S,P)=>Number(l(P))-Number(l(S)));for(const S of _){const P=uo(e,S,t);if(P<o){r=S,o=P,p=!0,a=!0;break}}if(p)break}}if(!p)break}return a&&o===0?r:null}function al(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=pt(i),a=Vn(o),s=new Set,c=Wn(o).filter(l=>l.kind==="edge-crosses-shape"&&!t.has(ai(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 f=o.edges.find(p=>p.id===l.edge);f&&u.set(l.edge,f)}for(const[l,f]of u){if(n&&!n.has(l))continue;const p=i.get(l);if(!p)continue;const d=p.parent,g=d&&typeof d.x=="number"&&typeof d.width=="number"?{x:d.x,y:d.y,width:d.width,height:d.height}:void 0,h=ch(f,a,g,o.edges);if(!h){un(f,a).some(_=>_.type==="bpmn:TextAnnotation")&&s.add(l);continue}const m=o.edges.filter(_=>_.id!==l),x=$n(f,m);$n({...f,waypoints:h},m)>x||r.updateWaypoints(p,h)}return s}const e1=10;function uh(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 lh(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=uh(i,n),a=uh(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,ce)=>z.y-ce.y);if(!l.length)return null;const f=l[0],p=l[l.length-1],d=(c.y+c.height+f.y)/2,g=(p.y+p.height+u.y)/2,h=s?d:g,m=s?g:d,x=e.waypoints[0],y=e.waypoints[e.waypoints.length-1],_=Vn(t),S=t.edges.filter(z=>z.id!==e.id),P=Fn(e,S),C=un(e,_).length;if(P===0&&C===0||C===0&&e.waypoints.length===2)return null;const L=Math.min(...l.map(z=>z.x)),T=Math.max(...l.map(z=>z.x+z.width)),j=(x.x+y.x)/2,k=z=>z.filter((ce,Ee)=>Ee===0||!(ht(ce.x,z[Ee-1].x)&&ht(ce.y,z[Ee-1].y)));let D;for(let z=L;z<=T;z+=e1){const ce=k([x,{x:x.x,y:h},{x:z,y:h},{x:z,y:m},{x:y.x,y:m},y]),Ee={...e,waypoints:ce};if(un(Ee,_).length>0)continue;const Ye=Fn(Ee,S),ze=Math.abs(z-j);(!D||Ye<D.cross||Ye===D.cross&&ze<D.detour)&&(D={pts:ce,cross:Ye,detour:ze})}return D&&(C>0?D.cross<=P:D.cross<P)?D.pts:null}function ph(e,t){const{elementRegistry:n}=e,i=e.modeling,r=pt(n);for(const o of r.edges){if(o.type!=="bpmn:MessageFlow"||t.has(o.id))continue;const a=pt(n),s=a.edges.find(l=>l.id===o.id);if(!s)continue;const c=lh(s,a);if(!c)continue;const u=n.get(o.id);u&&i.updateWaypoints(u,c)}}const di=[25,-25,40,-40],lo=35;function t1(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)-lo:Math.max(e.y+e.height,t.y+t.height)+lo;for(const u of[0,...di])if(!(Math.abs(u)>=e.width/2-5))for(const l of[0,...di]){if(Math.abs(l)>=t.width/2-5)continue;const f=n+u,p=i+l;r.push({pts:[{x:f,y:a},{x:f,y:c},{x:p,y:c},{x:p,y:s}],cost:Math.abs(l)+Math.abs(u)})}}return r}function ys(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 t1(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-lo:n.y+n.height+lo,f=[];for(const y of[0,...di]){if(Math.abs(y)>=i.width/2-5)continue;const _=o+y;f.push({pts:[{x:n.x,y:r},{x:_,y:r},{x:_,y:c}],cost:Math.abs(y)});for(const S of[0,...di]){if(Math.abs(S)>=n.width/2-5)continue;const P=a+S;f.push({pts:[{x:P,y:u},{x:P,y:l},{x:_,y:l},{x:_,y:c}],cost:Math.abs(y)+Math.abs(S)})}}const p=50,d=i.y+i.height/2,g=s?n.y+n.height:n.y;for(const y of[0,...di]){if(Math.abs(y)>=n.width/2-5)continue;const _=a+y;f.push({pts:[{x:_,y:g},{x:_,y:d},{x:i.x+i.width,y:d}],cost:p+Math.abs(y)})}const h=60,m=s?i.y+i.height:i.y,x=s?i.y+i.height+lo:i.y-lo;for(const y of[0,...di]){if(Math.abs(y)>=i.width/2-5)continue;const _=o+y;for(const S of[0,...di]){if(Math.abs(S)>=n.width/2-5)continue;const P=a+S;f.push({pts:[{x:P,y:g},{x:P,y:x},{x:_,y:x},{x:_,y:m}],cost:h+Math.abs(y)+Math.abs(S)})}}return f}const vs=30;function fh(e,t){for(let n=1;n<e.length-2;n++){const i=e[n],r=e[n+1],o=ht(i.y,r.y)&&!ht(i.x,r.x),a=ht(i.x,r.x)&&!ht(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)<vs||Math.abs(i.y-(s.y+s.height))<vs)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)<vs||Math.abs(i.x-(s.x+s.width))<vs)return!0}}return!1}const bs=40;function n1(e,t,n){let i=0;for(const r of t){if(r.container||n.includes(r.id))continue;const o=r.x-bs,a=r.x+r.width+bs,s=r.y-bs,c=r.y+r.height+bs;for(let u=1;u<e.length-2;u++){const l=e[u],f=e[u+1],p={x:Math.min(l.x,f.x),y:Math.min(l.y,f.y)},d={x:Math.max(l.x,f.x),y:Math.max(l.y,f.y)};if(p.x<a&&d.x>o&&p.y<c&&d.y>s){i++;break}}}return i}function dh(e,t){if(e.type!=="bpmn:SequenceFlow")return null;const n=t.shapes.filter(C=>C.container),i=new Map(t.shapes.map(C=>[C.id,C])),r=Vn(t),o=t.edges.filter(C=>C.id!==e.id),a=$n(e,o),s=Fn(e,o),c=C=>n1(C,t.shapes,e.endpoints)+(fh(C,n)?1:0),u=c(e.waypoints),l=C=>{if(!C)return;const L=C.x+C.width/2,T=C.y+C.height/2;return n.find(j=>j.type==="bpmn:Lane"&&L>=j.x&&L<=j.x+j.width&&T>=j.y&&T<=j.y+j.height)},f=l(i.get(e.endpoints[0]??"")),p=l(i.get(e.endpoints[1]??"")),d=!!f&&!!p&&f.id!==p.id,g=C=>{if(!d||!p)return!1;for(let L=1;L<C.length-2;L++){const T=C[L],j=C[L+1];if(ht(T.y,j.y)&&!ht(T.x,j.x)&&T.y>p.y&&T.y<p.y+p.height)return!0}return!1},h=g(e.waypoints),x=(C=>{if(!C)return;const L=C.x+C.width/2,T=C.y+C.height/2;return n.filter(j=>j.type==="bpmn:Participant"&&L>=j.x&&L<=j.x+j.width&&T>=j.y&&T<=j.y+j.height).sort((j,k)=>j.width*j.height-k.width*k.height)[0]})(i.get(e.endpoints[0]??"")),y=C=>{if(!x)return 0;let L=0;for(let T=1;T<C.length-1;T++){const j=C[T];(j.x<x.x||j.x>x.x+x.width||j.y<x.y||j.y>x.y+x.height)&&L++}return L},_=y(e.waypoints);if(!fh(e.waypoints,n)&&!(d&&!h)&&_===0)return null;const S=C=>C.reduce((L,T,j)=>j?L+Math.abs(T.x-C[j-1].x)+Math.abs(T.y-C[j-1].y):0,0);let P;for(const{pts:C,cost:L}of ys(e,i)){const T={...e,waypoints:C};if(un(T,r).length>0)continue;const j=$n(T,o);if(j>a)continue;const k=y(C);if(k>_)continue;const D=k<_&&j===0;if(!D&&Fn(T,o)>s)continue;const z=c(C),ce=g(C);if(!D&&!(ce&&!h)&&z>=u)continue;const Ye=ce?0:1,ze=S(C);(!P||k<P.out||k===P.out&&(Ye<P.lane||Ye===P.lane&&(j<P.opp||j===P.opp&&(z<P.sc||z===P.sc&&(L<P.cost||L===P.cost&&ze<P.len)))))&&(P={pts:C,out:k,sc:z,lane:Ye,opp:j,cost:L,len:ze})}return(P==null?void 0:P.pts)??null}function i1(e,t){const{elementRegistry:n}=e,i=e.modeling,r=pt(n).edges.filter(o=>!t.has(o.id)&&o.waypoints.length>=4).map(o=>o.id).sort();for(const o of r){const a=pt(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=un(s,c).length,f=$n(s,u),p=Fn(s,u);for(const d of ol(s,a.shapes)){if(d.length>=s.waypoints.length)continue;const g={...s,waypoints:d};if(un(g,c).length>l||$n(g,u)>f||Fn(g,u)>p)continue;const h=n.get(o);h&&i.updateWaypoints(h,d);break}}}function hh(e,t){const{elementRegistry:n}=e,i=e.modeling,r=pt(n).edges.filter(o=>o.type==="bpmn:SequenceFlow"&&!t.has(o.id)).map(o=>o.id).sort();for(const o of r){const a=pt(n),s=a.edges.find(l=>l.id===o);if(!s)continue;const c=dh(s,a);if(!c)continue;const u=n.get(o);u&&i.updateWaypoints(u,c)}}function sl(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=ht(n[0].x,n[1].x)&&!ht(n[0].y,n[1].y),s=ht(n[n.length-1].x,n[n.length-2].x)&&!ht(n[n.length-1].y,n[n.length-2].y);for(const c of di){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 r1(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,f=i.y+i.height/2,p=a?n.x+n.width:n.x,d=o?n.y+n.height:n.y,g=a?i.x:i.x+i.width,h=o?i.y:i.y+i.height,m=[];for(const x of[0,...di])Math.abs(x)<i.width/2-5&&m.push({pts:[{x:p,y:u},{x:l+x,y:u},{x:l+x,y:h}],cost:Math.abs(x)}),Math.abs(x)<i.height/2-5&&m.push({pts:[{x:c,y:d},{x:c,y:f+x},{x:g,y:f+x}],cost:Math.abs(x)});return m}function cl(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,f=[];for(const p of[0,...di]){const d=l+p;d<=r||d>=o||f.push({pts:[{x:d,y:c},{x:d,y:u}],cost:Math.abs(p)})}return f}function mh(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=$n(e,r);if(o===0)return null;const a=Fn(e,r);let s;const c=d=>d.reduce((g,h,m)=>m?g+Math.abs(h.x-d[m-1].x)+Math.abs(h.y-d[m-1].y):0,0),u=3,l=d=>{const g=d[0],h=d[d.length-1],m=Math.hypot(h.x-g.x,h.y-g.y);return m>=1&&c(d)/m>=u?1:0},f=l(e.waypoints),p=[...ys(e,n),...cl(e,n),...sl(e,n)];for(const{pts:d,cost:g}of p){const h={...e,waypoints:d};if(un(h,i).length>0)continue;const m=$n(h,r),x=Fn(h,r),y=o-m+(f-l(d));if(m>=o||x-a>y)continue;const _=c(d);(!s||m<s.opposite||m===s.opposite&&(x<s.cross||x===s.cross&&(g<s.cost||g===s.cost&&_<s.len)))&&(s={pts:d,opposite:m,cross:x,cost:g,len:_})}return(s==null?void 0:s.pts)??null}function gh(e,t){var i;let n=0;for(const r of t)r.id!==e.id&&((i=ao(e,r))==null?void 0:i.kind)==="unrelated"&&n++;return n}function o1(e,t){const n=new Map(t.shapes.map(p=>[p.id,p])),i=Vn(t),r=t.edges.filter(p=>p.id!==e.id),o=gh(e,r);if(o===0)return null;const a=$n(e,r),s=Fn(e,r),c=p=>p.reduce((d,g,h)=>h?d+Math.abs(g.x-p[h-1].x)+Math.abs(g.y-p[h-1].y):0,0),u=2;let l;const f=[...ys(e,n),...cl(e,n),...r1(e,n),...sl(e,n)];for(const{pts:p,cost:d}of f){const g={...e,waypoints:p};if(un(g,i).length>0)continue;const h=gh(g,r);if(h>=o)continue;const m=$n(g,r);if(m-h>a-o)continue;const x=Fn(g,r);if(x-s>(o-h)*u)continue;const y=c(p);(!l||h<l.fake||h===l.fake&&(m<l.unreadable||m===l.unreadable&&(x<l.cross||x===l.cross&&(d<l.cost||d===l.cost&&y<l.length))))&&(l={pts:p,fake:h,unreadable:m,cross:x,cost:d,length:y})}return(l==null?void 0:l.pts)??null}function yh(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=Wn(pt(i)).filter(s=>s.kind==="edge-overlap-unrelated"&&!t.has(ai(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=pt(i),u=c.edges.find(p=>p.id===s);if(!u)continue;const l=o1(u,c);if(!l)continue;const f=i.get(s);f&&r.updateWaypoints(f,l)}}function vh(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 bh(e,t,n){var u;if(e.type!=="bpmn:SequenceFlow"||t.type!=="bpmn:SequenceFlow"||((u=ao(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:vh(e,n)&&vh(t,n)}function _h(e,t,n){let i=0;for(const r of t)r.id!==e.id&&bh(e,r,n)&&i++;return i}function a1(e,t){const n=new Map(t.shapes.map(p=>[p.id,p])),i=Vn(t),r=t.edges.filter(p=>p.id!==e.id),o=_h(e,r,n);if(o===0)return null;const a=$n(e,r),s=Fn(e,r),c=p=>p.reduce((d,g,h)=>h?d+Math.abs(g.x-p[h-1].x)+Math.abs(g.y-p[h-1].y):0,0),u=2;let l;const f=[...ys(e,n),...cl(e,n),...sl(e,n)];for(const{pts:p,cost:d}of f){const g={...e,waypoints:p};if(un(g,i).length>0)continue;const h=_h(g,r,n);if(h>=o)continue;const m=$n(g,r);if(m-h>a-o)continue;const x=Fn(g,r);if(x-s>(o-h)*u)continue;const y=c(p);(!l||h<l.chain||h===l.chain&&(m<l.unreadable||m===l.unreadable&&(x<l.cross||x===l.cross&&(d<l.cost||d===l.cost&&y<l.length))))&&(l={pts:p,chain:h,unreadable:m,cross:x,cost:d,length:y})}return(l==null?void 0:l.pts)??null}function s1(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=pt(i),a=new Map(o.shapes.map(u=>[u.id,u])),s=Wn(o).filter(u=>u.kind==="edge-overlap-opposite"&&!t.has(ai(u)));if(!s.length)return;const c=new Set;for(const u of s){if(u.kind!=="edge-overlap-opposite")continue;const[l,f]=u.edges.map(p=>o.edges.find(d=>d.id===p));if(!(!l||!f||!bh(l,f,a)))for(const p of u.edges)n.has(p)||c.add(p)}for(const u of[...c].sort()){const l=pt(i),f=l.edges.find(g=>g.id===u);if(!f)continue;const p=a1(f,l);if(!p)continue;const d=i.get(u);d&&r.updateWaypoints(d,p)}}function xh(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=pt(i),a=Wn(o).filter(l=>Ju(l)&&!t.has(ai(l)));if(!a.length)return;const s=new Set;for(const l of a)if(Ju(l))for(const f of l.edges)n.has(f)||s.add(f);const c=l=>{var f;return((f=o.edges.find(p=>p.id===l))==null?void 0:f.type)??""},u=[...s].sort((l,f)=>{const p=c(l)==="bpmn:SequenceFlow"?0:1,d=c(f)==="bpmn:SequenceFlow"?0:1;return p!==d?p-d:l.localeCompare(f)});for(const l of u){const f=pt(i),p=f.edges.find(h=>h.id===l);if(!p)continue;const d=mh(p,f);if(!d)continue;const g=i.get(l);g&&r.updateWaypoints(g,d)}}const c1=10,u1=(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 wh(e,t){const n=e.label;if(!n)return null;const i=t.edges.filter(a=>a.id!==e.id);if(!ms(e,i))return null;const r=Vn(t),o=i.flatMap(yn);for(const a of yn(e)){let s=[[a.lo,a.hi]];for(const[d,g]of hs(a,o))s=s.flatMap(([h,m])=>{const x=[];return d>h&&x.push([h,Math.min(m,d)]),g<m&&x.push([Math.max(h,g),m]),x.filter(([y,_])=>_>y)});const c=a.axis==="h"?n.width:n.height,u=s.find(([d,g])=>g-d>=c+c1*2);if(!u)continue;const l=(u[0]+u[1])/2,f=a.axis==="h"?{x:l,y:a.at-Vd}:{x:a.at+Pn+n.width/2,y:l},p={x:f.x-n.width/2,y:f.y-n.height/2,width:n.width,height:n.height};if(!ms({...e,label:p},i)&&!r.some(d=>!e.endpoints.includes(d.id)&&u1(p,d)))return p}return null}const Pn=8;function Eh(e,t){const n=e.label;if(!n)return null;const i=yn(e);if(!i.length)return null;const r=n.x+n.width/2,o=n.y+n.height/2,a=p=>{const d=p.axis==="h"?r:o,g=p.axis==="h"?o-p.at:r-p.at,h=d<p.lo?p.lo-d:d>p.hi?d-p.hi:0;return Math.hypot(g,h)},s=i.reduce((p,d)=>a(d)<a(p)?d:p,i[0]),c=[...i,...t.edges.filter(p=>p.id!==e.id).flatMap(yn),...t.shapes.filter(p=>p.container).flatMap(Qo)],u=p=>!c.some(d=>Ti(p,d));if(u(n))return null;const l=(s.axis==="v"?n.height:n.width)+Pn,f=[0,-l,l,-2*l,2*l];if(s.axis==="v")for(const p of[s.at+Pn,s.at-Pn-n.width])for(const d of f){const g=n.y+d;if(g<s.lo||g+n.height>s.hi)continue;const h={...n,x:p,y:g};if(u(h))return h}else for(const p of[s.at-Pn-n.height,s.at+Pn])for(const d of f){const g=n.x+d;if(g<s.lo||g+n.width>s.hi)continue;const h={...n,x:g,y:p};if(u(h))return h}return null}function Sh(e,t){const{elementRegistry:n}=e,i=e.modeling,r=pt(n);for(const o of r.edges){if(!o.label||t.has(o.id))continue;const a=Eh(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 Rh(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=pt(i),a=Wn(o).filter(s=>s.kind==="label-on-shared-segment"&&!t.has(ai(s)));for(const s of a){if(s.kind!=="label-on-shared-segment"||n.has(s.edge))continue;const c=o.edges.find(p=>p.id===s.edge);if(!c)continue;const u=wh(c,o);if(!u)continue;const l=i.get(s.edge),f=l==null?void 0:l.label;f&&r.moveElements([f],{x:u.x-f.x,y:u.y-f.y})}}function Ch(e,t){const n=e.label;if(!n)return null;const i=[...t.edges.flatMap(yn),...t.shapes.filter(p=>p.container).flatMap(Qo)],r=i.filter(p=>Ti(n,p));if(!r.length)return null;const o=t.shapes.filter(p=>!p.container&&p.id!==e.id),a=co(t).filter(p=>p.owner!==e.id).map(p=>p.rect),s=(p,d)=>p.x<d.x+d.width&&d.x<p.x+p.width&&p.y<d.y+d.height&&d.y<p.y+p.height,c=p=>!i.some(d=>Ti(p,d))&&!o.some(d=>s(p,d))&&!a.some(d=>s(p,d)),u=[];for(const p of r)p.axis==="h"?u.push({...n,y:p.at-Pn-n.height},{...n,y:p.at+Pn}):u.push({...n,x:p.at-Pn-n.width},{...n,x:p.at+Pn});const l=e.x+e.width/2,f=e.y+e.height/2;return u.push({...n,x:l-n.width/2,y:e.y+e.height+Pn},{...n,x:l-n.width/2,y:e.y-Pn-n.height},{...n,x:e.x+e.width+Pn,y:f-n.height/2},{...n,x:e.x-Pn-n.width,y:f-n.height/2}),u.find(c)??null}function Ph(e,t){const{elementRegistry:n}=e,i=e.modeling,r=pt(n);for(const o of r.shapes){if(o.container||!o.label||t.has(o.id))continue;const a=Ch(o,pt(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 l1=/^[\p{L}_][\p{L}\p{N}_.\-]*$/u,Ah=new Set(["sequenceFlow","messageFlow","dataAssociation","association"]),Th={"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}]},_s=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),ul=e=>typeof e=="string"&&e!=="";function p1(e){const t=[];function n(i,r,o,a){if(a===null){ul(o)||t.push({kind:"payload-invalid",opIndex:i,field:r});return}if(!_s(o)){t.push({kind:"payload-invalid",opIndex:i,field:r});return}for(const s of a)ul(o[s])||t.push({kind:"payload-invalid",opIndex:i,field:`${r}.${s}`})}return e.forEach((i,r)=>{var o,a;if(!_s(i)||!ul(i.kind)||!(i.kind in Th)){t.push({kind:"payload-invalid",opIndex:r,field:"kind"});return}for(const s of Th[i.kind]){const c=s.path.endsWith("[]"),u=c?s.path.slice(0,-2):s.path,l=u.split(".");let f=i;for(const d of l.slice(0,-1)){if(!_s(f))break;f=f[d]}if(!_s(f))continue;const p=f[l[l.length-1]];if(!(p===void 0&&s.optional)&&!(p===null&&s.optional)){if(!c){n(r,s.path,p,s.shape);continue}if(!Array.isArray(p)){t.push({kind:"payload-invalid",opIndex:r,field:s.path});continue}p.forEach((d,g)=>n(r,`${u}[${g}]`,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"&&!cd(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 Mh(e,t){const n=p1(e);if(n.length>0)return n;const i=[],r=new Map,o=new Map;function a(p,d,g){if(!l1.test(d)){i.push({kind:"id-invalid",opIndex:p,id:d});return}if(t.categoryOf(d)!==void 0||r.has(d)){i.push({kind:"id-duplicate",opIndex:p,id:d});return}r.set(d,{...g,opIndex:p})}e.forEach((p,d)=>{var g;switch(p.kind){case"participant.add":a(d,p.participant.id,{category:"participant",lanes:(p.participant.lanes??[]).map(h=>h.id)});for(const h of p.participant.lanes??[])a(d,h.id,{category:"lane"});break;case"node.add":a(d,p.node.id,{category:"flowNode",participant:p.node.participant});break;case"sequenceFlow.add":a(d,p.flow.id,{category:"sequenceFlow"});break;case"messageFlow.add":a(d,p.flow.id,{category:"messageFlow"});break;case"dataStore.add":a(d,p.dataStore.id,{category:"dataStore"});for(const h of p.associations??[])h.id&&a(d,h.id,{category:"dataAssociation"});break;case"dataAssociation.add":p.association.id&&a(d,p.association.id,{category:"dataAssociation"});break;case"association.add":p.association.id&&a(d,p.association.id,{category:"association"});break;case"annotation.add":a(d,p.annotation.id,{category:"annotation"}),(g=p.association)!=null&&g.id&&a(d,p.association.id,{category:"association"});break;case"group.add":a(d,p.group.id,{category:"group"});break;case"participant.update":if(p.lanes){o.set(p.id,p.lanes.map(h=>h.id));for(const h of p.lanes)t.categoryOf(h.id)===void 0&&a(d,h.id,{category:"lane"})}break}});const s=p=>{var d;return((d=r.get(p))==null?void 0:d.category)??t.categoryOf(p)},c=p=>{const d=r.get(p);return d?d.category==="participant"?p:d.participant:t.categoryOf(p)==="participant"?p:t.participantOf(p)};function u(p,d,g,h){const m=s(d);if(m===void 0){i.push({kind:"ref-missing",opIndex:p,ref:d,role:g});return}if(h&&!h.includes(m)){i.push({kind:"ref-category",opIndex:p,ref:d,role:g,expected:h.join("|"),actual:m});return}return m}const l=t.isCollaboration()||e.some(p=>p.kind==="participant.add");return e.forEach((p,d)=>{var g;switch(p.kind){case"participant.add":break;case"node.add":{const{participant:h,lane:m}=p.node;if(h===void 0){(l||m!==void 0)&&i.push({kind:"participant-required",opIndex:d,id:p.node.id});break}if(u(d,h,"participant",["participant"])===void 0)break;m!==void 0&&((((g=r.get(h))==null?void 0:g.lanes)??o.get(h)??t.lanesOf(h)).includes(m)||i.push({kind:"lane-unknown",opIndex:d,lane:m,participant:h}));break}case"sequenceFlow.add":{const{id:h,source:m,target:x,name:y,condition:_}=p.flow,S=u(d,m,"source",["flowNode"]),P=u(d,x,"target",["flowNode"]);S&&P&&c(m)!==c(x)&&i.push({kind:"flow-cross-pool",opIndex:d,id:h}),y!==void 0&&_!==void 0&&i.push({kind:"condition-name-conflict",opIndex:d,id:h});break}case"messageFlow.add":{const{id:h,source:m,target:x}=p.flow,y=u(d,m,"source",["flowNode","participant"]),_=u(d,x,"target",["flowNode","participant"]);if(y&&_){const S=c(m),P=c(x);S!==void 0&&S===P&&i.push({kind:"message-flow-same-pool",opIndex:d,id:h})}break}case"dataStore.add":{for(const h of p.associations??[]){if([h.source,h.target].filter(y=>y===p.dataStore.id).length!==1){i.push({kind:"data-association-ends",opIndex:d,source:h.source,target:h.target});continue}const x=h.source===p.dataStore.id?h.target:h.source;u(d,x,"dataAssociation",["flowNode"])}break}case"dataAssociation.add":{const{source:h,target:m}=p.association,x=u(d,h,"source"),y=u(d,m,"target");if(x&&y){const _=new Set([x,y]);_.has("dataStore")&&_.has("flowNode")||i.push({kind:"data-association-ends",opIndex:d,source:h,target:m})}break}case"association.add":{const{id:h,source:m,target:x}=p.association,y=u(d,m,"source"),_=u(d,x,"target");y&&_&&y!=="annotation"&&_!=="annotation"&&i.push({kind:"association-detached",opIndex:d,annotation:h??`${m}->${x}`});break}case"annotation.add":{if(p.association){const{source:h,target:m}=p.association;if(h!==p.annotation.id&&m!==p.annotation.id)i.push({kind:"association-detached",opIndex:d,annotation:p.annotation.id});else{const x=h===p.annotation.id?m:h;u(d,x,"association")}}p.placement&&u(d,p.placement.anchor,"anchor");break}case"group.add":{for(const h of p.group.members??[]){const m=u(d,h,"member");m&&Ah.has(m)&&i.push({kind:"ref-category",opIndex:d,ref:h,role:"member",expected:"shape",actual:m})}break}case"participant.update":{if(f(d,p.id,"participant")===void 0)break;if(p.lanes){const h=t.lanesOf(p.id),m=p.lanes.map(y=>y.id);for(const y of h)m.includes(y)||i.push({kind:"lane-shrink-unsupported",opIndex:d,participant:p.id,lane:y});for(const y of m)t.categoryOf(y)!==void 0&&!h.includes(y)&&i.push({kind:"id-duplicate",opIndex:d,id:y});const x=m.filter(y=>h.includes(y));x.length===h.length&&x.some((y,_)=>y!==h[_])&&i.push({kind:"lane-reorder-unsupported",opIndex:d,participant:p.id})}break}case"node.update":{if(f(d,p.id,"flowNode")===void 0)break;if(p.lane!==void 0){const h=t.participantOf(p.id);(h?o.get(h)??t.lanesOf(h):[]).includes(p.lane)||i.push({kind:"lane-unknown",opIndex:d,lane:p.lane,participant:h??""})}break}case"sequenceFlow.update":{if(f(d,p.id,"sequenceFlow")===void 0)break;if(p.name!==void 0&&p.condition!==void 0&&i.push({kind:"condition-name-conflict",opIndex:d,id:p.id}),p.source!==void 0||p.target!==void 0){const h=p.source===void 0||u(d,p.source,"source",["flowNode"])!==void 0,m=p.target===void 0||u(d,p.target,"target",["flowNode"])!==void 0,x=t.endpointsOf(p.id),y=p.source??(x==null?void 0:x.source),_=p.target??(x==null?void 0:x.target);h&&m&&y!==void 0&&_!==void 0&&new Set([c(y),c(_),c(p.id)]).size>1&&i.push({kind:"flow-cross-pool",opIndex:d,id:p.id})}break}case"messageFlow.update":f(d,p.id,"messageFlow");break;case"dataStore.update":f(d,p.id,"dataStore");break;case"annotation.update":{if(f(d,p.id,"annotation")===void 0)break;p.placement&&u(d,p.placement.anchor,"anchor");break}case"group.update":{if(f(d,p.id,"group")===void 0)break;for(const h of p.members??[]){const m=u(d,h,"member");m&&Ah.has(m)&&i.push({kind:"ref-category",opIndex:d,ref:h,role:"member",expected:"shape",actual:m})}break}case"element.remove":{f(d,p.id)==="lane"&&i.push({kind:"ref-category",opIndex:d,ref:p.id,role:"target",expected:"removable",actual:"lane"});break}}}),i;function f(p,d,g){if(r.has(d)){i.push({kind:"target-added-in-batch",opIndex:p,id:d});return}const h=t.categoryOf(d);if(h===void 0){i.push({kind:"ref-missing",opIndex:p,ref:d,role:"target"});return}if(g&&h!==g){i.push({kind:"ref-category",opIndex:p,ref:d,role:"target",expected:g,actual:h});return}return h}}function kh(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")}}function xs(e){return`bpmn:${e[0].toUpperCase()}${e.slice(1)}`}const ws={"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]},Qt=10,Oh=40,f1=10;function ll(e,t,n,i,r){const o=n,a=(k,D)=>{const[z,ce]=ws[k];let Ee={x:t.x+t.width/2+z*(t.width/2+o.width/2+D),y:t.y+t.height/2+ce*(t.height/2+o.height/2+D)};const Ye=i.x+Qt+o.width/2,ze=i.x+i.width-Qt-o.width/2,Y=i.y+Qt+o.height/2,ue=i.y+i.height-Qt-o.height/2,oe={x:Math.min(ze,Math.max(Ye,Ee.x)),y:Math.min(ue,Math.max(Y,Ee.y))};return(oe.x!==Ee.x||oe.y!==Ee.y)&&(Ee=Math.abs(oe.x-(t.x+t.width/2))<(t.width+o.width)/2+Qt&&Math.abs(oe.y-(t.y+t.height/2))<(t.height+o.height)/2+Qt?{x:t.x+t.width+Qt+o.width/2,y:oe.y}:oe),Ee},s=(i.children??[]).filter(k=>!("waypoints"in k&&k.waypoints)&&k.type!=="bpmn:Lane"&&k.type!=="label"&&typeof k.x=="number"&&k.id!==r.selfId),c=pt(e),u=k=>{var z,ce;if(!r.selfId)return!1;const D=e.get(k);return!!D&&(((z=D.source)==null?void 0:z.id)===r.selfId||((ce=D.target)==null?void 0:ce.id)===r.selfId)},l=c.edges.filter(k=>!u(k.id)).flatMap(yn),f=co(c).filter(k=>k.owner!==r.selfId).map(k=>k.rect),p=k=>({x0:k.x-o.width/2-Qt,x1:k.x+o.width/2+Qt,y0:k.y-o.height/2-Qt,y1:k.y+o.height/2+Qt}),d=k=>{const D=p(k);return s.some(z=>D.x0<z.x+z.width&&D.x1>z.x&&D.y0<z.y+z.height&&D.y1>z.y)},g=k=>{const D=p(k);return l.some(z=>z.axis==="h"?z.at>D.y0&&z.at<D.y1&&z.lo<D.x1&&z.hi>D.x0:z.at>D.x0&&z.at<D.x1&&z.lo<D.y1&&z.hi>D.y0)},h=k=>{const D=p(k);return f.some(z=>D.x0<z.x+z.width&&D.x1>z.x&&D.y0<z.y+z.height&&D.y1>z.y)},m=c.shapes.filter(k=>k.type==="bpmn:Group").flatMap(k=>[{axis:"h",at:k.y,lo:k.x,hi:k.x+k.width},{axis:"h",at:k.y+k.height,lo:k.x,hi:k.x+k.width},{axis:"v",at:k.x,lo:k.y,hi:k.y+k.height},{axis:"v",at:k.x+k.width,lo:k.y,hi:k.y+k.height}]),x=k=>{const D=p(k);return m.some(z=>z.axis==="h"?z.at>D.y0&&z.at<D.y1&&z.lo<D.x1&&z.hi>D.x0:z.at>D.x0&&z.at<D.x1&&z.lo<D.y1&&z.hi>D.y0)},y=k=>d(k)||g(k)||h(k)||x(k),_=k=>k.x-o.width/2>=i.x&&k.x+o.width/2<=i.x+i.width&&k.y-o.height/2>=i.y&&k.y+o.height/2<=i.y+i.height;if(r.placement){const k=ze=>ze.startsWith("top")?ze.replace(/^top/,"bottom"):ze.replace(/^bottom/,"top"),D=ze=>ze.endsWith("left")?ze.replace(/left$/,"right"):ze.replace(/right$/,"left"),z=r.placement.side,ce=[z,k(z),D(z),k(D(z)),"top","bottom","left","right","top-left","top-right","bottom-left","bottom-right"],Ee=r.placement.offset??50;let Ye=a(z,Ee);if(y(Ye)){const ze=new Set;for(const Y of ce){if(ze.has(Y))continue;ze.add(Y);const ue=a(Y,Ee);if(_(ue)&&!y(ue)){Ye=ue;break}}}return Ye}const S=r.from,P=i.x+Qt+o.width/2,C=i.x+i.width-Qt-o.width/2,L=i.y+Qt+o.height/2,T=i.y+i.height-Qt-o.height/2;let j={x:Math.min(C,Math.max(P,S.x)),y:Math.min(T,Math.max(L,S.y))};if(y(j)){const k=(t.width+o.width)/2+Qt,z=[{x:j.x+k,y:j.y},{x:j.x-k,y:j.y},{x:j.x,y:j.y-o.height-Qt},{x:j.x,y:j.y+o.height+Qt}].filter(_).find(ce=>!y(ce));z&&(j=z)}return j}function qt(e,t){return e.filter(n=>n.kind===t)}function Dh(e,t){var c0,u0,l0,p0,f0,d0,h0,m0,g0,y0,v0,b0,_0,x0,w0,E0,S0,R0,C0,P0,A0,T0,M0;const{modeling:n,bpmnFactory:i,elementFactory:r,elementRegistry:o,canvas:a,autoPlace:s,bpmnReplace:c}=t,u=()=>a.getRootElement(),l=v=>o.get(v),f=v=>{const R=l(v);if(!R)throw new Error(`하강 참조 해소 실패: ${v}`);return R},p=v=>{let R=v.parent;for(;R;){if(R.type==="bpmn:Participant")return R;R=R.parent}},d=new Map;for(const v of o.filter(R=>!("waypoints"in R&&R.waypoints)&&R.type!=="bpmn:Lane"&&R.type!=="label"&&typeof R.x=="number"))d.set(v.id,{x:v.x,y:v.y});const g=qt(e,"participant.add"),h=qt(e,"node.add"),m=qt(e,"sequenceFlow.add"),x=qt(e,"messageFlow.add"),y=qt(e,"dataStore.add"),_=qt(e,"dataAssociation.add"),S=qt(e,"annotation.add"),P=qt(e,"group.add"),C=new Map(h.map(v=>[v.node.id,v])),L=(v,R,A)=>{var F;const O=v.businessObject,N=(((F=O.extensionElements)==null?void 0:F.values)??[]).filter(G=>G.$type!==R),I=A?[...N,i.create(R,A)]:N;if(!I.length){O.extensionElements&&n.updateProperties(v,{extensionElements:void 0});return}const $=i.create("bpmn:ExtensionElements",{values:I});I.forEach(G=>{G.$parent=$}),n.updateProperties(v,{extensionElements:$})},T=v=>({anchor:v.anchor,side:v.side,...v.offset!==void 0?{offset:v.offset}:{}});for(const v of qt(e,"element.remove")){const R=l(v.id);R&&n.removeElements([R])}const j=v=>o.filter(R=>{var A;return R.type==="bpmn:Lane"&&((A=p(R))==null?void 0:A.id)===v}).sort((R,A)=>R.y-A.y);for(const v of qt(e,"participant.update")){const R=f(v.id);if(v.name!==void 0&&n.updateProperties(R,{name:v.name??void 0}),!v.lanes)continue;const A=j(v.id);if(!A.length){n.splitLane(R,v.lanes.length),j(v.id).forEach((N,I)=>{const $=v.lanes[I];$&&n.updateProperties(N,{id:$.id,name:$.name})});continue}const O=new Set(A.map(N=>N.id));v.lanes.forEach((N,I)=>{if(O.has(N.id)){n.updateProperties(f(N.id),{name:N.name});return}const $=I===0?n.addLane(j(v.id)[0],"top"):n.addLane(f(v.lanes[I-1].id),"bottom");n.updateProperties($,{id:N.id,name:N.name})})}const k=150,D=130,z=80,ce=90,Ee=180,Ye=30,ze=30,Y=(v,R,A,O,N)=>{const I=A-R.width/2,$=O-R.height/2;return(v.children??[]).find(F=>!("waypoints"in F&&F.waypoints)&&F.type!=="bpmn:Lane"&&F.type!=="label"&&!(N!=null&&N.has(F.id))&&typeof F.x=="number"&&I<F.x+F.width+ze&&I+R.width+ze>F.x&&$<F.y+F.height&&$+R.height>F.y)},ue=new Set;for(const v of g){ue.add(`pool:${v.participant.id}`);for(const R of v.participant.lanes??[])ue.add(R.id)}const oe=new Map;for(const v of h){const R=v.node.lane??`pool:${v.node.participant??""}`;let A=oe.get(R);A||oe.set(R,A=new Set([0])),v.band!==void 0&&A.add(v.band)}const le=new Map;for(const[v,R]of oe){if(!ue.has(v))continue;const A=[...R].sort((I,$)=>I-$),O=A.map((I,$)=>$===0?0:$%2===1?Math.ceil($/2):-($/2)),N=Math.min(...O);le.set(v,new Map(A.map((I,$)=>[I,O[$]-N])))}{const v=new Map;for(const R of g)(R.participant.lanes??[]).forEach((A,O)=>v.set(A.id,O));for(const[R,A]of le){if(!v.has(R)||A.size<2)continue;const O=v.get(R),N=A.get(0)??0,I=new Set;for(const re of h){if(re.node.lane!==R||(re.band??0)!==0||!re.node.type.endsWith("Gateway"))continue;const Oe={in:new Set,out:new Set,cross:new Set};for(const ve of m){const Ce=ve.flow.source===re.node.id;if(!Ce&&ve.flow.target!==re.node.id)continue;const ct=C.get(Ce?ve.flow.target:ve.flow.source);if(!ct||ct.node.participant!==re.node.participant||!ct.node.lane)continue;let se,ye=!1;if(ct.node.lane!==R){const de=v.get(ct.node.lane);if(de===void 0)continue;se=de>O?"down":"up",ye=!0}else{const de=A.get(ct.band??0)??N;se=de>N?"down":de<N?"up":void 0}se&&(Oe[Ce?"out":"in"].add(se),ye&&Oe.cross.add(se))}for(const ve of["up","down"])Oe.in.has(ve)&&Oe.out.has(ve)&&Oe.cross.has(ve)&&I.add(ve)}if(I.size!==1)continue;const[$]=I,F=Math.max(...A.values()),G=$==="down"?F:0;if(N===G)continue;const K=[...A.entries()].filter(([re])=>re!==0).sort((re,Oe)=>re[1]-Oe[1]),pe=[...Array(F+1).keys()].filter(re=>re!==G),Re=new Map([[0,G]]);K.forEach(([re],Oe)=>Re.set(re,pe[Oe])),le.set(R,Re)}}const Me=v=>{var R;return(((R=oe.get(v))==null?void 0:R.size)??0)>1},W=v=>v.band??(v.node.lane||!Me(`pool:${v.node.participant??""}`)?void 0:0),q=new Map,J=v=>q.get(v.node.id)??W(v),Te=new Set,ft=new Set;{const v=new Map;for(const O of m)v.set(O.flow.target,(v.get(O.flow.target)??0)+1);const R=O=>{const N=[],I=new Set([O]),$=[O];for(;$.length;){const F=$.shift();N.push(F);for(const G of m)G.flow.source!==F||I.has(G.flow.target)||(v.get(G.flow.target)??0)!==1||(I.add(G.flow.target),$.push(G.flow.target))}return N},A=(O,N)=>{var I;return((I=le.get(O))==null?void 0:I.get(N))??N};for(const O of h){if(!O.node.type.endsWith("Gateway"))continue;const N=O.node.lane??`pool:${O.node.participant??""}`,I=le.get(N);if(!I||I.size<2)continue;const $=J(O);if($===void 0||A(N,$)!==A(N,0))continue;const F=A(N,$),G=m.filter(ve=>ve.flow.source===O.node.id).map(ve=>C.get(ve.flow.target)).filter(ve=>!!ve&&(ve.node.lane??`pool:${ve.node.participant??""}`)===N),K=G.filter(ve=>{const Ce=J(ve);return Ce!==void 0&&A(N,Ce)===F&&(v.get(ve.node.id)??0)===1}),pe=G.some(ve=>{const Ce=J(ve);return Ce!==void 0&&A(N,Ce)>F});if(K.length!==1||!pe)continue;const Re=new Set(G.flatMap(ve=>R(ve.node.id)));if(!m.some(ve=>ve.flow.target===O.node.id&&Re.has(ve.flow.source)))continue;const Oe=new Map;for(const[ve,Ce]of I)Oe.set(ve,Ce+1);Oe.set(-1,0),le.set(N,Oe);for(const ve of R(K[0].node.id))C.has(ve)&&(q.set(ve,-1),ft.add(ve));Te.add(O.node.id)}}const M=(v,R)=>{var A;return((A=le.get(v))==null?void 0:A.get(R))??R},E=(v,R,A,O)=>{const N=v?l(v):R?l(R):void 0;if(!N)return!1;const I=v?N.y+Math.min(N.height/2,ce):N.y+z;return Math.abs(I+M(v??`pool:${R??""}`,A)*k-O)<=k/2},b=new Map;for(const[v,R]of oe){let A=0;for(const O of R)A=Math.max(A,M(v,O));b.set(v,A)}const H=v=>Ee+k*v,U=(v,R,A)=>{const O=u().children.filter(N=>!("waypoints"in N&&N.waypoints)&&N.id!==R&&typeof N.y=="number"&&N.y>=v);O.length&&n.moveElements(O,{x:0,y:A})},Q=(v,R,A)=>{const O=v.type==="bpmn:Participant"?v:void 0;if(!O||O.children.some(F=>F.type==="bpmn:Lane"))return;const N=A+R.height/2+Ye-O.y;if(O.height>=N)return;const I=N-O.height,$=O.y+O.height;n.resizeShape(O,{x:O.x,y:O.y,width:O.width,height:N}),U($,O.id,I)},we=(v,R,A)=>{if(v){const $=f(v),F=H(R);if($.height>=F)return;const G=F-$.height,K=p($),pe=K?K.y+K.height:$.y+$.height;n.resizeLane($,{x:$.x,y:$.y,width:$.width,height:F},!1),U(pe,K==null?void 0:K.id,G);return}if(!A)return;const O=k*(R+1);if(A.height>=O)return;const N=O-A.height,I=A.y+A.height;n.resizeShape(A,{x:A.x,y:A.y,width:A.width,height:O}),U(I,A.id,N)},He=new Map;for(const v of m)He.set(v.flow.target,(He.get(v.flow.target)??0)+1);const et=v=>(He.get(v)??0)<=1,Pt=(v,R,A)=>{if(!v)return!0;const O=l(v);return O?A-R.height/2>=O.y&&A+R.height/2<=O.y+O.height:!0},nt=g.map((v,R)=>({op:v,declared:R}));nt.sort((v,R)=>{const A=v.op.order??Number.POSITIVE_INFINITY,O=R.op.order??Number.POSITIVE_INFINITY;return A!==O?A-O:v.declared-R.declared});let St=80;for(const v of o.getAll())v.parent===u()&&"height"in v&&typeof v.y=="number"&&(St=Math.max(St,v.y+v.height+60));for(const{op:v}of nt){const R=v.participant,A=h.filter(re=>re.node.participant===R.id).length,O=((c0=R.lanes)==null?void 0:c0.length)??0,N=Math.max(1200,A*160+300),I=(R.lanes??[]).map(re=>H(b.get(re.id)??0)),$=I.reduce((re,Oe)=>re+Oe,0);O&&$<300&&(I[O-1]+=300-$);const F=Math.max(300,k*((b.get(`pool:${R.id}`)??0)+1)),G=R.blackBox||A+O===0?120:O?Math.max(300,$):F,K=r.createShape({type:"bpmn:Participant",businessObject:i.create("bpmn:Participant",{id:R.id,name:R.name,...v.order!==void 0?{"bwl:poolOrder":v.order}:{},...R.blackBox?{}:{processRef:i.create("bpmn:Process")}}),width:N,height:G,isExpanded:!0}),pe=n.createShape(K,{x:100+N/2,y:St+G/2},u()),Re=R.lanes??[];if(Re.length&&n.splitLane(pe,Re.length),Re.length){const re=o.filter(Oe=>{var ve;return Oe.type==="bpmn:Lane"&&((ve=p(Oe))==null?void 0:ve.id)===R.id}).sort((Oe,ve)=>Oe.y-ve.y);if(re.forEach((Oe,ve)=>{const Ce=Re[ve];Ce&&n.updateProperties(Oe,{id:Ce.id,name:Ce.name})}),I.some(Oe=>Oe!==pe.height/O)){let Oe=pe.y;re.forEach((ve,Ce)=>{const ct=I[Ce];n.resizeShape(ve,{x:ve.x,y:Oe,width:ve.width,height:ct}),Oe+=ct})}}St=pe.y+pe.height+60}const dn=v=>{var O;const R=C.get(v);if(R)return R.node.participant??"";const A=l(v);return A?A.type==="bpmn:Participant"?A.id:((O=p(A))==null?void 0:O.id)??"":""},Kt=new Map,dt=v=>{let R=Kt.get(v);return R||Kt.set(v,R={nodes:[],flows:[]}),R};for(const v of h)dt(v.node.participant??"").nodes.push(v);for(const v of m)dt(dn(v.flow.source)).flows.push(v);const Mt=v=>{var R;return i.create("bpmn:SequenceFlow",{id:v.id,name:v.name??((R=v.condition)==null?void 0:R.label)})},rn=(v,R)=>r.createShape({type:xs(v.type),businessObject:i.create(xs(v.type),{id:v.id,name:v.name,...R!==void 0?{"bwl:band":R}:{}})}),Vo=[...nt.map(({op:v})=>v.participant.id).filter(v=>Kt.has(v)),...[...Kt.keys()].filter(v=>!g.some(R=>R.participant.id===v))],Bn=v=>v.endsWith("Gateway");for(const v of Vo){const R=Kt.get(v),A=v?f(v):void 0,O=A?A.x+150:250;let N=A?A.y+80:120;const I=(se,ye,de)=>{if(se){const he=f(se);return he.y+Math.min(he.height/2,ce)+M(se,ye??0)*k}return ye!==void 0&&A?A.y+z+M(`pool:${v}`,ye)*k:de},$=(se,ye,de)=>{if(se){const he=f(se);return he.y+Math.min(he.height/2,ce)+ye*k}return A?A.y+z+ye*k:de},F=se=>se.participant?f(se.participant):u(),G=(se,ye,de,he,Ue,Je,kt)=>{const Xt=de!==void 0||he!==void 0,Se=M(de??`pool:${v}`,he??0);if((he===void 0||E(de,v,he,kt??Number.NaN))&&kt!==void 0&&Pt(de,ye,kt)&&!Y(se,ye,Ue,kt))return{x:Ue,y:kt};if(Xt)for(let X=0;X<4;X++){const Z=$(de,Se+X,Je);if(!Y(se,ye,Ue,Z))return we(de,Se+X,A),{x:Ue,y:Z}}const ke=I(de,he,Je);Xt?we(de,Se,A):Q(se,ye,ke);let ne=Ue;for(let X=0;X<64;X++){const Z=Y(se,ye,ne,ke);if(!Z)break;ne=Z.x+Z.width+D+ye.width/2}return{x:ne,y:ke}},K=new Set(R.flows.map(se=>se.flow.target)),pe=new Map;for(const se of R.nodes){if(K.has(se.node.id))continue;const ye=rn(se.node,se.band),de=W(se),he=se.node.lane?`${se.node.lane}|${de??""}`:de!==void 0?`band:${de}`:"",Ue=F(se.node),Je=G(Ue,ye,se.node.lane,de,pe.get(he)??O,N);n.createShape(ye,Je,Ue),pe.set(he,Je.x+ye.width+D),!se.node.lane&&de===void 0&&(N+=160)}const Re=new Set,re=new Map,Oe=new Map,ve=new Map;if(v&&ue.has(`pool:${v}`)){const se=new Map;for(const Se of R.flows)se.set(Se.flow.target,(se.get(Se.flow.target)??0)+1);const ye=Se=>I(Se.node.lane,J(Se),Number.NaN),de=new Set,he=Se=>{var X;const ke=(X=C.get(Se))==null?void 0:X.node.participant;if(ke)return l(ke);const ne=l(Se);if(ne)return ne.type==="bpmn:Participant"?ne:p(ne)},Ue=Se=>{const ke=[],ne=new Set([Se]),X=[Se];for(;X.length;){const Z=X.shift(),fe=C.get(Z);fe&&ke.push(fe);for(const me of R.flows)me.flow.source!==Z||ne.has(me.flow.target)||(se.get(me.flow.target)??0)!==1||(ne.add(me.flow.target),X.push(me.flow.target))}return ke},Je=Se=>{if(!A)return;const ke=new Set(Se.map(Z=>Z.node.id));let ne=!1,X=!1;for(const Z of x){if(!ke.has(Z.flow.source))continue;const fe=he(Z.flow.target);!fe||fe.id===A.id||(fe.y<A.y?ne=!0:X=!0)}return ne&&!X?"up":X&&!ne?"down":void 0};for(const Se of R.nodes){if(!Bn(Se.node.type))continue;const ke=I(Se.node.lane,W(Se),Number.NaN);if(Number.isNaN(ke))continue;const ne=[];for(const me of R.flows){if(me.flow.source!==Se.node.id)continue;const be=C.get(me.flow.target);if(!be||be.node.lane!==Se.node.lane||(se.get(be.node.id)??0)!==1)continue;const Ne=W(be);if(Ne===void 0)continue;const ut=I(be.node.lane,Ne,Number.NaN);if(Number.isNaN(ut))continue;const mn=Ue(be.node.id),At=Je(mn);At&&ne.push({subtree:mn,band:Ne,row:ut,dir:At})}if(!ne.some(me=>me.dir==="up")||!ne.some(me=>me.dir==="down")||!ne.some(me=>me.dir==="up"&&ne.some(be=>be.dir==="down"&&be.row<me.row)))continue;const Z=[...ne].sort((me,be)=>me.row-be.row);[...ne.filter(me=>me.dir==="up"),...ne.filter(me=>me.dir==="down")].sort((me,be)=>me.dir===be.dir?me.row-be.row:me.dir==="up"?-1:1).forEach((me,be)=>{const Ne=Z[be].band;if(Ne!==me.band){de.add(Se.node.id);for(const ut of me.subtree)W(ut)===me.band&&q.set(ut.node.id,Ne)}})}const kt=Se=>{if(!A)return;const ke=new Set(Se.map(Z=>Z.node.id));let ne=!1,X=!1;for(const Z of x){if(!ke.has(Z.flow.target))continue;const fe=he(Z.flow.source);!fe||fe.id===A.id||(fe.y<A.y?ne=!0:X=!0)}return ne&&!X?"up":X&&!ne?"down":void 0};for(const Se of R.nodes){if(!Bn(Se.node.type))continue;const ke=Se.node.lane??`pool:${v}`,ne=le.get(ke);if(!ne||ne.size<2)continue;const X=ne.get(0);if(X===void 0)continue;const Z=Math.max(...ne.values()),fe=X===Z&&X!==0?"down":void 0;if(!fe)continue;const me=[];for(const At of R.flows){if(At.flow.source!==Se.node.id)continue;const gt=C.get(At.flow.target);if(!gt||gt.node.lane!==Se.node.lane||(se.get(gt.node.id)??0)!==1)continue;const ns=J(gt);ns!==void 0&&me.push({t:gt,subtree:Ue(gt.node.id),band:ns})}const be=me.find(At=>(ne.get(At.band)??At.band)===X);if(!be||kt(be.subtree)===fe||Je(be.subtree)===fe)continue;const Ne=me.find(At=>At!==be&&kt(At.subtree)===fe);if(!Ne)continue;const ut=be.band,mn=Ne.band;for(const At of be.subtree)J(At)===ut&&q.set(At.node.id,mn);for(const At of Ne.subtree)J(At)===mn&&q.set(At.node.id,ut);de.add(Se.node.id)}for(const Se of R.nodes){if(!Bn(Se.node.type))continue;const ke=ye(Se);if(Number.isNaN(ke)||S.some(me=>{var be,Ne;return(((be=me.placement)==null?void 0:be.anchor)??(me.association?me.association.source===me.annotation.id?me.association.target:me.association.source:void 0))===Se.node.id&&((Ne=me.placement)==null?void 0:Ne.side.startsWith("bottom"))}))continue;let X,Z=!1,fe;for(const me of R.flows){if(me.flow.source!==Se.node.id)continue;const be=C.get(me.flow.target);if(!be||!be.node.lane&&W(be)===void 0)continue;const Ne=ye(be);Number.isNaN(Ne)||(Math.abs(Ne-ke)<.5&&(Z=!0),Ne>ke?!X||Ne>X.row?X={id:be.node.id,row:Ne,count:1}:Ne===X.row&&X.count++:Ne<ke&&be.node.lane===Se.node.lane&&(!fe||Ne>fe.row?fe={op:be,row:Ne,count:1}:Ne===fe.row&&fe.count++))}X&&X.count===1&&(se.get(X.id)??0)===1&&!de.has(Se.node.id)&&Re.add(X.id),!Z&&fe&&fe.count===1&&(se.get(fe.op.node.id)??0)===1&&!Te.has(Se.node.id)&&re.set(fe.op.node.id,{lane:Se.node.lane,band:J(Se)})}const Xt=new Map;for(const Se of x)Xt.set(Se.flow.target,[...Xt.get(Se.flow.target)??[],Se]);for(const Se of R.nodes){const ke=Xt.get(Se.node.id);if(!ke||ke.length!==1||!se.get(Se.node.id)||!Se.node.lane&&W(Se)===void 0||ft.has(Se.node.id))continue;const ne=(u0=C.get(ke[0].flow.source))==null?void 0:u0.node.participant,X=ne?l(ne):void 0;if(!X||!A||X.id===A.id)continue;const Z=Se.node.lane??`pool:${v}`,fe=le.get(Z);if(!fe)continue;const me=fe.get(0)??0,be=(fe.get(J(Se)??0)??me)-me;if(be===0)continue;const Ne=X.y<A.y;if(Ne&&be<0||!Ne&&be>0)continue;let ut;for(const[mn,At]of fe){const gt=At-me;(Ne&&gt<0&&(!ut||gt<ut.row)||!Ne&&gt>0&&(!ut||gt>ut.row))&&(ut={band:mn,row:gt})}ut&&Oe.set(Se.node.id,{lane:Se.node.lane,band:ut.band})}}const Ce=new Set;let ct=0;for(;ct++<R.nodes.length+2;){for(let de=0;de<R.nodes.length+R.flows.length+2;de++){let he=!1;for(const Ue of R.flows){const Je=Ue.flow;if(Ce.has(Je.id))continue;const kt=l(Je.source);if(!kt)continue;const Xt=l(Je.target),Se=C.get(Je.target);if(!Xt&&Se){const ke=rn(Se.node,Se.band),ne=J(Se);if(Se.node.lane||ne!==void 0){const X=F(Se.node),Z=kt,fe=Z.x+(ve.get(Je.source)??0)+Z.width+D,me=re.get(Je.target)??Oe.get(Je.target),be=G(X,ke,me?me.lane:Se.node.lane,me?me.band:ne,Re.has(Je.target)?Z.x+Z.width/2:fe,Number.NaN,me||!et(Je.target)?void 0:Z.y+Z.height/2),Ne=n.createShape(ke,be,X);Re.has(Je.target)&&ve.set(Je.target,fe-(Ne.x+Ne.width/2)),n.connect(kt,Ne,{type:"bpmn:SequenceFlow",businessObject:Mt(Je)})}else s.append(kt,ke,{connection:{type:"bpmn:SequenceFlow",businessObject:Mt(Je)}})}else if(Xt)n.connect(kt,Xt,{type:"bpmn:SequenceFlow",businessObject:Mt(Je)});else continue;Ce.add(Je.id),he=!0}if(!he)break}const se=R.nodes.filter(de=>!l(de.node.id));if(!se.length)break;const ye=se[0];{const de=rn(ye.node,ye.band),he=F(ye.node),Ue=W(ye);n.createShape(de,G(he,de,ye.node.lane,Ue,O,N),he),!ye.node.lane&&Ue===void 0&&(N+=160)}}}const ri=40,on=(v,R=()=>!0)=>{const A=l(v);if(!A)return[];const O=[A],N=new Set([v]);for(let I=0;I<O.length;I++){const $=O[I].id;for(const F of m){const G=F.flow.target;if(F.flow.source!==$||N.has(G)||!C.has(G))continue;N.add(G);const K=l(G);K&&R(K)&&O.push(K)}}return O},Vt=(v,R=()=>!0)=>{const A=l(v);if(!A)return[];const O=[A],N=new Set([v]);for(let I=0;I<O.length;I++){const $=O[I].id;for(const F of m){const G=F.flow.source;if(F.flow.target!==$||N.has(G)||!C.has(G))continue;N.add(G);const K=l(G);K&&R(K)&&O.push(K)}}return O},_n=30,Pi=v=>!("waypoints"in v&&v.waypoints)&&v.type!=="bpmn:Lane"&&v.type!=="label"&&typeof v.x=="number",hn=(v,R)=>{const A=new Set(v.flatMap($=>$.subtree.map(F=>F.id)));for(const $ of v){const F=($.pool.children??[]).filter(Pi).filter(K=>!A.has(K.id));if($.subtree.some(K=>F.some(pe=>K.x+R<pe.x+pe.width+_n&&K.x+R+K.width+_n>pe.x&&K.y<pe.y+pe.height&&K.y+K.height>pe.y)))return null}const O=v.map($=>$.pool.width),N=o.filter($=>$.type==="label").map($=>({label:$,x:$.x,y:$.y}));n.moveElements(v.flatMap($=>$.subtree),{x:R,y:0});const I=v.map($=>{const G=Math.max(...$.subtree.map(K=>K.x+K.width))+150-($.pool.x+$.pool.width);return G>0&&n.resizeShape($.pool,{x:$.pool.x,y:$.pool.y,width:$.pool.width+G,height:$.pool.height}),G});return()=>{n.moveElements(v.flatMap($=>$.subtree),{x:-R,y:0}),v.forEach(($,F)=>{I[F]>0&&n.resizeShape($.pool,{x:$.pool.x,y:$.pool.y,width:O[F],height:$.pool.height})});for(let $=0;$<3;$++){let F=0;for(const G of N){const K=G.x-G.label.x,pe=G.y-G.label.y;Math.abs(K)<=.5&&Math.abs(pe)<=.5||(n.moveElements([G.label],{x:K,y:pe}),F++)}if(!F)break}}},tt=v=>{var N,I;const R=new Map,A=new Map;for(const $ of o.getAll()){if($.type!=="bpmn:Participant")continue;const F=$;(F.children??[]).length||(R.set(F.id,F),A.set(F.id,[]))}for(const $ of o.getAll()){if($.type!=="bpmn:MessageFlow")continue;const F=$,G=(N=F.source)==null?void 0:N.id,K=(I=F.target)==null?void 0:I.id;G&&K&&A.has(G)&&A.get(G).push(K),G&&K&&A.has(K)&&A.get(K).push(G)}const O=[];for(const[$,F]of A)F.length&&F.every(G=>v.has(G))&&O.push(R.get($));return O},it=(v,R)=>{if(!v.length)return null;const A=new Set(v.map($=>$.id)),O=o.getAll().filter($=>$.type==="bpmn:Participant"&&!A.has($.id));if(v.some($=>O.some(F=>$.x+R<F.x+F.width+_n&&$.x+R+$.width+_n>F.x&&$.y<F.y+F.height&&$.y+$.height>F.y)))return null;const I=o.filter($=>$.type==="label").map($=>({label:$,x:$.x,y:$.y}));return n.moveElements(v,{x:R,y:0}),()=>{n.moveElements(v,{x:-R,y:0});for(let $=0;$<3;$++){let F=0;for(const G of I){const K=G.x-G.label.x,pe=G.y-G.label.y;Math.abs(K)<=.5&&Math.abs(pe)<=.5||(n.moveElements([G.label],{x:K,y:pe}),F++)}if(!F)break}}},Gx=()=>{let v=0;for(const R of o.getAll()){if(R.type!=="bpmn:DataInputAssociation"&&R.type!=="bpmn:DataOutputAssociation")continue;const A=R.waypoints??[];for(let O=1;O<A.length;O++)v+=Math.hypot(A[O].x-A[O-1].x,A[O].y-A[O-1].y)}return v},Vx=()=>Wn(pt(o)).filter(v=>v.kind==="edge-crosses-shape").length,Wx=v=>{const R=(v.children??[]).filter(Pi);let A=0;for(let O=0;O<R.length;O++)for(let N=O+1;N<R.length;N++){const I=R[O],$=R[N];I.x<$.x+$.width&&I.x+I.width>$.x&&I.y<$.y+$.height&&I.y+I.height>$.y&&A++}return A},Wo=()=>{const v=pt(o),R=A=>A.length>=2&&(A.every(O=>Math.abs(O.x-A[0].x)<.01)||A.every(O=>Math.abs(O.y-A[0].y)<.01));return{messages:v.edges.filter(A=>A.type==="bpmn:MessageFlow"&&A.waypoints.length===2).length,lines:v.edges.filter(A=>R(A.waypoints)).length}},eL=v=>{const R=N=>{const I=[N],$=new Set([N.id]);for(let F=0;F<I.length;F++)for(const G of I[F].outgoing??[]){if(G.type!=="bpmn:SequenceFlow")continue;const K=G.target;!K||$.has(K.id)||v.has(K.id)||!Pi(K)||K.x<N.x||($.add(K.id),I.push(K))}return I},A=new Set(v),O=[];for(const N of o.getAll()){if(N.type!=="bpmn:MessageFlow")continue;const I=N;if(!I.waypoints||I.waypoints.length!==2)continue;const $=I.source,F=I.target;if(!$||!F)continue;const G=v.has($.id);if(G===v.has(F.id))continue;const K=G?F:$,pe=p(K);if(!pe||A.has(K.id))continue;const Re=R(K).filter(re=>!A.has(re.id));if(Re.length){for(const re of Re)A.add(re.id);O.push({subtree:Re,pool:pe})}}return O};for(const v of qt(e,"sequenceFlow.update")){if(v.target===void 0)continue;const R=C.get(v.target);if(!R)continue;const A=l(v.target),O=l(v.id);if(!A||!O)continue;const N=v.source!==void 0?l(v.source):O.source,I=O.target;if(!N||!I||I.id===A.id)continue;const $=on(v.target),F=new Set($.map(he=>he.id)),G=Math.min(...$.map(he=>he.x)),K=Math.max(...$.map(he=>he.x+he.width)),pe=N.x+N.width,Re=K-G+ri*2-(I.x-pe);let re=[];if(Re>0){const he=p(A),Ue=(he==null?void 0:he.children)??[],Je=ke=>ke.type==="bpmn:Lane";re=(()=>{const ke=new Set;for(const X of Ue)Pi(X)&&!F.has(X.id)&&X.id!==N.id&&X.x>=I.x&&ke.add(X.id);const ne=[];for(const X of Ue){if(X.type!=="bpmn:DataStoreReference"&&X.type!=="bpmn:DataObjectReference")continue;const Z=X,me=[...Z.incoming??[],...Z.outgoing??[]].filter(be=>be.type==="bpmn:DataInputAssociation"||be.type==="bpmn:DataOutputAssociation").map(be=>be.source===Z?be.target:be.source);me.length&&me.every(be=>be!==void 0&&ke.has(be.id))&&ne.push(Z)}return ne})();const Xt=Ue.filter(ke=>!("waypoints"in ke&&ke.waypoints)&&!Je(ke)&&!F.has(ke.id)&&ke.id!==N.id&&ke.x>=I.x),Se=he?[he,...Ue.filter(ke=>Je(ke))]:[];if(Xt.length){const ke=new Set(Xt.map(be=>be.id)),ne=eL(ke),X=tt(ke),Z=new Set(ke);for(const be of ne)for(const Ne of be.subtree)Z.add(Ne.id);const fe=ne.length?tt(Z):X;n.createSpace(Xt,Se,{x:Re,y:0},"e",I.x-1);let me=!1;if(ne.length){const be=Wo(),Ne=hn(ne,Re);if(Ne){const ut=fe.length?it(fe,Re):null,mn=Wo();mn.messages>be.messages&&mn.lines>=be.lines?me=!0:(ut==null||ut(),Ne())}}if(!me){for(const be of ne){const Ne=Wo(),ut=hn([be],Re);if(!ut)continue;const mn=Wo();(mn.messages<=Ne.messages||mn.lines<Ne.lines)&&ut()}if(X.length){const be=Wo(),Ne=it(X,Re);if(Ne){const ut=Wo();(ut.messages<=be.messages||ut.lines<be.lines)&&Ne()}}}}}const Oe=N.y+N.height/2,ve=Oe-(A.y+A.height/2),Ce=R.band!==void 0,ct=Ce?[A]:$,se=(R.band===void 0||E(R.node.lane,R.node.participant,R.band,Oe))&&et(v.target)&&ct.every(he=>{var Ue;return Pt((Ue=C.get(he.id))==null?void 0:Ue.node.lane,he,he.y+he.height/2+ve)});se&&Ce?(n.moveElements($,{x:pe+ri-G,y:0}),n.moveElements([A],{x:0,y:ve})):n.moveElements($,{x:pe+ri-G,y:se?ve:0});const ye=p(A);if(!se&&R.node.lane===void 0&&R.band!==void 0&&ye){const he=ye.y+z+M(`pool:${R.node.participant??""}`,R.band)*k,Ue=he-(A.y+A.height/2);Ue!==0&&!Y(ye,A,A.x+A.width/2,he,F)&&n.moveElements([A],{x:0,y:Ue})}const de=re.length?p(re[0]):void 0;if(de){const he={assoc:Gx(),overlaps:Wx(de),crosses:Vx()},Ue=re.map(Z=>({st:Z,x:Z.x})),Je=o.filter(Z=>Z.type==="label").map(Z=>({label:Z,x:Z.x,y:Z.y})),kt=Math.min(...re.flatMap(Z=>[...Z.incoming??[],...Z.outgoing??[]].filter(fe=>fe.type==="bpmn:DataInputAssociation"||fe.type==="bpmn:DataOutputAssociation").map(fe=>(fe.source===Z?fe.target:fe.source).x))),Xt=new Set(re.map(Z=>Z.id)),Se=(de.children??[]).filter(Pi).filter(Z=>!Xt.has(Z.id));let ke=kt;for(const Z of[...re].sort((fe,me)=>fe.x-me.x)){let fe=ke;for(let me=0;me<100;me++){const be=Se.find(Ne=>fe<Ne.x+Ne.width+_n&&fe+Z.width+_n>Ne.x&&Z.y<Ne.y+Ne.height&&Z.y+Z.height>Ne.y);if(!be)break;fe=be.x+be.width+_n}fe!==Z.x&&n.moveElements([Z],{x:fe-Z.x,y:0}),ke=fe+Z.width+_n}const ne=ke+150-(de.x+de.width);ne>0&&n.resizeShape(de,{x:de.x,y:de.y,width:de.width+ne,height:de.height});const X={assoc:Gx(),overlaps:Wx(de),crosses:Vx()};if(X.assoc>=he.assoc||X.overlaps>he.overlaps||X.crosses>he.crosses){for(const{st:Z,x:fe}of Ue)Z.x!==fe&&n.moveElements([Z],{x:fe-Z.x,y:0});ne>0&&n.resizeShape(de,{x:de.x,y:de.y,width:de.width-ne,height:de.height});for(const Z of Je){const fe=Z.x-Z.label.x,me=Z.y-Z.label.y;(fe!==0||me!==0)&&n.moveElements([Z.label],{x:fe,y:me})}}}}const Ux=(v,R)=>{const A=R.target===v,O=f(R.source),N=f(R.target),I=A?"bpmn:DataOutputAssociation":"bpmn:DataInputAssociation";n.connect(O,N,R.id?{type:I,businessObject:i.create(I,{id:R.id})}:{type:I})},tL=100,qx=v=>{for(const R of g){if(!R.participant.blackBox)continue;const A=l(R.participant.id);if(!A)continue;const O=[];for(const I of x){const $=I.flow.source===R.participant.id?I.flow.target:I.flow.target===R.participant.id?I.flow.source:void 0,F=$?l($):void 0;F&&typeof F.x=="number"&&F.type!=="bpmn:Participant"&&O.push(F)}if(!O.length)continue;const N=Math.max(...O.map(I=>I.x+I.width/2))+tL;if(N>A.x+A.width&&n.resizeShape(A,{x:A.x,y:A.y,width:N-A.x,height:A.height}),!!v)for(const I of x){const $=l(I.flow.id),F=I.flow.source===R.participant.id?I.flow.target:I.flow.target===R.participant.id?I.flow.source:void 0,G=F?l(F):void 0;if(!$||!G||G.type==="bpmn:Participant")continue;const K=G.x+G.width/2;if(K<A.x+10||K>A.x+A.width-10)continue;const pe=A.y>G.y,Re=pe?G.y+G.height:G.y,re=pe?A.y:A.y+A.height,Oe=I.flow.source===R.participant.id?[{x:K,y:re},{x:K,y:Re}]:[{x:K,y:Re},{x:K,y:re}],ve=pt(o),Ce={...ve.edges.find(ct=>ct.id===I.flow.id),waypoints:Oe};un(Ce,Vn(ve)).length||n.updateWaypoints($,Oe)}}};qx(!1);for(const v of x){const R=v.flow;n.connect(f(R.source),f(R.target),{type:"bpmn:MessageFlow",businessObject:i.create("bpmn:MessageFlow",{id:R.id,name:R.name})})}{const A=new Set([...m.map(G=>G.flow.id),...x.map(G=>G.flow.id)].filter(G=>!!G)),O=o.filter(G=>!!G.waypoints),N=(G,K)=>Math.abs(K.x-G.x)<2?"L":Math.abs(K.x-(G.x+G.width))<2?"R":Math.abs(K.y-G.y)<2?"T":Math.abs(K.y-(G.y+G.height))<2?"B":void 0,I=new Map,$=(G,K,pe)=>{if(!G||!K||typeof G.x!="number")return;const Re=N(G,K);if(!Re)return;let re=I.get(G.id);re||I.set(G.id,re=new Map),re.set(Re,[...re.get(Re)??[],pe])};for(const G of O){const K=G.waypoints;!K||K.length<2||($(G.source,K[0],{id:G.id,dir:"out"}),$(G.target,K[K.length-1],{id:G.id,dir:"in"}))}const F=new Set;for(const[G,K]of I){const pe=l(G);if(!pe||typeof pe.x!="number"||![...K.values()].some(ye=>{const de=ye.filter(he=>he.dir==="in");return ye.length>=3&&de.length>=1&&ye.some(he=>he.dir==="out")&&de.some(he=>A.has(he.id))}))continue;const re=p(pe);if(!re||F.has(re.id)||(re.children??[]).some(ye=>ye.type==="bpmn:Lane"))continue;const Oe=(l0=K.get("T"))!=null&&l0.length?(p0=K.get("B"))!=null&&p0.length?void 0:"B":"T";if(!Oe||(Oe==="T"?pe.y-re.y:re.y+re.height-(pe.y+pe.height))>=k)continue;const Ce=(re.children??[]).filter(ye=>!("waypoints"in ye&&ye.waypoints)&&ye.type!=="label"&&typeof ye.x=="number"),ct=re.y+re.height;n.resizeShape(re,{x:re.x,y:re.y,width:re.width,height:re.height+k});const se=u().children.filter(ye=>!("waypoints"in ye&&ye.waypoints)&&ye.id!==re.id&&typeof ye.y=="number"&&ye.y>=ct);se.length&&n.moveElements(se,{x:0,y:k}),Oe==="T"&&Ce.length&&n.moveElements(Ce,{x:0,y:k}),F.add(re.id)}}const nd=20,Yx=4,nL=2,iL=[10,30,80],Uo=()=>{const v=pt(o);return{bad:Wn(v).filter(R=>R.kind==="edge-crosses-shape"||R.kind==="edge-overlap-opposite"||R.kind==="edge-overlap-mixed").length,crossings:Yd(v),straight:v.edges.filter(R=>R.type==="bpmn:MessageFlow"&&R.waypoints.length===2).length}},qo=v=>{const R=pt(o),A=R.edges.find(O=>O.id===v);return A?un(A,Vn(R)).length:0},Pu=v=>qo(v)>0,Au=v=>pt(o).edges.filter(R=>R.type==="bpmn:MessageFlow"&&R.id!==v&&R.waypoints.length===2).length,rL=(v,R,A)=>hn([{subtree:v,pool:R}],A),Kx=(v,R)=>R.bad>v.bad||R.crossings>v.crossings&&R.straight<=v.straight&&R.bad>=v.bad,Tu=(v,R)=>Kx(v,R)||R.straight<v.straight,Mu=(v,R,A=()=>!0,O=Kx)=>{const N=Uo(),I=hn(v,R);if(!I)return!1;const $=Uo();return O(N,$)||!A()?(I(),!1):!0},Xx=(v,R,A,O=()=>!0)=>Mu([{subtree:v,pool:R}],A,O),Yr=v=>{var R;return!!((R=C.get(v))!=null&&R.node.participant)},es=new Map;for(const v of x){if(!Yr(v.flow.target))continue;const R=es.get(v.flow.target)??[];R.push(v),es.set(v.flow.target,R)}const id=[...es.keys()],Zx=new Set(m.map(v=>v.flow.target)),Qx=v=>nt.findIndex(({op:R})=>R.participant.id===v);id.sort((v,R)=>{var N,I;const A=Zx.has(v)?1:0,O=Zx.has(R)?1:0;return A!==O?A-O:Qx((N=C.get(v))==null?void 0:N.node.participant)-Qx((I=C.get(R))==null?void 0:I.node.participant)});const Kr=v=>v.x+v.width/2,oL=v=>{const R=new Map;for(const N of o.getAll()){const I=N;if(!I.waypoints||!I.source||!I.target)continue;(R.get(I.source.id)??R.set(I.source.id,[]).get(I.source.id)).push(I.target.id)}const A=new Set([v]),O=[v];for(let N=0;N<O.length;N++)for(const I of R.get(O[N])??[])A.has(I)||(A.add(I),O.push(I));return A},aL=(v,R)=>{const A=oL(R);let O;for(const N of o.getAll()){const I=N;if(I.type!=="bpmn:MessageFlow"||!I.source||!I.target||I.target.id!==v||A.has(I.source.id))continue;const $=I.source;if(typeof $.x!="number"||$.type==="bpmn:Participant")continue;const F=Kr($);(O===void 0||F>O)&&(O=F)}return O},rd=(v,R)=>{const A=l(v.flow.source);if(A)return A.type==="bpmn:Participant"?aL(A.id,R):Kr(A)},Jx=v=>{let R;for(const A of es.get(v)??[]){const O=rd(A,v);O!==void 0&&(!R||O>R.cx)&&(R={op:A,cx:O})}return R==null?void 0:R.op},sL=v=>{const R=Jx(v),A=l(v),O=R?rd(R,v):void 0;return A&&O!==void 0?O-Kr(A):void 0},cL=v=>{const R=sL(v);return R!==void 0&&Math.abs(R)<nd},e0=(v,R,A,O,N)=>{var I;for(let $=!0;$;){$=!1;for(const F of x){if(F.flow.id===A)continue;const G=R.has(F.flow.source),K=R.has(F.flow.target);if(G===K||O(G?F.flow.source:F.flow.target))continue;const pe=G?F.flow.target:F.flow.source;if(N(pe)||!Yr(pe))continue;const Re=l(F.flow.id);if(!(Re!=null&&Re.waypoints)||Re.waypoints.length!==2)continue;const re=l(pe),Oe=(I=C.get(pe))==null?void 0:I.node.participant;if(!re||!Oe)continue;const ve=on(pe,Ce=>Ce.x>=re.x).filter(Ce=>!R.has(Ce.id));if(!(!ve.length||ve.some(Ce=>N(Ce.id)))){for(const Ce of ve)R.add(Ce.id);v.set(Oe,[...v.get(Oe)??[],...ve]),$=!0}}}return[...v].map(([$,F])=>({subtree:F,pool:f($)}))},t0=(v,R,A,O,N)=>e0(new Map([[R,[...v]]]),new Set(v.map(I=>I.id)),O,I=>I===A,I=>I===N),od=v=>{const R=Jx(v);if(!R)return null;const A=l(v),O=l(R.flow.source),N=rd(R,v);if(!A||!O||N===void 0)return null;const I=N-Kr(A);if(I>=nd){const $=C.get(v).node.participant,F=on(v,G=>G.x>=A.x);return{groups:t0(F,$,v,R.flow.id,R.flow.source),dx:I}}if(-I>=nd&&Yr(R.flow.source)){const $=C.get(R.flow.source).node.participant,F=on(R.flow.source,G=>G.x>=O.x&&!cL(G.id));return{groups:t0(F,$,R.flow.source,R.flow.id,v),dx:-I}}return null},n0=()=>id.map(v=>({id:v,plan:od(v)})).filter(v=>!!v.plan).sort((v,R)=>Math.min(...v.plan.groups.flatMap(A=>A.subtree.map(O=>O.x)))-Math.min(...R.plan.groups.flatMap(A=>A.subtree.map(O=>O.x)))).map(v=>v.id);for(let v=0;v<3;v++){const R=Uo(),A=[];for(const N of n0()){const I=od(N);if(!I)continue;const $=hn(I.groups,I.dx);$&&A.push($)}if(!A.length)break;if(!Tu(R,Uo()))continue;for(const N of A.reverse())N();let O=!1;for(const N of n0()){const I=od(N);I&&Mu(I.groups,I.dx,()=>!0,Tu)&&(O=!0)}if(!O)break}for(const v of id.flatMap(R=>es.get(R)??[])){if(!Pu(v.flow.id))continue;const R=l(v.flow.target);if(!R)continue;const A=f(C.get(v.flow.target).node.participant),O=on(v.flow.target,F=>F.x>=R.x),N=R.width+D,I=qo(v.flow.id),$=Au(v.flow.id);for(let F=1;F<=Yx;F++){const G=()=>qo(v.flow.id)<I&&Au(v.flow.id)>=$;if(Xx(O,A,N*F,G))break}}for(const v of x){if(!Pu(v.flow.id))continue;const R=l(v.flow.source),A=l(v.flow.target);if(!R||!A||R.type==="bpmn:Participant"||A.type==="bpmn:Participant")continue;const O=R.x+R.width/2;if(Math.abs(O-(A.x+A.width/2))>15)continue;const[N,I]=R.y<A.y?[R.y+R.height,A.y]:[A.y+A.height,R.y],$=[...C.values()].map(F=>l(F.node.id)).filter(F=>!!F&&F.id!==R.id&&F.id!==A.id).filter(F=>F.x<=O&&O<=F.x+F.width&&F.y+F.height>N&&F.y<I).sort((F,G)=>F.x-G.x);for(const F of $){const G=(f0=C.get(F.id))==null?void 0:f0.node.participant,K=G?l(G):void 0;if(!K)continue;const pe=[...C.values()].filter(de=>de.node.participant===G).map(de=>de.node.id),Re=de=>de.map(he=>l(he)).filter(he=>!!he),Oe=[Vt(F.id,de=>{var he;return((he=C.get(de.id))==null?void 0:he.node.participant)===G}),Re(pe)].filter(de=>de.length),ve=F.width+D,Ce=qo(v.flow.id),ct=Au(v.flow.id),se=()=>qo(v.flow.id)<Ce&&Au(v.flow.id)>=ct;let ye=!1;for(const de of Oe){for(let he=1;he<=Yx;he++)if(Xx(de,K,ve*he,se)){ye=!0;break}if(ye)break}if(!Pu(v.flow.id))break}}for(const v of x){if(!Pu(v.flow.id))continue;const R=l(v.flow.id);if(((d0=R==null?void 0:R.waypoints)==null?void 0:d0.length)!==2)continue;const A=l(v.flow.source),O=l(v.flow.target);if(!A||!O||A.type==="bpmn:Participant"||O.type==="bpmn:Participant"||!Yr(v.flow.source)||!Yr(v.flow.target)||Math.abs(Kr(A)-Kr(O))>nL)continue;const N=Kr(A),I=R.waypoints.map(Ce=>Ce.y),[$,F]=[Math.min(...I),Math.max(...I)],G=Vn(pt(o)).filter(Ce=>Ce.id!==A.id&&Ce.id!==O.id&&Ce.x<N&&N<Ce.x+Ce.width&&$<Ce.y+Ce.height&&Ce.y<F);if(!G.length)continue;const K=(h0=C.get(v.flow.source))==null?void 0:h0.node.participant,pe=(m0=C.get(v.flow.target))==null?void 0:m0.node.participant;if(!K||!pe)continue;const Re=new Map;for(const[Ce,ct,se]of[[v.flow.source,A,K],[v.flow.target,O,pe]]){const ye=Re.get(se)??[],de=on(Ce,he=>he.x>=ct.x).filter(he=>!ye.some(Ue=>Ue.id===he.id));Re.set(se,[...ye,...de])}const re=new Set([...Re.values()].flat().map(Ce=>Ce.id)),Oe=e0(Re,re,v.flow.id,Ce=>Ce===v.flow.source||Ce===v.flow.target,()=>!1),ve=Math.max(...G.map(Ce=>Ce.x+Ce.width));for(const Ce of iL){const ct=ve+Ce-N;if(ct<=0)continue;if(Mu(Oe,ct,()=>{var ye,de;return qo(v.flow.id)===0&&((de=(ye=l(v.flow.id))==null?void 0:ye.waypoints)==null?void 0:de.length)===2},Tu))break}}{const v=A=>A.y+A.height/2,R=[];for(const A of C.keys()){if(!Yr(A))continue;const O=m.filter($=>$.flow.target===A);if(O.length!==1)continue;const N=l(O[0].flow.source),I=l(A);!N||!I||!C.has(N.id)||Math.abs(v(N)-v(I))>1||I.x-(N.x+N.width)<=D+1||R.push({id:A,pred:N,node:I})}R.sort((A,O)=>A.node.x-O.node.x);for(const{id:A}of R){const O=C.get(A),N=l(A),I=l(m.find(re=>re.flow.target===A).flow.source);if(!N||!I)continue;const $=N.x-(I.x+I.width);if($<=D+1)continue;const F=f(O.node.participant),G=on(A,re=>re.x>=N.x),K=Uo(),pe=rL(G,F,-($-D));if(!pe)continue;const Re=Uo();(Re.bad>K.bad||Re.crossings>=K.crossings||Re.straight<K.straight)&&pe()}}qx(!0);for(const v of y){const R=v.associations??[],A=R.map(I=>I.source===v.dataStore.id?I.target:I.source).map(l).find(Boolean),O=A?p(A)??u():u(),N=A?{x:A.x+A.width/2,y:A.y+A.height+110}:{x:200,y:St+60};n.createShape({type:"bpmn:DataStoreReference",businessObject:i.create("bpmn:DataStoreReference",{id:v.dataStore.id,name:v.dataStore.name})},N,O);for(const I of R)Ux(v.dataStore.id,I)}for(const v of _){const A=f(v.association.target).type==="bpmn:DataStoreReference"?v.association.target:v.association.source;Ux(A,v.association)}let i0=0;const Xr=10,r0=40,uL=(v,R)=>{const A=R.map(G=>p(G)).filter(G=>!!G);for(const G of A){const K=Xr,pe=G.y,Re=G.y+G.height,re=G.x,Oe=G.x+G.width;if(Math.abs(v.y-pe)<K){const ve=pe+K-v.y;v.y+=ve,v.height-=ve}if(Math.abs(v.y+v.height-Re)<K&&(v.height=Re-K-v.y),Math.abs(v.x-re)<K){const ve=re+K-v.x;v.x+=ve,v.width-=ve}Math.abs(v.x+v.width-Oe)<K&&(v.width=Oe-K-v.x)}if(!A.length)return;const O=Math.min(...A.map(G=>G.y)),N=Math.max(...A.map(G=>G.y+G.height)),I=O-v.y,$=v.y+v.height-N,F=r0-Xr;if(I>0!=$>0)if(I>0&&I<F){const G=I+Xr;v.y+=G,v.height-=G}else $>0&&$<F&&(v.height-=$+Xr)},lL=(v,R)=>{const A=Xr,O=30,N=o.filter(I=>I.type==="bpmn:Group"&&I.id!==R);for(const I of N){const $=I.x,F=I.x+I.width,G=I.y,K=I.y+I.height,pe=v.y<K&&G<v.y+v.height,Re=v.x<F&&$<v.x+v.width;if(pe){if(Math.abs(v.x-F)<A){const re=Math.min(F+A-v.x,O);re>0&&v.width-re>0&&(v.x+=re,v.width-=re)}if(Math.abs(v.x+v.width-$)<A){const re=Math.min(v.x+v.width-($-A),O);re>0&&v.width-re>0&&(v.width-=re)}}if(Re){if(Math.abs(v.y-K)<A){const re=Math.min(K+A-v.y,O);re>0&&v.height-re>0&&(v.y+=re,v.height-=re)}if(Math.abs(v.y+v.height-G)<A){const re=Math.min(v.y+v.height-(G-A),O);re>0&&v.height-re>0&&(v.height-=re)}}}},ad=(v,R)=>{const A=r0,O=Math.min(...v.map(G=>G.x))-A,N=Math.min(...v.map(G=>G.y))-A,I=Math.max(...v.map(G=>G.x+G.width))+A,$=Math.max(...v.map(G=>G.y+G.height))+A,F={x:O,y:N,width:I-O,height:$-N};return uL(F,v),lL(F,R),F};for(const v of P){const R=(v.group.members??[]).map(l).filter(N=>!!N);let A;R.length?A=ad(R,v.group.id):(A={x:300+i0*350,y:40,width:300,height:200},i0++);const O=n.createShape({type:"bpmn:Group",businessObject:i.create("bpmn:Group",{id:v.group.id}),width:A.width,height:A.height},{x:A.x+A.width/2,y:A.y+A.height/2},u());v.group.name&&n.updateLabel(O,v.group.name),(g0=v.group.members)!=null&&g0.length&&L(O,"bwl:Members",{refs:v.group.members.join(" ")})}{const v=o.filter(N=>!!N.waypoints),R=new Map,A=(N,I)=>{!N||!I||(R.has(N)||R.set(N,new Set),R.get(N).add(I))};for(const N of v){const I=(y0=N.source)==null?void 0:y0.id,$=(v0=N.target)==null?void 0:v0.id;A(I,$),((b0=N.type)!=null&&b0.includes("DataOutputAssociation")||(_0=N.type)!=null&&_0.includes("DataInputAssociation")||N.type==="bpmn:Association")&&A($,I)}const O=o.filter(N=>N.type==="bpmn:Group");for(const N of O){const $=(((x0=N.businessObject.extensionElements)==null?void 0:x0.values)??[]).find(se=>se.$type==="bwl:Members"),F=(($==null?void 0:$.refs)??"").split(" ").filter(Boolean);if(!F.length)continue;const G=new Set(F),K=[...F];for(;K.length;){const se=K.shift();for(const ye of R.get(se)??[])G.has(ye)||(G.add(ye),K.push(ye))}const pe=N.x,Re=N.x+N.width,re=N.y,Oe=N.y+N.height,ve=se=>m.filter(ye=>ye.flow.target===se).length,Ce=se=>{var de;const ye=((de=l(se))==null?void 0:de.type)??"";if(ye==="bpmn:StartEvent"&&ve(se)===0)return!1;if(ye.endsWith("Gateway")){const he=m.filter(Ue=>Ue.flow.target===se).map(Ue=>Ue.flow.source);if(he.length&&he.every(Ue=>{var Je;return((Je=l(Ue))==null?void 0:Je.type)==="bpmn:StartEvent"&&ve(Ue)===0}))return!1}return!0},ct=o.filter(se=>Pi(se)).filter(se=>se.type!=="bpmn:Group"&&se.type!=="bpmn:Participant"&&se.type!=="bpmn:TextAnnotation"&&!G.has(se.id)&&Yr(se.id)&&Ce(se.id)&&se.x<Re&&se.x+se.width>pe&&se.y<Oe&&se.y+se.height>re);if(ct.length)for(const se of[-1,1]){const ye=ct.filter(ne=>(ne.x+ne.width-pe<=Re-ne.x?-1:1)===se);if(!ye.length)continue;const de=[];for(const ne of ye){const X=de.find(Z=>Z.some(fe=>ne.y<fe.y+fe.height&&ne.y+ne.height>fe.y));X?X.push(ne):de.push([ne])}const he=new Map;for(const ne of de){let X=se<0?pe-Xr:Re+Xr;for(const Z of[...ne].sort((fe,me)=>se<0?me.x-fe.x:fe.x-me.x)){const fe=se<0?Math.min(Z.x,X-Z.width):Math.max(Z.x,X);X=se<0?fe-_n:fe+Z.width+_n,fe!==Z.x&&Math.sign(fe-Z.x)===se&&he.set(Z.id,fe-Z.x)}}const Ue=new Map,Je=ne=>Ue.get(ne)===ne||!Ue.get(ne)?ne:Je(Ue.get(ne));for(const ne of ye)Ue.set(ne.id,ne.id);for(const ne of x){const X=he.has(ne.flow.source)?ne.flow.source:void 0,Z=he.has(ne.flow.target)?ne.flow.target:void 0;if(!X||!Z)continue;const fe=l(ne.flow.id);((w0=fe==null?void 0:fe.waypoints)==null?void 0:w0.length)===2&&Ue.set(Je(X),Je(Z))}const kt=new Map;for(const ne of ye){if(!he.has(ne.id))continue;const X=Je(ne.id);kt.set(X,[...kt.get(X)??[],ne])}const Xt=[...kt.values()].sort((ne,X)=>se<0?Math.min(...ne.map(Z=>Z.x))-Math.min(...X.map(Z=>Z.x)):Math.max(...X.map(Z=>Z.x))-Math.max(...ne.map(Z=>Z.x))),Se=[];let ke=!0;for(const ne of Xt){const X=ne.map(me=>he.get(me.id)??0).reduce((me,be)=>Math.abs(be)>Math.abs(me)?be:me,0),Z=new Map;let fe=!0;for(const me of ne){const be=p(me);if(!be){fe=!1;break}Z.has(be.id)||Z.set(be.id,{subtree:[],pool:be}),Z.get(be.id).subtree.push(me)}fe&&Mu([...Z.values()],X,()=>!0,Tu)?Se.push({shapes:ne,dx:X}):ke=!1}if(!ke)for(const ne of Se.reverse())n.moveElements(ne.shapes,{x:-ne.dx,y:0})}}}{const v=new Set([...P.map(R=>R.group.id),...qt(e,"group.update").map(R=>R.id)]);for(const R of o.filter(A=>A.type==="bpmn:Group")){if(v.has(R.id))continue;const O=(((E0=R.businessObject.extensionElements)==null?void 0:E0.values)??[]).find(F=>F.$type==="bwl:Members"),N=((O==null?void 0:O.refs)??"").split(" ").filter(Boolean).map(l).filter(F=>!!F);!N.length||!N.some(F=>{const G=d.get(F.id);return!G||G.x!==F.x||G.y!==F.y})||!N.some(F=>F.x<R.x||F.y<R.y||F.x+F.width>R.x+R.width||F.y+F.height>R.y+R.height)||n.resizeShape(R,ad(N,R.id))}}{const R=new Map(co(pt(o)).map(F=>[F.owner,F.rect])),A=o.filter(F=>!!F.waypoints),O=new Map,N=(F,G)=>{!F||!G||(O.has(F)||O.set(F,new Set),O.get(F).add(G))};for(const F of A){const G=(S0=F.source)==null?void 0:S0.id,K=(R0=F.target)==null?void 0:R0.id;N(G,K),((C0=F.type)!=null&&C0.includes("DataOutputAssociation")||(P0=F.type)!=null&&P0.includes("DataInputAssociation")||F.type==="bpmn:Association")&&N(K,G)}const I=F=>m.filter(G=>G.flow.target===F).length,$=F=>{var K;const G=((K=l(F))==null?void 0:K.type)??"";if(G==="bpmn:StartEvent"&&I(F)===0)return!1;if(G.endsWith("Gateway")){const pe=m.filter(Re=>Re.flow.target===F).map(Re=>Re.flow.source);if(pe.length&&pe.every(Re=>{var re;return((re=l(Re))==null?void 0:re.type)==="bpmn:StartEvent"&&I(Re)===0}))return!1}return!0};for(const F of o.filter(G=>G.type==="bpmn:Group")){const K=(((A0=F.businessObject.extensionElements)==null?void 0:A0.values)??[]).find(X=>X.$type==="bwl:Members"),pe=((K==null?void 0:K.refs)??"").split(" ").filter(Boolean);if(!pe.length)continue;const Re=pe.map(l).filter(X=>!!X);if(!Re.length||!(P.some(X=>X.group.id===F.id)||qt(e,"group.update").some(X=>X.id===F.id)||Re.some(X=>{const Z=d.get(X.id);return!Z||Z.x!==X.x||Z.y!==X.y})))continue;const Oe=new Set(pe),ve=[...pe];for(;ve.length;){const X=ve.shift();for(const Z of O.get(X)??[])Oe.has(Z)||(Oe.add(Z),ve.push(Z))}const Ce=F.x,ct=F.x+F.width,se=F.y,ye=F.y+F.height,de=X=>{const Z=R.get(X.id),fe={x:X.x,y:X.y,width:X.width,height:X.height};return Z?[fe,{x:Z.x,y:Z.y,width:Z.width,height:Z.height}]:[fe]},he=Re.flatMap(de),Ue=Math.min(...he.map(X=>X.x)),Je=Math.max(...he.map(X=>X.x+X.width)),kt=Math.min(...he.map(X=>X.y)),Xt=Math.max(...he.map(X=>X.y+X.height)),Se={L:Ue-Ce,R:ct-Je,T:kt-se,B:ye-Xt},ke=o.filter(X=>Pi(X)).filter(X=>X.type!=="bpmn:Group"&&X.type!=="bpmn:Participant"&&X.type!=="bpmn:TextAnnotation"&&!Oe.has(X.id)&&$(X.id)&&X.x<ct&&X.x+X.width>Ce&&X.y<ye&&X.y+X.height>se);if(!ke.length)continue;const ne={L:0,R:0,T:0,B:0};for(const X of ke){const Z=de(X),fe=Math.min(...Z.map(gt=>gt.x)),me=Math.max(...Z.map(gt=>gt.x+gt.width)),be=Math.min(...Z.map(gt=>gt.y)),Ne=Math.max(...Z.map(gt=>gt.y+gt.height)),ut={L:me-Ce,R:ct-fe,T:Ne-se,B:ye-be},mn=["L","R","T","B"].filter(gt=>ut[gt]<=Se[gt]+.001);if(!mn.length)continue;const At=mn.reduce((gt,ns)=>ut[ns]<ut[gt]?ns:gt,mn[0]);ne[At]=Math.max(ne[At],Math.min(ut[At]+10,Se[At]))}!ne.L&&!ne.R&&!ne.T&&!ne.B||n.resizeShape(F,{x:F.x+ne.L,y:F.y+ne.T,width:F.width-ne.L-ne.R,height:F.height-ne.T-ne.B})}}const o0=v=>{const R=v.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 A=v;return{x:A.x,y:A.y,width:A.width,height:A.height}};let ts=0;const a0=12,s0=14,pL=15,fL=300,dL=v=>{const R=v.split(`
7
- `),A=Math.max(...R.map(I=>oo(I,a0))),O=Math.max(100,Math.min(fL,Math.ceil(A)+s0)),N=R.reduce((I,$)=>I+Math.max(1,Math.ceil((oo($,a0)+s0)/O)),0);return{width:O,height:Math.max(30,N*pL+10)}};for(const v of S){const R=v.association,A=((T0=v.placement)==null?void 0:T0.anchor)??(R?R.source===v.annotation.id?R.target:R.source:void 0),O=A?l(A):void 0,N=O?o0(O):void 0,I=dL(v.annotation.text??"");let $;if(N&&v.placement){const[pe,Re]=ws[v.placement.side],re=v.placement.offset??50;$={x:N.x+N.width/2+pe*(N.width/2+I.width/2+re),y:N.y+N.height/2+Re*(N.height/2+I.height/2+re)}}else N?($={x:N.x+N.width/2+180+ts%3*260,y:N.y-110-ts%2*95},ts++):($={x:300+ts*260,y:60},ts++);const F=O?p(O)??u():u(),G=F;N&&typeof G.x=="number"&&typeof G.width=="number"&&G.type==="bpmn:Participant"&&($=ll(o,N,I,G,v.placement?{placement:v.placement}:{from:$}));const K=n.createShape({type:"bpmn:TextAnnotation",width:I.width,height:I.height,businessObject:i.create("bpmn:TextAnnotation",{id:v.annotation.id,text:v.annotation.text})},$,F);if(R){const pe=Re=>Re===v.annotation.id?K:f(Re);n.connect(pe(R.source),pe(R.target),R.id?{type:"bpmn:Association",businessObject:i.create("bpmn:Association",{id:R.id})}:{type:"bpmn:Association"})}v.placement&&L(K,"bwl:Placement",T(v.placement))}for(const v of qt(e,"association.add")){const R=v.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 v of qt(e,"node.update")){let R=f(v.id);if(v.type&&xs(v.type)!==R.type&&(R=c.replaceElement(R,{type:xs(v.type)})),v.name!==void 0&&n.updateProperties(R,{name:v.name??void 0}),v.lane||v.band!==void 0){v.band!==void 0&&n.updateProperties(R,{"bwl:band":v.band});const A=R.y+R.height/2,O=p(R),N=v.lane?f(v.lane):((O==null?void 0:O.children)??[]).find($=>$.type==="bpmn:Lane"&&A>=$.y&&A<=$.y+$.height);v.band!==void 0&&we(N==null?void 0:N.id,v.band,O);const I=N?N.y+(v.band===void 0?N.height/2:Math.min(N.height/2,ce)+M(N.id,v.band)*k):v.band!==void 0&&O?O.y+z+M(`pool:${O.id}`,v.band)*k:void 0;if(I!==void 0){const $=I-A;$!==0&&n.moveElements([R],{x:0,y:$})}}}for(const v of qt(e,"sequenceFlow.update")){const R=f(v.id);if(v.source!==void 0||v.target!==void 0){const A=R,O=v.source!==void 0?f(v.source):A.source,N=v.target!==void 0?f(v.target):A.target,I=$=>({x:$.x+$.width/2,y:$.y+$.height/2});n.reconnect(A,O,N,[I(O),I(N)])}v.name!==void 0&&n.updateProperties(R,{name:v.name??void 0}),v.condition!==void 0&&n.updateProperties(R,{name:((M0=v.condition)==null?void 0:M0.label)??void 0})}for(const v of qt(e,"messageFlow.update"))v.name!==void 0&&n.updateProperties(f(v.id),{name:v.name??void 0});for(const v of qt(e,"dataStore.update"))v.name!==void 0&&n.updateProperties(f(v.id),{name:v.name??void 0});for(const v of qt(e,"annotation.update")){const R=f(v.id);if(v.text!==void 0&&n.updateProperties(R,{text:v.text}),v.placement===null)L(R,"bwl:Placement",null);else if(v.placement){const A=f(v.placement.anchor),O=o0(A),N=p(A)??u(),I=typeof N.x=="number"&&typeof N.width=="number"&&N.type==="bpmn:Participant",[$,F]=ws[v.placement.side],G=v.placement.offset??50,K={x:O.x+O.width/2+$*(O.width/2+R.width/2+G),y:O.y+O.height/2+F*(O.height/2+R.height/2+G)},pe=I?ll(o,O,{width:R.width,height:R.height},N,{placement:v.placement,selfId:v.id}):K;n.moveElements([R],{x:pe.x-(R.x+R.width/2),y:pe.y-(R.y+R.height/2)}),L(R,"bwl:Placement",T(v.placement))}}for(const v of qt(e,"group.update")){const R=f(v.id);if(v.name!==void 0&&n.updateLabel(R,v.name??""),v.members){const A=v.members.map(l).filter(O=>!!O);A.length&&n.resizeShape(R,ad(A,v.id)),L(R,"bwl:Members",{refs:v.members.join(" ")})}}}function pl(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 d1(e,t,n){var l,f;const{elementRegistry:i}=e,r=e.modeling,o=p=>Wn(p).filter(d=>!t.has(ai(d))),a=p=>{var d;return((d=i.get(p))==null?void 0:d.type)==="bpmn:TextAnnotation"},s=pt(i),c=o(s),u=[...new Set(c.flatMap(pl))].filter(p=>n.has(p)&&a(p));if(u.length)for(const p of u){const d=i.get(p);if(!d||typeof d.x!="number"||typeof d.width!="number")continue;let g=d.parent,h;for(;g;){if(g.type==="bpmn:Participant"){h=g;break}g=g.parent}if(!h){const Ee=d.x+d.width/2,Ye=d.y+d.height/2;h=i.getAll().find(ze=>{if(ze.type!=="bpmn:Participant")return!1;const Y=ze;return typeof Y.x=="number"&&typeof Y.width=="number"&&Ee>=Y.x&&Ee<=Y.x+Y.width&&Ye>=Y.y&&Ye<=Y.y+Y.height})}if(!h||typeof h.x!="number"||typeof h.width!="number")continue;const x=(((l=d.businessObject.extensionElements)==null?void 0:l.values)??[]).find(Ee=>Ee.$type==="bwl:Placement"),y=[...d.incoming??[],...d.outgoing??[]].find(Ee=>Ee.type==="bpmn:Association"),_=(x!=null&&x.anchor?i.get(x.anchor):void 0)??(y?((f=y.source)==null?void 0:f.id)===p?y.target:y.source:void 0);if(!_)continue;const S=_.waypoints,P=S!=null&&S.length?{x:S[Math.floor((S.length-1)/2)].x,y:S[Math.floor((S.length-1)/2)].y,width:0,height:0}:{x:_.x,y:_.y,width:_.width,height:_.height},C={width:d.width,height:d.height},L={x:d.x+d.width/2,y:d.y+d.height/2},T=x==null?void 0:x.side,j=[];T&&T in ws&&j.push(ll(i,P,C,h,{placement:{side:T,offset:(x==null?void 0:x.offset)??null},selfId:p}));for(const[Ee,Ye]of[[-1,0],[1,0],[0,-1],[0,1]])for(let ze=1;ze<=f1;ze++)j.push({x:L.x+Ee*Oh*ze,y:L.y+Ye*Oh*ze});const k={...s,edges:s.edges.filter(Ee=>Ee.id!==(y==null?void 0:y.id))},D=o(k),z=D.filter(Ee=>pl(Ee).includes(p)).length;if(!z)continue;let ce;for(const Ee of j){const Ye=Ee.x-L.x,ze=Ee.y-L.y;if(!Ye&&!ze||Ee.x-C.width/2<h.x||Ee.x+C.width/2>h.x+h.width||Ee.y-C.height/2<h.y||Ee.y+C.height/2>h.y+h.height)continue;const Y={...k,shapes:k.shapes.map(Me=>Me.id===p?{...Me,x:Me.x+Ye,y:Me.y+ze}:Me)},ue=o(Y),oe=ue.filter(Me=>pl(Me).includes(p)).length;if(oe>=z||ue.length>D.length)continue;const le=Math.abs(Ye)+Math.abs(ze);if((!ce||oe<ce.mine||oe===ce.mine&&(ue.length<ce.all||ue.length===ce.all&&le<ce.dist))&&(ce={x:Ee.x,y:Ee.y,mine:oe,all:ue.length,dist:le}),ce.mine===0&&ce.all<D.length)break}ce&&r.moveElements([d],{x:ce.x-L.x,y:ce.y-L.y})}}function Lh(e,t,n=Dh){const i=kh(e),r=Mh(t,ih(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=pt(i.elementRegistry),s=new Set(Wn(a).map(ai)),c=new Set(a.edges.map(h=>h.id)),u=new Set(a.shapes.map(h=>h.id)),l=nl(a).length,f=e.get("commandStack");try{fd(f,()=>{n(t,i),ph(i,c);const h=al(i,s);xh(i,s,c),hh(i,c),i1(i,c),yh(i,s,c),s1(i,s,c),Rh(i,s,c),Sh(i,c),Ph(i,u),d1(i,s,u),al(i,s,h)})}catch(h){return{ok:!1,issues:[{kind:"lower-failed",message:h instanceof Error?h.message:String(h)}],findings:[],stats:o}}const p=pt(i.elementRegistry),d=Wn(p).filter(h=>!s.has(ai(h))),g=Kd(p);return{ok:!0,issues:[],findings:d,stats:{edgeCrossings:{before:l,after:g.pairs.length,pairs:g.pairs,solidPairs:g.solidPairs,dashedPairs:g.dashedPairs,mixedPairs:g.mixedPairs,crossPoolMessages:g.crossPoolMessages}}}}function h1(e){const t=e.slice(e.indexOf(":")+1);return t.charAt(0).toLowerCase()+t.slice(1)}function m1(e,t){return typeof e.get=="function"?e.get(t):e[t]}function Ih(e,t){const n=m1(e,t);return typeof n=="number"&&Number.isFinite(n)?n:void 0}function Bh(e,t){var i;return(((i=e.extensionElements)==null?void 0:i.values)??[]).find(r=>(r==null?void 0:r.$type)===t)}function g1(e){return typeof e=="string"&&Ou.includes(e)}function si(e){if(typeof e=="string")return e;const t=e==null?void 0:e.id;return typeof t=="string"?t:void 0}function Nh(e){const t=e.rootElements??[],n=t.find(Y=>Y.$type==="bpmn:Collaboration"),i=new Map(t.filter(Y=>Y.$type==="bpmn:Process").map(Y=>[Y.id,Y])),r=[],o=[],a=[],s=[],c=[],u=[],l={poolOrders:{},bands:{},placements:{}},f=[],p=[],d=[],g=[],h=[],m=[],x=new Set,y=new Set,_=Y=>{Y&&x.add(Y)},S=Y=>{x.add(Y),y.add(Y)},P=Y=>{const ue=Bh(Y,"bwl:Placement");if(!ue)return;const oe=typeof ue.anchor=="string"?ue.anchor:void 0;if(!oe||!g1(ue.side))return;const le=typeof ue.offset=="number"?ue.offset:void 0;h.push({owner:Y.id,anchor:oe,side:ue.side,...le!==void 0?{offset:le}:{}})},C=Y=>{const ue=Bh(Y,"bwl:Members"),oe=typeof(ue==null?void 0:ue.refs)=="string"?ue.refs.split(/\s+/).filter(Boolean):[];oe.length&&m.push({owner:Y.id,refs:oe})},L=Y=>{var ue;for(const oe of Y)switch(_(oe.id),oe.$type){case"bpmn:TextAnnotation":S(oe.id),s.push({id:oe.id,text:typeof oe.text=="string"?oe.text:""}),P(oe);break;case"bpmn:Association":d.push({id:oe.id,type:oe.$type,source:si(oe.sourceRef),target:si(oe.targetRef)});break;case"bpmn:Group":{S(oe.id);const le=(ue=oe.categoryValueRef)==null?void 0:ue.value;c.push({id:oe.id,...typeof le=="string"&&le?{name:le}:{}}),C(oe);break}default:u.push({id:oe.id,type:oe.$type,reason:"type-outside-mvp"})}},T=Y=>{for(const ue of Y.flowElements??[])_(ue.id),u.push({id:ue.id,type:ue.$type,reason:"inside-container"}),(ue.flowElements??[]).length&&T(ue);for(const ue of Y.artifacts??[])_(ue.id),u.push({id:ue.id,type:ue.$type,reason:"inside-container"})},j=(Y,ue)=>{const oe=Y.flowElements??[],le=(Y.laneSets??[]).flatMap(W=>W.lanes??[]),Me=new Map;for(const W of le){_(W.id);for(const q of W.flowNodeRef??[]){const J=si(q);J&&Me.set(J,W.id)}}for(const W of oe){if(_(W.id),W.$type==="bpmn:SequenceFlow"){f.push({id:W.id,source:si(W.sourceRef),target:si(W.targetRef),...typeof W.name=="string"&&W.name?{name:W.name}:{}});continue}if(W.$type==="bpmn:DataStoreReference"){S(W.id),a.push({id:W.id,...W.name?{name:W.name}:{}});continue}const q=h1(W.$type);if(!sd(q)){u.push({id:W.id,type:W.$type,reason:"type-outside-mvp"});continue}S(W.id);const J=q==="boundaryEvent"?si(W.attachedToRef):void 0;o.push({id:W.id,type:q,...W.name?{name:W.name}:{},...ue?{participant:ue}:{},...Me.has(W.id)?{lane:Me.get(W.id)}:{},...J?{attachedTo:J}:{}}),q==="subProcess"&&T(W);const Te=Ih(W,"bwl:band");Te!==void 0&&(l.bands[W.id]=Te);for(const ft of W.dataOutputAssociations??[])_(ft.id),g.push({id:ft.id,type:ft.$type,source:W.id,target:si(ft.targetRef)});for(const ft of W.dataInputAssociations??[])_(ft.id),g.push({id:ft.id,type:ft.$type,source:si((ft.sourceRef??[])[0]),target:W.id})}L(Y.artifacts??[])};if(n){const Y=new Set;for(const ue of n.participants??[]){S(ue.id);const oe=si(ue.processRef);oe&&Y.add(oe);const le=oe?i.get(oe):void 0,Me=((le==null?void 0:le.laneSets)??[]).flatMap(Te=>Te.lanes??[]),W=Me.map(Te=>({id:Te.id,...Te.name?{name:Te.name}:{}}));for(const Te of W)S(Te.id);const q=!le||(le.flowElements??[]).length===0&&Me.length===0&&(le.artifacts??[]).length===0;r.push({id:ue.id,...ue.name?{name:ue.name}:{},...q?{blackBox:!0}:{},...W.length?{lanes:W}:{}});const J=Ih(ue,"bwl:poolOrder");J!==void 0&&(l.poolOrders[ue.id]=J),le&&j(le,ue.id)}for(const ue of n.messageFlows??[])_(ue.id),p.push({id:ue.id,source:si(ue.sourceRef),target:si(ue.targetRef),...typeof ue.name=="string"&&ue.name?{name:ue.name}:{}});L(n.artifacts??[]);for(const[ue,oe]of i)!Y.has(ue)&&(oe.flowElements??[]).length>0&&u.push({id:ue,type:oe.$type,reason:"unreachable-process"})}else for(const Y of i.values())j(Y);const k=[],D=[],z=[],ce=[],Ee=(Y,ue)=>!!Y&&!!ue&&y.has(Y)&&y.has(ue);for(const Y of f){if(!Ee(Y.source,Y.target)){u.push({id:Y.id,type:"bpmn:SequenceFlow",reason:"endpoint-outside-mvp"});continue}k.push({id:Y.id,source:Y.source,target:Y.target,...Y.name?{name:Y.name}:{}}),y.add(Y.id)}for(const Y of p){if(!Ee(Y.source,Y.target)){u.push({id:Y.id,type:"bpmn:MessageFlow",reason:"endpoint-outside-mvp"});continue}D.push({id:Y.id,source:Y.source,target:Y.target,...Y.name?{name:Y.name}:{}}),y.add(Y.id)}for(const Y of g){if(!Ee(Y.source,Y.target)){u.push({id:Y.id??"",type:Y.type,reason:"endpoint-outside-mvp"});continue}ce.push({...Y.id?{id:Y.id}:{},source:Y.source,target:Y.target}),Y.id&&y.add(Y.id)}for(const Y of d){if(!Ee(Y.source,Y.target)){u.push({id:Y.id??"",type:Y.type,reason:"endpoint-outside-mvp"});continue}z.push({...Y.id?{id:Y.id}:{},source:Y.source,target:Y.target})}const Ye=new Map(c.map(Y=>[Y.id,Y]));for(const{owner:Y,refs:ue}of m){const oe=ue.filter(Me=>x.has(Me)),le=Ye.get(Y);le&&oe.length&&(le.members=oe)}for(const Y of h)x.has(Y.anchor)&&(l.placements[Y.owner]={anchor:Y.anchor,side:Y.side,...Y.offset!==void 0?{offset:Y.offset}:{}});return{definition:{...r.length?{participants:r}:{},nodes:o,sequenceFlows:k,...D.length?{messageFlows:D}:{},...a.length?{dataStores:a}:{},...ce.length?{dataAssociations:ce}:{},...s.length?{annotations:s}:{},...z.length?{associations:z}:{},...c.length?{groups:c}:{}},hints:l,omitted:u}}async function y1(e){const{definitions:t,warnings:n}=await Ku(e);return{...Nh(t),warnings:n}}function v1(e,t,n,i={}){return{documentId:e,baseVersion:t,ops:[...n],origin:i.origin??"agent",clientOpId:(i.mkClientOpId??(()=>crypto.randomUUID()))()}}async function $h(e,t,{currentVersion:n}){if(t.baseVersion!==n)return{status:"conflict",baseVersion:t.baseVersion,currentVersion:n};const i=Lh(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 _1(){const e=Ot.ref(!1),t=Ot.ref(!0),n=Ot.ref(!1);let i,r;const o=()=>{e.value=!0};function a(u,l){u.get("canvas").getContainer().style.pointerEvents=l?"":"none";const f=u.get("keyboard");l?(r&&f.bind(r),r=void 0):r||(r=f.getBinding(),f.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 f=s();n.value=!0;try{const p=await $h(f,u,{currentVersion:l});return p.status==="applied"&&(e.value=!1),p}finally{n.value=!1}},async importXml(u){const{warnings:l}=await s().importXML(u);return e.value=!1,{warnings:Xu(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 _e(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}function x1(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var fl={exports:{}},Fh;function w1(){if(Fh)return fl.exports;Fh=1;var e=fl.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},fl.exports}var E1=w1(),S1=x1(E1);function hi(e){if(!(this instanceof hi))return new hi(e);e=e||[128,36,1],this._seed=e.length?S1.rack(e[0],e[1],e[2]):e}hi.prototype.next=function(e){return this._seed(e||!0)},hi.prototype.nextPrefixed=function(e,t){var n;do n=e+this.next(!0);while(this.assigned(n));return this.claim(n,t),n},hi.prototype.claim=function(e,t){this._seed.set(e,t||!0)},hi.prototype.assigned=function(e){return this._seed.get(e)||!1},hi.prototype.unclaim=function(e){delete this._seed.hats[e]},hi.prototype.clear=function(){var e=this._seed.hats,t;for(t in e)this.unclaim(t)};const jt={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:[0,"",""]};jt.td=jt.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],jt.option=jt.optgroup=[1,'<select multiple="multiple">',"</select>"],jt.thead=jt.tbody=jt.colgroup=jt.caption=jt.tfoot=[1,"<table>","</table>"],jt.polyline=jt.ellipse=jt.polygon=jt.circle=jt.text=jt.line=jt.path=jt.rect=jt.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];function mt(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:f}=l;return f.remove(),f}let[r,o,a]=Object.hasOwn(jt,i)?jt[i]:jt._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 R1(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 vn(e,...t){const n=e.style;return B(t,function(i){i&&B(i,function(r,o){n[o]=r})}),e}function ln(e,t,n){return arguments.length==2?e.getAttribute(t):n===null?e.removeAttribute(t):(e.setAttribute(t,n),e)}const C1=Object.prototype.toString;function bt(e){return new Zi(e)}function Zi(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}Zi.prototype.add=function(e){return this.list.add(e),this},Zi.prototype.remove=function(e){return C1.call(e)=="[object RegExp]"?this.removeMatching(e):(this.list.remove(e),this)},Zi.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},Zi.prototype.toggle=function(e,t){return typeof t<"u"?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},Zi.prototype.array=function(){return Array.from(this.list)},Zi.prototype.has=Zi.prototype.contains=function(e){return this.list.contains(e)};function Es(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function kr(e,t,n){var i=n?e:e.parentNode;return i&&typeof i.closest=="function"&&i.closest(t)||null}function P1(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Ss={},jh;function A1(){if(jh)return Ss;jh=1;var e,t,n;function i(){e=window.addEventListener?"addEventListener":"attachEvent",t=window.removeEventListener?"removeEventListener":"detachEvent",n=e!=="addEventListener"?"on":""}return Ss.bind=function(r,o,a,s){return e||i(),r[e](n+o,a,s||!1),a},Ss.unbind=function(r,o,a,s){return t||i(),r[t](n+o,a,s||!1),a},Ss}var Hh=A1(),T1=P1(Hh),$e=R1({__proto__:null,default:T1},[Hh]),zh=["focus","blur"];function M1(e,t,n,i,r){return zh.indexOf(n)!==-1&&(r=!0),$e.bind(e,n,function(o){var a=o.target||o.srcElement;o.delegateTarget=kr(a,t,!0),o.delegateTarget&&i.call(e,o)},r)}function k1(e,t,n,i){return zh.indexOf(t)!==-1&&(i=!0),$e.unbind(e,t,n,i)}var An={bind:M1,unbind:k1};function dl(e,t){return e&&typeof e.matches=="function"&&e.matches(t)||!1}function rt(e,t){return t=t||document,t.querySelector(e)}function Rs(e,t){return t=t||document,t.querySelectorAll(e)}function mi(e){e.parentNode&&e.parentNode.removeChild(e)}function O1(e,t){if(e.ownerDocument!==t.ownerDocument)try{return t.ownerDocument.importNode(e,!0)}catch{}return e}function D1(e,t){return t.appendChild(O1(e,t))}function Fe(e,t){return D1(t,e),e}var hl=2,Gh={"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":hl,"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":hl,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function L1(e,t){return Gh[t]?e.style[t]:e.getAttributeNS(null,t)}function Vh(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=Gh[i];r?(r===hl&&typeof n=="number"&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function I1(e,t){var n=Object.keys(t),i,r;for(i=0,r;r=n[i];i++)Vh(e,r,t[r])}function xe(e,t,n){if(typeof t=="string")if(n!==void 0)Vh(e,t,n);else return L1(e,t);else I1(e,t);return e}const B1=Object.prototype.toString;function Xe(e){return new Qi(e)}function Qi(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}Qi.prototype.add=function(e){return this.list.add(e),this},Qi.prototype.remove=function(e){return B1.call(e)=="[object RegExp]"?this.removeMatching(e):(this.list.remove(e),this)},Qi.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},Qi.prototype.toggle=function(e,t){return typeof t<"u"?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},Qi.prototype.array=function(){return Array.from(this.list)},Qi.prototype.has=Qi.prototype.contains=function(e){return this.list.contains(e)};function Cs(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function Wh(e){return e.cloneNode(!0)}var ml={svg:"http://www.w3.org/2000/svg"},Uh='<svg xmlns="'+ml.svg+'"';function N1(e){var t=!1;e.substring(0,4)==="<svg"?e.indexOf(ml.svg)===-1&&(e=Uh+e.substring(4)):(e=Uh+">"+e+"</svg>",t=!0);var n=$1(e);if(!t)return n;for(var i=document.createDocumentFragment(),r=n.firstChild;r.firstChild;)i.appendChild(r.firstChild);return i}function $1(e){var t;return t=new DOMParser,t.async=!1,t.parseFromString(e,"text/xml")}function Pe(e,t){var n;return e=e.trim(),e.charAt(0)==="<"?(n=N1(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(ml.svg,e),t&&xe(n,t),n}var gl=null;function qh(){return gl===null&&(gl=Pe("svg")),gl}function Yh(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}function F1(e,t,n,i,r,o){var a=qh().createSVGMatrix();switch(arguments.length){case 0:return a;case 1:return Yh(a,e);case 6:return Yh(a,{a:e,b:t,c:n,d:i,e:r,f:o})}}function Jo(e){return qh().createSVGTransform()}var Kh=/([&<>]{1})/g,j1=/([&<>\n\r"]{1})/g,H1={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"'"};function yl(e,t){function n(i,r){return H1[r]||r}return e.replace(t,n)}function Xh(e,t){var n,i,r,o,a;switch(e.nodeType){case 3:t.push(yl(e.textContent,Kh));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,'="',yl(o.value,j1),'"');if(e.hasChildNodes()){for(t.push(">"),a=e.childNodes,n=0,i=a.length;n<i;++n)Xh(a.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("<!--",yl(e.nodeValue,Kh),"-->");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function z1(e){for(var t=e.firstChild,n=[];t;)Xh(t,n),t=t.nextSibling;return n.join("")}function Zh(e,t){return z1(e)}function Ht(e){var t=e.parentNode;return t&&t.removeChild(e),e}function G1(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function V1(e,t){var n,i;for(e.clear(),n=0;i=t[n];n++)e.appendItem(G1(e,i))}function ea(e,t){var n=e.transform.baseVal;return t&&(Array.isArray(t)||(t=[t]),V1(n,t)),n.consolidate()}const W1=/^class[ {]/;function U1(e){return W1.test(e.toString())}function vl(e){return Array.isArray(e)}function bl(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Ps(...e){e.length===1&&vl(e[0])&&(e=e[0]),e=[...e];const t=e.pop();return t.$inject=e,t}const q1=/constructor\s*[^(]*\(\s*([^)]*)\)/m,Y1=/^(?:async\s+)?(?:function\s*[^(]*)?(?:\(\s*([^)]*)\)|(\w+))/m,K1=/\/\*([^*]*)\*\//m;function X1(e){if(typeof e!="function")throw new Error(`Cannot annotate "${e}". Expected a function!`);const t=e.toString().match(U1(e)?q1:Y1);if(!t)return[];const n=t[1]||t[2];return n&&n.split(",").map(i=>{const r=i.match(K1);return(r&&r[1]||i).trim()})||[]}function Qh(e,t){const n=t||{get:function(_,S){if(i.push(_),S===!1)return null;throw s(`No provider for "${_}"!`)}},i=[],r=this._providers=Object.create(n._providers||null),o=this._instances=Object.create(null),a=o.injector=this,s=function(_){const S=i.join(" -> ");return i.length=0,new Error(S?`${_} (Resolving: ${S})`:_)};function c(_,S){if(!r[_]&&_.includes(".")){const P=_.split(".");let C=c(P.shift());for(;P.length;)C=C[P.shift()];return C}if(bl(o,_))return o[_];if(bl(r,_)){if(i.indexOf(_)!==-1)throw i.push(_),s("Cannot resolve circular dependency!");return i.push(_),o[_]=r[_][0](r[_][1]),i.pop(),o[_]}return n.get(_,S)}function u(_,S){if(typeof S>"u"&&(S={}),typeof _!="function")if(vl(_))_=Ps(_.slice());else throw s(`Cannot invoke "${_}". Expected a function!`);const C=(_.$inject||X1(_)).map(L=>bl(S,L)?S[L]:c(L));return{fn:_,dependencies:C}}function l(_){const{fn:S,dependencies:P}=u(_),C=Function.prototype.bind.call(S,null,...P);return new C}function f(_,S,P){const{fn:C,dependencies:L}=u(_,P);return C.apply(S,L)}function p(_){return Ps(S=>_.get(S))}function d(_,S){if(S&&S.length){const P=Object.create(null),C=Object.create(null),L=[],T=[],j=[];let k,D,z,ce;for(let Ee in r)k=r[Ee],S.indexOf(Ee)!==-1&&(k[2]==="private"?(D=L.indexOf(k[3]),D===-1?(z=k[3].createChild([],S),ce=p(z),L.push(k[3]),T.push(z),j.push(ce),P[Ee]=[ce,Ee,"private",z]):P[Ee]=[j[D],Ee,"private",T[D]]):P[Ee]=[k[2],k[1]],C[Ee]=!0),(k[2]==="factory"||k[2]==="type")&&k[1].$scope&&S.forEach(Ye=>{k[1].$scope.indexOf(Ye)!==-1&&(P[Ee]=[k[2],k[1]],C[Ye]=!0)});S.forEach(Ee=>{if(!C[Ee])throw new Error('No provider for "'+Ee+'". Cannot use provider from the parent!')}),_.unshift(P)}return new Qh(_,a)}const g={factory:f,type:l,value:function(_){return _}};function h(_,S){const P=_.__init__||[];return function(){P.forEach(C=>{typeof C=="string"?S.get(C):S.invoke(C)})}}function m(_){const S=_.__exports__;if(S){const P=_.__modules__,C=Object.keys(_).reduce((D,z)=>(z!=="__exports__"&&z!=="__modules__"&&z!=="__init__"&&z!=="__depends__"&&(D[z]=_[z]),D),Object.create(null)),L=(P||[]).concat(C),T=d(L),j=Ps(function(D){return T.get(D)});S.forEach(function(D){r[D]=[j,D,"private",T]});const k=(_.__init__||[]).slice();return k.unshift(function(){T.init()}),_=Object.assign({},_,{__init__:k}),h(_,T)}return Object.keys(_).forEach(function(P){if(P==="__init__"||P==="__depends__")return;const C=_[P];if(C[2]==="private"){r[P]=C;return}const L=C[0],T=C[1];r[P]=[g[L],Z1(L,T),L]}),h(_,a)}function x(_,S){return _.indexOf(S)!==-1||(_=(S.__depends__||[]).reduce(x,_),_.indexOf(S)!==-1)?_:_.concat(S)}function y(_){const S=_.reduce(x,[]).map(m);let P=!1;return function(){P||(P=!0,S.forEach(C=>C()))}}this.get=c,this.invoke=f,this.instantiate=l,this.createChild=d,this.init=y(e)}function Z1(e,t){return e!=="value"&&vl(t)&&(t=Ps(t.slice())),t}var Q1=1e3;function ki(e,t){var n=this;t=t||Q1,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)})}ki.prototype.canRender=function(e){},ki.prototype.drawShape=function(e,t){},ki.prototype.drawConnection=function(e,t){},ki.prototype.getShapePath=function(e){},ki.prototype.getConnectionPath=function(e){};function Or(e){return e.flat().join(",").replace(/,?([A-Za-z]),?/g,"$1")}function J1(e){return["M",e.x,e.y]}function _l(e){return["L",e.x,e.y]}function eS(e,t,n){return["C",e.x,e.y,t.x,t.y,n.x,n.y]}function tS(e,t){const n=e.length,i=[J1(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(_l(a));continue}const c=Math.min(t,xl(a.x-o.x,a.y-o.y),xl(s.x-a.x,s.y-a.y));if(!c){i.push(_l(a));continue}const u=As(a,o,c),l=As(a,o,c*.5),f=As(a,s,c),p=As(a,s,c*.5);i.push(_l(u)),i.push(eS(l,p,f))}return i}function As(e,t,n){const i=t.x-e.x,r=t.y-e.y,o=xl(i,r),a=n/o;return{x:e.x+i*a,y:e.y+r*a}}function xl(e,t){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2))}function ta(e,t,n){Be(t)&&(n=t,t=null),t||(t={});const i=Pe("path",t);return Be(n)&&(i.dataset.cornerRadius=String(n)),wl(i,e)}function wl(e,t){const n=parseInt(e.dataset.cornerRadius,10)||0;return xe(e,{d:Or(tS(t,n))}),e}function Ts(e){var t=new Set(e);return We(e,function(n){for(var i=n.parent;i;){if(t.has(i))return!1;i=i.parent}return!0})}function Dr(e,t,n){n=n||0,De(e)||(e=[e]),B(e,function(i,r){var o=t(i,r,n);De(o)&&o.length&&Dr(o,t,n+1)})}function El(e,t,n){var i=new Set,r=new Set;return Dr(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 na(e,t){return El(e)}function nS(e,t,n){Cr(t)&&(t=!0),Wt(t)&&(n=t,t=!0),n=n||{};var i=ia(n.allShapes),r=ia(n.allConnections),o=ia(n.enclosedElements),a=ia(n.enclosedConnections),s=ia(n.topLevel,t&&eo(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,B(l.incoming,c),B(l.outgoing,c),l.children}return Dr(e,u),{allShapes:i,allConnections:r,topLevel:s,enclosedConnections:a,enclosedElements:o}}function Dt(e,t){t=!!t,De(e)||(e=[e]);var n,i,r,o;return B(e,function(a){var s=a;a.waypoints&&!t&&(s=Dt(a.waypoints,!0));var c=s.x,u=s.y,l=s.height||0,f=s.width||0;(c<n||n===void 0)&&(n=c),(u<i||i===void 0)&&(i=u),(c+f>r||r===void 0)&&(r=c+f),(u+l>o||o===void 0)&&(o=u+l)}),{x:n,y:i,height:o-i,width:r-n}}function po(e,t){var n={};return B(e,function(i){var r=i;r.waypoints&&(r=Dt(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 Jh(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function em(e){return!!(e&&e.isFrame)}function ia(e,t){return V({},e||{},t||{})}var iS=1;function Ji(e,t){ki.call(this,e,iS),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})}_e(Ji,ki),Ji.prototype.canRender=function(){return!0},Ji.prototype.drawShape=function(t,n,i){var r=Pe("rect");return xe(r,{x:0,y:0,width:n.width||0,height:n.height||0}),em(n)?xe(r,V({},this.FRAME_STYLE,i||{})):xe(r,V({},this.SHAPE_STYLE,i||{})),Fe(t,r),r},Ji.prototype.drawConnection=function(t,n,i){var r=ta(n.waypoints,V({},this.CONNECTION_STYLE,i||{}));return Fe(t,r),r},Ji.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 Or(a)},Ji.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 Or(o)},Ji.$inject=["eventBus","styles"];function rS(){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=Cn(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 oS={__init__:["defaultRenderer"],defaultRenderer:["type",Ji],styles:["type",rS]};function Ct(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return n!==-1&&e.splice(n,1),n}function Tt(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 Sl(e,t){return!e||!t?-1:e.indexOf(t)}function ra(e,t){return!e||!t?-1:Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Rl(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=ra(e,t);return Math.abs(r/o)<=i}var aS=2;function Oi(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 Pr(t,function(i){return Math.abs(n[e]-i[e])<=aS})}function tm(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 Cl(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}var cS=/,?([a-z]),?/gi,nm=parseFloat,Lt=Math,er=Lt.PI,gi=Lt.min,yi=Lt.max,im=Lt.pow,tr=Lt.abs,uS=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/ig,lS=/(-?\d*\.?\d*(?:e[-+]?\d+)?)[\s]*,?[\s]*/ig,rm=Array.isArray||function(e){return e instanceof Array};function pS(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function fS(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 dS(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)?(fS(o,i),r[i]):(o.length>=1e3&&delete r[o.shift()],o.push(i),r[i]=e(...arguments),r[i])}return t}function hS(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(uS,function(i,r,o){var a=[],s=r.toLowerCase();for(o.replace(lS,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=Al,n}function mS(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 gS(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 Pl(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 Al(){return this.join(",").replace(cS,"$1")}function yS(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=Al,t}function om(e,t,n,i,r,o,a,s,c){var u=1-c,l=im(u,3),f=im(u,2),p=c*c,d=p*c,g=l*e+f*3*c*n+u*3*c*c*r+d*a,h=l*t+f*3*c*i+u*3*c*c*o+d*s;return{x:Ms(g),y:Ms(h)}}function am(e){var t=ES(...e);return Pl(t.x0,t.y0,t.x1-t.x0,t.y1-t.y0)}function nr(e,t,n){return t>=e.x&&t<=e.x+e.width&&n>=e.y&&n<=e.y+e.height}function vS(e,t){return e=Pl(e),t=Pl(t),nr(t,e.x,e.y)||nr(t,e.x2,e.y)||nr(t,e.x,e.y2)||nr(t,e.x2,e.y2)||nr(e,t.x,t.y)||nr(e,t.x2,t.y)||nr(e,t.x,t.y2)||nr(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 sm(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 cm(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,f=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],p=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],d=0,g=0;g<l;g++){var h=u*f[g]+u,m=sm(h,e,n,r,a),x=sm(h,t,i,o,s),y=m*m+x*x;d+=p[g]*Lt.sqrt(y)}return u*d}function bS(e,t,n,i,r,o,a,s){if(!(yi(e,n)<gi(r,a)||gi(e,n)>yi(r,a)||yi(t,i)<gi(o,s)||gi(t,i)>yi(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 f=Ms(c/l),p=Ms(u/l),d=+f.toFixed(2),g=+p.toFixed(2);if(!(d<+gi(e,n).toFixed(2)||d>+yi(e,n).toFixed(2)||d<+gi(r,a).toFixed(2)||d>+yi(r,a).toFixed(2)||g<+gi(t,i).toFixed(2)||g>+yi(t,i).toFixed(2)||g<+gi(o,s).toFixed(2)||g>+yi(o,s).toFixed(2)))return{x:f,y:p}}}}function Ms(e){return Math.round(e*1e11)/1e11}function _S(e,t,n){var i=am(e),r=am(t);if(!vS(i,r))return[];var o=cm(...e),a=cm(...t),s=lm(e)?1:~~(o/5)||1,c=lm(t)?1:~~(a/5)||1,u=new Array(s+1),l=new Array(c+1),f={},p=[],d,g;for(d=0;d<s+1;d++){var h=om(...e,d/s);u[d]={x:h.x,y:h.y,t:d/s}}for(d=0;d<c+1;d++)h=om(...t,d/c),l[d]={x:h.x,y:h.y,t:d/c};for(d=0;d<s;d++)for(g=0;g<c;g++){var m=u[d],x=u[d+1],y=l[g],_=l[g+1],S=tr(x.x-m.x)<.01?"y":"x",P=tr(_.x-y.x)<.01?"y":"x",C=bS(m.x,m.y,x.x,x.y,y.x,y.y,_.x,_.y),L;if(C){if(L=C.x.toFixed(9)+"#"+C.y.toFixed(9),f[L])continue;f[L]=!0;var T=m.t+tr((C[S]-m[S])/(x[S]-m[S]))*(x.t-m.t),j=y.t+tr((C[P]-y[P])/(_[P]-y[P]))*(_.t-y.t);T>=0&&T<=1&&j>=0&&j<=1&&p.push({x:C.x,y:C.y,t1:T,t2:j})}}return p}function um(e,t,n){e=dm(e),t=dm(t);for(var i,r,o,a,s,c,u,l,f,p,d=n?0:[],g=0,h=e.length;g<h;g++){var m=e[g];if(m[0]=="M")i=s=m[1],r=c=m[2];else{m[0]=="C"?(f=[i,r,...m.slice(1)],i=f[6],r=f[7]):(f=[i,r,i,r,s,c,s,c],i=s,r=c);for(var x=0,y=t.length;x<y;x++){var _=t[x];if(_[0]=="M")o=u=_[1],a=l=_[2];else{_[0]=="C"?(p=[o,a,..._.slice(1)],o=p[6],a=p[7]):(p=[o,a,o,a,u,l,u,l],o=u,a=l);var S=_S(f,p);{for(var P=0,C=S.length;P<C;P++)S[P].segment1=g,S[P].segment2=x,S[P].bez1=f,S[P].bez2=p;d=d.concat(S)}}}}}return d}function xS(e){return rm(e)&&rm(e[0])}function wS(e){if(mS(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,f=e.length;l<f;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 p=1,d=u.length;p<d;p++)c[p]=+u[p]+(p%2?n:i)}else for(var g=0,h=u.length;g<h;g++)c[g]=u[g];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=Al,t}function lm(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function ks(e,t,n,i){return[e,t,n,i,n,i]}function pm(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 fm(e,t,n,i,r,o,a,s,c,u){var l=er*120/180,f=er/180*(+r||0),p=[],d,g=dS(function(M,E,b){var H=M*Lt.cos(b)-E*Lt.sin(b),U=M*Lt.sin(b)+E*Lt.cos(b);return{x:H,y:U}});if(u)L=u[0],T=u[1],P=u[2],C=u[3];else{d=g(e,t,-f),e=d.x,t=d.y,d=g(s,c,-f),s=d.x,c=d.y;var h=(e-s)/2,m=(t-c)/2,x=h*h/(n*n)+m*m/(i*i);x>1&&(x=Lt.sqrt(x),n=x*n,i=x*i);var y=n*n,_=i*i,S=(o==a?-1:1)*Lt.sqrt(tr((y*_-y*m*m-_*h*h)/(y*m*m+_*h*h))),P=S*n*m/i+(e+s)/2,C=S*-i*h/n+(t+c)/2,L=Lt.asin(((t-C)/i).toFixed(9)),T=Lt.asin(((c-C)/i).toFixed(9));L=e<P?er-L:L,T=s<P?er-T:T,L<0&&(L=er*2+L),T<0&&(T=er*2+T),a&&L>T&&(L=L-er*2),!a&&T>L&&(T=T-er*2)}var j=T-L;if(tr(j)>l){var k=T,D=s,z=c;T=L+l*(a&&T>L?1:-1),s=P+n*Lt.cos(T),c=C+i*Lt.sin(T),p=fm(s,c,n,i,r,0,a,D,z,[T,k,P,C])}j=T-L;var ce=Lt.cos(L),Ee=Lt.sin(L),Ye=Lt.cos(T),ze=Lt.sin(T),Y=Lt.tan(j/4),ue=4/3*n*Y,oe=4/3*i*Y,le=[e,t],Me=[e+ue*Ee,t-oe*ce],W=[s+ue*ze,c-oe*Ye],q=[s,c];if(Me[0]=2*le[0]-Me[0],Me[1]=2*le[1]-Me[1],u)return[Me,W,q].concat(p);p=[Me,W,q].concat(p).join().split(",");for(var J=[],Te=0,ft=p.length;Te<ft;Te++)J[Te]=Te%2?g(p[Te-1],p[Te],f).y:g(p[Te],p[Te+1],f).x;return J}function ES(e,t,n,i,r,o,a,s){for(var c=[],u=[[],[]],l,f,p,d,g,h,m,x,y=0;y<2;++y){if(y==0?(f=6*e-12*n+6*r,l=-3*e+9*n-9*r+3*a,p=3*n-3*e):(f=6*t-12*i+6*o,l=-3*t+9*i-9*o+3*s,p=3*i-3*t),tr(l)<1e-12){if(tr(f)<1e-12)continue;d=-p/f,0<d&&d<1&&c.push(d);continue}m=f*f-4*p*l,x=Lt.sqrt(m),!(m<0)&&(g=(-f+x)/(2*l),0<g&&g<1&&c.push(g),h=(-f-x)/(2*l),0<h&&h<1&&c.push(h))}for(var _=c.length,S=_,P;_--;)d=c[_],P=1-d,u[0][_]=P*P*P*e+3*P*P*d*n+3*P*d*d*r+d*d*d*a,u[1][_]=P*P*P*t+3*P*P*d*i+3*P*d*d*o+d*d*d*s;return u[0][S]=e,u[1][S]=t,u[0][S+1]=a,u[1][S+1]=s,u[0].length=u[1].length=S+2,{x0:gi(...u[0]),y0:gi(...u[1]),x1:yi(...u[0]),y1:yi(...u[1])}}function dm(e){if(xS(e)||(e=hS(e)),gS(e))return e;for(var t=yS(wS(e)),n={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},i=function(p,d,g){var h,m;if(!p)return["C",d.x,d.y,d.x,d.y,d.x,d.y];switch(!(p[0]in{T:1,Q:1})&&(d.qx=d.qy=null),p[0]){case"M":d.X=p[1],d.Y=p[2];break;case"A":p=["C",...fm(d.x,d.y,...p.slice(1))];break;case"S":g=="C"||g=="S"?(h=d.x*2-d.bx,m=d.y*2-d.by):(h=d.x,m=d.y),p=["C",h,m,...p.slice(1)];break;case"T":g=="Q"||g=="T"?(d.qx=d.x*2-d.qx,d.qy=d.y*2-d.qy):(d.qx=d.x,d.qy=d.y),p=["C",...pm(d.x,d.y,d.qx,d.qy,p[1],p[2])];break;case"Q":d.qx=p[1],d.qy=p[2],p=["C",...pm(d.x,d.y,p[1],p[2],p[3],p[4])];break;case"L":p=["C",...ks(d.x,d.y,p[1],p[2])];break;case"H":p=["C",...ks(d.x,d.y,p[1],d.y)];break;case"V":p=["C",...ks(d.x,d.y,d.x,p[1])];break;case"Z":p=["C",...ks(d.x,d.y,d.X,d.Y)];break}return p},r=function(p,d){if(p[d].length>7){p[d].shift();for(var g=p[d];g.length;)o[d]="A",p.splice(d++,0,["C",...g.splice(0,6)]);p.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],f=l.length;n.x=l[f-2],n.y=l[f-1],n.bx=nm(l[f-4])||n.x,n.by=nm(l[f-3])||n.y}return t}function ot(e){return Wt(e)&&Rn(e,"waypoints")}function Ge(e){return Wt(e)&&Rn(e,"labelTarget")}function SS(e){return Wt(e)&&Qr(e.parent)}function hm(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function Di(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function Ae(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function Os(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function RS(e){return Di({x:e.x+(e.width||0)/2,y:e.y+(e.height||0)/2})}function CS(e){for(var t=e.waypoints,n=t.reduce(function(u,l,f){var p=t[f-1];if(p){var d=u[u.length-1],g=d&&d.endLength||0,h=TS(p,l);u.push({start:p,end:l,startLength:g,endLength:g+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 ot(e)?CS(e):RS(e)}function Jt(e,t,n){n=n||0,Wt(n)||(n={x:n,y:n});var i=Ae(e),r=Ae(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 oa(e,t,n){var i=PS(e,t);return i.length===1||i.length===2&&ra(i[0],i[1])<1?Di(i[0]):i.length>1?(i=li(i,function(r){var o=Math.floor(r.t2*100)||1;return o=100-o,o=(o<10?"0":"")+o,r.segment2+"#"+o}),Di(i[n?0:i.length-1])):null}function PS(e,t){return um(e,t)}function AS(e){e=e.slice();for(var t=0,n,i,r;e[t];)n=e[t],i=e[t-1],r=e[t+1],ra(n,r)===0||Rl(i,r,n)?e.splice(t,1):t++;return e}function TS(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Ds(e,t){return Math.round(e*t)/t}function mm(e){return Be(e)?e+"px":e}function MS(e){for(;e.parent;)e=e.parent;return e}function kS(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"),vn(n,{position:"relative",overflow:"hidden",width:mm(e.width),height:mm(e.height)}),t.appendChild(n),n}function gm(e,t,n){const i=Pe("g");Xe(i).add(t);const r=n!==void 0?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}const OS="base",ym=0,DS=1,LS={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=kS(e),i=this._svg=Pe("svg");xe(i,{width:"100%",height:"100%"}),ln(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")}),Fe(n,i);const r=this._viewport=gm(i,"viewport");e.deferUpdate&&(this._viewboxChanged=Bu(this._viewboxChanged,300)),this._restoreFocus=Bu(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=Jh(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(OS,ym)},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 Cn(this._layers,function(t,n){return n.visible&&e>=n.index&&t++,t},0)},Ie.prototype._createLayer=function(e,t){typeof t>"u"&&(t=DS);const n=this._getChildIndex(t);return{group:gm(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&&(Ht(n),t.visible=!1),n},Ie.prototype._removeLayer=function(e){const t=this._layers[e];t&&(delete this._layers[e],Ht(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(MS(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 lt(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&&(B([i.gfx,i.secondaryGfx],function(r){r&&(n?(e.markers.add(t),Xe(r).add(t)):(e.markers.delete(t),Xe(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,ym);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=LS[e];if(!Pr(n,function(r){return typeof t[r]<"u"}))throw new Error("must supply { "+n.join(", ")+" } with "+e)},Ie.prototype._setParent=function(e,t,n){Tt(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),Ct(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);ea(t,l)});else return o=this._rootElement?this.getActiveLayer():null,i=o&&o.getBBox()||{},a=ea(t),r=a?a.matrix:F1(),s=Ds(r.a,1e3),c=Ds(-r.e||0,1e3),u=Ds(-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),vm(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(g=>g!=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=Dt(o),s=Ae(a),c=this.viewbox(),u=this.zoom();let l,f;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 p=Ae(c);if(!(a.width<c.width&&a.height<c.height))l=a.x-c.x,f=a.y-c.y;else{const g=Math.max(0,s.right-p.right),h=Math.min(0,s.left-p.left),m=Math.max(0,s.bottom-p.bottom),x=Math.min(0,s.top-p.top);l=g||h,f=m||x}this.scroll({dx:-l*u,dy:-f*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)}),Ds(i.a,1e3)};function vm(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 f=c.a;return t?(a=V(o,t),s=a.matrixTransform(c.inverse()),u=r.translate(s.x,s.y).scale(1/f*e).translate(-s.x,-s.y),l=c.multiply(u)):l=r.scale(e),vm(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 fo="data-element-id";function jn(e){this._elements={},this._eventBus=e}jn.$inject=["eventBus"],jn.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),xe(t,fo,i),n&&xe(n,fo,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},jn.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(xe(i.gfx,fo,""),i.secondaryGfx&&xe(i.secondaryGfx,fo,""),delete t[n])},jn.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)},jn.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,fo,i),t},jn.prototype.get=function(e){var t;typeof e=="string"?t=e:t=e&&xe(e,fo);var n=this._elements[t];return n&&n.element},jn.prototype.filter=function(e){var t=[];return this.forEach(function(n,i){e(n,i)&&t.push(n)}),t},jn.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}},jn.prototype.getAll=function(){return this.filter(function(e){return e})},jn.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)})},jn.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},jn.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 IS(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 BS(e){return e.__refs_collection===!0}function NS(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)}function bm(e,t,n){var i=IS(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 $S(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 Un(e,t){if(!(this instanceof Un))return new Un(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Un.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?bm(this,t,e):$S(this,t,e)},Un.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return BS(n)||bm(this,t,e),n},Un.prototype.ensureBound=function(e,t){NS(e,t)||this.bind(e,t)},Un.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},Un.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var Tl=new Un({name:"children",enumerable:!0,collection:!0},{name:"parent"}),_m=new Un({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),xm=new Un({name:"attachers",collection:!0},{name:"host"}),wm=new Un({name:"outgoing",collection:!0},{name:"source"}),Em=new Un({name:"incoming",collection:!0},{name:"target"});function ho(){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)}}),Tl.bind(this,"parent"),_m.bind(this,"labels"),wm.bind(this,"outgoing"),Em.bind(this,"incoming")}function aa(){ho.call(this),Tl.bind(this,"children"),xm.bind(this,"host"),xm.bind(this,"attachers")}_e(aa,ho);function Sm(){ho.call(this),Tl.bind(this,"children")}_e(Sm,aa);function Rm(){aa.call(this),_m.bind(this,"labelTarget")}_e(Rm,aa);function Cm(){ho.call(this),wm.bind(this,"source"),Em.bind(this,"target")}_e(Cm,ho);var FS={connection:Cm,shape:aa,label:Rm,root:Sm};function jS(e,t){var n=FS[e];if(!n)throw new Error("unknown type: <"+e+">");return V(new n,t)}function HS(e){return e instanceof ho}function Li(){this._uid=12}Li.prototype.createRoot=function(e){return this.create("root",e)},Li.prototype.createLabel=function(e){return this.create("label",e)},Li.prototype.createShape=function(e){return this.create("shape",e)},Li.prototype.createConnection=function(e){return this.create("connection",e)},Li.prototype.create=function(e,t){return t=V({},t||{}),t.id||(t.id=e+"_"+this._uid++),jS(e,t)};var Ls="__fn",Pm=1e3,zS=Array.prototype.slice;function Tn(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}Tn.prototype.on=function(e,t,n,i){if(e=De(e)?e:[e],Ut(t)&&(i=n,n=t,t=Pm),!Be(t))throw new Error("priority must be a number");var r=n;i&&(r=xn(n,i),r[Ls]=n[Ls]||n);var o=this;e.forEach(function(a){o._addListener(a,{priority:t,callback:r,next:null})})},Tn.prototype.once=function(e,t,n,i){var r=this;if(Ut(t)&&(i=n,n=t,t=Pm),!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[Ls]=n,this.on(e,t,o)},Tn.prototype.off=function(e,t){e=De(e)?e:[e];var n=this;e.forEach(function(i){n._removeListener(i,t)})},Tn.prototype.createEvent=function(e){var t=new sa;return t.init(e),t},Tn.prototype.fire=function(e,t){var n,i,r,o;if(o=zS.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 sa?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}},Tn.prototype.handleError=function(e){return this.fire("error",{error:e})===!1},Tn.prototype._destroy=function(){this._listeners={}},Tn.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},Tn.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return i;try{i=GS(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},Tn.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},Tn.prototype._getListeners=function(e){return this._listeners[e]},Tn.prototype._setListeners=function(e,t){this._listeners[e]=t},Tn.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[Ls]===t)&&(r?r.next=i:this._setListeners(e,i)),r=n,n=i};function sa(){}sa.prototype.stopPropagation=function(){this.cancelBubble=!0},sa.prototype.preventDefault=function(){this.defaultPrevented=!0},sa.prototype.init=function(e){V(this,e||{})};function GS(e,t){return e.apply(null,t)}function Lr(e){return e.childNodes[0]}function VS(e){return e.parentNode.childNodes[1]}function Is(e,t,n,i,r){var o=Jo();o.setTranslate(t,n);var a=Jo();a.setRotate(i||0,0,0);var s=Jo();s.setScale(1,1),ea(e,[o,a,s])}function en(e,t,n){var i=Jo();i.setTranslate(t,n),ea(e,i)}function Am(e,t){var n=Jo();n.setRotate(t,0,0),ea(e,n)}function Hn(e,t){this._eventBus=e,this._elementRegistry=t}Hn.$inject=["eventBus","elementRegistry"],Hn.prototype._getChildrenContainer=function(e){var t=this._elementRegistry.getGraphics(e),n;return e.parent?(n=VS(t),n||(n=Pe("g"),Xe(n).add("djs-children"),Fe(t.parentNode,n))):n=t,n},Hn.prototype._clear=function(e){var t=Lr(e);return Es(t),t},Hn.prototype._createContainer=function(e,t,n,i){var r=Pe("g");Xe(r).add("djs-group"),typeof n<"u"?WS(r,t,t.childNodes[n]):Fe(t,r);var o=Pe("g");Xe(o).add("djs-element"),Xe(o).add("djs-"+e),i&&Xe(o).add("djs-frame"),Fe(r,o);var a=Pe("g");return Xe(a).add("djs-visual"),Fe(o,a),o},Hn.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,em(t))},Hn.prototype.updateContainments=function(e){var t=this,n=this._elementRegistry,i;i=Cn(e,function(r,o){return o.parent&&(r[o.parent.id]=o.parent),r},{}),B(i,function(r){var o=r.children;if(o){var a=t._getChildrenContainer(r),s=a.firstChild;B(o,function(c){var u=n.getGraphics(c).parentNode;u===s?s=s.nextSibling:a.insertBefore(u,s)})}})},Hn.prototype.drawShape=function(e,t,n={}){var i=this._eventBus;return i.fire("render.shape",{gfx:e,element:t,attrs:n})},Hn.prototype.getShapePath=function(e){var t=this._eventBus;return t.fire("render.getShapePath",e)},Hn.prototype.drawConnection=function(e,t,n={}){var i=this._eventBus;return i.fire("render.connection",{gfx:e,element:t,attrs:n})},Hn.prototype.getConnectionPath=function(e){var t=this._eventBus;return t.fire("render.getConnectionPath",e)},Hn.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if(e==="shape")this.drawShape(i,t),en(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")}},Hn.prototype.remove=function(e){var t=this._elementRegistry.getGraphics(e);Ht(t.parentNode)};function WS(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}const US={__depends__:[oS],__init__:["canvas"],canvas:["type",Ie],elementRegistry:["type",jn],elementFactory:["type",Li],eventBus:["type",Tn],graphicsFactory:["type",Hn]};function qS(e){var t=new Qh(e);return t.init(),t}function YS(e){e=e||{};var t={config:["value",e]},n=[t,US].concat(e.modules||[]);return qS(n)}function ir(e,t){this._injector=t||YS(e),this.get("eventBus").fire("diagram.init")}ir.prototype.get=function(e,t){return this._injector.get(e,t)},ir.prototype.invoke=function(e,t,n){return this._injector.invoke(e,t,n)},ir.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},ir.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")};function pn(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}function wn(e,t){return e.$instanceOf(t)}function KS(e){return lt(e.rootElements,function(t){return wn(t,"bpmn:Process")||wn(t,"bpmn:Collaboration")})}function XS(e){var t={},n=[],i={};function r(W,q){return function(J){W(J,q)}}function o(W){t[W.id]=W}function a(W){return t[W.id]}function s(W,q){var J=W.gfx;if(J)throw new Error(`already rendered ${pn(W)}`);return e.element(W,i[W.id],q)}function c(W,q){return e.root(W,i[W.id],q)}function u(W,q){try{var J=i[W.id]&&s(W,q);return o(W),J}catch(Te){l(Te.message,{element:W,error:Te}),console.error(`failed to import ${pn(W)}`,Te)}}function l(W,q){e.error(W,q)}var f=this.registerDi=function(q){var J=q.bpmnElement;J?i[J.id]?l(`multiple DI elements defined for ${pn(J)}`,{element:J}):i[J.id]=q:l(`no bpmnElement referenced in ${pn(q)}`,{element:q})};function p(W){d(W.plane)}function d(W){f(W),B(W.planeElement,g)}function g(W){f(W)}this.handleDefinitions=function(q,J){var Te=q.diagrams;if(J&&Te.indexOf(J)===-1)throw new Error("diagram not part of <bpmn:Definitions />");if(!J&&Te&&Te.length&&(J=Te[0]),!J)throw new Error("no diagram to display");i={},p(J);var ft=J.plane;if(!ft)throw new Error(`no plane for ${pn(J)}`);var M=ft.bpmnElement;if(!M)if(M=KS(q),M)l(`correcting missing bpmnElement on ${pn(ft)} to ${pn(M)}`),ft.bpmnElement=M,f(ft);else throw new Error("no process or collaboration to display");var E=c(M,ft);if(wn(M,"bpmn:Process")||wn(M,"bpmn:SubProcess"))m(M,E);else if(wn(M,"bpmn:Collaboration"))le(M,E),x(q.rootElements,E);else throw new Error(`unsupported bpmnElement for ${pn(ft)}: ${pn(M)}`);h(n)};var h=this.handleDeferred=function(){for(var q;n.length;)q=n.shift(),q()};function m(W,q){Y(W,q),j(W.ioSpecification,q),T(W.artifacts,q),o(W)}function x(W,q){var J=We(W,function(Te){return!a(Te)&&wn(Te,"bpmn:Process")&&Te.laneSets});J.forEach(r(m,q))}function y(W,q){u(W,q)}function _(W,q){B(W,r(y,q))}function S(W,q){u(W,q)}function P(W,q){u(W,q)}function C(W,q){u(W,q)}function L(W,q){u(W,q)}function T(W,q){B(W,function(J){wn(J,"bpmn:Association")?n.push(function(){L(J,q)}):L(J,q)})}function j(W,q){W&&(B(W.dataInputs,r(P,q)),B(W.dataOutputs,r(C,q)))}var k=this.handleSubProcess=function(q,J){Y(q,J),T(q.artifacts,J)};function D(W,q){var J=u(W,q);wn(W,"bpmn:SubProcess")&&k(W,J||q),wn(W,"bpmn:Activity")&&j(W.ioSpecification,q),n.push(function(){B(W.dataInputAssociations,r(S,q)),B(W.dataOutputAssociations,r(S,q))})}function z(W,q){u(W,q)}function ce(W,q){u(W,q)}function Ee(W,q){n.push(function(){var J=u(W,q);W.childLaneSet&&Ye(W.childLaneSet,J||q),Me(W)})}function Ye(W,q){B(W.lanes,r(Ee,q))}function ze(W,q){B(W,r(Ye,q))}function Y(W,q){ue(W.flowElements,q),W.laneSets&&ze(W.laneSets,q)}function ue(W,q){B(W,function(J){wn(J,"bpmn:SequenceFlow")?n.push(function(){z(J,q)}):wn(J,"bpmn:BoundaryEvent")?n.unshift(function(){D(J,q)}):wn(J,"bpmn:FlowNode")?D(J,q):wn(J,"bpmn:DataObject")||(wn(J,"bpmn:DataStoreReference")||wn(J,"bpmn:DataObjectReference")?ce(J,q):l(`unrecognized flowElement ${pn(J)} in context ${pn(q&&q.businessObject)}`,{element:J,context:q}))})}function oe(W,q){var J=u(W,q),Te=W.processRef;Te&&m(Te,J||q)}function le(W,q){B(W.participants,r(oe,q)),n.push(function(){_(W.messageFlows,q)}),T(W.artifacts,q)}function Me(W){B(W.flowNodeRef,function(q){var J=q.get("lanes");J&&J.push(W)})}}function w(e,t){var n=ie(e);return n&&typeof n.$instanceOf=="function"&&n.$instanceOf(t)}function Ve(e,t){return qi(t,function(n){return w(e,n)})}function ie(e){return e&&e.businessObject||e}function Ze(e){return e&&e.di}function ZS(e,t,n){var i,r,o,a,s=[];function c(u,l){var f={root:function(h,m){return i.add(h,m)},element:function(h,m,x){return i.add(h,m,x)},error:function(h,m){s.push({message:h,context:m})}},p=new XS(f);l=l||u.diagrams&&u.diagrams[0];var d=QS(u,l);if(!d)throw new Error("no diagram to display");B(d,function(h){p.handleDefinitions(u,h)});var g=l.plane.bpmnElement.id;o.setRootElement(o.findRoot(g+"_plane")||o.findRoot(g))}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(f){return f.warnings=s,l(f)}})}function QS(e,t){if(!(!t||!t.plane)){var n=t.plane.bpmnElement,i=n;!w(n,"bpmn:Process")&&!w(n,"bpmn:Collaboration")&&(i=JS(n));var r;w(i,"bpmn:Collaboration")?r=i:r=lt(e.rootElements,function(u){if(w(u,"bpmn:Collaboration"))return lt(u.participants,function(l){return l.processRef===i})});var o=[i];r&&(o=sn(r.participants,function(u){return u.processRef}),o.push(r));var a=Tm(o),s=[t],c=[n];return B(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 Tm(e){var t=[];return B(e,function(n){n&&(t.push(n),t=t.concat(Tm(n.flowElements)))}),t}function JS(e){for(var t=e;t;){if(w(t,"bpmn:Process"))return t;t=t.$parent}}var eR='<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>',Mm=eR,km={verticalAlign:"middle"},Om={color:"#404040"},tR={zIndex:"1001",position:"fixed",top:"0",left:"0",right:"0",bottom:"0"},nR={width:"100%",height:"100%",background:"rgba(40,40,40,0.2)"},iR={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"},rR='<div class="bjs-powered-by-lightbox"><div class="backdrop"></div><div class="notice"><a href="https://bpmn.io" target="_blank" rel="noopener" class="link">'+Mm+'</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>',vi;function oR(){vi=mt(rR),vn(vi,tR),vn(rt("svg",vi),km),vn(rt(".backdrop",vi),nR),vn(rt(".notice",vi),iR),vn(rt(".link",vi),Om,{margin:"15px 20px 15px 10px",alignSelf:"center"})}function aR(){vi||(oR(),An.bind(vi,".backdrop","click",function(e){document.body.removeChild(vi)})),document.body.appendChild(vi)}const Bs=5,Dm="djs-outline-hidden";function _t(e){e=V({},cR,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),this._init(this._container,this._moddle,e),lR(this._container)}_e(_t,ir),_t.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(p){throw this._emit("import.parse.complete",{error:p}),p}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 f=await this.importDefinitions(s,n);return o=o.concat(f.warnings),this._emit("import.done",{error:null,warnings:o}),{warnings:o}}catch(a){let s=a;throw o=o.concat(s.warnings||[]),Ns(s,o),s=sR(s),this._emit("import.done",{error:s,warnings:s.warnings}),s}},_t.prototype.importDefinitions=async function(t,n){return this._setDefinitions(t),{warnings:(await this.open(n)).warnings}},_t.prototype.open=async function(t){const n=this._definitions;let i=t;if(!n){const o=new Error("no XML imported");throw Ns(o,[]),o}if(typeof t=="string"&&(i=uR(n,t),!i)){const o=new Error("BPMNDiagram <"+t+"> not found");throw Ns(o,[]),o}try{this.clear()}catch(o){throw Ns(o,[]),o}const{warnings:r}=await ZS(this,n,i);return{warnings:r}},_t.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},_t.prototype.saveSVG=async function(){this._emit("saveSVG.start");let t,n;try{const i=this.get("canvas"),r=i.getActiveLayer(),o=rt(":scope > defs",i._svg),a=Zh(r),s=o?"<defs>"+Zh(o)+"</defs>":"",c=i.getContainer();bt(c).add(Dm);let u;try{u=r.getBBox()}finally{bt(c).remove(Dm)}const l=u.x-Bs,f=u.y-Bs,p=u.width+Bs*2,d=u.height+Bs*2;t=`<?xml version="1.0" encoding="utf-8"?>
4
+ nested error: `+C.message;if(D)return a.addWarning({message:H,error:C}),!0;throw Xi(H)}function l(C,P){return u(C,P,!0)}function f(){var C=a.elementsById,P=a.references,D,T;for(D=0;T=P[D];D++){var I=T.element,k=C[T.id],O=Ai(I).propertiesByName[T.property];if(k||a.addWarning({message:"unresolved reference <"+T.id+">",element:T.element,property:T.property,value:T.id}),O.isMany){var H=I.get(O.name),se=H.indexOf(T);se===-1&&(se=H.length),k?H[se]=k:H.splice(se,1)}else I.set(O.name,k)}}function p(){c.pop().handleEnd()}var d=/^<\?xml /i,h=/ encoding="([^"]+)"/i,m=/^utf-8$/i;function g(C){if(d.test(C)){var P=h.exec(C),D=P&&P[1];!D||m.test(D)||a.addWarning({message:"unsupported document encoding <"+D+">, falling back to UTF-8"})}}function y(C,P){var D=c.peek();try{c.push(D.handleNode(C))}catch(T){u(T,P,o)&&c.push(new Uu)}}function v(C,P){try{c.peek().handleText(C)}catch(D){l(D,P)}}function b(C,P){C.trim()&&v(C,P)}var _=r.getPackages().reduce(function(C,P){return C[P.uri]=P.prefix,C},Object.entries(Wu).reduce(function(C,[P,D]){return C[D]=P,C},r.config&&r.config.nsMap||{}));return s.ns(_).on("openTag",function(C,P,D,T){var I=C.attrs||{},k=Object.keys(I).reduce(function(H,se){var Ee=P(I[se]);return H[se]=Ee,H},{}),O={name:C.name,originalName:C.originalName,attributes:k,ns:C.ns};y(O,T)}).on("question",g).on("closeTag",p).on("cdata",v).on("text",function(C,P,D){b(P(C),D)}).on("error",u).on("warn",l),new Promise(function(C,P){var D;try{s.parse(e),f()}catch(H){D=H}var T=i.element;!D&&!T&&(D=Xi("failed to parse document as <"+i.type.$descriptor.name+">"));var I=a.warnings,k=a.references,O=a.elementsById;return D?(D.warnings=I,P(D)):C({rootElement:T,elementsById:O,references:k,warnings:I})})},Ku.prototype.handler=function(e){return new qu(this.model,e)};function yw(){var e=[];return Object.defineProperty(e,"peek",{value:function(){return this[this.length-1]}}),e}var vw=`<?xml version="1.0" encoding="UTF-8"?>
5
+ `,bw=/<|>|'|"|&|\n\r|\n/g,Dd=/<|>|&/g;function fi(e){this.prefixMap={},this.uriMap={},this.used={},this.wellknown=[],this.custom=[],this.parent=e,this.defaultPrefixMap=e&&e.defaultPrefixMap||{}}fi.prototype.mapDefaultPrefixes=function(e){this.defaultPrefixMap=e},fi.prototype.defaultUriByPrefix=function(e){return this.defaultPrefixMap[e]},fi.prototype.byUri=function(e){return this.uriMap[e]||this.parent&&this.parent.byUri(e)},fi.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)},fi.prototype.uriByPrefix=function(e){return this.prefixMap[e||"xmlns"]||this.parent&&this.parent.uriByPrefix(e)},fi.prototype.mapPrefix=function(e,t){this.prefixMap[e||"xmlns"]=t},fi.prototype.getNSKey=function(e){return e.prefix!==void 0?e.uri+"|"+e.prefix:e.uri},fi.prototype.logUsed=function(e){var t=e.uri,n=this.getNSKey(e);this.used[n]=this.byUri(t),this.parent&&this.parent.logUsed(e)},fi.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 _w(e){return e.charAt(0).toLowerCase()+e.slice(1)}function xw(e,t){return Td(t)?_w(e):e}function Ld(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function Id(e){return Sn(e)?e:(e.prefix?e.prefix+":":"")+e.localName}function ww(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 Ew(e,t){return t.isGeneric?V({localName:t.ns.localName},e):V({localName:xw(t.ns.localName,t.$pkg)},e)}function Sw(e,t){return V({localName:t.ns.localName},e)}function Rw(e){var t=e.$descriptor;return We(t.properties,function(n){var i=n.name;if(n.isVirtual||!Rn(e,i))return!1;var r=e[i];return r===n.default||r===null?!1:n.isMany?r.length:!0})}var Cw={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},Pw={"<":"lt",">":"gt","&":"amp"};function Bd(e,t,n){return e=Sn(e)?e:""+e,e.replace(t,function(i){return"&"+n[i]+";"})}function Aw(e){return Bd(e,bw,Cw)}function Tw(e){return Bd(e,Dd,Pw)}function Mw(e){return We(e,function(t){return t.isAttr})}function kw(e){return We(e,function(t){return!t.isAttr})}function Xu(e){this.tagName=e}Xu.prototype.build=function(e){return this.element=e,this},Xu.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()};function Mr(){}Mr.prototype.serializeValue=Mr.prototype.serializeTo=function(e){e.append(this.escape?Tw(this.value):this.value)},Mr.prototype.build=function(e,t){return this.value=t,e.type==="String"&&t.search(Dd)!==-1&&(this.escape=!0),this};function Zu(e){this.tagName=e}Ld(Zu,Mr),Zu.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()};function vt(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}vt.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=Rw(e),this.parseAttributes(Mw(r)),this.parseContainments(kw(r))),this.parseGenericAttributes(e,i),this},vt.prototype.nsTagName=function(e){var t=this.logNamespaceUsed(e.ns);return Ew(t,e)},vt.prototype.nsPropertyTagName=function(e){var t=this.logNamespaceUsed(e.ns);return Sw(t,e)},vt.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},vt.prototype.nsAttributeName=function(e){var t;if(Sn(e)?t=un(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)},vt.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}))},vt.prototype.parseGenericContainments=function(e){var t=e.$body;t&&this.body.push(new Mr().build({type:"String"},t));var n=e.$children;n&&N(n,i=>{this.body.push(new vt(this).build(i))})},vt.prototype.parseNsAttribute=function(e,t,n){var i=e.$model,r=un(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)}},vt.prototype.parseNsAttributes=function(e){var t=this,n=e.$attrs,i=[];return N(n,function(r,o){var a=t.parseNsAttribute(e,o,r);a&&i.push(a)}),i},vt.prototype.parseGenericAttributes=function(e,t){var n=this;N(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)}})},vt.prototype.parseContainments=function(e){var t=this,n=this.body,i=this.element;N(e,function(r){var o=i.get(r.name),a=r.isReference,s=r.isMany;if(s||(o=[o]),r.isBody)n.push(new Mr().build(r,o[0]));else if(wd(r.type))N(o,function(u){n.push(new Zu(t.addTagName(t.nsPropertyTagName(r))).build(r,u))});else if(a)N(o,function(u){n.push(new Xu(t.addTagName(t.nsPropertyTagName(r))).build(u))});else{var c=kd(r);N(o,function(u){var l;c?c===Md?l=new vt(t,r):l=new ls(t,r,c):l=new vt(t),n.push(l.build(u))})}})},vt.prototype.getNamespaces=function(e){var t=this.namespaces,n=this.parent,i;return t||(i=n&&n.getNamespaces(),e||!i?this.namespaces=t=new fi(i):t=i),t},vt.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},vt.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},vt.prototype.parseAttributes=function(e){var t=this,n=this.element;N(e,function(i){var r=n.get(i.name);if(i.isReference)if(!i.isMany)r=r.id;else{var o=[];N(r,function(a){o.push(a.id)}),r=o.join(" ")}t.addAttribute(t.nsAttributeName(i),r)})},vt.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),Id(e)},vt.prototype.addAttribute=function(e,t){var n=this.attrs;Sn(t)&&(t=Aw(t));var i=vd(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)},vt.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=ww(n).concat(t)),N(t,function(i){e.append(" ").append(Id(i.name)).append('="').append(i.value).append('"')})},vt.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==Mr;e.appendIndent().append("<"+this.tagName),this.serializeAttributes(e),e.append(t?">":" />"),t&&(n&&e.appendNewLine().indent(),N(this.body,function(i){i.serializeTo(e)}),n&&e.unindent().appendIndent(),e.append("</"+this.tagName+">")),e.appendNewLine()};function ls(e,t,n){vt.call(this,e,t),this.serialization=n}Ld(ls,vt),ls.prototype.parseNsAttributes=function(e){var t=vt.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},ls.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri};function Ow(){this.value="",this.write=function(e){this.value+=e}}function Dw(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 Lw(e){e=V({format:!1,preamble:!0},e||{});function t(n,i){var r=i||new Ow,o=new Dw(r,e.format);e.preamble&&o.append(vw);var a=new vt,s=n.$model;if(a.getNamespaces().mapDefaultPrefixes(Iw(s)),a.build(n).serializeTo(o),!i)return r.value}return{toXML:t}}function Iw(e){const t=e.config&&e.config.nsMap||{},n={};for(const i in Wu)n[i]=Wu[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 ps(e,t){Un.call(this,e,t)}ps.prototype=Object.create(Un.prototype),ps.prototype.fromXML=function(e,t,n){Sn(t)||(n=t,t="bpmn:Definitions");var i=new Ku(V({model:this,lax:!0},n)),r=i.handler(t);return i.fromXML(e,r)},ps.prototype.toXML=function(e,t){var n=new Lw(t);return new Promise(function(i,r){try{var o=n.toXML(e);return i({xml:o})}catch(a){return r(a)}})};var Bw="BPMN20",Nw="http://www.omg.org/spec/BPMN/20100524/MODEL",$w="bpmn",Fw=[],jw=[{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"}]}],Hw=[{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"},Gw={name:Bw,uri:Nw,prefix:$w,associations:Fw,types:jw,enumerations:Hw,xml:zw},Vw="BPMNDI",Ww="http://www.omg.org/spec/BPMN/20100524/DI",Uw="bpmndi",Yw=[{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"]}],qw=[{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"}]}],Kw=[],Xw={name:Vw,uri:Ww,prefix:Uw,types:Yw,enumerations:qw,associations:Kw},Zw="DC",Qw="http://www.omg.org/spec/DD/20100524/DC",Jw="dc",eE=[{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}]}],tE=[],nE={name:Zw,uri:Qw,prefix:Jw,types:eE,associations:tE},iE="DI",rE="http://www.omg.org/spec/DD/20100524/DI",oE="di",aE=[{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"}]}],sE=[],cE={tagAlias:"lowerCase"},uE={name:iE,uri:rE,prefix:oE,types:aE,associations:sE,xml:cE},lE="bpmn.io colors for BPMN",pE="http://bpmn.io/schema/bpmn/biocolor/1.0",fE="bioc",dE=[{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"}]}],hE=[],mE=[],gE={name:lE,uri:pE,prefix:fE,types:dE,enumerations:hE,associations:mE},yE="BPMN in Color",vE="http://www.omg.org/spec/BPMN/non-normative/color/1.0",bE="color",_E=[{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"}]}],xE=[],wE=[],EE={name:yE,uri:vE,prefix:bE,types:_E,enumerations:xE,associations:wE};const SE={bpmn:Gw,bpmndi:Xw,dc:nE,di:uE,bioc:gE,color:EE};function Nd(e,t){const n=V({},SE,e);return new ps(n,t)}const RE={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"}},CE="http://www.omg.org/spec/BPMN/non-normative/extensions/i18n/1.0",$d="i18n",fs={[$d]:RE,[Lu]:dd};function Fd(){return Nd(fs)}const jd=Fd();async function Qu(e){const{rootElement:t,warnings:n}=await jd.fromXML(e,"bpmn:Definitions");return{definitions:t,warnings:n}}async function PE(e){const{xml:t}=await jd.toXML(e,{format:!0});return t}function Ju(e){return e.map(t=>typeof t=="string"?t:t.message??String(t))}const ro={cjkEm:.865,upperEm:.68,lowerEm:.5,digitEm:.556,spaceEm:.278,otherEm:.35,ascentEm:.9,descentEm:.25},AE=/[ᄀ-ᇿ -〿぀-ヿ㐀-鿿가-힯＀-⦆]/;function TE(e){const t=ro;return AE.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 oo(e,t){let n=0;for(const i of e)n+=t*TE(i);return n}function Hd(e=globalThis,{textMeasurement:t="approximate"}={}){if(!(e!=null&&e.SVGElement))throw new Error("installHeadlessBpmnDom: DOM 전역이 없다 — jsdom window 를 전역에 올린 뒤 호출할 것");t==="approximate"&&ME(e),kE(e),OE(e),DE(e)}function ME(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:oo(r,o),fontBoundingBoxAscent:o*ro.ascentEm,fontBoundingBoxDescent:o*ro.descentEm,actualBoundingBoxAscent:o*ro.ascentEm,actualBoundingBoxDescent:o*ro.descentEm}}};t.getContext=()=>n}function kE(e){if(e.SVGMatrix)return;class t{constructor(){Zr(this,"a",1);Zr(this,"b",0);Zr(this,"c",0);Zr(this,"d",1);Zr(this,"e",0);Zr(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 OE(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,f=Math.cos(l),p=Math.sin(l);a.a=f,a.b=p,a.c=-p,a.d=f,a.e=c-f*c+p*u,a.f=u-p*c-f*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 DE(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:oo(n,12),height:14}})}const ds=new Set(["bpmn:Participant","bpmn:Lane","bpmn:Group","bpmn:SubProcess","bpmn:AdHocSubProcess","bpmn:Transaction"]),LE=new Set(["bpmn:SubProcess","bpmn:AdHocSubProcess","bpmn:Transaction"]),IE=1,el=new Set(["bpmn:TextAnnotation","bpmn:DataStoreReference","bpmn:DataObjectReference","bpmn:DataInput","bpmn:DataOutput"]),BE=2;function Fn(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"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 zd=20,hs=5,Gd=3,NE=8,Vd=12,$E=Vd*1.2;function tl(e,t){const n=t.split(/\r?\n/),i=Math.max(...n.map(o=>oo(o,Vd))),r=n.length*$E;return{x:e.x+e.width/2-i/2,y:e.y+e.height/2-r/2,width:i,height:r}}const Wd=1;function yn(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 ao(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 yn(e))for(const s of yn(t)){if(a.axis!==s.axis||Math.abs(a.at-s.at)>Wd)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>=zd&&(!n||u>n.length)&&(n={axis:a.axis,length:u,kind:c})}return n}function nl(e){return e.kind==="edge-overlap-opposite"||e.kind==="edge-overlap-mixed"||e.kind==="edge-overlap-unrelated"}function Ud(e,t){const n=ao(e,t);return n&&n.kind==="opposite"?{axis:n.axis,length:n.length}:null}function FE(e,t){let n=0;for(const i of t)i.id!==e.id&&Ud(e,i)&&n++;return n}function jn(e,t){let n=0;for(const i of t)i.id!==e.id&&ao(e,i)&&n++;return n}const Yd=15,qd=20;function jE(e,t){const n=t.axis==="v"?[e.x,e.x+e.width]:[e.y,e.y+e.height];if(t.at<n[0]-qd||t.at>n[1]+qd)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 il=20;function ms(e,t){const n=[];for(const i of t){if(i.axis!==e.axis||Math.abs(i.at-e.at)>Wd)continue;const r=Math.max(e.lo,i.lo),o=Math.min(e.hi,i.hi);o-r<zd||n.push([r-il,o+il])}return n}function gs(e,t){const n=e.label;if(!n)return null;let i=null;for(const r of yn(e)){const o=jE(n,r);if(o){for(const a of t)if(a.id!==e.id&&!(i&&a.id>=i.other)){for(const[s,c]of ms(r,yn(a)))if(Math.min(c,o[1])>Math.max(s,o[0])){i={other:a.id,axis:r.axis};break}}}}return i}const HE=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 GE(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,f=1;const p=(d,h)=>{if(h===0)return d<=0;const m=d/h;if(h>0){if(m>f)return!1;m>l&&(l=m)}else{if(m<l)return!1;m<f&&(f=m)}return!0};return p(r-e.x,c)&&p(e.x-a,-c)&&p(o-e.y,u)&&p(e.y-s,-u)&&f>l}function rl(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 VE=(e,t)=>e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height,so=1;function Ti(e,t){const n=e.x+so,i=e.x+e.width-so,r=e.y+so,o=e.y+e.height-so;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 Qo(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 Kd(e,t){const n=e.label;if(!n)return null;if(yn(e).some(i=>Ti(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(yn(i).some(r=>Ti(n,r)))return i.id;for(const i of t.shapes.filter(r=>r.container).sort((r,o)=>r.id.localeCompare(o.id)))if(Qo(i).some(r=>Ti(n,r)))return i.id;return null}function Qt(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(GE(e.waypoints[o],e.waypoints[o+1],r,BE)){i.push(r);break}}return i}function WE(e,t,n,i){const r=(u,l,f)=>(l.x-u.x)*(f.y-u.y)-(l.y-u.y)*(f.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 Xd=(e,t)=>e.endpoints.some(n=>t.endpoints.includes(n));function Jo(e,t){let n=0;for(const i of t){if(i.id===e.id||Xd(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++)WE(e.waypoints[o],e.waypoints[o+1],i.waypoints[a],i.waypoints[a+1])&&(r=!0);r&&n++}return n}function Hn(e,t){let n=0;for(const i of t)i.id===e.id||Xd(e,i)||Jo(e,[i])>0&&(n+=i.type===e.type?2:1);return n}function Zd(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++)Jo(n[i],[n[r]])>0&&(t+=n[i].type===n[r].type?2:1);return t}function ys(e){const t=[],n=e.edges;for(let i=0;i<n.length;i++)for(let r=i+1;r<n.length;r++)if(Jo(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 Qd(e){const t=ys(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),f=n(u.type);l==="solid"&&f==="solid"?r++:l==="dashed"&&f==="dashed"&&o++}return{pairs:t,solidPairs:r,dashedPairs:o,mixedPairs:t.length-r-o,crossPoolMessages:UE(e)}}function UE(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 Jd(e,t,n){const i=new Set(t.flatMap(r=>[...r.members]));return e.shapes.filter(r=>!r.container&&!el.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 eh(e){var n;const t=(n=yt(e==null?void 0:e.extensionElements))==null?void 0:n.values;if(Array.isArray(t))for(const i of t){const r=yt(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 th=e=>e?{members:e}:{},zn=e=>e.shapes.filter(t=>!t.container);function YE(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 nh(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(yn(i).some(r=>Ti(n,r)))return i.id;for(const i of[...t.shapes].filter(r=>r.container).sort((r,o)=>r.id.localeCompare(o.id)))if(Qo(i).some(r=>Ti(n,r)))return i.id;return null}function co(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 Pn(e){const t=[],n=e.shapes.filter(y=>!y.container);for(const y of e.edges)for(const v of Qt(y,n))t.push({kind:"edge-crosses-shape",edge:y.id,shape:v.id});const i=e.shapes.filter(y=>y.container&&LE.has(y.type));if(i.length){const y=(v,b)=>{const _=e.shapes.find(C=>C.id===b);return!!_&&_.x>=v.x&&_.y>=v.y&&_.x+_.width<=v.x+v.width&&_.y+_.height<=v.y+v.height};for(const v of e.edges)for(const b of Qt(v,i))v.endpoints.includes(b.id)||v.endpoints.some(_=>y(b,_))||t.push({kind:"edge-crosses-subprocess",edge:v.id,subProcess:b.id})}const r=e.shapes.filter(y=>y.type==="bpmn:Participant");for(let y=0;y<r.length;y++)for(let v=y+1;v<r.length;v++){const b=r[y],_=r[v];if(b.x+b.width<=_.x||_.x+_.width<=b.x||b.y+b.height<=_.y||_.y+_.height<=b.y)continue;const C=(P,D)=>P.x<=D.x&&P.y<=D.y&&P.x+P.width>=D.x+D.width&&P.y+P.height>=D.y+D.height;t.push({kind:"pool-overlap",pools:[b.id,_.id],contained:C(b,_)||C(_,b)})}const o=n.filter(y=>!y.attached);for(let y=0;y<o.length;y++)for(let v=y+1;v<o.length;v++){const b=o[y],_=o[v];if(!rl(b,_,IE))continue;const C=b.id<_.id?[b.id,_.id]:[_.id,b.id];t.push({kind:"shape-overlap",shapes:C,identical:VE(b,_)})}const a=e.shapes.filter(y=>y.type==="bpmn:Group"&&Array.isArray(y.members)&&y.members.length>0);for(let y=0;y<a.length;y++)for(let v=y+1;v<a.length;v++){const b=a[y],_=a[v],C=Math.min(b.x+b.width,_.x+_.width)-Math.max(b.x,_.x),P=Math.min(b.y+b.height,_.y+_.height)-Math.max(b.y,_.y);if(C<=hs||P<=hs)continue;const D=b.id<_.id?[b.id,_.id]:[_.id,b.id],T=new Set(_.members);if(b.members.some(k=>T.has(k))){const k=Jd(e,a,{x:Math.max(b.x,_.x),y:Math.max(b.y,_.y),right:Math.min(b.x+b.width,_.x+_.width),bottom:Math.min(b.y+b.height,_.y+_.height)});k.length&&t.push({kind:"group-overlap-unreadable",reason:"orphan",groups:D,shapes:k});continue}const I=b.x<=_.x&&b.y<=_.y&&b.x+b.width>=_.x+_.width&&b.y+b.height>=_.y+_.height?b.id:_.x<=b.x&&_.y<=b.y&&_.x+_.width>=b.x+b.width&&_.y+_.height>=b.y+b.height?_.id:void 0;t.push({kind:"group-overlap-unintended",groups:D,...I?{container:I}:{}})}const s=new Set(a.flatMap(y=>[...y.members])),c=y=>e.shapes.filter(v=>!v.container&&!el.has(v.type)&&v.x>=y.x&&v.y>=y.y&&v.x+v.width<=y.x+y.width&&v.y+v.height<=y.y+y.height);for(const y of a){const v=c(y);if(!v.length)continue;const b=new Set(y.members),_=v.filter(C=>!b.has(C.id));_.some(C=>s.has(C.id))&&(_.length*2<v.length||t.push({kind:"group-overlap-unreadable",reason:"minority",group:y.id,shapes:_.map(C=>C.id).sort()}))}for(const y of a){const v=new Set(c(y).map(T=>T.id)),b=new Set(y.members),_=new Set([...v].filter(T=>!b.has(T)&&s.has(T)));if(!_.size)continue;let C=!1,P=!1,D=!1;for(const T of e.edges){if(T.type!=="bpmn:SequenceFlow"||!T.source||!T.target)continue;const I=_.has(T.source),k=_.has(T.target);!I&&k&&!v.has(T.source)?C=!0:I&&!k&&!v.has(T.target)?P=!0:I&&k&&(D=!0)}C&&P&&D&&t.push({kind:"group-overlap-unreadable",reason:"throughpass",group:y.id,shapes:[..._].sort()})}const u=e.shapes.filter(y=>y.type==="bpmn:Group");for(let y=0;y<u.length;y++)for(let v=y+1;v<u.length;v++)for(let b=v+1;b<u.length;b++){const _=[u[y],u[v],u[b]],C={x:Math.max(..._.map(T=>T.x)),y:Math.max(..._.map(T=>T.y)),right:Math.min(..._.map(T=>T.x+T.width)),bottom:Math.min(..._.map(T=>T.y+T.height))};if(C.right-C.x<=hs||C.bottom-C.y<=hs)continue;const P=Jd(e,[],C);if(!P.length)continue;const D=_.map(T=>T.id).sort();t.push({kind:"group-stack-unreadable",groups:D,shapes:P})}for(const y of e.shapes.filter(v=>v.type==="bpmn:Group"))for(const v of e.shapes){if(v.container||v.attached||el.has(v.type)||v.width<=0||v.height<=0)continue;const b=[["top",y.y,"h",y.x,y.x+y.width],["bottom",y.y+y.height,"h",y.x,y.x+y.width],["left",y.x,"v",y.y,y.y+y.height],["right",y.x+y.width,"v",y.y,y.y+y.height]];for(const[_,C,P,D,T]of b){const I=P==="h"?v.x:v.y,k=P==="h"?v.x+v.width:v.y+v.height;if(!(I<T&&D<k))continue;const O=P==="h"?v.y:v.x,H=P==="h"?v.y+v.height:v.x+v.width;if(!(O<C&&C<H))continue;const se=Math.min(C-O,H-C);se<NE||t.push({kind:"group-cuts-shape",group:y.id,shape:v.id,side:_,depth:se})}}const l=e.shapes.filter(y=>y.container&&y.type!=="bpmn:Group"&&y.type!=="bpmn:Lane");for(const y of e.shapes.filter(v=>v.type==="bpmn:Group"))for(const v of l){const b=y.x<v.x+v.width&&v.x<y.x+y.width,_=y.y<v.y+v.height&&v.y<y.y+y.height,C=[["top",y.y,v.y,b],["bottom",y.y+y.height,v.y+v.height,b],["left",y.x,v.x,_],["right",y.x+y.width,v.x+v.width,_]];for(const[P,D,T,I]of C)I&&Math.abs(D-T)<=Gd&&t.push({kind:"group-on-container-boundary",group:y.id,container:v.id,side:P})}const f=e.shapes.filter(y=>y.type==="bpmn:Group");for(let y=0;y<f.length;y++)for(let v=y+1;v<f.length;v++){const b=f[y],_=f[v],C=b.x<_.x+_.width&&_.x<b.x+b.width,P=b.y<_.y+_.height&&_.y<b.y+b.height,D=[["x",b.x+b.width,_.x,P],["x",_.x+_.width,b.x,P],["y",b.y+b.height,_.y,C],["y",_.y+_.height,b.y,C]];for(const[T,I,k,O]of D)if(O&&Math.abs(I-k)<=Gd){t.push({kind:"group-on-group-boundary",groups:b.id<_.id?[b.id,_.id]:[_.id,b.id],axis:T});break}}for(let y=0;y<e.edges.length;y++)for(let v=y+1;v<e.edges.length;v++){const b=e.edges[y],_=e.edges[v],C=ao(b,_);if(!C)continue;const P=b.id<_.id?[b.id,_.id]:[_.id,b.id];t.push({kind:C.kind==="opposite"?"edge-overlap-opposite":C.kind==="mixed"?"edge-overlap-mixed":"edge-overlap-unrelated",edges:P,axis:C.axis,length:Math.round(C.length)})}for(const y of e.edges){if(!y.label)continue;const v=gs(y,e.edges);v&&t.push({kind:"label-on-shared-segment",edge:y.id,other:v.other,axis:v.axis})}for(const y of e.edges){if(!y.label)continue;const v=Kd(y,e);v&&t.push({kind:"label-over-line",edge:y.id,line:v})}const p=new Set(n.map(y=>y.id)),d=e.shapes.filter(y=>y.type==="bpmn:Participant"&&y.label);for(const y of[...n,...d.filter(v=>!p.has(v.id))]){if(!y.label)continue;const v=nh(y,e);v&&t.push({kind:"label-over-line",edge:y.id,line:v})}const h=new Set(e.shapes.filter(y=>y.type==="bpmn:TextAnnotation").map(y=>y.id));for(const y of d)for(const{owner:v,rect:b}of co(e))v===y.id||h.has(v)||rl(y.label,b,so)&&t.push({kind:"pool-name-over-label",pool:y.id,label:v});const m=co(e);for(const y of n)if(y.type==="bpmn:TextAnnotation")for(const{owner:v,rect:b}of m)v!==y.id&&rl(y,b,so)&&t.push({kind:"annotation-over-label",annotation:y.id,label:v});const g=new Map(e.shapes.map(y=>[y.id,y]));for(const y of n){const v=y.parent??YE(y,e,g);if(!v)continue;const b=g.get(v);!b||!b.container||zE(b,y,HE)||t.push({kind:"shape-outside-container",shape:y.id,container:b.id})}return t.sort((y,v)=>Fn(y).localeCompare(Fn(v)))}const yt=e=>typeof e=="object"&&e!==null?e:void 0,Rt=e=>typeof e=="number"?e:0,Mi=e=>{const t=yt(e);return typeof(t==null?void 0:t.id)=="string"?t.id:void 0};function qE(e){const t=yt(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=Mi(o);a&&n.push(a)}}return n}function KE(e){const t=yt(e);if(!t)return{};const n=Array.isArray(t.sourceRef)?void 0:Mi(t.sourceRef),i=Array.isArray(t.targetRef)?void 0:Mi(t.targetRef);return n&&i?{source:n,target:i}:{}}function XE(e,t){const n=yt(e.$parent);if(!n)return;const i=typeof n.$type=="string"?n.$type:"";if(i==="bpmn:Process"){const r=Mi(n);return r?t.get(r):void 0}if(ds.has(i)&&i!=="bpmn:Lane"&&i!=="bpmn:Group")return Mi(n)}function ih(e){var a,s,c,u,l;const t=[],n=[],i=((a=yt(e))==null?void 0:a.diagrams)??[],r=new Map,o=new Set;for(const f of((s=yt(e))==null?void 0:s.rootElements)??[]){const p=yt(f);if((p==null?void 0:p.$type)==="bpmn:Collaboration")for(const d of p.participants??[]){const h=yt(d),m=Mi(h),g=Mi(h==null?void 0:h.processRef);m&&g?r.set(g,m):m&&o.add(m)}}for(const f of i){const p=yt((c=yt(f))==null?void 0:c.plane),d=(p==null?void 0:p.planeElement)??[];for(const h of d){const m=yt(h);if(!m)continue;const g=yt(m.bpmnElement),y=typeof(g==null?void 0:g.id)=="string"?g.id:void 0;if(!y)continue;const v=typeof(g==null?void 0:g.$type)=="string"?g.$type:"",b=yt(m.bounds);if(b){const C=m.isExpanded===!1&&v!=="bpmn:Participant",P=yt((u=yt(m.label))==null?void 0:u.bounds),D={id:y,type:v,x:Rt(b.x),y:Rt(b.y),width:Rt(b.width),height:Rt(b.height),container:ds.has(v)&&!C,attached:(g==null?void 0:g.attachedToRef)!==void 0,...g?{parent:XE(g,r)}:{},...P?{label:{x:Rt(P.x),y:Rt(P.y),width:Rt(P.width),height:Rt(P.height)}}:{},...v==="bpmn:Group"?th(eh(g)):{}},T=m.isHorizontal!==!1,I=typeof(g==null?void 0:g.name)=="string"?g.name:"";o.has(y)&&T&&I&&(D.label=tl(D,I)),t.push(D);continue}const _=m.waypoint;if(Array.isArray(_)){const C=yt((l=yt(m.label))==null?void 0:l.bounds);n.push({id:y,type:v,waypoints:_.map(P=>{var D,T;return{x:Rt((D=yt(P))==null?void 0:D.x),y:Rt((T=yt(P))==null?void 0:T.y)}}),endpoints:qE(g),...KE(g),...C?{label:{x:Rt(C.x),y:Rt(C.y),width:Rt(C.width),height:Rt(C.height)}}:{}})}}}return{shapes:t,edges:n}}function rh(e){return Pn(ih(e))}async function ZE(e){const{definitions:t,warnings:n}=await Qu(e);return{findings:rh(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 m=yt(o.label),g=Mi(o.source),y=Mi(o.target);n.push({id:o.id,type:a,waypoints:s.map(v=>({x:Rt(v.x),y:Rt(v.y)})),endpoints:[g,y].filter(v=>!!v),...g&&y?{source:g,target:y}:{},...m&&typeof m.x=="number"?{label:{x:m.x,y:Rt(m.y),width:Rt(m.width),height:Rt(m.height)}}:{}});continue}if(typeof o.x!="number"||typeof o.y!="number")continue;const c=yt(o.businessObject),u=yt(o.label);let l=yt(o.parent);for(;l&&l.type==="bpmn:Lane";)l=yt(l.parent);const f=typeof(l==null?void 0:l.type)=="string"?l.type:"",p=l&&ds.has(f)&&f!=="bpmn:Group"&&typeof l.id=="string"?l.id:void 0,d={id:o.id,type:a,x:o.x,y:o.y,width:Rt(o.width),height:Rt(o.height),container:ds.has(a)&&(a==="bpmn:Participant"||o.collapsed!==!0),attached:(c==null?void 0:c.attachedToRef)!==void 0,...p!==void 0?{parent:p}:{},...u&&typeof u.x=="number"?{label:{x:u.x,y:Rt(u.y),width:Rt(u.width),height:Rt(u.height)}}:{},...a==="bpmn:Group"?th(eh(c)):{}},h=typeof(c==null?void 0:c.name)=="string"?c.name:"";a==="bpmn:Participant"&&!(c!=null&&c.processRef)&&h&&((i=yt(o.di))==null?void 0:i.isHorizontal)!==!1&&(d.label=tl(d,h)),t.push(d)}return{shapes:t,edges:n}}const QE={"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 JE(e,t){const n=QE[e];return n||(e==="label"||e.startsWith("bpmndi:")?"other":e.startsWith("bpmn:")&&!("waypoints"in t&&t.waypoints)?"flowNode":"other")}function oh(e){let t=e.parent;for(;t;){if(t.type==="bpmn:Participant")return t.id;t=t.parent}}function ah(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 JE(i.type,i)},lanesOf:n=>t().filter(i=>i.type==="bpmn:Lane"&&oh(i)===n).sort((i,r)=>i.y-r.y).map(i=>i.id),participantOf:n=>{const i=e.get(n);return i?oh(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 ol=20,e1=4,ht=(e,t)=>Math.abs(e-t)<.5;function vs(e,t,n,i=ol){if(ht(e.y,t.y)&&!ht(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(ht(e.x,t.x)&&!ht(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 sh(e,t,n,i=ol){if(n.length<2)return null;if(ht(e.y,t.y)&&!ht(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,f=Math.max(...n.map(d=>d.y+d.height))+i,p=d=>[{x:c,y:e.y},{x:c,y:d},{x:u,y:d},{x:u,y:e.y}];return[p(l),p(f)]}if(ht(e.x,t.x)&&!ht(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,f=Math.max(...n.map(d=>d.x+d.width))+i,p=d=>[{x:e.x,y:c},{x:d,y:c},{x:d,y:u},{x:e.x,y:u}];return[p(l),p(f)]}return null}function ch(e,t,n=ol){if(e.length!==4)return null;const[i,r,o,a]=e;if(ht(i.y,r.y)&&ht(r.x,o.x)&&ht(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(ht(i.x,r.x)&&ht(r.y,o.y)&&ht(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 bs(e,t){if(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[];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 uh=30,t1=[0,-25,25,-40,40];function n1(e,t){if(e.type!=="bpmn:MessageFlow"||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[];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+uh:s-uh,u=a?i.y+i.height:i.y,l=n.x+n.width/2,f=i.x+i.width/2;return t1.map(p=>[{x:l,y:s},{x:l,y:c},{x:f+p,y:c},{x:f+p,y:u}])}const al=(e,t,n)=>[...e.slice(0,t+1),...n,...e.slice(t+1)],uo=(e,t,n)=>Qt({...e,waypoints:t},n).length;function sl(e,t,n,i){let r=[...e.waypoints],o=uo(e,r,t);if(o===0)return null;let a=!1;for(const f of bs(e,t))if(uo(e,f,t)===0)return f;const s=(i??[]).filter(f=>f.id!==e.id).flatMap(yn),c=f=>yn({...e,waypoints:f}).some(p=>ms(p,s).length>0),u=n1(e,t).filter(f=>uo(e,f,t)===0);if(u.length)return u.find(f=>!c(f))??u[0];const l=f=>!n||f.every(p=>p.x>=n.x&&p.x<=n.x+n.width&&p.y>=n.y&&p.y<=n.y+n.height);if(e.endpoints.length===2&&r.length>2){const f=t.find(d=>d.id===e.endpoints[0]),p=t.find(d=>d.id===e.endpoints[1]);if(f&&p&&ht(f.y+f.height/2,p.y+p.height/2)){const d=[r[0],r[r.length-1]];if(ht(d[0].y,d[1].y)&&!ht(d[0].x,d[1].x)){const h=t.filter(v=>!e.endpoints.includes(v.id)&&Qt({...e,waypoints:d},[v]).length>0),m=h.length>=2?sh(d[0],d[1],h):null,y=(m?m.map(v=>[d[0],...v,d[1]]):h.length===1?(vs(d[0],d[1],h[0])??[]).map(v=>[d[0],...v,d[1]]):h.length===0?[d]:[]).filter(v=>uo(e,v,t)===0&&v.length<=r.length).sort((v,b)=>Number(l(b))-Number(l(v)));if(y.length)return y.find(v=>!c(v))??y[0]}}}for(let f=0;f+1<r.length;f++){const p=r[f],d=r[f+1],h=t.filter(y=>!e.endpoints.includes(y.id)&&Qt({...e,waypoints:[p,d]},[y]).length>0);if(h.length<2)continue;const m=sh(p,d,h);if(!m)continue;const g=m.map(y=>al(r,f,y)).filter(y=>uo(e,y,t)===0).sort((y,v)=>Number(l(v))-Number(l(y)));if(g.length)return g.find(y=>!c(y))??g[0]}for(let f=0;f<e1&&o>0;f++){let p=!1;for(let d=0;d+1<r.length&&!p;d++){const h=r[d],m=r[d+1];for(const g of t){if(e.endpoints.includes(g.id)||Qt({...e,waypoints:[h,m]},[g]).length===0)continue;const y=vs(h,m,g),v=y?y.map(_=>al(r,d,_)):ch(r,g)??[];if(!v.length)continue;const b=[...v].sort((_,C)=>Number(l(C))-Number(l(_)));for(const _ of b){const C=uo(e,_,t);if(C<o){r=_,o=C,p=!0,a=!0;break}}if(p)break}}if(!p)break}return a&&o===0?r:null}function cl(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=zn(o),s=new Set,c=Pn(o).filter(l=>l.kind==="edge-crosses-shape"&&!t.has(Fn(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 f=o.edges.find(p=>p.id===l.edge);f&&u.set(l.edge,f)}for(const[l,f]of u){if(n&&!n.has(l))continue;const p=i.get(l);if(!p)continue;const d=p.parent,h=d&&typeof d.x=="number"&&typeof d.width=="number"?{x:d.x,y:d.y,width:d.width,height:d.height}:void 0,m=sl(f,a,h,o.edges);if(!m){Qt(f,a).some(b=>b.type==="bpmn:TextAnnotation")&&s.add(l);continue}const g=o.edges.filter(b=>b.id!==l),y=jn(f,g);jn({...f,waypoints:m},g)>y||r.updateWaypoints(p,m)}return s}const i1=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},ul=(e,t)=>Jo(e,[t])>0;function lh(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=zn(o);let s=o;const c=new Set(Pn(o).map(Fn));for(const[u,l]of ys(o))if(!t.has(`${u}|${l}`))for(const[f,p]of[[u,l],[l,u]]){if(n.has(f))continue;const d=s.edges.find(I=>I.id===f),h=s.edges.find(I=>I.id===p);if(!d||!h)continue;const m=i.get(f);if(!m)continue;const g=m.parent,y=g&&typeof g.x=="number"&&typeof g.width=="number"?{x:g.x,y:g.y,width:g.width,height:g.height}:void 0,v=i1(h),b=[...bs(d,a)??[]],_=sl(d,[...a,...v],y,o.edges);_&&b.push(_);for(let I=0;I+1<d.waypoints.length;I++)for(const k of v)for(const O of vs(d.waypoints[I],d.waypoints[I+1],k)??[])b.push(al(d.waypoints,I,O));const C=s.edges.filter(I=>I.id!==f),P=I=>({...s,edges:s.edges.map(k=>k.id===f?{...k,waypoints:I}:k)}),D=I=>!y||I.every(k=>k.x>=y.x&&k.x<=y.x+y.width&&k.y>=y.y&&k.y<=y.y+y.height),T=b.find(I=>{const k={...d,waypoints:I};return ul(k,h)||!D(I)||C.some(O=>O.id!==p&&!ul(d,O)&&ul(k,O))?!1:Pn(P(I)).every(O=>c.has(Fn(O)))});if(T){r.updateWaypoints(m,T),s=P(T);break}}}const r1=10;function ph(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 fh(e,t){if(e.waypoints.length<2||e.endpoints.length!==2)return null;const n=t.shapes.filter(H=>H.type==="bpmn:Participant"&&H.container),i=t.shapes.find(H=>H.id===e.endpoints[0]),r=t.shapes.find(H=>H.id===e.endpoints[1]);if(!i||!r)return null;const o=ph(i,n),a=ph(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(H=>H.id!==o.id&&H.id!==a.id&&H.y>=c.y+c.height&&H.y+H.height<=u.y).sort((H,se)=>H.y-se.y);if(!l.length)return null;const f=l[0],p=l[l.length-1],d=(c.y+c.height+f.y)/2,h=(p.y+p.height+u.y)/2,m=s?d:h,g=s?h:d,y=e.waypoints[0],v=e.waypoints[e.waypoints.length-1],b=zn(t),_=t.edges.filter(H=>H.id!==e.id),C=Hn(e,_),P=Qt(e,b).length;if(C===0&&P===0||P===0&&e.waypoints.length===2)return null;const D=Math.min(...l.map(H=>H.x)),T=Math.max(...l.map(H=>H.x+H.width)),I=(y.x+v.x)/2,k=H=>H.filter((se,Ee)=>Ee===0||!(ht(se.x,H[Ee-1].x)&&ht(se.y,H[Ee-1].y)));let O;for(let H=D;H<=T;H+=r1){const se=k([y,{x:y.x,y:m},{x:H,y:m},{x:H,y:g},{x:v.x,y:g},v]),Ee={...e,waypoints:se};if(Qt(Ee,b).length>0)continue;const qe=Hn(Ee,_),ze=Math.abs(H-I);(!O||qe<O.cross||qe===O.cross&&ze<O.detour)&&(O={pts:se,cross:qe,detour:ze})}return O&&(P>0?O.cross<=C:O.cross<C)?O.pts:null}function dh(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=fh(s,a);if(!c)continue;const u=n.get(o.id);u&&i.updateWaypoints(u,c)}}const di=[25,-25,40,-40],lo=35;function o1(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)-lo:Math.max(e.y+e.height,t.y+t.height)+lo;for(const u of[0,...di])if(!(Math.abs(u)>=e.width/2-5))for(const l of[0,...di]){if(Math.abs(l)>=t.width/2-5)continue;const f=n+u,p=i+l;r.push({pts:[{x:f,y:a},{x:f,y:c},{x:p,y:c},{x:p,y:s}],cost:Math.abs(l)+Math.abs(u)})}}return r}function _s(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 o1(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-lo:n.y+n.height+lo,f=[];for(const v of[0,...di]){if(Math.abs(v)>=i.width/2-5)continue;const b=o+v;f.push({pts:[{x:n.x,y:r},{x:b,y:r},{x:b,y:c}],cost:Math.abs(v)});for(const _ of[0,...di]){if(Math.abs(_)>=n.width/2-5)continue;const C=a+_;f.push({pts:[{x:C,y:u},{x:C,y:l},{x:b,y:l},{x:b,y:c}],cost:Math.abs(v)+Math.abs(_)})}}const p=50,d=i.y+i.height/2,h=s?n.y+n.height:n.y;for(const v of[0,...di]){if(Math.abs(v)>=n.width/2-5)continue;const b=a+v;f.push({pts:[{x:b,y:h},{x:b,y:d},{x:i.x+i.width,y:d}],cost:p+Math.abs(v)})}const m=60,g=s?i.y+i.height:i.y,y=s?i.y+i.height+lo:i.y-lo;for(const v of[0,...di]){if(Math.abs(v)>=i.width/2-5)continue;const b=o+v;for(const _ of[0,...di]){if(Math.abs(_)>=n.width/2-5)continue;const C=a+_;f.push({pts:[{x:C,y:h},{x:C,y},{x:b,y},{x:b,y:g}],cost:m+Math.abs(v)+Math.abs(_)})}}return f}const xs=30;function hh(e,t){for(let n=1;n<e.length-2;n++){const i=e[n],r=e[n+1],o=ht(i.y,r.y)&&!ht(i.x,r.x),a=ht(i.x,r.x)&&!ht(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)<xs||Math.abs(i.y-(s.y+s.height))<xs)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)<xs||Math.abs(i.x-(s.x+s.width))<xs)return!0}}return!1}const ws=40;function a1(e,t,n){let i=0;for(const r of t){if(r.container||n.includes(r.id))continue;const o=r.x-ws,a=r.x+r.width+ws,s=r.y-ws,c=r.y+r.height+ws;for(let u=1;u<e.length-2;u++){const l=e[u],f=e[u+1],p={x:Math.min(l.x,f.x),y:Math.min(l.y,f.y)},d={x:Math.max(l.x,f.x),y:Math.max(l.y,f.y)};if(p.x<a&&d.x>o&&p.y<c&&d.y>s){i++;break}}}return i}function mh(e,t){if(e.type!=="bpmn:SequenceFlow")return null;const n=t.shapes.filter(P=>P.container),i=new Map(t.shapes.map(P=>[P.id,P])),r=zn(t),o=t.edges.filter(P=>P.id!==e.id),a=jn(e,o),s=Hn(e,o),c=P=>a1(P,t.shapes,e.endpoints)+(hh(P,n)?1:0),u=c(e.waypoints),l=P=>{if(!P)return;const D=P.x+P.width/2,T=P.y+P.height/2;return n.find(I=>I.type==="bpmn:Lane"&&D>=I.x&&D<=I.x+I.width&&T>=I.y&&T<=I.y+I.height)},f=l(i.get(e.endpoints[0]??"")),p=l(i.get(e.endpoints[1]??"")),d=!!f&&!!p&&f.id!==p.id,h=P=>{if(!d||!p)return!1;for(let D=1;D<P.length-2;D++){const T=P[D],I=P[D+1];if(ht(T.y,I.y)&&!ht(T.x,I.x)&&T.y>p.y&&T.y<p.y+p.height)return!0}return!1},m=h(e.waypoints),y=(P=>{if(!P)return;const D=P.x+P.width/2,T=P.y+P.height/2;return n.filter(I=>I.type==="bpmn:Participant"&&D>=I.x&&D<=I.x+I.width&&T>=I.y&&T<=I.y+I.height).sort((I,k)=>I.width*I.height-k.width*k.height)[0]})(i.get(e.endpoints[0]??"")),v=P=>{if(!y)return 0;let D=0;for(let T=1;T<P.length-1;T++){const I=P[T];(I.x<y.x||I.x>y.x+y.width||I.y<y.y||I.y>y.y+y.height)&&D++}return D},b=v(e.waypoints);if(!hh(e.waypoints,n)&&!(d&&!m)&&b===0)return null;const _=P=>P.reduce((D,T,I)=>I?D+Math.abs(T.x-P[I-1].x)+Math.abs(T.y-P[I-1].y):0,0);let C;for(const{pts:P,cost:D}of _s(e,i)){const T={...e,waypoints:P};if(Qt(T,r).length>0)continue;const I=jn(T,o);if(I>a)continue;const k=v(P);if(k>b)continue;const O=k<b&&I===0;if(!O&&Hn(T,o)>s)continue;const H=c(P),se=h(P);if(!O&&!(se&&!m)&&H>=u)continue;const qe=se?0:1,ze=_(P);(!C||k<C.out||k===C.out&&(qe<C.lane||qe===C.lane&&(I<C.opp||I===C.opp&&(H<C.sc||H===C.sc&&(D<C.cost||D===C.cost&&ze<C.len)))))&&(C={pts:P,out:k,sc:H,lane:qe,opp:I,cost:D,len:ze})}return(C==null?void 0:C.pts)??null}function s1(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=zn(a),u=a.edges.filter(d=>d.id!==o),l=Qt(s,c).length,f=jn(s,u),p=Hn(s,u);for(const d of bs(s,a.shapes)){if(d.length>=s.waypoints.length)continue;const h={...s,waypoints:d};if(Qt(h,c).length>l||jn(h,u)>f||Hn(h,u)>p)continue;const m=n.get(o);m&&i.updateWaypoints(m,d);break}}}function gh(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=mh(s,a);if(!c)continue;const u=n.get(o);u&&i.updateWaypoints(u,c)}}function ll(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=ht(n[0].x,n[1].x)&&!ht(n[0].y,n[1].y),s=ht(n[n.length-1].x,n[n.length-2].x)&&!ht(n[n.length-1].y,n[n.length-2].y);for(const c of di){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 c1(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,f=i.y+i.height/2,p=a?n.x+n.width:n.x,d=o?n.y+n.height:n.y,h=a?i.x:i.x+i.width,m=o?i.y:i.y+i.height,g=[];for(const y of[0,...di])Math.abs(y)<i.width/2-5&&g.push({pts:[{x:p,y:u},{x:l+y,y:u},{x:l+y,y:m}],cost:Math.abs(y)}),Math.abs(y)<i.height/2-5&&g.push({pts:[{x:c,y:d},{x:c,y:f+y},{x:h,y:f+y}],cost:Math.abs(y)});return g}function pl(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,f=[];for(const p of[0,...di]){const d=l+p;d<=r||d>=o||f.push({pts:[{x:d,y:c},{x:d,y:u}],cost:Math.abs(p)})}return f}function yh(e,t){const n=new Map(t.shapes.map(d=>[d.id,d])),i=zn(t),r=t.edges.filter(d=>d.id!==e.id),o=jn(e,r);if(o===0)return null;const a=Hn(e,r);let s;const c=d=>d.reduce((h,m,g)=>g?h+Math.abs(m.x-d[g-1].x)+Math.abs(m.y-d[g-1].y):0,0),u=3,l=d=>{const h=d[0],m=d[d.length-1],g=Math.hypot(m.x-h.x,m.y-h.y);return g>=1&&c(d)/g>=u?1:0},f=l(e.waypoints),p=[..._s(e,n),...pl(e,n),...ll(e,n)];for(const{pts:d,cost:h}of p){const m={...e,waypoints:d};if(Qt(m,i).length>0)continue;const g=jn(m,r),y=Hn(m,r),v=o-g+(f-l(d));if(g>=o||y-a>v)continue;const b=c(d);(!s||g<s.opposite||g===s.opposite&&(y<s.cross||y===s.cross&&(h<s.cost||h===s.cost&&b<s.len)))&&(s={pts:d,opposite:g,cross:y,cost:h,len:b})}return(s==null?void 0:s.pts)??null}function vh(e,t){var i;let n=0;for(const r of t)r.id!==e.id&&((i=ao(e,r))==null?void 0:i.kind)==="unrelated"&&n++;return n}function u1(e,t){const n=new Map(t.shapes.map(p=>[p.id,p])),i=zn(t),r=t.edges.filter(p=>p.id!==e.id),o=vh(e,r);if(o===0)return null;const a=jn(e,r),s=Hn(e,r),c=p=>p.reduce((d,h,m)=>m?d+Math.abs(h.x-p[m-1].x)+Math.abs(h.y-p[m-1].y):0,0),u=2;let l;const f=[..._s(e,n),...pl(e,n),...c1(e,n),...ll(e,n)];for(const{pts:p,cost:d}of f){const h={...e,waypoints:p};if(Qt(h,i).length>0)continue;const m=vh(h,r);if(m>=o)continue;const g=jn(h,r);if(g-m>a-o)continue;const y=Hn(h,r);if(y-s>(o-m)*u)continue;const v=c(p);(!l||m<l.fake||m===l.fake&&(g<l.unreadable||g===l.unreadable&&(y<l.cross||y===l.cross&&(d<l.cost||d===l.cost&&v<l.length))))&&(l={pts:p,fake:m,unreadable:g,cross:y,cost:d,length:v})}return(l==null?void 0:l.pts)??null}function bh(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=Pn(ot(i)).filter(s=>s.kind==="edge-overlap-unrelated"&&!t.has(Fn(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(p=>p.id===s);if(!u)continue;const l=u1(u,c);if(!l)continue;const f=i.get(s);f&&r.updateWaypoints(f,l)}}function _h(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 xh(e,t,n){var u;if(e.type!=="bpmn:SequenceFlow"||t.type!=="bpmn:SequenceFlow"||((u=ao(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:_h(e,n)&&_h(t,n)}function wh(e,t,n){let i=0;for(const r of t)r.id!==e.id&&xh(e,r,n)&&i++;return i}function l1(e,t){const n=new Map(t.shapes.map(p=>[p.id,p])),i=zn(t),r=t.edges.filter(p=>p.id!==e.id),o=wh(e,r,n);if(o===0)return null;const a=jn(e,r),s=Hn(e,r),c=p=>p.reduce((d,h,m)=>m?d+Math.abs(h.x-p[m-1].x)+Math.abs(h.y-p[m-1].y):0,0),u=2;let l;const f=[..._s(e,n),...pl(e,n),...ll(e,n)];for(const{pts:p,cost:d}of f){const h={...e,waypoints:p};if(Qt(h,i).length>0)continue;const m=wh(h,r,n);if(m>=o)continue;const g=jn(h,r);if(g-m>a-o)continue;const y=Hn(h,r);if(y-s>(o-m)*u)continue;const v=c(p);(!l||m<l.chain||m===l.chain&&(g<l.unreadable||g===l.unreadable&&(y<l.cross||y===l.cross&&(d<l.cost||d===l.cost&&v<l.length))))&&(l={pts:p,chain:m,unreadable:g,cross:y,cost:d,length:v})}return(l==null?void 0:l.pts)??null}function p1(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=new Map(o.shapes.map(u=>[u.id,u])),s=Pn(o).filter(u=>u.kind==="edge-overlap-opposite"&&!t.has(Fn(u)));if(!s.length)return;const c=new Set;for(const u of s){if(u.kind!=="edge-overlap-opposite")continue;const[l,f]=u.edges.map(p=>o.edges.find(d=>d.id===p));if(!(!l||!f||!xh(l,f,a)))for(const p of u.edges)n.has(p)||c.add(p)}for(const u of[...c].sort()){const l=ot(i),f=l.edges.find(h=>h.id===u);if(!f)continue;const p=l1(f,l);if(!p)continue;const d=i.get(u);d&&r.updateWaypoints(d,p)}}function Eh(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=Pn(o).filter(l=>nl(l)&&!t.has(Fn(l)));if(!a.length)return;const s=new Set;for(const l of a)if(nl(l))for(const f of l.edges)n.has(f)||s.add(f);const c=l=>{var f;return((f=o.edges.find(p=>p.id===l))==null?void 0:f.type)??""},u=[...s].sort((l,f)=>{const p=c(l)==="bpmn:SequenceFlow"?0:1,d=c(f)==="bpmn:SequenceFlow"?0:1;return p!==d?p-d:l.localeCompare(f)});for(const l of u){const f=ot(i),p=f.edges.find(m=>m.id===l);if(!p)continue;const d=yh(p,f);if(!d)continue;const h=i.get(l);h&&r.updateWaypoints(h,d)}}const f1=10,d1=(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 Sh(e,t){const n=e.label;if(!n)return null;const i=t.edges.filter(a=>a.id!==e.id);if(!gs(e,i))return null;const r=zn(t),o=i.flatMap(yn);for(const a of yn(e)){let s=[[a.lo,a.hi]];for(const[d,h]of ms(a,o))s=s.flatMap(([m,g])=>{const y=[];return d>m&&y.push([m,Math.min(g,d)]),h<g&&y.push([Math.max(m,h),g]),y.filter(([v,b])=>b>v)});const c=a.axis==="h"?n.width:n.height,u=s.find(([d,h])=>h-d>=c+f1*2);if(!u)continue;const l=(u[0]+u[1])/2,f=a.axis==="h"?{x:l,y:a.at-Yd}:{x:a.at+An+n.width/2,y:l},p={x:f.x-n.width/2,y:f.y-n.height/2,width:n.width,height:n.height};if(!gs({...e,label:p},i)&&!r.some(d=>!e.endpoints.includes(d.id)&&d1(p,d)))return p}return null}const An=8;function Rh(e,t){const n=e.label;if(!n)return null;const i=yn(e);if(!i.length)return null;const r=n.x+n.width/2,o=n.y+n.height/2,a=p=>{const d=p.axis==="h"?r:o,h=p.axis==="h"?o-p.at:r-p.at,m=d<p.lo?p.lo-d:d>p.hi?d-p.hi:0;return Math.hypot(h,m)},s=i.reduce((p,d)=>a(d)<a(p)?d:p,i[0]),c=[...i,...t.edges.filter(p=>p.id!==e.id).flatMap(yn),...t.shapes.filter(p=>p.container).flatMap(Qo)],u=p=>!c.some(d=>Ti(p,d));if(u(n))return null;const l=(s.axis==="v"?n.height:n.width)+An,f=[0,-l,l,-2*l,2*l];if(s.axis==="v")for(const p of[s.at+An,s.at-An-n.width])for(const d of f){const h=n.y+d;if(h<s.lo||h+n.height>s.hi)continue;const m={...n,x:p,y:h};if(u(m))return m}else for(const p of[s.at-An-n.height,s.at+An])for(const d of f){const h=n.x+d;if(h<s.lo||h+n.width>s.hi)continue;const m={...n,x:h,y:p};if(u(m))return m}return null}function Ch(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=Rh(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 Ph(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=ot(i),a=Pn(o).filter(s=>s.kind==="label-on-shared-segment"&&!t.has(Fn(s)));for(const s of a){if(s.kind!=="label-on-shared-segment"||n.has(s.edge))continue;const c=o.edges.find(p=>p.id===s.edge);if(!c)continue;const u=Sh(c,o);if(!u)continue;const l=i.get(s.edge),f=l==null?void 0:l.label;f&&r.moveElements([f],{x:u.x-f.x,y:u.y-f.y})}}function Ah(e,t){const n=e.label;if(!n)return null;const i=[...t.edges.flatMap(yn),...t.shapes.filter(p=>p.container).flatMap(Qo)],r=i.filter(p=>Ti(n,p));if(!r.length)return null;const o=t.shapes.filter(p=>!p.container&&p.id!==e.id),a=co(t).filter(p=>p.owner!==e.id).map(p=>p.rect),s=(p,d)=>p.x<d.x+d.width&&d.x<p.x+p.width&&p.y<d.y+d.height&&d.y<p.y+p.height,c=p=>!i.some(d=>Ti(p,d))&&!o.some(d=>s(p,d))&&!a.some(d=>s(p,d)),u=[];for(const p of r)p.axis==="h"?u.push({...n,y:p.at-An-n.height},{...n,y:p.at+An}):u.push({...n,x:p.at-An-n.width},{...n,x:p.at+An});const l=e.x+e.width/2,f=e.y+e.height/2;return u.push({...n,x:l-n.width/2,y:e.y+e.height+An},{...n,x:l-n.width/2,y:e.y-An-n.height},{...n,x:e.x+e.width+An,y:f-n.height/2},{...n,x:e.x-An-n.width,y:f-n.height/2}),u.find(c)??null}function Th(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=Ah(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 h1=/^[\p{L}_][\p{L}\p{N}_.\-]*$/u,Mh=new Set(["sequenceFlow","messageFlow","dataAssociation","association"]),kh={"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}]},Es=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),fl=e=>typeof e=="string"&&e!=="";function m1(e){const t=[];function n(i,r,o,a){if(a===null){fl(o)||t.push({kind:"payload-invalid",opIndex:i,field:r});return}if(!Es(o)){t.push({kind:"payload-invalid",opIndex:i,field:r});return}for(const s of a)fl(o[s])||t.push({kind:"payload-invalid",opIndex:i,field:`${r}.${s}`})}return e.forEach((i,r)=>{var o,a;if(!Es(i)||!fl(i.kind)||!(i.kind in kh)){t.push({kind:"payload-invalid",opIndex:r,field:"kind"});return}for(const s of kh[i.kind]){const c=s.path.endsWith("[]"),u=c?s.path.slice(0,-2):s.path,l=u.split(".");let f=i;for(const d of l.slice(0,-1)){if(!Es(f))break;f=f[d]}if(!Es(f))continue;const p=f[l[l.length-1]];if(!(p===void 0&&s.optional)&&!(p===null&&s.optional)){if(!c){n(r,s.path,p,s.shape);continue}if(!Array.isArray(p)){t.push({kind:"payload-invalid",opIndex:r,field:s.path});continue}p.forEach((d,h)=>n(r,`${u}[${h}]`,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"&&!pd(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 Oh(e,t){const n=m1(e);if(n.length>0)return n;const i=[],r=new Map,o=new Map;function a(p,d,h){if(!h1.test(d)){i.push({kind:"id-invalid",opIndex:p,id:d});return}if(t.categoryOf(d)!==void 0||r.has(d)){i.push({kind:"id-duplicate",opIndex:p,id:d});return}r.set(d,{...h,opIndex:p})}e.forEach((p,d)=>{var h;switch(p.kind){case"participant.add":a(d,p.participant.id,{category:"participant",lanes:(p.participant.lanes??[]).map(m=>m.id)});for(const m of p.participant.lanes??[])a(d,m.id,{category:"lane"});break;case"node.add":a(d,p.node.id,{category:"flowNode",participant:p.node.participant});break;case"sequenceFlow.add":a(d,p.flow.id,{category:"sequenceFlow"});break;case"messageFlow.add":a(d,p.flow.id,{category:"messageFlow"});break;case"dataStore.add":a(d,p.dataStore.id,{category:"dataStore"});for(const m of p.associations??[])m.id&&a(d,m.id,{category:"dataAssociation"});break;case"dataAssociation.add":p.association.id&&a(d,p.association.id,{category:"dataAssociation"});break;case"association.add":p.association.id&&a(d,p.association.id,{category:"association"});break;case"annotation.add":a(d,p.annotation.id,{category:"annotation"}),(h=p.association)!=null&&h.id&&a(d,p.association.id,{category:"association"});break;case"group.add":a(d,p.group.id,{category:"group"});break;case"participant.update":if(p.lanes){o.set(p.id,p.lanes.map(m=>m.id));for(const m of p.lanes)t.categoryOf(m.id)===void 0&&a(d,m.id,{category:"lane"})}break}});const s=p=>{var d;return((d=r.get(p))==null?void 0:d.category)??t.categoryOf(p)},c=p=>{const d=r.get(p);return d?d.category==="participant"?p:d.participant:t.categoryOf(p)==="participant"?p:t.participantOf(p)};function u(p,d,h,m){const g=s(d);if(g===void 0){i.push({kind:"ref-missing",opIndex:p,ref:d,role:h});return}if(m&&!m.includes(g)){i.push({kind:"ref-category",opIndex:p,ref:d,role:h,expected:m.join("|"),actual:g});return}return g}const l=t.isCollaboration()||e.some(p=>p.kind==="participant.add");return e.forEach((p,d)=>{var h;switch(p.kind){case"participant.add":break;case"node.add":{const{participant:m,lane:g}=p.node;if(m===void 0){(l||g!==void 0)&&i.push({kind:"participant-required",opIndex:d,id:p.node.id});break}if(u(d,m,"participant",["participant"])===void 0)break;g!==void 0&&((((h=r.get(m))==null?void 0:h.lanes)??o.get(m)??t.lanesOf(m)).includes(g)||i.push({kind:"lane-unknown",opIndex:d,lane:g,participant:m}));break}case"sequenceFlow.add":{const{id:m,source:g,target:y,name:v,condition:b}=p.flow,_=u(d,g,"source",["flowNode"]),C=u(d,y,"target",["flowNode"]);_&&C&&c(g)!==c(y)&&i.push({kind:"flow-cross-pool",opIndex:d,id:m}),v!==void 0&&b!==void 0&&i.push({kind:"condition-name-conflict",opIndex:d,id:m});break}case"messageFlow.add":{const{id:m,source:g,target:y}=p.flow,v=u(d,g,"source",["flowNode","participant"]),b=u(d,y,"target",["flowNode","participant"]);if(v&&b){const _=c(g),C=c(y);_!==void 0&&_===C&&i.push({kind:"message-flow-same-pool",opIndex:d,id:m})}break}case"dataStore.add":{for(const m of p.associations??[]){if([m.source,m.target].filter(v=>v===p.dataStore.id).length!==1){i.push({kind:"data-association-ends",opIndex:d,source:m.source,target:m.target});continue}const y=m.source===p.dataStore.id?m.target:m.source;u(d,y,"dataAssociation",["flowNode"])}break}case"dataAssociation.add":{const{source:m,target:g}=p.association,y=u(d,m,"source"),v=u(d,g,"target");if(y&&v){const b=new Set([y,v]);b.has("dataStore")&&b.has("flowNode")||i.push({kind:"data-association-ends",opIndex:d,source:m,target:g})}break}case"association.add":{const{id:m,source:g,target:y}=p.association,v=u(d,g,"source"),b=u(d,y,"target");v&&b&&v!=="annotation"&&b!=="annotation"&&i.push({kind:"association-detached",opIndex:d,annotation:m??`${g}->${y}`});break}case"annotation.add":{if(p.association){const{source:m,target:g}=p.association;if(m!==p.annotation.id&&g!==p.annotation.id)i.push({kind:"association-detached",opIndex:d,annotation:p.annotation.id});else{const y=m===p.annotation.id?g:m;u(d,y,"association")}}p.placement&&u(d,p.placement.anchor,"anchor");break}case"group.add":{for(const m of p.group.members??[]){const g=u(d,m,"member");g&&Mh.has(g)&&i.push({kind:"ref-category",opIndex:d,ref:m,role:"member",expected:"shape",actual:g})}break}case"participant.update":{if(f(d,p.id,"participant")===void 0)break;if(p.lanes){const m=t.lanesOf(p.id),g=p.lanes.map(v=>v.id);for(const v of m)g.includes(v)||i.push({kind:"lane-shrink-unsupported",opIndex:d,participant:p.id,lane:v});for(const v of g)t.categoryOf(v)!==void 0&&!m.includes(v)&&i.push({kind:"id-duplicate",opIndex:d,id:v});const y=g.filter(v=>m.includes(v));y.length===m.length&&y.some((v,b)=>v!==m[b])&&i.push({kind:"lane-reorder-unsupported",opIndex:d,participant:p.id})}break}case"node.update":{if(f(d,p.id,"flowNode")===void 0)break;if(p.lane!==void 0){const m=t.participantOf(p.id);(m?o.get(m)??t.lanesOf(m):[]).includes(p.lane)||i.push({kind:"lane-unknown",opIndex:d,lane:p.lane,participant:m??""})}break}case"sequenceFlow.update":{if(f(d,p.id,"sequenceFlow")===void 0)break;if(p.name!==void 0&&p.condition!==void 0&&i.push({kind:"condition-name-conflict",opIndex:d,id:p.id}),p.source!==void 0||p.target!==void 0){const m=p.source===void 0||u(d,p.source,"source",["flowNode"])!==void 0,g=p.target===void 0||u(d,p.target,"target",["flowNode"])!==void 0,y=t.endpointsOf(p.id),v=p.source??(y==null?void 0:y.source),b=p.target??(y==null?void 0:y.target);m&&g&&v!==void 0&&b!==void 0&&new Set([c(v),c(b),c(p.id)]).size>1&&i.push({kind:"flow-cross-pool",opIndex:d,id:p.id})}break}case"messageFlow.update":f(d,p.id,"messageFlow");break;case"dataStore.update":f(d,p.id,"dataStore");break;case"annotation.update":{if(f(d,p.id,"annotation")===void 0)break;p.placement&&u(d,p.placement.anchor,"anchor");break}case"group.update":{if(f(d,p.id,"group")===void 0)break;for(const m of p.members??[]){const g=u(d,m,"member");g&&Mh.has(g)&&i.push({kind:"ref-category",opIndex:d,ref:m,role:"member",expected:"shape",actual:g})}break}case"element.remove":{f(d,p.id)==="lane"&&i.push({kind:"ref-category",opIndex:d,ref:p.id,role:"target",expected:"removable",actual:"lane"});break}}}),i;function f(p,d,h){if(r.has(d)){i.push({kind:"target-added-in-batch",opIndex:p,id:d});return}const m=t.categoryOf(d);if(m===void 0){i.push({kind:"ref-missing",opIndex:p,ref:d,role:"target"});return}if(h&&m!==h){i.push({kind:"ref-category",opIndex:p,ref:d,role:"target",expected:h,actual:m});return}return m}}function Dh(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")}}function Ss(e){return`bpmn:${e[0].toUpperCase()}${e.slice(1)}`}const Rs={"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]},Jt=10,Lh=40,g1=10;function dl(e,t,n,i,r){const o=n,a=(k,O)=>{const[H,se]=Rs[k];let Ee={x:t.x+t.width/2+H*(t.width/2+o.width/2+O),y:t.y+t.height/2+se*(t.height/2+o.height/2+O)};const qe=i.x+Jt+o.width/2,ze=i.x+i.width-Jt-o.width/2,q=i.y+Jt+o.height/2,ue=i.y+i.height-Jt-o.height/2,oe={x:Math.min(ze,Math.max(qe,Ee.x)),y:Math.min(ue,Math.max(q,Ee.y))};return(oe.x!==Ee.x||oe.y!==Ee.y)&&(Ee=Math.abs(oe.x-(t.x+t.width/2))<(t.width+o.width)/2+Jt&&Math.abs(oe.y-(t.y+t.height/2))<(t.height+o.height)/2+Jt?{x:t.x+t.width+Jt+o.width/2,y:oe.y}:oe),Ee},s=(i.children??[]).filter(k=>!("waypoints"in k&&k.waypoints)&&k.type!=="bpmn:Lane"&&k.type!=="label"&&typeof k.x=="number"&&k.id!==r.selfId),c=ot(e),u=k=>{var H,se;if(!r.selfId)return!1;const O=e.get(k);return!!O&&(((H=O.source)==null?void 0:H.id)===r.selfId||((se=O.target)==null?void 0:se.id)===r.selfId)},l=c.edges.filter(k=>!u(k.id)).flatMap(yn),f=co(c).filter(k=>k.owner!==r.selfId).map(k=>k.rect),p=k=>({x0:k.x-o.width/2-Jt,x1:k.x+o.width/2+Jt,y0:k.y-o.height/2-Jt,y1:k.y+o.height/2+Jt}),d=k=>{const O=p(k);return s.some(H=>O.x0<H.x+H.width&&O.x1>H.x&&O.y0<H.y+H.height&&O.y1>H.y)},h=k=>{const O=p(k);return l.some(H=>H.axis==="h"?H.at>O.y0&&H.at<O.y1&&H.lo<O.x1&&H.hi>O.x0:H.at>O.x0&&H.at<O.x1&&H.lo<O.y1&&H.hi>O.y0)},m=k=>{const O=p(k);return f.some(H=>O.x0<H.x+H.width&&O.x1>H.x&&O.y0<H.y+H.height&&O.y1>H.y)},g=c.shapes.filter(k=>k.type==="bpmn:Group").flatMap(k=>[{axis:"h",at:k.y,lo:k.x,hi:k.x+k.width},{axis:"h",at:k.y+k.height,lo:k.x,hi:k.x+k.width},{axis:"v",at:k.x,lo:k.y,hi:k.y+k.height},{axis:"v",at:k.x+k.width,lo:k.y,hi:k.y+k.height}]),y=k=>{const O=p(k);return g.some(H=>H.axis==="h"?H.at>O.y0&&H.at<O.y1&&H.lo<O.x1&&H.hi>O.x0:H.at>O.x0&&H.at<O.x1&&H.lo<O.y1&&H.hi>O.y0)},v=k=>d(k)||h(k)||m(k)||y(k),b=k=>k.x-o.width/2>=i.x&&k.x+o.width/2<=i.x+i.width&&k.y-o.height/2>=i.y&&k.y+o.height/2<=i.y+i.height;if(r.placement){const k=ze=>ze.startsWith("top")?ze.replace(/^top/,"bottom"):ze.replace(/^bottom/,"top"),O=ze=>ze.endsWith("left")?ze.replace(/left$/,"right"):ze.replace(/right$/,"left"),H=r.placement.side,se=[H,k(H),O(H),k(O(H)),"top","bottom","left","right","top-left","top-right","bottom-left","bottom-right"],Ee=r.placement.offset??50;let qe=a(H,Ee);if(v(qe)){const ze=new Set;for(const q of se){if(ze.has(q))continue;ze.add(q);const ue=a(q,Ee);if(b(ue)&&!v(ue)){qe=ue;break}}}return qe}const _=r.from,C=i.x+Jt+o.width/2,P=i.x+i.width-Jt-o.width/2,D=i.y+Jt+o.height/2,T=i.y+i.height-Jt-o.height/2;let I={x:Math.min(P,Math.max(C,_.x)),y:Math.min(T,Math.max(D,_.y))};if(v(I)){const k=(t.width+o.width)/2+Jt,H=[{x:I.x+k,y:I.y},{x:I.x-k,y:I.y},{x:I.x,y:I.y-o.height-Jt},{x:I.x,y:I.y+o.height+Jt}].filter(b).find(se=>!v(se));H&&(I=H)}return I}function Yt(e,t){return e.filter(n=>n.kind===t)}function Ih(e,t){var l0,p0,f0,d0,h0,m0,g0,y0,v0,b0,_0,x0,w0,E0,S0,R0,C0,P0,A0,T0,M0,k0,O0;const{modeling:n,bpmnFactory:i,elementFactory:r,elementRegistry:o,canvas:a,autoPlace:s,bpmnReplace:c}=t,u=()=>a.getRootElement(),l=x=>o.get(x),f=x=>{const R=l(x);if(!R)throw new Error(`하강 참조 해소 실패: ${x}`);return R},p=x=>{let R=x.parent;for(;R;){if(R.type==="bpmn:Participant")return R;R=R.parent}},d=new Map;for(const x of o.filter(R=>!("waypoints"in R&&R.waypoints)&&R.type!=="bpmn:Lane"&&R.type!=="label"&&typeof R.x=="number"))d.set(x.id,{x:x.x,y:x.y});const h=Yt(e,"participant.add"),m=Yt(e,"node.add"),g=Yt(e,"sequenceFlow.add"),y=Yt(e,"messageFlow.add"),v=Yt(e,"dataStore.add"),b=Yt(e,"dataAssociation.add"),_=Yt(e,"annotation.add"),C=Yt(e,"group.add"),P=new Map(m.map(x=>[x.node.id,x])),D=(x,R,A)=>{var j;const L=x.businessObject,$=(((j=L.extensionElements)==null?void 0:j.values)??[]).filter(G=>G.$type!==R),B=A?[...$,i.create(R,A)]:$;if(!B.length){L.extensionElements&&n.updateProperties(x,{extensionElements:void 0});return}const F=i.create("bpmn:ExtensionElements",{values:B});B.forEach(G=>{G.$parent=F}),n.updateProperties(x,{extensionElements:F})},T=x=>({anchor:x.anchor,side:x.side,...x.offset!==void 0?{offset:x.offset}:{}});for(const x of Yt(e,"element.remove")){const R=l(x.id);R&&n.removeElements([R])}const I=x=>o.filter(R=>{var A;return R.type==="bpmn:Lane"&&((A=p(R))==null?void 0:A.id)===x}).sort((R,A)=>R.y-A.y);for(const x of Yt(e,"participant.update")){const R=f(x.id);if(x.name!==void 0&&n.updateProperties(R,{name:x.name??void 0}),!x.lanes)continue;const A=I(x.id);if(!A.length){n.splitLane(R,x.lanes.length),I(x.id).forEach(($,B)=>{const F=x.lanes[B];F&&n.updateProperties($,{id:F.id,name:F.name})});continue}const L=new Set(A.map($=>$.id));x.lanes.forEach(($,B)=>{if(L.has($.id)){n.updateProperties(f($.id),{name:$.name});return}const F=B===0?n.addLane(I(x.id)[0],"top"):n.addLane(f(x.lanes[B-1].id),"bottom");n.updateProperties(F,{id:$.id,name:$.name})})}const k=150,O=130,H=80,se=90,Ee=180,qe=30,ze=30,q=(x,R,A,L,$)=>{const B=A-R.width/2,F=L-R.height/2;return(x.children??[]).find(j=>!("waypoints"in j&&j.waypoints)&&j.type!=="bpmn:Lane"&&j.type!=="label"&&!($!=null&&$.has(j.id))&&typeof j.x=="number"&&B<j.x+j.width+ze&&B+R.width+ze>j.x&&F<j.y+j.height&&F+R.height>j.y)},ue=new Set;for(const x of h){ue.add(`pool:${x.participant.id}`);for(const R of x.participant.lanes??[])ue.add(R.id)}const oe=new Map;for(const x of m){const R=x.node.lane??`pool:${x.node.participant??""}`;let A=oe.get(R);A||oe.set(R,A=new Set([0])),x.band!==void 0&&A.add(x.band)}const le=new Map;for(const[x,R]of oe){if(!ue.has(x))continue;const A=[...R].sort((B,F)=>B-F),L=A.map((B,F)=>F===0?0:F%2===1?Math.ceil(F/2):-(F/2)),$=Math.min(...L);le.set(x,new Map(A.map((B,F)=>[B,L[F]-$])))}{const x=new Map;for(const R of h)(R.participant.lanes??[]).forEach((A,L)=>x.set(A.id,L));for(const[R,A]of le){if(!x.has(R)||A.size<2)continue;const L=x.get(R),$=A.get(0)??0,B=new Set;for(const re of m){if(re.node.lane!==R||(re.band??0)!==0||!re.node.type.endsWith("Gateway"))continue;const Oe={in:new Set,out:new Set,cross:new Set};for(const ve of g){const Ce=ve.flow.source===re.node.id;if(!Ce&&ve.flow.target!==re.node.id)continue;const ut=P.get(Ce?ve.flow.target:ve.flow.source);if(!ut||ut.node.participant!==re.node.participant||!ut.node.lane)continue;let ce,ye=!1;if(ut.node.lane!==R){const de=x.get(ut.node.lane);if(de===void 0)continue;ce=de>L?"down":"up",ye=!0}else{const de=A.get(ut.band??0)??$;ce=de>$?"down":de<$?"up":void 0}ce&&(Oe[Ce?"out":"in"].add(ce),ye&&Oe.cross.add(ce))}for(const ve of["up","down"])Oe.in.has(ve)&&Oe.out.has(ve)&&Oe.cross.has(ve)&&B.add(ve)}if(B.size!==1)continue;const[F]=B,j=Math.max(...A.values()),G=F==="down"?j:0;if($===G)continue;const K=[...A.entries()].filter(([re])=>re!==0).sort((re,Oe)=>re[1]-Oe[1]),pe=[...Array(j+1).keys()].filter(re=>re!==G),Re=new Map([[0,G]]);K.forEach(([re],Oe)=>Re.set(re,pe[Oe])),le.set(R,Re)}}const Me=x=>{var R;return(((R=oe.get(x))==null?void 0:R.size)??0)>1},W=x=>x.band??(x.node.lane||!Me(`pool:${x.node.participant??""}`)?void 0:0),Y=new Map,J=x=>Y.get(x.node.id)??W(x),Te=new Set,ft=new Set;{const x=new Map;for(const L of g)x.set(L.flow.target,(x.get(L.flow.target)??0)+1);const R=L=>{const $=[],B=new Set([L]),F=[L];for(;F.length;){const j=F.shift();$.push(j);for(const G of g)G.flow.source!==j||B.has(G.flow.target)||(x.get(G.flow.target)??0)!==1||(B.add(G.flow.target),F.push(G.flow.target))}return $},A=(L,$)=>{var B;return((B=le.get(L))==null?void 0:B.get($))??$};for(const L of m){if(!L.node.type.endsWith("Gateway"))continue;const $=L.node.lane??`pool:${L.node.participant??""}`,B=le.get($);if(!B||B.size<2)continue;const F=J(L);if(F===void 0||A($,F)!==A($,0))continue;const j=A($,F),G=g.filter(ve=>ve.flow.source===L.node.id).map(ve=>P.get(ve.flow.target)).filter(ve=>!!ve&&(ve.node.lane??`pool:${ve.node.participant??""}`)===$),K=G.filter(ve=>{const Ce=J(ve);return Ce!==void 0&&A($,Ce)===j&&(x.get(ve.node.id)??0)===1}),pe=G.some(ve=>{const Ce=J(ve);return Ce!==void 0&&A($,Ce)>j});if(K.length!==1||!pe)continue;const Re=new Set(G.flatMap(ve=>R(ve.node.id)));if(!g.some(ve=>ve.flow.target===L.node.id&&Re.has(ve.flow.source)))continue;const Oe=new Map;for(const[ve,Ce]of B)Oe.set(ve,Ce+1);Oe.set(-1,0),le.set($,Oe);for(const ve of R(K[0].node.id))P.has(ve)&&(Y.set(ve,-1),ft.add(ve));Te.add(L.node.id)}}const M=(x,R)=>{var A;return((A=le.get(x))==null?void 0:A.get(R))??R},S=(x,R,A,L)=>{const $=x?l(x):R?l(R):void 0;if(!$)return!1;const B=x?$.y+Math.min($.height/2,se):$.y+H;return Math.abs(B+M(x??`pool:${R??""}`,A)*k-L)<=k/2},w=new Map;for(const[x,R]of oe){let A=0;for(const L of R)A=Math.max(A,M(x,L));w.set(x,A)}const z=x=>Ee+k*x,U=(x,R,A)=>{const L=u().children.filter($=>!("waypoints"in $&&$.waypoints)&&$.id!==R&&typeof $.y=="number"&&$.y>=x);L.length&&n.moveElements(L,{x:0,y:A})},Q=(x,R,A)=>{const L=x.type==="bpmn:Participant"?x:void 0;if(!L||L.children.some(j=>j.type==="bpmn:Lane"))return;const $=A+R.height/2+qe-L.y;if(L.height>=$)return;const B=$-L.height,F=L.y+L.height;n.resizeShape(L,{x:L.x,y:L.y,width:L.width,height:$}),U(F,L.id,B)},we=(x,R,A)=>{if(x){const F=f(x),j=z(R);if(F.height>=j)return;const G=j-F.height,K=p(F),pe=K?K.y+K.height:F.y+F.height;n.resizeLane(F,{x:F.x,y:F.y,width:F.width,height:j},!1),U(pe,K==null?void 0:K.id,G);return}if(!A)return;const L=k*(R+1);if(A.height>=L)return;const $=L-A.height,B=A.y+A.height;n.resizeShape(A,{x:A.x,y:A.y,width:A.width,height:L}),U(B,A.id,$)},He=new Map;for(const x of g)He.set(x.flow.target,(He.get(x.flow.target)??0)+1);const et=x=>(He.get(x)??0)<=1,Pt=(x,R,A)=>{if(!x)return!0;const L=l(x);return L?A-R.height/2>=L.y&&A+R.height/2<=L.y+L.height:!0},nt=h.map((x,R)=>({op:x,declared:R}));nt.sort((x,R)=>{const A=x.op.order??Number.POSITIVE_INFINITY,L=R.op.order??Number.POSITIVE_INFINITY;return A!==L?A-L:x.declared-R.declared});let St=80;for(const x of o.getAll())x.parent===u()&&"height"in x&&typeof x.y=="number"&&(St=Math.max(St,x.y+x.height+60));for(const{op:x}of nt){const R=x.participant,A=m.filter(re=>re.node.participant===R.id).length,L=((l0=R.lanes)==null?void 0:l0.length)??0,$=Math.max(1200,A*160+300),B=(R.lanes??[]).map(re=>z(w.get(re.id)??0)),F=B.reduce((re,Oe)=>re+Oe,0);L&&F<300&&(B[L-1]+=300-F);const j=Math.max(300,k*((w.get(`pool:${R.id}`)??0)+1)),G=R.blackBox||A+L===0?120:L?Math.max(300,F):j,K=r.createShape({type:"bpmn:Participant",businessObject:i.create("bpmn:Participant",{id:R.id,name:R.name,...x.order!==void 0?{"bwl:poolOrder":x.order}:{},...R.blackBox?{}:{processRef:i.create("bpmn:Process")}}),width:$,height:G,isExpanded:!0}),pe=n.createShape(K,{x:100+$/2,y:St+G/2},u()),Re=R.lanes??[];if(Re.length&&n.splitLane(pe,Re.length),Re.length){const re=o.filter(Oe=>{var ve;return Oe.type==="bpmn:Lane"&&((ve=p(Oe))==null?void 0:ve.id)===R.id}).sort((Oe,ve)=>Oe.y-ve.y);if(re.forEach((Oe,ve)=>{const Ce=Re[ve];Ce&&n.updateProperties(Oe,{id:Ce.id,name:Ce.name})}),B.some(Oe=>Oe!==pe.height/L)){let Oe=pe.y;re.forEach((ve,Ce)=>{const ut=B[Ce];n.resizeShape(ve,{x:ve.x,y:Oe,width:ve.width,height:ut}),Oe+=ut})}}St=pe.y+pe.height+60}const dn=x=>{var L;const R=P.get(x);if(R)return R.node.participant??"";const A=l(x);return A?A.type==="bpmn:Participant"?A.id:((L=p(A))==null?void 0:L.id)??"":""},Kt=new Map,dt=x=>{let R=Kt.get(x);return R||Kt.set(x,R={nodes:[],flows:[]}),R};for(const x of m)dt(x.node.participant??"").nodes.push(x);for(const x of g)dt(dn(x.flow.source)).flows.push(x);const Mt=x=>{var R;return i.create("bpmn:SequenceFlow",{id:x.id,name:x.name??((R=x.condition)==null?void 0:R.label)})},on=(x,R)=>r.createShape({type:Ss(x.type),businessObject:i.create(Ss(x.type),{id:x.id,name:x.name,...R!==void 0?{"bwl:band":R}:{}})}),Vo=[...nt.map(({op:x})=>x.participant.id).filter(x=>Kt.has(x)),...[...Kt.keys()].filter(x=>!h.some(R=>R.participant.id===x))],Nn=x=>x.endsWith("Gateway");for(const x of Vo){const R=Kt.get(x),A=x?f(x):void 0,L=A?A.x+150:250;let $=A?A.y+80:120;const B=(ce,ye,de)=>{if(ce){const he=f(ce);return he.y+Math.min(he.height/2,se)+M(ce,ye??0)*k}return ye!==void 0&&A?A.y+H+M(`pool:${x}`,ye)*k:de},F=(ce,ye,de)=>{if(ce){const he=f(ce);return he.y+Math.min(he.height/2,se)+ye*k}return A?A.y+H+ye*k:de},j=ce=>ce.participant?f(ce.participant):u(),G=(ce,ye,de,he,Ue,Je,kt)=>{const Xt=de!==void 0||he!==void 0,Se=M(de??`pool:${x}`,he??0);if((he===void 0||S(de,x,he,kt??Number.NaN))&&kt!==void 0&&Pt(de,ye,kt)&&!q(ce,ye,Ue,kt))return{x:Ue,y:kt};if(Xt)for(let X=0;X<4;X++){const Z=F(de,Se+X,Je);if(!q(ce,ye,Ue,Z))return we(de,Se+X,A),{x:Ue,y:Z}}const ke=B(de,he,Je);Xt?we(de,Se,A):Q(ce,ye,ke);let ne=Ue;for(let X=0;X<64;X++){const Z=q(ce,ye,ne,ke);if(!Z)break;ne=Z.x+Z.width+O+ye.width/2}return{x:ne,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 ye=on(ce.node,ce.band),de=W(ce),he=ce.node.lane?`${ce.node.lane}|${de??""}`:de!==void 0?`band:${de}`:"",Ue=j(ce.node),Je=G(Ue,ye,ce.node.lane,de,pe.get(he)??L,$);n.createShape(ye,Je,Ue),pe.set(he,Je.x+ye.width+O),!ce.node.lane&&de===void 0&&($+=160)}const Re=new Set,re=new Map,Oe=new Map,ve=new Map;if(x&&ue.has(`pool:${x}`)){const ce=new Map;for(const Se of R.flows)ce.set(Se.flow.target,(ce.get(Se.flow.target)??0)+1);const ye=Se=>B(Se.node.lane,J(Se),Number.NaN),de=new Set,he=Se=>{var X;const ke=(X=P.get(Se))==null?void 0:X.node.participant;if(ke)return l(ke);const ne=l(Se);if(ne)return ne.type==="bpmn:Participant"?ne:p(ne)},Ue=Se=>{const ke=[],ne=new Set([Se]),X=[Se];for(;X.length;){const Z=X.shift(),fe=P.get(Z);fe&&ke.push(fe);for(const me of R.flows)me.flow.source!==Z||ne.has(me.flow.target)||(ce.get(me.flow.target)??0)!==1||(ne.add(me.flow.target),X.push(me.flow.target))}return ke},Je=Se=>{if(!A)return;const ke=new Set(Se.map(Z=>Z.node.id));let ne=!1,X=!1;for(const Z of y){if(!ke.has(Z.flow.source))continue;const fe=he(Z.flow.target);!fe||fe.id===A.id||(fe.y<A.y?ne=!0:X=!0)}return ne&&!X?"up":X&&!ne?"down":void 0};for(const Se of R.nodes){if(!Nn(Se.node.type))continue;const ke=B(Se.node.lane,W(Se),Number.NaN);if(Number.isNaN(ke))continue;const ne=[];for(const me of R.flows){if(me.flow.source!==Se.node.id)continue;const be=P.get(me.flow.target);if(!be||be.node.lane!==Se.node.lane||(ce.get(be.node.id)??0)!==1)continue;const Ne=W(be);if(Ne===void 0)continue;const lt=B(be.node.lane,Ne,Number.NaN);if(Number.isNaN(lt))continue;const mn=Ue(be.node.id),At=Je(mn);At&&ne.push({subtree:mn,band:Ne,row:lt,dir:At})}if(!ne.some(me=>me.dir==="up")||!ne.some(me=>me.dir==="down")||!ne.some(me=>me.dir==="up"&&ne.some(be=>be.dir==="down"&&be.row<me.row)))continue;const Z=[...ne].sort((me,be)=>me.row-be.row);[...ne.filter(me=>me.dir==="up"),...ne.filter(me=>me.dir==="down")].sort((me,be)=>me.dir===be.dir?me.row-be.row:me.dir==="up"?-1:1).forEach((me,be)=>{const Ne=Z[be].band;if(Ne!==me.band){de.add(Se.node.id);for(const lt of me.subtree)W(lt)===me.band&&Y.set(lt.node.id,Ne)}})}const kt=Se=>{if(!A)return;const ke=new Set(Se.map(Z=>Z.node.id));let ne=!1,X=!1;for(const Z of y){if(!ke.has(Z.flow.target))continue;const fe=he(Z.flow.source);!fe||fe.id===A.id||(fe.y<A.y?ne=!0:X=!0)}return ne&&!X?"up":X&&!ne?"down":void 0};for(const Se of R.nodes){if(!Nn(Se.node.type))continue;const ke=Se.node.lane??`pool:${x}`,ne=le.get(ke);if(!ne||ne.size<2)continue;const X=ne.get(0);if(X===void 0)continue;const Z=Math.max(...ne.values()),fe=X===Z&&X!==0?"down":void 0;if(!fe)continue;const me=[];for(const At of R.flows){if(At.flow.source!==Se.node.id)continue;const gt=P.get(At.flow.target);if(!gt||gt.node.lane!==Se.node.lane||(ce.get(gt.node.id)??0)!==1)continue;const is=J(gt);is!==void 0&&me.push({t:gt,subtree:Ue(gt.node.id),band:is})}const be=me.find(At=>(ne.get(At.band)??At.band)===X);if(!be||kt(be.subtree)===fe||Je(be.subtree)===fe)continue;const Ne=me.find(At=>At!==be&&kt(At.subtree)===fe);if(!Ne)continue;const lt=be.band,mn=Ne.band;for(const At of be.subtree)J(At)===lt&&Y.set(At.node.id,mn);for(const At of Ne.subtree)J(At)===mn&&Y.set(At.node.id,lt);de.add(Se.node.id)}for(const Se of R.nodes){if(!Nn(Se.node.type))continue;const ke=ye(Se);if(Number.isNaN(ke)||_.some(me=>{var be,Ne;return(((be=me.placement)==null?void 0:be.anchor)??(me.association?me.association.source===me.annotation.id?me.association.target:me.association.source:void 0))===Se.node.id&&((Ne=me.placement)==null?void 0:Ne.side.startsWith("bottom"))}))continue;let X,Z=!1,fe;for(const me of R.flows){if(me.flow.source!==Se.node.id)continue;const be=P.get(me.flow.target);if(!be||!be.node.lane&&W(be)===void 0)continue;const Ne=ye(be);Number.isNaN(Ne)||(Math.abs(Ne-ke)<.5&&(Z=!0),Ne>ke?!X||Ne>X.row?X={id:be.node.id,row:Ne,count:1}:Ne===X.row&&X.count++:Ne<ke&&be.node.lane===Se.node.lane&&(!fe||Ne>fe.row?fe={op:be,row:Ne,count:1}:Ne===fe.row&&fe.count++))}X&&X.count===1&&(ce.get(X.id)??0)===1&&!de.has(Se.node.id)&&Re.add(X.id),!Z&&fe&&fe.count===1&&(ce.get(fe.op.node.id)??0)===1&&!Te.has(Se.node.id)&&re.set(fe.op.node.id,{lane:Se.node.lane,band:J(Se)})}const Xt=new Map;for(const Se of y)Xt.set(Se.flow.target,[...Xt.get(Se.flow.target)??[],Se]);for(const Se of R.nodes){const ke=Xt.get(Se.node.id);if(!ke||ke.length!==1||!ce.get(Se.node.id)||!Se.node.lane&&W(Se)===void 0||ft.has(Se.node.id))continue;const ne=(p0=P.get(ke[0].flow.source))==null?void 0:p0.node.participant,X=ne?l(ne):void 0;if(!X||!A||X.id===A.id)continue;const Z=Se.node.lane??`pool:${x}`,fe=le.get(Z);if(!fe)continue;const me=fe.get(0)??0,be=(fe.get(J(Se)??0)??me)-me;if(be===0)continue;const Ne=X.y<A.y;if(Ne&&be<0||!Ne&&be>0)continue;let lt;for(const[mn,At]of fe){const gt=At-me;(Ne&&gt<0&&(!lt||gt<lt.row)||!Ne&&gt>0&&(!lt||gt>lt.row))&&(lt={band:mn,row:gt})}lt&&Oe.set(Se.node.id,{lane:Se.node.lane,band:lt.band})}}const Ce=new Set;let ut=0;for(;ut++<R.nodes.length+2;){for(let de=0;de<R.nodes.length+R.flows.length+2;de++){let he=!1;for(const Ue of R.flows){const Je=Ue.flow;if(Ce.has(Je.id))continue;const kt=l(Je.source);if(!kt)continue;const Xt=l(Je.target),Se=P.get(Je.target);if(!Xt&&Se){const ke=on(Se.node,Se.band),ne=J(Se);if(Se.node.lane||ne!==void 0){const X=j(Se.node),Z=kt,fe=Z.x+(ve.get(Je.source)??0)+Z.width+O,me=re.get(Je.target)??Oe.get(Je.target),be=G(X,ke,me?me.lane:Se.node.lane,me?me.band:ne,Re.has(Je.target)?Z.x+Z.width/2:fe,Number.NaN,me||!et(Je.target)?void 0:Z.y+Z.height/2),Ne=n.createShape(ke,be,X);Re.has(Je.target)&&ve.set(Je.target,fe-(Ne.x+Ne.width/2)),n.connect(kt,Ne,{type:"bpmn:SequenceFlow",businessObject:Mt(Je)})}else s.append(kt,ke,{connection:{type:"bpmn:SequenceFlow",businessObject:Mt(Je)}})}else if(Xt)n.connect(kt,Xt,{type:"bpmn:SequenceFlow",businessObject:Mt(Je)});else continue;Ce.add(Je.id),he=!0}if(!he)break}const ce=R.nodes.filter(de=>!l(de.node.id));if(!ce.length)break;const ye=ce[0];{const de=on(ye.node,ye.band),he=j(ye.node),Ue=W(ye);n.createShape(de,G(he,de,ye.node.lane,Ue,L,$),he),!ye.node.lane&&Ue===void 0&&($+=160)}}}const oi=40,an=(x,R=()=>!0)=>{const A=l(x);if(!A)return[];const L=[A],$=new Set([x]);for(let B=0;B<L.length;B++){const F=L[B].id;for(const j of g){const G=j.flow.target;if(j.flow.source!==F||$.has(G)||!P.has(G))continue;$.add(G);const K=l(G);K&&R(K)&&L.push(K)}}return L},Vt=(x,R=()=>!0)=>{const A=l(x);if(!A)return[];const L=[A],$=new Set([x]);for(let B=0;B<L.length;B++){const F=L[B].id;for(const j of g){const G=j.flow.source;if(j.flow.target!==F||$.has(G)||!P.has(G))continue;$.add(G);const K=l(G);K&&R(K)&&L.push(K)}}return L},_n=30,Pi=x=>!("waypoints"in x&&x.waypoints)&&x.type!=="bpmn:Lane"&&x.type!=="label"&&typeof x.x=="number",hn=(x,R)=>{const A=new Set(x.flatMap(F=>F.subtree.map(j=>j.id)));for(const F of x){const j=(F.pool.children??[]).filter(Pi).filter(K=>!A.has(K.id));if(F.subtree.some(K=>j.some(pe=>K.x+R<pe.x+pe.width+_n&&K.x+R+K.width+_n>pe.x&&K.y<pe.y+pe.height&&K.y+K.height>pe.y)))return null}const L=x.map(F=>F.pool.width),$=o.filter(F=>F.type==="label").map(F=>({label:F,x:F.x,y:F.y}));n.moveElements(x.flatMap(F=>F.subtree),{x:R,y:0});const B=x.map(F=>{const G=Math.max(...F.subtree.map(K=>K.x+K.width))+150-(F.pool.x+F.pool.width);return G>0&&n.resizeShape(F.pool,{x:F.pool.x,y:F.pool.y,width:F.pool.width+G,height:F.pool.height}),G});return()=>{n.moveElements(x.flatMap(F=>F.subtree),{x:-R,y:0}),x.forEach((F,j)=>{B[j]>0&&n.resizeShape(F.pool,{x:F.pool.x,y:F.pool.y,width:L[j],height:F.pool.height})});for(let F=0;F<3;F++){let j=0;for(const G of $){const K=G.x-G.label.x,pe=G.y-G.label.y;Math.abs(K)<=.5&&Math.abs(pe)<=.5||(n.moveElements([G.label],{x:K,y:pe}),j++)}if(!j)break}}},tt=x=>{var $,B;const R=new Map,A=new Map;for(const F of o.getAll()){if(F.type!=="bpmn:Participant")continue;const j=F;(j.children??[]).length||(R.set(j.id,j),A.set(j.id,[]))}for(const F of o.getAll()){if(F.type!=="bpmn:MessageFlow")continue;const j=F,G=($=j.source)==null?void 0:$.id,K=(B=j.target)==null?void 0:B.id;G&&K&&A.has(G)&&A.get(G).push(K),G&&K&&A.has(K)&&A.get(K).push(G)}const L=[];for(const[F,j]of A)j.length&&j.every(G=>x.has(G))&&L.push(R.get(F));return L},it=(x,R)=>{if(!x.length)return null;const A=new Set(x.map(F=>F.id)),L=o.getAll().filter(F=>F.type==="bpmn:Participant"&&!A.has(F.id));if(x.some(F=>L.some(j=>F.x+R<j.x+j.width+_n&&F.x+R+F.width+_n>j.x&&F.y<j.y+j.height&&F.y+F.height>j.y)))return null;const B=o.filter(F=>F.type==="label").map(F=>({label:F,x:F.x,y:F.y}));return n.moveElements(x,{x:R,y:0}),()=>{n.moveElements(x,{x:-R,y:0});for(let F=0;F<3;F++){let j=0;for(const G of B){const K=G.x-G.label.x,pe=G.y-G.label.y;Math.abs(K)<=.5&&Math.abs(pe)<=.5||(n.moveElements([G.label],{x:K,y:pe}),j++)}if(!j)break}}},Wx=()=>{let x=0;for(const R of o.getAll()){if(R.type!=="bpmn:DataInputAssociation"&&R.type!=="bpmn:DataOutputAssociation")continue;const A=R.waypoints??[];for(let L=1;L<A.length;L++)x+=Math.hypot(A[L].x-A[L-1].x,A[L].y-A[L-1].y)}return x},Ux=()=>Pn(ot(o)).filter(x=>x.kind==="edge-crosses-shape").length,Yx=x=>{const R=(x.children??[]).filter(Pi);let A=0;for(let L=0;L<R.length;L++)for(let $=L+1;$<R.length;$++){const B=R[L],F=R[$];B.x<F.x+F.width&&B.x+B.width>F.x&&B.y<F.y+F.height&&B.y+B.height>F.y&&A++}return A},Wo=()=>{const x=ot(o),R=A=>A.length>=2&&(A.every(L=>Math.abs(L.x-A[0].x)<.01)||A.every(L=>Math.abs(L.y-A[0].y)<.01));return{messages:x.edges.filter(A=>A.type==="bpmn:MessageFlow"&&A.waypoints.length===2).length,lines:x.edges.filter(A=>R(A.waypoints)).length}},rL=x=>{const R=$=>{const B=[$],F=new Set([$.id]);for(let j=0;j<B.length;j++)for(const G of B[j].outgoing??[]){if(G.type!=="bpmn:SequenceFlow")continue;const K=G.target;!K||F.has(K.id)||x.has(K.id)||!Pi(K)||K.x<$.x||(F.add(K.id),B.push(K))}return B},A=new Set(x),L=[];for(const $ of o.getAll()){if($.type!=="bpmn:MessageFlow")continue;const B=$;if(!B.waypoints||B.waypoints.length!==2)continue;const F=B.source,j=B.target;if(!F||!j)continue;const G=x.has(F.id);if(G===x.has(j.id))continue;const K=G?j:F,pe=p(K);if(!pe||A.has(K.id))continue;const Re=R(K).filter(re=>!A.has(re.id));if(Re.length){for(const re of Re)A.add(re.id);L.push({subtree:Re,pool:pe})}}return L};for(const x of Yt(e,"sequenceFlow.update")){if(x.target===void 0)continue;const R=P.get(x.target);if(!R)continue;const A=l(x.target),L=l(x.id);if(!A||!L)continue;const $=x.source!==void 0?l(x.source):L.source,B=L.target;if(!$||!B||B.id===A.id)continue;const F=an(x.target),j=new Set(F.map(he=>he.id)),G=Math.min(...F.map(he=>he.x)),K=Math.max(...F.map(he=>he.x+he.width)),pe=$.x+$.width,Re=K-G+oi*2-(B.x-pe);let re=[];if(Re>0){const he=p(A),Ue=(he==null?void 0:he.children)??[],Je=ke=>ke.type==="bpmn:Lane";re=(()=>{const ke=new Set;for(const X of Ue)Pi(X)&&!j.has(X.id)&&X.id!==$.id&&X.x>=B.x&&ke.add(X.id);const ne=[];for(const X of Ue){if(X.type!=="bpmn:DataStoreReference"&&X.type!=="bpmn:DataObjectReference")continue;const Z=X,me=[...Z.incoming??[],...Z.outgoing??[]].filter(be=>be.type==="bpmn:DataInputAssociation"||be.type==="bpmn:DataOutputAssociation").map(be=>be.source===Z?be.target:be.source);me.length&&me.every(be=>be!==void 0&&ke.has(be.id))&&ne.push(Z)}return ne})();const Xt=Ue.filter(ke=>!("waypoints"in ke&&ke.waypoints)&&!Je(ke)&&!j.has(ke.id)&&ke.id!==$.id&&ke.x>=B.x),Se=he?[he,...Ue.filter(ke=>Je(ke))]:[];if(Xt.length){const ke=new Set(Xt.map(be=>be.id)),ne=rL(ke),X=tt(ke),Z=new Set(ke);for(const be of ne)for(const Ne of be.subtree)Z.add(Ne.id);const fe=ne.length?tt(Z):X;n.createSpace(Xt,Se,{x:Re,y:0},"e",B.x-1);let me=!1;if(ne.length){const be=Wo(),Ne=hn(ne,Re);if(Ne){const lt=fe.length?it(fe,Re):null,mn=Wo();mn.messages>be.messages&&mn.lines>=be.lines?me=!0:(lt==null||lt(),Ne())}}if(!me){for(const be of ne){const Ne=Wo(),lt=hn([be],Re);if(!lt)continue;const mn=Wo();(mn.messages<=Ne.messages||mn.lines<Ne.lines)&&lt()}if(X.length){const be=Wo(),Ne=it(X,Re);if(Ne){const lt=Wo();(lt.messages<=be.messages||lt.lines<be.lines)&&Ne()}}}}}const Oe=$.y+$.height/2,ve=Oe-(A.y+A.height/2),Ce=R.band!==void 0,ut=Ce?[A]:F,ce=(R.band===void 0||S(R.node.lane,R.node.participant,R.band,Oe))&&et(x.target)&&ut.every(he=>{var Ue;return Pt((Ue=P.get(he.id))==null?void 0:Ue.node.lane,he,he.y+he.height/2+ve)});ce&&Ce?(n.moveElements(F,{x:pe+oi-G,y:0}),n.moveElements([A],{x:0,y:ve})):n.moveElements(F,{x:pe+oi-G,y:ce?ve:0});const ye=p(A);if(!ce&&R.node.lane===void 0&&R.band!==void 0&&ye){const he=ye.y+H+M(`pool:${R.node.participant??""}`,R.band)*k,Ue=he-(A.y+A.height/2);Ue!==0&&!q(ye,A,A.x+A.width/2,he,j)&&n.moveElements([A],{x:0,y:Ue})}const de=re.length?p(re[0]):void 0;if(de){const he={assoc:Wx(),overlaps:Yx(de),crosses:Ux()},Ue=re.map(Z=>({st:Z,x:Z.x})),Je=o.filter(Z=>Z.type==="label").map(Z=>({label:Z,x:Z.x,y:Z.y})),kt=Math.min(...re.flatMap(Z=>[...Z.incoming??[],...Z.outgoing??[]].filter(fe=>fe.type==="bpmn:DataInputAssociation"||fe.type==="bpmn:DataOutputAssociation").map(fe=>(fe.source===Z?fe.target:fe.source).x))),Xt=new Set(re.map(Z=>Z.id)),Se=(de.children??[]).filter(Pi).filter(Z=>!Xt.has(Z.id));let ke=kt;for(const Z of[...re].sort((fe,me)=>fe.x-me.x)){let fe=ke;for(let me=0;me<100;me++){const be=Se.find(Ne=>fe<Ne.x+Ne.width+_n&&fe+Z.width+_n>Ne.x&&Z.y<Ne.y+Ne.height&&Z.y+Z.height>Ne.y);if(!be)break;fe=be.x+be.width+_n}fe!==Z.x&&n.moveElements([Z],{x:fe-Z.x,y:0}),ke=fe+Z.width+_n}const ne=ke+150-(de.x+de.width);ne>0&&n.resizeShape(de,{x:de.x,y:de.y,width:de.width+ne,height:de.height});const X={assoc:Wx(),overlaps:Yx(de),crosses:Ux()};if(X.assoc>=he.assoc||X.overlaps>he.overlaps||X.crosses>he.crosses){for(const{st:Z,x:fe}of Ue)Z.x!==fe&&n.moveElements([Z],{x:fe-Z.x,y:0});ne>0&&n.resizeShape(de,{x:de.x,y:de.y,width:de.width-ne,height:de.height});for(const Z of Je){const fe=Z.x-Z.label.x,me=Z.y-Z.label.y;(fe!==0||me!==0)&&n.moveElements([Z.label],{x:fe,y:me})}}}}const qx=(x,R)=>{const A=R.target===x,L=f(R.source),$=f(R.target),B=A?"bpmn:DataOutputAssociation":"bpmn:DataInputAssociation";n.connect(L,$,R.id?{type:B,businessObject:i.create(B,{id:R.id})}:{type:B})},oL=100,Kx=x=>{for(const R of h){if(!R.participant.blackBox)continue;const A=l(R.participant.id);if(!A)continue;const L=[];for(const B of y){const F=B.flow.source===R.participant.id?B.flow.target:B.flow.target===R.participant.id?B.flow.source:void 0,j=F?l(F):void 0;j&&typeof j.x=="number"&&j.type!=="bpmn:Participant"&&L.push(j)}if(!L.length)continue;const $=Math.max(...L.map(B=>B.x+B.width/2))+oL;if($>A.x+A.width&&n.resizeShape(A,{x:A.x,y:A.y,width:$-A.x,height:A.height}),!!x)for(const B of y){const F=l(B.flow.id),j=B.flow.source===R.participant.id?B.flow.target:B.flow.target===R.participant.id?B.flow.source:void 0,G=j?l(j):void 0;if(!F||!G||G.type==="bpmn:Participant")continue;const K=G.x+G.width/2;if(K<A.x+10||K>A.x+A.width-10)continue;const pe=A.y>G.y,Re=pe?G.y+G.height:G.y,re=pe?A.y:A.y+A.height,Oe=B.flow.source===R.participant.id?[{x:K,y:re},{x:K,y:Re}]:[{x:K,y:Re},{x:K,y:re}],ve=ot(o),Ce={...ve.edges.find(ut=>ut.id===B.flow.id),waypoints:Oe};Qt(Ce,zn(ve)).length||n.updateWaypoints(F,Oe)}}};Kx(!1);for(const x of y){const R=x.flow;n.connect(f(R.source),f(R.target),{type:"bpmn:MessageFlow",businessObject:i.create("bpmn:MessageFlow",{id:R.id,name:R.name})})}{const A=new Set([...g.map(G=>G.flow.id),...y.map(G=>G.flow.id)].filter(G=>!!G)),L=o.filter(G=>!!G.waypoints),$=(G,K)=>Math.abs(K.x-G.x)<2?"L":Math.abs(K.x-(G.x+G.width))<2?"R":Math.abs(K.y-G.y)<2?"T":Math.abs(K.y-(G.y+G.height))<2?"B":void 0,B=new Map,F=(G,K,pe)=>{if(!G||!K||typeof G.x!="number")return;const Re=$(G,K);if(!Re)return;let re=B.get(G.id);re||B.set(G.id,re=new Map),re.set(Re,[...re.get(Re)??[],pe])};for(const G of L){const K=G.waypoints;!K||K.length<2||(F(G.source,K[0],{id:G.id,dir:"out"}),F(G.target,K[K.length-1],{id:G.id,dir:"in"}))}const j=new Set;for(const[G,K]of B){const pe=l(G);if(!pe||typeof pe.x!="number"||![...K.values()].some(ye=>{const de=ye.filter(he=>he.dir==="in");return ye.length>=3&&de.length>=1&&ye.some(he=>he.dir==="out")&&de.some(he=>A.has(he.id))}))continue;const re=p(pe);if(!re||j.has(re.id)||(re.children??[]).some(ye=>ye.type==="bpmn:Lane"))continue;const Oe=(f0=K.get("T"))!=null&&f0.length?(d0=K.get("B"))!=null&&d0.length?void 0:"B":"T";if(!Oe||(Oe==="T"?pe.y-re.y:re.y+re.height-(pe.y+pe.height))>=k)continue;const Ce=(re.children??[]).filter(ye=>!("waypoints"in ye&&ye.waypoints)&&ye.type!=="label"&&typeof ye.x=="number"),ut=re.y+re.height;n.resizeShape(re,{x:re.x,y:re.y,width:re.width,height:re.height+k});const ce=u().children.filter(ye=>!("waypoints"in ye&&ye.waypoints)&&ye.id!==re.id&&typeof ye.y=="number"&&ye.y>=ut);ce.length&&n.moveElements(ce,{x:0,y:k}),Oe==="T"&&Ce.length&&n.moveElements(Ce,{x:0,y:k}),j.add(re.id)}}const od=20,Xx=4,aL=2,sL=[10,30,80],Uo=()=>{const x=ot(o);return{bad:Pn(x).filter(R=>R.kind==="edge-crosses-shape"||R.kind==="edge-overlap-opposite"||R.kind==="edge-overlap-mixed").length,crossings:Zd(x),straight:x.edges.filter(R=>R.type==="bpmn:MessageFlow"&&R.waypoints.length===2).length}},Yo=x=>{const R=ot(o),A=R.edges.find(L=>L.id===x);return A?Qt(A,zn(R)).length:0},Mu=x=>Yo(x)>0,ku=x=>ot(o).edges.filter(R=>R.type==="bpmn:MessageFlow"&&R.id!==x&&R.waypoints.length===2).length,cL=(x,R,A)=>hn([{subtree:x,pool:R}],A),Zx=(x,R)=>R.bad>x.bad||R.crossings>x.crossings&&R.straight<=x.straight&&R.bad>=x.bad,Ou=(x,R)=>Zx(x,R)||R.straight<x.straight,Du=(x,R,A=()=>!0,L=Zx)=>{const $=Uo(),B=hn(x,R);if(!B)return!1;const F=Uo();return L($,F)||!A()?(B(),!1):!0},Qx=(x,R,A,L=()=>!0)=>Du([{subtree:x,pool:R}],A,L),qr=x=>{var R;return!!((R=P.get(x))!=null&&R.node.participant)},ts=new Map;for(const x of y){if(!qr(x.flow.target))continue;const R=ts.get(x.flow.target)??[];R.push(x),ts.set(x.flow.target,R)}const ad=[...ts.keys()],Jx=new Set(g.map(x=>x.flow.target)),e0=x=>nt.findIndex(({op:R})=>R.participant.id===x);ad.sort((x,R)=>{var $,B;const A=Jx.has(x)?1:0,L=Jx.has(R)?1:0;return A!==L?A-L:e0(($=P.get(x))==null?void 0:$.node.participant)-e0((B=P.get(R))==null?void 0:B.node.participant)});const Kr=x=>x.x+x.width/2,uL=x=>{const R=new Map;for(const $ of o.getAll()){const B=$;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 A=new Set([x]),L=[x];for(let $=0;$<L.length;$++)for(const B of R.get(L[$])??[])A.has(B)||(A.add(B),L.push(B));return A},lL=(x,R)=>{const A=uL(R);let L;for(const $ of o.getAll()){const B=$;if(B.type!=="bpmn:MessageFlow"||!B.source||!B.target||B.target.id!==x||A.has(B.source.id))continue;const F=B.source;if(typeof F.x!="number"||F.type==="bpmn:Participant")continue;const j=Kr(F);(L===void 0||j>L)&&(L=j)}return L},sd=(x,R)=>{const A=l(x.flow.source);if(A)return A.type==="bpmn:Participant"?lL(A.id,R):Kr(A)},t0=x=>{let R;for(const A of ts.get(x)??[]){const L=sd(A,x);L!==void 0&&(!R||L>R.cx)&&(R={op:A,cx:L})}return R==null?void 0:R.op},pL=x=>{const R=t0(x),A=l(x),L=R?sd(R,x):void 0;return A&&L!==void 0?L-Kr(A):void 0},fL=x=>{const R=pL(x);return R!==void 0&&Math.abs(R)<od},n0=(x,R,A,L,$)=>{var B;for(let F=!0;F;){F=!1;for(const j of y){if(j.flow.id===A)continue;const G=R.has(j.flow.source),K=R.has(j.flow.target);if(G===K||L(G?j.flow.source:j.flow.target))continue;const pe=G?j.flow.target:j.flow.source;if($(pe)||!qr(pe))continue;const Re=l(j.flow.id);if(!(Re!=null&&Re.waypoints)||Re.waypoints.length!==2)continue;const re=l(pe),Oe=(B=P.get(pe))==null?void 0:B.node.participant;if(!re||!Oe)continue;const ve=an(pe,Ce=>Ce.x>=re.x).filter(Ce=>!R.has(Ce.id));if(!(!ve.length||ve.some(Ce=>$(Ce.id)))){for(const Ce of ve)R.add(Ce.id);x.set(Oe,[...x.get(Oe)??[],...ve]),F=!0}}}return[...x].map(([F,j])=>({subtree:j,pool:f(F)}))},i0=(x,R,A,L,$)=>n0(new Map([[R,[...x]]]),new Set(x.map(B=>B.id)),L,B=>B===A,B=>B===$),cd=x=>{const R=t0(x);if(!R)return null;const A=l(x),L=l(R.flow.source),$=sd(R,x);if(!A||!L||$===void 0)return null;const B=$-Kr(A);if(B>=od){const F=P.get(x).node.participant,j=an(x,G=>G.x>=A.x);return{groups:i0(j,F,x,R.flow.id,R.flow.source),dx:B}}if(-B>=od&&qr(R.flow.source)){const F=P.get(R.flow.source).node.participant,j=an(R.flow.source,G=>G.x>=L.x&&!fL(G.id));return{groups:i0(j,F,R.flow.source,R.flow.id,x),dx:-B}}return null},r0=()=>ad.map(x=>({id:x,plan:cd(x)})).filter(x=>!!x.plan).sort((x,R)=>Math.min(...x.plan.groups.flatMap(A=>A.subtree.map(L=>L.x)))-Math.min(...R.plan.groups.flatMap(A=>A.subtree.map(L=>L.x)))).map(x=>x.id);for(let x=0;x<3;x++){const R=Uo(),A=[];for(const $ of r0()){const B=cd($);if(!B)continue;const F=hn(B.groups,B.dx);F&&A.push(F)}if(!A.length)break;if(!Ou(R,Uo()))continue;for(const $ of A.reverse())$();let L=!1;for(const $ of r0()){const B=cd($);B&&Du(B.groups,B.dx,()=>!0,Ou)&&(L=!0)}if(!L)break}for(const x of ad.flatMap(R=>ts.get(R)??[])){if(!Mu(x.flow.id))continue;const R=l(x.flow.target);if(!R)continue;const A=f(P.get(x.flow.target).node.participant),L=an(x.flow.target,j=>j.x>=R.x),$=R.width+O,B=Yo(x.flow.id),F=ku(x.flow.id);for(let j=1;j<=Xx;j++){const G=()=>Yo(x.flow.id)<B&&ku(x.flow.id)>=F;if(Qx(L,A,$*j,G))break}}for(const x of y){if(!Mu(x.flow.id))continue;const R=l(x.flow.source),A=l(x.flow.target);if(!R||!A||R.type==="bpmn:Participant"||A.type==="bpmn:Participant")continue;const L=R.x+R.width/2;if(Math.abs(L-(A.x+A.width/2))>15)continue;const[$,B]=R.y<A.y?[R.y+R.height,A.y]:[A.y+A.height,R.y],F=[...P.values()].map(j=>l(j.node.id)).filter(j=>!!j&&j.id!==R.id&&j.id!==A.id).filter(j=>j.x<=L&&L<=j.x+j.width&&j.y+j.height>$&&j.y<B).sort((j,G)=>j.x-G.x);for(const j of F){const G=(h0=P.get(j.id))==null?void 0:h0.node.participant,K=G?l(G):void 0;if(!K)continue;const pe=[...P.values()].filter(de=>de.node.participant===G).map(de=>de.node.id),Re=de=>de.map(he=>l(he)).filter(he=>!!he),Oe=[Vt(j.id,de=>{var he;return((he=P.get(de.id))==null?void 0:he.node.participant)===G}),Re(pe)].filter(de=>de.length),ve=j.width+O,Ce=Yo(x.flow.id),ut=ku(x.flow.id),ce=()=>Yo(x.flow.id)<Ce&&ku(x.flow.id)>=ut;let ye=!1;for(const de of Oe){for(let he=1;he<=Xx;he++)if(Qx(de,K,ve*he,ce)){ye=!0;break}if(ye)break}if(!Mu(x.flow.id))break}}for(const x of y){if(!Mu(x.flow.id))continue;const R=l(x.flow.id);if(((m0=R==null?void 0:R.waypoints)==null?void 0:m0.length)!==2)continue;const A=l(x.flow.source),L=l(x.flow.target);if(!A||!L||A.type==="bpmn:Participant"||L.type==="bpmn:Participant"||!qr(x.flow.source)||!qr(x.flow.target)||Math.abs(Kr(A)-Kr(L))>aL)continue;const $=Kr(A),B=R.waypoints.map(Ce=>Ce.y),[F,j]=[Math.min(...B),Math.max(...B)],G=zn(ot(o)).filter(Ce=>Ce.id!==A.id&&Ce.id!==L.id&&Ce.x<$&&$<Ce.x+Ce.width&&F<Ce.y+Ce.height&&Ce.y<j);if(!G.length)continue;const K=(g0=P.get(x.flow.source))==null?void 0:g0.node.participant,pe=(y0=P.get(x.flow.target))==null?void 0:y0.node.participant;if(!K||!pe)continue;const Re=new Map;for(const[Ce,ut,ce]of[[x.flow.source,A,K],[x.flow.target,L,pe]]){const ye=Re.get(ce)??[],de=an(Ce,he=>he.x>=ut.x).filter(he=>!ye.some(Ue=>Ue.id===he.id));Re.set(ce,[...ye,...de])}const re=new Set([...Re.values()].flat().map(Ce=>Ce.id)),Oe=n0(Re,re,x.flow.id,Ce=>Ce===x.flow.source||Ce===x.flow.target,()=>!1),ve=Math.max(...G.map(Ce=>Ce.x+Ce.width));for(const Ce of sL){const ut=ve+Ce-$;if(ut<=0)continue;if(Du(Oe,ut,()=>{var ye,de;return Yo(x.flow.id)===0&&((de=(ye=l(x.flow.id))==null?void 0:ye.waypoints)==null?void 0:de.length)===2},Ou))break}}{const x=A=>A.y+A.height/2,R=[];for(const A of P.keys()){if(!qr(A))continue;const L=g.filter(F=>F.flow.target===A);if(L.length!==1)continue;const $=l(L[0].flow.source),B=l(A);!$||!B||!P.has($.id)||Math.abs(x($)-x(B))>1||B.x-($.x+$.width)<=O+1||R.push({id:A,pred:$,node:B})}R.sort((A,L)=>A.node.x-L.node.x);for(const{id:A}of R){const L=P.get(A),$=l(A),B=l(g.find(re=>re.flow.target===A).flow.source);if(!$||!B)continue;const F=$.x-(B.x+B.width);if(F<=O+1)continue;const j=f(L.node.participant),G=an(A,re=>re.x>=$.x),K=Uo(),pe=cL(G,j,-(F-O));if(!pe)continue;const Re=Uo();(Re.bad>K.bad||Re.crossings>=K.crossings||Re.straight<K.straight)&&pe()}}Kx(!0);for(const x of v){const R=x.associations??[],A=R.map(B=>B.source===x.dataStore.id?B.target:B.source).map(l).find(Boolean),L=A?p(A)??u():u(),$=A?{x:A.x+A.width/2,y:A.y+A.height+110}:{x:200,y:St+60};n.createShape({type:"bpmn:DataStoreReference",businessObject:i.create("bpmn:DataStoreReference",{id:x.dataStore.id,name:x.dataStore.name})},$,L);for(const B of R)qx(x.dataStore.id,B)}for(const x of b){const A=f(x.association.target).type==="bpmn:DataStoreReference"?x.association.target:x.association.source;qx(A,x.association)}let o0=0;const Xr=10,a0=40,dL=(x,R)=>{const A=R.map(G=>p(G)).filter(G=>!!G);for(const G of A){const K=Xr,pe=G.y,Re=G.y+G.height,re=G.x,Oe=G.x+G.width;if(Math.abs(x.y-pe)<K){const ve=pe+K-x.y;x.y+=ve,x.height-=ve}if(Math.abs(x.y+x.height-Re)<K&&(x.height=Re-K-x.y),Math.abs(x.x-re)<K){const ve=re+K-x.x;x.x+=ve,x.width-=ve}Math.abs(x.x+x.width-Oe)<K&&(x.width=Oe-K-x.x)}if(!A.length)return;const L=Math.min(...A.map(G=>G.y)),$=Math.max(...A.map(G=>G.y+G.height)),B=L-x.y,F=x.y+x.height-$,j=a0-Xr;if(B>0!=F>0)if(B>0&&B<j){const G=B+Xr;x.y+=G,x.height-=G}else F>0&&F<j&&(x.height-=F+Xr)},hL=(x,R)=>{const A=Xr,L=30,$=o.filter(B=>B.type==="bpmn:Group"&&B.id!==R);for(const B of $){const F=B.x,j=B.x+B.width,G=B.y,K=B.y+B.height,pe=x.y<K&&G<x.y+x.height,Re=x.x<j&&F<x.x+x.width;if(pe){if(Math.abs(x.x-j)<A){const re=Math.min(j+A-x.x,L);re>0&&x.width-re>0&&(x.x+=re,x.width-=re)}if(Math.abs(x.x+x.width-F)<A){const re=Math.min(x.x+x.width-(F-A),L);re>0&&x.width-re>0&&(x.width-=re)}}if(Re){if(Math.abs(x.y-K)<A){const re=Math.min(K+A-x.y,L);re>0&&x.height-re>0&&(x.y+=re,x.height-=re)}if(Math.abs(x.y+x.height-G)<A){const re=Math.min(x.y+x.height-(G-A),L);re>0&&x.height-re>0&&(x.height-=re)}}}},ud=(x,R)=>{const A=a0,L=Math.min(...x.map(G=>G.x))-A,$=Math.min(...x.map(G=>G.y))-A,B=Math.max(...x.map(G=>G.x+G.width))+A,F=Math.max(...x.map(G=>G.y+G.height))+A,j={x:L,y:$,width:B-L,height:F-$};return dL(j,x),hL(j,R),j};for(const x of C){const R=(x.group.members??[]).map(l).filter($=>!!$);let A;R.length?A=ud(R,x.group.id):(A={x:300+o0*350,y:40,width:300,height:200},o0++);const L=n.createShape({type:"bpmn:Group",businessObject:i.create("bpmn:Group",{id:x.group.id}),width:A.width,height:A.height},{x:A.x+A.width/2,y:A.y+A.height/2},u());x.group.name&&n.updateLabel(L,x.group.name),(v0=x.group.members)!=null&&v0.length&&D(L,"bwl:Members",{refs:x.group.members.join(" ")})}{const x=o.filter($=>!!$.waypoints),R=new Map,A=($,B)=>{!$||!B||(R.has($)||R.set($,new Set),R.get($).add(B))};for(const $ of x){const B=(b0=$.source)==null?void 0:b0.id,F=(_0=$.target)==null?void 0:_0.id;A(B,F),((x0=$.type)!=null&&x0.includes("DataOutputAssociation")||(w0=$.type)!=null&&w0.includes("DataInputAssociation")||$.type==="bpmn:Association")&&A(F,B)}const L=o.filter($=>$.type==="bpmn:Group");for(const $ of L){const F=(((E0=$.businessObject.extensionElements)==null?void 0:E0.values)??[]).find(ce=>ce.$type==="bwl:Members"),j=((F==null?void 0:F.refs)??"").split(" ").filter(Boolean);if(!j.length)continue;const G=new Set(j),K=[...j];for(;K.length;){const ce=K.shift();for(const ye of R.get(ce)??[])G.has(ye)||(G.add(ye),K.push(ye))}const pe=$.x,Re=$.x+$.width,re=$.y,Oe=$.y+$.height,ve=ce=>g.filter(ye=>ye.flow.target===ce).length,Ce=ce=>{var de;const ye=((de=l(ce))==null?void 0:de.type)??"";if(ye==="bpmn:StartEvent"&&ve(ce)===0)return!1;if(ye.endsWith("Gateway")){const he=g.filter(Ue=>Ue.flow.target===ce).map(Ue=>Ue.flow.source);if(he.length&&he.every(Ue=>{var Je;return((Je=l(Ue))==null?void 0:Je.type)==="bpmn:StartEvent"&&ve(Ue)===0}))return!1}return!0},ut=o.filter(ce=>Pi(ce)).filter(ce=>ce.type!=="bpmn:Group"&&ce.type!=="bpmn:Participant"&&ce.type!=="bpmn:TextAnnotation"&&!G.has(ce.id)&&qr(ce.id)&&Ce(ce.id)&&ce.x<Re&&ce.x+ce.width>pe&&ce.y<Oe&&ce.y+ce.height>re);if(ut.length)for(const ce of[-1,1]){const ye=ut.filter(ne=>(ne.x+ne.width-pe<=Re-ne.x?-1:1)===ce);if(!ye.length)continue;const de=[];for(const ne of ye){const X=de.find(Z=>Z.some(fe=>ne.y<fe.y+fe.height&&ne.y+ne.height>fe.y));X?X.push(ne):de.push([ne])}const he=new Map;for(const ne of de){let X=ce<0?pe-Xr:Re+Xr;for(const Z of[...ne].sort((fe,me)=>ce<0?me.x-fe.x:fe.x-me.x)){const fe=ce<0?Math.min(Z.x,X-Z.width):Math.max(Z.x,X);X=ce<0?fe-_n:fe+Z.width+_n,fe!==Z.x&&Math.sign(fe-Z.x)===ce&&he.set(Z.id,fe-Z.x)}}const Ue=new Map,Je=ne=>Ue.get(ne)===ne||!Ue.get(ne)?ne:Je(Ue.get(ne));for(const ne of ye)Ue.set(ne.id,ne.id);for(const ne of y){const X=he.has(ne.flow.source)?ne.flow.source:void 0,Z=he.has(ne.flow.target)?ne.flow.target:void 0;if(!X||!Z)continue;const fe=l(ne.flow.id);((S0=fe==null?void 0:fe.waypoints)==null?void 0:S0.length)===2&&Ue.set(Je(X),Je(Z))}const kt=new Map;for(const ne of ye){if(!he.has(ne.id))continue;const X=Je(ne.id);kt.set(X,[...kt.get(X)??[],ne])}const Xt=[...kt.values()].sort((ne,X)=>ce<0?Math.min(...ne.map(Z=>Z.x))-Math.min(...X.map(Z=>Z.x)):Math.max(...X.map(Z=>Z.x))-Math.max(...ne.map(Z=>Z.x))),Se=[];let ke=!0;for(const ne of Xt){const X=ne.map(me=>he.get(me.id)??0).reduce((me,be)=>Math.abs(be)>Math.abs(me)?be:me,0),Z=new Map;let fe=!0;for(const me of ne){const be=p(me);if(!be){fe=!1;break}Z.has(be.id)||Z.set(be.id,{subtree:[],pool:be}),Z.get(be.id).subtree.push(me)}fe&&Du([...Z.values()],X,()=>!0,Ou)?Se.push({shapes:ne,dx:X}):ke=!1}if(!ke)for(const ne of Se.reverse())n.moveElements(ne.shapes,{x:-ne.dx,y:0})}}}{const x=new Set([...C.map(R=>R.group.id),...Yt(e,"group.update").map(R=>R.id)]);for(const R of o.filter(A=>A.type==="bpmn:Group")){if(x.has(R.id))continue;const L=(((R0=R.businessObject.extensionElements)==null?void 0:R0.values)??[]).find(j=>j.$type==="bwl:Members"),$=((L==null?void 0:L.refs)??"").split(" ").filter(Boolean).map(l).filter(j=>!!j);!$.length||!$.some(j=>{const G=d.get(j.id);return!G||G.x!==j.x||G.y!==j.y})||!$.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,ud($,R.id))}}{const R=new Map(co(ot(o)).map(j=>[j.owner,j.rect])),A=o.filter(j=>!!j.waypoints),L=new Map,$=(j,G)=>{!j||!G||(L.has(j)||L.set(j,new Set),L.get(j).add(G))};for(const j of A){const G=(C0=j.source)==null?void 0:C0.id,K=(P0=j.target)==null?void 0:P0.id;$(G,K),((A0=j.type)!=null&&A0.includes("DataOutputAssociation")||(T0=j.type)!=null&&T0.includes("DataInputAssociation")||j.type==="bpmn:Association")&&$(K,G)}const B=j=>g.filter(G=>G.flow.target===j).length,F=j=>{var K;const G=((K=l(j))==null?void 0:K.type)??"";if(G==="bpmn:StartEvent"&&B(j)===0)return!1;if(G.endsWith("Gateway")){const pe=g.filter(Re=>Re.flow.target===j).map(Re=>Re.flow.source);if(pe.length&&pe.every(Re=>{var re;return((re=l(Re))==null?void 0:re.type)==="bpmn:StartEvent"&&B(Re)===0}))return!1}return!0};for(const j of o.filter(G=>G.type==="bpmn:Group")){const K=(((M0=j.businessObject.extensionElements)==null?void 0:M0.values)??[]).find(X=>X.$type==="bwl:Members"),pe=((K==null?void 0:K.refs)??"").split(" ").filter(Boolean);if(!pe.length)continue;const Re=pe.map(l).filter(X=>!!X);if(!Re.length||!(C.some(X=>X.group.id===j.id)||Yt(e,"group.update").some(X=>X.id===j.id)||Re.some(X=>{const Z=d.get(X.id);return!Z||Z.x!==X.x||Z.y!==X.y})))continue;const Oe=new Set(pe),ve=[...pe];for(;ve.length;){const X=ve.shift();for(const Z of L.get(X)??[])Oe.has(Z)||(Oe.add(Z),ve.push(Z))}const Ce=j.x,ut=j.x+j.width,ce=j.y,ye=j.y+j.height,de=X=>{const Z=R.get(X.id),fe={x:X.x,y:X.y,width:X.width,height:X.height};return Z?[fe,{x:Z.x,y:Z.y,width:Z.width,height:Z.height}]:[fe]},he=Re.flatMap(de),Ue=Math.min(...he.map(X=>X.x)),Je=Math.max(...he.map(X=>X.x+X.width)),kt=Math.min(...he.map(X=>X.y)),Xt=Math.max(...he.map(X=>X.y+X.height)),Se={L:Ue-Ce,R:ut-Je,T:kt-ce,B:ye-Xt},ke=o.filter(X=>Pi(X)).filter(X=>X.type!=="bpmn:Group"&&X.type!=="bpmn:Participant"&&X.type!=="bpmn:TextAnnotation"&&!Oe.has(X.id)&&F(X.id)&&X.x<ut&&X.x+X.width>Ce&&X.y<ye&&X.y+X.height>ce);if(!ke.length)continue;const ne={L:0,R:0,T:0,B:0};for(const X of ke){const Z=de(X),fe=Math.min(...Z.map(gt=>gt.x)),me=Math.max(...Z.map(gt=>gt.x+gt.width)),be=Math.min(...Z.map(gt=>gt.y)),Ne=Math.max(...Z.map(gt=>gt.y+gt.height)),lt={L:me-Ce,R:ut-fe,T:Ne-ce,B:ye-be},mn=["L","R","T","B"].filter(gt=>lt[gt]<=Se[gt]+.001);if(!mn.length)continue;const At=mn.reduce((gt,is)=>lt[is]<lt[gt]?is:gt,mn[0]);ne[At]=Math.max(ne[At],Math.min(lt[At]+10,Se[At]))}!ne.L&&!ne.R&&!ne.T&&!ne.B||n.resizeShape(j,{x:j.x+ne.L,y:j.y+ne.T,width:j.width-ne.L-ne.R,height:j.height-ne.T-ne.B})}}const s0=x=>{const R=x.waypoints;if(R!=null&&R.length){const L=R[Math.floor((R.length-1)/2)];return{x:L.x,y:L.y,width:0,height:0}}const A=x;return{x:A.x,y:A.y,width:A.width,height:A.height}};let ns=0;const c0=12,u0=14,mL=15,gL=300,yL=x=>{const R=x.split(`
7
+ `),A=Math.max(...R.map(B=>oo(B,c0))),L=Math.max(100,Math.min(gL,Math.ceil(A)+u0)),$=R.reduce((B,F)=>B+Math.max(1,Math.ceil((oo(F,c0)+u0)/L)),0);return{width:L,height:Math.max(30,$*mL+10)}};for(const x of _){const R=x.association,A=((k0=x.placement)==null?void 0:k0.anchor)??(R?R.source===x.annotation.id?R.target:R.source:void 0),L=A?l(A):void 0,$=L?s0(L):void 0,B=yL(x.annotation.text??"");let F;if($&&x.placement){const[pe,Re]=Rs[x.placement.side],re=x.placement.offset??50;F={x:$.x+$.width/2+pe*($.width/2+B.width/2+re),y:$.y+$.height/2+Re*($.height/2+B.height/2+re)}}else $?(F={x:$.x+$.width/2+180+ns%3*260,y:$.y-110-ns%2*95},ns++):(F={x:300+ns*260,y:60},ns++);const j=L?p(L)??u():u(),G=j;$&&typeof G.x=="number"&&typeof G.width=="number"&&G.type==="bpmn:Participant"&&(F=dl(o,$,B,G,x.placement?{placement:x.placement}:{from:F}));const K=n.createShape({type:"bpmn:TextAnnotation",width:B.width,height:B.height,businessObject:i.create("bpmn:TextAnnotation",{id:x.annotation.id,text:x.annotation.text})},F,j);if(R){const pe=Re=>Re===x.annotation.id?K:f(Re);n.connect(pe(R.source),pe(R.target),R.id?{type:"bpmn:Association",businessObject:i.create("bpmn:Association",{id:R.id})}:{type:"bpmn:Association"})}x.placement&&D(K,"bwl:Placement",T(x.placement))}for(const x of Yt(e,"association.add")){const R=x.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 x of Yt(e,"node.update")){let R=f(x.id);if(x.type&&Ss(x.type)!==R.type&&(R=c.replaceElement(R,{type:Ss(x.type)})),x.name!==void 0&&n.updateProperties(R,{name:x.name??void 0}),x.lane||x.band!==void 0){x.band!==void 0&&n.updateProperties(R,{"bwl:band":x.band});const A=R.y+R.height/2,L=p(R),$=x.lane?f(x.lane):((L==null?void 0:L.children)??[]).find(F=>F.type==="bpmn:Lane"&&A>=F.y&&A<=F.y+F.height);x.band!==void 0&&we($==null?void 0:$.id,x.band,L);const B=$?$.y+(x.band===void 0?$.height/2:Math.min($.height/2,se)+M($.id,x.band)*k):x.band!==void 0&&L?L.y+H+M(`pool:${L.id}`,x.band)*k:void 0;if(B!==void 0){const F=B-A;F!==0&&n.moveElements([R],{x:0,y:F})}}}for(const x of Yt(e,"sequenceFlow.update")){const R=f(x.id);if(x.source!==void 0||x.target!==void 0){const A=R,L=x.source!==void 0?f(x.source):A.source,$=x.target!==void 0?f(x.target):A.target,B=F=>({x:F.x+F.width/2,y:F.y+F.height/2});n.reconnect(A,L,$,[B(L),B($)])}x.name!==void 0&&n.updateProperties(R,{name:x.name??void 0}),x.condition!==void 0&&n.updateProperties(R,{name:((O0=x.condition)==null?void 0:O0.label)??void 0})}for(const x of Yt(e,"messageFlow.update"))x.name!==void 0&&n.updateProperties(f(x.id),{name:x.name??void 0});for(const x of Yt(e,"dataStore.update"))x.name!==void 0&&n.updateProperties(f(x.id),{name:x.name??void 0});for(const x of Yt(e,"annotation.update")){const R=f(x.id);if(x.text!==void 0&&n.updateProperties(R,{text:x.text}),x.placement===null)D(R,"bwl:Placement",null);else if(x.placement){const A=f(x.placement.anchor),L=s0(A),$=p(A)??u(),B=typeof $.x=="number"&&typeof $.width=="number"&&$.type==="bpmn:Participant",[F,j]=Rs[x.placement.side],G=x.placement.offset??50,K={x:L.x+L.width/2+F*(L.width/2+R.width/2+G),y:L.y+L.height/2+j*(L.height/2+R.height/2+G)},pe=B?dl(o,L,{width:R.width,height:R.height},$,{placement:x.placement,selfId:x.id}):K;n.moveElements([R],{x:pe.x-(R.x+R.width/2),y:pe.y-(R.y+R.height/2)}),D(R,"bwl:Placement",T(x.placement))}}for(const x of Yt(e,"group.update")){const R=f(x.id);if(x.name!==void 0&&n.updateLabel(R,x.name??""),x.members){const A=x.members.map(l).filter(L=>!!L);A.length&&n.resizeShape(R,ud(A,x.id)),D(R,"bwl:Members",{refs:x.members.join(" ")})}}}function hl(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 y1(e,t,n){var l,f;const{elementRegistry:i}=e,r=e.modeling,o=p=>Pn(p).filter(d=>!t.has(Fn(d))),a=p=>{var d;return((d=i.get(p))==null?void 0:d.type)==="bpmn:TextAnnotation"},s=ot(i),c=o(s),u=[...new Set(c.flatMap(hl))].filter(p=>n.has(p)&&a(p));if(u.length)for(const p of u){const d=i.get(p);if(!d||typeof d.x!="number"||typeof d.width!="number")continue;let h=d.parent,m;for(;h;){if(h.type==="bpmn:Participant"){m=h;break}h=h.parent}if(!m){const Ee=d.x+d.width/2,qe=d.y+d.height/2;m=i.getAll().find(ze=>{if(ze.type!=="bpmn:Participant")return!1;const q=ze;return typeof q.x=="number"&&typeof q.width=="number"&&Ee>=q.x&&Ee<=q.x+q.width&&qe>=q.y&&qe<=q.y+q.height})}if(!m||typeof m.x!="number"||typeof m.width!="number")continue;const y=(((l=d.businessObject.extensionElements)==null?void 0:l.values)??[]).find(Ee=>Ee.$type==="bwl:Placement"),v=[...d.incoming??[],...d.outgoing??[]].find(Ee=>Ee.type==="bpmn:Association"),b=(y!=null&&y.anchor?i.get(y.anchor):void 0)??(v?((f=v.source)==null?void 0:f.id)===p?v.target:v.source:void 0);if(!b)continue;const _=b.waypoints,C=_!=null&&_.length?{x:_[Math.floor((_.length-1)/2)].x,y:_[Math.floor((_.length-1)/2)].y,width:0,height:0}:{x:b.x,y:b.y,width:b.width,height:b.height},P={width:d.width,height:d.height},D={x:d.x+d.width/2,y:d.y+d.height/2},T=y==null?void 0:y.side,I=[];T&&T in Rs&&I.push(dl(i,C,P,m,{placement:{side:T,offset:(y==null?void 0:y.offset)??null},selfId:p}));for(const[Ee,qe]of[[-1,0],[1,0],[0,-1],[0,1]])for(let ze=1;ze<=g1;ze++)I.push({x:D.x+Ee*Lh*ze,y:D.y+qe*Lh*ze});const k={...s,edges:s.edges.filter(Ee=>Ee.id!==(v==null?void 0:v.id))},O=o(k),H=O.filter(Ee=>hl(Ee).includes(p)).length;if(!H)continue;let se;for(const Ee of I){const qe=Ee.x-D.x,ze=Ee.y-D.y;if(!qe&&!ze||Ee.x-P.width/2<m.x||Ee.x+P.width/2>m.x+m.width||Ee.y-P.height/2<m.y||Ee.y+P.height/2>m.y+m.height)continue;const q={...k,shapes:k.shapes.map(Me=>Me.id===p?{...Me,x:Me.x+qe,y:Me.y+ze}:Me)},ue=o(q),oe=ue.filter(Me=>hl(Me).includes(p)).length;if(oe>=H||ue.length>O.length)continue;const le=Math.abs(qe)+Math.abs(ze);if((!se||oe<se.mine||oe===se.mine&&(ue.length<se.all||ue.length===se.all&&le<se.dist))&&(se={x:Ee.x,y:Ee.y,mine:oe,all:ue.length,dist:le}),se.mine===0&&se.all<O.length)break}se&&r.moveElements([d],{x:se.x-D.x,y:se.y-D.y})}}function Bh(e,t,n=Ih){const i=Dh(e),r=Oh(t,ah(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(Pn(a).map(Fn)),c=new Set(a.edges.map(y=>y.id)),u=new Set(a.shapes.map(y=>y.id)),l=ys(a),f=l.length,p=new Set(l.map(([y,v])=>`${y}|${v}`)),d=e.get("commandStack");try{md(d,()=>{n(t,i),dh(i,c);const y=cl(i,s);lh(i,p,c),Eh(i,s,c),gh(i,c),s1(i,c),bh(i,s,c),p1(i,s,c),Ph(i,s,c),Ch(i,c),Th(i,u),y1(i,s,u),cl(i,s,y)})}catch(y){return{ok:!1,issues:[{kind:"lower-failed",message:y instanceof Error?y.message:String(y)}],findings:[],stats:o}}const h=ot(i.elementRegistry),m=Pn(h).filter(y=>!s.has(Fn(y))),g=Qd(h);return{ok:!0,issues:[],findings:m,stats:{edgeCrossings:{before:f,after:g.pairs.length,pairs:g.pairs,solidPairs:g.solidPairs,dashedPairs:g.dashedPairs,mixedPairs:g.mixedPairs,crossPoolMessages:g.crossPoolMessages}}}}function v1(e){const t=e.slice(e.indexOf(":")+1);return t.charAt(0).toLowerCase()+t.slice(1)}function b1(e,t){return typeof e.get=="function"?e.get(t):e[t]}function Nh(e,t){const n=b1(e,t);return typeof n=="number"&&Number.isFinite(n)?n:void 0}function $h(e,t){var i;return(((i=e.extensionElements)==null?void 0:i.values)??[]).find(r=>(r==null?void 0:r.$type)===t)}function _1(e){return typeof e=="string"&&Iu.includes(e)}function si(e){if(typeof e=="string")return e;const t=e==null?void 0:e.id;return typeof t=="string"?t:void 0}function Fh(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:{}},f=[],p=[],d=[],h=[],m=[],g=[],y=new Set,v=new Set,b=q=>{q&&y.add(q)},_=q=>{y.add(q),v.add(q)},C=q=>{const ue=$h(q,"bwl:Placement");if(!ue)return;const oe=typeof ue.anchor=="string"?ue.anchor:void 0;if(!oe||!_1(ue.side))return;const le=typeof ue.offset=="number"?ue.offset:void 0;m.push({owner:q.id,anchor:oe,side:ue.side,...le!==void 0?{offset:le}:{}})},P=q=>{const ue=$h(q,"bwl:Members"),oe=typeof(ue==null?void 0:ue.refs)=="string"?ue.refs.split(/\s+/).filter(Boolean):[];oe.length&&g.push({owner:q.id,refs:oe})},D=q=>{var ue;for(const oe of q)switch(b(oe.id),oe.$type){case"bpmn:TextAnnotation":_(oe.id),s.push({id:oe.id,text:typeof oe.text=="string"?oe.text:""}),C(oe);break;case"bpmn:Association":d.push({id:oe.id,type:oe.$type,source:si(oe.sourceRef),target:si(oe.targetRef)});break;case"bpmn:Group":{_(oe.id);const le=(ue=oe.categoryValueRef)==null?void 0:ue.value;c.push({id:oe.id,...typeof le=="string"&&le?{name:le}:{}}),P(oe);break}default:u.push({id:oe.id,type:oe.$type,reason:"type-outside-mvp"})}},T=q=>{for(const ue of q.flowElements??[])b(ue.id),u.push({id:ue.id,type:ue.$type,reason:"inside-container"}),(ue.flowElements??[]).length&&T(ue);for(const ue of q.artifacts??[])b(ue.id),u.push({id:ue.id,type:ue.$type,reason:"inside-container"})},I=(q,ue)=>{const oe=q.flowElements??[],le=(q.laneSets??[]).flatMap(W=>W.lanes??[]),Me=new Map;for(const W of le){b(W.id);for(const Y of W.flowNodeRef??[]){const J=si(Y);J&&Me.set(J,W.id)}}for(const W of oe){if(b(W.id),W.$type==="bpmn:SequenceFlow"){f.push({id:W.id,source:si(W.sourceRef),target:si(W.targetRef),...typeof W.name=="string"&&W.name?{name:W.name}:{}});continue}if(W.$type==="bpmn:DataStoreReference"){_(W.id),a.push({id:W.id,...W.name?{name:W.name}:{}});continue}const Y=v1(W.$type);if(!ld(Y)){u.push({id:W.id,type:W.$type,reason:"type-outside-mvp"});continue}_(W.id);const J=Y==="boundaryEvent"?si(W.attachedToRef):void 0;o.push({id:W.id,type:Y,...W.name?{name:W.name}:{},...ue?{participant:ue}:{},...Me.has(W.id)?{lane:Me.get(W.id)}:{},...J?{attachedTo:J}:{}}),Y==="subProcess"&&T(W);const Te=Nh(W,"bwl:band");Te!==void 0&&(l.bands[W.id]=Te);for(const ft of W.dataOutputAssociations??[])b(ft.id),h.push({id:ft.id,type:ft.$type,source:W.id,target:si(ft.targetRef)});for(const ft of W.dataInputAssociations??[])b(ft.id),h.push({id:ft.id,type:ft.$type,source:si((ft.sourceRef??[])[0]),target:W.id})}D(q.artifacts??[])};if(n){const q=new Set;for(const ue of n.participants??[]){_(ue.id);const oe=si(ue.processRef);oe&&q.add(oe);const le=oe?i.get(oe):void 0,Me=((le==null?void 0:le.laneSets)??[]).flatMap(Te=>Te.lanes??[]),W=Me.map(Te=>({id:Te.id,...Te.name?{name:Te.name}:{}}));for(const Te of W)_(Te.id);const Y=!le||(le.flowElements??[]).length===0&&Me.length===0&&(le.artifacts??[]).length===0;r.push({id:ue.id,...ue.name?{name:ue.name}:{},...Y?{blackBox:!0}:{},...W.length?{lanes:W}:{}});const J=Nh(ue,"bwl:poolOrder");J!==void 0&&(l.poolOrders[ue.id]=J),le&&I(le,ue.id)}for(const ue of n.messageFlows??[])b(ue.id),p.push({id:ue.id,source:si(ue.sourceRef),target:si(ue.targetRef),...typeof ue.name=="string"&&ue.name?{name:ue.name}:{}});D(n.artifacts??[]);for(const[ue,oe]of i)!q.has(ue)&&(oe.flowElements??[]).length>0&&u.push({id:ue,type:oe.$type,reason:"unreachable-process"})}else for(const q of i.values())I(q);const k=[],O=[],H=[],se=[],Ee=(q,ue)=>!!q&&!!ue&&v.has(q)&&v.has(ue);for(const q of f){if(!Ee(q.source,q.target)){u.push({id:q.id,type:"bpmn:SequenceFlow",reason:"endpoint-outside-mvp"});continue}k.push({id:q.id,source:q.source,target:q.target,...q.name?{name:q.name}:{}}),v.add(q.id)}for(const q of p){if(!Ee(q.source,q.target)){u.push({id:q.id,type:"bpmn:MessageFlow",reason:"endpoint-outside-mvp"});continue}O.push({id:q.id,source:q.source,target:q.target,...q.name?{name:q.name}:{}}),v.add(q.id)}for(const q of h){if(!Ee(q.source,q.target)){u.push({id:q.id??"",type:q.type,reason:"endpoint-outside-mvp"});continue}se.push({...q.id?{id:q.id}:{},source:q.source,target:q.target}),q.id&&v.add(q.id)}for(const q of d){if(!Ee(q.source,q.target)){u.push({id:q.id??"",type:q.type,reason:"endpoint-outside-mvp"});continue}H.push({...q.id?{id:q.id}:{},source:q.source,target:q.target})}const qe=new Map(c.map(q=>[q.id,q]));for(const{owner:q,refs:ue}of g){const oe=ue.filter(Me=>y.has(Me)),le=qe.get(q);le&&oe.length&&(le.members=oe)}for(const q of m)y.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:k,...O.length?{messageFlows:O}:{},...a.length?{dataStores:a}:{},...se.length?{dataAssociations:se}:{},...s.length?{annotations:s}:{},...H.length?{associations:H}:{},...c.length?{groups:c}:{}},hints:l,omitted:u}}async function x1(e){const{definitions:t,warnings:n}=await Qu(e);return{...Fh(t),warnings:n}}function w1(e,t,n,i={}){return{documentId:e,baseVersion:t,ops:[...n],origin:i.origin??"agent",clientOpId:(i.mkClientOpId??(()=>crypto.randomUUID()))()}}async function jh(e,t,{currentVersion:n}){if(t.baseVersion!==n)return{status:"conflict",baseVersion:t.baseVersion,currentVersion:n};const i=Bh(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 E1=Symbol("bpmn-editor");function S1(){const e=Ot.ref(!1),t=Ot.ref(!0),n=Ot.ref(!1);let i,r;const o=()=>{e.value=!0};function a(u,l){u.get("canvas").getContainer().style.pointerEvents=l?"":"none";const f=u.get("keyboard");l?(r&&f.bind(r),r=void 0):r||(r=f.getBinding(),f.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 f=s();n.value=!0;try{const p=await jh(f,u,{currentVersion:l});return p.status==="applied"&&(e.value=!1),p}finally{n.value=!1}},async importXml(u){const{warnings:l}=await s().importXML(u);return e.value=!1,{warnings:Ju(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 _e(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}function R1(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ml={exports:{}},Hh;function C1(){if(Hh)return ml.exports;Hh=1;var e=ml.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},ml.exports}var P1=C1(),A1=R1(P1);function hi(e){if(!(this instanceof hi))return new hi(e);e=e||[128,36,1],this._seed=e.length?A1.rack(e[0],e[1],e[2]):e}hi.prototype.next=function(e){return this._seed(e||!0)},hi.prototype.nextPrefixed=function(e,t){var n;do n=e+this.next(!0);while(this.assigned(n));return this.claim(n,t),n},hi.prototype.claim=function(e,t){this._seed.set(e,t||!0)},hi.prototype.assigned=function(e){return this._seed.get(e)||!1},hi.prototype.unclaim=function(e){delete this._seed.hats[e]},hi.prototype.clear=function(){var e=this._seed.hats,t;for(t in e)this.unclaim(t)};const jt={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:[0,"",""]};jt.td=jt.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],jt.option=jt.optgroup=[1,'<select multiple="multiple">',"</select>"],jt.thead=jt.tbody=jt.colgroup=jt.caption=jt.tfoot=[1,"<table>","</table>"],jt.polyline=jt.ellipse=jt.polygon=jt.circle=jt.text=jt.line=jt.path=jt.rect=jt.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];function mt(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:f}=l;return f.remove(),f}let[r,o,a]=Object.hasOwn(jt,i)?jt[i]:jt._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 T1(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 vn(e,...t){const n=e.style;return N(t,function(i){i&&N(i,function(r,o){n[o]=r})}),e}function ln(e,t,n){return arguments.length==2?e.getAttribute(t):n===null?e.removeAttribute(t):(e.setAttribute(t,n),e)}const M1=Object.prototype.toString;function bt(e){return new Zi(e)}function Zi(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}Zi.prototype.add=function(e){return this.list.add(e),this},Zi.prototype.remove=function(e){return M1.call(e)=="[object RegExp]"?this.removeMatching(e):(this.list.remove(e),this)},Zi.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},Zi.prototype.toggle=function(e,t){return typeof t<"u"?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},Zi.prototype.array=function(){return Array.from(this.list)},Zi.prototype.has=Zi.prototype.contains=function(e){return this.list.contains(e)};function Cs(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function kr(e,t,n){var i=n?e:e.parentNode;return i&&typeof i.closest=="function"&&i.closest(t)||null}function k1(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Ps={},zh;function O1(){if(zh)return Ps;zh=1;var e,t,n;function i(){e=window.addEventListener?"addEventListener":"attachEvent",t=window.removeEventListener?"removeEventListener":"detachEvent",n=e!=="addEventListener"?"on":""}return Ps.bind=function(r,o,a,s){return e||i(),r[e](n+o,a,s||!1),a},Ps.unbind=function(r,o,a,s){return t||i(),r[t](n+o,a,s||!1),a},Ps}var Gh=O1(),D1=k1(Gh),$e=T1({__proto__:null,default:D1},[Gh]),Vh=["focus","blur"];function L1(e,t,n,i,r){return Vh.indexOf(n)!==-1&&(r=!0),$e.bind(e,n,function(o){var a=o.target||o.srcElement;o.delegateTarget=kr(a,t,!0),o.delegateTarget&&i.call(e,o)},r)}function I1(e,t,n,i){return Vh.indexOf(t)!==-1&&(i=!0),$e.unbind(e,t,n,i)}var Tn={bind:L1,unbind:I1};function gl(e,t){return e&&typeof e.matches=="function"&&e.matches(t)||!1}function rt(e,t){return t=t||document,t.querySelector(e)}function As(e,t){return t=t||document,t.querySelectorAll(e)}function mi(e){e.parentNode&&e.parentNode.removeChild(e)}function B1(e,t){if(e.ownerDocument!==t.ownerDocument)try{return t.ownerDocument.importNode(e,!0)}catch{}return e}function N1(e,t){return t.appendChild(B1(e,t))}function Fe(e,t){return N1(t,e),e}var yl=2,Wh={"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":yl,"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":yl,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function $1(e,t){return Wh[t]?e.style[t]:e.getAttributeNS(null,t)}function Uh(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=Wh[i];r?(r===yl&&typeof n=="number"&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function F1(e,t){var n=Object.keys(t),i,r;for(i=0,r;r=n[i];i++)Uh(e,r,t[r])}function xe(e,t,n){if(typeof t=="string")if(n!==void 0)Uh(e,t,n);else return $1(e,t);else F1(e,t);return e}const j1=Object.prototype.toString;function Xe(e){return new Qi(e)}function Qi(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}Qi.prototype.add=function(e){return this.list.add(e),this},Qi.prototype.remove=function(e){return j1.call(e)=="[object RegExp]"?this.removeMatching(e):(this.list.remove(e),this)},Qi.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},Qi.prototype.toggle=function(e,t){return typeof t<"u"?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},Qi.prototype.array=function(){return Array.from(this.list)},Qi.prototype.has=Qi.prototype.contains=function(e){return this.list.contains(e)};function Ts(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function Yh(e){return e.cloneNode(!0)}var vl={svg:"http://www.w3.org/2000/svg"},qh='<svg xmlns="'+vl.svg+'"';function H1(e){var t=!1;e.substring(0,4)==="<svg"?e.indexOf(vl.svg)===-1&&(e=qh+e.substring(4)):(e=qh+">"+e+"</svg>",t=!0);var n=z1(e);if(!t)return n;for(var i=document.createDocumentFragment(),r=n.firstChild;r.firstChild;)i.appendChild(r.firstChild);return i}function z1(e){var t;return t=new DOMParser,t.async=!1,t.parseFromString(e,"text/xml")}function Pe(e,t){var n;return e=e.trim(),e.charAt(0)==="<"?(n=H1(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(vl.svg,e),t&&xe(n,t),n}var bl=null;function Kh(){return bl===null&&(bl=Pe("svg")),bl}function Xh(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}function G1(e,t,n,i,r,o){var a=Kh().createSVGMatrix();switch(arguments.length){case 0:return a;case 1:return Xh(a,e);case 6:return Xh(a,{a:e,b:t,c:n,d:i,e:r,f:o})}}function ea(e){return Kh().createSVGTransform()}var Zh=/([&<>]{1})/g,V1=/([&<>\n\r"]{1})/g,W1={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"'"};function _l(e,t){function n(i,r){return W1[r]||r}return e.replace(t,n)}function Qh(e,t){var n,i,r,o,a;switch(e.nodeType){case 3:t.push(_l(e.textContent,Zh));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,'="',_l(o.value,V1),'"');if(e.hasChildNodes()){for(t.push(">"),a=e.childNodes,n=0,i=a.length;n<i;++n)Qh(a.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("<!--",_l(e.nodeValue,Zh),"-->");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function U1(e){for(var t=e.firstChild,n=[];t;)Qh(t,n),t=t.nextSibling;return n.join("")}function Jh(e,t){return U1(e)}function Ht(e){var t=e.parentNode;return t&&t.removeChild(e),e}function Y1(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function q1(e,t){var n,i;for(e.clear(),n=0;i=t[n];n++)e.appendItem(Y1(e,i))}function ta(e,t){var n=e.transform.baseVal;return t&&(Array.isArray(t)||(t=[t]),q1(n,t)),n.consolidate()}const K1=/^class[ {]/;function X1(e){return K1.test(e.toString())}function xl(e){return Array.isArray(e)}function wl(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Ms(...e){e.length===1&&xl(e[0])&&(e=e[0]),e=[...e];const t=e.pop();return t.$inject=e,t}const Z1=/constructor\s*[^(]*\(\s*([^)]*)\)/m,Q1=/^(?:async\s+)?(?:function\s*[^(]*)?(?:\(\s*([^)]*)\)|(\w+))/m,J1=/\/\*([^*]*)\*\//m;function eS(e){if(typeof e!="function")throw new Error(`Cannot annotate "${e}". Expected a function!`);const t=e.toString().match(X1(e)?Z1:Q1);if(!t)return[];const n=t[1]||t[2];return n&&n.split(",").map(i=>{const r=i.match(J1);return(r&&r[1]||i).trim()})||[]}function em(e,t){const n=t||{get:function(b,_){if(i.push(b),_===!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 _=i.join(" -> ");return i.length=0,new Error(_?`${b} (Resolving: ${_})`:b)};function c(b,_){if(!r[b]&&b.includes(".")){const C=b.split(".");let P=c(C.shift());for(;C.length;)P=P[C.shift()];return P}if(wl(o,b))return o[b];if(wl(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,_)}function u(b,_){if(typeof _>"u"&&(_={}),typeof b!="function")if(xl(b))b=Ms(b.slice());else throw s(`Cannot invoke "${b}". Expected a function!`);const P=(b.$inject||eS(b)).map(D=>wl(_,D)?_[D]:c(D));return{fn:b,dependencies:P}}function l(b){const{fn:_,dependencies:C}=u(b),P=Function.prototype.bind.call(_,null,...C);return new P}function f(b,_,C){const{fn:P,dependencies:D}=u(b,C);return P.apply(_,D)}function p(b){return Ms(_=>b.get(_))}function d(b,_){if(_&&_.length){const C=Object.create(null),P=Object.create(null),D=[],T=[],I=[];let k,O,H,se;for(let Ee in r)k=r[Ee],_.indexOf(Ee)!==-1&&(k[2]==="private"?(O=D.indexOf(k[3]),O===-1?(H=k[3].createChild([],_),se=p(H),D.push(k[3]),T.push(H),I.push(se),C[Ee]=[se,Ee,"private",H]):C[Ee]=[I[O],Ee,"private",T[O]]):C[Ee]=[k[2],k[1]],P[Ee]=!0),(k[2]==="factory"||k[2]==="type")&&k[1].$scope&&_.forEach(qe=>{k[1].$scope.indexOf(qe)!==-1&&(C[Ee]=[k[2],k[1]],P[qe]=!0)});_.forEach(Ee=>{if(!P[Ee])throw new Error('No provider for "'+Ee+'". Cannot use provider from the parent!')}),b.unshift(C)}return new em(b,a)}const h={factory:f,type:l,value:function(b){return b}};function m(b,_){const C=b.__init__||[];return function(){C.forEach(P=>{typeof P=="string"?_.get(P):_.invoke(P)})}}function g(b){const _=b.__exports__;if(_){const C=b.__modules__,P=Object.keys(b).reduce((O,H)=>(H!=="__exports__"&&H!=="__modules__"&&H!=="__init__"&&H!=="__depends__"&&(O[H]=b[H]),O),Object.create(null)),D=(C||[]).concat(P),T=d(D),I=Ms(function(O){return T.get(O)});_.forEach(function(O){r[O]=[I,O,"private",T]});const k=(b.__init__||[]).slice();return k.unshift(function(){T.init()}),b=Object.assign({},b,{__init__:k}),m(b,T)}return Object.keys(b).forEach(function(C){if(C==="__init__"||C==="__depends__")return;const P=b[C];if(P[2]==="private"){r[C]=P;return}const D=P[0],T=P[1];r[C]=[h[D],tS(D,T),D]}),m(b,a)}function y(b,_){return b.indexOf(_)!==-1||(b=(_.__depends__||[]).reduce(y,b),b.indexOf(_)!==-1)?b:b.concat(_)}function v(b){const _=b.reduce(y,[]).map(g);let C=!1;return function(){C||(C=!0,_.forEach(P=>P()))}}this.get=c,this.invoke=f,this.instantiate=l,this.createChild=d,this.init=v(e)}function tS(e,t){return e!=="value"&&xl(t)&&(t=Ms(t.slice())),t}var nS=1e3;function ki(e,t){var n=this;t=t||nS,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)})}ki.prototype.canRender=function(e){},ki.prototype.drawShape=function(e,t){},ki.prototype.drawConnection=function(e,t){},ki.prototype.getShapePath=function(e){},ki.prototype.getConnectionPath=function(e){};function Or(e){return e.flat().join(",").replace(/,?([A-Za-z]),?/g,"$1")}function iS(e){return["M",e.x,e.y]}function El(e){return["L",e.x,e.y]}function rS(e,t,n){return["C",e.x,e.y,t.x,t.y,n.x,n.y]}function oS(e,t){const n=e.length,i=[iS(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(El(a));continue}const c=Math.min(t,Sl(a.x-o.x,a.y-o.y),Sl(s.x-a.x,s.y-a.y));if(!c){i.push(El(a));continue}const u=ks(a,o,c),l=ks(a,o,c*.5),f=ks(a,s,c),p=ks(a,s,c*.5);i.push(El(u)),i.push(rS(l,p,f))}return i}function ks(e,t,n){const i=t.x-e.x,r=t.y-e.y,o=Sl(i,r),a=n/o;return{x:e.x+i*a,y:e.y+r*a}}function Sl(e,t){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2))}function na(e,t,n){Be(t)&&(n=t,t=null),t||(t={});const i=Pe("path",t);return Be(n)&&(i.dataset.cornerRadius=String(n)),Rl(i,e)}function Rl(e,t){const n=parseInt(e.dataset.cornerRadius,10)||0;return xe(e,{d:Or(oS(t,n))}),e}function Os(e){var t=new Set(e);return We(e,function(n){for(var i=n.parent;i;){if(t.has(i))return!1;i=i.parent}return!0})}function Dr(e,t,n){n=n||0,De(e)||(e=[e]),N(e,function(i,r){var o=t(i,r,n);De(o)&&o.length&&Dr(o,t,n+1)})}function Cl(e,t,n){var i=new Set,r=new Set;return Dr(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 ia(e,t){return Cl(e)}function aS(e,t,n){Cr(t)&&(t=!0),Wt(t)&&(n=t,t=!0),n=n||{};var i=ra(n.allShapes),r=ra(n.allConnections),o=ra(n.enclosedElements),a=ra(n.enclosedConnections),s=ra(n.topLevel,t&&eo(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,N(l.incoming,c),N(l.outgoing,c),l.children}return Dr(e,u),{allShapes:i,allConnections:r,topLevel:s,enclosedConnections:a,enclosedElements:o}}function Dt(e,t){t=!!t,De(e)||(e=[e]);var n,i,r,o;return N(e,function(a){var s=a;a.waypoints&&!t&&(s=Dt(a.waypoints,!0));var c=s.x,u=s.y,l=s.height||0,f=s.width||0;(c<n||n===void 0)&&(n=c),(u<i||i===void 0)&&(i=u),(c+f>r||r===void 0)&&(r=c+f),(u+l>o||o===void 0)&&(o=u+l)}),{x:n,y:i,height:o-i,width:r-n}}function po(e,t){var n={};return N(e,function(i){var r=i;r.waypoints&&(r=Dt(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 tm(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function nm(e){return!!(e&&e.isFrame)}function ra(e,t){return V({},e||{},t||{})}var sS=1;function Ji(e,t){ki.call(this,e,sS),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})}_e(Ji,ki),Ji.prototype.canRender=function(){return!0},Ji.prototype.drawShape=function(t,n,i){var r=Pe("rect");return xe(r,{x:0,y:0,width:n.width||0,height:n.height||0}),nm(n)?xe(r,V({},this.FRAME_STYLE,i||{})):xe(r,V({},this.SHAPE_STYLE,i||{})),Fe(t,r),r},Ji.prototype.drawConnection=function(t,n,i){var r=na(n.waypoints,V({},this.CONNECTION_STYLE,i||{}));return Fe(t,r),r},Ji.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 Or(a)},Ji.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 Or(o)},Ji.$inject=["eventBus","styles"];function cS(){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=Cn(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 uS={__init__:["defaultRenderer"],defaultRenderer:["type",Ji],styles:["type",cS]};function Ct(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return n!==-1&&e.splice(n,1),n}function Tt(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 Pl(e,t){return!e||!t?-1:e.indexOf(t)}function oa(e,t){return!e||!t?-1:Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Al(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=oa(e,t);return Math.abs(r/o)<=i}var lS=2;function Oi(e,t){var n=Array.from(arguments).flat();const i={x:"v",y:"h"};for(const[r,o]of Object.entries(i))if(pS(r,n))return o;return!1}function pS(e,t){const n=t[0];return Pr(t,function(i){return Math.abs(n[e]-i[e])<=lS})}function im(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 Tl(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}var fS=/,?([a-z]),?/gi,rm=parseFloat,Lt=Math,er=Lt.PI,gi=Lt.min,yi=Lt.max,om=Lt.pow,tr=Lt.abs,dS=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/ig,hS=/(-?\d*\.?\d*(?:e[-+]?\d+)?)[\s]*,?[\s]*/ig,am=Array.isArray||function(e){return e instanceof Array};function mS(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function gS(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 yS(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 mS(r,i)?(gS(o,i),r[i]):(o.length>=1e3&&delete r[o.shift()],o.push(i),r[i]=e(...arguments),r[i])}return t}function vS(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(dS,function(i,r,o){var a=[],s=r.toLowerCase();for(o.replace(hS,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=kl,n}function bS(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 _S(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 Ml(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 kl(){return this.join(",").replace(fS,"$1")}function xS(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=kl,t}function sm(e,t,n,i,r,o,a,s,c){var u=1-c,l=om(u,3),f=om(u,2),p=c*c,d=p*c,h=l*e+f*3*c*n+u*3*c*c*r+d*a,m=l*t+f*3*c*i+u*3*c*c*o+d*s;return{x:Ds(h),y:Ds(m)}}function cm(e){var t=PS(...e);return Ml(t.x0,t.y0,t.x1-t.x0,t.y1-t.y0)}function nr(e,t,n){return t>=e.x&&t<=e.x+e.width&&n>=e.y&&n<=e.y+e.height}function wS(e,t){return e=Ml(e),t=Ml(t),nr(t,e.x,e.y)||nr(t,e.x2,e.y)||nr(t,e.x,e.y2)||nr(t,e.x2,e.y2)||nr(e,t.x,t.y)||nr(e,t.x2,t.y)||nr(e,t.x,t.y2)||nr(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 um(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 lm(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,f=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],p=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],d=0,h=0;h<l;h++){var m=u*f[h]+u,g=um(m,e,n,r,a),y=um(m,t,i,o,s),v=g*g+y*y;d+=p[h]*Lt.sqrt(v)}return u*d}function ES(e,t,n,i,r,o,a,s){if(!(yi(e,n)<gi(r,a)||gi(e,n)>yi(r,a)||yi(t,i)<gi(o,s)||gi(t,i)>yi(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 f=Ds(c/l),p=Ds(u/l),d=+f.toFixed(2),h=+p.toFixed(2);if(!(d<+gi(e,n).toFixed(2)||d>+yi(e,n).toFixed(2)||d<+gi(r,a).toFixed(2)||d>+yi(r,a).toFixed(2)||h<+gi(t,i).toFixed(2)||h>+yi(t,i).toFixed(2)||h<+gi(o,s).toFixed(2)||h>+yi(o,s).toFixed(2)))return{x:f,y:p}}}}function Ds(e){return Math.round(e*1e11)/1e11}function SS(e,t,n){var i=cm(e),r=cm(t);if(!wS(i,r))return[];var o=lm(...e),a=lm(...t),s=fm(e)?1:~~(o/5)||1,c=fm(t)?1:~~(a/5)||1,u=new Array(s+1),l=new Array(c+1),f={},p=[],d,h;for(d=0;d<s+1;d++){var m=sm(...e,d/s);u[d]={x:m.x,y:m.y,t:d/s}}for(d=0;d<c+1;d++)m=sm(...t,d/c),l[d]={x:m.x,y:m.y,t:d/c};for(d=0;d<s;d++)for(h=0;h<c;h++){var g=u[d],y=u[d+1],v=l[h],b=l[h+1],_=tr(y.x-g.x)<.01?"y":"x",C=tr(b.x-v.x)<.01?"y":"x",P=ES(g.x,g.y,y.x,y.y,v.x,v.y,b.x,b.y),D;if(P){if(D=P.x.toFixed(9)+"#"+P.y.toFixed(9),f[D])continue;f[D]=!0;var T=g.t+tr((P[_]-g[_])/(y[_]-g[_]))*(y.t-g.t),I=v.t+tr((P[C]-v[C])/(b[C]-v[C]))*(b.t-v.t);T>=0&&T<=1&&I>=0&&I<=1&&p.push({x:P.x,y:P.y,t1:T,t2:I})}}return p}function pm(e,t,n){e=mm(e),t=mm(t);for(var i,r,o,a,s,c,u,l,f,p,d=n?0:[],h=0,m=e.length;h<m;h++){var g=e[h];if(g[0]=="M")i=s=g[1],r=c=g[2];else{g[0]=="C"?(f=[i,r,...g.slice(1)],i=f[6],r=f[7]):(f=[i,r,i,r,s,c,s,c],i=s,r=c);for(var y=0,v=t.length;y<v;y++){var b=t[y];if(b[0]=="M")o=u=b[1],a=l=b[2];else{b[0]=="C"?(p=[o,a,...b.slice(1)],o=p[6],a=p[7]):(p=[o,a,o,a,u,l,u,l],o=u,a=l);var _=SS(f,p);{for(var C=0,P=_.length;C<P;C++)_[C].segment1=h,_[C].segment2=y,_[C].bez1=f,_[C].bez2=p;d=d.concat(_)}}}}}return d}function RS(e){return am(e)&&am(e[0])}function CS(e){if(bS(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,f=e.length;l<f;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 p=1,d=u.length;p<d;p++)c[p]=+u[p]+(p%2?n:i)}else for(var h=0,m=u.length;h<m;h++)c[h]=u[h];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=kl,t}function fm(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function Ls(e,t,n,i){return[e,t,n,i,n,i]}function dm(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 hm(e,t,n,i,r,o,a,s,c,u){var l=er*120/180,f=er/180*(+r||0),p=[],d,h=yS(function(M,S,w){var z=M*Lt.cos(w)-S*Lt.sin(w),U=M*Lt.sin(w)+S*Lt.cos(w);return{x:z,y:U}});if(u)D=u[0],T=u[1],C=u[2],P=u[3];else{d=h(e,t,-f),e=d.x,t=d.y,d=h(s,c,-f),s=d.x,c=d.y;var m=(e-s)/2,g=(t-c)/2,y=m*m/(n*n)+g*g/(i*i);y>1&&(y=Lt.sqrt(y),n=y*n,i=y*i);var v=n*n,b=i*i,_=(o==a?-1:1)*Lt.sqrt(tr((v*b-v*g*g-b*m*m)/(v*g*g+b*m*m))),C=_*n*g/i+(e+s)/2,P=_*-i*m/n+(t+c)/2,D=Lt.asin(((t-P)/i).toFixed(9)),T=Lt.asin(((c-P)/i).toFixed(9));D=e<C?er-D:D,T=s<C?er-T:T,D<0&&(D=er*2+D),T<0&&(T=er*2+T),a&&D>T&&(D=D-er*2),!a&&T>D&&(T=T-er*2)}var I=T-D;if(tr(I)>l){var k=T,O=s,H=c;T=D+l*(a&&T>D?1:-1),s=C+n*Lt.cos(T),c=P+i*Lt.sin(T),p=hm(s,c,n,i,r,0,a,O,H,[T,k,C,P])}I=T-D;var se=Lt.cos(D),Ee=Lt.sin(D),qe=Lt.cos(T),ze=Lt.sin(T),q=Lt.tan(I/4),ue=4/3*n*q,oe=4/3*i*q,le=[e,t],Me=[e+ue*Ee,t-oe*se],W=[s+ue*ze,c-oe*qe],Y=[s,c];if(Me[0]=2*le[0]-Me[0],Me[1]=2*le[1]-Me[1],u)return[Me,W,Y].concat(p);p=[Me,W,Y].concat(p).join().split(",");for(var J=[],Te=0,ft=p.length;Te<ft;Te++)J[Te]=Te%2?h(p[Te-1],p[Te],f).y:h(p[Te],p[Te+1],f).x;return J}function PS(e,t,n,i,r,o,a,s){for(var c=[],u=[[],[]],l,f,p,d,h,m,g,y,v=0;v<2;++v){if(v==0?(f=6*e-12*n+6*r,l=-3*e+9*n-9*r+3*a,p=3*n-3*e):(f=6*t-12*i+6*o,l=-3*t+9*i-9*o+3*s,p=3*i-3*t),tr(l)<1e-12){if(tr(f)<1e-12)continue;d=-p/f,0<d&&d<1&&c.push(d);continue}g=f*f-4*p*l,y=Lt.sqrt(g),!(g<0)&&(h=(-f+y)/(2*l),0<h&&h<1&&c.push(h),m=(-f-y)/(2*l),0<m&&m<1&&c.push(m))}for(var b=c.length,_=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][_]=e,u[1][_]=t,u[0][_+1]=a,u[1][_+1]=s,u[0].length=u[1].length=_+2,{x0:gi(...u[0]),y0:gi(...u[1]),x1:yi(...u[0]),y1:yi(...u[1])}}function mm(e){if(RS(e)||(e=vS(e)),_S(e))return e;for(var t=xS(CS(e)),n={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},i=function(p,d,h){var m,g;if(!p)return["C",d.x,d.y,d.x,d.y,d.x,d.y];switch(!(p[0]in{T:1,Q:1})&&(d.qx=d.qy=null),p[0]){case"M":d.X=p[1],d.Y=p[2];break;case"A":p=["C",...hm(d.x,d.y,...p.slice(1))];break;case"S":h=="C"||h=="S"?(m=d.x*2-d.bx,g=d.y*2-d.by):(m=d.x,g=d.y),p=["C",m,g,...p.slice(1)];break;case"T":h=="Q"||h=="T"?(d.qx=d.x*2-d.qx,d.qy=d.y*2-d.qy):(d.qx=d.x,d.qy=d.y),p=["C",...dm(d.x,d.y,d.qx,d.qy,p[1],p[2])];break;case"Q":d.qx=p[1],d.qy=p[2],p=["C",...dm(d.x,d.y,p[1],p[2],p[3],p[4])];break;case"L":p=["C",...Ls(d.x,d.y,p[1],p[2])];break;case"H":p=["C",...Ls(d.x,d.y,p[1],d.y)];break;case"V":p=["C",...Ls(d.x,d.y,d.x,p[1])];break;case"Z":p=["C",...Ls(d.x,d.y,d.X,d.Y)];break}return p},r=function(p,d){if(p[d].length>7){p[d].shift();for(var h=p[d];h.length;)o[d]="A",p.splice(d++,0,["C",...h.splice(0,6)]);p.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],f=l.length;n.x=l[f-2],n.y=l[f-1],n.bx=rm(l[f-4])||n.x,n.by=rm(l[f-3])||n.y}return t}function at(e){return Wt(e)&&Rn(e,"waypoints")}function Ge(e){return Wt(e)&&Rn(e,"labelTarget")}function AS(e){return Wt(e)&&Qr(e.parent)}function gm(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function Di(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function Ae(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function Is(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function TS(e){return Di({x:e.x+(e.width||0)/2,y:e.y+(e.height||0)/2})}function MS(e){for(var t=e.waypoints,n=t.reduce(function(u,l,f){var p=t[f-1];if(p){var d=u[u.length-1],h=d&&d.endLength||0,m=DS(p,l);u.push({start:p,end:l,startLength:h,endLength:h+m,length:m})}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 at(e)?MS(e):TS(e)}function en(e,t,n){n=n||0,Wt(n)||(n={x:n,y:n});var i=Ae(e),r=Ae(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 aa(e,t,n){var i=kS(e,t);return i.length===1||i.length===2&&oa(i[0],i[1])<1?Di(i[0]):i.length>1?(i=li(i,function(r){var o=Math.floor(r.t2*100)||1;return o=100-o,o=(o<10?"0":"")+o,r.segment2+"#"+o}),Di(i[n?0:i.length-1])):null}function kS(e,t){return pm(e,t)}function OS(e){e=e.slice();for(var t=0,n,i,r;e[t];)n=e[t],i=e[t-1],r=e[t+1],oa(n,r)===0||Al(i,r,n)?e.splice(t,1):t++;return e}function DS(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Bs(e,t){return Math.round(e*t)/t}function ym(e){return Be(e)?e+"px":e}function LS(e){for(;e.parent;)e=e.parent;return e}function IS(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"),vn(n,{position:"relative",overflow:"hidden",width:ym(e.width),height:ym(e.height)}),t.appendChild(n),n}function vm(e,t,n){const i=Pe("g");Xe(i).add(t);const r=n!==void 0?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}const BS="base",bm=0,NS=1,$S={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=IS(e),i=this._svg=Pe("svg");xe(i,{width:"100%",height:"100%"}),ln(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")}),Fe(n,i);const r=this._viewport=vm(i,"viewport");e.deferUpdate&&(this._viewboxChanged=Fu(this._viewboxChanged,300)),this._restoreFocus=Fu(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=tm(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(BS,bm)},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 Cn(this._layers,function(t,n){return n.visible&&e>=n.index&&t++,t},0)},Ie.prototype._createLayer=function(e,t){typeof t>"u"&&(t=NS);const n=this._getChildIndex(t);return{group:vm(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&&(Ht(n),t.visible=!1),n},Ie.prototype._removeLayer=function(e){const t=this._layers[e];t&&(delete this._layers[e],Ht(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(LS(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 pt(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&&(N([i.gfx,i.secondaryGfx],function(r){r&&(n?(e.markers.add(t),Xe(r).add(t)):(e.markers.delete(t),Xe(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,bm);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=$S[e];if(!Pr(n,function(r){return typeof t[r]<"u"}))throw new Error("must supply { "+n.join(", ")+" } with "+e)},Ie.prototype._setParent=function(e,t,n){Tt(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),Ct(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);ta(t,l)});else return o=this._rootElement?this.getActiveLayer():null,i=o&&o.getBBox()||{},a=ta(t),r=a?a.matrix:G1(),s=Bs(r.a,1e3),c=Bs(-r.e||0,1e3),u=Bs(-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),_m(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(h=>h!=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=Dt(o),s=Ae(a),c=this.viewbox(),u=this.zoom();let l,f;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 p=Ae(c);if(!(a.width<c.width&&a.height<c.height))l=a.x-c.x,f=a.y-c.y;else{const h=Math.max(0,s.right-p.right),m=Math.min(0,s.left-p.left),g=Math.max(0,s.bottom-p.bottom),y=Math.min(0,s.top-p.top);l=h||m,f=g||y}this.scroll({dx:-l*u,dy:-f*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)}),Bs(i.a,1e3)};function _m(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 f=c.a;return t?(a=V(o,t),s=a.matrixTransform(c.inverse()),u=r.translate(s.x,s.y).scale(1/f*e).translate(-s.x,-s.y),l=c.multiply(u)):l=r.scale(e),_m(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 fo="data-element-id";function Gn(e){this._elements={},this._eventBus=e}Gn.$inject=["eventBus"],Gn.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),xe(t,fo,i),n&&xe(n,fo,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},Gn.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(xe(i.gfx,fo,""),i.secondaryGfx&&xe(i.secondaryGfx,fo,""),delete t[n])},Gn.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)},Gn.prototype.updateGraphics=function(e,t,n){var i=e.id||e,r=this._elements[i];return n?r.secondaryGfx=t:r.gfx=t,t&&xe(t,fo,i),t},Gn.prototype.get=function(e){var t;typeof e=="string"?t=e:t=e&&xe(e,fo);var n=this._elements[t];return n&&n.element},Gn.prototype.filter=function(e){var t=[];return this.forEach(function(n,i){e(n,i)&&t.push(n)}),t},Gn.prototype.find=function(e){for(var t=this._elements,n=Object.keys(t),i=0;i<n.length;i++){var r=n[i],o=t[r],a=o.element,s=o.gfx;if(e(a,s))return a}},Gn.prototype.getAll=function(){return this.filter(function(e){return e})},Gn.prototype.forEach=function(e){var t=this._elements;Object.keys(t).forEach(function(n){var i=t[n],r=i.element,o=i.gfx;return e(r,o)})},Gn.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},Gn.prototype._validateId=function(e){if(!e)throw new Error("element must have an id");if(this._elements[e])throw new Error("element with id "+e+" already added")};function FS(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 HS(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)}function xm(e,t,n){var i=FS(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 zS(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 Yn(e,t){if(!(this instanceof Yn))return new Yn(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Yn.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?xm(this,t,e):zS(this,t,e)},Yn.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return jS(n)||xm(this,t,e),n},Yn.prototype.ensureBound=function(e,t){HS(e,t)||this.bind(e,t)},Yn.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},Yn.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var Ol=new Yn({name:"children",enumerable:!0,collection:!0},{name:"parent"}),wm=new Yn({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),Em=new Yn({name:"attachers",collection:!0},{name:"host"}),Sm=new Yn({name:"outgoing",collection:!0},{name:"source"}),Rm=new Yn({name:"incoming",collection:!0},{name:"target"});function ho(){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)}}),Ol.bind(this,"parent"),wm.bind(this,"labels"),Sm.bind(this,"outgoing"),Rm.bind(this,"incoming")}function sa(){ho.call(this),Ol.bind(this,"children"),Em.bind(this,"host"),Em.bind(this,"attachers")}_e(sa,ho);function Cm(){ho.call(this),Ol.bind(this,"children")}_e(Cm,sa);function Pm(){sa.call(this),wm.bind(this,"labelTarget")}_e(Pm,sa);function Am(){ho.call(this),Sm.bind(this,"source"),Rm.bind(this,"target")}_e(Am,ho);var GS={connection:Am,shape:sa,label:Pm,root:Cm};function VS(e,t){var n=GS[e];if(!n)throw new Error("unknown type: <"+e+">");return V(new n,t)}function WS(e){return e instanceof ho}function Li(){this._uid=12}Li.prototype.createRoot=function(e){return this.create("root",e)},Li.prototype.createLabel=function(e){return this.create("label",e)},Li.prototype.createShape=function(e){return this.create("shape",e)},Li.prototype.createConnection=function(e){return this.create("connection",e)},Li.prototype.create=function(e,t){return t=V({},t||{}),t.id||(t.id=e+"_"+this._uid++),VS(e,t)};var Ns="__fn",Tm=1e3,US=Array.prototype.slice;function Mn(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}Mn.prototype.on=function(e,t,n,i){if(e=De(e)?e:[e],Ut(t)&&(i=n,n=t,t=Tm),!Be(t))throw new Error("priority must be a number");var r=n;i&&(r=xn(n,i),r[Ns]=n[Ns]||n);var o=this;e.forEach(function(a){o._addListener(a,{priority:t,callback:r,next:null})})},Mn.prototype.once=function(e,t,n,i){var r=this;if(Ut(t)&&(i=n,n=t,t=Tm),!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[Ns]=n,this.on(e,t,o)},Mn.prototype.off=function(e,t){e=De(e)?e:[e];var n=this;e.forEach(function(i){n._removeListener(i,t)})},Mn.prototype.createEvent=function(e){var t=new ca;return t.init(e),t},Mn.prototype.fire=function(e,t){var n,i,r,o;if(o=US.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 ca?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}},Mn.prototype.handleError=function(e){return this.fire("error",{error:e})===!1},Mn.prototype._destroy=function(){this._listeners={}},Mn.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},Mn.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return i;try{i=YS(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},Mn.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},Mn.prototype._getListeners=function(e){return this._listeners[e]},Mn.prototype._setListeners=function(e,t){this._listeners[e]=t},Mn.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[Ns]===t)&&(r?r.next=i:this._setListeners(e,i)),r=n,n=i};function ca(){}ca.prototype.stopPropagation=function(){this.cancelBubble=!0},ca.prototype.preventDefault=function(){this.defaultPrevented=!0},ca.prototype.init=function(e){V(this,e||{})};function YS(e,t){return e.apply(null,t)}function Lr(e){return e.childNodes[0]}function qS(e){return e.parentNode.childNodes[1]}function $s(e,t,n,i,r){var o=ea();o.setTranslate(t,n);var a=ea();a.setRotate(i||0,0,0);var s=ea();s.setScale(1,1),ta(e,[o,a,s])}function tn(e,t,n){var i=ea();i.setTranslate(t,n),ta(e,i)}function Mm(e,t){var n=ea();n.setRotate(t,0,0),ta(e,n)}function Vn(e,t){this._eventBus=e,this._elementRegistry=t}Vn.$inject=["eventBus","elementRegistry"],Vn.prototype._getChildrenContainer=function(e){var t=this._elementRegistry.getGraphics(e),n;return e.parent?(n=qS(t),n||(n=Pe("g"),Xe(n).add("djs-children"),Fe(t.parentNode,n))):n=t,n},Vn.prototype._clear=function(e){var t=Lr(e);return Cs(t),t},Vn.prototype._createContainer=function(e,t,n,i){var r=Pe("g");Xe(r).add("djs-group"),typeof n<"u"?KS(r,t,t.childNodes[n]):Fe(t,r);var o=Pe("g");Xe(o).add("djs-element"),Xe(o).add("djs-"+e),i&&Xe(o).add("djs-frame"),Fe(r,o);var a=Pe("g");return Xe(a).add("djs-visual"),Fe(o,a),o},Vn.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,nm(t))},Vn.prototype.updateContainments=function(e){var t=this,n=this._elementRegistry,i;i=Cn(e,function(r,o){return o.parent&&(r[o.parent.id]=o.parent),r},{}),N(i,function(r){var o=r.children;if(o){var a=t._getChildrenContainer(r),s=a.firstChild;N(o,function(c){var u=n.getGraphics(c).parentNode;u===s?s=s.nextSibling:a.insertBefore(u,s)})}})},Vn.prototype.drawShape=function(e,t,n={}){var i=this._eventBus;return i.fire("render.shape",{gfx:e,element:t,attrs:n})},Vn.prototype.getShapePath=function(e){var t=this._eventBus;return t.fire("render.getShapePath",e)},Vn.prototype.drawConnection=function(e,t,n={}){var i=this._eventBus;return i.fire("render.connection",{gfx:e,element:t,attrs:n})},Vn.prototype.getConnectionPath=function(e){var t=this._eventBus;return t.fire("render.getConnectionPath",e)},Vn.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if(e==="shape")this.drawShape(i,t),tn(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")}},Vn.prototype.remove=function(e){var t=this._elementRegistry.getGraphics(e);Ht(t.parentNode)};function KS(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}const XS={__depends__:[uS],__init__:["canvas"],canvas:["type",Ie],elementRegistry:["type",Gn],elementFactory:["type",Li],eventBus:["type",Mn],graphicsFactory:["type",Vn]};function ZS(e){var t=new em(e);return t.init(),t}function QS(e){e=e||{};var t={config:["value",e]},n=[t,XS].concat(e.modules||[]);return ZS(n)}function ir(e,t){this._injector=t||QS(e),this.get("eventBus").fire("diagram.init")}ir.prototype.get=function(e,t){return this._injector.get(e,t)},ir.prototype.invoke=function(e,t,n){return this._injector.invoke(e,t,n)},ir.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},ir.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")};function pn(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}function wn(e,t){return e.$instanceOf(t)}function JS(e){return pt(e.rootElements,function(t){return wn(t,"bpmn:Process")||wn(t,"bpmn:Collaboration")})}function eR(e){var t={},n=[],i={};function r(W,Y){return function(J){W(J,Y)}}function o(W){t[W.id]=W}function a(W){return t[W.id]}function s(W,Y){var J=W.gfx;if(J)throw new Error(`already rendered ${pn(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 J=i[W.id]&&s(W,Y);return o(W),J}catch(Te){l(Te.message,{element:W,error:Te}),console.error(`failed to import ${pn(W)}`,Te)}}function l(W,Y){e.error(W,Y)}var f=this.registerDi=function(Y){var J=Y.bpmnElement;J?i[J.id]?l(`multiple DI elements defined for ${pn(J)}`,{element:J}):i[J.id]=Y:l(`no bpmnElement referenced in ${pn(Y)}`,{element:Y})};function p(W){d(W.plane)}function d(W){f(W),N(W.planeElement,h)}function h(W){f(W)}this.handleDefinitions=function(Y,J){var Te=Y.diagrams;if(J&&Te.indexOf(J)===-1)throw new Error("diagram not part of <bpmn:Definitions />");if(!J&&Te&&Te.length&&(J=Te[0]),!J)throw new Error("no diagram to display");i={},p(J);var ft=J.plane;if(!ft)throw new Error(`no plane for ${pn(J)}`);var M=ft.bpmnElement;if(!M)if(M=JS(Y),M)l(`correcting missing bpmnElement on ${pn(ft)} to ${pn(M)}`),ft.bpmnElement=M,f(ft);else throw new Error("no process or collaboration to display");var S=c(M,ft);if(wn(M,"bpmn:Process")||wn(M,"bpmn:SubProcess"))g(M,S);else if(wn(M,"bpmn:Collaboration"))le(M,S),y(Y.rootElements,S);else throw new Error(`unsupported bpmnElement for ${pn(ft)}: ${pn(M)}`);m(n)};var m=this.handleDeferred=function(){for(var Y;n.length;)Y=n.shift(),Y()};function g(W,Y){q(W,Y),I(W.ioSpecification,Y),T(W.artifacts,Y),o(W)}function y(W,Y){var J=We(W,function(Te){return!a(Te)&&wn(Te,"bpmn:Process")&&Te.laneSets});J.forEach(r(g,Y))}function v(W,Y){u(W,Y)}function b(W,Y){N(W,r(v,Y))}function _(W,Y){u(W,Y)}function C(W,Y){u(W,Y)}function P(W,Y){u(W,Y)}function D(W,Y){u(W,Y)}function T(W,Y){N(W,function(J){wn(J,"bpmn:Association")?n.push(function(){D(J,Y)}):D(J,Y)})}function I(W,Y){W&&(N(W.dataInputs,r(C,Y)),N(W.dataOutputs,r(P,Y)))}var k=this.handleSubProcess=function(Y,J){q(Y,J),T(Y.artifacts,J)};function O(W,Y){var J=u(W,Y);wn(W,"bpmn:SubProcess")&&k(W,J||Y),wn(W,"bpmn:Activity")&&I(W.ioSpecification,Y),n.push(function(){N(W.dataInputAssociations,r(_,Y)),N(W.dataOutputAssociations,r(_,Y))})}function H(W,Y){u(W,Y)}function se(W,Y){u(W,Y)}function Ee(W,Y){n.push(function(){var J=u(W,Y);W.childLaneSet&&qe(W.childLaneSet,J||Y),Me(W)})}function qe(W,Y){N(W.lanes,r(Ee,Y))}function ze(W,Y){N(W,r(qe,Y))}function q(W,Y){ue(W.flowElements,Y),W.laneSets&&ze(W.laneSets,Y)}function ue(W,Y){N(W,function(J){wn(J,"bpmn:SequenceFlow")?n.push(function(){H(J,Y)}):wn(J,"bpmn:BoundaryEvent")?n.unshift(function(){O(J,Y)}):wn(J,"bpmn:FlowNode")?O(J,Y):wn(J,"bpmn:DataObject")||(wn(J,"bpmn:DataStoreReference")||wn(J,"bpmn:DataObjectReference")?se(J,Y):l(`unrecognized flowElement ${pn(J)} in context ${pn(Y&&Y.businessObject)}`,{element:J,context:Y}))})}function oe(W,Y){var J=u(W,Y),Te=W.processRef;Te&&g(Te,J||Y)}function le(W,Y){N(W.participants,r(oe,Y)),n.push(function(){b(W.messageFlows,Y)}),T(W.artifacts,Y)}function Me(W){N(W.flowNodeRef,function(Y){var J=Y.get("lanes");J&&J.push(W)})}}function E(e,t){var n=ie(e);return n&&typeof n.$instanceOf=="function"&&n.$instanceOf(t)}function Ve(e,t){return Yi(t,function(n){return E(e,n)})}function ie(e){return e&&e.businessObject||e}function Ze(e){return e&&e.di}function tR(e,t,n){var i,r,o,a,s=[];function c(u,l){var f={root:function(m,g){return i.add(m,g)},element:function(m,g,y){return i.add(m,g,y)},error:function(m,g){s.push({message:m,context:g})}},p=new eR(f);l=l||u.diagrams&&u.diagrams[0];var d=nR(u,l);if(!d)throw new Error("no diagram to display");N(d,function(m){p.handleDefinitions(u,m)});var h=l.plane.bpmnElement.id;o.setRootElement(o.findRoot(h+"_plane")||o.findRoot(h))}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(f){return f.warnings=s,l(f)}})}function nR(e,t){if(!(!t||!t.plane)){var n=t.plane.bpmnElement,i=n;!E(n,"bpmn:Process")&&!E(n,"bpmn:Collaboration")&&(i=iR(n));var r;E(i,"bpmn:Collaboration")?r=i:r=pt(e.rootElements,function(u){if(E(u,"bpmn:Collaboration"))return pt(u.participants,function(l){return l.processRef===i})});var o=[i];r&&(o=cn(r.participants,function(u){return u.processRef}),o.push(r));var a=km(o),s=[t],c=[n];return N(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 km(e){var t=[];return N(e,function(n){n&&(t.push(n),t=t.concat(km(n.flowElements)))}),t}function iR(e){for(var t=e;t;){if(E(t,"bpmn:Process"))return t;t=t.$parent}}var rR='<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>',Om=rR,Dm={verticalAlign:"middle"},Lm={color:"#404040"},oR={zIndex:"1001",position:"fixed",top:"0",left:"0",right:"0",bottom:"0"},aR={width:"100%",height:"100%",background:"rgba(40,40,40,0.2)"},sR={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"},cR='<div class="bjs-powered-by-lightbox"><div class="backdrop"></div><div class="notice"><a href="https://bpmn.io" target="_blank" rel="noopener" class="link">'+Om+'</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>',vi;function uR(){vi=mt(cR),vn(vi,oR),vn(rt("svg",vi),Dm),vn(rt(".backdrop",vi),aR),vn(rt(".notice",vi),sR),vn(rt(".link",vi),Lm,{margin:"15px 20px 15px 10px",alignSelf:"center"})}function lR(){vi||(uR(),Tn.bind(vi,".backdrop","click",function(e){document.body.removeChild(vi)})),document.body.appendChild(vi)}const Fs=5,Im="djs-outline-hidden";function _t(e){e=V({},fR,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),this._init(this._container,this._moddle,e),hR(this._container)}_e(_t,ir),_t.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(p){throw this._emit("import.parse.complete",{error:p}),p}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 f=await this.importDefinitions(s,n);return o=o.concat(f.warnings),this._emit("import.done",{error:null,warnings:o}),{warnings:o}}catch(a){let s=a;throw o=o.concat(s.warnings||[]),js(s,o),s=pR(s),this._emit("import.done",{error:s,warnings:s.warnings}),s}},_t.prototype.importDefinitions=async function(t,n){return this._setDefinitions(t),{warnings:(await this.open(n)).warnings}},_t.prototype.open=async function(t){const n=this._definitions;let i=t;if(!n){const o=new Error("no XML imported");throw js(o,[]),o}if(typeof t=="string"&&(i=dR(n,t),!i)){const o=new Error("BPMNDiagram <"+t+"> not found");throw js(o,[]),o}try{this.clear()}catch(o){throw js(o,[]),o}const{warnings:r}=await tR(this,n,i);return{warnings:r}},_t.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},_t.prototype.saveSVG=async function(){this._emit("saveSVG.start");let t,n;try{const i=this.get("canvas"),r=i.getActiveLayer(),o=rt(":scope > defs",i._svg),a=Jh(r),s=o?"<defs>"+Jh(o)+"</defs>":"",c=i.getContainer();bt(c).add(Im);let u;try{u=r.getBBox()}finally{bt(c).remove(Im)}const l=u.x-Fs,f=u.y-Fs,p=u.width+Fs*2,d=u.height+Fs*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="`+p+'" height="'+d+'" viewBox="'+l+" "+f+" "+p+" "+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}},_t.prototype._setDefinitions=function(e){this._definitions=e},_t.prototype.getModules=function(){return this._modules},_t.prototype.clear=function(){this.getDefinitions()&&ir.prototype.clear.call(this)},_t.prototype.destroy=function(){ir.prototype.destroy.call(this),mi(this._container)},_t.prototype.on=function(e,t,n,i){return this.get("eventBus").on(e,t,n,i)},_t.prototype.off=function(e,t){this.get("eventBus").off(e,t)},_t.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=rt(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},_t.prototype.getDefinitions=function(){return this._definitions},_t.prototype.detach=function(){const e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))},_t.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(pi(n,["additionalModules"]),{canvas:V({},n.canvas,{container:e}),modules:a});ir.call(this,s),n&&n.container&&this.attachTo(n.container)},_t.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)},_t.prototype._createContainer=function(e){const t=mt('<div class="bjs-container"></div>');return vn(t,{width:Lm(e.width),height:Lm(e.height),position:e.position}),t},_t.prototype._createModdle=function(e){const t=V({},this._moddleExtensions,e.moddleExtensions);return new Ld(t)},_t.prototype._modules=[];function Ns(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 cR={width:"100%",height:"100%",position:"relative"};function Lm(e){return e+(Be(e)?"px":"")}function uR(e,t){return t&&lt(e.diagrams,function(n){return n.id===t})||null}function lR(e){const n='<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" >'+Mm+"</a>",i=mt(n);vn(rt("svg",i),km),vn(i,Om,{position:"absolute",bottom:"15px",right:"15px",zIndex:"100"}),e.appendChild(i),$e.bind(i,"click",function(r){aR(),r.preventDefault()})}function mo(e){_t.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)}_e(mo,_t),mo.prototype._createModdle=function(e){var t=_t.prototype._createModdle.call(this,e);return t.ids=new hi([32,36,1]),t},mo.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 Ke(e,t){return w(e,"bpmn:CallActivity")?!1:w(e,"bpmn:SubProcess")?(t=t||Ze(e),t&&w(t,"bpmndi:BPMNPlane")?!0:t&&!!t.isExpanded):w(e,"bpmn:Participant")?!!ie(e).processRef:!0}function Yt(e){if(!(!w(e,"bpmn:Participant")&&!w(e,"bpmn:Lane"))){var t=Ze(e).isHorizontal;return t===void 0?!0:t}}function pR(e){return e&&ie(e).isInterrupting!==!1}function fn(e){return e&&!!ie(e).triggeredByEvent}function go(e,t){var n=ie(e).eventDefinitions;return qi(n,function(i){return w(i,t)})}function fR(e){return go(e,"bpmn:ErrorEventDefinition")}function dR(e){return go(e,"bpmn:EscalationEventDefinition")}function hR(e){return go(e,"bpmn:CompensateEventDefinition")}var Ir={width:90,height:20},Im=15;function rr(e){return w(e,"bpmn:Event")||w(e,"bpmn:Gateway")||w(e,"bpmn:DataStoreReference")||w(e,"bpmn:DataObjectReference")||w(e,"bpmn:DataInput")||w(e,"bpmn:DataOutput")||w(e,"bpmn:SequenceFlow")||w(e,"bpmn:MessageFlow")||w(e,"bpmn:Group")}function $s(e){return Ge(e.label)}function mR(e){var t=e.length/2-1,n=e[Math.floor(t)],i=e[Math.ceil(t+.01)],r=gR(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-=Im:a+=Im,{x:a,y:s}}function gR(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 Ml(e){return e.waypoints?mR(e.waypoints):w(e,"bpmn:Group")?{x:e.x+e.width/2,y:e.y+Ir.height/2}:{x:e.x+e.width/2,y:e.y+e.height+Ir.height/2}}function yR(e,t){var n,i,r,o=e.label;return o&&o.bounds?(r=o.bounds,i={width:Math.max(Ir.width,r.width),height:r.height},n={x:r.x+r.width/2,y:r.y+r.height/2}):(n=Ml(t),i=Ir),V({x:n.x-i.width/2,y:n.y-i.height/2},i)}function Bm(e){if(w(e,"bpmn:FlowElement")||w(e,"bpmn:Participant")||w(e,"bpmn:Lane")||w(e,"bpmn:SequenceFlow")||w(e,"bpmn:MessageFlow")||w(e,"bpmn:DataInput")||w(e,"bpmn:DataOutput"))return"name";if(w(e,"bpmn:TextAnnotation"))return"text";if(w(e,"bpmn:Group"))return"categoryValueRef"}function vR(e){var t=e.categoryValueRef;return t&&t.value||""}function zn(e){var t=e.businessObject,n=Bm(t);if(n)return n==="categoryValueRef"?vR(t):t[n]||""}function bR(e,t){var n=e.businessObject,i=Bm(n);if(i)if(i==="categoryValueRef"){if(!n[i])return e;n[i].value=t}else n[i]=t;return e}function _R(e){return Ge(e)&&rr(e.labelTarget)}var yo=7;function Nm(e){let t=[];return B(e.incoming,n=>{w(n,"bpmn:Association")&&w(n.source,"bpmn:TextAnnotation")&&t.push({annotation:n.source,association:n})}),B(e.outgoing,n=>{w(n,"bpmn:Association")&&w(n.target,"bpmn:TextAnnotation")&&t.push({annotation:n.target,association:n})}),t}function ca(e){const t=new Map;return B(El(e),n=>{B(Nm(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 kl="hsl(225, 10%, 15%)",xR="white";function bi(e,t){return qi(e.eventDefinitions,function(n){return n.$type===t})}function wR(e){return e.$type==="bpmn:IntermediateThrowEvent"||e.$type==="bpmn:EndEvent"}function ER(e){var t=e.dataObjectRef;return e.isCollection||t&&t.isCollection}function qe(e,t,n){var i=Ze(e);return n||i.get("color:background-color")||i.get("bioc:fill")||t||xR}function ge(e,t,n){var i=Ze(e);return n||i.get("color:border-color")||i.get("bioc:stroke")||t||kl}function ua(e,t,n,i){var r=Ze(e),o=r.get("label");return i||o&&o.get("color:color")||t||ge(e,n)}function $m(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 Or(r)}function Ol(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 Or(a)}function SR(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 Or(s)}function RR(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 Or(o)}function la(e,t={}){return{width:qn(e,t),height:Mn(e,t)}}function qn(e,t={}){return Rn(t,"width")?t.width:e.width}function Mn(e,t={}){return Rn(t,"height")?t.height:e.height}var CR=new hi,PR=10,Fs=3,AR=1.5,js=10,TR=4,vo=.95,MR=1,kR=.25;function Br(e,t,n,i,r,o,a){ki.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:kl,strokeWidth:2,fill:"white"})}function f(M){return n.computeStyle(M,["no-fill"],{strokeLinecap:"round",strokeLinejoin:"round",stroke:kl,strokeWidth:2})}function p(M,E){var{ref:b={x:0,y:0},scale:H=1,element:U,parentGfx:Q=r._svg}=E,we=Pe("marker",{id:M,viewBox:"0 0 20 20",refX:b.x,refY:b.y,markerWidth:20*H,markerHeight:20*H,orient:"auto"});Fe(we,U);var He=rt(":scope > defs",Q);He||(He=Pe("defs"),Fe(Q,He)),Fe(He,we)}function d(M,E,b,H){var U=CR.nextPrefixed("marker-");return g(M,U,E,b,H),"url(#"+U+")"}function g(M,E,b,H,U){if(b==="sequenceflow-end"){var Q=Pe("path",{d:"M 1 5 L 11 10 L 1 15 Z",...l({fill:U,stroke:U,strokeWidth:1})});p(E,{element:Q,ref:{x:11,y:10},scale:.5,parentGfx:M})}if(b==="messageflow-start"){var we=Pe("circle",{cx:6,cy:6,r:3.5,...l({fill:H,stroke:U,strokeWidth:1,strokeDasharray:[1e4,1]})});p(E,{element:we,ref:{x:6,y:6},parentGfx:M})}if(b==="messageflow-end"){var He=Pe("path",{d:"m 1 5 l 0 -3 l 7 3 l -7 3 z",...l({fill:H,stroke:U,strokeWidth:1,strokeDasharray:[1e4,1]})});p(E,{element:He,ref:{x:8.5,y:5},parentGfx:M})}if(b==="association-start"){var et=Pe("path",{d:"M 11 5 L 1 10 L 11 15",...f({fill:"none",stroke:U,strokeWidth:1.5,strokeDasharray:[1e4,1]})});p(E,{element:et,ref:{x:1,y:10},scale:.5,parentGfx:M})}if(b==="association-end"){var Pt=Pe("path",{d:"M 1 5 L 11 10 L 1 15",...f({fill:"none",stroke:U,strokeWidth:1.5,strokeDasharray:[1e4,1]})});p(E,{element:Pt,ref:{x:11,y:10},scale:.5,parentGfx:M})}if(b==="conditional-flow-marker"){var nt=Pe("path",{d:"M 0 10 L 8 6 L 16 10 L 8 14 Z",...l({fill:H,stroke:U})});p(E,{element:nt,ref:{x:-1,y:10},scale:.5,parentGfx:M})}if(b==="conditional-default-flow-marker"){var St=Pe("path",{d:"M 6 4 L 10 16",...l({stroke:U,fill:"none"})});p(E,{element:St,ref:{x:0,y:10},scale:.5,parentGfx:M})}}function h(M,E,b,H,U={}){Wt(H)&&(U=H,H=0),H=H||0,U=l(U);var Q=E/2,we=b/2,He=Pe("circle",{cx:Q,cy:we,r:Math.round((E+b)/4-H),...U});return Fe(M,He),He}function m(M,E,b,H,U,Q){Wt(U)&&(Q=U,U=0),U=U||0,Q=l(Q);var we=Pe("rect",{x:U,y:U,width:E-U*2,height:b-U*2,rx:H,ry:H,...Q});return Fe(M,we),we}function x(M,E,b,H){var U=E/2,Q=b/2,we=[{x:U,y:0},{x:E,y:Q},{x:U,y:b},{x:0,y:Q}],He=we.map(function(Pt){return Pt.x+","+Pt.y}).join(" ");H=l(H);var et=Pe("polygon",{...H,points:He});return Fe(M,et),et}function y(M,E,b,H){b=f(b);var U=ta(E,b,H);return Fe(M,U),U}function _(M,E,b){return y(M,E,b,5)}function S(M,E,b){b=f(b);var H=Pe("path",{...b,d:E});return Fe(M,H),H}function P(M,E,b,H){return S(E,b,V({"data-marker":M},H))}function C(M){return ft[M]}function L(M){return function(E,b,H){return C(M)(E,b,H)}}var T={"bpmn:MessageEventDefinition":function(M,E,b={},H){var U=i.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:b.width||E.width,containerHeight:b.height||E.height,position:{mx:.235,my:.315}}),Q=H?ge(E,c,b.stroke):qe(E,s,b.fill),we=H?qe(E,s,b.fill):ge(E,c,b.stroke),He=S(M,U,{fill:Q,stroke:we,strokeWidth:1});return He},"bpmn:TimerEventDefinition":function(M,E,b={}){var H=b.width||E.width,U=b.height||E.height,Q=b.width?1:2,we=h(M,H,U,.2*U,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke),strokeWidth:Q}),He=i.getScaledPath("EVENT_TIMER_WH",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:H,containerHeight:U,position:{mx:.5,my:.5}});S(M,He,{stroke:ge(E,c,b.stroke),strokeWidth:Q});for(var et=0;et<12;et++){var Pt=i.getScaledPath("EVENT_TIMER_LINE",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:H,containerHeight:U,position:{mx:.5,my:.5}}),nt=H/2,St=U/2;S(M,Pt,{strokeWidth:1,stroke:ge(E,c,b.stroke),transform:"rotate("+et*30+","+St+","+nt+")"})}return we},"bpmn:EscalationEventDefinition":function(M,E,b={},H){var U=i.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:b.width||E.width,containerHeight:b.height||E.height,position:{mx:.5,my:.2}}),Q=H?ge(E,c,b.stroke):qe(E,s,b.fill);return S(M,U,{fill:Q,stroke:ge(E,c,b.stroke),strokeWidth:1})},"bpmn:ConditionalEventDefinition":function(M,E,b={}){var H=i.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:b.width||E.width,containerHeight:b.height||E.height,position:{mx:.5,my:.222}});return S(M,H,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke),strokeWidth:1})},"bpmn:LinkEventDefinition":function(M,E,b={},H){var U=i.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:.57,my:.263}}),Q=H?ge(E,c,b.stroke):qe(E,s,b.fill);return S(M,U,{fill:Q,stroke:ge(E,c,b.stroke),strokeWidth:1})},"bpmn:ErrorEventDefinition":function(M,E,b={},H){var U=i.getScaledPath("EVENT_ERROR",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:b.width||E.width,containerHeight:b.height||E.height,position:{mx:.2,my:.722}}),Q=H?ge(E,c,b.stroke):qe(E,s,b.fill);return S(M,U,{fill:Q,stroke:ge(E,c,b.stroke),strokeWidth:1})},"bpmn:CancelEventDefinition":function(M,E,b={},H){var U=i.getScaledPath("EVENT_CANCEL_45",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:.638,my:-.055}}),Q=H?ge(E,c,b.stroke):"none",we=S(M,U,{fill:Q,stroke:ge(E,c,b.stroke),strokeWidth:1});return Am(we,45),we},"bpmn:CompensateEventDefinition":function(M,E,b={},H){var U=i.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:b.width||E.width,containerHeight:b.height||E.height,position:{mx:.22,my:.5}}),Q=H?ge(E,c,b.stroke):qe(E,s,b.fill);return S(M,U,{fill:Q,stroke:ge(E,c,b.stroke),strokeWidth:1})},"bpmn:SignalEventDefinition":function(M,E,b={},H){var U=i.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:b.width||E.width,containerHeight:b.height||E.height,position:{mx:.5,my:.2}}),Q=H?ge(E,c,b.stroke):qe(E,s,b.fill);return S(M,U,{strokeWidth:1,fill:Q,stroke:ge(E,c,b.stroke)})},"bpmn:MultipleEventDefinition":function(M,E,b={},H){var U=i.getScaledPath("EVENT_MULTIPLE",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:b.width||E.width,containerHeight:b.height||E.height,position:{mx:.211,my:.36}}),Q=H?ge(E,c,b.stroke):qe(E,s,b.fill);return S(M,U,{fill:Q,stroke:ge(E,c,b.stroke),strokeWidth:1})},"bpmn:ParallelMultipleEventDefinition":function(M,E,b={}){var H=i.getScaledPath("EVENT_PARALLEL_MULTIPLE",{xScaleFactor:1.2,yScaleFactor:1.2,containerWidth:b.width||E.width,containerHeight:b.height||E.height,position:{mx:.458,my:.194}});return S(M,H,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke),strokeWidth:1})},"bpmn:TerminateEventDefinition":function(M,E,b={}){var H=h(M,E.width,E.height,8,{fill:ge(E,c,b.stroke),stroke:ge(E,c,b.stroke),strokeWidth:4});return H}};function j(M,E,b={},H){var U=ie(M),Q=wR(U),we=H||M;return U.get("eventDefinitions")&&U.get("eventDefinitions").length>1?U.get("parallelMultiple")?T["bpmn:ParallelMultipleEventDefinition"](E,we,b,Q):T["bpmn:MultipleEventDefinition"](E,we,b,Q):bi(U,"bpmn:MessageEventDefinition")?T["bpmn:MessageEventDefinition"](E,we,b,Q):bi(U,"bpmn:TimerEventDefinition")?T["bpmn:TimerEventDefinition"](E,we,b,Q):bi(U,"bpmn:ConditionalEventDefinition")?T["bpmn:ConditionalEventDefinition"](E,we,b,Q):bi(U,"bpmn:SignalEventDefinition")?T["bpmn:SignalEventDefinition"](E,we,b,Q):bi(U,"bpmn:EscalationEventDefinition")?T["bpmn:EscalationEventDefinition"](E,we,b,Q):bi(U,"bpmn:LinkEventDefinition")?T["bpmn:LinkEventDefinition"](E,we,b,Q):bi(U,"bpmn:ErrorEventDefinition")?T["bpmn:ErrorEventDefinition"](E,we,b,Q):bi(U,"bpmn:CancelEventDefinition")?T["bpmn:CancelEventDefinition"](E,we,b,Q):bi(U,"bpmn:CompensateEventDefinition")?T["bpmn:CompensateEventDefinition"](E,we,b,Q):bi(U,"bpmn:TerminateEventDefinition")?T["bpmn:TerminateEventDefinition"](E,we,b,Q):null}var k={ParticipantMultiplicityMarker:function(M,E,b={}){var H=qn(E,b),U=Mn(E,b),Q=i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:H,containerHeight:U,position:{mx:(H/2-6)/H,my:(U-15)/U}});P("participant-multiplicity",M,Q,{strokeWidth:2,fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke)})},SubProcessMarker:function(M,E,b={}){var H=m(M,14,14,0,{strokeWidth:1,fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke)});en(H,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}});P("sub-process",M,U,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke)})},ParallelMarker:function(M,E,b){var H=qn(E,b),U=Mn(E,b),Q=i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:H,containerHeight:U,position:{mx:(H/2+b.parallel)/H,my:(U-20)/U}});P("parallel",M,Q,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke)})},SequentialMarker:function(M,E,b){var H=i.getScaledPath("MARKER_SEQUENTIAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:(E.width/2+b.seq)/E.width,my:(E.height-19)/E.height}});P("sequential",M,H,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke)})},CompensationMarker:function(M,E,b){var H=i.getScaledPath("MARKER_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:(E.width/2+b.compensation)/E.width,my:(E.height-13)/E.height}});P("compensation",M,H,{strokeWidth:1,fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke)})},LoopMarker:function(M,E,b){var H=qn(E,b),U=Mn(E,b),Q=i.getScaledPath("MARKER_LOOP",{xScaleFactor:1,yScaleFactor:1,containerWidth:H,containerHeight:U,position:{mx:(H/2+b.loop)/H,my:(U-7)/U}});P("loop",M,Q,{strokeWidth:1.5,fill:"none",stroke:ge(E,c,b.stroke),strokeMiterlimit:.5})},AdhocMarker:function(M,E,b){var H=qn(E,b),U=Mn(E,b),Q=i.getScaledPath("MARKER_ADHOC",{xScaleFactor:1,yScaleFactor:1,containerWidth:H,containerHeight:U,position:{mx:(H/2+b.adhoc)/H,my:(U-15)/U}});P("adhoc",M,Q,{strokeWidth:1,fill:ge(E,c,b.stroke),stroke:ge(E,c,b.stroke)})}};function D(M,E,b,H){k[M](E,b,H)}function z(M,E,b=[],H={}){H={fill:H.fill,stroke:H.stroke,width:qn(E,H),height:Mn(E,H)};var U=ie(E),Q=b.includes("SubProcessMarker");Q?H={...H,seq:-21,parallel:-22,compensation:-25,loop:-18,adhoc:10}:H={...H,seq:-5,parallel:-6,compensation:-7,loop:0,adhoc:-8},U.get("isForCompensation")&&b.push("CompensationMarker"),w(U,"bpmn:AdHocSubProcess")&&(b.push("AdhocMarker"),Q||V(H,{compensation:H.compensation-18}));var we=U.get("loopCharacteristics"),He=we&&we.get("isSequential");we&&(V(H,{compensation:H.compensation-18}),b.includes("AdhocMarker")&&V(H,{seq:-23,loop:-18,parallel:-24}),He===void 0&&b.push("LoopMarker"),He===!1&&b.push("ParallelMarker"),He===!0&&b.push("SequentialMarker")),b.includes("CompensationMarker")&&b.length===1&&V(H,{compensation:-8}),B(b,function(et){D(et,M,E,H)})}function ce(M,E,b={}){b=V({size:{width:100}},b);var H=o.createText(E||"",b);return Xe(H).add("djs-label"),Fe(M,H),H}function Ee(M,E,b,H={}){var U=ie(E),Q=la({x:E.x,y:E.y,width:E.width,height:E.height},H);return ce(M,U.name,{align:b,box:Q,padding:7,style:{fill:ua(E,u,c,H.stroke)}})}function Ye(M,E,b={}){var H={width:E.width,height:E.height,x:E.width/2+E.x,y:E.height/2+E.y};return ce(M,zn(E),{box:H,style:V({},o.getExternalStyle(),{fill:ua(E,u,c,b.stroke)})})}function ze(M,E,b,H={}){var U=Yt(b),Q=ce(M,E,{box:{height:30,width:U?Mn(b,H):qn(b,H)},align:"center-middle",style:{fill:ua(b,u,c,H.stroke)}});if(U){var we=-1*Mn(b,H);Is(Q,0,-we,270)}}function Y(M,E,b={}){var{width:H,height:U}=la(E,b);return m(M,H,U,js,{...b,fill:qe(E,s,b.fill),fillOpacity:vo,stroke:ge(E,c,b.stroke)})}function ue(M,E,b={}){var H=ie(E),U=qe(E,s,b.fill),Q=ge(E,c,b.stroke);return(H.get("associationDirection")==="One"||H.get("associationDirection")==="Both")&&(b.markerEnd=d(M,"association-end",U,Q)),H.get("associationDirection")==="Both"&&(b.markerStart=d(M,"association-start",U,Q)),b=Qe(b,["markerStart","markerEnd"]),_(M,E.waypoints,{...b,stroke:Q,strokeDasharray:"0, 5"})}function oe(M,E,b={}){var H=qe(E,s,b.fill),U=ge(E,c,b.stroke),Q=i.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:.474,my:.296}}),we=S(M,Q,{fill:H,fillOpacity:vo,stroke:U}),He=ie(E);if(ER(He)){var et=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}});S(M,et,{strokeWidth:2,fill:H,stroke:U})}return we}function le(M,E,b={}){return h(M,E.width,E.height,{fillOpacity:vo,...b,fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke)})}function Me(M,E,b={}){return x(M,E.width,E.height,{fill:qe(E,s,b.fill),fillOpacity:vo,stroke:ge(E,c,b.stroke)})}function W(M,E,b={}){var H=m(M,qn(E,b),Mn(E,b),0,{fill:qe(E,s,b.fill),fillOpacity:b.fillOpacity||vo,stroke:ge(E,c,b.stroke),strokeWidth:1.5}),U=ie(E);if(w(U,"bpmn:Lane")){var Q=U.get("name");ze(M,Q,E,b)}return H}function q(M,E,b={}){var H=Y(M,E,b),U=Ke(E);if(fn(E)&&(xe(H,{strokeDasharray:"0, 5.5",strokeWidth:2.5}),!U)){var Q=ie(E).flowElements||[],we=Q.filter(He=>w(He,"bpmn:StartEvent"));we.length===1&&J(we[0],M,b,E)}return Ee(M,E,U?"center-top":"center-middle",b),U?z(M,E,void 0,b):z(M,E,["SubProcessMarker"],b),H}function J(M,E,b,H){var U=22,Q={fill:qe(H,s,b.fill),stroke:ge(H,c,b.stroke),width:U,height:U},we=ie(M).isInterrupting,He=we?0:3,et=we?1:1.2,Pt=20,nt=(U-Pt)/2,St="translate("+nt+","+nt+")";h(E,Pt,Pt,{fill:Q.fill,stroke:Q.stroke,strokeWidth:et,strokeDasharray:He,transform:St}),j(M,E,Q,H)}function Te(M,E,b={}){var H=Y(M,E,b);return Ee(M,E,"center-middle",b),z(M,E,void 0,b),H}var ft=this.handlers={"bpmn:AdHocSubProcess":function(M,E,b={}){return Ke(E)?b=Qe(b,["fill","stroke","width","height"]):b=Qe(b,["fill","stroke"]),q(M,E,b)},"bpmn:Association":function(M,E,b={}){return b=Qe(b,["fill","stroke"]),ue(M,E,b)},"bpmn:BoundaryEvent":function(M,E,b={}){var{renderIcon:H=!0}=b;b=Qe(b,["fill","stroke"]);var U=ie(E),Q=U.get("cancelActivity");b={strokeWidth:1.5,fill:qe(E,s,b.fill),fillOpacity:MR,stroke:ge(E,c,b.stroke)},Q||(b.strokeDasharray="6");var we=le(M,E,b);return h(M,E.width,E.height,Fs,{...b,fill:"none"}),H&&j(E,M,b),we},"bpmn:BusinessRuleTask":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=Te(M,E,b),U=i.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}}),Q=S(M,U);xe(Q,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke),strokeWidth:1});var we=i.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}}),He=S(M,we);return xe(He,{fill:ge(E,c,b.stroke),stroke:ge(E,c,b.stroke),strokeWidth:1}),H},"bpmn:CallActivity":function(M,E,b={}){return b=Qe(b,["fill","stroke"]),q(M,E,{strokeWidth:5,...b})},"bpmn:ComplexGateway":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=Me(M,E,b),U=i.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:E.width,containerHeight:E.height,position:{mx:.46,my:.26}});return S(M,U,{fill:ge(E,c,b.stroke),stroke:ge(E,c,b.stroke),strokeWidth:1}),H},"bpmn:DataInput":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=i.getRawPath("DATA_ARROW"),U=oe(M,E,b);return S(M,H,{fill:"none",stroke:ge(E,c,b.stroke),strokeWidth:1}),U},"bpmn:DataInputAssociation":function(M,E,b={}){return b=Qe(b,["fill","stroke"]),ue(M,E,{...b,markerEnd:d(M,"association-end",qe(E,s,b.fill),ge(E,c,b.stroke))})},"bpmn:DataObject":function(M,E,b={}){return b=Qe(b,["fill","stroke"]),oe(M,E,b)},"bpmn:DataObjectReference":L("bpmn:DataObject"),"bpmn:DataOutput":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=i.getRawPath("DATA_ARROW"),U=oe(M,E,b);return S(M,H,{strokeWidth:1,fill:ge(E,c,b.stroke),stroke:ge(E,c,b.stroke)}),U},"bpmn:DataOutputAssociation":function(M,E,b={}){return b=Qe(b,["fill","stroke"]),ue(M,E,{...b,markerEnd:d(M,"association-end",qe(E,s,b.fill),ge(E,c,b.stroke))})},"bpmn:DataStoreReference":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=i.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:E.width,containerHeight:E.height,position:{mx:0,my:.133}});return S(M,H,{fill:qe(E,s,b.fill),fillOpacity:vo,stroke:ge(E,c,b.stroke),strokeWidth:2})},"bpmn:EndEvent":function(M,E,b={}){var{renderIcon:H=!0}=b;b=Qe(b,["fill","stroke"]);var U=le(M,E,{...b,strokeWidth:4});return H&&j(E,M,b),U},"bpmn:EventBasedGateway":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=ie(E),U=Me(M,E,b);h(M,E.width,E.height,E.height*.2,{fill:qe(E,"none",b.fill),stroke:ge(E,c,b.stroke),strokeWidth:1});var Q=H.get("eventGatewayType"),we=!!H.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}});S(M,Pt,{fill:"none",stroke:ge(E,c,b.stroke),strokeWidth:2})}if(Q==="Parallel"){var et=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:E.width,containerHeight:E.height,position:{mx:.474,my:.296}});S(M,et,{fill:"none",stroke:ge(E,c,b.stroke),strokeWidth:1})}else Q==="Exclusive"&&(we||h(M,E.width,E.height,E.height*.26,{fill:"none",stroke:ge(E,c,b.stroke),strokeWidth:1}),He());return U},"bpmn:ExclusiveGateway":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=Me(M,E,b),U=i.getScaledPath("GATEWAY_EXCLUSIVE",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:E.width,containerHeight:E.height,position:{mx:.32,my:.3}}),Q=Ze(E);return Q.get("isMarkerVisible")&&S(M,U,{fill:ge(E,c,b.stroke),stroke:ge(E,c,b.stroke),strokeWidth:1}),H},"bpmn:Gateway":function(M,E,b={}){return b=Qe(b,["fill","stroke"]),Me(M,E,b)},"bpmn:Group":function(M,E,b={}){return b=Qe(b,["fill","stroke","width","height"]),m(M,E.width,E.height,js,{stroke:ge(E,c,b.stroke),strokeWidth:1.5,strokeDasharray:"10, 6, 0, 6",fill:"none",pointerEvents:"none",width:qn(E,b),height:Mn(E,b)})},"bpmn:InclusiveGateway":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=Me(M,E,b);return h(M,E.width,E.height,E.height*.24,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke),strokeWidth:2.5}),H},"bpmn:IntermediateEvent":function(M,E,b={}){var{renderIcon:H=!0}=b;b=Qe(b,["fill","stroke"]);var U=le(M,E,{...b,strokeWidth:1.5});return h(M,E.width,E.height,Fs,{fill:"none",stroke:ge(E,c,b.stroke),strokeWidth:1.5}),H&&j(E,M,b),U},"bpmn:IntermediateCatchEvent":L("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":L("bpmn:IntermediateEvent"),"bpmn:Lane":function(M,E,b={}){return b=Qe(b,["fill","stroke","width","height"]),W(M,E,{...b,fillOpacity:kR})},"bpmn:ManualTask":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=Te(M,E,b),U=i.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}});return S(M,U,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke),strokeWidth:.5}),H},"bpmn:MessageFlow":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=ie(E),U=Ze(E),Q=qe(E,s,b.fill),we=ge(E,c,b.stroke),He=_(M,E.waypoints,{markerEnd:d(M,"messageflow-end",Q,we),markerStart:d(M,"messageflow-start",Q,we),stroke:we,strokeDasharray:"10, 11",strokeWidth:1.5});if(H.get("messageRef")){var et=He.getPointAtLength(He.getTotalLength()/2),Pt=i.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:et.x,y:et.y}}),nt={strokeWidth:1};U.get("messageVisibleKind")==="initiating"?(nt.fill=Q,nt.stroke=we):(nt.fill=we,nt.stroke=Q);var St=S(M,Pt,nt),dn=H.get("messageRef"),Kt=dn.get("name"),dt=ce(M,Kt,{align:"center-top",fitBox:!0,style:{fill:we}}),Mt=St.getBBox(),rn=dt.getBBox(),Vo=et.x-rn.width/2,Bn=et.y+Mt.height/2+PR;Is(dt,Vo,Bn,0)}return He},"bpmn:ParallelGateway":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=Me(M,E,b),U=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:E.width,containerHeight:E.height,position:{mx:.46,my:.2}});return S(M,U,{fill:ge(E,c,b.stroke),stroke:ge(E,c,b.stroke),strokeWidth:1}),H},"bpmn:Participant":function(M,E,b={}){b=Qe(b,["fill","stroke","width","height"]);var H=W(M,E,b),U=Ke(E),Q=Yt(E),we=ie(E),He=we.get("name");if(U){var et=Q?[{x:30,y:0},{x:30,y:Mn(E,b)}]:[{x:0,y:30},{x:qn(E,b),y:30}];y(M,et,{stroke:ge(E,c,b.stroke),strokeWidth:AR}),ze(M,He,E,b)}else{var Pt=la(E,b);Q||(Pt.height=qn(E,b),Pt.width=Mn(E,b));var nt=ce(M,He,{box:Pt,align:"center-middle",style:{fill:ua(E,u,c,b.stroke)}});if(!Q){var St=-1*Mn(E,b);Is(nt,0,-St,270)}}return we.get("participantMultiplicity")&&D("ParticipantMultiplicityMarker",M,E,b),H},"bpmn:ReceiveTask":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=ie(E),U=Te(M,E,b),Q;return H.get("instantiate")?(h(M,28,28,20*.22,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke),strokeWidth:1}),Q=i.getScaledPath("TASK_TYPE_INSTANTIATING_SEND",{abspos:{x:7.77,y:9.52}})):Q=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:21,containerHeight:14,position:{mx:.3,my:.4}}),S(M,Q,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke),strokeWidth:1}),U},"bpmn:ScriptTask":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=Te(M,E,b),U=i.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}});return S(M,U,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke),strokeWidth:1}),H},"bpmn:SendTask":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=Te(M,E,b),U=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}});return S(M,U,{fill:ge(E,c,b.stroke),stroke:qe(E,s,b.fill),strokeWidth:1}),H},"bpmn:SequenceFlow":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=qe(E,s,b.fill),U=ge(E,c,b.stroke),Q=_(M,E.waypoints,{markerEnd:d(M,"sequenceflow-end",H,U),stroke:U}),we=ie(E),{source:He}=E;if(He){var et=ie(He);we.get("conditionExpression")&&w(et,"bpmn:Activity")&&xe(Q,{markerStart:d(M,"conditional-flow-marker",H,U)}),et.get("default")&&(w(et,"bpmn:Gateway")||w(et,"bpmn:Activity"))&&et.get("default")===we&&xe(Q,{markerStart:d(M,"conditional-default-flow-marker",H,U)})}return Q},"bpmn:ServiceTask":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=Te(M,E,b);h(M,10,10,{fill:qe(E,s,b.fill),stroke:"none",transform:"translate(6, 6)"});var U=i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}});S(M,U,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke),strokeWidth:1}),h(M,10,10,{fill:qe(E,s,b.fill),stroke:"none",transform:"translate(11, 10)"});var Q=i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}});return S(M,Q,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke),strokeWidth:1}),H},"bpmn:StartEvent":function(M,E,b={}){var{renderIcon:H=!0}=b;b=Qe(b,["fill","stroke"]);var U=ie(E);U.get("isInterrupting")||(b={...b,strokeDasharray:"6"});var Q=le(M,E,b);return H&&j(E,M,b),Q},"bpmn:SubProcess":function(M,E,b={}){return Ke(E)?b=Qe(b,["fill","stroke","width","height"]):b=Qe(b,["fill","stroke"]),q(M,E,b)},"bpmn:Task":function(M,E,b={}){return b=Qe(b,["fill","stroke"]),Te(M,E,b)},"bpmn:TextAnnotation":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var{width:H,height:U}=la(E,b),Q=m(M,H,U,0,0,{fill:"none",stroke:"none"}),we=i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:H,containerHeight:U,position:{mx:0,my:0}});S(M,we,{stroke:ge(E,c,b.stroke)});var He=ie(E),et=He.get("text")||"";return ce(M,et,{align:"left-top",box:la(E,b),padding:yo,style:{fill:ua(E,u,c,b.stroke)}}),Q},"bpmn:Transaction":function(M,E,b={}){Ke(E)?b=Qe(b,["fill","stroke","width","height"]):b=Qe(b,["fill","stroke"]);var H=q(M,E,{strokeWidth:1.5,...b}),U=n.style(["no-fill","no-events"],{stroke:ge(E,c,b.stroke),strokeWidth:1.5}),Q=Ke(E);return Q||(b={}),m(M,qn(E,b),Mn(E,b),js-Fs,Fs,U),H},"bpmn:UserTask":function(M,E,b={}){b=Qe(b,["fill","stroke"]);var H=Te(M,E,b),U=15,Q=12,we=i.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:U,y:Q}});S(M,we,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke),strokeWidth:.5});var He=i.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:U,y:Q}});S(M,He,{fill:qe(E,s,b.fill),stroke:ge(E,c,b.stroke),strokeWidth:.5});var et=i.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:U,y:Q}});return S(M,et,{fill:ge(E,c,b.stroke),stroke:ge(E,c,b.stroke),strokeWidth:.5}),H},label:function(M,E,b={}){return Ye(M,E,b)}};this._drawPath=S,this._renderer=C}_e(Br,ki),Br.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],Br.prototype.canRender=function(e){return w(e,"bpmn:BaseElement")},Br.prototype.drawShape=function(e,t,n={}){var{type:i}=t,r=this._renderer(i);return r(e,t,n)},Br.prototype.drawConnection=function(e,t,n={}){var{type:i}=t,r=this._renderer(i);return r(e,t,n)},Br.prototype.getShapePath=function(e){return Ge(e)?Ol(e,TR):w(e,"bpmn:Event")?$m(e):w(e,"bpmn:Activity")?Ol(e,js):w(e,"bpmn:Gateway")?SR(e):RR(e)};function Qe(e,t=[]){return t.reduce((n,i)=>(e[i]&&(n[i]=e[i]),n),{})}var OR=0,DR={width:150,height:50};function LR(e){var t=e.split("-");return{horizontal:t[0]||"center",vertical:t[1]||"top"}}function IR(e){return Wt(e)?V({top:0,left:0,right:0,bottom:0},e):{top:e,left:e,right:e,bottom:e}}var Dl=null;function BR(){return Dl||(Dl=document.createElement("canvas").getContext("2d")),Dl}function NR(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(Fm(e.fontSize)||"12px"),t.push(e.fontFamily||"sans-serif"),t.join(" ")}function Fm(e){if(e!=null)return typeof e=="number"||/^-?\d+(\.\d+)?$/.test(e)?e+"px":e}function $R(e,t){var n=BR();if(!n)return{width:0,height:0};n.font=NR(t),"letterSpacing"in n&&(n.letterSpacing=Fm(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 FR(e,t,n){for(var i=e.shift(),r=i,o;;){if(o=$R(r,n),o.width=r?o.width:0,r===" "||r===""||o.width<Math.round(t)||r.length<2)return jR(e,r,i,o);r=zR(r,o.width,t)}}function jR(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 jm="­";function HR(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===jm)&&r.pop();break}var a=r[r.length-1];return a&&a===jm&&(r[r.length-1]="-"),r.join("")}function zR(e,t,n){var i=Math.max(e.length*(n/t),1),r=HR(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function Hs(e){this._config=V({},{size:DR,padding:OR,style:{},align:"center-top"},e||{})}Hs.prototype.createText=function(e,t){return this.layoutText(e,t).element},Hs.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},Hs.prototype.layoutText=function(e,t){for(var n=V({},this._config.size,t.box),i=V({},this._config.style,t.style),r=LR(t.align||this._config.align),o=IR(t.padding!==void 0?t.padding:this._config.padding),a=t.fitBox||!1,s=GR(i),c=e.split(/\u00AD?\r?\n/),u=[],l=n.width-o.left-o.right;c.length;)u.push(FR(c,l,i));r.vertical==="middle"&&(o.top=o.bottom=0);var f=Cn(u,function(m,x,y){return m+(s||x.height)},0)+o.top+o.bottom,p=Cn(u,function(m,x,y){return x.width>m?x.width:m},0),d=o.top;r.vertical==="middle"&&(d+=(n.height-f)/2),d-=(s||u[0].height)/4;var g=Pe("text");xe(g,i),B(u,function(m){var x;switch(d+=s||m.height,r.horizontal){case"left":x=o.left;break;case"right":x=(a?p:l)-o.right-m.width;break;default:x=Math.max(((a?p:l)-m.width)/2+o.left,0)}var y=Pe("tspan");xe(y,{x,y:d}),y.textContent=m.text,Fe(g,y)});var h={width:p,height:f};return{dimensions:h,element:g}};function GR(e){if("fontSize"in e&&"lineHeight"in e)return e.lineHeight*parseInt(e.fontSize,10)}var VR=12,WR=1.2,UR=40;function Hm(e){var t=V({fontFamily:"Arial, sans-serif",fontSize:VR,fontWeight:"normal",lineHeight:WR},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=V({},t,{fontSize:n},e&&e.externalStyle||{}),r=new Hs({style:t});this.getExternalLabelBounds=function(a,s){var c={width:Math.max(a.width,Ir.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:yo});return{x:a.x,y:a.y,width:a.width,height:Math.max(UR,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}}Hm.$inject=["config.textRenderer"];function qR(){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 f=ZR(i.d,{mx:r,my:o,e:a});return f}}var YR=/\{([^{}]+)\}/g,KR=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;function XR(e,t,n){var i=n;return t.replace(KR,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 ZR(e,t){return String(e).replace(YR,function(n,i){return XR(n,i,t)})}const QR={__init__:["bpmnRenderer"],bpmnRenderer:["type",Br],textRenderer:["type",Hm],pathMap:["type",qR]};function JR(e,t){return t=t||{},e.replace(/{([^}]+)}/g,function(n,i){return t[i]||"{"+i+"}"})}const pa={translate:["value",JR]};function zs(e,t,n){return V({id:e.id,type:e.$type,businessObject:e,di:t},n)}function eC(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 ${pn(t)} referenced by ${pn(e)}#${n} not yet drawn`)}function Ii(e,t,n,i,r){this._eventBus=e,this._canvas=t,this._elementFactory=n,this._elementRegistry=i,this._textRenderer=r}Ii.$inject=["eventBus","canvas","elementFactory","elementRegistry","textRenderer"],Ii.prototype.add=function(e,t,n){var i,r,o;if(w(t,"bpmndi:BPMNPlane")){var a=w(e,"bpmn:SubProcess")?{id:e.id+"_plane"}:{};i=this._elementFactory.createRoot(zs(e,t,a)),this._canvas.addRootElement(i)}else if(w(t,"bpmndi:BPMNShape")){var s=!Ke(e,t),c=nC(e);r=n&&(n.hidden||n.collapsed);var u=t.bounds;i=this._elementFactory.createShape(zs(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})),w(e,"bpmn:BoundaryEvent")&&this._attachBoundary(e,i),w(e,"bpmn:Lane")&&(o=0),w(e,"bpmn:DataStoreReference")&&(tC(n,Le(u))||(n=this._canvas.findRoot(n))),this._canvas.addShape(i,n,o)}else if(w(t,"bpmndi:BPMNEdge")){var l=this._getSource(e),f=this._getTarget(e);r=n&&(n.hidden||n.collapsed),i=this._elementFactory.createConnection(zs(e,t,{hidden:r,source:l,target:f,waypoints:eC(t,l,f)})),w(e,"bpmn:DataAssociation")&&(n=this._canvas.findRoot(n)),this._canvas.addConnection(i,n,o)}else throw new Error(`unknown di ${pn(t)} for element ${pn(e)}`);return rr(e)&&zn(i)&&this.addLabel(e,t,i),this._eventBus.fire("bpmnElement.added",{element:i}),i},Ii.prototype._attachBoundary=function(e,t){var n=e.attachedToRef;if(!n)throw new Error(`missing ${pn(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)},Ii.prototype.addLabel=function(e,t,n){var i,r,o;return i=yR(t,n),r=zn(n),r&&(i=this._textRenderer.getExternalLabelBounds(i,r)),o=this._elementFactory.createLabel(zs(e,t,{id:e.id+"_label",labelTarget:n,type:"label",hidden:n.hidden||!zn(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)},Ii.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(`${pn(e)}#${t} Ref not specified`)},Ii.prototype._getSource=function(e){return this._getConnectedElement(e,"source")},Ii.prototype._getTarget=function(e){return this._getConnectedElement(e,"target")},Ii.prototype._getElement=function(e){return this._elementRegistry.get(e.id)};function tC(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 nC(e){return w(e,"bpmn:Group")}const Gm={__depends__:[QR,{__depends__:[pa],bpmnImporter:["type",Ii]}]};function fa(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function ci(e,t){return{x:e.x-t.x,y:e.y-t.y}}function Ll(e){return Math.log(e)/Math.log(10)}var iC=1e3;function te(e){this._eventBus=e}te.$inject=["eventBus"];function rC(e,t){return function(n){return e.call(t||null,n.context,n.command,n)}}te.prototype.on=function(e,t,n,i,r,o){if((Ut(t)||Be(t))&&(o=r,r=i,i=n,n=t,t=null),Ut(n)&&(o=r,r=i,i=n,n=iC),Wt(r)&&(o=r,r=!1),!Ut(i))throw new Error("handlerFn must be a function");De(e)||(e=[e]);var a=this._eventBus;B(e,function(s){var c=["commandStack",s,t].filter(function(u){return u}).join(".");a.on(c,n,r?rC(i,o):i,o)})},te.prototype.canExecute=Bi("canExecute"),te.prototype.preExecute=Bi("preExecute"),te.prototype.preExecuted=Bi("preExecuted"),te.prototype.execute=Bi("execute"),te.prototype.executed=Bi("executed"),te.prototype.postExecute=Bi("postExecute"),te.prototype.postExecuted=Bi("postExecuted"),te.prototype.revert=Bi("revert"),te.prototype.reverted=Bi("reverted");function Bi(e){return function(n,i,r,o,a){(Ut(n)||Be(n))&&(a=o,o=r,r=i,i=n,n=null),this.on(n,e,i,r,o,a)}}var Il=["top","bottom","left","right"],Gs=10;function Bl(e,t){te.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($s(r)&&!ot(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=Ae(r),l;switch(o){case"top":l={x:a.x,y:u.top-Gs-s.height/2};break;case"left":l={x:u.left-Gs-s.width/2,y:a.y};break;case"bottom":l={x:a.x,y:u.bottom+Gs+s.height/2};break;case"right":l={x:u.right+Gs+s.width/2,y:a.y};break}var f=ci(l,c);t.moveShape(s,f)}}}_e(Bl,te),Bl.$inject=["eventBus","modeling"];function oC(e){var t=e.host,n=Le(e),i=Jt(n,t),r;i.indexOf("-")>=0?r=i.split("-"):r=[i];var o=Il.filter(function(a){return r.indexOf(a)===-1});return o}function aC(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 Vm(t,i)});return n}function sC(e){var t=Le(e.label),n=Le(e),i=Vm(n,t);if(cC(i)){var r=aC(e);if(e.host){var o=oC(e);r=r.concat(o)}var a=Il.filter(function(s){return r.indexOf(s)===-1});return a.indexOf(i)!==-1?Jt(e.label,e)!=="intersect"?void 0:i:a[0]}}function Vm(e,t){return Jt(t,e,5)}function cC(e){return Il.indexOf(e)!==-1}function Nl(e){te.call(this,e),this.preExecute("shape.append",function(t){var n=t.source,i=t.shape;t.position||(w(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)}_e(Nl,te),Nl.$inject=["eventBus"];var uC=1500;function $l(e,t,n){e.invoke(te,this),this.preExecute("elements.delete",uC,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=We(r,u=>w(u,"bpmn:Participant")||w(u,"bpmn:SubProcess"));if(!o.length)return[];var a=n.getRootElement(),s=new Set(a.children.filter(u=>w(u,"bpmn:Artifact"))),c=new Set;return B(o,u=>{const l=new Set(Jr(po(Array.from(s),Dt(u))));c=c.union(l),s=s.difference(l)}),Array.from(c)}}_e($l,te),$l.$inject=["injector","eventBus","canvas"];function Fl(e,t){e.invoke(te,this),this.postExecute("shape.move",function(n){var i=n.newParent,r=n.shape,o=We(r.incoming.concat(r.outgoing),function(a){return w(a,"bpmn:Association")});B(o,function(a){t.moveConnection(a,{x:0,y:0},i)})},!0)}_e(Fl,te),Fl.$inject=["injector","modeling"];function bo(e,t){for(Sn(t)&&(t=[t]);e=e.parent;)if(Ve(e,t))return e;return null}function Wm(e,t){var n=bo(e,"bpmn:Process");if(n)return!0;var i=["bpmn:Participant","bpmn:Lane"];if(n=bo(e,i),n)return Yt(n);if(Ve(e,i))return Yt(e);var r;for(r=ie(e);r&&!w(r,"bpmn:Process");r=r.$parent);if(!t)return!0;var o=t.find(function(a){var s=ie(a);return s&&s.get("processRef")===r});return o?Yt(o):!0}var Um=500;function Vs(e,t){t.invoke(te,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",Um,function(i){var r=i.elements;r=r.filter(function(o){var a=o.host;return qm(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",Um,function(i){var r=i.shapes,o=i.newHost;if(r.length===1){var a=r[0];qm(a,o)&&(i.shapes=[n._replaceShape(a,o)])}},!0)}Vs.$inject=["bpmnReplace","injector"],_e(Vs,te),Vs.prototype._replaceShape=function(e,t){var n=lC(e),i={type:"bpmn:BoundaryEvent",host:t};return n&&(i.eventDefinitionType=n.$type),this._bpmnReplace.replaceElement(e,i,{layoutConnection:!1})};function lC(e){var t=ie(e),n=t.eventDefinitions;return n&&n[0]}function qm(e,t){return!Ge(e)&&Ve(e,["bpmn:IntermediateThrowEvent","bpmn:IntermediateCatchEvent"])&&!!t}function jl(e,t){te.call(this,e);function n(i){return We(i.attachers,function(r){return w(r,"bpmn:BoundaryEvent")})}this.postExecute("connection.create",function(i){var r=i.context.source,o=i.context.target,a=n(o);w(r,"bpmn:EventBasedGateway")&&w(o,"bpmn:ReceiveTask")&&a.length>0&&t.removeElements(a)}),this.postExecute("connection.reconnect",function(i){var r=i.context.oldSource,o=i.context.newSource;w(r,"bpmn:Gateway")&&w(o,"bpmn:EventBasedGateway")&&B(o.outgoing,function(a){var s=a.target,c=n(s);w(s,"bpmn:ReceiveTask")&&c.length>0&&t.removeElements(c)})})}jl.$inject=["eventBus","modeling"],_e(jl,te);function Ym(e){return e.create("bpmn:Category")}function pC(e){return e.create("bpmn:CategoryValue")}function Km(e,t){var n=t.get("categoryValueRef");return n||(n=t.categoryValueRef=pC(e)),n.$parent||(n.$parent=Ym(e)),n}function fC(e,t,n){return Tt(t.get("categoryValue"),e),e.$parent=t,Tt(n.get("rootElements"),t),t.$parent=n,e}function dC(e){var t=e.$parent;return t&&(Ct(t.get("categoryValue"),e),e.$parent=null),e}function hC(e){var t=e.$parent;return t&&(Ct(t.get("rootElements"),e),e.$parent=null),e}var mC=500;function Hl(e,t,n){n.invoke(te,this);function i(c){return t.filter(function(u){return w(u,"bpmn:Group")&&!u.labelTarget}).map(ie).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 f=l.get("categoryValueRef");return f&&f.$parent===c})}function a(c,u){c&&u&&fC(c,u,e.getDefinitions())}function s(c,u,l){u&&!o(u,l)&&hC(u),c&&!r(c,l)&&dC(c)}this.executed(["shape.create","label.create"],function(c){var u=c.labelTarget||c.shape;!w(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;!w(u,"bpmn:Group")||u.labelTarget||s(c.categoryValue,c.category,ie(u))},!0),this.executed(["shape.move","shape.resize"],mC,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,ie(u))},!0),this.executed("group.updateRefs",function(c){Xm(c).forEach(function(u){a(u.categoryValue,u.category)})},!0),this.reverted("group.updateRefs",function(c){Xm(c).forEach(function(u){s(u.categoryValue,u.category,ie(u.groupShape))})},!0),this.executed("shape.delete",function(c){var u=c.shape;!w(u,"bpmn:Group")||u.labelTarget||s(c.categoryValue,c.category,ie(u))},!0),this.reverted("shape.delete",function(c){var u=c.shape;!w(u,"bpmn:Group")||u.labelTarget||a(c.categoryValue,c.category)},!0)}Hl.$inject=["bpmnjs","elementRegistry","injector"],_e(Hl,te);function Xm(e){var t;return((t=e.updates)==null?void 0:t.groups)||[]}function zl(e,t,n){te.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(m){const x=m.source,y=m.target;_o(x)&&da(y)&&l(y)}function r(m){const x=m.connection,y=m.source,_=m.target;_o(y)&&Ws(_)&&(u(_),p(y,[x]))}function o(m){const x=m.newTarget,y=m.oldSource,_=m.oldTarget;if(_!==x){const S=y;da(_)&&l(_),_o(S)&&Ws(x)&&u(x)}}function a(m){const{element:x}=m;da(x)?(f(x),d(x)):Ws(x)&&g(x)}function s(m){const{newData:x,oldShape:y}=m;if(_o(m.oldShape)&&x.eventDefinitionType!=="bpmn:CompensateEventDefinition"||x.type!=="bpmn:BoundaryEvent"){const _=y.outgoing.find(({target:S})=>da(S));_&&_.target&&(m._connectionTarget=_.target)}else if(!_o(m.oldShape)&&x.eventDefinitionType==="bpmn:CompensateEventDefinition"&&x.type==="bpmn:BoundaryEvent"){const _=y.outgoing.find(({target:S})=>Ws(S));_&&_.target&&(m._connectionTarget=_.target),h(y)}}function c(m){const{_connectionTarget:x,newShape:y}=m;x&&t.connect(y,x)}function u(m){t.updateProperties(m,{isForCompensation:!0})}function l(m){t.updateProperties(m,{isForCompensation:void 0})}function f(m){for(const x of m.incoming)n.canConnect(x.source,m)||t.removeConnection(x);for(const x of m.outgoing)n.canConnect(m,x.target)||t.removeConnection(x)}function p(m,x){m.outgoing.filter(S=>w(S,"bpmn:Association")).filter(S=>da(S.target)&&!x.includes(S)).forEach(S=>t.removeConnection(S))}function d(m){const x=m.attachers.slice();x.length&&t.removeElements(x)}function g(m){const x=m.incoming.filter(y=>_o(y.source));t.removeElements(x)}function h(m){const x=m.outgoing.filter(y=>w(y,"bpmn:SequenceFlow"));t.removeElements(x)}}_e(zl,te),zl.$inject=["eventBus","modeling","bpmnRules"];function da(e){const t=ie(e);return t&&t.get("isForCompensation")}function _o(e){return e&&w(e,"bpmn:BoundaryEvent")&&go(e,"bpmn:CompensateEventDefinition")}function Ws(e){return e&&w(e,"bpmn:Activity")&&!fn(e)}function Gl(e){e.invoke(te,this),this.preExecute("shape.create",1500,function(t){var n=t.context,i=n.parent,r=n.shape;w(i,"bpmn:Lane")&&!w(r,"bpmn:Lane")&&(n.parent=bo(i,"bpmn:Participant"))})}Gl.$inject=["injector"],_e(Gl,te);function Vl(e,t){te.call(this,e),this.preExecute("shape.create",function(n){var a;var i=n.context,r=i.shape;if(w(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}})}Vl.$inject=["eventBus","bpmnFactory"],_e(Vl,te);var Wl=20,Ul=20,Zm=30,Us=2e3;function ql(e,t,n){te.call(this,t),t.on(["create.start","shape.move.start"],Us,function(r){var o=r.context,a=o.shape,s=e.getRootElement();if(!(!w(a,"bpmn:Participant")||!w(s,"bpmn:Process")||!s.children.length)){var c=s.children.filter(function(f){return!w(f,"bpmn:Group")&&!Ge(f)&&!ot(f)});if(c.length){var u=Dt(c),l=gC(a,u);V(a,l),o.createConstraints=yC(a,u)}}}),t.on("create.start",Us,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}w(a,"bpmn:Participant")&&w(s,"bpmn:Process")&&(t.on("element.hover",Us,u),t.once("create.cleanup",function(){t.off("element.hover",u)}))});function i(){var r=e.getRootElement();return w(r,"bpmn:Collaboration")?r:n.makeCollaboration()}this.preExecute("elements.create",Us,function(r){var o=r.elements,a=r.parent,s=vC(o),c;s&&w(a,"bpmn:Process")&&(r.parent=i(),c=r.hints=r.hints||{},c.participant=s,c.process=a,c.processRef=ie(s).get("processRef"))},!0),this.preExecute("shape.create",function(r){var o=r.parent,a=r.shape;w(a,"bpmn:Participant")&&w(o,"bpmn:Process")&&(r.parent=i(),r.process=o,r.processRef=ie(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)&&ie(s).set("processRef",ie(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)&&ie(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)}ql.$inject=["canvas","eventBus","modeling"],_e(ql,te);function gC(e,t){t={width:t.width+Wl*2+Zm,height:t.height+Ul*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 yC(e,t){return t=Ae(t),{bottom:t.top+e.height/2-Ul,left:t.right-e.width/2+Wl,top:t.bottom-e.height/2+Ul,right:t.left+e.width/2-Wl-Zm}}function vC(e){return lt(e,function(t){return w(t,"bpmn:Participant")})}var Qm="__targetRef_placeholder";function Yl(e,t){te.call(this,e),this.executed(["connection.create","connection.delete","connection.move","connection.reconnect"],Jm(o)),this.reverted(["connection.create","connection.delete","connection.move","connection.reconnect"],Jm(o));function n(a,s,c){var u=a.get("dataInputAssociations");return lt(u,function(l){return l!==c&&l.targetRef===s})}function i(a,s){var c=a.get("properties"),u=lt(c,function(l){return l.name===Qm});return!u&&s&&(u=t.create("bpmn:Property",{name:Qm}),Tt(c,u)),u}function r(a,s){var c=i(a);c&&(n(a,c,s)||Ct(a.get("properties"),c))}function o(a){var s=a.context,c=s.connection,u=c.businessObject,l=c.target,f=l&&l.businessObject,p=s.newTarget,d=p&&p.businessObject,g=s.oldTarget||s.target,h=g&&g.businessObject,m=c.businessObject,x;h&&h!==f&&r(h,u),d&&d!==f&&r(d,u),f?(x=i(f,!0),m.targetRef=x):m.targetRef=null}}Yl.$inject=["eventBus","bpmnFactory"],_e(Yl,te);function Jm(e){return function(t){var n=t.context,i=n.connection;if(w(i,"bpmn:DataInputAssociation"))return e(t)}}function qs(e){this._bpmnUpdater=e}qs.$inject=["bpmnUpdater"],qs.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),[]},qs.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 Kl(e,t,n,i){te.call(this,i),t.registerHandler("dataStore.updateContainment",qs);function r(){return n.filter(function(s){return w(s,"bpmn:Participant")&&ie(s).processRef})[0]}function o(s){return s.children.filter(function(c){return w(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:Ze(s),newSemanticParent:l.processRef||l,newDiParent:Ze(c)})}}this.preExecute("shape.create",function(s){var c=s.context,u=c.shape;w(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(f){return w(f,"bpmn:DataStoreReference")});l.length&&(c.hints||(c.hints={}),c.hints.autoResize=u.filter(function(f){return!w(f,"bpmn:DataStoreReference")}))}),this.postExecute("shape.create",function(s){var c=s.context,u=c.shape,l=u.parent;w(u,"bpmn:DataStoreReference")&&u.type!=="label"&&w(l,"bpmn:Collaboration")&&a(u)}),this.postExecute("shape.move",function(s){var c=s.context,u=c.shape,l=c.oldParent,f=u.parent;if(!w(l,"bpmn:Collaboration")&&w(u,"bpmn:DataStoreReference")&&u.type!=="label"&&w(f,"bpmn:Collaboration")){var p=w(l,"bpmn:Participant")?l:_C(l,"bpmn:Participant");a(u,p)}}),this.postExecute("shape.delete",function(s){var c=s.context,u=c.shape,l=e.getRootElement();Ve(u,["bpmn:Participant","bpmn:SubProcess"])&&w(l,"bpmn:Collaboration")&&o(l).filter(function(f){return bC(f,u)}).forEach(function(f){a(f)})}),this.postExecute("canvas.updateRoot",function(s){var c=s.context,u=c.oldRoot,l=c.newRoot,f=o(u);f.forEach(function(p){w(l,"bpmn:Process")&&a(p,l)})})}Kl.$inject=["canvas","commandStack","elementRegistry","eventBus"],_e(Kl,te);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 _C(e,t){for(;e.parent;){if(w(e.parent,t))return e.parent;e=e.parent}}var Ys=Math.max,Ks=Math.min,xC=20;function eg(e,t){return{top:e.top-t.top,right:e.right-t.right,bottom:e.bottom-t.bottom,left:e.left-t.left}}function wC(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 EC(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 Xs(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)?Ks:Ys)(i,r)),Be(o)&&(i=(/top|left/.test(e)?Ys:Ks)(i,o)),i}function SC(e,t){if(!t)return e;var n=Ae(e);return Os({top:Xs("top",n,t),right:Xs("right",n,t),bottom:Xs("bottom",n,t),left:Xs("left",n,t)})}function RC(e,t,n,i){var r=Ae(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?Ae(i):o,s={top:Ks(o.top,a.top),left:Ks(o.left,a.left),bottom:Ys(o.bottom,a.bottom),right:Ys(o.right,a.right)};return Os(s)}function ha(e,t){return typeof e<"u"?e:xC}function CC(e,t){var n,i,r,o;return typeof t=="object"?(n=ha(t.left),i=ha(t.right),r=ha(t.top),o=ha(t.bottom)):n=i=r=o=ha(t),{x:e.x-n,y:e.y-r,width:e.width+n+i,height:e.height+r+o}}function PC(e){return!(e.waypoints||e.type==="label")}function tg(e,t){var n;if(e.length===void 0?n=We(e.children,PC):n=e,n.length)return CC(Dt(n),t)}var or=Math.abs;function AC(e,t){return eg(Ae(t),Ae(e))}var TC=["bpmn:Participant","bpmn:Process","bpmn:SubProcess"],Yn=30;function Zs(e,t){return t=t||[],e.children.filter(function(n){w(n,"bpmn:Lane")&&(Zs(n,t),t.push(n))}),t}function ar(e){return e.children.filter(function(t){return w(t,"bpmn:Lane")})}function Kn(e){return bo(e,TC)||e}function MC(e,t){var n=Kn(e),i=w(n,"bpmn:Process")?[]:[n],r=Zs(n,i),o=Ae(e),a=Ae(t),s=AC(e,t),c=[],u=Yt(e);return r.forEach(function(l){if(l!==e){var f=u?0:s.top,p=u?s.right:0,d=u?0:s.bottom,g=u?s.left:0,h=Ae(l);s.top&&(or(h.bottom-o.top)<10&&(d=a.top-h.bottom),or(h.top-o.top)<5&&(f=a.top-h.top)),s.left&&(or(h.right-o.left)<10&&(p=a.left-h.right),or(h.left-o.left)<5&&(g=a.left-h.left)),s.bottom&&(or(h.top-o.bottom)<10&&(f=a.bottom-h.top),or(h.bottom-o.bottom)<5&&(d=a.bottom-h.bottom)),s.right&&(or(h.left-o.right)<10&&(g=a.right-h.left),or(h.right-o.right)<5&&(p=a.right-h.right)),(f||p||d||g)&&c.push({shape:l,newBounds:EC(l,{top:f,right:p,bottom:d,left:g})})}}),c}var kC=500;function Xl(e,t){te.call(this,e);function n(i,r){var o=Yt(i),a=ar(r),s=[],c=[],u=[],l=[];if(Dr(a,function(m){return o?m.y>i.y?c.push(m):s.push(m):m.x>i.x?l.push(m):u.push(m),m.children}),!!a.length){var f;o?c.length&&s.length?f=i.height/2:f=i.height:l.length&&u.length?f=i.width/2:f=i.width;var p,d,g,h;s.length&&(p=t.calculateAdjustments(s,"y",f,i.y-10),t.makeSpace(p.movingShapes,p.resizingShapes,{x:0,y:f},"s")),c.length&&(d=t.calculateAdjustments(c,"y",-f,i.y+i.height+10),t.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:-f},"n")),u.length&&(g=t.calculateAdjustments(u,"x",f,i.x-10),t.makeSpace(g.movingShapes,g.resizingShapes,{x:f,y:0},"e")),l.length&&(h=t.calculateAdjustments(l,"x",-f,i.x+i.width+10),t.makeSpace(h.movingShapes,h.resizingShapes,{x:-f,y:0},"w"))}}this.postExecuted("shape.delete",kC,function(i){var r=i.context,o=r.hints,a=r.shape,s=r.oldParent;w(a,"bpmn:Lane")&&(o&&o.nested||n(a,s))})}Xl.$inject=["eventBus","spaceTool"],_e(Xl,te);var ng=500;function Qs(e,t){t.invoke(te,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",ng,function(i){var r=i.elements;r.filter(function(o){var a=o.host;return ig(o,a)}).map(function(o){return r.indexOf(o)}).forEach(function(o){i.elements[o]=n._replaceShape(r[o])})},!0),this.preExecute("elements.move",ng,function(i){var r=i.shapes,o=i.newHost;r.forEach(function(a,s){var c=a.host;ig(a,DC(r,c)?c:o)&&(r[s]=n._replaceShape(a))})},!0)}Qs.$inject=["bpmnReplace","injector"],_e(Qs,te),Qs.prototype._replaceShape=function(e){var t=OC(e),n;return t?n={type:"bpmn:IntermediateCatchEvent",eventDefinitionType:t.$type}:n={type:"bpmn:IntermediateThrowEvent"},this._bpmnReplace.replaceElement(e,n,{layoutConnection:!1})};function OC(e){var t=ie(e),n=t.eventDefinitions;return n&&n[0]}function ig(e,t){return!Ge(e)&&w(e,"bpmn:BoundaryEvent")&&!t}function DC(e,t){return e.indexOf(t)!==-1}var Js=Math.round,LC=Math.max;function IC(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 BC(e){var t=[];return e.forEach(function(n,i){t.push([i===0?"M":"L",n.x,n.y])}),t}var rg=10;function NC(e,t){var n,i;for(n=0;i=e[n];n++)if(ra(i,t)<=rg)return{point:e[n],bendpoint:!0,index:n};return null}function $C(e,t){var n=um(IC(t,rg),BC(e)),i=n[0],r=n[n.length-1],o;return i?i!==r?i.segment2!==r.segment2?(o=LC(i.segment2,r.segment2)-1,{point:e[o],bendpoint:!0,index:o}):{point:{x:Js(i.x+r.x)/2,y:Js(i.y+r.y)/2},index:i.segment2}:{point:{x:Js(i.x),y:Js(i.y)},index:i.segment2}:null}function Zl(e,t){return NC(e,t)||$C(e,t)}function Ql(e,t,n){te.call(this,e);function i(r,o,a){var s=o.waypoints,c,u,l,f,p,d,g,h=r.outgoing.slice(),m=r.incoming.slice(),x;Be(a.width)?x=Le(a):x=a;var y=Zl(s,x);if(y){if(c=s.slice(0,y.index),u=s.slice(y.index+(y.bendpoint?1:0)),!c.length||!u.length)return;l=y.bendpoint?s[y.index]:x,(c.length===1||!og(r,c[c.length-1]))&&c.push(ag(l)),(u.length===1||!og(r,u[0]))&&u.unshift(ag(l))}f=o.source,p=o.target,t.canConnect(f,r,o)&&(n.reconnectEnd(o,r,c||x),d=o),t.canConnect(r,p,o)&&(d?g=n.connect(r,p,{type:o.type,waypoints:u}):(n.reconnectStart(o,r,u||x),g=o));var _=[].concat(d&&We(m,function(S){return S.source===d.source})||[],g&&We(h,function(S){return S.target===g.target})||[]);_.length&&n.removeElements(_)}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},f=lt(o.children,function(p){var d=t.canInsert(a,p);return d&&Zl(p.waypoints,l)});f&&(r.targetFlow=f,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)}_e(Ql,te),Ql.$inject=["eventBus","bpmnRules","modeling"];function og(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 ag(e){return V({},e)}function Jl(e,t){te.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)&&xo(r)){var c=[];w(o,"bpmn:EventBasedGateway")?c=a.incoming.filter(u=>u!==r&&xo(u)):c=a.incoming.filter(u=>u!==r&&xo(u)&&w(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(w(r,"bpmn:EventBasedGateway")){var o=r.outgoing.filter(xo).reduce(function(a,s){return a.includes(s.target)?a:a.concat(s.target)},[]);o.forEach(function(a){a.incoming.filter(xo).forEach(function(s){const c=a.incoming.filter(xo).filter(function(u){return u.source===r});(s.source!==r||c.length>1)&&t.removeConnection(s)})})}})}Jl.$inject=["eventBus","modeling"],_e(Jl,te);function xo(e){return w(e,"bpmn:SequenceFlow")}var ec=1500,sg=2e3;function cg(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"],ec,function(i){var r=i.context,o=r.shape||i.shape,a=i.hover;w(a,"bpmn:Lane")&&!Ve(o,["bpmn:Lane","bpmn:Participant"])&&(i.hover=Kn(a),i.hoverGfx=e.getGraphics(i.hover));var s=n.getRootElement();a&&a!==s&&(o.labelTarget||Ve(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"],ec,function(i){var r=i.hover;w(r,"bpmn:Lane")&&(i.hover=Kn(r)||r,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["bendpoint.move.hover"],ec,function(i){var r=i.context,o=i.hover,a=r.type;w(o,"bpmn:Lane")&&/reconnect/.test(a)&&(i.hover=Kn(o)||o,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["connect.start"],ec,function(i){var r=i.context,o=r.start;w(o,"bpmn:Lane")&&(r.start=Kn(o)||o)}),t.on("shape.move.start",sg,function(i){var r=i.shape;w(r,"bpmn:Lane")&&(i.shape=Kn(r)||r)}),t.on("spaceTool.move",sg,function(i){var r=i.hover;r&&w(r,"bpmn:Lane")&&(i.hover=Kn(r))})}cg.$inject=["elementRegistry","eventBus","canvas"];var ug=770;function ep(e,t,n,i){n.invoke(te,this);function r(s,c){var u=ie(s),l=c.categoryValue||u.categoryValueRef;l||(l=Km(e,u));var f=c.category||l.$parent||Ym(e);u.categoryValueRef=l,l.$parent=f,c.categoryValue=l,c.category=f}function o(s,c){var u=ie(s),l=c.categoryValue||u.categoryValueRef,f=c.category||l&&l.$parent;l&&(c.categoryValue=l,c.category=f,u.categoryValueRef=null)}this.execute("label.create",function(s){var c=s.context,u=c.labelTarget;w(u,"bpmn:Group")&&r(u,c)}),this.revert("label.create",function(s){var c=s.context,u=c.labelTarget;w(u,"bpmn:Group")&&o(u,c)}),this.execute("shape.delete",function(s){var c=s.context,u=c.shape,l=ie(u);if(!(!w(u,"bpmn:Group")||u.labelTarget)){var f=c.categoryValue=l.categoryValueRef;f&&(c.category=f.$parent,l.categoryValueRef=null)}}),this.reverted("shape.delete",function(s){var c=s.context,u=c.shape;if(!(!w(u,"bpmn:Group")||u.labelTarget)){var l=c.category,f=c.categoryValue,p=ie(u);f&&(p.categoryValueRef=f,f.$parent=l)}}),this.execute("shape.create",function(s){var c=s.context,u=c.shape,l=c.hints||{};!w(u,"bpmn:Group")||u.labelTarget||l.createElementsBehavior===!1&&!ie(u).categoryValueRef&&!c.categoryValue||r(u,c)}),this.reverted("shape.create",function(s){var c=s.context,u=c.shape,l=c.hints||{};!w(u,"bpmn:Group")||u.labelTarget||l.createElementsBehavior===!1&&!ie(u).categoryValueRef&&!c.categoryValue||o(u,c)}),this.executed(["shape.move","shape.resize"],function(s){var c=s.context,u=c.shape;!w(u,"bpmn:Group")||u.labelTarget||ie(u).categoryValueRef||r(u,c)}),this.reverted(["shape.move","shape.resize"],function(s){var c=s.context,u=c.shape;!w(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",ug,function(s){var c=s.descriptor,u=s.element;if(!(!w(u,"bpmn:Group")||u.labelTarget)){var l=ie(u);if(l.categoryValueRef){var f=l.categoryValueRef;c.categoryValue=a(f,!0),f.$parent&&(c.category=a(f.$parent,!0))}}}),t.on("copyPaste.pasteElement",ug,function(s){var c=s.descriptor,u=c.businessObject,l=c.categoryValue,f=c.category;l&&(l=u.categoryValueRef=a(l)),f&&(l.$parent=a(f)),delete c.category,delete c.categoryValue})}ep.$inject=["bpmnFactory","eventBus","injector","moddleCopy"],_e(ep,te);function tp(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 lg(e){function t(i,r,o){var a={x:o.x,y:o.y-50},s={x:o.x-50,y:o.y},c=tp(i,r,o,a),u=tp(i,r,o,s),l;c&&u?pg(c,o)>pg(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)})}lg.$inject=["eventBus"];function pg(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function np(e){te.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=ie(i),o=Ze(i);if(Ve(r,t)){var a=o.get("isHorizontal");a===void 0&&(a=!0),o.set("isHorizontal",a)}})}np.$inject=["eventBus"],_e(np,te);function fg(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function dg(e){return Math.atan((e[1].y-e[0].y)/(e[1].x-e[0].x))}function FC(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 jC(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 ip(e,t){var n=t[0],i=t[1],r={x:i.x-n.x,y:i.y-n.y},o=jC([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 hg(e,t){var n=ip(e,t),i={x:n.x-e.x,y:n.y-e.y};return fg(i)}function ma(e,t){return fg({x:e.x-t.x,y:e.y-t.y})}var mg=Math.sqrt,gg=Math.min,HC=Math.max,yg=Math.abs;function vg(e){return Math.pow(e,2)}function ga(e,t){return mg(vg(e.x-t.x)+vg(e.y-t.y))}function zC(e,t){var n=0,i,r,o,a,s,c,u,l,f,p,d;for(n=0;n<t.length-1;n++){if(i=t[n],r=t[n+1],_g(i,r)?u=[i]:(o=ga(e,i),a=ga(e,r),c=gg(o,a),u=GC(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:_g(i,u[0])?n:n+1}),u.length===2&&(s=WC(u[0],u[1]),l={type:"segment",position:s,segmentIndex:n,relativeLocation:ga(i,s)/ga(i,r)}),f=ga(l.position,e),(!d||p>f)&&(d=l,p=f)}return d}function GC(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,f=u/c,p=l/c,d=f*f-p;if(d<0&&d>-1e-6&&(d=0),d<0)return[];var g=mg(d),h=-f+g,m=-f-g,x={x:e.x-r*h,y:e.y-o*h};if(d===0)return[x];var y={x:e.x-r*m,y:e.y-o*m};return[x,y].filter(function(_){return VC(_,e,t)})}function VC(e,t,n){return bg(e.x,t.x,n.x)&&bg(e.y,t.y,n.y)}function bg(e,t,n){return e>=gg(t,n)-tc&&e<=HC(t,n)+tc}function WC(e,t){return{x:(e.x+t.x)/2,y:(e.y+t.y)/2}}var tc=.1;function _g(e,t){return yg(e.x-t.x)<=tc&&yg(e.y-t.y)<=tc}function UC(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 f=wg(t,u);f<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 xg(e,t,n,i){var r=0,o=0,a={point:e,delta:{x:0,y:0}},s=zC(e,n),c=s.segmentIndex,u=UC(n,t,s,i);if(u<0||u>t.length-2||u===null)return a;var l=Eg(n,c),f=Eg(t,u),p=s.position,d=YC(l,p),g=qC(l,f);if(s.type==="bendpoint"){var h=t.length-n.length,m=s.bendpointIndex,x=n[m];if(t.indexOf(x)!==-1)return a;if(h===0){var y=t[m];return r=y.x-s.position.x,o=y.y-s.position.y,{delta:{x:r,y:o},point:{x:e.x+r,y:e.y+o}}}h<0&&m!==0&&m<n.length-1&&(d=wg(n,m))}var _={x:(f[1].x-f[0].x)*d+f[0].x,y:(f[1].y-f[0].y)*d+f[0].y},S=FC({x:e.x-p.x,y:e.y-p.y},g);return r=_.x+S.x-e.x,o=_.y+S.y-e.y,{point:Di(_),delta:Di({x:r,y:o})}}function wg(e,t){var n=ma(e[t-1],e[t]),i=ma(e[t],e[t+1]),r=n/(n+i);return r}function qC(e,t){var n=dg(e),i=dg(t);return i-n}function Eg(e,t){return[e[t],e[t+1]]}function YC(e,t){var n=ma(e[0],e[1]),i=ma(e[0],t);return n===0?0:i/n}function KC(e,t,n,i){var r=Le(e);return xg(r,t,n,i).delta}function ya(e,t,n){var i=fa(t),r=fa(n),o=ci(e,i),a={x:o.x*(n.width/t.width),y:o.y*(n.height/t.height)};return Di({x:r.x+a.x,y:r.y+a.y})}function Sg(e,t,n){var i=fa(e),r=fa(t),o=fa(n),a=ci(e,i),s=ci(i,r),c=XC(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 Di({x:l.x+a.x-e.x,y:l.y+a.y-e.y})}function XC(e,t,n){var i=Ae(t),r=Ae(n);if(ZC(i,r))return null;var o=Jt(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=Jt(n,s),c!==o?null:a}function ZC(e,t){return QC(e,t)||JC(e,t)}function QC(e,t){return e.right!==t.right&&e.left!==t.left}function JC(e,t){return e.top!==t.top&&e.bottom!==t.bottom}var Rg="name",Cg="text";function rp(e,t,n,i){te.call(this,e),this.postExecute("element.updateProperties",r),this.postExecute("element.updateModdleProperties",a=>{ie(a.context.element)===a.context.moddleElement&&r(a)});function r(a){var s=a.context,c=s.element,u=s.properties;if(Rg in u&&t.updateLabel(c,u[Rg]),Cg in u&&w(c,"bpmn:TextAnnotation")){var l=i.getTextAnnotationBounds({x:c.x,y:c.y,width:c.width,height:c.height},u[Cg]||"");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)||!rr(u)||zn(u)&&t.updateLabel(u,zn(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),f=s.newWaypoints||c.waypoints,p=s.oldWaypoints;return typeof l.startChanged>"u"&&(l.startChanged=!!l.connectionStart),typeof l.endChanged>"u"&&(l.endChanged=!!l.connectionEnd),KC(u,f,p,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,f;!l||!l.parent||(f=o(a),t.moveShape(l,f))}}),this.postExecute(["shape.replace"],function(a){var s=a.context,c=s.newShape,u=s.oldShape,l=ie(c);l&&rr(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,f=i.getDimensions(zn(c)||"",{box:l,style:i.getExternalStyle()}),p=Math.ceil(f.height),d=l.y!==c.y,g=c.y+c.height;s.newBounds={width:l.width,height:p,x:l.x,y:d?g-p:l.y}}}),this.postExecute("shape.resize",function(a){var s=a.context,c=s.shape,u=s.newBounds,l=s.oldBounds;if($s(c)){var f=c.label,p=Le(f),d=nP(l),g=tP(p,d),h=eP(g,l,u);t.moveShape(f,h)}})}_e(rp,te),rp.$inject=["eventBus","modeling","bpmnFactory","textRenderer"];function eP(e,t,n){var i=ya(e,t,n);return Di(ci(i,e))}function tP(e,t){if(t.length){var n=iP(e,t);return ip(e,n)}}function nP(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 iP(e,t){var n=t.map(function(r){return{line:r,distance:hg(e,r)}}),i=li(n,"distance");return i[0].line}function rP(e,t,n,i){return xg(e,t,n,i).point}function op(e,t){te.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),rP(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),f=[].concat(c.waypoints.slice(0,-1),[l]);t.updateWaypoints(c,f)}),a.forEach(function(c){var u=c.waypoints[0],l=n(i,u),f=[].concat([l],c.waypoints.slice(1));t.updateWaypoints(c,f)})}),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],f={x:l.x+c.x,y:l.y+c.y},p=[].concat(u.waypoints.slice(0,-1),[f]);t.updateWaypoints(u,p)}),a.forEach(function(u){var l=u.waypoints[0],f={x:l.x+c.x,y:l.y+c.y},p=[].concat([f],u.waypoints.slice(1));t.updateWaypoints(u,p)})})}_e(op,te),op.$inject=["eventBus","modeling"];function nc(e,t,n){var i=rc(e),r=Ag(i,t),o=i[0];return r.length?r[r.length-1]:ya(o.original||o,n,t)}function ic(e,t,n){var i=rc(e),r=Ag(i,t),o=i[i.length-1];return r.length?r[0]:ya(o.original||o,n,t)}function ap(e,t,n){var i=rc(e),r=Pg(t,n),o=i[0];return ya(o.original||o,r,t)}function sp(e,t,n){var i=rc(e),r=Pg(t,n),o=i[i.length-1];return ya(o.original||o,r,t)}function Pg(e,t){return{x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}function rc(e){var t=e.waypoints;if(!t.length)throw new Error("connection#"+e.id+": no waypoints");return t}function Ag(e,t){var n=sn(e,aP);return We(n,function(i){return oP(i,t)})}function oP(e,t){return Jt(t,e,1)==="intersect"}function aP(e){return e.original||e}function cp(e,t){te.call(this,e),this.postExecute("shape.replace",function(n){var i=n.oldShape,r=n.newShape;if(sP(i,r)){var o=cP(i);o.incoming.forEach(function(a){var s=ic(a,r,i);t.reconnectEnd(a,r,s)}),o.outgoing.forEach(function(a){var s=nc(a,r,i);t.reconnectStart(a,r,s)})}},!0)}cp.$inject=["eventBus","modeling"],_e(cp,te);function sP(e,t){return w(e,"bpmn:Participant")&&Ke(e)&&w(t,"bpmn:Participant")&&!Ke(t)}function cP(e){var t=na([e]),n=[],i=[];return t.forEach(function(r){r!==e&&(r.incoming.forEach(function(o){w(o,"bpmn:MessageFlow")&&n.push(o)}),r.outgoing.forEach(function(o){w(o,"bpmn:MessageFlow")&&i.push(o)}))},[]),{incoming:n,outgoing:i}}const uP=["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:EscalationEventDefinition","bpmn:ConditionalEventDefinition","bpmn:SignalEventDefinition"];function Tg(e){const t=ie(e);if(!w(t,"bpmn:BoundaryEvent")&&!(w(t,"bpmn:StartEvent")&&fn(t.$parent)))return!1;const n=t.get("eventDefinitions");return!n||!n.length?!1:uP.some(i=>w(n[0],i))}function Mg(e){return w(e,"bpmn:BoundaryEvent")?"cancelActivity":"isInterrupting"}function up(e,t){e.invoke(te,this),this.postExecuted("shape.replace",function(n){const i=n.context.oldShape,r=n.context.newShape,o=n.context.hints;if(!Tg(r))return;const a=Mg(r);if(o.targetElement&&o.targetElement[a]!==void 0)return;const c=ie(i).get(a),u=ie(r).get(a);c!==u&&t.updateProperties(r,{[a]:c})})}up.$inject=["injector","modeling"],_e(up,te);function lp(e,t){te.call(this,e),this.preExecute("shape.resize",function(n){var i=n.shape,r=Ze(i),o=r&&r.get("label"),a=o&&o.get("bounds");a&&t.updateModdleProperties(i,o,{bounds:void 0})},!0)}_e(lp,te),lp.$inject=["eventBus","modeling"];function pp(e,t,n){te.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(!(!w(o,"bpmn:SequenceFlow")||!w(a,"bpmn:SequenceFlow"))&&t.canConnect(o.source,a.target,o)){var s=lP(o.waypoints,a.waypoints);n.reconnectEnd(o,a.target,s)}}})}_e(pp,te),pp.$inject=["eventBus","bpmnRules","modeling"];function wo(e){return e.original||e}function lP(e,t){var n=tp(wo(e[e.length-2]),wo(e[e.length-1]),wo(t[1]),wo(t[0]));return n?[].concat(e.slice(0,e.length-1),[n],t.slice(1)):[wo(e[0]),wo(t[t.length-1])]}function fp(e,t){te.call(this,e),this.preExecute("shape.delete",function(n){var i=n.shape,r=i.parent;w(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)}fp.$inject=["eventBus","modeling"],_e(fp,te);function dp(e,t,n,i){te.call(this,e);var r=i.get("dragging",!1);function o(c){var u=c.source,l=c.target,f=c.parent;if(f){var p,d;w(c,"bpmn:SequenceFlow")&&(n.canConnectSequenceFlow(u,l)||(d=!0),n.canConnectMessageFlow(u,l)&&(p="bpmn:MessageFlow")),w(c,"bpmn:MessageFlow")&&(n.canConnectMessageFlow(u,l)||(d=!0),n.canConnectSequenceFlow(u,l)&&(p="bpmn:SequenceFlow")),d&&t.removeConnection(c),p&&t.connect(u,l,{type:p,waypoints:c.waypoints.slice()})}}function a(c){var u=c.context,l=u.connection,f=u.newSource||l.source,p=u.newTarget||l.target,d,g;d=n.canConnect(f,p),!(!d||d.type===l.type)&&(g=t.connect(f,p,{type:d.type,associationDirection:d.associationDirection,waypoints:l.waypoints.slice()}),l.parent&&t.removeConnection(l),u.connection=g,r&&s(l,g))}function s(c,u){var l=r.context(),f=l&&l.payload.previousSelection,p;!f||!f.length||(p=f.indexOf(c),p!==-1&&f.splice(p,1,u))}this.postExecuted("elements.move",function(c){var u=c.closure,l=u.allConnections;B(l,o)},!0),this.preExecute("connection.reconnect",a),this.postExecuted("element.updateProperties",function(c){var u=c.context,l=u.properties,f=u.element,p=f.businessObject,d;l.default&&(d=lt(f.outgoing,to({id:f.businessObject.default.id})),d&&t.updateProperties(d,{conditionExpression:void 0})),l.conditionExpression&&p.sourceRef.default===p&&t.updateProperties(f.source,{default:void 0})})}_e(dp,te),dp.$inject=["eventBus","modeling","bpmnRules","injector"];function oc(e,t,n,i,r,o){i.invoke(te,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=Cn(u,function(f,p){var d=t.canReplace([p],p.host||p.parent||c);return d?f.concat(d.replacements):f},[]);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=[];B(s.closure.topLevel,function(p){fn(p)?l=l.concat(p.children):l=l.concat(p)}),l.length===1&&u&&(c=u);var f=t.canReplace(l,c);f&&this._replaceElements(l,f.replacements,u)},this),this.postExecute(["shape.replace"],1500,function(a){var s=a.context,c=s.oldShape,u=s.newShape,l=c.attachers,f;l&&l.length&&(f=t.canReplace(l,u),this._replaceElements(l,f.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})})}_e(oc,te),oc.prototype._replaceElements=function(e,t){var n=this._elementRegistry,i=this._bpmnReplace,r=this._selection;B(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)},oc.$inject=["bpmnReplace","bpmnRules","elementRegistry","injector","modeling","selection"];var pP=1500,fP={width:140,height:120},hp={width:300,height:60},mp={width:60,height:300},ac={width:300,height:150},sc={width:150,height:300},kg={width:140,height:120},Og={width:100,height:40};function Dg(e){e.on("resize.start",pP,function(t){var n=t.context,i=n.shape,r=n.direction,o=n.balanced;(w(i,"bpmn:Lane")||w(i,"bpmn:Participant"))&&(n.resizeConstraints=yP(i,r,o)),w(i,"bpmn:SubProcess")&&Ke(i)&&(n.minDimensions=kg),w(i,"bpmn:TextAnnotation")&&(n.minDimensions=Og)})}Dg.$inject=["eventBus"];var sr=Math.abs,dP=Math.min,hP=Math.max;function Lg(e,t,n,i){var r=e[t];e[t]=r===void 0?n:i(n,r)}function Eo(e,t,n){return Lg(e,t,n,dP)}function So(e,t,n){return Lg(e,t,n,hP)}var mP={top:20,left:50,right:20,bottom:20},gP={top:50,left:20,right:20,bottom:20};function yP(e,t,n){var i=Kn(e),r=!0,o=!0,a=Zs(i,[i]),s=Ae(e),c={},u={},l=Yt(e),f=l?hp:mp;/n/.test(t)?u.top=s.bottom-f.height:/e/.test(t)?u.right=s.left+f.width:/s/.test(t)?u.bottom=s.top+f.height:/w/.test(t)&&(u.left=s.right-f.width),a.forEach(function(g){var h=Ae(g);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&&sr(s.top-h.bottom)<10&&So(c,"top",h.top+f.height),sr(s.top-h.top)<5&&Eo(u,"top",h.bottom-f.height)),/e/.test(t)&&(n&&sr(s.right-h.left)<10&&Eo(c,"right",h.right-f.width),sr(s.right-h.right)<5&&So(u,"right",h.left+f.width)),/s/.test(t)&&(n&&sr(s.bottom-h.top)<10&&Eo(c,"bottom",h.bottom-f.height),sr(s.bottom-h.bottom)<5&&So(u,"bottom",h.top+f.height)),/w/.test(t)&&(n&&sr(s.left-h.right)<10&&So(c,"left",h.left+f.width),sr(s.left-h.left)<5&&Eo(u,"left",h.right-f.width))});var p=i.children.filter(function(g){return!g.hidden&&!g.waypoints&&(w(g,"bpmn:FlowElement")||w(g,"bpmn:Artifact"))}),d=l?mP:gP;return p.forEach(function(g){var h=Ae(g);/n/.test(t)&&(!l||r)&&Eo(u,"top",h.top-d.top),/e/.test(t)&&(l||o)&&So(u,"right",h.right+d.right),/s/.test(t)&&(!l||o)&&So(u,"bottom",h.bottom+d.bottom),/w/.test(t)&&(l||r)&&Eo(u,"left",h.left-d.left)}),{min:u,max:c}}function Ig(e){!e||typeof e.stopPropagation!="function"||e.stopPropagation()}function Ro(e){return e.originalEvent||e.srcEvent}function gp(e){Ig(e),Ig(Ro(e))}function Nr(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 Bg(){return/mac/i.test(navigator.platform)}function Ng(e,t){return(Ro(e)||e).button===t}function cr(e){return Ng(e,0)}function vP(e){return Ng(e,1)}function va(e){var t=Ro(e)||e;return cr(e)?Bg()?t.metaKey:t.ctrlKey:!1}function cc(e){var t=Ro(e)||e;return cr(e)&&t.shiftKey}var $g=1001;function Fg(e,t){e.on("resize.start",$g+500,function(n){var i=n.context,r=i.shape;(w(r,"bpmn:Lane")||w(r,"bpmn:Participant"))&&(i.balanced=!va(n))}),e.on("resize.end",$g,function(n){var i=n.context,r=i.shape,o=i.canExecute,a=i.newBounds;if(w(r,"bpmn:Lane")||w(r,"bpmn:Participant"))return o&&(a=hm(a),t.resizeLane(r,a,i.balanced)),!1})}Fg.$inject=["eventBus","modeling"];var bP=500;function yp(e,t,n,i,r){n.invoke(te,this);function o(l){return Ve(l,["bpmn:ReceiveTask","bpmn:SendTask"])||_P(l,["bpmn:ErrorEventDefinition","bpmn:EscalationEventDefinition","bpmn:MessageEventDefinition","bpmn:SignalEventDefinition"])}function a(l){var f=e.getDefinitions(),p=f.get("rootElements");return!!lt(p,to({id:l.id}))}function s(l){if(w(l,"bpmn:ErrorEventDefinition"))return"errorRef";if(w(l,"bpmn:EscalationEventDefinition"))return"escalationRef";if(w(l,"bpmn:MessageEventDefinition"))return"messageRef";if(w(l,"bpmn:SignalEventDefinition"))return"signalRef"}function c(l){if(Ve(l,["bpmn:ReceiveTask","bpmn:SendTask"]))return l.get("messageRef");var f=l.get("eventDefinitions"),p=f[0];return p.get(s(p))}function u(l,f){if(Ve(l,["bpmn:ReceiveTask","bpmn:SendTask"]))return l.set("messageRef",f);var p=l.get("eventDefinitions"),d=p[0];return d.set(s(d),f)}this.executed(["shape.create","element.updateProperties","element.updateModdleProperties"],function(l){var f=l.shape||l.element;if(o(f)){var p=ie(f),d=c(p),g;d&&!a(d)&&(g=e.getDefinitions().get("rootElements"),Tt(g,d),l.addedRootElement=d)}},!0),this.reverted(["shape.create","element.updateProperties","element.updateModdleProperties"],function(l){var f=l.addedRootElement;if(f){var p=e.getDefinitions().get("rootElements");Ct(p,f)}},!0),t.on("copyPaste.copyElement",function(l){var f=l.descriptor,p=l.element;if(!(p.labelTarget||!o(p))){var d=ie(p),g=c(d);g&&(f.referencedRootElement=g)}}),t.on("copyPaste.pasteElement",bP,function(l){var f=l.descriptor,p=f.businessObject,d=f.referencedRootElement;d&&(a(d)||(d=i.copyElement(d,r.create(d.$type))),u(p,d),delete f.referencedRootElement)})}yp.$inject=["bpmnjs","eventBus","injector","moddleCopy","bpmnFactory"],_e(yp,te);function _P(e,t){return De(t)||(t=[t]),qi(t,function(n){return go(e,n)})}var jg=Math.max;function Hg(e){e.on("spaceTool.getMinDimensions",function(t){var n=t.shapes,i=t.axis,r=t.start,o={};return B(n,function(a){var s=a.id;w(a,"bpmn:Participant")&&(o[s]=wP(a,i,r)),w(a,"bpmn:Lane")&&(o[s]=Yt(a)?hp:mp),w(a,"bpmn:SubProcess")&&Ke(a)&&(o[s]=kg),w(a,"bpmn:TextAnnotation")&&(o[s]=Og),w(a,"bpmn:Group")&&(o[s]=fP)}),o})}Hg.$inject=["eventBus"];function xP(e){return e==="x"}function wP(e,t,n){var i=Yt(e);if(!RP(e))return i?ac:sc;var r=xP(t),o={};return r?i?o=ac:o={width:SP(e,n,r),height:sc.height}:i?o={width:ac.width,height:EP(e,n,r)}:o=sc,o}function EP(e,t,n){var i;return i=CP(e,t,n),jg(ac.height,i)}function SP(e,t,n){var i;return i=PP(e,t,n),jg(sc.width,i)}function RP(e){return!!ar(e).length}function CP(e,t,n){var i=ar(e),r;return r=vp(i,t,n),e.height-r.height+hp.height}function PP(e,t,n){var i=ar(e),r;return r=vp(i,t,n),e.width-r.width+mp.width}function vp(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=ar(r),o.length?vp(o,t,n):r}var zg="_plane";function Gg(e){var t=e.id;return AP(t)}function _i(e){var t=e.id;return w(e,"bpmn:SubProcess")?Vg(t):t}function $r(e){return Vg(e)}function uc(e){var t=Ze(e);return w(t,"bpmndi:BPMNPlane")}function Vg(e){return e+zg}function AP(e){return e.replace(new RegExp(zg+"$"),"")}var Wg=400,TP=600,Ug={x:180,y:160};function Ni(e,t,n,i,r,o,a){te.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(f){return w(f,"bpmn:SubProcess")&&!Ke(f)}function u(f){var p=f.shape,d=f.newRootElement,g=ie(p);d=s._addDiagram(d||g),f.newRootElement=e.addRootElement(d)}function l(f){var p=f.shape,d=ie(p);s._removeDiagram(d);var g=f.newRootElement=a.get(_i(d));e.removeRootElement(g)}this.executed("shape.create",function(f){var p=f.shape;c(p)&&u(f)},!0),this.postExecuted("elements.create",function(f){var p=f.elements;B(p,function(d){if(c(d)){var g=a.get(_i(d));if(!(!g||!d.children||!d.children.length)){var h=qg(d);s._showRecursively(h),s._moveChildrenToShape(h,g)}}})},!0),this.reverted("shape.create",function(f){var p=f.shape;c(p)&&l(f)},!0),this.preExecute("shape.delete",function(f){var p=f.shape;!w(p,"bpmn:SubProcess")||!Ke(p)||B(ca([p]),d=>{n.removeShape(d.annotation)})},!0),this.preExecuted("shape.delete",function(f){var p=f.shape;if(c(p)){var d=a.get(_i(p));d&&n.removeElements(d.children.slice())}},!0),this.executed("shape.delete",function(f){var p=f.shape;c(p)&&l(f)},!0),this.reverted("shape.delete",function(f){var p=f.shape;c(p)&&u(f)},!0),this.preExecuted("shape.replace",function(f){var p=f.oldShape,d=f.newShape;!c(p)||!c(d)||(f.oldRoot=e.removeRootElement(_i(p)))},!0),this.postExecuted("shape.replace",function(f){var p=f.newShape,d=f.oldRoot,g=e.findRoot(_i(p));if(!(!d||!g)){var h=d.children;n.moveElements(h,{x:0,y:0},g)}},!0),this.executed("element.updateProperties",function(f){var p=f.element;if(w(p,"bpmn:SubProcess")){var d=f.properties,g=f.oldProperties,h=g.id,m=d.id;if(h!==m){if(uc(p)){a.updateId(p,$r(m)),a.updateId(h,m);return}var x=a.get($r(h));x&&a.updateId($r(h),$r(m))}}},!0),this.reverted("element.updateProperties",function(f){var p=f.element;if(w(p,"bpmn:SubProcess")){var d=f.properties,g=f.oldProperties,h=g.id,m=d.id;if(h!==m){if(uc(p)){a.updateId(p,$r(h)),a.updateId(m,h);return}var x=a.get($r(m));x&&a.updateId(x,$r(h))}}},!0),t.on("element.changed",function(f){var p=f.element;if(uc(p)){var d=p,g=a.get(Gg(d));!g||g===d||t.fire("element.changed",{element:g})}}),this.executed("shape.toggleCollapse",Wg,function(f){var p=f.shape;w(p,"bpmn:SubProcess")&&(Ke(p)?l(f):(u(f),s._showRecursively(p.children)))},!0),this.reverted("shape.toggleCollapse",Wg,function(f){var p=f.shape;w(p,"bpmn:SubProcess")&&(Ke(p)?l(f):(u(f),s._showRecursively(p.children)))},!0),this.postExecuted("shape.toggleCollapse",TP,function(f){var p=f.shape;if(w(p,"bpmn:SubProcess")){var d=f.newRootElement;if(d)if(Ke(p))s._moveChildrenToShape(d.children.slice(),p),B(ca(p.children),h=>{n.moveShape(h.annotation,{x:0,y:0},p.parent),B(h.associations,m=>{n.moveConnection(m,{x:0,y:0},p.parent)})});else{s._disconnectSharedAnnotations(p);var g=qg(p);s._moveChildrenToShape(g,d)}}},!0),t.on("copyPaste.createTree",function(f){var p=f.element,d=f.children;if(c(p)){var g=_i(p),h=a.get(g);h&&d.push.apply(d,h.children)}}),t.on("copyPaste.copyElement",function(f){var p=f.descriptor,d=f.element,g=f.elements,h=d.parent,m=w(Ze(h),"bpmndi:BPMNPlane");if(m){var x=Gg(h),y=lt(g,function(_){return _.id===x});y&&(p.parent=y.id)}}),t.on("copyPaste.pasteElement",function(f){var p=f.descriptor;p.parent&&(c(p.parent)||p.parent.hidden)&&(p.hidden=!0)})}_e(Ni,te),Ni.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=Dt(i),o;if(!t.x)o={x:Ug.x-r.x,y:Ug.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})}},Ni.prototype._disconnectSharedAnnotations=function(e){var t=this._modeling,n=new Set(Nm(e).map(i=>i.annotation));n.size&&B(ca(e.children),i=>{n.has(i.annotation)&&B(i.associations,r=>{t.removeConnection(r)})})},Ni.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},Ni.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},Ni.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:_i(e),type:e.$type,di:i,businessObject:e,collapsed:!0});return o},Ni.prototype._removeDiagram=function(e){var t=this._bpmnjs,n=t.getDefinitions().diagrams,i=lt(n,function(r){return r.plane.bpmnElement.id===e.id});return n.splice(n.indexOf(i),1),i},Ni.$inject=["canvas","eventBus","modeling","elementFactory","bpmnFactory","bpmnjs","elementRegistry"];function MP(e){var t=[];return B(ca(e),n=>{t.push(n.annotation),t.push.apply(t,n.associations)}),t}function qg(e){return e.children.slice().concat(MP(e.children)).concat(kP(e))}function kP(e){return El(e.children||[]).reduce(function(t,n){return n.label&&n.label.parent!==e&&t.push(n.label),t},[])}function bp(e,t){e.invoke(te,this),this.postExecuted("shape.replace",function(n){var i=n.context.oldShape,r=n.context.newShape;if(!(!w(r,"bpmn:SubProcess")||w(r,"bpmn:AdHocSubProcess")||!(w(i,"bpmn:Task")||w(i,"bpmn:CallActivity"))||!Ke(r))){var o=OP(r);t.createShape({type:"bpmn:StartEvent"},o,r)}})}bp.$inject=["injector","modeling"],_e(bp,te);function OP(e){return{x:e.x+e.width/6,y:e.y+e.height/2}}function _p(e,t){te.call(this,e),this.preExecute("connection.create",function(n){const{target:i}=n;w(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&&w(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(!(!w(r,"bpmn:TextAnnotation")||o.autoResize)){var a=i.newBounds,s=t.getTextAnnotationBounds(a,zn(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}}})}_e(_p,te),_p.$inject=["eventBus","textRenderer"];function xp(e,t){te.call(this,e),this.postExecuted("shape.toggleCollapse",1500,function(n){var i=n.shape;if(Ke(i))return;var r=na(i);r.forEach(function(a){var s=a.incoming.slice(),c=a.outgoing.slice();B(s,function(u){o(u,!0)}),B(c,function(u){o(u,!1)})});function o(a,s){r.indexOf(a.source)!==-1&&r.indexOf(a.target)!==-1||w(a,"bpmn:Association")&&(w(a.source,"bpmn:TextAnnotation")||w(a.target,"bpmn:TextAnnotation"))||(s?t.reconnectEnd(a,i,Le(i)):t.reconnectStart(a,i,Le(i)))}},!0)}_e(xp,te),xp.$inject=["eventBus","modeling"];var wp=500;function Ep(e,t,n){te.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,f;return l=DP(c).concat([a]),f=tg(l),f?(u.width=Math.max(f.width,u.width),u.height=Math.max(f.height,u.height),u.x=f.x+(f.width-u.width)/2,u.y=f.y+(f.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"],wp,function(a){var s=a.context,c=s.shape;w(c,"bpmn:SubProcess")&&(c.collapsed?Ze(c).isExpanded=!1:(i(c.children),Ze(c).isExpanded=!0))}),this.reverted(["shape.toggleCollapse"],wp,function(a){var s=a.context,c=s.shape;c.collapsed?Ze(c).isExpanded=!1:Ze(c).isExpanded=!0}),this.postExecuted(["shape.toggleCollapse"],wp,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"})})}_e(Ep,te),Ep.$inject=["eventBus","elementFactory","modeling"];function DP(e){return e.filter(function(t){return!t.hidden})}function Sp(e,t,n,i){t.invoke(te,this),this.preExecute("shape.delete",function(r){var o=r.context,a=o.shape,s=a.businessObject;Ge(a)||(w(a,"bpmn:Participant")&&Ke(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;w(r,"bpmn:Collaboration")&&n.ids.unclaim(o.id)})}_e(Sp,te),Sp.$inject=["canvas","injector","moddle","modeling"];function Rp(e,t){te.call(this,e),this.preExecute("connection.delete",function(n){var i=n.context,r=i.connection,o=r.source;LP(r,o)&&t.updateProperties(o,{default:null})})}_e(Rp,te),Rp.$inject=["eventBus","modeling"];function LP(e,t){if(!w(e,"bpmn:SequenceFlow"))return!1;var n=ie(t),i=ie(e);return n.get("default")===i}var IP=500,BP=5e3,Yg=["shape.create","shape.delete","shape.move","shape.resize"],Kg=[...Yg,"spaceTool","lane.add","lane.resize","lane.split","elements.create","elements.delete","elements.move"];function Cp(e,t){te.call(this,e);var n;function i(){return n=n||new NP,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(Kg,BP,function(){i()}),this.postExecuted(Kg,IP,function(){o()}),this.preExecute(Yg,function(a){var s=a.context,c=s.shape,u=r();!c||c.labelTarget||(w(c,"bpmn:Lane")&&u.addLane(c),w(c,"bpmn:FlowNode")&&u.addFlowNode(c))})}Cp.$inject=["eventBus","modeling"],_e(Cp,te);function NP(){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 $P=500,FP=5e3,Xg=["connection.create","connection.delete","connection.layout","connection.move","connection.reconnect","connection.updateWaypoints","shape.create","shape.delete","shape.move","shape.resize"],Zg=[...Xg,"elements.create","elements.delete","elements.move","label.create","spaceTool"];function Pp(e,t){te.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.updateCategoryValueRefs(Array.from(n.affectedFlowElements),Array.from(n.affectedGroupEntries.values())),n=null),a}this.preExecute(Zg,FP,function(){i()}),this.postExecuted(Zg,$P,function(){o()}),this.preExecute(Xg,function(a){var s=a.context.connection||a.context.shape,c=r();!s||s.labelTarget||(w(s,"bpmn:FlowElement")&&c.addFlowElement(s),w(s,"bpmn:Group")&&c.addGroup(s))}),this.preExecute("label.create",function(a){var s=a.context.labelTarget;w(s,"bpmn:Group")&&r().addGroup(s)})}Pp.$inject=["eventBus","modeling"],_e(Pp,te);function jP(){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 Ap(e,t){te.call(this,e),this.postExecuted("elements.create",function(n){const i=n.context,r=i.elements;for(const o of r)HP(o)&&!GP(o)&&t.updateProperties(o,{isForCompensation:void 0})})}_e(Ap,te),Ap.$inject=["eventBus","modeling"];function HP(e){const t=ie(e);return t&&t.isForCompensation}function zP(e){return e&&w(e,"bpmn:BoundaryEvent")&&go(e,"bpmn:CompensateEventDefinition")}function GP(e){return e.incoming.filter(n=>zP(n.source)).length>0}const VP={__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",Bl],appendBehavior:["type",Nl],associationBehavior:["type",Fl],attachEventBehavior:["type",Vs],artifactBehavior:["type",$l],boundaryEventBehavior:["type",jl],categoryRootElementReferenceBehavior:["type",Hl],compensateBoundaryEventBehaviour:["type",zl],createBehavior:["type",Gl],createDataObjectBehavior:["type",Vl],createParticipantBehavior:["type",ql],dataInputAssociationBehavior:["type",Yl],dataStoreBehavior:["type",Kl],deleteLaneBehavior:["type",Xl],detachEventBehavior:["type",Qs],dropOnFlowBehavior:["type",Ql],eventBasedGatewayBehavior:["type",Jl],fixHoverBehavior:["type",cg],groupBehavior:["type",ep],importDockingFix:["type",lg],isHorizontalFix:["type",np],labelBehavior:["type",rp],layoutConnectionBehavior:["type",op],messageFlowBehavior:["type",cp],nonInterruptingBehavior:["type",up],removeElementBehavior:["type",pp],removeEmbeddedLabelBoundsBehavior:["type",lp],removeParticipantBehavior:["type",fp],replaceConnectionBehavior:["type",dp],replaceElementBehaviour:["type",oc],resizeBehavior:["type",Dg],resizeLaneBehavior:["type",Fg],rootElementReferenceBehavior:["type",yp],spaceToolBehavior:["type",Hg],subProcessPlaneBehavior:["type",Ni],subProcessStartEventBehavior:["type",bp],textAnnotationBehavior:["type",_p],toggleCollapseConnectionBehaviour:["type",xp],toggleElementCollapseBehaviour:["type",Ep],unclaimIdBehavior:["type",Sp],unsetDefaultFlowBehavior:["type",Rp],updateFlowNodeRefsBehavior:["type",Cp],updateCategoryValueRefsBehavior:["type",Pp],setCompensationActivityAfterPasteBehavior:["type",Ap]};function Tp(e){this._commandStack=e.get("commandStack",!1)}Tp.$inject=["injector"],Tp.prototype.allowed=function(e,t){var n=!0,i=this._commandStack;return i&&(n=i.canExecute(e,t)),n===void 0?!0:n};const xi={__init__:["rules"],rules:["type",Tp]};function Xn(e){te.call(this,e),this.init()}Xn.$inject=["eventBus"],_e(Xn,te),Xn.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)})},Xn.prototype.init=function(){};function Qg(e,t){var n=Jt(e,t,-15);return n!=="intersect"?n:null}function tn(e){Xn.call(this,e)}_e(tn,Xn),tn.$inject=["eventBus"],tn.prototype.init=function(){this.addRule("connection.start",function(e){var t=e.source;return WP(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 pc(t,n)}finally{r&&(n.parent=null)}}),this.addRule("connection.reconnect",function(e){var t=e.connection,n=e.source,i=e.target;return pc(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 py(t,n,i)}),this.addRule("elements.create",function(e){var t=e.elements,n=e.position,i=e.target;return ot(i)&&!fc(t,i)?!1:Pr(t,function(r){return ot(r)?pc(r.source,r.target,r):r.host?ba(r,r.host,null,n):Dp(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 oy(a)&&!n.includes(a.host)})?!1:ba(n,t,null,i)||uy(n,t,i)||ly(n,t)||fc(n,t)}),this.addRule("shape.create",function(e){return Dp(e.shape,e.target,e.source,e.position)}),this.addRule("shape.attach",function(e){return ba(e.shape,e.target,null,e.position)}),this.addRule("element.copy",function(e){var t=e.element,n=e.elements;return gy(n,t)})},tn.prototype.canConnectMessageFlow=hy,tn.prototype.canConnectSequenceFlow=my,tn.prototype.canConnectDataAssociation=Lp,tn.prototype.canConnectAssociation=fy,tn.prototype.canConnectCompensationAssociation=dy,tn.prototype.canMove=ly,tn.prototype.canAttach=ba,tn.prototype.canReplace=uy,tn.prototype.canDrop=Co,tn.prototype.canInsert=fc,tn.prototype.canCreate=Dp,tn.prototype.canConnect=pc,tn.prototype.canResize=py,tn.prototype.canCopy=gy;function WP(e){return Mp(e)?null:Ve(e,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference","bpmn:Group","bpmn:TextAnnotation"])}function Mp(e){return!e||Ge(e)}function Jg(e){do{if(w(e,"bpmn:Process"))return ie(e);if(w(e,"bpmn:Participant"))return ie(e).processRef||ie(e)}while(e=e.parent)}function kp(e){return w(e,"bpmn:TextAnnotation")}function Op(e){return w(e,"bpmn:Group")&&!e.labelTarget}function ey(e){return w(e,"bpmn:BoundaryEvent")&&wi(e,"bpmn:CompensateEventDefinition")}function lc(e){return ie(e).isForCompensation}function UP(e,t){var n=Jg(e),i=Jg(t);return n===i}function qP(e){return w(e,"bpmn:InteractionNode")&&!w(e,"bpmn:BoundaryEvent")&&(!w(e,"bpmn:Event")||w(e,"bpmn:ThrowEvent")&&iy(e,"bpmn:MessageEventDefinition"))}function YP(e){return w(e,"bpmn:InteractionNode")&&!lc(e)&&(!w(e,"bpmn:Event")||w(e,"bpmn:CatchEvent")&&iy(e,"bpmn:MessageEventDefinition"))&&!(w(e,"bpmn:BoundaryEvent")&&!wi(e,"bpmn:MessageEventDefinition"))}function ty(e){for(var t=e;t=t.parent;){if(w(t,"bpmn:FlowElementsContainer"))return ie(t);if(w(t,"bpmn:Participant"))return ie(t).processRef}return null}function ny(e,t){var n=ty(e),i=ty(t);return n===i}function wi(e,t){var n=ie(e);return!!lt(n.eventDefinitions||[],function(i){return w(i,t)})}function iy(e,t){var n=ie(e);return(n.eventDefinitions||[]).every(function(i){return w(i,t)})}function KP(e){return w(e,"bpmn:FlowNode")&&!w(e,"bpmn:EndEvent")&&!fn(e)&&!(w(e,"bpmn:IntermediateThrowEvent")&&wi(e,"bpmn:LinkEventDefinition"))&&!ey(e)&&!lc(e)}function XP(e){return w(e,"bpmn:FlowNode")&&!w(e,"bpmn:StartEvent")&&!w(e,"bpmn:BoundaryEvent")&&!fn(e)&&!(w(e,"bpmn:IntermediateCatchEvent")&&wi(e,"bpmn:LinkEventDefinition"))&&!lc(e)}function ZP(e){return w(e,"bpmn:ReceiveTask")||w(e,"bpmn:IntermediateCatchEvent")&&(wi(e,"bpmn:MessageEventDefinition")||wi(e,"bpmn:TimerEventDefinition")||wi(e,"bpmn:ConditionalEventDefinition")||wi(e,"bpmn:SignalEventDefinition"))}function QP(e){for(var t=[];e;)e=e.parent,e&&t.push(e);return t}function ry(e,t){var n=QP(t);return n.indexOf(e)!==-1}function pc(e,t,n){if(Mp(e)||Mp(t))return null;if(!w(n,"bpmn:DataAssociation")){if(hy(e,t))return{type:"bpmn:MessageFlow"};if(my(e,t))return{type:"bpmn:SequenceFlow"}}var i=Lp(e,t);return i||(dy(e,t)?{type:"bpmn:Association",associationDirection:"One"}:fy(e,t)?{type:"bpmn:Association",associationDirection:"None"}:!1)}function Co(e,t){return Ge(e)||Op(e)?!0:w(t,"bpmn:Participant")&&!Ke(t)?!1:w(e,"bpmn:Participant")?w(t,"bpmn:Process")||w(t,"bpmn:Collaboration"):Ve(e,["bpmn:DataInput","bpmn:DataOutput"])&&e.parent?t===e.parent:w(e,"bpmn:Lane")?w(t,"bpmn:Participant")||w(t,"bpmn:Lane"):w(e,"bpmn:BoundaryEvent")&&!JP(e)?!1:w(e,"bpmn:FlowElement")&&!w(e,"bpmn:DataStoreReference")?w(t,"bpmn:FlowElementsContainer")?Ke(t):Ve(t,["bpmn:Participant","bpmn:Lane"]):w(e,"bpmn:DataStoreReference")&&w(t,"bpmn:Collaboration")?qi(ie(t).get("participants"),function(n){return!!n.get("processRef")}):Ve(e,["bpmn:Artifact","bpmn:DataAssociation","bpmn:DataStoreReference"])?Ve(t,["bpmn:Collaboration","bpmn:Lane","bpmn:Participant","bpmn:Process","bpmn:SubProcess"]):w(e,"bpmn:MessageFlow")?w(t,"bpmn:Collaboration")||e.source.parent==t||e.target.parent==t:!1}function JP(e){return ie(e).cancelActivity&&(ay(e)||sy(e))}function oy(e){return!Ge(e)&&w(e,"bpmn:BoundaryEvent")}function eA(e){return w(e,"bpmn:Lane")}function tA(e){return oy(e)||w(e,"bpmn:IntermediateThrowEvent")&&ay(e)?!0:w(e,"bpmn:IntermediateCatchEvent")&&sy(e)}function ay(e){var t=ie(e);return t&&!(t.eventDefinitions&&t.eventDefinitions.length)}function sy(e){return cy(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])}function cy(e,t){return t.some(function(n){return wi(e,n)})}function nA(e){return w(e,"bpmn:ReceiveTask")&&lt(e.incoming,function(t){return w(t.source,"bpmn:EventBasedGateway")})}function ba(e,t,n,i){if(Array.isArray(e)||(e=[e]),e.length!==1)return!1;var r=e[0];return Ge(r)||!tA(r)||fn(t)||!w(t,"bpmn:Activity")||lc(t)||i&&!Qg(i,t)||nA(t)?!1:"attach"}function uy(e,t,n){if(!t)return!1;var i={replacements:[]};return B(e,function(r){fn(t)||w(r,"bpmn:StartEvent")&&r.type!=="label"&&Co(r,t)&&(pR(r)||i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"}),(fR(r)||dR(r)||hR(r))&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"}),cy(r,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])&&w(t,"bpmn:SubProcess")&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"})),w(t,"bpmn:Transaction")||wi(r,"bpmn:CancelEventDefinition")&&r.type!=="label"&&(w(r,"bpmn:EndEvent")&&Co(r,t)&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:EndEvent"}),w(r,"bpmn:BoundaryEvent")&&ba(r,t,null,n)&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:BoundaryEvent"}))}),i.replacements.length?i:!1}function ly(e,t){return qi(e,eA)?!1:t===void 0?!0:t===null?!1:e.every(function(n){return Co(n,t)})}function Dp(e,t,n,i){return t?Ge(e)||Op(e)?!0:Co(e,t)||fc(e,t):!1}function py(e,t,n){return w(e,"bpmn:SubProcess")?Ke(e)&&(!t||t.width>=100&&t.height>=80):w(e,"bpmn:Lane")||w(e,"bpmn:Participant")?!0:kp(e)?n?n==="e"||n==="w":!0:Op(e)?!0:Ge(e)?n?n==="e"||n==="w":!0:!1}function iA(e,t){var n=kp(e),i=kp(t);return(n||i)&&n!==i}function fy(e,t){return ry(t,e)||ry(e,t)?!1:iA(e,t)?!0:!!Lp(e,t)}function dy(e,t){return ny(e,t)&&ey(e)&&w(t,"bpmn:Activity")&&!oA(t,e)&&!fn(t)}function hy(e,t){return vy(e)&&!vy(t)?!1:qP(e)&&YP(t)&&!UP(e,t)}function my(e,t){return KP(e)&&XP(t)&&ny(e,t)&&!(w(e,"bpmn:EventBasedGateway")&&!ZP(t))}function Lp(e,t){return Ve(e,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&Ve(t,["bpmn:Activity","bpmn:ThrowEvent"])?{type:"bpmn:DataInputAssociation"}:Ve(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&Ve(e,["bpmn:Activity","bpmn:CatchEvent"])?{type:"bpmn:DataOutputAssociation"}:!1}function fc(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:Ve(t,["bpmn:SequenceFlow","bpmn:MessageFlow"])&&!Ge(t)&&w(e,"bpmn:FlowNode")&&!w(e,"bpmn:BoundaryEvent")&&Co(e,t.parent)}function Ip(e,t){return e&&t&&e.indexOf(t)!==-1}function gy(e,t){return Ge(t)?!0:!(w(t,"bpmn:Lane")&&!Ip(e,t.parent)||w(t,"bpmn:MessageFlow")&&!rA(e,t))}function rA(e,t){var n=yy(t.source),i=yy(t.target);return Ip(e,n)&&Ip(e,i)}function yy(e){for(;e;e=e.parent)if(w(e,"bpmn:Participant"))return e;return null}function vy(e){return bo(e,"bpmn:Process")||bo(e,"bpmn:Collaboration")}function oA(e,t){return e.attachers.includes(t)}const aA={__depends__:[xi],__init__:["bpmnRules"],bpmnRules:["type",tn]};var sA=2e3;function by(e,t){e.on("saveXML.start",sA,n);function n(){var i=t.getRootElements();B(i,function(r){var o=Ze(r),a,s;a=na([r]),a=We(a,function(c){return c!==r&&!c.labelTarget}),s=sn(a,Ze),o.set("planeElement",s)})}}by.$inject=["eventBus","canvas"];const cA={__init__:["bpmnDiOrdering"],bpmnDiOrdering:["type",by]};function dc(e){te.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)})}dc.prototype.getOrdering=function(e,t){return null},_e(dc,te);function Bp(e,t){dc.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=lt(n,function(c){return Ve(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&&!Ve(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||w(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=md(s.children,function(f){return!a.labelTarget&&f.labelTarget?!1:c.level<r(f).level});return l!==-1&&u!==-1&&u<l&&(l-=1),{index:l,parent:s}}}Bp.$inject=["eventBus","canvas"],_e(Bp,dc);const uA={__init__:["bpmnOrderingProvider"],bpmnOrderingProvider:["type",Bp]};function _a(){}_a.prototype.get=function(){return this._data},_a.prototype.set=function(e){this._data=e},_a.prototype.clear=function(){var e=this._data;return delete this._data,e},_a.prototype.isEmpty=function(){return!this._data};const lA={clipboard:["type",_a]};var _y=1500;function xy(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",_y,function(s){o(s)})}),(function(){var a,s;t.on("element.hover",function(c){a=c.gfx,s=c.element}),t.on("element.hover",_y,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=Nr(a),c=document.elementFromPoint(s.x,s.y),pA(c)}}xy.$inject=["elementRegistry","eventBus","injector"];function pA(e){return kr(e,"svg, .djs-element",!0)}const fA={__init__:["hoverFix"],hoverFix:["type",xy]};function dA(e){return!0}function hc(e){return cr(e)||vP(e)}var wy=500;function Ey(e,t,n){var i=this;function r(T,j,k){if(!s(T,j)){var D,z,ce;k?z=t.getGraphics(k):(D=j.delegateTarget||j.target,D&&(z=D,k=t.get(z))),!(!z||!k)&&(ce=e.fire(T,{element:k,gfx:z,originalEvent:j}),ce===!1&&(j.stopPropagation(),j.preventDefault()))}}var o={};function a(T){return o[T]}function s(T,j){var k=u[T]||cr;return!k(j)}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":dA,"element.mousedown":hc,"element.mouseup":hc,"element.click":hc,"element.dblclick":hc};function l(T,j,k){var D=c[T];if(!D)throw new Error("unmapped DOM event name <"+T+">");return r(D,j,k)}var f="svg, .djs-element";function p(T,j,k,D){var z=o[k]=function(ce){r(k,ce)};D&&(u[k]=D),z.$delegate=An.bind(T,f,j,z)}function d(T,j,k){var D=a(k);D&&An.unbind(T,j,D.$delegate)}function g(T){B(c,function(j,k){p(T,k,j)})}function h(T){B(c,function(j,k){d(T,k,j)})}e.on("canvas.destroy",function(T){h(T.svg)}),e.on("canvas.init",function(T){g(T.svg)}),e.on(["shape.added","connection.added"],function(T){var j=T.element,k=T.gfx;e.fire("interactionEvents.createHit",{element:j,gfx:k})}),e.on(["shape.changed","connection.changed"],wy,function(T){var j=T.element,k=T.gfx;e.fire("interactionEvents.updateHit",{element:j,gfx:k})}),e.on("interactionEvents.createHit",wy,function(T){var j=T.element,k=T.gfx;i.createDefaultHit(j,k)}),e.on("interactionEvents.updateHit",function(T){var j=T.element,k=T.gfx;i.updateDefaultHit(j,k)});var m=P("djs-hit djs-hit-stroke"),x=P("djs-hit djs-hit-click-stroke"),y=P("djs-hit djs-hit-all"),_=P("djs-hit djs-hit-no-move"),S={all:y,"click-stroke":x,stroke:m,"no-move":_};function P(T,j){return j=V({stroke:"white",strokeWidth:15},j||{}),n.cls(T,["no-fill","no-border"],j)}function C(T,j){var k=S[j];if(!k)throw new Error("invalid hit type <"+j+">");return xe(T,k),T}function L(T,j){Fe(T,j)}this.removeHits=function(T){var j=Rs(".djs-hit",T);B(j,Ht)},this.createDefaultHit=function(T,j){var k=T.waypoints,D=T.isFrame,z;return k?this.createWaypointsHit(j,k):(z=D?"stroke":"all",this.createBoxHit(j,z,{width:T.width,height:T.height}))},this.createWaypointsHit=function(T,j){var k=ta(j);return C(k,"stroke"),L(T,k),k},this.createBoxHit=function(T,j,k){k=V({x:0,y:0},k);var D=Pe("rect");return C(D,j),xe(D,k),L(T,D),D},this.updateDefaultHit=function(T,j){var k=rt(".djs-hit",j);if(k)return T.waypoints?wl(k,T.waypoints):xe(k,{width:T.width,height:T.height}),k},this.fire=r,this.triggerMouseEvent=l,this.mouseHandler=a,this.registerEvent=p,this.unregisterEvent=d}Ey.$inject=["eventBus","elementRegistry","styles"];const mc={__init__:["interactionEvents"],interactionEvents:["type",Ey]};function Po(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)})}Po.$inject=["eventBus","canvas"],Po.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()})}},Po.prototype.get=function(){return Array.from(this._selectedElements)},Po.prototype.isSelected=function(e){return this._selectedElements.has(e)},Po.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?B(e,o=>{this._selectedElements.add(o)}):this._selectedElements=new Set(e),this._eventBus.fire("selection.changed",{oldSelection:n,newSelection:this.get()})};var Sy="hover",Ry="selected";function Cy(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,Sy)}),t.on("element.out",function(r){i(r.element,Sy)}),t.on("selection.changed",function(r){function o(u){i(u,Ry)}function a(u){n(u,Ry)}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)})}Cy.$inject=["canvas","eventBus"];function Py(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(hA))}}),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=lt(o,function(c){return a.id===c.id});s||t.select(a)}),e.on("element.click",function(r){if(cr(r)){var o=r.element;o===n.getRootElement()&&(o=null);var a=t.isSelected(o),s=t.get().length>1,c=cc(r);if(a&&s)return c?t.deselect(o):t.select(o);a?t.deselect(o):t.select(o,c)}})}Py.$inject=["eventBus","selection","canvas","elementRegistry"];function hA(e){return!e.hidden}const Zn={__init__:["selectionVisuals","selectionBehavior"],__depends__:[mc],selection:["type",Po],selectionVisuals:["type",Cy],selectionBehavior:["type",Py]};var mA=/^djs-cursor-.*$/;function gc(e){var t=bt(document.body);t.removeMatching(mA),e&&t.add("djs-cursor-"+e)}function Ay(){gc(null)}var gA=5e3;function Ty(e,t){t=t||"element.click";function n(){return!1}return e.once(t,gA,n),function(){e.off(t,n)}}var yA=["c","C"],vA=["v","V"],bA=["d","D"],_A=["x","X"],xA=["y","Y"],My=["z","Z"];function wA(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function kn(e){return e.altKey?!1:e.ctrlKey||e.metaKey}function zt(e,t){return e=De(e)?e:[e],e.indexOf(t.key)!==-1||e.indexOf(t.code)!==-1}function Np(e){return e.shiftKey}function EA(e){return kn(e)&&zt(yA,e)}function SA(e){return kn(e)&&zt(vA,e)}function RA(e){return kn(e)&&zt(bA,e)}function CA(e){return kn(e)&&zt(_A,e)}function PA(e){return kn(e)&&!Np(e)&&zt(My,e)}function AA(e){return kn(e)&&(zt(xA,e)||zt(My,e)&&Np(e))}var Ao=Math.round,ky="djs-drag-active";function Fr(e){e.preventDefault()}function TA(e){return typeof TouchEvent<"u"&&e instanceof TouchEvent}function MA(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function Oy(e,t,n,i){var r={threshold:5,trapClick:!0},o;function a(_){var S=t.viewbox(),P=t._container.getBoundingClientRect();return{x:S.x+(_.x-P.left)/S.scale,y:S.y+(_.y-P.top)/S.scale}}function s(_,S){S=S||o;var P=e.createEvent(V({},S.payload,S.data,{isTouch:S.isTouch}));return e.fire("drag."+_,P)===!1?!1:e.fire(S.prefix+"."+_,P)}function c(_){var S=_.filter(function(P){return i.get(P.id)});S.length&&n.select(S)}function u(_,S){var P=o.payload,C=o.displacement,L=o.globalStart,T=Nr(_),j=ci(T,L),k=o.localStart,D=a(T),z=ci(D,k);if(!o.active&&(S||MA(j)>o.threshold)){if(V(P,{x:Ao(k.x+C.x),y:Ao(k.y+C.y),dx:0,dy:0},{originalEvent:_}),s("start")===!1)return m();o.active=!0,o.keepSelection||(P.previousSelection=n.get(),n.select(null)),o.cursor&&gc(o.cursor),t.addMarker(t.getRootElement(),ky)}gp(_),o.active&&(V(P,{x:Ao(D.x+C.x),y:Ao(D.y+C.y),dx:Ao(z.x),dy:Ao(z.y)},{originalEvent:_}),s("move"))}function l(_){var S,P=!0;o.active&&(_&&(o.payload.originalEvent=_,gp(_)),P=s("end")),P===!1&&s("rejected"),S=x(P!==!0),s("ended",S)}function f(_){zt("Escape",_)&&(Fr(_),m())}function p(_){var S;o.active&&(S=Ty(e),setTimeout(S,400),Fr(_)),l(_)}function d(_){u(_)}function g(_){var S=o.payload;S.hoverGfx=_.gfx,S.hover=_.element,s("hover")}function h(_){s("out");var S=o.payload;S.hoverGfx=null,S.hover=null}function m(_){var S;if(o){var P=o.active;P&&s("cancel"),S=x(_),P&&s("canceled",S)}}function x(_){var S,P;s("cleanup"),Ay(),o.trapClick?P=p:P=l,$e.unbind(document,"mousemove",u),$e.unbind(document,"dragstart",Fr),$e.unbind(document,"selectstart",Fr),$e.unbind(document,"mousedown",P,!0),$e.unbind(document,"mouseup",P,!0),$e.unbind(document,"keyup",f),$e.unbind(document,"touchstart",d,!0),$e.unbind(document,"touchcancel",m,!0),$e.unbind(document,"touchmove",u,!0),$e.unbind(document,"touchend",l,!0),e.off("element.hover",g),e.off("element.out",h),t.removeMarker(t.getRootElement(),ky);var C=o.payload.previousSelection;return _!==!1&&C&&!n.get().length&&c(C),S=o,o=null,S}function y(_,S,P,C){o&&m(!1),typeof S=="string"&&(C=P,P=S,S=null),C=V({},r,C||{});var L=C.data||{},T,j,k,D,z;if(C.trapClick?D=p:D=l,_?(T=Ro(_)||_,j=Nr(_),gp(_),T.type==="dragstart"&&Fr(T)):(T=null,j={x:0,y:0}),k=a(j),S||(S=k),z=TA(T),o=V({prefix:P,data:L,payload:{},globalStart:j,displacement:ci(S,k),localStart:k,isTouch:z},C),C.manual||(z?($e.bind(document,"touchstart",d,!0),$e.bind(document,"touchcancel",m,!0),$e.bind(document,"touchmove",u,!0),$e.bind(document,"touchend",l,!0)):($e.bind(document,"mousemove",u),$e.bind(document,"dragstart",Fr),$e.bind(document,"selectstart",Fr),$e.bind(document,"mousedown",D,!0),$e.bind(document,"mouseup",D,!0)),$e.bind(document,"keyup",f),e.on("element.hover",g),e.on("element.out",h)),s("init")===!1)return m(),!1;C.autoActivate&&u(_,!0)}e.on("diagram.destroy",m),this.init=y,this.move=u,this.hover=g,this.out=h,this.end=l,this.cancel=m,this.context=function(){return o},this.setOptions=function(_){V(r,_)}}Oy.$inject=["eventBus","canvas","selection","elementRegistry"];const $i={__depends__:[fA,Zn],dragging:["type",Oy]};function To(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(Math.random()*1e9)+"-"}To.prototype.next=function(){return this._prefix+ ++this._counter};const kA=new To("ps");var OA=["marker-start","marker-mid","marker-end"],DA=["circle","ellipse","line","path","polygon","polyline","path","rect"];function ur(e,t,n,i){this._elementRegistry=e,this._canvas=n,this._styles=i}ur.$inject=["elementRegistry","eventBus","canvas","styles"],ur.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")},ur.prototype.getGfx=function(e){return this._elementRegistry.getGraphics(e)},ur.prototype.addDragger=function(e,t,n,i="djs-dragger"){n=n||this.getGfx(e);var r=Wh(n);return this._cloneMarkers(Lr(r),i),xe(r,this._styles.cls(i,[])),Fe(t,r),xe(r,"data-preview-support-element-id",e.id),r},ur.prototype.addFrame=function(e,t){var n=Pe("rect",{class:"djs-resize-overlay",width:e.width,height:e.height,x:e.x,y:e.y});return Fe(t,n),xe(n,"data-preview-support-element-id",e.id),n},ur.prototype._cloneMarkers=function(e,t="djs-dragger",n=e){var i=this;e.childNodes&&e.childNodes.forEach(r=>{i._cloneMarkers(r,t,n)}),NA(e)&&OA.forEach(function(r){if(xe(e,r)){var o=LA(e,r,i._canvas.getContainer());o&&i._cloneMarker(n,e,o,r,t)}})},ur.prototype._cloneMarker=function(e,t,n,i,r="djs-dragger"){var o=[n.id,r,kA.next()].join("-"),a=rt("marker#"+n.id,e);e=e||this._canvas._svg;var s=a||Wh(n);s.id=o,Xe(s).add(r);var c=rt(":scope > defs",e);c||(c=Pe("defs"),Fe(e,c)),Fe(c,s);var u=BA(s.id);xe(t,i,u)};function LA(e,t,n){var i=IA(xe(e,t));return rt("marker#"+i,n||document)}function IA(e){return e.match(/url\(['"]?#([^'"]*)['"]?\)/)[1]}function BA(e){return"url(#"+e+")"}function NA(e){return DA.indexOf(e.nodeName)!==-1}const Mo={__init__:["previewSupport"],previewSupport:["type",ur]};var $A="drop-ok",Dy="drop-not-ok",Ly="attach-ok",Iy="new-parent",By="create",FA=2e3;function Ny(e,t,n,i,r){function o(c,u,l,f,p){if(!u)return!1;c=We(c,function(y){var _=y.labelTarget;return!y.parent&&!(Ge(y)&&c.indexOf(_)!==-1)});var d=lt(c,function(y){return!ot(y)}),g=!1,h=!1,m=!1;Fy(c)&&(g=r.allowed("shape.attach",{position:l,shape:d,target:u})),g||(Fy(c)?m=r.allowed("shape.create",{position:l,shape:d,source:f,target:u}):m=r.allowed("elements.create",{elements:c,position:l,target:u}));var x=p.connectionTarget;return m||g?(d&&f&&(h=r.allowed("connection.create",{source:x===f?d:f,target:x===f?f:d,hints:{targetParent:u,targetAttach:g}})),{attach:g,connect:h}):m===null||g===null?null:!1}function a(c,u){[Ly,$A,Dy,Iy].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,f=c.hover,p=u.source,d=u.hints||{};if(!f){u.canExecute=!1,u.target=null;return}$y(c);var g={x:c.x,y:c.y},h=u.canExecute=f&&o(l,f,g,p,d);f&&h!==null&&(u.target=f,h&&h.attach?a(f,Ly):a(f,h?Iy:Dy))}),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,f=u.shape,p=u.elements,d=u.target,g=u.canExecute,h=g&&g.attach,m=g&&g.connect,x=u.hints||{};if(g===!1||!d)return!1;$y(c);var y={x:c.x,y:c.y};m?f=i.appendShape(l,f,y,d,{attach:h,connection:m===!0?{}:m,connectionTarget:x.connectionTarget}):(p=i.createElements(p,y,d,V({},x,{attach:h})),f=lt(p,function(_){return!ot(_)})),V(u,{elements:p,shape:f}),V(c,{elements:p,shape:f})});function s(){var c=t.context();c&&c.prefix===By&&t.cancel()}n.on("create.init",function(){n.on("elements.changed",s),n.once(["create.cancel","create.end"],FA,function(){n.off("elements.changed",s)})}),this.start=function(c,u,l){De(u)||(u=[u]);var f=lt(u,function(g){return!ot(g)});if(f){l=V({elements:u,hints:{},shape:f},l||{}),B(u,function(g){Be(g.x)||(g.x=0),Be(g.y)||(g.y=0)});var p=We(u,function(g){return!g.hidden}),d=Dt(p);B(u,function(g){ot(g)&&(g.waypoints=sn(g.waypoints,function(h){return{x:h.x-d.x-d.width/2,y:h.y-d.y-d.height/2}})),V(g,{x:g.x-d.x-d.width/2,y:g.y-d.y-d.height/2})}),t.init(c,By,{cursor:"grabbing",autoActivate:!0,data:{shape:f,elements:u,context:l}})}}}Ny.$inject=["canvas","dragging","eventBus","modeling","rules"];function $y(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 Fy(e){return e&&e.length===1&&!ot(e[0])}var jA=750;function jy(e,t,n,i,r){function o(a){var s=Pe("g");xe(s,r.cls("djs-drag-group",["no-events"]));var c=Pe("g");return a.forEach(function(u){var l;u.hidden||(u.waypoints?(l=n._createContainer("connection",c),n.drawConnection(Lr(l),u)):(l=n._createContainer("shape",c),n.drawShape(Lr(l),u),en(l,u.x,u.y)),i.addDragger(u,s,l))}),s}t.on("create.move",jA,function(a){var s=a.hover,c=a.context,u=c.elements,l=c.dragGroup;l||(l=c.dragGroup=o(u));var f;s?(l.parentNode||(f=e.getActiveLayer(),Fe(f,l)),en(l,a.x,a.y)):Ht(l)}),t.on("create.cleanup",function(a){var s=a.context,c=s.dragGroup;c&&Ht(c)})}jy.$inject=["canvas","eventBus","graphicsFactory","previewSupport","styles"];const yc={__depends__:[$i,Mo,xi,Zn],__init__:["create","createPreview"],create:["type",Ny],createPreview:["type",jy]};function $p(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)})}$p.$inject=["eventBus"],$p.prototype.getLastMoveEvent=function(){return this._lastMoveEvent||HA(0,0)};function HA(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 xa={__init__:["mouse"],mouse:["type",$p]};var Hy=2e3;function On(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,f=c.elementsSet;u.priority=1,u.id=l.id,f.has(l.parent)&&(u.parent=l.parent.id),zA(l)&&(u.priority=2,u.host=l.host.id),ot(l)&&(u.priority=3,u.source=l.source.id,u.target=l.target.id,u.waypoints=GA(l)),Ge(l)&&(u.priority=4,u.labelTarget=l.labelTarget.id),B(["x","y","width","height"],function(p){Be(l[p])&&(u[p]=l[p])}),u.hidden=l.hidden,u.collapsed=l.collapsed}),r.on("copyPaste.elementsCopied",Hy,function(c){var u;((u=c.hints)==null?void 0:u.clip)!==!1&&n.set(c.tree)}),r.on("copyPaste.pasteElements",Hy,function(c){c.tree||(c.tree=n.get())}),r.on("copyPaste.pasteElements",function(c){var u=c.hints;V(u,{createElementsBehavior:!1})})}On.$inject=["canvas","create","clipboard","elementFactory","eventBus","modeling","mouse","rules"],On.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},On.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})}}},On.prototype.duplicate=function(e,t={}){var n=this.copy(e,{clip:!1});return this.paste({...t,tree:n})},On.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},On.prototype._getElementIdsFromTree=function(e){var t={};return B(e,function(n){B(n,function(i){i.id&&(t[i.id]=!0)})}),t},On.prototype._paste=function(e,t,n,i){B(e,function(o){Be(o.x)||(o.x=0),Be(o.y)||(o.y=0)});var r=Dt(e);return B(e,function(o){ot(o)&&(o.waypoints=sn(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))},On.prototype._createElements=function(e){var t=this,n=this._eventBus,i={},r=[];return B(e,function(o,a){o=li(o,"priority"),B(o,function(s){var c=V({},pi(s,["priority"]));i[s.parent]?c.parent=i[s.parent]:delete c.parent,n.fire("copyPaste.pasteElement",{cache:i,descriptor:c});var u;if(ot(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},On.prototype.createConnection=function(e){var t=this._elementFactory.createConnection(pi(e,["id"]));return t},On.prototype.createLabel=function(e){var t=this._elementFactory.createLabel(pi(e,["id"]));return t},On.prototype.createShape=function(e){var t=this._elementFactory.createShape(pi(e,["id"]));return t},On.prototype.hasRelations=function(e,t,n){return n||(n=new Set(t)),!(ot(e)&&(!n.has(e.source)||!n.has(e.target))||Ge(e)&&!n.has(e.labelTarget))},On.prototype.createTree=function(e){var t=this._rules,n=this,i={},r=[],o=new Map,a=Ts(e);function s(f,p){return t.allowed("element.copy",{element:f,elements:p})}function c(f,p){var d=o.get(f);if(!d){var g={element:f,depth:p};r.push(g),o.set(f,g);return}if(d.depth<p){r=u(d,r);var h={element:d.element,depth:p};r.push(h),o.set(f,h)}}function u(f,p){var d=p.indexOf(f);return d!==-1&&p.splice(d,1),p}Dr(a,function(f,p,d){if(Ge(f))return;B(f.labels,function(m){c(m,d)});function g(m){m&&m.length&&B(m,function(x){B(x.labels,function(y){c(y,d)}),c(x,d)})}B([f.attachers,f.incoming,f.outgoing],g),c(f,d);var h=[];return f.children&&(h=f.children.slice()),n._eventBus.fire("copyPaste.createTree",{element:f,children:h}),h}),e=sn(r,function(f){return f.element});var l=new Set(e);return r=sn(r,function(f){return f.descriptor={},n._eventBus.fire("copyPaste.copyElement",{descriptor:f.descriptor,element:f.element,elements:e,elementsSet:l}),f}),r=li(r,function(f){return f.descriptor.priority}),e=sn(r,function(f){return f.element}),B(r,function(f){var p=f.depth;if(!n.hasRelations(f.element,e,l)){Gy(f.element,e),l.delete(f.element);return}if(!s(f.element,e)){Gy(f.element,e),l.delete(f.element);return}i[p]||(i[p]=[]),i[p].push(f.descriptor)}),i};function zA(e){return!!e.host}function GA(e){return sn(e.waypoints,function(t){return t=zy(t),t.original&&(t.original=zy(t.original)),t})}function zy(e){return V({},e)}function Gy(e,t){var n=t.indexOf(e);return n===-1?t:t.splice(n,1)}const VA={__depends__:[lA,yc,xa,xi],__init__:["copyPaste"],copyPaste:["type",On]};function Fp(e,t,n){De(n)||(n=[n]),B(n,function(i){Cr(e[i])||(t[i]=e[i])})}var jp=750;function Vy(e,t,n){function i(c,u){var l=e.create(c.$type);return n.copyElement(c,l,null,u)}t.on("copyPaste.copyElement",jp,function(c){var u=c.descriptor,l=c.element,f=ie(l);if(Ge(l))return u;var p=u.businessObject=i(f,!0),d=u.di=i(Ze(l),!0);d.bpmnElement=p,Fp(p,u,"name"),Fp(d,u,"isExpanded"),f.default&&(u.default=f.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 f=ie(c);return c.default&&(l[c.default]={element:f,property:"default"}),c.host&&(ie(c).attachedToRef=ie(u[c.host])),pi(l,Cn(l,function(p,d,g){var h=d.element,m=d.property;return g===c.id&&(h.set(m,f),p.push(c.id)),p},[]))}t.on("copyPaste.pasteElement",function(c){var u=c.cache,l=c.descriptor,f=l.businessObject,p=l.di;if(Ge(l)){l.businessObject=ie(u[l.labelTarget]),l.di=Ze(u[l.labelTarget]);return}f=l.businessObject=i(f),p=l.di=i(p),p.bpmnElement=f,Fp(l,f,["isExpanded","name"]),l.type=f.$type}),t.on("copyPaste.copyElement",jp,function(c){var u=c.descriptor,l=c.element;if(w(l,"bpmn:Participant")){var f=ie(l);f.processRef&&(u.processRef=i(f.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;w(u,"bpmn:SubProcess")&&B(ca(l),f=>{l.push(f.annotation)})}),t.on("copyPaste.pasteElement",jp,function(c){var u=c.cache,l=c.descriptor;a(u,s(l,u,o(u)))})}Vy.$inject=["bpmnFactory","eventBus","moddleCopy"];const WA=["artifacts","dataInputAssociations","dataOutputAssociations","default","flowElements","lanes","incoming","outgoing","categoryValue"],UA=["errorRef","escalationRef","messageRef","signalRef","dataObjectRef"];function wa(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 li(r,o=>o==="extensionElements")}),e.on("moddleCopy.canCopyProperty",i=>{const{parent:r,property:o,propertyName:a}=i,s=Wt(r)&&r.$descriptor;if(a&&UA.includes(a))return o;if(a&&WA.includes(a)||a&&s&&!lt(s.properties,to({name:a})))return!1}),e.on("moddleCopy.canSetCopiedProperty",i=>{const{property:r}=i;if(w(r,"bpmn:ExtensionElements")&&(!r.values||!r.values.length))return!1})}wa.$inject=["eventBus","bpmnFactory","moddle"],wa.prototype.copyElement=function(e,t,n,i=!1){n&&!De(n)&&(n=[n]),n=n||Hp(e.$descriptor);const r=this._eventBus.fire("moddleCopy.canCopyProperties",{propertyNames:n,sourceElement:e,targetElement:t,clone:i});return r===!1||(De(r)&&(n=r),B(n,o=>{let a;Rn(e,o)&&(a=e.get(o));const s=this.copyProperty(a,t,o,i);!Ft(s)||this._eventBus.fire("moddleCopy.canSetCopiedProperty",{parent:t,property:s,propertyName:o})===!1||t.set(o,s)})),t},wa.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 Wt(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)?Cn(e,(a,s)=>{const c=this.copyProperty(s,t,n,i);return c?a.concat(c):a},[]):Wt(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},wa.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 Hp(e,t){return Cn(e.properties,(n,i)=>t&&i.default?n:n.concat(i.name),[])}const Wy={__depends__:[VA],__init__:["bpmnCopyPaste","moddleCopy"],bpmnCopyPaste:["type",Vy],moddleCopy:["type",wa]};var Uy=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=Uy(s+o/2),l=Uy(c+a/2),f=i.replaceShape(e,V({},t,{x:u,y:l,width:o,height:a}),n);return r.fire("replace.end",{element:e,newElement:f,hints:n}),f};function qy(e,t){t.on("replace.end",500,function(n){const{newElement:i,hints:r={}}=n;r.select!==!1&&e.select(i)})}qy.$inject=["selection","eventBus"];const qA={__init__:["replace","replaceSelectionBehavior"],replaceSelectionBehavior:["type",qy],replace:["type",zp]};function YA(e,t,n){De(n)||(n=[n]),B(n,function(i){Cr(e[i])||(t[i]=e[i])})}var KA=["cancelActivity","instantiate","eventGatewayType","triggeredByEvent","isInterrupting"];function XA(e,t){var n=e&&Rn(e,"collapsed")?e.collapsed:!Ke(e),i;return t&&(Rn(t,"collapsed")||Rn(t,"isExpanded"))?i=Rn(t,"collapsed")?t.collapsed:!t.isExpanded:i=n,n!==i}function Yy(e,t,n,i,r,o){function a(s,c,u){u=u||{};var l=c.type,f=s.businessObject;if(vc(f)&&(l==="bpmn:SubProcess"||l==="bpmn:AdHocSubProcess")&&XA(s,c))return i.toggleCollapse(s),s;var p=e.create(l),d={type:l,businessObject:p};d.di={},l==="bpmn:ExclusiveGateway"&&(d.di.isMarkerVisible=!0),YA(s.di,d.di,["fill","stroke","background-color","border-color","color"]);var g=Hp(f.$descriptor),h=Hp(p.$descriptor,!0),m=ZA(g,h);V(p,oi(c,KA));var x=We(m,function(S){return S==="eventDefinitions"?Ky(s,c.eventDefinitionType):S==="loopCharacteristics"?!fn(p):Rn(p,S)||S==="processRef"&&c.isExpanded===!1||S==="triggeredByEvent"?!1:S==="isForCompensation"?!fn(p):!0});if(p=n.copyElement(f,p,x),c.eventDefinitionType&&(Ky(p,c.eventDefinitionType)||(d.eventDefinitionType=c.eventDefinitionType,d.eventDefinitionAttrs=c.eventDefinitionAttrs)),w(f,"bpmn:Activity")){if(vc(f))d.isExpanded=Ke(s);else if(c&&Rn(c,"isExpanded")){d.isExpanded=c.isExpanded;var y=t.getDefaultSize(p,{isExpanded:d.isExpanded});d.width=y.width,d.height=y.height,d.x=s.x-(d.width-s.width)/2,d.y=s.y-(d.height-s.height)/2}Ke(s)&&!w(f,"bpmn:Task")&&d.isExpanded&&(d.width=s.width,d.height=s.height)}if(vc(f)&&!vc(p)&&(u.moveChildren=!1),w(f,"bpmn:Participant")){c.isExpanded===!0?p.processRef=e.create("bpmn:Process"):u.moveChildren=!1;var _=Yt(s);Ze(s).isHorizontal||(Ze(d).isHorizontal=_),d.width=_?s.width:t.getDefaultSize(d).width,d.height=_?t.getDefaultSize(d).height:s.height}return o.allowed("shape.resize",{shape:p})||(d.height=t.getDefaultSize(d).height,d.width=t.getDefaultSize(d).width),p.name=f.name,Ve(f,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&Ve(p,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&(p.default=f.default),c.host&&!w(f,"bpmn:BoundaryEvent")&&w(p,"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}Yy.$inject=["bpmnFactory","elementFactory","moddleCopy","modeling","replace","rules"];function vc(e){return w(e,"bpmn:SubProcess")}function Ky(e,t){var n=ie(e);return t&&n.get("eventDefinitions").some(function(i){return w(i,t)})}function ZA(e,t){return e.filter(function(n){return t.includes(n)})}const Xy={__depends__:[Wy,qA,Zn],bpmnReplace:["type",Yy]};var QA=250;function jr(e){this._eventBus=e,this._tools=[],this._active=null}jr.$inject=["eventBus"],jr.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)},jr.prototype.isActive=function(e){return e&&this._active===e},jr.prototype.length=function(e){return this._tools.length},jr.prototype.setActive=function(e){var t=this._eventBus;this._active!==e&&(this._active=e,t.fire("tool-manager.update",{tool:e}))},jr.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),B(t,function(r){i.push(r+".ended"),i.push(r+".canceled")}),n.on(i,QA,function(r){this._active&&(JA(r)||this.setActive(null))},this)};function JA(e){var t=e.originalEvent&&e.originalEvent.target;return t&&kr(t,'.group[data-group="tools"]')}const bc={__depends__:[$i],__init__:["toolManager"],toolManager:["type",jr]};function eT(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 tT(e,t){var n=[],i=new Set(e);B(t,function(o){i.add(o)});var r=new Set;return i.forEach(function(o){var a=o.incoming,s=o.outgoing;B(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 nT(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 Gp=Math.abs,iT=Math.round,Fi={x:"width",y:"height"},Zy="crosshair",lr={n:"top",w:"left",s:"bottom",e:"right"},rT=1500,_c={n:"s",w:"e",s:"n",e:"w"},xc=20;function Qn(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",rT,function(c){var u=c.context,l=u.initialized;l||(l=u.initialized=s.init(c,u)),l&&Jy(c)}),n.on("spaceTool.end",function(c){var u=c.context,l=u.axis,f=u.direction,p=u.movingShapes,d=u.resizingShapes,g=u.start;if(u.initialized){Jy(c);var h={x:0,y:0};h[l]=iT(c["d"+l]),s.makeSpace(p,d,h,f,g),n.once("spaceTool.ended",function(m){s.activateSelection(m.originalEvent,!0,!0)})}})}Qn.$inject=["canvas","dragging","eventBus","modeling","rules","toolManager","mouse"],Qn.prototype.activateSelection=function(e,t,n){this._dragging.init(e,"spaceTool.selection",{autoActivate:t,cursor:Zy,data:{context:{reactivate:n}},trapClick:!1})},Qn.prototype.activateMakeSpace=function(e){this._dragging.init(e,"spaceTool",{autoActivate:!0,cursor:Zy,data:{context:{}}})},Qn.prototype.makeSpace=function(e,t,n,i,r){return this._modeling.createSpace(e,t,n,i,r)},Qn.prototype.init=function(e,t){var n=Gp(e.dx)>Gp(e.dy)?"x":"y",i=e["d"+n],r=e[n]-i;if(Gp(i)<5)return!1;i<0&&(i*=-1),va(e)&&(i*=-1);var o=eT(n,i),a=this._canvas.getRootElement();!cc(e)&&e.hover&&(a=e.hover);var s=[...na(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=oT(c,n,o,r,u);return V(t,c,{axis:n,direction:o,spaceToolConstraints:l,start:r}),gc("resize-"+(n==="x"?"ew":"ns")),!0},Qn.prototype.calculateAdjustments=function(e,t,n,i){var r=this._rules,o=[],a=[],s=new Set,c=new Set,u=[],l=[];function f(d){s.has(d)||(s.add(d),o.push(d));var g=d.label;g&&!s.has(g)&&(s.add(g),o.push(g))}function p(d){c.has(d)||(c.add(d),a.push(d))}return B(e,function(d){if(!(!d.parent||Ge(d))){if(ot(d)){l.push(d);return}var g=d[t],h=g+d[Fi[t]];if(aT(d)&&(n>0&&Le(d)[t]>i||n<0&&Le(d)[t]<i)){u.push(d);return}if(n>0&&g>i||n<0&&h<i){f(d);return}if(g<i&&h>i&&r.allowed("shape.resize",{shape:d})){p(d);return}}}),B(o,function(d){var g=d.attachers;g&&B(g,function(h){f(h)})}),B(u,function(d){var g=d.host;(s.has(g)||c.has(g))&&f(d)}),B(l,function(d){var g=d.source,h=d.target,m=d.label;(s.has(g)||c.has(g))&&(s.has(h)||c.has(h))&&m&&f(m)}),{movingShapes:o,resizingShapes:a}},Qn.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},Qn.prototype.isActive=function(){var e=this._dragging.context();return e?/^spaceTool/.test(e.prefix):!1};function Qy(e){return{top:e.top-xc,right:e.right+xc,bottom:e.bottom+xc,left:e.left-xc}}function Jy(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 oT(e,t,n,i,r){var o=e.movingShapes,a=e.resizingShapes;if(a.length){var s={},c,u,l=new Set(o),f=new Set(a);return B(a,function(p){var d=p.attachers,g=p.children,h=Ae(p),m=We(g,function(z){return!ot(z)&&!Ge(z)&&!l.has(z)&&!f.has(z)}),x=We(g,function(z){return!ot(z)&&!Ge(z)&&l.has(z)}),y,_,S,P=[],C=[],L,T,j,k;m.length&&(_=Qy(Ae(Dt(m))),y=i-h[lr[n]]+_[lr[n]],n==="n"?s.bottom=u=Be(u)?Math.min(u,y):y:n==="w"?s.right=u=Be(u)?Math.min(u,y):y:n==="s"?s.top=c=Be(c)?Math.max(c,y):y:n==="e"&&(s.left=c=Be(c)?Math.max(c,y):y)),x.length&&(S=Qy(Ae(Dt(x))),y=i-S[lr[_c[n]]]+h[lr[_c[n]]],n==="n"?s.bottom=u=Be(u)?Math.min(u,y):y:n==="w"?s.right=u=Be(u)?Math.min(u,y):y:n==="s"?s.top=c=Be(c)?Math.max(c,y):y:n==="e"&&(s.left=c=Be(c)?Math.max(c,y):y)),d&&d.length&&(d.forEach(function(z){l.has(z)?P.push(z):C.push(z)}),P.length&&(L=Ae(Dt(P.map(Le))),T=h[lr[_c[n]]]-(L[lr[_c[n]]]-i)),C.length&&(j=Ae(Dt(C.map(Le))),k=j[lr[n]]-(h[lr[n]]-i)),n==="n"?(y=Math.min(T||1/0,k||1/0),s.bottom=u=Be(u)?Math.min(u,y):y):n==="w"?(y=Math.min(T||1/0,k||1/0),s.right=u=Be(u)?Math.min(u,y):y):n==="s"?(y=Math.max(T||-1/0,k||-1/0),s.top=c=Be(c)?Math.max(c,y):y):n==="e"&&(y=Math.max(T||-1/0,k||-1/0),s.left=c=Be(c)?Math.max(c,y):y));var D=r&&r[p.id];D&&(n==="n"?(y=i+p[Fi[t]]-D[Fi[t]],s.bottom=u=Be(u)?Math.min(u,y):y):n==="w"?(y=i+p[Fi[t]]-D[Fi[t]],s.right=u=Be(u)?Math.min(u,y):y):n==="s"?(y=i-p[Fi[t]]+D[Fi[t]],s.top=c=Be(c)?Math.max(c,y):y):n==="e"&&(y=i-p[Fi[t]]+D[Fi[t]],s.left=c=Be(c)?Math.max(c,y):y))}),s}}function aT(e){return!!e.host}var Vp="djs-dragging",ev="djs-resizing",sT=250,wc=Math.max;function tv(e,t,n,i,r){function o(a,s){B(a,function(c){r.addDragger(c,s),n.addMarker(c,Vp)})}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=Pe("g");xe(l,i.cls("djs-crosshair-group",["no-events"])),Fe(s,l);var f=Pe("path");xe(f,"d",u.x),Xe(f).add("djs-crosshair"),Fe(l,f);var p=Pe("path");xe(p,"d",u.y),Xe(p).add("djs-crosshair"),Fe(l,p),c.crosshairGroup=l}),e.on("spaceTool.selection.move",function(a){var s=a.context.crosshairGroup;en(s,a.x,a.y)}),e.on("spaceTool.selection.cleanup",function(a){var s=a.context,c=s.crosshairGroup;c&&Ht(c)}),e.on("spaceTool.move",sT,function(a){var s=a.context,c=s.line,u=s.axis,l=s.movingShapes,f=s.resizingShapes;if(s.initialized){if(!s.dragGroup){var p=n.getLayer("space");c=Pe("path"),xe(c,"d","M0,0 L0,0"),Xe(c).add("djs-crosshair"),Fe(p,c),s.line=c;var d=Pe("g");xe(d,i.cls("djs-drag-group",["no-events"])),Fe(n.getActiveLayer(),d),o(l,d);var g=new Set(l);B(f,function(C){g.add(C)});var h=new Set,m=s.movingConnections=[];g.forEach(function(C){B(C.outgoing,function(L){h.has(L)||!ot(L)||!g.has(L.target)||(h.add(L),m.push(L))})}),o(m,d),s.dragGroup=d}if(!s.frameGroup){var x=Pe("g");xe(x,i.cls("djs-frame-group",["no-events"])),Fe(n.getActiveLayer(),x);var y=[];B(f,function(C){var L=r.addFrame(C,x),T=L.getBBox();y.push({element:L,initialBounds:T}),n.addMarker(C,ev)}),s.frameGroup=x,s.frames=y}var _={x:"M"+a.x+", -10000 L"+a.x+", 10000",y:"M -10000, "+a.y+" L 10000, "+a.y};xe(c,{d:_[u]});var S={x:"y",y:"x"},P={x:a.dx,y:a.dy};P[S[s.axis]]=0,en(s.dragGroup,P.x,P.y),B(s.frames,function(C){var L=C.element,T=C.initialBounds,j,k;s.direction==="e"?xe(L,{width:wc(T.width+P.x,5)}):(j=wc(T.width-P.x,5),xe(L,{width:j,x:T.x+T.width-j})),s.direction==="s"?xe(L,{height:wc(T.height+P.y,5)}):(k=wc(T.height-P.y,5),xe(L,{height:k,y:T.y+T.height-k}))})}}),e.on("spaceTool.cleanup",function(a){var s=a.context,c=s.movingShapes,u=s.movingConnections,l=s.resizingShapes,f=s.line,p=s.dragGroup,d=s.frameGroup;B(c,function(g){n.removeMarker(g,Vp)}),B(u,function(g){n.removeMarker(g,Vp)}),p&&(Ht(f),Ht(p)),B(l,function(g){n.removeMarker(g,ev)}),d&&Ht(d)})}tv.$inject=["eventBus","elementRegistry","canvas","styles","previewSupport"];const cT={__init__:["spaceToolPreview"],__depends__:[$i,xi,bc,Mo,xa],spaceTool:["type",Qn],spaceToolPreview:["type",tv]};function Ec(e,t){e.invoke(Qn,this),this._canvas=t}Ec.$inject=["injector","canvas"],_e(Ec,Qn),Ec.prototype.calculateAdjustments=function(e,t,n,i){var r=this._canvas.getRootElement(),o=e[0]===r?null:e[0],a=[];o&&(a=Jr(po(r.children.filter(u=>w(u,"bpmn:Artifact")),Dt(o))));const s=[...e,...a];var c=Qn.prototype.calculateAdjustments.call(this,s,t,n,i);return c.resizingShapes=c.resizingShapes.filter(function(u){return!(w(u,"bpmn:TextAnnotation")||uT(u)&&(t==="y"&&Yt(u)||t==="x"&&!Yt(u)))}),c};function uT(e){return w(e,"bpmn:Participant")&&!ie(e).processRef}const nv={__depends__:[cT],spaceTool:["type",Ec]};function xt(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)}xt.$inject=["eventBus","injector"],xt.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()},xt.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},xt.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,e!==!1&&this._fire("changed",{trigger:"clear"})},xt.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()}},xt.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()}},xt.prototype.register=function(e,t){this._setHandler(e,t)},xt.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)},xt.prototype.canUndo=function(){return!!this._getUndoAction()},xt.prototype.canRedo=function(){return!!this._getRedoAction()},xt.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},xt.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},xt.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)})},xt.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},xt.prototype._createId=function(){return this._uid++},xt.prototype._atomicDo=function(e){const t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},xt.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()},xt.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)},xt.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:gd("id",i.reverse())}),i.length=0,this._fire("changed",{trigger:t}),e.trigger=null)},xt.prototype._markDirty=function(e){const t=this._currentExecution;e&&(e=De(e)?e:[e],t.dirty=t.dirty.concat(e))},xt.prototype._executedAction=function(e,t){const n=++this._stackIdx;t||this._stack.splice(n,this._stack.length,e)},xt.prototype._revertedAction=function(e){this._stackIdx--},xt.prototype._getHandler=function(e){return this._handlerMap[e]},xt.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 lT={commandStack:["type",xt]};function pr(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,iv=1400;function Wp(e,t,n){te.call(this,t);var i=e.get("movePreview",!1);t.on("shape.move.start",iv,function(r){var o=r.context,a=o.shapes,s=o.validatedShapes;o.shapes=rv(a),o.validatedShapes=rv(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",iv,function(r){var o=r.context,a=o.closure,s=a.enclosedElements,c=[];B(s,function(u){B(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;pr(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=Sl(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&&(Tt(s.labels,a,c),a.labelTarget=s)})}_e(Wp,te),Wp.$inject=["injector","eventBus","modeling"];function rv(e){var t=new Set(e);return We(e,function(n){return!t.has(n.labelTarget)})}const fT={__init__:["labelSupport"],labelSupport:["type",Wp]};var dT=251,ov=1401,av="attach-ok";function Up(e,t,n,i,r){te.call(this,t);var o=e.get("movePreview",!1);t.on("shape.move.start",ov,function(a){var s=a.context,c=s.shapes,u=s.validatedShapes;s.shapes=hT(c),s.validatedShapes=mT(u)}),o&&t.on("shape.move.start",dT,function(a){var s=a.context,c=s.shapes,u=qp(c);B(u,function(l){o.makeDraggable(s,l,!0),B(l.labels,function(f){o.makeDraggable(s,f,!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,av),t.once(["shape.move.out","shape.move.cleanup"],function(){n.removeMarker(l,av)}))}}),this.preExecuted("elements.move",ov,function(a){var s=a.context,c=s.closure,u=s.shapes,l=qp(u);B(l,function(f){c.add(f,c.topLevel[f.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=We(c,function(f){var p=f.host;return gT(f)&&!yT(c,p)}),B(l,function(f){r.updateAttachment(f,u)}))}),this.postExecuted("elements.move",function(a){var s=a.context.shapes;B(s,function(c){B(c.attachers,function(u){B(u.outgoing.slice(),function(l){var f=i.allowed("connection.reconnect",{connection:l,source:l.source,target:l.target});f||r.removeConnection(l)}),B(u.incoming.slice(),function(l){var f=i.allowed("connection.reconnect",{connection:l,source:l.source,target:l.target});f||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;pr(c.attachers,function(l){var f=i.allowed("elements.move",{target:u,shapes:[l]});f==="attach"?r.updateAttachment(l,u):r.removeShape(l)}),u.attachers.length&&B(u.attachers,function(l){var f=Sg(l,c,u);r.moveShape(l,f,l.parent)})}),this.postExecute("shape.resize",function(a){var s=a.context,c=s.shape,u=s.oldBounds,l=s.newBounds,f=c.attachers,p=s.hints||{};p.attachSupport!==!1&&B(f,function(d){var g=Sg(d,u,l);r.moveShape(d,g,d.parent),B(d.labels,function(h){r.moveShape(h,g,h.parent)})})}),this.preExecute("shape.delete",function(a){var s=a.context.shape;pr(s.attachers,function(c){r.removeShape(c)}),s.host&&r.updateAttachment(s,null)})}_e(Up,te),Up.$inject=["injector","eventBus","canvas","rules","modeling"];function qp(e){return Lu(sn(e,function(t){return t.attachers||[]}))}function hT(e){var t=qp(e);return Z0("id",e,t)}function mT(e){var t=eo(e,"id");return We(e,function(n){for(;n;){if(n.host&&t[n.host.id])return!1;n=n.parent}return!0})}function gT(e){return!!e.host}function yT(e,t){return e.indexOf(t)!==-1}const vT={__depends__:[xi],__init__:["attachSupport"],attachSupport:["type",Up]};function sv(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(Jh(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)})}sv.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];const Yp={__init__:["changeSupport"],changeSupport:["type",sv]};function Jn(e){this._model=e}Jn.$inject=["moddle"],Jn.prototype._needsId=function(e){return Ve(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"])},Jn.prototype._ensureId=function(e){if(e.id){this._model.ids.claim(e.id,e);return}var t;w(e,"bpmn:Activity")?t="Activity":w(e,"bpmn:Event")?t="Event":w(e,"bpmn:Gateway")?t="Gateway":Ve(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))},Jn.prototype.create=function(e,t){var n=this._model.create(e,t||{});return this._ensureId(n),n},Jn.prototype.createDiLabel=function(){return this.create("bpmndi:BPMNLabel",{bounds:this.createDiBounds()})},Jn.prototype.createDiShape=function(e,t){return this.create("bpmndi:BPMNShape",V({bpmnElement:e,bounds:this.createDiBounds()},t))},Jn.prototype.createDiBounds=function(e){return this.create("dc:Bounds",e)},Jn.prototype.createDiWaypoints=function(e){var t=this;return sn(e,function(n){return t.createDiWaypoint(n)})},Jn.prototype.createDiWaypoint=function(e){return this.create("dc:Point",oi(e,["x","y"]))},Jn.prototype.createDiEdge=function(e,t){return this.create("bpmndi:BPMNEdge",V({bpmnElement:e,waypoint:this.createDiWaypoints([])},t))},Jn.prototype.createDiPlane=function(e,t){return this.create("bpmndi:BPMNPlane",V({bpmnElement:e},t))};function Dn(e,t,n){te.call(this,e),this._bpmnFactory=t;var i=this;function r(d){var g=d.context,h=g.hints||{},m;!g.cropped&&h.createElementsBehavior!==!1&&(m=g.connection,m.waypoints=n.getCroppedWaypoints(m),g.cropped=!0)}this.executed(["connection.layout","connection.create"],r),this.reverted(["connection.layout"],function(d){delete d.context.cropped});function o(d){var g=d.context;i.updateParent(g.shape||g.connection,g.oldParent)}function a(d){var g=d.context,h=g.shape||g.connection,m=g.parent||g.newParent;i.updateParent(h,m)}this.executed(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],Ln(o)),this.reverted(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],Ln(a));function s(d){var g=d.context,h=g.oldRoot,m=h.children;B(m,function(x){w(x,"bpmn:BaseElement")&&i.updateParent(x)})}this.executed(["canvas.updateRoot"],s),this.reverted(["canvas.updateRoot"],s);function c(d){var g=d.context.shape;w(g,"bpmn:BaseElement")&&i.updateBounds(g)}this.executed(["shape.move","shape.create","shape.resize"],Ln(function(d){d.context.shape.type!=="label"&&c(d)})),this.reverted(["shape.move","shape.create","shape.resize"],Ln(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"],Ln(u)),this.reverted(["connection.create","connection.move","connection.delete","connection.reconnect"],Ln(u));function l(d){i.updateConnectionWaypoints(d.context.connection)}this.executed(["connection.layout","connection.move","connection.updateWaypoints"],Ln(l)),this.reverted(["connection.layout","connection.move","connection.updateWaypoints"],Ln(l)),this.executed("connection.reconnect",Ln(function(d){var g=d.context,h=g.connection,m=g.oldSource,x=g.newSource,y=ie(h),_=ie(m),S=ie(x);y.conditionExpression&&!Ve(S,["bpmn:Activity","bpmn:ExclusiveGateway","bpmn:InclusiveGateway"])&&(g.oldConditionExpression=y.conditionExpression,delete y.conditionExpression),m!==x&&_.default===y&&(g.oldDefault=_.default,delete _.default)})),this.reverted("connection.reconnect",Ln(function(d){var g=d.context,h=g.connection,m=g.oldSource,x=g.newSource,y=ie(h),_=ie(m),S=ie(x);g.oldConditionExpression&&(y.conditionExpression=g.oldConditionExpression),g.oldDefault&&(_.default=g.oldDefault,delete S.default)}));function f(d){i.updateAttachment(d.context)}this.executed(["element.updateAttachment"],Ln(f)),this.reverted(["element.updateAttachment"],Ln(f)),this.executed("element.updateLabel",Ln(p)),this.reverted("element.updateLabel",Ln(p));function p(d){const{element:g}=d.context,h=zn(g),m=Ze(g),x=m&&m.get("label");rr(g)||uc(g)||(h&&!x?m.set("label",t.create("bpmndi:BPMNLabel")):!h&&x&&m.set("label",void 0))}}_e(Dn,te),Dn.$inject=["eventBus","bpmnFactory","connectionDocking"],Dn.prototype.updateAttachment=function(e){var t=e.shape,n=t.businessObject,i=t.host;n.attachedToRef=i&&i.businessObject},Dn.prototype.updateParent=function(e,t){if(!Ge(e)&&!(w(e,"bpmn:DataStoreReference")&&e.parent&&w(e.parent,"bpmn:Collaboration"))){var n=e.parent,i=e.businessObject,r=Ze(e),o=n&&n.businessObject,a=Ze(n);w(e,"bpmn:FlowNode")&&this.updateFlowNodeRefs(i,o,t&&t.businessObject),w(e,"bpmn:DataOutputAssociation")&&(e.source?o=e.source.businessObject:o=null),w(e,"bpmn:DataInputAssociation")&&(e.target?o=e.target.businessObject:o=null),this.updateSemanticParent(i,o),w(e,"bpmn:DataObjectReference")&&i.dataObjectRef&&this.updateSemanticParent(i.dataObjectRef,o),this.updateDiParent(r,a)}},Dn.prototype.updateBounds=function(e){var t=Ze(e),n=_T(e);if(n){var i=ci(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})},Dn.prototype.updateFlowNodeRefs=function(e,t,n){if(n!==t){var i,r;w(n,"bpmn:Lane")&&(i=n.get("flowNodeRef"),Ct(i,e)),w(t,"bpmn:Lane")&&(r=t.get("flowNodeRef"),Tt(r,e))}},Dn.prototype.updateDiConnection=function(e,t,n){var i=Ze(e),r=Ze(t),o=Ze(n);i.sourceElement&&i.sourceElement.bpmnElement!==ie(t)&&(i.sourceElement=t&&r),i.targetElement&&i.targetElement.bpmnElement!==ie(n)&&(i.targetElement=n&&o)},Dn.prototype.updateDiParent=function(e,t){if(t&&!w(t,"bpmndi:BPMNPlane")&&(t=t.$parent),e.$parent!==t){var n=(t||e.$parent).get("planeElement");t?(n.push(e),e.$parent=t):(Ct(n,e),e.$parent=null)}};function bT(e){for(;e&&!w(e,"bpmn:Definitions");)e=e.$parent;return e}Dn.prototype.getLaneSet=function(e){var t,n;return w(e,"bpmn:Lane")?(t=e.childLaneSet,t||(t=this._bpmnFactory.create("bpmn:LaneSet"),e.childLaneSet=t,t.$parent=e),t):(w(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)},Dn.prototype.updateSemanticParent=function(e,t,n){var i;if(e.$parent!==t&&!((w(e,"bpmn:DataInput")||w(e,"bpmn:DataOutput"))&&(w(t,"bpmn:Participant")&&"processRef"in t&&(t=t.processRef),"ioSpecification"in t&&t.ioSpecification===e.$parent))){if(w(e,"bpmn:Lane"))t&&(t=this.getLaneSet(t)),i="lanes";else if(w(e,"bpmn:FlowElement")){if(t){if(w(t,"bpmn:Participant"))t=t.processRef;else if(w(t,"bpmn:Lane"))do t=t.$parent.$parent;while(w(t,"bpmn:Lane"))}i="flowElements"}else if(w(e,"bpmn:Artifact")){for(;t&&!w(t,"bpmn:Process")&&!w(t,"bpmn:SubProcess")&&!w(t,"bpmn:Collaboration");)if(w(t,"bpmn:Participant")){t=t.processRef;break}else t=t.$parent;i="artifacts"}else if(w(e,"bpmn:MessageFlow"))i="messageFlows";else if(w(e,"bpmn:Participant")){i="participants";var r=e.processRef,o;r&&(o=bT(e.$parent||t),e.$parent&&(Ct(o.get("rootElements"),r),r.$parent=null),t&&(Tt(o.get("rootElements"),r),r.$parent=o))}else w(e,"bpmn:DataOutputAssociation")?i="dataOutputAssociations":w(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),Ct(a,e)),t?(a=t.get(i),a.push(e),e.$parent=t):e.$parent=null,n){var s=n.get(i);Ct(a,e),t&&(s||(s=[],t.set(i,s)),s.push(e))}}},Dn.prototype.updateConnectionWaypoints=function(e){var t=Ze(e);t.set("waypoint",this._bpmnFactory.createDiWaypoints(e.waypoints))},Dn.prototype.updateConnection=function(e){var t=e.connection,n=ie(t),i=t.source,r=ie(i),o=t.target,a=ie(t.target),s;if(w(n,"bpmn:DataAssociation"))w(n,"bpmn:DataInputAssociation")?(n.get("sourceRef")[0]=r,s=e.parent||e.newParent||a,this.updateSemanticParent(n,a,s)):w(n,"bpmn:DataOutputAssociation")&&(s=e.parent||e.newParent||r,this.updateSemanticParent(n,r,s),n.targetRef=a);else{var c=w(n,"bpmn:SequenceFlow");n.sourceRef!==r&&(c&&(Ct(n.sourceRef&&n.sourceRef.get("outgoing"),n),r&&r.get("outgoing")&&r.get("outgoing").push(n)),n.sourceRef=r),n.targetRef!==a&&(c&&(Ct(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)},Dn.prototype._getLabel=function(e){return e.label||(e.label=this._bpmnFactory.createDiLabel()),e.label};function Ln(e){return function(t){var n=t.context,i=n.shape||n.connection||n.element;w(i,"bpmn:BaseElement")&&e(t)}}function _T(e){if(w(e,"bpmn:Activity")){var t=Ze(e);if(t){var n=t.get("label");if(n)return n.get("bounds")}}}function fr(e,t){Li.call(this),this._bpmnFactory=e,this._moddle=t}_e(fr,Li),fr.$inject=["bpmnFactory","moddle"],fr.prototype._baseCreate=Li.prototype.create,fr.prototype.create=function(e,t){if(e==="label"){var n=t.di||this._bpmnFactory.createDiLabel();return this._baseCreate(e,V({type:"label",di:n},Ir,t))}return this.createElement(e,t)},fr.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(!wT(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)}w(i,"bpmn:Group")&&(t=V({isFrame:!0},t)),t=xT(i,t,["processRef","isInterrupting","associationDirection","isForCompensation"]),t.isExpanded&&(t=Kp(r,t,"isExpanded")),Ve(i,["bpmn:Lane","bpmn:Participant"])&&(t=Kp(r,t,"isHorizontal")),w(i,"bpmn:SubProcess")&&(t.collapsed=!Ke(i,r)),w(i,"bpmn:ExclusiveGateway")&&(Rn(r,"isMarkerVisible")?r.isMarkerVisible===void 0&&(r.isMarkerVisible=!1):r.isMarkerVisible=!0),Ft(t.triggeredByEvent)&&(i.triggeredByEvent=t.triggeredByEvent,delete t.triggeredByEvent),Ft(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)},fr.prototype.getDefaultSize=function(e,t){var n=ie(e);if(t=t||Ze(e),w(n,"bpmn:SubProcess"))return Ke(n,t)?{width:350,height:200}:{width:100,height:80};if(w(n,"bpmn:Task"))return{width:100,height:80};if(w(n,"bpmn:Gateway"))return{width:50,height:50};if(w(n,"bpmn:Event"))return{width:36,height:36};if(w(n,"bpmn:Participant")){var i=t.isHorizontal===void 0||t.isHorizontal===!0;return Ke(n,t)?i?{width:600,height:250}:{width:250,height:600}:i?{width:400,height:60}:{width:60,height:400}}return w(n,"bpmn:Lane")?{width:400,height:100}:w(n,"bpmn:DataObjectReference")?{width:36,height:50}:w(n,"bpmn:DataStoreReference")?{width:50,height:50}:w(n,"bpmn:TextAnnotation")?{width:100,height:40}:w(n,"bpmn:Group")?{width:300,height:300}:{width:100,height:80}},fr.prototype.createParticipantShape=function(e){return Wt(e)||(e={isExpanded:e}),e=V({type:"bpmn:Participant"},e||{}),e.isExpanded!==!1&&(e.processRef=this._bpmnFactory.create("bpmn:Process")),this.createShape(e)};function xT(e,t,n){return B(n,function(i){t=Kp(e,t,i)}),t}function Kp(e,t,n){return t[n]===void 0?t:(e[n]=t[n],pi(t,[n]))}function wT(e){return Ve(e,["bpmndi:BPMNShape","bpmndi:BPMNEdge","bpmndi:BPMNDiagram","bpmndi:BPMNPlane"])}function Sc(e,t){this._modeling=e,this._canvas=t}Sc.$inject=["modeling","canvas"],Sc.prototype.preExecute=function(e){var t=this._modeling,n=e.elements,i=e.alignment;B(n,function(r){var o={x:0,y:0};Ft(i.left)?o.x=i.left-r.x:Ft(i.right)?o.x=i.right-r.width-r.x:Ft(i.center)?o.x=i.center-Math.round(r.width/2)-r.x:Ft(i.top)?o.y=i.top-r.y:Ft(i.bottom)?o.y=i.bottom-r.height-r.y:Ft(i.middle)&&(o.y=i.middle-Math.round(r.height/2)-r.y),t.moveElements([r],o,r.parent)})},Sc.prototype.postExecute=function(e){};function Rc(e){this._modeling=e}Rc.$inject=["modeling"],Rc.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},Rc.prototype.postExecute=function(e){var t=e.hints||{};ET(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 ET(e,t){return qi(e.outgoing,function(n){return n.target===t})}function Cc(e,t){this._canvas=e,this._layouter=t}Cc.$inject=["canvas","layouter"],Cc.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},Cc.prototype.revert=function(e){var t=e.connection;return this._canvas.removeConnection(t),t.source=null,t.target=null,t};var Pc=Math.round;function Xp(e){this._modeling=e}Xp.$inject=["modeling"],Xp.prototype.preExecute=function(e){var t=e.elements,n=e.parent,i=e.parentIndex,r=e.position,o=e.hints,a=this._modeling;B(t,function(f){Be(f.x)||(f.x=0),Be(f.y)||(f.y=0)});var s=We(t,function(f){return!f.hidden}),c=Dt(s);B(t,function(f){ot(f)&&(f.waypoints=sn(f.waypoints,function(p){return{x:Pc(p.x-c.x-c.width/2+r.x),y:Pc(p.y-c.y-c.height/2+r.y)}})),V(f,{x:Pc(f.x-c.x-c.width/2+r.x),y:Pc(f.y-c.y-c.height/2+r.y)})});var u=new Set(Ts(t)),l={};B(t,function(f){if(ot(f)){l[f.id]=Be(i)?a.createConnection(l[f.source.id],l[f.target.id],i,f,f.parent||n,o):a.createConnection(l[f.source.id],l[f.target.id],f,f.parent||n,o);return}var p=V({},o);u.has(f)||(p.autoResize=!1),Ge(f)&&(p=pi(p,["attach"])),l[f.id]=Be(i)?a.createShape(f,oi(f,["x","y","width","height"]),f.parent||n,i,p):a.createShape(f,oi(f,["x","y","width","height"]),f.parent||n,p)}),e.elements=Jr(l)};var cv=Math.round;function dr(e){this._canvas=e}dr.$inject=["canvas"],dr.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-cv(t.width/2),y:n.y-cv(t.height/2)}),this._canvas.addShape(t,i,r),t},dr.prototype.revert=function(e){var t=e.shape;return this._canvas.removeShape(t),t};function Ea(e){dr.call(this,e)}_e(Ea,dr),Ea.$inject=["canvas"];var ST=dr.prototype.execute;Ea.prototype.execute=function(e){var t=e.shape;return CT(t),t.labelTarget=e.labelTarget,ST.call(this,e)};var RT=dr.prototype.revert;Ea.prototype.revert=function(e){return e.shape.labelTarget=null,RT.call(this,e)};function CT(e){["width","height"].forEach(function(t){typeof e[t]>"u"&&(e[t]=0)})}function Sa(e,t){this._canvas=e,this._modeling=t}Sa.$inject=["canvas","modeling"],Sa.prototype.preExecute=function(e){var t=this._modeling,n=e.connection;pr(n.incoming,function(i){t.removeConnection(i,{nested:!0})}),pr(n.outgoing,function(i){t.removeConnection(i,{nested:!0})})},Sa.prototype.execute=function(e){var t=e.connection,n=t.parent;return e.parent=n,e.parentIndex=Sl(n.children,t),e.source=t.source,e.target=t.target,this._canvas.removeConnection(t),t.source=null,t.target=null,t},Sa.prototype.revert=function(e){var t=e.connection,n=e.parent,i=e.parentIndex;return t.source=e.source,t.target=e.target,Tt(n.children,t,i),this._canvas.addConnection(t,n),t};function Zp(e,t){this._modeling=e,this._elementRegistry=t}Zp.$inject=["modeling","elementRegistry"],Zp.prototype.postExecute=function(e){var t=this._modeling,n=this._elementRegistry,i=e.elements;B(i,function(r){n.get(r.id)&&(r.waypoints?t.removeConnection(r):t.removeShape(r))})};function Ra(e,t){this._canvas=e,this._modeling=t}Ra.$inject=["canvas","modeling"],Ra.prototype.preExecute=function(e){var t=this._modeling,n=e.shape;pr(n.incoming,function(i){t.removeConnection(i,{nested:!0})}),pr(n.outgoing,function(i){t.removeConnection(i,{nested:!0})}),pr(n.children,function(i){ot(i)?t.removeConnection(i,{nested:!0}):t.removeShape(i,{nested:!0})})},Ra.prototype.execute=function(e){var t=this._canvas,n=e.shape,i=n.parent;return e.oldParent=i,e.oldParentIndex=Sl(i.children,n),t.removeShape(n),n},Ra.prototype.revert=function(e){var t=this._canvas,n=e.shape,i=e.oldParent,r=e.oldParentIndex;return Tt(i.children,n,r),t.addShape(n,i),n};function Ac(e){this._modeling=e}Ac.$inject=["modeling"];var uv={x:"y",y:"x"};Ac.prototype.preExecute=function(e){var t=this._modeling,n=e.groups,i=e.axis,r=e.dimension;function o(m,x){m.range.min=Math.min(x[i],m.range.min),m.range.max=Math.max(x[i]+x[r],m.range.max)}function a(m){return m[i]+m[r]/2}function s(m){return m.length-1}function c(m){return m.max-m.min}function u(m,x){var y={y:0};y[i]=m-a(x),y[i]&&(y[uv[i]]=0,t.moveElements([x],y,x.parent))}var l=n[0],f=s(n),p=n[f],d,g,h=0;B(n,function(m,x){var y,_,S;if(m.elements.length<2){x&&x!==n.length-1&&(o(m,m.elements[0]),h+=c(m.range));return}y=li(m.elements,i),_=y[0],x===f&&(_=y[s(y)]),S=a(_),m.range=null,B(y,function(P){if(u(S,P),m.range===null){m.range={min:P[i],max:P[i]+P[r]};return}o(m,P)}),x&&x!==n.length-1&&(h+=c(m.range))}),g=Math.abs(p.range.min-l.range.max),d=Math.round((g-h)/(n.length-1)),!(d<n.length-1)&&B(n,function(m,x){var y={},_;m===l||m===p||(_=n[x-1],m.range.max=0,B(m.elements,function(S,P){y[uv[i]]=0,y[i]=_.range.max-S[i]+d,m.range.min!==S[i]&&(y[i]+=S[i]-m.range.min),y[i]&&t.moveElements([S],y,S.parent),m.range.max=Math.max(S[i]+S[r],P?m.range.max:0)}))})},Ac.prototype.postExecute=function(e){};function Tc(e,t){this._layouter=e,this._canvas=t}Tc.$inject=["layouter","canvas"],Tc.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},Tc.prototype.revert=function(e){var t=e.connection;return t.waypoints=e.oldWaypoints,t};function Qp(){}Qp.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=Ct(o.children,t),Tt(i.children,t,r),t.parent=i,B(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},Qp.prototype.revert=function(e){var t=e.connection,n=t.parent,i=e.oldParent,r=e.oldParentIndex,o=e.delta;return Ct(n.children,t),Tt(i.children,t,r),t.parent=i,B(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 Jp(){this.allShapes={},this.allConnections={},this.enclosedElements={},this.enclosedConnections={},this.topLevel={}}Jp.prototype.add=function(e,t){return this.addAll([e],t)},Jp.prototype.addAll=function(e,t){var n=nS(e,!!t,this);return V(this,n),this};function Ca(e){this._modeling=e}Ca.prototype.moveRecursive=function(e,t,n){return e?this.moveClosure(this.getClosure(e),t,n):[]},Ca.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),B(a,function(f){o.moveShape(f,t,u[f.id]&&!l&&n,{recurse:!1,layout:!1})}),B(s,function(f){var p=!!a[f.source.id],d=!!a[f.target.id];c[f.id]&&p&&d?o.moveConnection(f,t,u[f.id]&&!l&&n):o.layoutConnection(f,{connectionStart:p&&ap(f,f.source,t),connectionEnd:d&&sp(f,f.target,t)})})},Ca.prototype.getClosure=function(e){return new Jp().addAll(e,!0)};function Mc(e){this._helper=new Ca(e)}Mc.$inject=["modeling"],Mc.prototype.preExecute=function(e){e.closure=this._helper.getClosure(e.shapes)},Mc.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 Hr(e){this._modeling=e,this._helper=new Ca(e)}Hr.$inject=["modeling"],Hr.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=oi(t,["x","y","width","height"]),e.oldParent=o,e.oldParentIndex=Ct(o.children,t),Tt(i.children,t,r),V(t,{parent:i,x:t.x+n.x,y:t.y+n.y}),t},Hr.prototype.postExecute=function(e){var t=e.shape,n=e.delta,i=e.hints,r=this._modeling;i.layout!==!1&&(B(t.incoming,function(o){r.layoutConnection(o,{connectionEnd:sp(o,t,n)})}),B(t.outgoing,function(o){r.layoutConnection(o,{connectionStart:ap(o,t,n)})})),i.recurse!==!1&&this.moveChildren(e)},Hr.prototype.revert=function(e){var t=e.shape,n=e.oldParent,i=e.oldParentIndex,r=e.delta;return Tt(n.children,t,i),V(t,{parent:n,x:t.x-r.x,y:t.y-r.y}),t},Hr.prototype.moveChildren=function(e){var t=e.delta,n=e.shape;this._helper.moveRecursive(n.children,t,null)},Hr.prototype.getNewParent=function(e){return e.newParent||e.shape.parent};function Pa(e){this._modeling=e}Pa.$inject=["modeling"],Pa.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},Pa.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||lv(De(r)?r[0]:r)),i&&(!n||o.docking==="target")&&(a.connectionEnd=a.connectionEnd||lv(De(r)?r[r.length-1]:r)),o.newWaypoints&&(a.waypoints=o.newWaypoints),this._modeling.layoutConnection(t,a))},Pa.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 lv(e){return e.original||e}function ji(e,t){this._modeling=e,this._rules=t}ji.$inject=["modeling","rules"],ji.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(g,h,m){return i.allowed("connection.reconnect",{connection:m,source:g,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 f;a.moveChildren!==!1&&(f=r.children.slice(),n.moveElements(f,{x:0,y:0},s,a));var p=r.incoming.slice(),d=r.outgoing.slice();B(p,function(g){var h=g.source,m=c(h,s,g);m&&t.reconnectEnd(g,s,ic(g,s,l),a)}),B(d,function(g){var h=g.target,m=c(s,h,g);m&&t.reconnectStart(g,s,nc(g,s,l),a)})},ji.prototype.postExecute=function(e){var t=e.oldShape;this._modeling.removeShape(t)},ji.prototype.execute=function(e){},ji.prototype.revert=function(e){},ji.prototype.createShape=function(e,t,n,i){return this._modeling.createShape(e,t,n,i)},ji.prototype.reconnectStart=function(e,t,n,i){this._modeling.reconnectStart(e,t,n,i)},ji.prototype.reconnectEnd=function(e,t,n,i){this._modeling.reconnectEnd(e,t,n,i)};function Aa(e){this._modeling=e}Aa.$inject=["modeling"],Aa.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},Aa.prototype.postExecute=function(e){var t=this._modeling,n=e.shape,i=e.oldBounds,r=e.hints||{};r.layout!==!1&&(B(n.incoming,function(o){t.layoutConnection(o,{connectionEnd:ic(o,n,i)})}),B(n.outgoing,function(o){t.layoutConnection(o,{connectionStart:nc(o,n,i)})}))},Aa.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 hr(e){this._modeling=e}hr.$inject=["modeling"],hr.prototype.preExecute=function(e){var t=e.delta,n=e.direction,i=e.movingShapes,r=e.resizingShapes,o=e.start,a={};this.moveShapes(i,t),B(r,function(s){a[s.id]=AT(s)}),this.resizeShapes(r,t,n),this.updateConnectionWaypoints(tT(i,r),t,n,o,i,r,a)},hr.prototype.execute=function(){},hr.prototype.revert=function(){},hr.prototype.moveShapes=function(e,t){var n=this;B(e,function(i){n._modeling.moveShape(i,t,null,{autoResize:!1,layout:!1,recurse:!1})})},hr.prototype.resizeShapes=function(e,t,n){var i=this;B(e,function(r){var o=nT(r,n,t);i._modeling.resizeShape(r,o,null,{attachSupport:!1,autoResize:!1,layout:!1})})},hr.prototype.updateConnectionWaypoints=function(e,t,n,i,r,o,a){var s=this,c=new Set(r),u=new Set(o);B(e,function(l){var f=l.source,p=l.target,d=PT(l),g=fv(n),h={},m=c.has(f)||u.has(f),x=c.has(p)||u.has(p);m&&x?(d=sn(d,function(y){return dv(y,i,n)&&(y[g]=y[g]+t[g]),y.original&&dv(y.original,i,n)&&(y.original[g]=y.original[g]+t[g]),y}),s._modeling.updateWaypoints(l,d,{labelBehavior:!1})):(m||x)&&(c.has(f)?h.connectionStart=ap(l,f,t):c.has(p)?h.connectionEnd=sp(l,p,t):u.has(f)?h.connectionStart=nc(l,f,a[f.id]):u.has(p)&&(h.connectionEnd=ic(l,p,a[p.id])),s._modeling.layoutConnection(l,h))})};function pv(e){return V({},e)}function PT(e){return sn(e.waypoints,function(t){return t=pv(t),t.original&&(t.original=pv(t.original)),t})}function fv(e){switch(e){case"n":return"y";case"w":return"x";case"s":return"y";case"e":return"x"}}function dv(e,t,n){var i=fv(n);if(/e|s/.test(n))return e[i]>t;if(/n|w/.test(n))return e[i]<t}function AT(e){return{x:e.x,y:e.y,height:e.height,width:e.width}}function kc(e){this._modeling=e}kc.$inject=["modeling"],kc.prototype.execute=function(e){var t=e.shape,n=t.children;e.oldChildrenVisibility=hv(n),t.collapsed=!t.collapsed;var i=mv(n,t.collapsed);return[t].concat(i)},kc.prototype.revert=function(e){var t=e.shape,n=e.oldChildrenVisibility,i=t.children,r=gv(i,n);return t.collapsed=!t.collapsed,[t].concat(r)};function hv(e){var t={};return B(e,function(n){t[n.id]=n.hidden,n.children&&(t=V({},t,hv(n.children)))}),t}function mv(e,t){var n=[];return B(e,function(i){i.hidden=t,n=n.concat(i),i.children&&(n=n.concat(mv(i.children,i.collapsed||t)))}),n}function gv(e,t){var n=[];return B(e,function(i){i.hidden=t[i.id],n=n.concat(i),i.children&&(n=n.concat(gv(i.children,t)))}),n}function Oc(e){this._modeling=e}Oc.$inject=["modeling"],Oc.prototype.execute=function(e){var t=e.shape,n=e.newHost,i=t.host;return e.oldHost=i,e.attacherIdx=yv(i,t),vv(n,t),t.host=n,t},Oc.prototype.revert=function(e){var t=e.shape,n=e.newHost,i=e.oldHost,r=e.attacherIdx;return t.host=i,yv(n,t),vv(i,t,r),t};function yv(e,t){return Ct(e&&e.attachers,t)}function vv(e,t,n){if(e){var i=e.attachers;i||(e.attachers=i=[]),Tt(i,t,n)}}function ef(){}ef.prototype.execute=function(e){var t=e.connection,n=e.newWaypoints;return e.oldWaypoints=t.waypoints,t.waypoints=n,t},ef.prototype.revert=function(e){var t=e.connection,n=e.oldWaypoints;return t.waypoints=n,t};function at(e,t,n){this._eventBus=e,this._elementFactory=t,this._commandStack=n;var i=this;e.on("diagram.init",function(){i.registerHandlers(n)})}at.$inject=["eventBus","elementFactory","commandStack"],at.prototype.getHandlers=function(){return{"shape.append":Rc,"shape.create":dr,"shape.delete":Ra,"shape.move":Hr,"shape.resize":Aa,"shape.replace":ji,"shape.toggleCollapse":kc,spaceTool:hr,"label.create":Ea,"connection.create":Cc,"connection.delete":Sa,"connection.move":Qp,"connection.layout":Tc,"connection.updateWaypoints":ef,"connection.reconnect":Pa,"elements.create":Xp,"elements.move":Mc,"elements.delete":Zp,"elements.distribute":Ac,"elements.align":Sc,"element.updateAttachment":Oc}},at.prototype.registerHandlers=function(e){B(this.getHandlers(),function(t,n){e.registerHandler(n,t)})},at.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)},at.prototype.updateAttachment=function(e,t){var n={shape:e,newHost:t};this._commandStack.execute("element.updateAttachment",n)},at.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)},at.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)},at.prototype.layoutConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.layout",n)},at.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},at.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},at.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},at.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},at.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},at.prototype.removeElements=function(e){var t={elements:e};this._commandStack.execute("elements.delete",t)},at.prototype.distributeElements=function(e,t,n){var i={groups:e,axis:t,dimension:n};this._commandStack.execute("elements.distribute",i)},at.prototype.removeShape=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.delete",n)},at.prototype.removeConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.delete",n)},at.prototype.replaceShape=function(e,t,n){var i={oldShape:e,newData:t,hints:n||{}};return this._commandStack.execute("shape.replace",i),i.newShape},at.prototype.alignElements=function(e,t){var n={elements:e,alignment:t};this._commandStack.execute("elements.align",n)},at.prototype.resizeShape=function(e,t,n,i){var r={shape:e,newBounds:t,minBounds:n,hints:i};this._commandStack.execute("shape.resize",r)},at.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)},at.prototype.updateWaypoints=function(e,t,n){var i={connection:e,newWaypoints:t,hints:n||{}};this._commandStack.execute("connection.updateWaypoints",i)},at.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)},at.prototype.reconnectStart=function(e,t,n,i){i||(i={}),this.reconnect(e,t,e.target,n,V(i,{docking:"source"}))},at.prototype.reconnectEnd=function(e,t,n,i){i||(i={}),this.reconnect(e,e.source,t,n,V(i,{docking:"target"}))},at.prototype.connect=function(e,t,n,i){return this.createConnection(e,t,n||{},e.parent,i)},at.prototype._create=function(e,t){return HS(t)?t:this._elementFactory.create(e,t)},at.prototype.toggleCollapse=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.toggleCollapse",n)};function Ta(e){this._elementRegistry=e}Ta.$inject=["elementRegistry"],Ta.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||TT(n,rs(i));return bv(n,i),e.oldProperties=o,e.changed=r,r},Ta.prototype.revert=function(e){var t=e.oldProperties,n=e.moddleElement,i=e.changed;return bv(n,t),i},Ta.prototype._getVisualReferences=function(e){var t=this._elementRegistry;return w(e,"bpmn:DataObject")?MT(e,t):[]};function TT(e,t){return Cn(t,function(n,i){return n[i]=e.get(i),n},{})}function bv(e,t){B(t,function(n,i){e.set(i,n)})}function MT(e,t){return t.filter(function(n){return w(n,"bpmn:DataObjectReference")&&ie(n).dataObjectRef===e})}var Ma="default",Hi="id",_v="di",kT={width:0,height:0};function ka(e,t,n,i){this._elementRegistry=e,this._moddle=t,this._modeling=n,this._textRenderer=i}ka.$inject=["elementRegistry","moddle","modeling","textRenderer"],ka.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=BT(e.properties),s=e.oldProperties||OT(t,a);return xv(a,o)&&(r.unclaim(o[Hi]),i.updateId(t,a[Hi]),r.claim(a[Hi],o)),Ma in a&&(a[Ma]&&n.push(i.get(a[Ma].id)),o[Ma]&&n.push(i.get(o[Ma].id))),wv(t,a),e.oldProperties=s,e.changed=n,n},ka.prototype.postExecute=function(e){var t=e.element,n=t.label,i=n&&ie(n).name;if(i){var r=this._textRenderer.getExternalLabelBounds(n,i);this._modeling.resizeShape(n,r,kT)}},ka.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 wv(t,i),xv(n,r)&&(a.unclaim(n[Hi]),o.updateId(t,i[Hi]),a.claim(i[Hi],r)),e.changed};function xv(e,t){return Hi in e&&e[Hi]!==t[Hi]}function OT(e,t){var n=rs(t),i=e.businessObject,r=Ze(e);return Cn(n,function(o,a){return a!==_v?o[a]=i.get(a):o[a]=DT(r,rs(t.di)),o},{})}function DT(e,t){return Cn(t,function(n,i){return n[i]=e&&e.get(i),n},{})}function wv(e,t){var n=e.businessObject,i=Ze(e);B(t,function(r,o){o!==_v?n.set(o,r):i&&LT(i,r)})}function LT(e,t){B(t,function(n,i){e.set(i,n)})}var IT=["default"];function BT(e){var t=V({},e);return IT.forEach(function(n){n in e&&(t[n]=ie(t[n]))}),t}function Dc(e,t){this._canvas=e,this._modeling=t}Dc.$inject=["canvas","modeling"],Dc.prototype.execute=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=t.getRootElement(),o=r.businessObject,a=o.$parent,s=Ze(r);return t.setRootElement(n),t.removeRootElement(r),Tt(a.rootElements,i),i.$parent=a,Ct(a.rootElements,o),o.$parent=null,r.di=null,s.bpmnElement=i,n.di=s,e.oldRoot=r,[]},Dc.prototype.revert=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=e.oldRoot,o=r.businessObject,a=i.$parent,s=Ze(n);return t.setRootElement(r),t.removeRootElement(n),Ct(a.rootElements,i),i.$parent=null,Tt(a.rootElements,o),o.$parent=a,n.di=null,s.bpmnElement=o,r.di=s,[]};function tf(e,t){this._modeling=e,this._spaceTool=t}tf.$inject=["modeling","spaceTool"],tf.prototype.preExecute=function(e){var t=this._spaceTool,n=this._modeling,i=e.shape,r=e.location,o=Kn(i),a=o===i,s=a?i:i.parent,c=ar(s),u=Yt(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+Yn,y:i.y,width:i.width-Yn,height:i.height}:{x:i.x,y:i.y+Yn,width:i.width,height:i.height-Yn};n.createShape({type:"bpmn:Lane",isHorizontal:u},l,s)}var f=[];Dr(o,function(S){return f.push(S),S.label&&f.push(S.label),S===i?[]:We(S.children,function(P){return P!==i})});var p,d,g,h,m;r==="top"?(p=-120,d=i.y,g=d+10,h="n",m="y"):r==="left"?(p=-120,d=i.x,g=d+10,h="w",m="x"):r==="bottom"?(p=120,d=i.y+i.height,g=d-10,h="s",m="y"):r==="right"&&(p=120,d=i.x+i.width,g=d-10,h="e",m="x");var x=t.calculateAdjustments(f,m,p,g),y=u?{x:0,y:p}:{x:p,y:0};t.makeSpace(x.movingShapes,x.resizingShapes,y,h,g);var _=u?{x:i.x+(a?Yn:0),y:d-(r==="top"?120:0),width:i.width-(a?Yn:0),height:120}:{x:d-(r==="left"?120:0),y:i.y+(a?Yn:0),width:120,height:i.height-(a?Yn:0)};e.newLane=n.createShape({type:"bpmn:Lane",isHorizontal:u},_,s)};function nf(e){this._modeling=e}nf.$inject=["modeling"],nf.prototype.preExecute=function(e){var t=this._modeling,n=e.shape,i=e.count,r=ar(n),o=r.length;if(o>i)throw new Error(`more than <${i}> child lanes`);var a=Yt(n),s=a?n.height:n.width,c=Math.round(s/i),u,l,f,p;for(p=0;p<i;p++)p===i-1?u=s-c*p:u=c,l=a?{x:n.x+Yn,y:n.y+p*c,width:n.width-Yn,height:u}:{x:n.x+p*c,y:n.y+Yn,width:u,height:n.height-Yn},p<o?t.resizeShape(r[p],l):(f={type:"bpmn:Lane",isHorizontal:a},t.createShape(f,l,n))};function Oa(e,t){this._modeling=e,this._spaceTool=t}Oa.$inject=["modeling","spaceTool"],Oa.prototype.preExecute=function(e){var t=e.shape,n=e.newBounds,i=e.balanced;i!==!1?this.resizeBalanced(t,n):this.resizeSpace(t,n)},Oa.prototype.resizeBalanced=function(e,t){var n=this._modeling,i=MC(e,t);n.resizeShape(e,t),i.forEach(function(r){n.resizeShape(r.shape,r.newBounds)})},Oa.prototype.resizeSpace=function(e,t){var n=this._spaceTool,i=Ae(e),r=Ae(t),o=eg(r,i),a=Kn(e),s=[],c=[];Dr(a,function(g){return s.push(g),(w(g,"bpmn:Lane")||w(g,"bpmn:Participant"))&&c.push(g),g.children});var u,l,f,p,d;(o.bottom||o.top)&&(u=o.bottom||o.top,l=e.y+(o.bottom?e.height:0)+(o.bottom?-10:10),f=o.bottom?"s":"n",p=o.top>0||o.bottom<0?-u:u,d=n.calculateAdjustments(s,"y",p,l),n.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:u},f)),(o.left||o.right)&&(u=o.right||o.left,l=e.x+(o.right?e.width:0)+(o.right?-10:100),f=o.right?"e":"w",p=o.left>0||o.right<0?-u:u,d=n.calculateAdjustments(c,"x",p,l),n.makeSpace(d.movingShapes,d.resizingShapes,{x:u,y:0},f))};var Da="flowNodeRef",rf="lanes";function Lc(){}Lc.prototype._computeUpdates=function(e,t){var n=[],i=[],r={},o=[];function a(l,f){var p=Ae(f),d={x:l.x+l.width/2,y:l.y+l.height/2};return d.x>p.left&&d.x<p.right&&d.y>p.top&&d.y<p.bottom}function s(l){n.indexOf(l)===-1&&(o.push(l),n.push(l))}function c(l){var f=Kn(l);return r[f.id]||(r[f.id]=Zs(f)),r[f.id]}function u(l){if(!l.parent)return[];var f=c(l);return f.filter(function(p){return a(l,p)}).map(function(p){return p.businessObject})}return t.forEach(function(l){var f=Kn(l);if(!(!f||n.indexOf(f)!==-1)){var p=f.children.filter(function(d){return w(d,"bpmn:FlowNode")});p.forEach(s),n.push(f)}}),e.forEach(s),o.forEach(function(l){var f=l.businessObject,p=f.get(rf),d=p.slice(),g=u(l);i.push({flowNode:f,remove:d,add:g})}),t.forEach(function(l){var f=l.businessObject;l.parent||f.get(Da).forEach(function(p){i.push({flowNode:p,remove:[f],add:[]})})}),i},Lc.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(rf);n.remove.forEach(function(o){Ct(r,o),Ct(o.get(Da),i)}),n.add.forEach(function(o){Tt(r,o),Tt(o.get(Da),i)})}),[]},Lc.prototype.revert=function(e){var t=e.updates;return t.forEach(function(n){var i=n.flowNode,r=i.get(rf);n.add.forEach(function(o){Ct(r,o),Ct(o.get(Da),i)}),n.remove.forEach(function(o){Tt(r,o),Tt(o.get(Da),i)})}),[]};var of="categoryValueRef";function La(e,t){this._bpmnFactory=e,this._elementRegistry=t}La.$inject=["bpmnFactory","elementRegistry"],La.prototype._computeUpdates=function(e,t){var n=this._elementRegistry,i=this._bpmnFactory,r=new Map,o=[],a=new Map;function s(y,_,S){if(_){var P=a.get(y);P||(P={},a.set(y,P)),!(S&&P.present)&&(!S&&P.past||(S?P.present={categoryValue:_,root:af(y)}:P.past={categoryValue:_}))}}function c(y){r.set(y,ie(y))}function u(){n.filter(function(y){return w(y,"bpmn:FlowElement")&&!Ge(y)&&y.parent}).forEach(c)}function l(y){var _=ie(y),S=_.get("categoryValueRef");return S||(S=Km(i,_),o.push(NT(y,S))),S}function f(y){return y.reduce(function(_,S){var P=af(S),C=_.get(P);return C||(C=[],_.set(P,C)),C.push(S),_},new Map)}e=Array.from(e||[]);var p=f(e);t.length&&u(),e.forEach(c),n.filter(function(y){return w(y,"bpmn:Group")&&!Ge(y)&&y.parent}).forEach(function(y){var _=ie(y).get("categoryValueRef");if(!_){var S=af(y),P=p.get(S)||[],C=po(P,y),L=Object.keys(C).length>0;L&&(_=l(y))}s(y,_,!0)}),t.forEach(function(y){s(y.groupShape,y.categoryValue,!1)}),o.length&&u();var d=Array.from(r.keys()),g=Array.from(a.values()).reduce(function(y,_){return _.present&&y.add(_.present.categoryValue),_.past&&y.add(_.past.categoryValue),y},new Set),h=new Map,m=f(d);a.forEach(function(y,_){var S=y.present;if(S){var P=m.get(S.root)||[],C=po(P,_);P.forEach(function(L){if(C[L.id]){var T=h.get(L);T||(T=new Set,h.set(L,T)),T.add(S.categoryValue)}})}});var x=d.reduce(function(y,_){var S=r.get(_),P=S.get(of),C=new Set(P),L=h.get(_)||new Set,T=Array.from(L).filter(function(k){return!C.has(k)}),j=P.filter(function(k){return g.has(k)&&!L.has(k)});return(T.length||j.length)&&y.push({businessObject:S,categoryValuesToAdd:T,categoryValuesToRemove:j}),y},[]);return{flowElements:x,groups:o}},La.prototype.execute=function(e){var t=e.updates;return t||(t=e.updates=this._computeUpdates(e.affectedFlowElements,e.affectedGroupEntries)),$T(t.groups),jT(t.flowElements),[]},La.prototype.revert=function(e){var t=e.updates;return HT(t.flowElements),FT(t.groups),[]};function NT(e,t){return{groupShape:e,categoryValue:t,category:t.$parent}}function $T(e){e.forEach(function(t){ie(t.groupShape).categoryValueRef=t.categoryValue,t.categoryValue.$parent=t.category})}function FT(e){e.forEach(function(t){ie(t.groupShape).categoryValueRef=null})}function jT(e){e.forEach(function(t){var n=t.businessObject,i=n.get(of);t.categoryValuesToRemove.forEach(function(r){Ct(i,r)}),t.categoryValuesToAdd.forEach(function(r){Tt(i,r,!0)})})}function HT(e){e.forEach(function(t){var n=t.businessObject,i=n.get(of);t.categoryValuesToAdd.forEach(function(r){Ct(i,r)}),t.categoryValuesToRemove.forEach(function(r){Tt(i,r,!0)})})}function af(e){for(;e.parent;)e=e.parent;return e}function Ic(e){this._moddle=e}Ic.$inject=["moddle"],Ic.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),[]},Ic.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 zT={fill:void 0,stroke:void 0};function sf(e){this._commandStack=e,this._normalizeColor=function(t){if(t){if(Sn(t)){var n=GT(t);if(n)return n}throw new Error(`invalid color value: ${t}`)}}}sf.$inject=["commandStack"],sf.prototype.postExecute=function(e){var t=e.elements,n=e.colors||zT,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)}),B(t,function(o){var a=ot(o)?oi(r,["border-color"]):r,s=Ze(o);if(VT(a),Ge(o)){if(!s||!w(s.label,"bpmndi:BPMNLabel"))return;i._commandStack.execute("element.updateModdleProperties",{element:o,moddleElement:s.label,properties:{color:r["border-color"]}})}else{if(!Ve(s,["bpmndi:BPMNEdge","bpmndi:BPMNShape"]))return;i._commandStack.execute("element.updateProperties",{element:o,properties:{di:a}})}})};function GT(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 VT(e){"border-color"in e&&(e.stroke=e["border-color"]),"background-color"in e&&(e.fill=e["background-color"])}var WT={width:0,height:0};function Ev(e,t,n){function i(c,u){var l=c.label||c,f=c.labelTarget||c;return bR(l,u),[l,f]}function r(c){var u=c.element,l=u.businessObject,f=c.newLabel;if(!Ge(u)&&rr(u)&&!$s(u)&&!Sv(f)){var p=7,d=Ml(u);d={x:d.x,y:d.y+p},e.createLabel(u,d,{id:l.id+"_label",businessObject:l,di:u.di})}}function o(c){return c.oldLabel=zn(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,f=c.newLabel,p=c.newBounds,d=c.hints||{};if(!(!Ge(l)&&!w(l,"bpmn:TextAnnotation"))){if(Ge(l)&&Sv(f)){d.removeShape!==!1&&e.removeShape(l,{unsetLabel:!1});return}var g=zn(u);typeof p>"u"&&(p=t.getExternalLabelBounds(l,g)),p&&e.resizeShape(l,p,WT)}}this.preExecute=r,this.execute=o,this.revert=a,this.postExecute=s}Ev.$inject=["modeling","textRenderer","bpmnFactory"];function Sv(e){return!e||!e.trim()}function nn(e,t,n,i){at.call(this,e,t,n),this._bpmnRules=i}_e(nn,at),nn.$inject=["eventBus","elementFactory","commandStack","bpmnRules"],nn.prototype.getHandlers=function(){var e=at.prototype.getHandlers.call(this);return e["element.updateModdleProperties"]=Ta,e["element.updateProperties"]=ka,e["canvas.updateRoot"]=Dc,e["lane.add"]=tf,e["lane.resize"]=Oa,e["lane.split"]=nf,e["lane.updateRefs"]=Lc,e["group.updateRefs"]=La,e["id.updateClaim"]=Ic,e["element.setColor"]=sf,e["element.updateLabel"]=Ev,e},nn.prototype.updateLabel=function(e,t,n,i){this._commandStack.execute("element.updateLabel",{element:e,newLabel:t,newBounds:n,hints:i||{}})},nn.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)},nn.prototype.updateModdleProperties=function(e,t,n){this._commandStack.execute("element.updateModdleProperties",{element:e,moddleElement:t,properties:n})},nn.prototype.updateProperties=function(e,t){this._commandStack.execute("element.updateProperties",{element:e,properties:t})},nn.prototype.resizeLane=function(e,t,n){this._commandStack.execute("lane.resize",{shape:e,newBounds:t,balanced:n})},nn.prototype.addLane=function(e,t){var n={shape:e,location:t};return this._commandStack.execute("lane.add",n),n.newLane},nn.prototype.splitLane=function(e,t){this._commandStack.execute("lane.split",{shape:e,count:t})},nn.prototype.makeCollaboration=function(){var e=this._create("root",{type:"bpmn:Collaboration"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},nn.prototype.makeProcess=function(){var e=this._create("root",{type:"bpmn:Process"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},nn.prototype.updateLaneRefs=function(e,t){this._commandStack.execute("lane.updateRefs",{flowNodeShapes:e,laneShapes:t})},nn.prototype.updateCategoryValueRefs=function(e,t){this._commandStack.execute("group.updateRefs",{affectedFlowElements:e,affectedGroupEntries:t})},nn.prototype.claimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t,claiming:!0})},nn.prototype.unclaimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t})},nn.prototype.setColor=function(e,t){e.length||(e=[e]),this._commandStack.execute("element.setColor",{elements:e,colors:t})};function Rv(){}Rv.prototype.layoutConnection=function(e,t){return t=t||{},[t.connectionStart||Le(t.source||e.source),t.connectionEnd||Le(t.target||e.target)]};var Bc=20,UT=5,Nc=Math.round,Cv=20,qT={"h:h":20,"v:v":20,"h:v":-10,"v:h":-10};function YT(e,t){return!{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/./,v:/./}[t].test(e)}function KT(e,t){return{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/left|right/,v:/top|bottom/}[e].test(t)}function Pv(e,t,n){var i=Jt(t,e,UT),r=n.split(":")[0],o=Nc((t.x-e.x)/2+e.x),a=Nc((t.y-e.y)/2+e.y),s,c,u=KT(r,i),l=/h|r|l/.test(r),f=!1,p=!1;return u?(s=l?{x:o,y:e.y}:{x:e.x,y:a},c=l?"h:h":"v:v"):(f=YT(i,r),c=l?"h:v":"v:h",f?l?(p=a===e.y,s={x:e.x+Bc*(/l/.test(r)?-1:1),y:p?a+Bc:a}):(p=o===e.x,s={x:p?o+Bc:o,y:e.y+Bc*(/t/.test(r)?-1:1)}):s={x:o,y:a}),{waypoints:cf(e,s,c).concat(s),directions:c,turnNextDirections:p}}function XT(e,t,n){return Pv(e,t,n)}function ZT(e,t,n){var i=Pv(t,e,Av(n));return{waypoints:i.waypoints.slice().reverse(),directions:Av(i.directions),turnNextDirections:i.turnNextDirections}}function QT(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=cf(e.waypoints[e.waypoints.length-1],t.waypoints[0],r);return{waypoints:o,directions:r}}function Av(e){return e.split(":").reverse().join(":")}function JT(e,t,n){var i=Nc((t.x-e.x)/2+e.x),r=Nc((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 cf(e,t,n){if(n=n||"h:h",!cM(n))throw new Error("unknown directions: <"+n+">: must be specified as <start>:<end> with start/end in { h,v,t,r,b,l }");if(Mv(n)){var i=XT(e,t,n),r=ZT(e,t,n),o=QT(i,r);return[].concat(i.waypoints,o.waypoints,r.waypoints)}return JT(e,t,n)}function eM(e,t,n){var i=cf(e,t,n);return i.unshift(e),i.push(t),Ov(i)}function tM(e,t,n,i,r){var o=r&&r.preferredLayouts||[],a=K0(o,"straight")[0]||"h:h",s=qT[a]||0,c=Jt(e,t,s),u=sM(c,a);n=n||Le(e),i=i||Le(t);var l=u.split(":"),f=kv(n,e,l[0],uM(c)),p=kv(i,t,l[1],c);return eM(f,p,u)}function nM(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&&rM(e,t,n,i,o),c||(c=o.connectionEnd&&aM(t,e,i,r),c)||(c=o.connectionStart&&oM(e,t,n,r),c)?c:!o.connectionStart&&!o.connectionEnd&&r&&r.length?r:tM(e,t,n,i,o)}function iM(e,t,n){return e>=t&&e<=n}function Tv(e,t,n){var i={x:"width",y:"height"};return iM(t[e],n[e],n[e]+n[i[e]])}function rM(e,t,n,i,r){var o={},a,s;return s=Jt(e,t),/^(top|bottom|left|right)$/.test(s)?(/top|bottom/.test(s)&&(a="x"),/left|right/.test(s)&&(a="y"),r.preserveDocking==="target"?Tv(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:Tv(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 oM(e,t,n,i){return uf(e,t,n,i)}function aM(e,t,n,i){var r=i.slice().reverse();return r=uf(e,t,n,r),r?r.reverse():null}function uf(e,t,n,i){function r(l){return l.length<3?!0:l.length>4?!1:!!lt(l,function(f,p){var d=l[p-1];return d&&ra(f,d)<3})}function o(l,f,p){var d=Oi(f,l);switch(d){case"v":return{x:p.x,y:l.y};case"h":return{x:l.x,y:p.y}}return{x:l.x,y:l.y}}function a(l,f,p){var d;for(d=l.length-2;d!==0;d--)if(tm(l[d],f,Cv)||tm(l[d],p,Cv))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=uf(e,t,n,u)),c&&Oi(c)?null:c}function sM(e,t){if(Mv(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 cM(e){return e&&/^h|v|t|r|b|l:h|v|t|r|b|l$/.test(e)}function Mv(e){return e&&/t|r|b|l/.test(e)}function uM(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 kv(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 Ov(e){return e.reduce(function(t,n,i){var r=t[t.length-1],o=e[i+1];return Rl(r,o,n,0)||t.push(n),t},[])}var lM=-10,pM=40,fM={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},dM={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},lf={top:"bottom","top-right":"bottom-left","top-left":"bottom-right",right:"left",bottom:"top","bottom-right":"top-left","bottom-left":"top-right",left:"right"},Ia={top:"t",right:"r",bottom:"b",left:"l"};function $c(e){this._elementRegistry=e}_e($c,Rv),$c.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=Dv(r&&r[0],n)),a||(a=Dv(r&&r[r.length-1],i)),(w(e,"bpmn:Association")||w(e,"bpmn:DataAssociation"))&&r&&!Lv(n,i))return[].concat([o],r.slice(1,-1),[a]);var l=Wm(n,s)?fM:dM;return w(e,"bpmn:MessageFlow")?c=mM(n,i,l):(w(e,"bpmn:SequenceFlow")||Lv(n,i))&&(n===i?c={preferredLayouts:xM(n,e,l)}:w(n,"bpmn:BoundaryEvent")?c={preferredLayouts:wM(n,i,a,l)}:Ba(n)||Ba(i)?c={preferredLayouts:l.subProcess,preserveDocking:yM(n)}:w(n,"bpmn:Gateway")?c={preferredLayouts:l.fromGateway}:w(i,"bpmn:Gateway")?c={preferredLayouts:l.toGateway}:c={preferredLayouts:l.default}),c&&(c=V(c,t),u=Ov(nM(n,i,o,a,r,c))),u||[o,a]};function hM(e){var t=e.host;return Jt(Le(e),t,lM)}function mM(e,t,n){return{preferredLayouts:n.messageFlow,preserveDocking:gM(e,t)}}function gM(e,t){return w(t,"bpmn:Participant")?"source":w(e,"bpmn:Participant")?"target":Ba(t)?"source":Ba(e)||w(t,"bpmn:Event")?"target":w(e,"bpmn:Event")?"source":null}function yM(e){return Ba(e)?"target":"source"}function Dv(e,t){return e?e.original||e:Le(t)}function Lv(e,t){return w(t,"bpmn:Activity")&&w(e,"bpmn:BoundaryEvent")&&t.businessObject.isForCompensation}function Ba(e){return w(e,"bpmn:SubProcess")&&Ke(e)}function zr(e,t){return e===t}function vM(e,t){return t.indexOf(e)!==-1}function ko(e){var t=/right|left/.exec(e);return t&&t[0]}function Oo(e){var t=/top|bottom/.exec(e);return t&&t[0]}function Iv(e,t){return lf[e]===t}function bM(e,t){var n=ko(e),i=lf[n];return t.indexOf(i)!==-1}function _M(e,t){var n=Oo(e),i=lf[n];return t.indexOf(i)!==-1}function Bv(e){return e==="right"||e==="left"}function xM(e,t,n){var i=t.waypoints,r=i&&i.length&&Jt(i[0],e);return r==="top"?n.loop.fromTop:r==="right"?n.loop.fromRight:r==="left"?n.loop.fromLeft:n.loop.fromBottom}function wM(e,t,n,i){var r=Le(e),o=Le(t),a=hM(e),s,c,u=zr(e.host,t),l=vM(a,["top","right","bottom","left"]),f=Jt(o,r,{x:e.width/2+t.width/2,y:e.height/2+t.height/2});return u?EM(a,l,e,t,n,i):(s=SM(a,f,l,i.isHorizontal),c=RM(a,f,l,i.isHorizontal),[s+":"+c])}function EM(e,t,n,i,r,o){var a=t?e:o.isHorizontal?Oo(e):ko(e),s=Ia[a],c;return t?Bv(e)?c=Nv("y",n,i,r)?"h":o.boundaryLoop.alternateHorizontalSide:c=Nv("x",n,i,r)?"v":o.boundaryLoop.alternateVerticalSide:c=o.boundaryLoop.default,[s+":"+c]}function Nv(e,t,n,i){var r=pM;return!(pf(e,i,n,r)||pf(e,i,{x:n.x+n.width,y:n.y+n.height},r)||pf(e,i,Le(t),r))}function pf(e,t,n,i){return Math.abs(t[e]-n[e])<i}function SM(e,t,n,i){if(n)return Ia[e];var r=Oo(e),o=ko(e),a=Oo(t),s=ko(t);if(i){if(zr(r,a)||Iv(o,s))return Ia[r]}else if(zr(o,s)||Iv(r,a))return Ia[o];return Ia[i?o:r]}function RM(e,t,n,i){if(n)return Bv(e)?bM(e,t)||zr(e,t)?"h":"v":_M(e,t)||zr(e,t)?"v":"h";var r=Oo(e),o=ko(e),a=Oo(t),s=ko(t);return a&&!s?"v":s&&!a?"h":i?zr(r,a)?"h":"v":zr(o,s)?"v":"h"}$c.$inject=["elementRegistry"];function $v(e){return V({original:e.point.original||e.point},e.actual)}function mr(e,t){this._elementRegistry=e,this._graphicsFactory=t}mr.$inject=["elementRegistry","graphicsFactory"],mr.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($v(i)),o.push($v(r)),o},mr.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}},mr.prototype._getIntersection=function(e,t,n){var i=this._getShapePath(e),r=this._getConnectionPath(t);return oa(i,r,n)},mr.prototype._getConnectionPath=function(e){return this._graphicsFactory.getConnectionPath(e)},mr.prototype._getShapePath=function(e){return this._graphicsFactory.getShapePath(e)},mr.prototype._getGfx=function(e){return this._elementRegistry.getGraphics(e)};const ff={__init__:["modeling","bpmnUpdater"],__depends__:[VP,aA,cA,uA,Xy,lT,fT,vT,Zn,Yp,nv],bpmnFactory:["type",Jn],bpmnUpdater:["type",Dn],elementFactory:["type",fr],modeling:["type",nn],layouter:["type",$c],connectionDocking:["type",mr]};var CM=10,Fv=50,PM=250;function df(e,t,n,i){for(var r;r=AM(e,n,t);)n=i(t,n,r);return n}function hf(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 AM(e,t,n){var i={x:t.x-n.width/2,y:t.y-n.height/2,width:n.width,height:n.height},r=MM(e);return lt(r,function(o){if(o===n)return!1;var a=Jt(o,i,CM);return a==="intersect"})}function TM(e,t){t||(t={});function n(g){return g.source===e?1:-1}var i=t.defaultDistance||Fv,r=t.direction||"e",o=t.filter,a=t.getWeight||n,s=t.maxDistance||PM,c=t.reference||"start";o||(o=DM);function u(g,h){return r==="n"?c==="start"?Ae(g).top-Ae(h).bottom:c==="center"?Ae(g).top-Le(h).y:Ae(g).top-Ae(h).top:r==="w"?c==="start"?Ae(g).left-Ae(h).right:c==="center"?Ae(g).left-Le(h).x:Ae(g).left-Ae(h).left:r==="s"?c==="start"?Ae(h).top-Ae(g).bottom:c==="center"?Le(h).y-Ae(g).bottom:Ae(h).bottom-Ae(g).bottom:c==="start"?Ae(h).left-Ae(g).right:c==="center"?Le(h).x-Ae(g).right:Ae(h).right-Ae(g).right}var l=e.incoming.filter(o).map(function(g){var h=a(g),m=h<0?u(g.source,e):u(e,g.source);return{id:g.source.id,distance:m,weight:h}}),f=e.outgoing.filter(o).map(function(g){var h=a(g),m=h>0?u(e,g.target):u(g.target,e);return{id:g.target.id,distance:m,weight:h}}),p=l.concat(f).reduce(function(g,h){return g[h.id+"__weight_"+h.weight]=h,g},{}),d=Cn(p,function(g,h){var m=h.distance,x=h.weight;return m<0||m>s||(g[String(m)]||(g[String(m)]=0),g[String(m)]+=1*x,(!g.distance||g[g.distance]<g[String(m)])&&(g.distance=m)),g},{});return d.distance||i}function MM(e){var t=mf(e);return e.host&&(t=t.concat(mf(e.host))),e.attachers&&(t=t.concat(e.attachers.reduce(function(n,i){return n.concat(mf(i))},[]))),t}function mf(e){return OM(e).concat(kM(e))}function kM(e){return e.incoming.map(function(t){return t.source})}function OM(e){return e.outgoing.map(function(t){return t.target})}function DM(){return!0}var LM=100;function jv(e,t,n){e.on("autoPlace",LM,function(i){var r=i.shape,o=i.source;return IM(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}}jv.$inject=["eventBus","modeling","canvas"];function IM(e,t,n){n||(n={});var i=n.defaultDistance||Fv,r=Le(e),o=Ae(e);return{x:o.right+i+t.width/2,y:r.y}}function Hv(e,t){e.on("autoPlace.end",500,function(n){t.select(n.shape)})}Hv.$inject=["eventBus","selection"];const BM={__init__:["autoPlaceSelectionBehavior"],autoPlace:["type",jv],autoPlaceSelectionBehavior:["type",Hv]};function zv(e,t,n){var i=Wm(e,n);if(w(t,"bpmn:TextAnnotation"))return $M(e,t,i);if(Ve(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"]))return FM(e,t,i);if(w(t,"bpmn:FlowNode"))return NM(e,t,i)}function NM(e,t,n){var i=Ae(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=TM(e,{filter:function(d){return w(d,"bpmn:SequenceFlow")},direction:o.directionHint}),s=30,c=o.minDistance,u=o.baseOrientation;w(e,"bpmn:BoundaryEvent")&&(u=Jt(e,e.host,-25),u.indexOf(o.boundaryOrientation)!==-1&&(s*=-1));var l=n?{x:i.right+a+t.width/2,y:r.y+Gv(u,c,o)}:{x:r.x+Gv(u,c,o),y:i.bottom+a+t.height/2},f={margin:s,minDistance:c},p=n?{y:f}:{x:f};return df(e,t,l,hf(p))}function Gv(e,t,n){return e.includes(n.start)?-1*t:e.includes(n.end)?t:0}function $M(e,t,n){var i=Ae(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};ot(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 df(e,t,r,hf(a))}function FM(e,t,n){var i=Ae(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 df(e,t,r,hf(a))}function Vv(e,t){e.on("autoPlace",function(n){var i=n.shape,r=n.source;return zv(r,i,t)})}Vv.$inject=["eventBus","elementRegistry"];const Fc={__depends__:[BM],__init__:["bpmnAutoPlace"],bpmnAutoPlace:["type",Vv]},Wv=[Gm,pa,ff,Fc];function jM(e={}){$d(globalThis,e.dom);const t=document.createElement("div");return document.body.appendChild(t),new mo({container:t,moddleExtensions:e.moddleExtensions??ps,additionalModules:[...Wv,...e.additionalModules??[]]})}var HM=new To("ov"),zM=500;function Zt(e,t,n,i){this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=HM,this._overlayDefaults=V({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=GM(n.getContainer()),this._init()}Zt.$inject=["config.overlays","eventBus","canvas","elementRegistry"],Zt.prototype.get=function(e){if(Sn(e)&&(e={id:e}),Sn(e.element)&&(e.element=this._elementRegistry.get(e.element)),e.element){var t=this._getOverlayContainer(e.element,!0);return t?e.type?We(t.overlays,to({type:e.type})):t.overlays.slice():[]}else return e.type?We(this._overlays,to({type:e.type})):e.id?this._overlays[e.id]:null},Zt.prototype.add=function(e,t,n){if(Wt(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},Zt.prototype.remove=function(e){var t=this.get(e)||[];De(t)||(t=[t]);var n=this;B(t,function(i){var r=n._getOverlayContainer(i.element,!0);if(i&&(mi(i.html),mi(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)}})},Zt.prototype.isShown=function(){return this._overlayRoot.style.display!=="none"},Zt.prototype.show=function(){jc(this._overlayRoot)},Zt.prototype.hide=function(){jc(this._overlayRoot,!1)},Zt.prototype.clear=function(){this._overlays={},this._overlayContainers=[],Es(this._overlayRoot)},Zt.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=Dt(t);i=o.x,r=o.y}Uv(n,i,r),ln(e.html,"data-container-id",t.id)},Zt.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=Dt(i).width:a=i.width,r=t.right*-1+a}if(t.bottom!==void 0){var s;i.waypoints?s=Dt(i).height:s=i.height,o=t.bottom*-1+s}Uv(n,r||0,o||0),this._updateOverlayVisibilty(e,this._canvas.viewbox())},Zt.prototype._createOverlayContainer=function(e){var t=mt('<div class="djs-overlays" />');vn(t,{position:"absolute"}),this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},Zt.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";qv(this._overlayRoot,n)},Zt.prototype._getOverlayContainer=function(e,t){var n=lt(this._overlayContainers,function(i){return i.element===e});return!n&&!t?this._createOverlayContainer(e):n},Zt.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)),Sn(i)&&(i=mt(i)),o=this._getOverlayContainer(n),r=mt('<div class="djs-overlay" data-overlay-id="'+t+'">'),vn(r,{position:"absolute"}),r.appendChild(i),e.type&&bt(r).add("djs-overlay-"+e.type);var a=this._canvas.findRoot(n),s=this._canvas.getRootElement();jc(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())},Zt.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&&(Ft(r)&&r>t.scale||Ft(o)&&o<t.scale))&&(c=!1),jc(a,c),this._updateOverlayScale(e,t)},Zt.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),Ft(i)&&t.scale<i&&(a=(1/t.scale||1)*i),Ft(r)&&t.scale>r&&(a=(1/t.scale||1)*r)),Ft(a)&&(s="scale("+a+","+a+")"),qv(o,s)},Zt.prototype._updateOverlaysVisibilty=function(e){var t=this;B(this._overlays,function(n){t._updateOverlayVisibilty(n,e)})},Zt.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});B(o,function(c){t.remove(c.id)});var a=t._getOverlayContainer(r);if(a){mi(a.html);var s=t._overlayContainers.indexOf(a);s!==-1&&t._overlayContainers.splice(s,1)}}),e.on("element.changed",zM,function(i){var r=i.element,o=t._getOverlayContainer(r,!0);o&&(B(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&&bt(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 GM(e){var t=mt('<div class="djs-overlay-container" />');return vn(t,{position:"absolute",width:0,height:0}),e.insertBefore(t,e.firstChild),t}function Uv(e,t,n){vn(e,{left:t+"px",top:n+"px"})}function jc(e,t){e.style.display=t===!1?"none":""}function qv(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach(function(n){e.style[n+"transform"]=t})}const Hc={__init__:["overlays"],overlays:["type",Zt]};function gf(e,t){t.invoke(te,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)})}_e(gf,te),gf.$inject=["canvas","injector"];const VM={__init__:["rootElementsBehavior"],rootElementsBehavior:["type",gf]};function Na(e){return CSS.escape(e)}var WM={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function Yv(e){return e=""+e,e&&e.replace(/[&<>"']/g,function(t){return WM[t]})}var UM="bjs-breadcrumbs-shown";function Kv(e,t,n){var i=mt('<ul class="bjs-breadcrumbs"></ul>'),r=n.getContainer(),o=bt(r);r.appendChild(i);var a=[];e.on("element.changed",function(c){var u=c.element,l=ie(u),f=lt(a,function(p){return p===l});f&&s()});function s(c){c&&(a=qM(c));var u=a.flatMap(function(f){var p=n.findRoot(_i(f))||n.findRoot(f.id);if(!p&&w(f,"bpmn:Process")){var d=t.find(function(m){var x=ie(m);return x&&x.get("processRef")===f});p=d&&n.findRoot(d.id)}if(!p)return[];var g=Yv(f.name||f.id),h=mt('<li><span class="bjs-crumb"><a title="'+g+'">'+g+"</a></span></li>");return h.addEventListener("click",function(){n.setRootElement(p)}),h});i.innerHTML="";var l=u.length>1;o.toggle(UM,l),u.forEach(function(f){i.appendChild(f)})}e.on("root.set",function(c){s(c.element)})}Kv.$inject=["eventBus","elementRegistry","canvas"];function qM(e){for(var t=ie(e),n=[],i=t;i;i=i.$parent)(w(i,"bpmn:SubProcess")||w(i,"bpmn:Process"))&&n.push(i);return n.reverse()}function Xv(e,t){var n=null,i=new YM;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,!(!w(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})}Xv.$inject=["eventBus","canvas"];function YM(){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 Zv={x:180,y:160};function Gr(e,t){this._eventBus=e,this._moddle=t;var n=this;e.on("import.render.start",1500,function(i,r){n._handleImport(r.definitions)})}Gr.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)})}},Gr.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;w(a,"bpmn:SubProcess")&&!o.isExpanded&&n.push(a),XM(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},Gr.prototype._movePlaneElementsToOrigin=function(e){var t=e.get("planeElement"),n=KM(e),i={x:n.x-Zv.x,y:n.y-Zv.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)})},Gr.prototype._moveToDiPlane=function(e,t){var n=Qv(e),i=n.plane.get("planeElement");i.splice(i.indexOf(e),1),t.get("planeElement").push(e)},Gr.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},Gr.$inject=["eventBus","moddle"];function Qv(e){return w(e,"bpmndi:BPMNDiagram")?e:Qv(e.$parent)}function KM(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=Ae(n.bounds);t.top=Math.min(i.top,t.top),t.left=Math.min(i.left,t.left)}}),Os(t)}function XM(e,t){var n=e.$parent;return!(!w(n,"bpmn:SubProcess")||n===t.bpmnElement||Ve(e,["bpmn:DataInputAssociation","bpmn:DataOutputAssociation"]))}var zc=250,ZM='<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>',QM="bjs-drilldown-empty";function gr(e,t,n,i,r){te.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",zc,function(a){var s=a.shape;o._canDrillDown(s)?o._addOverlay(s):o._removeOverlay(s)},!0),this.reverted("shape.toggleCollapse",zc,function(a){var s=a.shape;o._canDrillDown(s)?o._addOverlay(s):o._removeOverlay(s)},!0),this.executed(["shape.create","shape.move","shape.delete"],zc,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"],zc,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)})})}_e(gr,te),gr.prototype._updateDrilldownOverlay=function(e){var t=this._canvas;if(e){var n=t.findRoot(e);n&&this._updateOverlayVisibility(n)}},gr.prototype._canDrillDown=function(e){var t=this._canvas;return w(e,"bpmn:SubProcess")&&t.findRoot(_i(e))},gr.prototype._updateOverlayVisibility=function(e){var t=this._overlays,n=ie(e),i=t.get({element:n.id,type:"drilldown"})[0];if(i){var r=n&&n.get("flowElements")&&n.get("flowElements").length;bt(i.html).toggle(QM,!r)}},gr.prototype._addOverlay=function(e){var t=this._canvas,n=this._overlays,i=ie(e),r=n.get({element:e,type:"drilldown"});r.length&&this._removeOverlay(e);var o=mt('<button type="button" class="bjs-drilldown">'+ZM+"</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(_i(e)))}),n.add(e,"drilldown",{position:{bottom:-7,right:-8},html:o}),this._updateOverlayVisibility(e)},gr.prototype._removeOverlay=function(e){var t=this._overlays;t.remove({element:e,type:"drilldown"})},gr.$inject=["canvas","eventBus","elementRegistry","overlays","translate"];const JM={__depends__:[Hc,Yp,VM],__init__:["drilldownBreadcrumbs","drilldownOverlayBehavior","drilldownCentering","subprocessCompatibility"],drilldownBreadcrumbs:["type",Kv],drilldownCentering:["type",Xv],drilldownOverlayBehavior:["type",gr],subprocessCompatibility:["type",Gr]};function yr(e){_t.call(this,e)}_e(yr,_t),yr.prototype._modules=[Gm,JM,Hc,Zn,pa],yr.prototype._moddleExtensions={};var Gc="keyboard.keydown",e2="keyboard.keyup",t2=1e3,Jv="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 bn(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(Jv));var i=e&&e.bind!==!1;t.on("canvas.init",function(r){n._target=r.svg,i&&n.bind(),n._fire("init")})}bn.$inject=["config.keyboard","eventBus"],bn.prototype._keydownHandler=function(e){this._keyHandler(e,Gc)},bn.prototype._keyupHandler=function(e){this._keyHandler(e,e2)},bn.prototype._keyHandler=function(e,t){var n;if(!this._isEventIgnored(e)){var i={keyEvent:e};n=this._eventBus.fire(t||Gc,i),n&&e.preventDefault()}},bn.prototype._isEventIgnored=function(e){return!1},bn.prototype.bind=function(e){e&&console.error("unsupported argument <node>",new Error(Jv)),this.unbind(),e=this._node=this._target,$e.bind(e,"keydown",this._keydownHandler),$e.bind(e,"keyup",this._keyupHandler),this._fire("bind")},bn.prototype.getBinding=function(){return this._node},bn.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),$e.unbind(e,"keydown",this._keydownHandler),$e.unbind(e,"keyup",this._keyupHandler)),this._node=null},bn.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},bn.prototype.addListener=function(e,t,n){Ut(e)&&(n=t,t=e,e=t2),this._eventBus.on(n||Gc,e,t)},bn.prototype.removeListener=function(e,t){this._eventBus.off(t||Gc,e)},bn.prototype.hasModifier=wA,bn.prototype.isCmd=kn,bn.prototype.isShift=Np,bn.prototype.isKey=zt;var n2=500;function Do(e,t){var n=this;e.on("editorActions.init",n2,function(i){var r=i.editorActions;n.registerBindings(t,r)})}Do.$inject=["eventBus","keyboard"],Do.prototype.registerBindings=function(e,t){function n(i,r){t.isRegistered(i)&&e.addListener(r)}n("undo",function(i){var r=i.keyEvent;if(PA(r))return t.trigger("undo"),!0}),n("redo",function(i){var r=i.keyEvent;if(AA(r))return t.trigger("redo"),!0}),n("copy",function(i){var r=i.keyEvent;if(EA(r))return t.trigger("copy"),!0}),n("paste",function(i){var r=i.keyEvent;if(SA(r))return t.trigger("paste"),!0}),n("duplicate",function(i){var r=i.keyEvent;if(RA(r))return t.trigger("duplicate"),!0}),n("cut",function(i){var r=i.keyEvent;if(CA(r))return t.trigger("cut"),!0}),n("stepZoom",function(i){var r=i.keyEvent;if(zt(["+","Add","="],r)&&kn(r))return t.trigger("stepZoom",{value:1}),!0}),n("stepZoom",function(i){var r=i.keyEvent;if(zt(["-","Subtract"],r)&&kn(r))return t.trigger("stepZoom",{value:-1}),!0}),n("zoom",function(i){var r=i.keyEvent;if(zt("0",r)&&kn(r))return t.trigger("zoom",{value:1}),!0}),n("removeSelection",function(i){var r=i.keyEvent;if(zt(["Backspace","Delete","Del"],r))return t.trigger("removeSelection"),!0})};const yf={__init__:["keyboard","keyboardBindings"],keyboard:["type",bn],keyboardBindings:["type",Do]};var i2={moveSpeed:50,moveSpeedAccelerated:200};function eb(e,t,n){var i=this;this._config=V({},i2,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})}}eb.$inject=["config.keyboardMove","keyboard","canvas"];const tb={__depends__:[yf],__init__:["keyboardMove"],keyboardMove:["type",eb]};var r2=15;function nb(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=Nr(s),f=ci(l,c);if(!n.dragging&&o2(f)>r2&&(n.dragging=!0,u===0&&Ty(e),gc("grab")),n.dragging){var p=n.last||n.start;f=ci(l,p),t.scroll({dx:f.x,dy:f.y}),n.last=l}s.preventDefault()}function o(s){$e.unbind(document,"mousemove",r),$e.unbind(document,"mouseup",o),n=null,Ay()}function a(s){if(!kr(s.target,".djs-draggable")){var c=s.button;if(!(c>=2||s.ctrlKey||s.shiftKey||s.altKey))return n={button:c,start:Nr(s)},$e.bind(document,"mousemove",r),$e.bind(document,"mouseup",o),!0}}this.isActive=function(){return!!n}}nb.$inject=["eventBus","canvas"];function o2(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}const ib={__init__:["moveCanvas"],moveCanvas:["type",nb]};function rb(e,t){var n=Ll(e.min),i=Ll(e.max),r=Math.abs(n)+Math.abs(i);return r/t}function a2(e,t){return Math.max(e.min,Math.min(e.max,t))}var s2=Math.sign||function(e){return e>=0?1:-1},vf={min:.2,max:4},ob=10,c2=.1,u2=.75;function Ei(e,t,n){e=e||{},this._enabled=!1,this._canvas=n,this._container=n._container,this._handleWheel=xn(this._handleWheel,this),this._totalDelta=0,this._scale=e.scale||u2;var i=this;t.on("canvas.mouseover",function(){i._init(e.enabled!==!1)}),t.on("canvas.mouseout",function(){i._init(!1)})}Ei.$inject=["config.zoomScroll","eventBus","canvas"],Ei.prototype.scroll=function(t){this._canvas.scroll(t)},Ei.prototype.reset=function(){this._canvas.zoom("fit-viewport")},Ei.prototype.zoom=function(t,n){var i=rb(vf,ob*2);this._totalDelta+=t,Math.abs(this._totalDelta)>c2&&(this._zoom(t,n,i),this._totalDelta=0)},Ei.prototype._handleWheel=function(t){if(this._enabled){var n=this._container;t.preventDefault();var i=t.ctrlKey||Bg()&&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)}},Ei.prototype.stepZoom=function(t,n){var i=rb(vf,ob);this._zoom(t,n,i)},Ei.prototype._zoom=function(e,t,n){var i=this._canvas,r=e>0?1:-1,o=Ll(i.zoom()),a=Math.round(o/n)*n;a+=n*r;var s=Math.pow(10,a);i.zoom(a2(vf,s),t)},Ei.prototype.toggle=function(t){var n=this._container,i=this._handleWheel,r=this._enabled;return typeof t>"u"&&(t=!r),r!==t&&$e[t?"bind":"unbind"](n,"wheel",i,!1),this._enabled=t,t},Ei.prototype._init=function(e){this.toggle(e)};const ab={__init__:["zoomScroll"],zoomScroll:["type",Ei]};function $a(e){yr.call(this,e)}_e($a,yr),$a.prototype._navigationModules=[tb,ib,ab],$a.prototype._modules=[].concat(yr.prototype._modules,$a.prototype._navigationModules);function bf(e){return e&&e[e.length-1]}function sb(e){return e.y}function cb(e){return e.x}var l2={left:cb,center:cb,right:function(e){return e.x+e.width},top:sb,middle:sb,bottom:function(e){return e.y+e.height}};function Lo(e,t){this._modeling=e,this._rules=t}Lo.$inject=["modeling","rules"],Lo.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}},Lo.prototype._isType=function(e,t){return t.indexOf(e)!==-1},Lo.prototype._alignmentPosition=function(e,t){var n=this._getOrientationDetails(e),i=n.axis,r=n.dimension,o={},a={},s=!1,c,u,l;function f(p,d){return Math.round((p[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=bf(t),o[e]=l[i]+l[r];else if(this._isType(e,["center","middle"])){if(B(t,function(p){var d=p[i]+Math.round(p[r]/2);a[d]?a[d].elements.push(p):a[d]={elements:[p],center:d}}),c=li(a,function(p){return p.elements.length>1&&(s=!0),p.elements.length}),s)return o[e]=bf(c).center,o;u=t[0],t=li(t,function(p){return p[i]+p[r]}),l=bf(t),o[e]=f(u,l)}return o},Lo.prototype.trigger=function(e,t){var n=this._modeling,i,r=We(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=l2[t],a=li(r,o),s=this._alignmentPosition(t,a);n.alignElements(a,s)}};const p2={__init__:["alignElements"],alignElements:["type",Lo]},f2=new To;function Io(e){this._scheduled={},e.on("diagram.destroy",()=>{Object.keys(this._scheduled).forEach(t=>{this.cancel(t)})})}Io.$inject=["eventBus"],Io.prototype.schedule=function(e,t=f2.next()){this.cancel(t);const n=this._schedule(e,t);return this._scheduled[t]=n,n.promise},Io.prototype._schedule=function(e,t){const n=d2();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}},Io.prototype.cancel=function(e){const t=this._scheduled[e];t&&(this._cancel(t),this._scheduled[e]=null)},Io.prototype._cancel=function(e){clearTimeout(e.executionId)};function d2(){const e={};return e.promise=new Promise((t,n)=>{e.resolve=t,e.reject=n}),e}const h2={scheduler:["type",Io]};var m2="djs-element-hidden",Vc=".entry",g2=1e3,ub=8,y2=300;function It(e,t,n,i){this._canvas=e,this._elementRegistry=t,this._eventBus=n,this._scheduler=i,this._current=null,this._init()}It.$inject=["canvas","elementRegistry","eventBus","scheduler"],It.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()},It.prototype._createContainer=function(){var e=mt('<div class="djs-context-pad-parent"></div>');return this._canvas.getContainer().appendChild(e),e},It.prototype.registerProvider=function(e,t){t||(t=e,e=g2),this._eventBus.on("contextPad.getProviders",e,function(n){n.providers.push(t)})},It.prototype.getEntries=function(e){var t=this._getProviders(),n=De(e)?"getMultiElementContextPadEntries":"getContextPadEntries",i={};return B(t,function(r){if(Ut(r[n])){var o=r[n](e);Ut(o)?i=o(i):B(o,function(a,s){i[s]=a})}}),i},It.prototype.trigger=function(e,t,n){var i=this,r,o,a=t.delegateTarget||t.target;if(!a)return t.preventDefault();if(r=ln(a,"data-action"),o=t.originalEvent||t,e==="mouseover"){this._timeout=setTimeout(function(){i._mouseout=i.triggerEntry(r,"hover",o,n)},y2);return}else if(e==="mouseout"){clearTimeout(this._timeout),this._mouseout&&(this._mouseout(),this._mouseout=null);return}return this.triggerEntry(r,e,o,n)},It.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(Ut(s)){if(t==="click")return s(n,r,i)}else if(s[t])return s[t](n,r,i);n.preventDefault()}}}},It.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))}},It.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"contextPad.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},It.prototype._updateAndOpen=function(e){var t=this.getEntries(e),n=this._createHtml(e),i;B(t,function(r,o){var a=r.group||"default",s=mt(r.html||'<div class="entry" draggable="true"></div>'),c;ln(s,"data-action",o),c=rt("[data-group="+Na(a)+"]",n),c||(c=mt('<div class="group"></div>'),ln(c,"data-group",a),n.appendChild(c)),c.appendChild(s),r.className&&v2(s,r.className),r.title&&ln(s,"title",r.title),r.imageUrl&&(i=mt("<img>"),ln(i,"src",r.imageUrl),i.style.width="100%",i.style.height="100%",s.appendChild(i))}),bt(n).add("open"),this._current={entries:t,html:n,target:e},this._updatePosition(),this._updateVisibility(),this._eventBus.fire("contextPad.open",{current:this._current})},It.prototype._createHtml=function(e){var t=this,n=mt('<div class="djs-context-pad"></div>');return An.bind(n,Vc,"click",function(i){t.trigger("click",i)}),An.bind(n,Vc,"dragstart",function(i){t.trigger("dragstart",i)}),An.bind(n,Vc,"mouseover",function(i){t.trigger("mouseover",i)}),An.bind(n,Vc,"mouseout",function(i){t.trigger("mouseout",i)}),$e.bind(n,"mousedown",function(i){i.stopPropagation()}),this._container.appendChild(n),this._eventBus.fire("contextPad.create",{target:e,pad:n}),n},It.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()&&_2(this._current.target,e)?t=this._current.html:t=this._createHtml(e),{html:t}},It.prototype.close=function(){this.isOpen()&&(clearTimeout(this._timeout),this._container.innerHTML="",this._eventBus.fire("contextPad.close",{current:this._current}),this._current=null)},It.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&&Pr(e,function(i){return n.includes(i)}):n===e},It.prototype.isShown=function(){return this.isOpen()&&bt(this._current.html).has("open")},It.prototype.show=function(){this.isOpen()&&(bt(this._current.html).add("open"),this._updatePosition(),this._eventBus.fire("contextPad.show",{current:this._current}))},It.prototype.hide=function(){this.isOpen()&&(bt(this._current.html).remove("open"),this._eventBus.fire("contextPad.hide",{current:this._current}))},It.prototype._getPosition=function(e){if(!De(e)&&ot(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+ub*this._canvas.zoom(),top:r}}var o=this._canvas.getContainer(),a=o.getBoundingClientRect(),s=this._getTargetBounds(e);return{left:s.right-a.left+ub*this._canvas.zoom(),top:s.top-a.top}},It.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")},It.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,m2)});r?t.hide():t.show()}};this._scheduler.schedule(e,"ContextPad#_updateVisibility")},It.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 v2(e,t){var n=bt(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 _2(e,t){return e=De(e)?e:[e],t=De(t)?t:[t],e.length===t.length&&Pr(e,function(n){return t.includes(n)})}const lb={__depends__:[mc,h2,Hc],contextPad:["type",It]};var Wc,wt,pb,vr,fb,db,hb,_f,Uc,Fa,mb,xf,wf,Ef,qc={},Yc=[],x2=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,Kc=Array.isArray;function zi(e,t){for(var n in t)e[n]=t[n];return e}function Sf(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function gb(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?Wc.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 Xc(e,a,i,r,null)}function Xc(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??++pb,__i:-1,__u:0};return r==null&&wt.vnode!=null&&wt.vnode(o),o}function Zc(e){return e.children}function Qc(e,t){this.props=e,this.context=t}function Vr(e,t){if(t==null)return e.__?Vr(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"?Vr(e):null}function w2(e){if(e.__P&&e.__d){var t=e.__v,n=t.__e,i=[],r=[],o=zi({},t);o.__v=t.__v+1,wt.vnode&&wt.vnode(o),Rf(e.__P,o,t,e.__n,e.__P.namespaceURI,32&t.__u?[n]:null,i,n??Vr(t),!!(32&t.__u),r),o.__v=t.__v,o.__.__k[o.__i]=o,Sb(i,o,r),t.__e=t.__=null,o.__e!=n&&yb(o)}}function yb(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}),yb(e)}function vb(e){(!e.__d&&(e.__d=!0)&&vr.push(e)&&!Jc.__r++||fb!=wt.debounceRendering)&&((fb=wt.debounceRendering)||db)(Jc)}function Jc(){try{for(var e,t=1;vr.length;)vr.length>t&&vr.sort(hb),e=vr.shift(),t=vr.length,w2(e)}finally{vr.length=Jc.__r=0}}function bb(e,t,n,i,r,o,a,s,c,u,l){var f,p,d,g,h,m,x=i&&i.__k||Yc,y=t.length;for(c=E2(n,t,x,c,y),f=0;f<y;f++)(d=n.__k[f])!=null&&(p=d.__i!=-1&&x[d.__i]||qc,d.__i=f,m=Rf(e,d,p,r,o,a,s,c,u,l),g=d.__e,d.ref&&p.ref!=d.ref&&(p.ref&&Cf(p.ref,null,d),l.push(d.ref,d.__c||g,d)),h==null&&g!=null&&(h=g),4&d.__u?(c=_b(d,c,e),p.__e&&(p.__e=null)):typeof d.type=="function"&&m!==void 0?c=m:g&&(c=g.nextSibling),d.__u&=-7);return n.__e=h,c}function E2(e,t,n,i,r){var o,a,s,c,u,l=n.length,f=l,p=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]=Xc(null,a,null,null,null):Kc(a)?a=e.__k[o]=Xc(Zc,{children:a},null,null,null):a.constructor===void 0&&a.__b>0?a=e.__k[o]=Xc(a.type,a.props,a.key,a.ref?a.ref:null,a.__v):e.__k[o]=a,c=o+p,a.__=e,a.__b=e.__b+1,s=null,(u=a.__i=S2(a,n,c,f))!=-1&&(f--,(s=n[u])&&(s.__u|=2)),s==null||s.__v==null?(u==-1&&(r>l?p--:r<l&&p++),typeof a.type!="function"&&(a.__u|=4)):u!=c&&(u==c-1?p--:u==c+1?p++:(u>c?p--:p++,a.__u|=4))):e.__k[o]=null;if(f)for(o=0;o<l;o++)(s=n[o])!=null&&(2&s.__u)==0&&(s.__e==i&&(i=Vr(s)),Cb(s,s));return i}function _b(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=_b(i[r],t,n));return t}e.__e!=t&&(t&&e.type&&!t.parentNode&&(t=Vr(e)),t=n.insertBefore(e.__e,t||null));do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function S2(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 xb(e,t,n){t[0]=="-"?e.setProperty(t,n??""):e[t]=n==null?"":typeof n!="number"||x2.test(t)?n:n+"px"}function eu(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||xb(e.style,t,"");if(n)for(t in n)i&&n[t]==i[t]||xb(e.style,t,n[t])}else if(t[0]=="o"&&t[1]=="n")o=t!=(t=t.replace(mb,"$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[Fa]=i[Fa]:(n[Fa]=xf,e.addEventListener(t,o?Ef:wf,o)):e.removeEventListener(t,o?Ef:wf,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 wb(e){return function(t){if(this.l){var n=this.l[t.type+e];if(t[Uc]==null)t[Uc]=xf++;else if(t[Uc]<n[Fa])return;return n(wt.event?wt.event(t):t)}}}function Rf(e,t,n,i,r,o,a,s,c,u){var l,f,p,d,g,h,m,x,y,_,S,P,C,L,T,j,k=t.type;if(t.constructor!==void 0)return null;128&n.__u&&(c=!!(32&n.__u),o=[s=t.__e=n.__e]),(l=wt.__b)&&l(t);e:if(typeof k=="function"){f=a.length;try{if(y=t.props,_=k.prototype&&k.prototype.render,S=(l=k.contextType)&&i[l.__c],P=l?S?S.props.value:l.__:i,n.__c?x=(p=t.__c=n.__c).__=p.__E:(_?t.__c=p=new k(y,P):(t.__c=p=new Qc(y,P),p.constructor=k,p.render=C2),S&&S.sub(p),p.state||(p.state={}),p.__n=i,d=p.__d=!0,p.__h=[],p._sb=[]),_&&p.__s==null&&(p.__s=p.state),_&&k.getDerivedStateFromProps!=null&&(p.__s==p.state&&(p.__s=zi({},p.__s)),zi(p.__s,k.getDerivedStateFromProps(y,p.__s))),g=p.props,h=p.state,p.__v=t,d)_&&k.getDerivedStateFromProps==null&&p.componentWillMount!=null&&p.componentWillMount(),_&&p.componentDidMount!=null&&p.__h.push(p.componentDidMount);else{if(_&&k.getDerivedStateFromProps==null&&y!==g&&p.componentWillReceiveProps!=null&&p.componentWillReceiveProps(y,P),t.__v==n.__v||!p.__e&&p.shouldComponentUpdate!=null&&p.shouldComponentUpdate(y,p.__s,P)===!1){t.__v!=n.__v&&(p.props=y,p.state=p.__s,p.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(D){D&&(D.__=t)}),Yc.push.apply(p.__h,p._sb),p._sb=[],p.__h.length&&a.push(p),s=Vr(n);break e}p.componentWillUpdate!=null&&p.componentWillUpdate(y,p.__s,P),_&&p.componentDidUpdate!=null&&p.__h.push(function(){p.componentDidUpdate(g,h,m)})}if(p.context=P,p.props=y,p.__P=e,p.__e=!1,C=wt.__r,L=0,_)p.state=p.__s,p.__d=!1,C&&C(t),l=p.render(p.props,p.state,p.context),Yc.push.apply(p.__h,p._sb),p._sb=[];else do p.__d=!1,C&&C(t),l=p.render(p.props,p.state,p.context),p.state=p.__s;while(p.__d&&++L<25);p.state=p.__s,p.getChildContext!=null&&(i=zi(zi({},i),p.getChildContext())),_&&!d&&p.getSnapshotBeforeUpdate!=null&&(m=p.getSnapshotBeforeUpdate(g,h)),T=l!=null&&l.type===Zc&&l.key==null?Rb(l.props.children):l,s=bb(e,Kc(T)?T:[T],t,n,i,r,o,a,s,c,u),p.base=t.__e,t.__u&=-161,p.__h.length&&a.push(p),x&&(p.__E=p.__=null)}catch(D){if(a.length=f,t.__v=null,c||o!=null){if(D.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(j=o.length;j--;)Sf(o[j])}else t.__e=n.__e;t.__k==null&&(t.__k=n.__k||[]),D.then||Eb(t),wt.__e(D,t,n)}}else o==null&&t.__v==n.__v?(t.__k=n.__k,t.__e=n.__e):s=t.__e=R2(n.__e,t,n,i,r,o,a,c,u);return(l=wt.diffed)&&l(t),128&t.__u?void 0:s}function Eb(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some(Eb))}function Sb(e,t,n){for(var i=0;i<n.length;i++)Cf(n[i],n[++i],n[++i]);wt.__c&&wt.__c(t,e),e.some(function(r){try{e=r.__h,r.__h=[],e.some(function(o){o.call(r)})}catch(o){wt.__e(o,r.__v)}})}function Rb(e){return typeof e!="object"||e==null||e.__b>0?e:Kc(e)?e.map(Rb):e.constructor!==void 0?null:zi({},e)}function R2(e,t,n,i,r,o,a,s,c){var u,l,f,p,d,g,h,m=n.props||qc,x=t.props,y=t.type;if(y=="svg"?r="http://www.w3.org/2000/svg":y=="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==!!y&&(y?d.localName==y:d.nodeType==3)){e=d,o[u]=null;break}}if(e==null){if(y==null)return document.createTextNode(x);e=document.createElementNS(r,y,x.is&&x),s&&(wt.__m&&wt.__m(t,o),s=!1),o=null}if(y==null)m===x||s&&e.data==x||(e.data=x);else{if(o=y=="textarea"&&x.defaultValue!=null?null:o&&Wc.call(e.childNodes),!s&&o!=null)for(m={},u=0;u<e.attributes.length;u++)m[(d=e.attributes[u]).name]=d.value;for(u in m)d=m[u],u=="dangerouslySetInnerHTML"?f=d:u=="children"||u in x||u=="value"&&"defaultValue"in x||u=="checked"&&"defaultChecked"in x||eu(e,u,null,d,r);for(u in x)d=x[u],u=="children"?p=d:u=="dangerouslySetInnerHTML"?l=d:u=="value"?g=d:u=="checked"?h=d:s&&typeof d!="function"||m[u]===d||eu(e,u,d,m[u],r);if(l)s||f&&(l.__html==f.__html||l.__html==e.innerHTML)||(e.innerHTML=l.__html),t.__k=[];else if(f&&(e.innerHTML=""),bb(t.type=="template"?e.content:e,Kc(p)?p:[p],t,n,i,y=="foreignObject"?"http://www.w3.org/1999/xhtml":r,o,a,o?o[0]:n.__k&&Vr(n,0),s,c),o!=null)for(u=o.length;u--;)Sf(o[u]);s&&y!="textarea"||(u="value",y=="progress"&&g==null?e.removeAttribute("value"):g!=null&&(g!==e[u]||y=="progress"&&!g||y=="option"&&g!=m[u])&&eu(e,u,g,m[u],r),u="checked",h!=null&&h!=e[u]&&eu(e,u,h,m[u],r))}return e}function Cf(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){wt.__e(r,n)}}function Cb(e,t,n){var i,r;if(wt.unmount&&wt.unmount(e),(i=e.ref)&&(i.current&&i.current!=e.__e||Cf(i,null,t)),(i=e.__c)!=null){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(o){wt.__e(o,t)}i.base=i.__P=i.__n=null}if(i=e.__k)for(r=0;r<i.length;r++)i[r]&&Cb(i[r],t,n||typeof e.type!="function");n||Sf(e.__e),e.__c=e.__=e.__e=void 0}function C2(e,t,n){return this.constructor(e,n)}function Pb(e,t,n){var i,r,o,a;t==document&&(t=document.documentElement),wt.__&&wt.__(e,t),r=(i=!1)?null:t.__k,o=[],a=[],Rf(t,e=t.__k=gb(Zc,null,[e]),r||qc,qc,t.namespaceURI,r?null:t.firstChild?Wc.call(t.childNodes):null,o,r?r.__e:t.firstChild,i,a),Sb(o,e,a),e.props.children=null}Wc=Yc.slice,wt={__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}},pb=0,Qc.prototype.setState=function(e,t){var n;n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=zi({},this.state),typeof e=="function"&&(e=e(zi({},n),this.props)),e&&zi(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),vb(this))},Qc.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),vb(this))},Qc.prototype.render=Zc,vr=[],db=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,hb=function(e,t){return e.__v.__b-t.__v.__b},Jc.__r=0,_f=Math.random().toString(8),Uc="__d"+_f,Fa="__a"+_f,mb=/(PointerCapture)$|Capture$/i,xf=0,wf=wb(!1),Ef=wb(!0);var Ab=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,Ab(e,s,n,["",null])),i.push(r),s[0]?t[0]|=2:(t[o-2]=0,t[o]=r)):i.push(s)}return i},Tb=new Map;function P2(e){var t=Tb.get(this);return t||(t=new Map,Tb.set(this,t)),(t=Ab(this,t.get(e)||(t.set(e,t=(function(n){for(var i,r,o=1,a="",s="",c=[0],u=function(p){o===1&&(p||(a=a.replace(/^\s*\n\s*|\s*\n\s*$/g,"")))?c.push(0,p,a):o===3&&(p||a)?(c.push(3,p,a),o=2):o===2&&a==="..."&&p?c.push(4,p,0):o===2&&a&&!p?c.push(5,0,!0,a):o>=5&&((a||!p&&o===5)&&(c.push(o,0,a,r),o=6),p&&(c.push(o,p,0,r),o=6)),a=""},l=0;l<n.length;l++){l&&(o===1&&u(),u(l));for(var f=0;f<n[l].length;f++)i=n[l][f],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][f+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 st=P2.bind(gb),Bo,Bt,Pf,Mb,ja=0,kb=[],Gt=wt,Ob=Gt.__b,Db=Gt.__r,Lb=Gt.diffed,Ib=Gt.__c,Bb=Gt.unmount,Nb=Gt.__;function tu(e,t){Gt.__h&&Gt.__h(Bt,e,ja||t),ja=0;var n=Bt.__H||(Bt.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({}),n.__[e]}function Af(e){return ja=1,A2(Fb,e)}function A2(e,t,n){var i=tu(Bo++,2);if(i.t=e,!i.__c&&(i.__=[Fb(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=Bt,!Bt.__f)){var r=function(s,c,u){if(!i.__c.__H)return!0;var l=!1,f=i.__c.props!==s;if(i.__c.__H.__.some(function(d){if(d.__N){l=!0;var g=d.__[0];d.__=d.__N,d.__N=void 0,g!==d.__[0]&&(f=!0)}}),o){var p=o.call(this,s,c,u);return l?p||f:p}return!l||f};Bt.__f=!0;var o=Bt.shouldComponentUpdate,a=Bt.componentWillUpdate;Bt.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)},Bt.shouldComponentUpdate=r}return i.__N||i.__}function nu(e,t){var n=tu(Bo++,3);!Gt.__s&&kf(n.__H,t)&&(n.__=e,n.u=t,Bt.__H.__h.push(n))}function Tf(e,t){var n=tu(Bo++,4);!Gt.__s&&kf(n.__H,t)&&(n.__=e,n.u=t,Bt.__h.push(n))}function iu(e){return ja=5,Gi(function(){return{current:e}},[])}function Gi(e,t){var n=tu(Bo++,7);return kf(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function Ha(e,t){return ja=8,Gi(function(){return e},t)}function T2(){for(var e;e=kb.shift();){var t=e.__H;if(e.__P&&t)try{t.__h.some(ru),t.__h.some(Mf),t.__h=[]}catch(n){t.__h=[],Gt.__e(n,e.__v)}}}Gt.__b=function(e){Bt=null,Ob&&Ob(e)},Gt.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),Nb&&Nb(e,t)},Gt.__r=function(e){Db&&Db(e),Bo=0;var t=(Bt=e.__c).__H;t&&(Pf===Bt?(t.__h=[],Bt.__h=[],t.__.some(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(t.__h.some(ru),t.__h.some(Mf),t.__h=[],Bo=0)),Pf=Bt},Gt.diffed=function(e){Lb&&Lb(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(kb.push(t)!==1&&Mb===Gt.requestAnimationFrame||((Mb=Gt.requestAnimationFrame)||M2)(T2)),t.__H.__.some(function(n){n.u&&(n.__H=n.u,n.u=void 0)})),Pf=Bt=null},Gt.__c=function(e,t){t.some(function(n){try{n.__h.some(ru),n.__h=n.__h.filter(function(i){return!i.__||Mf(i)})}catch(i){t.some(function(r){r.__h&&(r.__h=[])}),t=[],Gt.__e(i,n.__v)}}),Ib&&Ib(e,t)},Gt.unmount=function(e){Bb&&Bb(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.some(function(i){try{ru(i)}catch(r){t=r}}),n.__H=void 0,t&&Gt.__e(t,n.__v))};var $b=typeof requestAnimationFrame=="function";function M2(e){var t,n=function(){clearTimeout(i),$b&&cancelAnimationFrame(t),setTimeout(e)},i=setTimeout(n,35);$b&&(t=requestAnimationFrame(n))}function ru(e){var t=Bt,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Bt=t}function Mf(e){var t=Bt;e.__c=e.__(),Bt=t}function kf(e,t){return!e||e.length!==t.length||t.some(function(n,i){return n!==e[i]})}function Fb(e,t){return typeof t=="function"?t(e):t}function k2(e){const{navigationStack:t,setNavigationStack:n}=e,i=Gi(()=>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 st`
10
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="`+p+'" height="'+d+'" viewBox="'+l+" "+f+" "+p+" "+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}},_t.prototype._setDefinitions=function(e){this._definitions=e},_t.prototype.getModules=function(){return this._modules},_t.prototype.clear=function(){this.getDefinitions()&&ir.prototype.clear.call(this)},_t.prototype.destroy=function(){ir.prototype.destroy.call(this),mi(this._container)},_t.prototype.on=function(e,t,n,i){return this.get("eventBus").on(e,t,n,i)},_t.prototype.off=function(e,t){this.get("eventBus").off(e,t)},_t.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=rt(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},_t.prototype.getDefinitions=function(){return this._definitions},_t.prototype.detach=function(){const e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))},_t.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(pi(n,["additionalModules"]),{canvas:V({},n.canvas,{container:e}),modules:a});ir.call(this,s),n&&n.container&&this.attachTo(n.container)},_t.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)},_t.prototype._createContainer=function(e){const t=mt('<div class="bjs-container"></div>');return vn(t,{width:Bm(e.width),height:Bm(e.height),position:e.position}),t},_t.prototype._createModdle=function(e){const t=V({},this._moddleExtensions,e.moddleExtensions);return new Nd(t)},_t.prototype._modules=[];function js(e,t){return e.warnings=t,e}function pR(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 fR={width:"100%",height:"100%",position:"relative"};function Bm(e){return e+(Be(e)?"px":"")}function dR(e,t){return t&&pt(e.diagrams,function(n){return n.id===t})||null}function hR(e){const n='<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" >'+Om+"</a>",i=mt(n);vn(rt("svg",i),Dm),vn(i,Lm,{position:"absolute",bottom:"15px",right:"15px",zIndex:"100"}),e.appendChild(i),$e.bind(i,"click",function(r){lR(),r.preventDefault()})}function mo(e){_t.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)}_e(mo,_t),mo.prototype._createModdle=function(e){var t=_t.prototype._createModdle.call(this,e);return t.ids=new hi([32,36,1]),t},mo.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 Ke(e,t){return E(e,"bpmn:CallActivity")?!1:E(e,"bpmn:SubProcess")?(t=t||Ze(e),t&&E(t,"bpmndi:BPMNPlane")?!0:t&&!!t.isExpanded):E(e,"bpmn:Participant")?!!ie(e).processRef:!0}function qt(e){if(!(!E(e,"bpmn:Participant")&&!E(e,"bpmn:Lane"))){var t=Ze(e).isHorizontal;return t===void 0?!0:t}}function mR(e){return e&&ie(e).isInterrupting!==!1}function fn(e){return e&&!!ie(e).triggeredByEvent}function go(e,t){var n=ie(e).eventDefinitions;return Yi(n,function(i){return E(i,t)})}function gR(e){return go(e,"bpmn:ErrorEventDefinition")}function yR(e){return go(e,"bpmn:EscalationEventDefinition")}function vR(e){return go(e,"bpmn:CompensateEventDefinition")}var Ir={width:90,height:20},Nm=15;function rr(e){return E(e,"bpmn:Event")||E(e,"bpmn:Gateway")||E(e,"bpmn:DataStoreReference")||E(e,"bpmn:DataObjectReference")||E(e,"bpmn:DataInput")||E(e,"bpmn:DataOutput")||E(e,"bpmn:SequenceFlow")||E(e,"bpmn:MessageFlow")||E(e,"bpmn:Group")}function Hs(e){return Ge(e.label)}function bR(e){var t=e.length/2-1,n=e[Math.floor(t)],i=e[Math.ceil(t+.01)],r=_R(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-=Nm:a+=Nm,{x:a,y:s}}function _R(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 Dl(e){return e.waypoints?bR(e.waypoints):E(e,"bpmn:Group")?{x:e.x+e.width/2,y:e.y+Ir.height/2}:{x:e.x+e.width/2,y:e.y+e.height+Ir.height/2}}function xR(e,t){var n,i,r,o=e.label;return o&&o.bounds?(r=o.bounds,i={width:Math.max(Ir.width,r.width),height:r.height},n={x:r.x+r.width/2,y:r.y+r.height/2}):(n=Dl(t),i=Ir),V({x:n.x-i.width/2,y:n.y-i.height/2},i)}function $m(e){if(E(e,"bpmn:FlowElement")||E(e,"bpmn:Participant")||E(e,"bpmn:Lane")||E(e,"bpmn:SequenceFlow")||E(e,"bpmn:MessageFlow")||E(e,"bpmn:DataInput")||E(e,"bpmn:DataOutput"))return"name";if(E(e,"bpmn:TextAnnotation"))return"text";if(E(e,"bpmn:Group"))return"categoryValueRef"}function wR(e){var t=e.categoryValueRef;return t&&t.value||""}function Wn(e){var t=e.businessObject,n=$m(t);if(n)return n==="categoryValueRef"?wR(t):t[n]||""}function ER(e,t){var n=e.businessObject,i=$m(n);if(i)if(i==="categoryValueRef"){if(!n[i])return e;n[i].value=t}else n[i]=t;return e}function SR(e){return Ge(e)&&rr(e.labelTarget)}var yo=7;function Fm(e){let t=[];return N(e.incoming,n=>{E(n,"bpmn:Association")&&E(n.source,"bpmn:TextAnnotation")&&t.push({annotation:n.source,association:n})}),N(e.outgoing,n=>{E(n,"bpmn:Association")&&E(n.target,"bpmn:TextAnnotation")&&t.push({annotation:n.target,association:n})}),t}function ua(e){const t=new Map;return N(Cl(e),n=>{N(Fm(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 Ll="hsl(225, 10%, 15%)",RR="white";function bi(e,t){return Yi(e.eventDefinitions,function(n){return n.$type===t})}function CR(e){return e.$type==="bpmn:IntermediateThrowEvent"||e.$type==="bpmn:EndEvent"}function PR(e){var t=e.dataObjectRef;return e.isCollection||t&&t.isCollection}function Ye(e,t,n){var i=Ze(e);return n||i.get("color:background-color")||i.get("bioc:fill")||t||RR}function ge(e,t,n){var i=Ze(e);return n||i.get("color:border-color")||i.get("bioc:stroke")||t||Ll}function la(e,t,n,i){var r=Ze(e),o=r.get("label");return i||o&&o.get("color:color")||t||ge(e,n)}function jm(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 Or(r)}function Il(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 Or(a)}function AR(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 Or(s)}function TR(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 Or(o)}function pa(e,t={}){return{width:qn(e,t),height:kn(e,t)}}function qn(e,t={}){return Rn(t,"width")?t.width:e.width}function kn(e,t={}){return Rn(t,"height")?t.height:e.height}var MR=new hi,kR=10,zs=3,OR=1.5,Gs=10,DR=4,vo=.95,LR=1,IR=.25;function Br(e,t,n,i,r,o,a){ki.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:Ll,strokeWidth:2,fill:"white"})}function f(M){return n.computeStyle(M,["no-fill"],{strokeLinecap:"round",strokeLinejoin:"round",stroke:Ll,strokeWidth:2})}function p(M,S){var{ref:w={x:0,y:0},scale:z=1,element:U,parentGfx:Q=r._svg}=S,we=Pe("marker",{id:M,viewBox:"0 0 20 20",refX:w.x,refY:w.y,markerWidth:20*z,markerHeight:20*z,orient:"auto"});Fe(we,U);var He=rt(":scope > defs",Q);He||(He=Pe("defs"),Fe(Q,He)),Fe(He,we)}function d(M,S,w,z){var U=MR.nextPrefixed("marker-");return h(M,U,S,w,z),"url(#"+U+")"}function h(M,S,w,z,U){if(w==="sequenceflow-end"){var Q=Pe("path",{d:"M 1 5 L 11 10 L 1 15 Z",...l({fill:U,stroke:U,strokeWidth:1})});p(S,{element:Q,ref:{x:11,y:10},scale:.5,parentGfx:M})}if(w==="messageflow-start"){var we=Pe("circle",{cx:6,cy:6,r:3.5,...l({fill:z,stroke:U,strokeWidth:1,strokeDasharray:[1e4,1]})});p(S,{element:we,ref:{x:6,y:6},parentGfx:M})}if(w==="messageflow-end"){var He=Pe("path",{d:"m 1 5 l 0 -3 l 7 3 l -7 3 z",...l({fill:z,stroke:U,strokeWidth:1,strokeDasharray:[1e4,1]})});p(S,{element:He,ref:{x:8.5,y:5},parentGfx:M})}if(w==="association-start"){var et=Pe("path",{d:"M 11 5 L 1 10 L 11 15",...f({fill:"none",stroke:U,strokeWidth:1.5,strokeDasharray:[1e4,1]})});p(S,{element:et,ref:{x:1,y:10},scale:.5,parentGfx:M})}if(w==="association-end"){var Pt=Pe("path",{d:"M 1 5 L 11 10 L 1 15",...f({fill:"none",stroke:U,strokeWidth:1.5,strokeDasharray:[1e4,1]})});p(S,{element:Pt,ref:{x:11,y:10},scale:.5,parentGfx:M})}if(w==="conditional-flow-marker"){var nt=Pe("path",{d:"M 0 10 L 8 6 L 16 10 L 8 14 Z",...l({fill:z,stroke:U})});p(S,{element:nt,ref:{x:-1,y:10},scale:.5,parentGfx:M})}if(w==="conditional-default-flow-marker"){var St=Pe("path",{d:"M 6 4 L 10 16",...l({stroke:U,fill:"none"})});p(S,{element:St,ref:{x:0,y:10},scale:.5,parentGfx:M})}}function m(M,S,w,z,U={}){Wt(z)&&(U=z,z=0),z=z||0,U=l(U);var Q=S/2,we=w/2,He=Pe("circle",{cx:Q,cy:we,r:Math.round((S+w)/4-z),...U});return Fe(M,He),He}function g(M,S,w,z,U,Q){Wt(U)&&(Q=U,U=0),U=U||0,Q=l(Q);var we=Pe("rect",{x:U,y:U,width:S-U*2,height:w-U*2,rx:z,ry:z,...Q});return Fe(M,we),we}function y(M,S,w,z){var U=S/2,Q=w/2,we=[{x:U,y:0},{x:S,y:Q},{x:U,y:w},{x:0,y:Q}],He=we.map(function(Pt){return Pt.x+","+Pt.y}).join(" ");z=l(z);var et=Pe("polygon",{...z,points:He});return Fe(M,et),et}function v(M,S,w,z){w=f(w);var U=na(S,w,z);return Fe(M,U),U}function b(M,S,w){return v(M,S,w,5)}function _(M,S,w){w=f(w);var z=Pe("path",{...w,d:S});return Fe(M,z),z}function C(M,S,w,z){return _(S,w,V({"data-marker":M},z))}function P(M){return ft[M]}function D(M){return function(S,w,z){return P(M)(S,w,z)}}var T={"bpmn:MessageEventDefinition":function(M,S,w={},z){var U=i.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:w.width||S.width,containerHeight:w.height||S.height,position:{mx:.235,my:.315}}),Q=z?ge(S,c,w.stroke):Ye(S,s,w.fill),we=z?Ye(S,s,w.fill):ge(S,c,w.stroke),He=_(M,U,{fill:Q,stroke:we,strokeWidth:1});return He},"bpmn:TimerEventDefinition":function(M,S,w={}){var z=w.width||S.width,U=w.height||S.height,Q=w.width?1:2,we=m(M,z,U,.2*U,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke),strokeWidth:Q}),He=i.getScaledPath("EVENT_TIMER_WH",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:z,containerHeight:U,position:{mx:.5,my:.5}});_(M,He,{stroke:ge(S,c,w.stroke),strokeWidth:Q});for(var et=0;et<12;et++){var Pt=i.getScaledPath("EVENT_TIMER_LINE",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:z,containerHeight:U,position:{mx:.5,my:.5}}),nt=z/2,St=U/2;_(M,Pt,{strokeWidth:1,stroke:ge(S,c,w.stroke),transform:"rotate("+et*30+","+St+","+nt+")"})}return we},"bpmn:EscalationEventDefinition":function(M,S,w={},z){var U=i.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:w.width||S.width,containerHeight:w.height||S.height,position:{mx:.5,my:.2}}),Q=z?ge(S,c,w.stroke):Ye(S,s,w.fill);return _(M,U,{fill:Q,stroke:ge(S,c,w.stroke),strokeWidth:1})},"bpmn:ConditionalEventDefinition":function(M,S,w={}){var z=i.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:w.width||S.width,containerHeight:w.height||S.height,position:{mx:.5,my:.222}});return _(M,z,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke),strokeWidth:1})},"bpmn:LinkEventDefinition":function(M,S,w={},z){var U=i.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:S.width,containerHeight:S.height,position:{mx:.57,my:.263}}),Q=z?ge(S,c,w.stroke):Ye(S,s,w.fill);return _(M,U,{fill:Q,stroke:ge(S,c,w.stroke),strokeWidth:1})},"bpmn:ErrorEventDefinition":function(M,S,w={},z){var U=i.getScaledPath("EVENT_ERROR",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:w.width||S.width,containerHeight:w.height||S.height,position:{mx:.2,my:.722}}),Q=z?ge(S,c,w.stroke):Ye(S,s,w.fill);return _(M,U,{fill:Q,stroke:ge(S,c,w.stroke),strokeWidth:1})},"bpmn:CancelEventDefinition":function(M,S,w={},z){var U=i.getScaledPath("EVENT_CANCEL_45",{xScaleFactor:1,yScaleFactor:1,containerWidth:S.width,containerHeight:S.height,position:{mx:.638,my:-.055}}),Q=z?ge(S,c,w.stroke):"none",we=_(M,U,{fill:Q,stroke:ge(S,c,w.stroke),strokeWidth:1});return Mm(we,45),we},"bpmn:CompensateEventDefinition":function(M,S,w={},z){var U=i.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:w.width||S.width,containerHeight:w.height||S.height,position:{mx:.22,my:.5}}),Q=z?ge(S,c,w.stroke):Ye(S,s,w.fill);return _(M,U,{fill:Q,stroke:ge(S,c,w.stroke),strokeWidth:1})},"bpmn:SignalEventDefinition":function(M,S,w={},z){var U=i.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:w.width||S.width,containerHeight:w.height||S.height,position:{mx:.5,my:.2}}),Q=z?ge(S,c,w.stroke):Ye(S,s,w.fill);return _(M,U,{strokeWidth:1,fill:Q,stroke:ge(S,c,w.stroke)})},"bpmn:MultipleEventDefinition":function(M,S,w={},z){var U=i.getScaledPath("EVENT_MULTIPLE",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:w.width||S.width,containerHeight:w.height||S.height,position:{mx:.211,my:.36}}),Q=z?ge(S,c,w.stroke):Ye(S,s,w.fill);return _(M,U,{fill:Q,stroke:ge(S,c,w.stroke),strokeWidth:1})},"bpmn:ParallelMultipleEventDefinition":function(M,S,w={}){var z=i.getScaledPath("EVENT_PARALLEL_MULTIPLE",{xScaleFactor:1.2,yScaleFactor:1.2,containerWidth:w.width||S.width,containerHeight:w.height||S.height,position:{mx:.458,my:.194}});return _(M,z,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke),strokeWidth:1})},"bpmn:TerminateEventDefinition":function(M,S,w={}){var z=m(M,S.width,S.height,8,{fill:ge(S,c,w.stroke),stroke:ge(S,c,w.stroke),strokeWidth:4});return z}};function I(M,S,w={},z){var U=ie(M),Q=CR(U),we=z||M;return U.get("eventDefinitions")&&U.get("eventDefinitions").length>1?U.get("parallelMultiple")?T["bpmn:ParallelMultipleEventDefinition"](S,we,w,Q):T["bpmn:MultipleEventDefinition"](S,we,w,Q):bi(U,"bpmn:MessageEventDefinition")?T["bpmn:MessageEventDefinition"](S,we,w,Q):bi(U,"bpmn:TimerEventDefinition")?T["bpmn:TimerEventDefinition"](S,we,w,Q):bi(U,"bpmn:ConditionalEventDefinition")?T["bpmn:ConditionalEventDefinition"](S,we,w,Q):bi(U,"bpmn:SignalEventDefinition")?T["bpmn:SignalEventDefinition"](S,we,w,Q):bi(U,"bpmn:EscalationEventDefinition")?T["bpmn:EscalationEventDefinition"](S,we,w,Q):bi(U,"bpmn:LinkEventDefinition")?T["bpmn:LinkEventDefinition"](S,we,w,Q):bi(U,"bpmn:ErrorEventDefinition")?T["bpmn:ErrorEventDefinition"](S,we,w,Q):bi(U,"bpmn:CancelEventDefinition")?T["bpmn:CancelEventDefinition"](S,we,w,Q):bi(U,"bpmn:CompensateEventDefinition")?T["bpmn:CompensateEventDefinition"](S,we,w,Q):bi(U,"bpmn:TerminateEventDefinition")?T["bpmn:TerminateEventDefinition"](S,we,w,Q):null}var k={ParticipantMultiplicityMarker:function(M,S,w={}){var z=qn(S,w),U=kn(S,w),Q=i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:z,containerHeight:U,position:{mx:(z/2-6)/z,my:(U-15)/U}});C("participant-multiplicity",M,Q,{strokeWidth:2,fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke)})},SubProcessMarker:function(M,S,w={}){var z=g(M,14,14,0,{strokeWidth:1,fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke)});tn(z,S.width/2-7.5,S.height-20);var U=i.getScaledPath("MARKER_SUB_PROCESS",{xScaleFactor:1.5,yScaleFactor:1.5,containerWidth:S.width,containerHeight:S.height,position:{mx:(S.width/2-7.5)/S.width,my:(S.height-20)/S.height}});C("sub-process",M,U,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke)})},ParallelMarker:function(M,S,w){var z=qn(S,w),U=kn(S,w),Q=i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:z,containerHeight:U,position:{mx:(z/2+w.parallel)/z,my:(U-20)/U}});C("parallel",M,Q,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke)})},SequentialMarker:function(M,S,w){var z=i.getScaledPath("MARKER_SEQUENTIAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:S.width,containerHeight:S.height,position:{mx:(S.width/2+w.seq)/S.width,my:(S.height-19)/S.height}});C("sequential",M,z,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke)})},CompensationMarker:function(M,S,w){var z=i.getScaledPath("MARKER_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:S.width,containerHeight:S.height,position:{mx:(S.width/2+w.compensation)/S.width,my:(S.height-13)/S.height}});C("compensation",M,z,{strokeWidth:1,fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke)})},LoopMarker:function(M,S,w){var z=qn(S,w),U=kn(S,w),Q=i.getScaledPath("MARKER_LOOP",{xScaleFactor:1,yScaleFactor:1,containerWidth:z,containerHeight:U,position:{mx:(z/2+w.loop)/z,my:(U-7)/U}});C("loop",M,Q,{strokeWidth:1.5,fill:"none",stroke:ge(S,c,w.stroke),strokeMiterlimit:.5})},AdhocMarker:function(M,S,w){var z=qn(S,w),U=kn(S,w),Q=i.getScaledPath("MARKER_ADHOC",{xScaleFactor:1,yScaleFactor:1,containerWidth:z,containerHeight:U,position:{mx:(z/2+w.adhoc)/z,my:(U-15)/U}});C("adhoc",M,Q,{strokeWidth:1,fill:ge(S,c,w.stroke),stroke:ge(S,c,w.stroke)})}};function O(M,S,w,z){k[M](S,w,z)}function H(M,S,w=[],z={}){z={fill:z.fill,stroke:z.stroke,width:qn(S,z),height:kn(S,z)};var U=ie(S),Q=w.includes("SubProcessMarker");Q?z={...z,seq:-21,parallel:-22,compensation:-25,loop:-18,adhoc:10}:z={...z,seq:-5,parallel:-6,compensation:-7,loop:0,adhoc:-8},U.get("isForCompensation")&&w.push("CompensationMarker"),E(U,"bpmn:AdHocSubProcess")&&(w.push("AdhocMarker"),Q||V(z,{compensation:z.compensation-18}));var we=U.get("loopCharacteristics"),He=we&&we.get("isSequential");we&&(V(z,{compensation:z.compensation-18}),w.includes("AdhocMarker")&&V(z,{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(z,{compensation:-8}),N(w,function(et){O(et,M,S,z)})}function se(M,S,w={}){w=V({size:{width:100}},w);var z=o.createText(S||"",w);return Xe(z).add("djs-label"),Fe(M,z),z}function Ee(M,S,w,z={}){var U=ie(S),Q=pa({x:S.x,y:S.y,width:S.width,height:S.height},z);return se(M,U.name,{align:w,box:Q,padding:7,style:{fill:la(S,u,c,z.stroke)}})}function qe(M,S,w={}){var z={width:S.width,height:S.height,x:S.width/2+S.x,y:S.height/2+S.y};return se(M,Wn(S),{box:z,style:V({},o.getExternalStyle(),{fill:la(S,u,c,w.stroke)})})}function ze(M,S,w,z={}){var U=qt(w),Q=se(M,S,{box:{height:30,width:U?kn(w,z):qn(w,z)},align:"center-middle",style:{fill:la(w,u,c,z.stroke)}});if(U){var we=-1*kn(w,z);$s(Q,0,-we,270)}}function q(M,S,w={}){var{width:z,height:U}=pa(S,w);return g(M,z,U,Gs,{...w,fill:Ye(S,s,w.fill),fillOpacity:vo,stroke:ge(S,c,w.stroke)})}function ue(M,S,w={}){var z=ie(S),U=Ye(S,s,w.fill),Q=ge(S,c,w.stroke);return(z.get("associationDirection")==="One"||z.get("associationDirection")==="Both")&&(w.markerEnd=d(M,"association-end",U,Q)),z.get("associationDirection")==="Both"&&(w.markerStart=d(M,"association-start",U,Q)),w=Qe(w,["markerStart","markerEnd"]),b(M,S.waypoints,{...w,stroke:Q,strokeDasharray:"0, 5"})}function oe(M,S,w={}){var z=Ye(S,s,w.fill),U=ge(S,c,w.stroke),Q=i.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:S.width,containerHeight:S.height,position:{mx:.474,my:.296}}),we=_(M,Q,{fill:z,fillOpacity:vo,stroke:U}),He=ie(S);if(PR(He)){var et=i.getScaledPath("DATA_OBJECT_COLLECTION_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:S.width,containerHeight:S.height,position:{mx:.33,my:(S.height-18)/S.height}});_(M,et,{strokeWidth:2,fill:z,stroke:U})}return we}function le(M,S,w={}){return m(M,S.width,S.height,{fillOpacity:vo,...w,fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke)})}function Me(M,S,w={}){return y(M,S.width,S.height,{fill:Ye(S,s,w.fill),fillOpacity:vo,stroke:ge(S,c,w.stroke)})}function W(M,S,w={}){var z=g(M,qn(S,w),kn(S,w),0,{fill:Ye(S,s,w.fill),fillOpacity:w.fillOpacity||vo,stroke:ge(S,c,w.stroke),strokeWidth:1.5}),U=ie(S);if(E(U,"bpmn:Lane")){var Q=U.get("name");ze(M,Q,S,w)}return z}function Y(M,S,w={}){var z=q(M,S,w),U=Ke(S);if(fn(S)&&(xe(z,{strokeDasharray:"0, 5.5",strokeWidth:2.5}),!U)){var Q=ie(S).flowElements||[],we=Q.filter(He=>E(He,"bpmn:StartEvent"));we.length===1&&J(we[0],M,w,S)}return Ee(M,S,U?"center-top":"center-middle",w),U?H(M,S,void 0,w):H(M,S,["SubProcessMarker"],w),z}function J(M,S,w,z){var U=22,Q={fill:Ye(z,s,w.fill),stroke:ge(z,c,w.stroke),width:U,height:U},we=ie(M).isInterrupting,He=we?0:3,et=we?1:1.2,Pt=20,nt=(U-Pt)/2,St="translate("+nt+","+nt+")";m(S,Pt,Pt,{fill:Q.fill,stroke:Q.stroke,strokeWidth:et,strokeDasharray:He,transform:St}),I(M,S,Q,z)}function Te(M,S,w={}){var z=q(M,S,w);return Ee(M,S,"center-middle",w),H(M,S,void 0,w),z}var ft=this.handlers={"bpmn:AdHocSubProcess":function(M,S,w={}){return Ke(S)?w=Qe(w,["fill","stroke","width","height"]):w=Qe(w,["fill","stroke"]),Y(M,S,w)},"bpmn:Association":function(M,S,w={}){return w=Qe(w,["fill","stroke"]),ue(M,S,w)},"bpmn:BoundaryEvent":function(M,S,w={}){var{renderIcon:z=!0}=w;w=Qe(w,["fill","stroke"]);var U=ie(S),Q=U.get("cancelActivity");w={strokeWidth:1.5,fill:Ye(S,s,w.fill),fillOpacity:LR,stroke:ge(S,c,w.stroke)},Q||(w.strokeDasharray="6");var we=le(M,S,w);return m(M,S.width,S.height,zs,{...w,fill:"none"}),z&&I(S,M,w),we},"bpmn:BusinessRuleTask":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=Te(M,S,w),U=i.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}}),Q=_(M,U);xe(Q,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke),strokeWidth:1});var we=i.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}}),He=_(M,we);return xe(He,{fill:ge(S,c,w.stroke),stroke:ge(S,c,w.stroke),strokeWidth:1}),z},"bpmn:CallActivity":function(M,S,w={}){return w=Qe(w,["fill","stroke"]),Y(M,S,{strokeWidth:5,...w})},"bpmn:ComplexGateway":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=Me(M,S,w),U=i.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:S.width,containerHeight:S.height,position:{mx:.46,my:.26}});return _(M,U,{fill:ge(S,c,w.stroke),stroke:ge(S,c,w.stroke),strokeWidth:1}),z},"bpmn:DataInput":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=i.getRawPath("DATA_ARROW"),U=oe(M,S,w);return _(M,z,{fill:"none",stroke:ge(S,c,w.stroke),strokeWidth:1}),U},"bpmn:DataInputAssociation":function(M,S,w={}){return w=Qe(w,["fill","stroke"]),ue(M,S,{...w,markerEnd:d(M,"association-end",Ye(S,s,w.fill),ge(S,c,w.stroke))})},"bpmn:DataObject":function(M,S,w={}){return w=Qe(w,["fill","stroke"]),oe(M,S,w)},"bpmn:DataObjectReference":D("bpmn:DataObject"),"bpmn:DataOutput":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=i.getRawPath("DATA_ARROW"),U=oe(M,S,w);return _(M,z,{strokeWidth:1,fill:ge(S,c,w.stroke),stroke:ge(S,c,w.stroke)}),U},"bpmn:DataOutputAssociation":function(M,S,w={}){return w=Qe(w,["fill","stroke"]),ue(M,S,{...w,markerEnd:d(M,"association-end",Ye(S,s,w.fill),ge(S,c,w.stroke))})},"bpmn:DataStoreReference":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=i.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:S.width,containerHeight:S.height,position:{mx:0,my:.133}});return _(M,z,{fill:Ye(S,s,w.fill),fillOpacity:vo,stroke:ge(S,c,w.stroke),strokeWidth:2})},"bpmn:EndEvent":function(M,S,w={}){var{renderIcon:z=!0}=w;w=Qe(w,["fill","stroke"]);var U=le(M,S,{...w,strokeWidth:4});return z&&I(S,M,w),U},"bpmn:EventBasedGateway":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=ie(S),U=Me(M,S,w);m(M,S.width,S.height,S.height*.2,{fill:Ye(S,"none",w.fill),stroke:ge(S,c,w.stroke),strokeWidth:1});var Q=z.get("eventGatewayType"),we=!!z.get("instantiate");function He(){var Pt=i.getScaledPath("GATEWAY_EVENT_BASED",{xScaleFactor:.18,yScaleFactor:.18,containerWidth:S.width,containerHeight:S.height,position:{mx:.36,my:.44}});_(M,Pt,{fill:"none",stroke:ge(S,c,w.stroke),strokeWidth:2})}if(Q==="Parallel"){var et=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:S.width,containerHeight:S.height,position:{mx:.474,my:.296}});_(M,et,{fill:"none",stroke:ge(S,c,w.stroke),strokeWidth:1})}else Q==="Exclusive"&&(we||m(M,S.width,S.height,S.height*.26,{fill:"none",stroke:ge(S,c,w.stroke),strokeWidth:1}),He());return U},"bpmn:ExclusiveGateway":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=Me(M,S,w),U=i.getScaledPath("GATEWAY_EXCLUSIVE",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:S.width,containerHeight:S.height,position:{mx:.32,my:.3}}),Q=Ze(S);return Q.get("isMarkerVisible")&&_(M,U,{fill:ge(S,c,w.stroke),stroke:ge(S,c,w.stroke),strokeWidth:1}),z},"bpmn:Gateway":function(M,S,w={}){return w=Qe(w,["fill","stroke"]),Me(M,S,w)},"bpmn:Group":function(M,S,w={}){return w=Qe(w,["fill","stroke","width","height"]),g(M,S.width,S.height,Gs,{stroke:ge(S,c,w.stroke),strokeWidth:1.5,strokeDasharray:"10, 6, 0, 6",fill:"none",pointerEvents:"none",width:qn(S,w),height:kn(S,w)})},"bpmn:InclusiveGateway":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=Me(M,S,w);return m(M,S.width,S.height,S.height*.24,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke),strokeWidth:2.5}),z},"bpmn:IntermediateEvent":function(M,S,w={}){var{renderIcon:z=!0}=w;w=Qe(w,["fill","stroke"]);var U=le(M,S,{...w,strokeWidth:1.5});return m(M,S.width,S.height,zs,{fill:"none",stroke:ge(S,c,w.stroke),strokeWidth:1.5}),z&&I(S,M,w),U},"bpmn:IntermediateCatchEvent":D("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":D("bpmn:IntermediateEvent"),"bpmn:Lane":function(M,S,w={}){return w=Qe(w,["fill","stroke","width","height"]),W(M,S,{...w,fillOpacity:IR})},"bpmn:ManualTask":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=Te(M,S,w),U=i.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}});return _(M,U,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke),strokeWidth:.5}),z},"bpmn:MessageFlow":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=ie(S),U=Ze(S),Q=Ye(S,s,w.fill),we=ge(S,c,w.stroke),He=b(M,S.waypoints,{markerEnd:d(M,"messageflow-end",Q,we),markerStart:d(M,"messageflow-start",Q,we),stroke:we,strokeDasharray:"10, 11",strokeWidth:1.5});if(z.get("messageRef")){var et=He.getPointAtLength(He.getTotalLength()/2),Pt=i.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:et.x,y:et.y}}),nt={strokeWidth:1};U.get("messageVisibleKind")==="initiating"?(nt.fill=Q,nt.stroke=we):(nt.fill=we,nt.stroke=Q);var St=_(M,Pt,nt),dn=z.get("messageRef"),Kt=dn.get("name"),dt=se(M,Kt,{align:"center-top",fitBox:!0,style:{fill:we}}),Mt=St.getBBox(),on=dt.getBBox(),Vo=et.x-on.width/2,Nn=et.y+Mt.height/2+kR;$s(dt,Vo,Nn,0)}return He},"bpmn:ParallelGateway":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=Me(M,S,w),U=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:S.width,containerHeight:S.height,position:{mx:.46,my:.2}});return _(M,U,{fill:ge(S,c,w.stroke),stroke:ge(S,c,w.stroke),strokeWidth:1}),z},"bpmn:Participant":function(M,S,w={}){w=Qe(w,["fill","stroke","width","height"]);var z=W(M,S,w),U=Ke(S),Q=qt(S),we=ie(S),He=we.get("name");if(U){var et=Q?[{x:30,y:0},{x:30,y:kn(S,w)}]:[{x:0,y:30},{x:qn(S,w),y:30}];v(M,et,{stroke:ge(S,c,w.stroke),strokeWidth:OR}),ze(M,He,S,w)}else{var Pt=pa(S,w);Q||(Pt.height=qn(S,w),Pt.width=kn(S,w));var nt=se(M,He,{box:Pt,align:"center-middle",style:{fill:la(S,u,c,w.stroke)}});if(!Q){var St=-1*kn(S,w);$s(nt,0,-St,270)}}return we.get("participantMultiplicity")&&O("ParticipantMultiplicityMarker",M,S,w),z},"bpmn:ReceiveTask":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=ie(S),U=Te(M,S,w),Q;return z.get("instantiate")?(m(M,28,28,20*.22,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke),strokeWidth:1}),Q=i.getScaledPath("TASK_TYPE_INSTANTIATING_SEND",{abspos:{x:7.77,y:9.52}})):Q=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:21,containerHeight:14,position:{mx:.3,my:.4}}),_(M,Q,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke),strokeWidth:1}),U},"bpmn:ScriptTask":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=Te(M,S,w),U=i.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}});return _(M,U,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke),strokeWidth:1}),z},"bpmn:SendTask":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=Te(M,S,w),U=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}});return _(M,U,{fill:ge(S,c,w.stroke),stroke:Ye(S,s,w.fill),strokeWidth:1}),z},"bpmn:SequenceFlow":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=Ye(S,s,w.fill),U=ge(S,c,w.stroke),Q=b(M,S.waypoints,{markerEnd:d(M,"sequenceflow-end",z,U),stroke:U}),we=ie(S),{source:He}=S;if(He){var et=ie(He);we.get("conditionExpression")&&E(et,"bpmn:Activity")&&xe(Q,{markerStart:d(M,"conditional-flow-marker",z,U)}),et.get("default")&&(E(et,"bpmn:Gateway")||E(et,"bpmn:Activity"))&&et.get("default")===we&&xe(Q,{markerStart:d(M,"conditional-default-flow-marker",z,U)})}return Q},"bpmn:ServiceTask":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=Te(M,S,w);m(M,10,10,{fill:Ye(S,s,w.fill),stroke:"none",transform:"translate(6, 6)"});var U=i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}});_(M,U,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke),strokeWidth:1}),m(M,10,10,{fill:Ye(S,s,w.fill),stroke:"none",transform:"translate(11, 10)"});var Q=i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}});return _(M,Q,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke),strokeWidth:1}),z},"bpmn:StartEvent":function(M,S,w={}){var{renderIcon:z=!0}=w;w=Qe(w,["fill","stroke"]);var U=ie(S);U.get("isInterrupting")||(w={...w,strokeDasharray:"6"});var Q=le(M,S,w);return z&&I(S,M,w),Q},"bpmn:SubProcess":function(M,S,w={}){return Ke(S)?w=Qe(w,["fill","stroke","width","height"]):w=Qe(w,["fill","stroke"]),Y(M,S,w)},"bpmn:Task":function(M,S,w={}){return w=Qe(w,["fill","stroke"]),Te(M,S,w)},"bpmn:TextAnnotation":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var{width:z,height:U}=pa(S,w),Q=g(M,z,U,0,0,{fill:"none",stroke:"none"}),we=i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:z,containerHeight:U,position:{mx:0,my:0}});_(M,we,{stroke:ge(S,c,w.stroke)});var He=ie(S),et=He.get("text")||"";return se(M,et,{align:"left-top",box:pa(S,w),padding:yo,style:{fill:la(S,u,c,w.stroke)}}),Q},"bpmn:Transaction":function(M,S,w={}){Ke(S)?w=Qe(w,["fill","stroke","width","height"]):w=Qe(w,["fill","stroke"]);var z=Y(M,S,{strokeWidth:1.5,...w}),U=n.style(["no-fill","no-events"],{stroke:ge(S,c,w.stroke),strokeWidth:1.5}),Q=Ke(S);return Q||(w={}),g(M,qn(S,w),kn(S,w),Gs-zs,zs,U),z},"bpmn:UserTask":function(M,S,w={}){w=Qe(w,["fill","stroke"]);var z=Te(M,S,w),U=15,Q=12,we=i.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:U,y:Q}});_(M,we,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke),strokeWidth:.5});var He=i.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:U,y:Q}});_(M,He,{fill:Ye(S,s,w.fill),stroke:ge(S,c,w.stroke),strokeWidth:.5});var et=i.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:U,y:Q}});return _(M,et,{fill:ge(S,c,w.stroke),stroke:ge(S,c,w.stroke),strokeWidth:.5}),z},label:function(M,S,w={}){return qe(M,S,w)}};this._drawPath=_,this._renderer=P}_e(Br,ki),Br.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],Br.prototype.canRender=function(e){return E(e,"bpmn:BaseElement")},Br.prototype.drawShape=function(e,t,n={}){var{type:i}=t,r=this._renderer(i);return r(e,t,n)},Br.prototype.drawConnection=function(e,t,n={}){var{type:i}=t,r=this._renderer(i);return r(e,t,n)},Br.prototype.getShapePath=function(e){return Ge(e)?Il(e,DR):E(e,"bpmn:Event")?jm(e):E(e,"bpmn:Activity")?Il(e,Gs):E(e,"bpmn:Gateway")?AR(e):TR(e)};function Qe(e,t=[]){return t.reduce((n,i)=>(e[i]&&(n[i]=e[i]),n),{})}var BR=0,NR={width:150,height:50};function $R(e){var t=e.split("-");return{horizontal:t[0]||"center",vertical:t[1]||"top"}}function FR(e){return Wt(e)?V({top:0,left:0,right:0,bottom:0},e):{top:e,left:e,right:e,bottom:e}}var Bl=null;function jR(){return Bl||(Bl=document.createElement("canvas").getContext("2d")),Bl}function HR(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(Hm(e.fontSize)||"12px"),t.push(e.fontFamily||"sans-serif"),t.join(" ")}function Hm(e){if(e!=null)return typeof e=="number"||/^-?\d+(\.\d+)?$/.test(e)?e+"px":e}function zR(e,t){var n=jR();if(!n)return{width:0,height:0};n.font=HR(t),"letterSpacing"in n&&(n.letterSpacing=Hm(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 GR(e,t,n){for(var i=e.shift(),r=i,o;;){if(o=zR(r,n),o.width=r?o.width:0,r===" "||r===""||o.width<Math.round(t)||r.length<2)return VR(e,r,i,o);r=UR(r,o.width,t)}}function VR(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 zm="­";function WR(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===zm)&&r.pop();break}var a=r[r.length-1];return a&&a===zm&&(r[r.length-1]="-"),r.join("")}function UR(e,t,n){var i=Math.max(e.length*(n/t),1),r=WR(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function Vs(e){this._config=V({},{size:NR,padding:BR,style:{},align:"center-top"},e||{})}Vs.prototype.createText=function(e,t){return this.layoutText(e,t).element},Vs.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},Vs.prototype.layoutText=function(e,t){for(var n=V({},this._config.size,t.box),i=V({},this._config.style,t.style),r=$R(t.align||this._config.align),o=FR(t.padding!==void 0?t.padding:this._config.padding),a=t.fitBox||!1,s=YR(i),c=e.split(/\u00AD?\r?\n/),u=[],l=n.width-o.left-o.right;c.length;)u.push(GR(c,l,i));r.vertical==="middle"&&(o.top=o.bottom=0);var f=Cn(u,function(g,y,v){return g+(s||y.height)},0)+o.top+o.bottom,p=Cn(u,function(g,y,v){return y.width>g?y.width:g},0),d=o.top;r.vertical==="middle"&&(d+=(n.height-f)/2),d-=(s||u[0].height)/4;var h=Pe("text");xe(h,i),N(u,function(g){var y;switch(d+=s||g.height,r.horizontal){case"left":y=o.left;break;case"right":y=(a?p:l)-o.right-g.width;break;default:y=Math.max(((a?p:l)-g.width)/2+o.left,0)}var v=Pe("tspan");xe(v,{x:y,y:d}),v.textContent=g.text,Fe(h,v)});var m={width:p,height:f};return{dimensions:m,element:h}};function YR(e){if("fontSize"in e&&"lineHeight"in e)return e.lineHeight*parseInt(e.fontSize,10)}var qR=12,KR=1.2,XR=40;function Gm(e){var t=V({fontFamily:"Arial, sans-serif",fontSize:qR,fontWeight:"normal",lineHeight:KR},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=V({},t,{fontSize:n},e&&e.externalStyle||{}),r=new Vs({style:t});this.getExternalLabelBounds=function(a,s){var c={width:Math.max(a.width,Ir.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:yo});return{x:a.x,y:a.y,width:a.width,height:Math.max(XR,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}}Gm.$inject=["config.textRenderer"];function ZR(){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 f=tC(i.d,{mx:r,my:o,e:a});return f}}var QR=/\{([^{}]+)\}/g,JR=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;function eC(e,t,n){var i=n;return t.replace(JR,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 tC(e,t){return String(e).replace(QR,function(n,i){return eC(n,i,t)})}const nC={__init__:["bpmnRenderer"],bpmnRenderer:["type",Br],textRenderer:["type",Gm],pathMap:["type",ZR]};function iC(e,t){return t=t||{},e.replace(/{([^}]+)}/g,function(n,i){return t[i]||"{"+i+"}"})}const fa={translate:["value",iC]};function Ws(e,t,n){return V({id:e.id,type:e.$type,businessObject:e,di:t},n)}function rC(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 Vm(e,t,n){return new Error(`element ${pn(t)} referenced by ${pn(e)}#${n} not yet drawn`)}function Ii(e,t,n,i,r){this._eventBus=e,this._canvas=t,this._elementFactory=n,this._elementRegistry=i,this._textRenderer=r}Ii.$inject=["eventBus","canvas","elementFactory","elementRegistry","textRenderer"],Ii.prototype.add=function(e,t,n){var i,r,o;if(E(t,"bpmndi:BPMNPlane")){var a=E(e,"bpmn:SubProcess")?{id:e.id+"_plane"}:{};i=this._elementFactory.createRoot(Ws(e,t,a)),this._canvas.addRootElement(i)}else if(E(t,"bpmndi:BPMNShape")){var s=!Ke(e,t),c=aC(e);r=n&&(n.hidden||n.collapsed);var u=t.bounds;i=this._elementFactory.createShape(Ws(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})),E(e,"bpmn:BoundaryEvent")&&this._attachBoundary(e,i),E(e,"bpmn:Lane")&&(o=0),E(e,"bpmn:DataStoreReference")&&(oC(n,Le(u))||(n=this._canvas.findRoot(n))),this._canvas.addShape(i,n,o)}else if(E(t,"bpmndi:BPMNEdge")){var l=this._getSource(e),f=this._getTarget(e);r=n&&(n.hidden||n.collapsed),i=this._elementFactory.createConnection(Ws(e,t,{hidden:r,source:l,target:f,waypoints:rC(t,l,f)})),E(e,"bpmn:DataAssociation")&&(n=this._canvas.findRoot(n)),this._canvas.addConnection(i,n,o)}else throw new Error(`unknown di ${pn(t)} for element ${pn(e)}`);return rr(e)&&Wn(i)&&this.addLabel(e,t,i),this._eventBus.fire("bpmnElement.added",{element:i}),i},Ii.prototype._attachBoundary=function(e,t){var n=e.attachedToRef;if(!n)throw new Error(`missing ${pn(e)}#attachedToRef`);var i=this._elementRegistry.get(n.id),r=i&&i.attachers;if(!i)throw Vm(e,n,"attachedToRef");t.host=i,r||(i.attachers=r=[]),r.indexOf(t)===-1&&r.push(t)},Ii.prototype.addLabel=function(e,t,n){var i,r,o;return i=xR(t,n),r=Wn(n),r&&(i=this._textRenderer.getExternalLabelBounds(i,r)),o=this._elementFactory.createLabel(Ws(e,t,{id:e.id+"_label",labelTarget:n,type:"label",hidden:n.hidden||!Wn(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)},Ii.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?Vm(e,i,t+"Ref"):new Error(`${pn(e)}#${t} Ref not specified`)},Ii.prototype._getSource=function(e){return this._getConnectedElement(e,"source")},Ii.prototype._getTarget=function(e){return this._getConnectedElement(e,"target")},Ii.prototype._getElement=function(e){return this._elementRegistry.get(e.id)};function oC(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 aC(e){return E(e,"bpmn:Group")}const Wm={__depends__:[nC,{__depends__:[fa],bpmnImporter:["type",Ii]}]};function da(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function ci(e,t){return{x:e.x-t.x,y:e.y-t.y}}function Nl(e){return Math.log(e)/Math.log(10)}var sC=1e3;function te(e){this._eventBus=e}te.$inject=["eventBus"];function cC(e,t){return function(n){return e.call(t||null,n.context,n.command,n)}}te.prototype.on=function(e,t,n,i,r,o){if((Ut(t)||Be(t))&&(o=r,r=i,i=n,n=t,t=null),Ut(n)&&(o=r,r=i,i=n,n=sC),Wt(r)&&(o=r,r=!1),!Ut(i))throw new Error("handlerFn must be a function");De(e)||(e=[e]);var a=this._eventBus;N(e,function(s){var c=["commandStack",s,t].filter(function(u){return u}).join(".");a.on(c,n,r?cC(i,o):i,o)})},te.prototype.canExecute=Bi("canExecute"),te.prototype.preExecute=Bi("preExecute"),te.prototype.preExecuted=Bi("preExecuted"),te.prototype.execute=Bi("execute"),te.prototype.executed=Bi("executed"),te.prototype.postExecute=Bi("postExecute"),te.prototype.postExecuted=Bi("postExecuted"),te.prototype.revert=Bi("revert"),te.prototype.reverted=Bi("reverted");function Bi(e){return function(n,i,r,o,a){(Ut(n)||Be(n))&&(a=o,o=r,r=i,i=n,n=null),this.on(n,e,i,r,o,a)}}var $l=["top","bottom","left","right"],Us=10;function Fl(e,t){te.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(Hs(r)&&!at(r)){var o=pC(r);o&&i(r,o)}}function i(r,o){var a=Le(r),s=r.label,c=Le(s);if(s.parent){var u=Ae(r),l;switch(o){case"top":l={x:a.x,y:u.top-Us-s.height/2};break;case"left":l={x:u.left-Us-s.width/2,y:a.y};break;case"bottom":l={x:a.x,y:u.bottom+Us+s.height/2};break;case"right":l={x:u.right+Us+s.width/2,y:a.y};break}var f=ci(l,c);t.moveShape(s,f)}}}_e(Fl,te),Fl.$inject=["eventBus","modeling"];function uC(e){var t=e.host,n=Le(e),i=en(n,t),r;i.indexOf("-")>=0?r=i.split("-"):r=[i];var o=$l.filter(function(a){return r.indexOf(a)===-1});return o}function lC(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 Um(t,i)});return n}function pC(e){var t=Le(e.label),n=Le(e),i=Um(n,t);if(fC(i)){var r=lC(e);if(e.host){var o=uC(e);r=r.concat(o)}var a=$l.filter(function(s){return r.indexOf(s)===-1});return a.indexOf(i)!==-1?en(e.label,e)!=="intersect"?void 0:i:a[0]}}function Um(e,t){return en(t,e,5)}function fC(e){return $l.indexOf(e)!==-1}function jl(e){te.call(this,e),this.preExecute("shape.append",function(t){var n=t.source,i=t.shape;t.position||(E(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)}_e(jl,te),jl.$inject=["eventBus"];var dC=1500;function Hl(e,t,n){e.invoke(te,this),this.preExecute("elements.delete",dC,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=We(r,u=>E(u,"bpmn:Participant")||E(u,"bpmn:SubProcess"));if(!o.length)return[];var a=n.getRootElement(),s=new Set(a.children.filter(u=>E(u,"bpmn:Artifact"))),c=new Set;return N(o,u=>{const l=new Set(Jr(po(Array.from(s),Dt(u))));c=c.union(l),s=s.difference(l)}),Array.from(c)}}_e(Hl,te),Hl.$inject=["injector","eventBus","canvas"];function zl(e,t){e.invoke(te,this),this.postExecute("shape.move",function(n){var i=n.newParent,r=n.shape,o=We(r.incoming.concat(r.outgoing),function(a){return E(a,"bpmn:Association")});N(o,function(a){t.moveConnection(a,{x:0,y:0},i)})},!0)}_e(zl,te),zl.$inject=["injector","modeling"];function bo(e,t){for(Sn(t)&&(t=[t]);e=e.parent;)if(Ve(e,t))return e;return null}function Ym(e,t){var n=bo(e,"bpmn:Process");if(n)return!0;var i=["bpmn:Participant","bpmn:Lane"];if(n=bo(e,i),n)return qt(n);if(Ve(e,i))return qt(e);var r;for(r=ie(e);r&&!E(r,"bpmn:Process");r=r.$parent);if(!t)return!0;var o=t.find(function(a){var s=ie(a);return s&&s.get("processRef")===r});return o?qt(o):!0}var qm=500;function Ys(e,t){t.invoke(te,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",qm,function(i){var r=i.elements;r=r.filter(function(o){var a=o.host;return Km(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",qm,function(i){var r=i.shapes,o=i.newHost;if(r.length===1){var a=r[0];Km(a,o)&&(i.shapes=[n._replaceShape(a,o)])}},!0)}Ys.$inject=["bpmnReplace","injector"],_e(Ys,te),Ys.prototype._replaceShape=function(e,t){var n=hC(e),i={type:"bpmn:BoundaryEvent",host:t};return n&&(i.eventDefinitionType=n.$type),this._bpmnReplace.replaceElement(e,i,{layoutConnection:!1})};function hC(e){var t=ie(e),n=t.eventDefinitions;return n&&n[0]}function Km(e,t){return!Ge(e)&&Ve(e,["bpmn:IntermediateThrowEvent","bpmn:IntermediateCatchEvent"])&&!!t}function Gl(e,t){te.call(this,e);function n(i){return We(i.attachers,function(r){return E(r,"bpmn:BoundaryEvent")})}this.postExecute("connection.create",function(i){var r=i.context.source,o=i.context.target,a=n(o);E(r,"bpmn:EventBasedGateway")&&E(o,"bpmn:ReceiveTask")&&a.length>0&&t.removeElements(a)}),this.postExecute("connection.reconnect",function(i){var r=i.context.oldSource,o=i.context.newSource;E(r,"bpmn:Gateway")&&E(o,"bpmn:EventBasedGateway")&&N(o.outgoing,function(a){var s=a.target,c=n(s);E(s,"bpmn:ReceiveTask")&&c.length>0&&t.removeElements(c)})})}Gl.$inject=["eventBus","modeling"],_e(Gl,te);function Xm(e){return e.create("bpmn:Category")}function mC(e){return e.create("bpmn:CategoryValue")}function Zm(e,t){var n=t.get("categoryValueRef");return n||(n=t.categoryValueRef=mC(e)),n.$parent||(n.$parent=Xm(e)),n}function gC(e,t,n){return Tt(t.get("categoryValue"),e),e.$parent=t,Tt(n.get("rootElements"),t),t.$parent=n,e}function yC(e){var t=e.$parent;return t&&(Ct(t.get("categoryValue"),e),e.$parent=null),e}function vC(e){var t=e.$parent;return t&&(Ct(t.get("rootElements"),e),e.$parent=null),e}var bC=500;function Vl(e,t,n){n.invoke(te,this);function i(c){return t.filter(function(u){return E(u,"bpmn:Group")&&!u.labelTarget}).map(ie).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 f=l.get("categoryValueRef");return f&&f.$parent===c})}function a(c,u){c&&u&&gC(c,u,e.getDefinitions())}function s(c,u,l){u&&!o(u,l)&&vC(u),c&&!r(c,l)&&yC(c)}this.executed(["shape.create","label.create"],function(c){var u=c.labelTarget||c.shape;!E(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;!E(u,"bpmn:Group")||u.labelTarget||s(c.categoryValue,c.category,ie(u))},!0),this.executed(["shape.move","shape.resize"],bC,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,ie(u))},!0),this.executed("group.updateRefs",function(c){Qm(c).forEach(function(u){a(u.categoryValue,u.category)})},!0),this.reverted("group.updateRefs",function(c){Qm(c).forEach(function(u){s(u.categoryValue,u.category,ie(u.groupShape))})},!0),this.executed("shape.delete",function(c){var u=c.shape;!E(u,"bpmn:Group")||u.labelTarget||s(c.categoryValue,c.category,ie(u))},!0),this.reverted("shape.delete",function(c){var u=c.shape;!E(u,"bpmn:Group")||u.labelTarget||a(c.categoryValue,c.category)},!0)}Vl.$inject=["bpmnjs","elementRegistry","injector"],_e(Vl,te);function Qm(e){var t;return((t=e.updates)==null?void 0:t.groups)||[]}function Wl(e,t,n){te.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(g){const y=g.source,v=g.target;_o(y)&&ha(v)&&l(v)}function r(g){const y=g.connection,v=g.source,b=g.target;_o(v)&&qs(b)&&(u(b),p(v,[y]))}function o(g){const y=g.newTarget,v=g.oldSource,b=g.oldTarget;if(b!==y){const _=v;ha(b)&&l(b),_o(_)&&qs(y)&&u(y)}}function a(g){const{element:y}=g;ha(y)?(f(y),d(y)):qs(y)&&h(y)}function s(g){const{newData:y,oldShape:v}=g;if(_o(g.oldShape)&&y.eventDefinitionType!=="bpmn:CompensateEventDefinition"||y.type!=="bpmn:BoundaryEvent"){const b=v.outgoing.find(({target:_})=>ha(_));b&&b.target&&(g._connectionTarget=b.target)}else if(!_o(g.oldShape)&&y.eventDefinitionType==="bpmn:CompensateEventDefinition"&&y.type==="bpmn:BoundaryEvent"){const b=v.outgoing.find(({target:_})=>qs(_));b&&b.target&&(g._connectionTarget=b.target),m(v)}}function c(g){const{_connectionTarget:y,newShape:v}=g;y&&t.connect(v,y)}function u(g){t.updateProperties(g,{isForCompensation:!0})}function l(g){t.updateProperties(g,{isForCompensation:void 0})}function f(g){for(const y of g.incoming)n.canConnect(y.source,g)||t.removeConnection(y);for(const y of g.outgoing)n.canConnect(g,y.target)||t.removeConnection(y)}function p(g,y){g.outgoing.filter(_=>E(_,"bpmn:Association")).filter(_=>ha(_.target)&&!y.includes(_)).forEach(_=>t.removeConnection(_))}function d(g){const y=g.attachers.slice();y.length&&t.removeElements(y)}function h(g){const y=g.incoming.filter(v=>_o(v.source));t.removeElements(y)}function m(g){const y=g.outgoing.filter(v=>E(v,"bpmn:SequenceFlow"));t.removeElements(y)}}_e(Wl,te),Wl.$inject=["eventBus","modeling","bpmnRules"];function ha(e){const t=ie(e);return t&&t.get("isForCompensation")}function _o(e){return e&&E(e,"bpmn:BoundaryEvent")&&go(e,"bpmn:CompensateEventDefinition")}function qs(e){return e&&E(e,"bpmn:Activity")&&!fn(e)}function Ul(e){e.invoke(te,this),this.preExecute("shape.create",1500,function(t){var n=t.context,i=n.parent,r=n.shape;E(i,"bpmn:Lane")&&!E(r,"bpmn:Lane")&&(n.parent=bo(i,"bpmn:Participant"))})}Ul.$inject=["injector"],_e(Ul,te);function Yl(e,t){te.call(this,e),this.preExecute("shape.create",function(n){var a;var i=n.context,r=i.shape;if(E(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}})}Yl.$inject=["eventBus","bpmnFactory"],_e(Yl,te);var ql=20,Kl=20,Jm=30,Ks=2e3;function Xl(e,t,n){te.call(this,t),t.on(["create.start","shape.move.start"],Ks,function(r){var o=r.context,a=o.shape,s=e.getRootElement();if(!(!E(a,"bpmn:Participant")||!E(s,"bpmn:Process")||!s.children.length)){var c=s.children.filter(function(f){return!E(f,"bpmn:Group")&&!Ge(f)&&!at(f)});if(c.length){var u=Dt(c),l=_C(a,u);V(a,l),o.createConstraints=xC(a,u)}}}),t.on("create.start",Ks,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}E(a,"bpmn:Participant")&&E(s,"bpmn:Process")&&(t.on("element.hover",Ks,u),t.once("create.cleanup",function(){t.off("element.hover",u)}))});function i(){var r=e.getRootElement();return E(r,"bpmn:Collaboration")?r:n.makeCollaboration()}this.preExecute("elements.create",Ks,function(r){var o=r.elements,a=r.parent,s=wC(o),c;s&&E(a,"bpmn:Process")&&(r.parent=i(),c=r.hints=r.hints||{},c.participant=s,c.process=a,c.processRef=ie(s).get("processRef"))},!0),this.preExecute("shape.create",function(r){var o=r.parent,a=r.shape;E(a,"bpmn:Participant")&&E(o,"bpmn:Process")&&(r.parent=i(),r.process=o,r.processRef=ie(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)&&ie(s).set("processRef",ie(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)&&ie(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)}Xl.$inject=["canvas","eventBus","modeling"],_e(Xl,te);function _C(e,t){t={width:t.width+ql*2+Jm,height:t.height+Kl*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 xC(e,t){return t=Ae(t),{bottom:t.top+e.height/2-Kl,left:t.right-e.width/2+ql,top:t.bottom-e.height/2+Kl,right:t.left+e.width/2-ql-Jm}}function wC(e){return pt(e,function(t){return E(t,"bpmn:Participant")})}var eg="__targetRef_placeholder";function Zl(e,t){te.call(this,e),this.executed(["connection.create","connection.delete","connection.move","connection.reconnect"],tg(o)),this.reverted(["connection.create","connection.delete","connection.move","connection.reconnect"],tg(o));function n(a,s,c){var u=a.get("dataInputAssociations");return pt(u,function(l){return l!==c&&l.targetRef===s})}function i(a,s){var c=a.get("properties"),u=pt(c,function(l){return l.name===eg});return!u&&s&&(u=t.create("bpmn:Property",{name:eg}),Tt(c,u)),u}function r(a,s){var c=i(a);c&&(n(a,c,s)||Ct(a.get("properties"),c))}function o(a){var s=a.context,c=s.connection,u=c.businessObject,l=c.target,f=l&&l.businessObject,p=s.newTarget,d=p&&p.businessObject,h=s.oldTarget||s.target,m=h&&h.businessObject,g=c.businessObject,y;m&&m!==f&&r(m,u),d&&d!==f&&r(d,u),f?(y=i(f,!0),g.targetRef=y):g.targetRef=null}}Zl.$inject=["eventBus","bpmnFactory"],_e(Zl,te);function tg(e){return function(t){var n=t.context,i=n.connection;if(E(i,"bpmn:DataInputAssociation"))return e(t)}}function Xs(e){this._bpmnUpdater=e}Xs.$inject=["bpmnUpdater"],Xs.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),[]},Xs.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 Ql(e,t,n,i){te.call(this,i),t.registerHandler("dataStore.updateContainment",Xs);function r(){return n.filter(function(s){return E(s,"bpmn:Participant")&&ie(s).processRef})[0]}function o(s){return s.children.filter(function(c){return E(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:Ze(s),newSemanticParent:l.processRef||l,newDiParent:Ze(c)})}}this.preExecute("shape.create",function(s){var c=s.context,u=c.shape;E(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(f){return E(f,"bpmn:DataStoreReference")});l.length&&(c.hints||(c.hints={}),c.hints.autoResize=u.filter(function(f){return!E(f,"bpmn:DataStoreReference")}))}),this.postExecute("shape.create",function(s){var c=s.context,u=c.shape,l=u.parent;E(u,"bpmn:DataStoreReference")&&u.type!=="label"&&E(l,"bpmn:Collaboration")&&a(u)}),this.postExecute("shape.move",function(s){var c=s.context,u=c.shape,l=c.oldParent,f=u.parent;if(!E(l,"bpmn:Collaboration")&&E(u,"bpmn:DataStoreReference")&&u.type!=="label"&&E(f,"bpmn:Collaboration")){var p=E(l,"bpmn:Participant")?l:SC(l,"bpmn:Participant");a(u,p)}}),this.postExecute("shape.delete",function(s){var c=s.context,u=c.shape,l=e.getRootElement();Ve(u,["bpmn:Participant","bpmn:SubProcess"])&&E(l,"bpmn:Collaboration")&&o(l).filter(function(f){return EC(f,u)}).forEach(function(f){a(f)})}),this.postExecute("canvas.updateRoot",function(s){var c=s.context,u=c.oldRoot,l=c.newRoot,f=o(u);f.forEach(function(p){E(l,"bpmn:Process")&&a(p,l)})})}Ql.$inject=["canvas","commandStack","elementRegistry","eventBus"],_e(Ql,te);function EC(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 SC(e,t){for(;e.parent;){if(E(e.parent,t))return e.parent;e=e.parent}}var Zs=Math.max,Qs=Math.min,RC=20;function ng(e,t){return{top:e.top-t.top,right:e.right-t.right,bottom:e.bottom-t.bottom,left:e.left-t.left}}function CC(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 PC(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 Js(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)?Qs:Zs)(i,r)),Be(o)&&(i=(/top|left/.test(e)?Zs:Qs)(i,o)),i}function AC(e,t){if(!t)return e;var n=Ae(e);return Is({top:Js("top",n,t),right:Js("right",n,t),bottom:Js("bottom",n,t),left:Js("left",n,t)})}function TC(e,t,n,i){var r=Ae(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?Ae(i):o,s={top:Qs(o.top,a.top),left:Qs(o.left,a.left),bottom:Zs(o.bottom,a.bottom),right:Zs(o.right,a.right)};return Is(s)}function ma(e,t){return typeof e<"u"?e:RC}function MC(e,t){var n,i,r,o;return typeof t=="object"?(n=ma(t.left),i=ma(t.right),r=ma(t.top),o=ma(t.bottom)):n=i=r=o=ma(t),{x:e.x-n,y:e.y-r,width:e.width+n+i,height:e.height+r+o}}function kC(e){return!(e.waypoints||e.type==="label")}function ig(e,t){var n;if(e.length===void 0?n=We(e.children,kC):n=e,n.length)return MC(Dt(n),t)}var or=Math.abs;function OC(e,t){return ng(Ae(t),Ae(e))}var DC=["bpmn:Participant","bpmn:Process","bpmn:SubProcess"],Kn=30;function ec(e,t){return t=t||[],e.children.filter(function(n){E(n,"bpmn:Lane")&&(ec(n,t),t.push(n))}),t}function ar(e){return e.children.filter(function(t){return E(t,"bpmn:Lane")})}function Xn(e){return bo(e,DC)||e}function LC(e,t){var n=Xn(e),i=E(n,"bpmn:Process")?[]:[n],r=ec(n,i),o=Ae(e),a=Ae(t),s=OC(e,t),c=[],u=qt(e);return r.forEach(function(l){if(l!==e){var f=u?0:s.top,p=u?s.right:0,d=u?0:s.bottom,h=u?s.left:0,m=Ae(l);s.top&&(or(m.bottom-o.top)<10&&(d=a.top-m.bottom),or(m.top-o.top)<5&&(f=a.top-m.top)),s.left&&(or(m.right-o.left)<10&&(p=a.left-m.right),or(m.left-o.left)<5&&(h=a.left-m.left)),s.bottom&&(or(m.top-o.bottom)<10&&(f=a.bottom-m.top),or(m.bottom-o.bottom)<5&&(d=a.bottom-m.bottom)),s.right&&(or(m.left-o.right)<10&&(h=a.right-m.left),or(m.right-o.right)<5&&(p=a.right-m.right)),(f||p||d||h)&&c.push({shape:l,newBounds:PC(l,{top:f,right:p,bottom:d,left:h})})}}),c}var IC=500;function Jl(e,t){te.call(this,e);function n(i,r){var o=qt(i),a=ar(r),s=[],c=[],u=[],l=[];if(Dr(a,function(g){return o?g.y>i.y?c.push(g):s.push(g):g.x>i.x?l.push(g):u.push(g),g.children}),!!a.length){var f;o?c.length&&s.length?f=i.height/2:f=i.height:l.length&&u.length?f=i.width/2:f=i.width;var p,d,h,m;s.length&&(p=t.calculateAdjustments(s,"y",f,i.y-10),t.makeSpace(p.movingShapes,p.resizingShapes,{x:0,y:f},"s")),c.length&&(d=t.calculateAdjustments(c,"y",-f,i.y+i.height+10),t.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:-f},"n")),u.length&&(h=t.calculateAdjustments(u,"x",f,i.x-10),t.makeSpace(h.movingShapes,h.resizingShapes,{x:f,y:0},"e")),l.length&&(m=t.calculateAdjustments(l,"x",-f,i.x+i.width+10),t.makeSpace(m.movingShapes,m.resizingShapes,{x:-f,y:0},"w"))}}this.postExecuted("shape.delete",IC,function(i){var r=i.context,o=r.hints,a=r.shape,s=r.oldParent;E(a,"bpmn:Lane")&&(o&&o.nested||n(a,s))})}Jl.$inject=["eventBus","spaceTool"],_e(Jl,te);var rg=500;function tc(e,t){t.invoke(te,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",rg,function(i){var r=i.elements;r.filter(function(o){var a=o.host;return og(o,a)}).map(function(o){return r.indexOf(o)}).forEach(function(o){i.elements[o]=n._replaceShape(r[o])})},!0),this.preExecute("elements.move",rg,function(i){var r=i.shapes,o=i.newHost;r.forEach(function(a,s){var c=a.host;og(a,NC(r,c)?c:o)&&(r[s]=n._replaceShape(a))})},!0)}tc.$inject=["bpmnReplace","injector"],_e(tc,te),tc.prototype._replaceShape=function(e){var t=BC(e),n;return t?n={type:"bpmn:IntermediateCatchEvent",eventDefinitionType:t.$type}:n={type:"bpmn:IntermediateThrowEvent"},this._bpmnReplace.replaceElement(e,n,{layoutConnection:!1})};function BC(e){var t=ie(e),n=t.eventDefinitions;return n&&n[0]}function og(e,t){return!Ge(e)&&E(e,"bpmn:BoundaryEvent")&&!t}function NC(e,t){return e.indexOf(t)!==-1}var nc=Math.round,$C=Math.max;function FC(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 ag=10;function HC(e,t){var n,i;for(n=0;i=e[n];n++)if(oa(i,t)<=ag)return{point:e[n],bendpoint:!0,index:n};return null}function zC(e,t){var n=pm(FC(t,ag),jC(e)),i=n[0],r=n[n.length-1],o;return i?i!==r?i.segment2!==r.segment2?(o=$C(i.segment2,r.segment2)-1,{point:e[o],bendpoint:!0,index:o}):{point:{x:nc(i.x+r.x)/2,y:nc(i.y+r.y)/2},index:i.segment2}:{point:{x:nc(i.x),y:nc(i.y)},index:i.segment2}:null}function ep(e,t){return HC(e,t)||zC(e,t)}function tp(e,t,n){te.call(this,e);function i(r,o,a){var s=o.waypoints,c,u,l,f,p,d,h,m=r.outgoing.slice(),g=r.incoming.slice(),y;Be(a.width)?y=Le(a):y=a;var v=ep(s,y);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]:y,(c.length===1||!sg(r,c[c.length-1]))&&c.push(cg(l)),(u.length===1||!sg(r,u[0]))&&u.unshift(cg(l))}f=o.source,p=o.target,t.canConnect(f,r,o)&&(n.reconnectEnd(o,r,c||y),d=o),t.canConnect(r,p,o)&&(d?h=n.connect(r,p,{type:o.type,waypoints:u}):(n.reconnectStart(o,r,u||y),h=o));var b=[].concat(d&&We(g,function(_){return _.source===d.source})||[],h&&We(m,function(_){return _.target===h.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},f=pt(o.children,function(p){var d=t.canInsert(a,p);return d&&ep(p.waypoints,l)});f&&(r.targetFlow=f,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)}_e(tp,te),tp.$inject=["eventBus","bpmnRules","modeling"];function sg(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 cg(e){return V({},e)}function np(e,t){te.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)&&xo(r)){var c=[];E(o,"bpmn:EventBasedGateway")?c=a.incoming.filter(u=>u!==r&&xo(u)):c=a.incoming.filter(u=>u!==r&&xo(u)&&E(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(E(r,"bpmn:EventBasedGateway")){var o=r.outgoing.filter(xo).reduce(function(a,s){return a.includes(s.target)?a:a.concat(s.target)},[]);o.forEach(function(a){a.incoming.filter(xo).forEach(function(s){const c=a.incoming.filter(xo).filter(function(u){return u.source===r});(s.source!==r||c.length>1)&&t.removeConnection(s)})})}})}np.$inject=["eventBus","modeling"],_e(np,te);function xo(e){return E(e,"bpmn:SequenceFlow")}var ic=1500,ug=2e3;function lg(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"],ic,function(i){var r=i.context,o=r.shape||i.shape,a=i.hover;E(a,"bpmn:Lane")&&!Ve(o,["bpmn:Lane","bpmn:Participant"])&&(i.hover=Xn(a),i.hoverGfx=e.getGraphics(i.hover));var s=n.getRootElement();a&&a!==s&&(o.labelTarget||Ve(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"],ic,function(i){var r=i.hover;E(r,"bpmn:Lane")&&(i.hover=Xn(r)||r,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["bendpoint.move.hover"],ic,function(i){var r=i.context,o=i.hover,a=r.type;E(o,"bpmn:Lane")&&/reconnect/.test(a)&&(i.hover=Xn(o)||o,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["connect.start"],ic,function(i){var r=i.context,o=r.start;E(o,"bpmn:Lane")&&(r.start=Xn(o)||o)}),t.on("shape.move.start",ug,function(i){var r=i.shape;E(r,"bpmn:Lane")&&(i.shape=Xn(r)||r)}),t.on("spaceTool.move",ug,function(i){var r=i.hover;r&&E(r,"bpmn:Lane")&&(i.hover=Xn(r))})}lg.$inject=["elementRegistry","eventBus","canvas"];var pg=770;function ip(e,t,n,i){n.invoke(te,this);function r(s,c){var u=ie(s),l=c.categoryValue||u.categoryValueRef;l||(l=Zm(e,u));var f=c.category||l.$parent||Xm(e);u.categoryValueRef=l,l.$parent=f,c.categoryValue=l,c.category=f}function o(s,c){var u=ie(s),l=c.categoryValue||u.categoryValueRef,f=c.category||l&&l.$parent;l&&(c.categoryValue=l,c.category=f,u.categoryValueRef=null)}this.execute("label.create",function(s){var c=s.context,u=c.labelTarget;E(u,"bpmn:Group")&&r(u,c)}),this.revert("label.create",function(s){var c=s.context,u=c.labelTarget;E(u,"bpmn:Group")&&o(u,c)}),this.execute("shape.delete",function(s){var c=s.context,u=c.shape,l=ie(u);if(!(!E(u,"bpmn:Group")||u.labelTarget)){var f=c.categoryValue=l.categoryValueRef;f&&(c.category=f.$parent,l.categoryValueRef=null)}}),this.reverted("shape.delete",function(s){var c=s.context,u=c.shape;if(!(!E(u,"bpmn:Group")||u.labelTarget)){var l=c.category,f=c.categoryValue,p=ie(u);f&&(p.categoryValueRef=f,f.$parent=l)}}),this.execute("shape.create",function(s){var c=s.context,u=c.shape,l=c.hints||{};!E(u,"bpmn:Group")||u.labelTarget||l.createElementsBehavior===!1&&!ie(u).categoryValueRef&&!c.categoryValue||r(u,c)}),this.reverted("shape.create",function(s){var c=s.context,u=c.shape,l=c.hints||{};!E(u,"bpmn:Group")||u.labelTarget||l.createElementsBehavior===!1&&!ie(u).categoryValueRef&&!c.categoryValue||o(u,c)}),this.executed(["shape.move","shape.resize"],function(s){var c=s.context,u=c.shape;!E(u,"bpmn:Group")||u.labelTarget||ie(u).categoryValueRef||r(u,c)}),this.reverted(["shape.move","shape.resize"],function(s){var c=s.context,u=c.shape;!E(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",pg,function(s){var c=s.descriptor,u=s.element;if(!(!E(u,"bpmn:Group")||u.labelTarget)){var l=ie(u);if(l.categoryValueRef){var f=l.categoryValueRef;c.categoryValue=a(f,!0),f.$parent&&(c.category=a(f.$parent,!0))}}}),t.on("copyPaste.pasteElement",pg,function(s){var c=s.descriptor,u=c.businessObject,l=c.categoryValue,f=c.category;l&&(l=u.categoryValueRef=a(l)),f&&(l.$parent=a(f)),delete c.category,delete c.categoryValue})}ip.$inject=["bpmnFactory","eventBus","injector","moddleCopy"],_e(ip,te);function rp(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 fg(e){function t(i,r,o){var a={x:o.x,y:o.y-50},s={x:o.x-50,y:o.y},c=rp(i,r,o,a),u=rp(i,r,o,s),l;c&&u?dg(c,o)>dg(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)})}fg.$inject=["eventBus"];function dg(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function op(e){te.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=ie(i),o=Ze(i);if(Ve(r,t)){var a=o.get("isHorizontal");a===void 0&&(a=!0),o.set("isHorizontal",a)}})}op.$inject=["eventBus"],_e(op,te);function hg(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function mg(e){return Math.atan((e[1].y-e[0].y)/(e[1].x-e[0].x))}function GC(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 VC(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 ap(e,t){var n=t[0],i=t[1],r={x:i.x-n.x,y:i.y-n.y},o=VC([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 gg(e,t){var n=ap(e,t),i={x:n.x-e.x,y:n.y-e.y};return hg(i)}function ga(e,t){return hg({x:e.x-t.x,y:e.y-t.y})}var yg=Math.sqrt,vg=Math.min,WC=Math.max,bg=Math.abs;function _g(e){return Math.pow(e,2)}function ya(e,t){return yg(_g(e.x-t.x)+_g(e.y-t.y))}function UC(e,t){var n=0,i,r,o,a,s,c,u,l,f,p,d;for(n=0;n<t.length-1;n++){if(i=t[n],r=t[n+1],wg(i,r)?u=[i]:(o=ya(e,i),a=ya(e,r),c=vg(o,a),u=YC(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:wg(i,u[0])?n:n+1}),u.length===2&&(s=KC(u[0],u[1]),l={type:"segment",position:s,segmentIndex:n,relativeLocation:ya(i,s)/ya(i,r)}),f=ya(l.position,e),(!d||p>f)&&(d=l,p=f)}return d}function YC(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,f=u/c,p=l/c,d=f*f-p;if(d<0&&d>-1e-6&&(d=0),d<0)return[];var h=yg(d),m=-f+h,g=-f-h,y={x:e.x-r*m,y:e.y-o*m};if(d===0)return[y];var v={x:e.x-r*g,y:e.y-o*g};return[y,v].filter(function(b){return qC(b,e,t)})}function qC(e,t,n){return xg(e.x,t.x,n.x)&&xg(e.y,t.y,n.y)}function xg(e,t,n){return e>=vg(t,n)-rc&&e<=WC(t,n)+rc}function KC(e,t){return{x:(e.x+t.x)/2,y:(e.y+t.y)/2}}var rc=.1;function wg(e,t){return bg(e.x-t.x)<=rc&&bg(e.y-t.y)<=rc}function XC(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 f=Sg(t,u);f<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 Eg(e,t,n,i){var r=0,o=0,a={point:e,delta:{x:0,y:0}},s=UC(e,n),c=s.segmentIndex,u=XC(n,t,s,i);if(u<0||u>t.length-2||u===null)return a;var l=Rg(n,c),f=Rg(t,u),p=s.position,d=QC(l,p),h=ZC(l,f);if(s.type==="bendpoint"){var m=t.length-n.length,g=s.bendpointIndex,y=n[g];if(t.indexOf(y)!==-1)return a;if(m===0){var v=t[g];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}}}m<0&&g!==0&&g<n.length-1&&(d=Sg(n,g))}var b={x:(f[1].x-f[0].x)*d+f[0].x,y:(f[1].y-f[0].y)*d+f[0].y},_=GC({x:e.x-p.x,y:e.y-p.y},h);return r=b.x+_.x-e.x,o=b.y+_.y-e.y,{point:Di(b),delta:Di({x:r,y:o})}}function Sg(e,t){var n=ga(e[t-1],e[t]),i=ga(e[t],e[t+1]),r=n/(n+i);return r}function ZC(e,t){var n=mg(e),i=mg(t);return i-n}function Rg(e,t){return[e[t],e[t+1]]}function QC(e,t){var n=ga(e[0],e[1]),i=ga(e[0],t);return n===0?0:i/n}function JC(e,t,n,i){var r=Le(e);return Eg(r,t,n,i).delta}function va(e,t,n){var i=da(t),r=da(n),o=ci(e,i),a={x:o.x*(n.width/t.width),y:o.y*(n.height/t.height)};return Di({x:r.x+a.x,y:r.y+a.y})}function Cg(e,t,n){var i=da(e),r=da(t),o=da(n),a=ci(e,i),s=ci(i,r),c=eP(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 Di({x:l.x+a.x-e.x,y:l.y+a.y-e.y})}function eP(e,t,n){var i=Ae(t),r=Ae(n);if(tP(i,r))return null;var o=en(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=en(n,s),c!==o?null:a}function tP(e,t){return nP(e,t)||iP(e,t)}function nP(e,t){return e.right!==t.right&&e.left!==t.left}function iP(e,t){return e.top!==t.top&&e.bottom!==t.bottom}var Pg="name",Ag="text";function sp(e,t,n,i){te.call(this,e),this.postExecute("element.updateProperties",r),this.postExecute("element.updateModdleProperties",a=>{ie(a.context.element)===a.context.moddleElement&&r(a)});function r(a){var s=a.context,c=s.element,u=s.properties;if(Pg in u&&t.updateLabel(c,u[Pg]),Ag in u&&E(c,"bpmn:TextAnnotation")){var l=i.getTextAnnotationBounds({x:c.x,y:c.y,width:c.width,height:c.height},u[Ag]||"");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)||!rr(u)||Wn(u)&&t.updateLabel(u,Wn(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),f=s.newWaypoints||c.waypoints,p=s.oldWaypoints;return typeof l.startChanged>"u"&&(l.startChanged=!!l.connectionStart),typeof l.endChanged>"u"&&(l.endChanged=!!l.connectionEnd),JC(u,f,p,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,f;!l||!l.parent||(f=o(a),t.moveShape(l,f))}}),this.postExecute(["shape.replace"],function(a){var s=a.context,c=s.newShape,u=s.oldShape,l=ie(c);l&&rr(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,f=i.getDimensions(Wn(c)||"",{box:l,style:i.getExternalStyle()}),p=Math.ceil(f.height),d=l.y!==c.y,h=c.y+c.height;s.newBounds={width:l.width,height:p,x:l.x,y:d?h-p:l.y}}}),this.postExecute("shape.resize",function(a){var s=a.context,c=s.shape,u=s.newBounds,l=s.oldBounds;if(Hs(c)){var f=c.label,p=Le(f),d=aP(l),h=oP(p,d),m=rP(h,l,u);t.moveShape(f,m)}})}_e(sp,te),sp.$inject=["eventBus","modeling","bpmnFactory","textRenderer"];function rP(e,t,n){var i=va(e,t,n);return Di(ci(i,e))}function oP(e,t){if(t.length){var n=sP(e,t);return ap(e,n)}}function aP(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 sP(e,t){var n=t.map(function(r){return{line:r,distance:gg(e,r)}}),i=li(n,"distance");return i[0].line}function cP(e,t,n,i){return Eg(e,t,n,i).point}function cp(e,t){te.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),cP(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),f=[].concat(c.waypoints.slice(0,-1),[l]);t.updateWaypoints(c,f)}),a.forEach(function(c){var u=c.waypoints[0],l=n(i,u),f=[].concat([l],c.waypoints.slice(1));t.updateWaypoints(c,f)})}),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],f={x:l.x+c.x,y:l.y+c.y},p=[].concat(u.waypoints.slice(0,-1),[f]);t.updateWaypoints(u,p)}),a.forEach(function(u){var l=u.waypoints[0],f={x:l.x+c.x,y:l.y+c.y},p=[].concat([f],u.waypoints.slice(1));t.updateWaypoints(u,p)})})}_e(cp,te),cp.$inject=["eventBus","modeling"];function oc(e,t,n){var i=sc(e),r=Mg(i,t),o=i[0];return r.length?r[r.length-1]:va(o.original||o,n,t)}function ac(e,t,n){var i=sc(e),r=Mg(i,t),o=i[i.length-1];return r.length?r[0]:va(o.original||o,n,t)}function up(e,t,n){var i=sc(e),r=Tg(t,n),o=i[0];return va(o.original||o,r,t)}function lp(e,t,n){var i=sc(e),r=Tg(t,n),o=i[i.length-1];return va(o.original||o,r,t)}function Tg(e,t){return{x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}function sc(e){var t=e.waypoints;if(!t.length)throw new Error("connection#"+e.id+": no waypoints");return t}function Mg(e,t){var n=cn(e,lP);return We(n,function(i){return uP(i,t)})}function uP(e,t){return en(t,e,1)==="intersect"}function lP(e){return e.original||e}function pp(e,t){te.call(this,e),this.postExecute("shape.replace",function(n){var i=n.oldShape,r=n.newShape;if(pP(i,r)){var o=fP(i);o.incoming.forEach(function(a){var s=ac(a,r,i);t.reconnectEnd(a,r,s)}),o.outgoing.forEach(function(a){var s=oc(a,r,i);t.reconnectStart(a,r,s)})}},!0)}pp.$inject=["eventBus","modeling"],_e(pp,te);function pP(e,t){return E(e,"bpmn:Participant")&&Ke(e)&&E(t,"bpmn:Participant")&&!Ke(t)}function fP(e){var t=ia([e]),n=[],i=[];return t.forEach(function(r){r!==e&&(r.incoming.forEach(function(o){E(o,"bpmn:MessageFlow")&&n.push(o)}),r.outgoing.forEach(function(o){E(o,"bpmn:MessageFlow")&&i.push(o)}))},[]),{incoming:n,outgoing:i}}const dP=["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:EscalationEventDefinition","bpmn:ConditionalEventDefinition","bpmn:SignalEventDefinition"];function kg(e){const t=ie(e);if(!E(t,"bpmn:BoundaryEvent")&&!(E(t,"bpmn:StartEvent")&&fn(t.$parent)))return!1;const n=t.get("eventDefinitions");return!n||!n.length?!1:dP.some(i=>E(n[0],i))}function Og(e){return E(e,"bpmn:BoundaryEvent")?"cancelActivity":"isInterrupting"}function fp(e,t){e.invoke(te,this),this.postExecuted("shape.replace",function(n){const i=n.context.oldShape,r=n.context.newShape,o=n.context.hints;if(!kg(r))return;const a=Og(r);if(o.targetElement&&o.targetElement[a]!==void 0)return;const c=ie(i).get(a),u=ie(r).get(a);c!==u&&t.updateProperties(r,{[a]:c})})}fp.$inject=["injector","modeling"],_e(fp,te);function dp(e,t){te.call(this,e),this.preExecute("shape.resize",function(n){var i=n.shape,r=Ze(i),o=r&&r.get("label"),a=o&&o.get("bounds");a&&t.updateModdleProperties(i,o,{bounds:void 0})},!0)}_e(dp,te),dp.$inject=["eventBus","modeling"];function hp(e,t,n){te.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(!(!E(o,"bpmn:SequenceFlow")||!E(a,"bpmn:SequenceFlow"))&&t.canConnect(o.source,a.target,o)){var s=hP(o.waypoints,a.waypoints);n.reconnectEnd(o,a.target,s)}}})}_e(hp,te),hp.$inject=["eventBus","bpmnRules","modeling"];function wo(e){return e.original||e}function hP(e,t){var n=rp(wo(e[e.length-2]),wo(e[e.length-1]),wo(t[1]),wo(t[0]));return n?[].concat(e.slice(0,e.length-1),[n],t.slice(1)):[wo(e[0]),wo(t[t.length-1])]}function mp(e,t){te.call(this,e),this.preExecute("shape.delete",function(n){var i=n.shape,r=i.parent;E(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)}mp.$inject=["eventBus","modeling"],_e(mp,te);function gp(e,t,n,i){te.call(this,e);var r=i.get("dragging",!1);function o(c){var u=c.source,l=c.target,f=c.parent;if(f){var p,d;E(c,"bpmn:SequenceFlow")&&(n.canConnectSequenceFlow(u,l)||(d=!0),n.canConnectMessageFlow(u,l)&&(p="bpmn:MessageFlow")),E(c,"bpmn:MessageFlow")&&(n.canConnectMessageFlow(u,l)||(d=!0),n.canConnectSequenceFlow(u,l)&&(p="bpmn:SequenceFlow")),d&&t.removeConnection(c),p&&t.connect(u,l,{type:p,waypoints:c.waypoints.slice()})}}function a(c){var u=c.context,l=u.connection,f=u.newSource||l.source,p=u.newTarget||l.target,d,h;d=n.canConnect(f,p),!(!d||d.type===l.type)&&(h=t.connect(f,p,{type:d.type,associationDirection:d.associationDirection,waypoints:l.waypoints.slice()}),l.parent&&t.removeConnection(l),u.connection=h,r&&s(l,h))}function s(c,u){var l=r.context(),f=l&&l.payload.previousSelection,p;!f||!f.length||(p=f.indexOf(c),p!==-1&&f.splice(p,1,u))}this.postExecuted("elements.move",function(c){var u=c.closure,l=u.allConnections;N(l,o)},!0),this.preExecute("connection.reconnect",a),this.postExecuted("element.updateProperties",function(c){var u=c.context,l=u.properties,f=u.element,p=f.businessObject,d;l.default&&(d=pt(f.outgoing,to({id:f.businessObject.default.id})),d&&t.updateProperties(d,{conditionExpression:void 0})),l.conditionExpression&&p.sourceRef.default===p&&t.updateProperties(f.source,{default:void 0})})}_e(gp,te),gp.$inject=["eventBus","modeling","bpmnRules","injector"];function cc(e,t,n,i,r,o){i.invoke(te,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=Cn(u,function(f,p){var d=t.canReplace([p],p.host||p.parent||c);return d?f.concat(d.replacements):f},[]);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=[];N(s.closure.topLevel,function(p){fn(p)?l=l.concat(p.children):l=l.concat(p)}),l.length===1&&u&&(c=u);var f=t.canReplace(l,c);f&&this._replaceElements(l,f.replacements,u)},this),this.postExecute(["shape.replace"],1500,function(a){var s=a.context,c=s.oldShape,u=s.newShape,l=c.attachers,f;l&&l.length&&(f=t.canReplace(l,u),this._replaceElements(l,f.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})})}_e(cc,te),cc.prototype._replaceElements=function(e,t){var n=this._elementRegistry,i=this._bpmnReplace,r=this._selection;N(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)},cc.$inject=["bpmnReplace","bpmnRules","elementRegistry","injector","modeling","selection"];var mP=1500,gP={width:140,height:120},yp={width:300,height:60},vp={width:60,height:300},uc={width:300,height:150},lc={width:150,height:300},Dg={width:140,height:120},Lg={width:100,height:40};function Ig(e){e.on("resize.start",mP,function(t){var n=t.context,i=n.shape,r=n.direction,o=n.balanced;(E(i,"bpmn:Lane")||E(i,"bpmn:Participant"))&&(n.resizeConstraints=xP(i,r,o)),E(i,"bpmn:SubProcess")&&Ke(i)&&(n.minDimensions=Dg),E(i,"bpmn:TextAnnotation")&&(n.minDimensions=Lg)})}Ig.$inject=["eventBus"];var sr=Math.abs,yP=Math.min,vP=Math.max;function Bg(e,t,n,i){var r=e[t];e[t]=r===void 0?n:i(n,r)}function Eo(e,t,n){return Bg(e,t,n,yP)}function So(e,t,n){return Bg(e,t,n,vP)}var bP={top:20,left:50,right:20,bottom:20},_P={top:50,left:20,right:20,bottom:20};function xP(e,t,n){var i=Xn(e),r=!0,o=!0,a=ec(i,[i]),s=Ae(e),c={},u={},l=qt(e),f=l?yp:vp;/n/.test(t)?u.top=s.bottom-f.height:/e/.test(t)?u.right=s.left+f.width:/s/.test(t)?u.bottom=s.top+f.height:/w/.test(t)&&(u.left=s.right-f.width),a.forEach(function(h){var m=Ae(h);l?(m.top<s.top-10&&(r=!1),m.bottom>s.bottom+10&&(o=!1)):(m.left<s.left-10&&(r=!1),m.right>s.right+10&&(o=!1)),/n/.test(t)&&(n&&sr(s.top-m.bottom)<10&&So(c,"top",m.top+f.height),sr(s.top-m.top)<5&&Eo(u,"top",m.bottom-f.height)),/e/.test(t)&&(n&&sr(s.right-m.left)<10&&Eo(c,"right",m.right-f.width),sr(s.right-m.right)<5&&So(u,"right",m.left+f.width)),/s/.test(t)&&(n&&sr(s.bottom-m.top)<10&&Eo(c,"bottom",m.bottom-f.height),sr(s.bottom-m.bottom)<5&&So(u,"bottom",m.top+f.height)),/w/.test(t)&&(n&&sr(s.left-m.right)<10&&So(c,"left",m.left+f.width),sr(s.left-m.left)<5&&Eo(u,"left",m.right-f.width))});var p=i.children.filter(function(h){return!h.hidden&&!h.waypoints&&(E(h,"bpmn:FlowElement")||E(h,"bpmn:Artifact"))}),d=l?bP:_P;return p.forEach(function(h){var m=Ae(h);/n/.test(t)&&(!l||r)&&Eo(u,"top",m.top-d.top),/e/.test(t)&&(l||o)&&So(u,"right",m.right+d.right),/s/.test(t)&&(!l||o)&&So(u,"bottom",m.bottom+d.bottom),/w/.test(t)&&(l||r)&&Eo(u,"left",m.left-d.left)}),{min:u,max:c}}function Ng(e){!e||typeof e.stopPropagation!="function"||e.stopPropagation()}function Ro(e){return e.originalEvent||e.srcEvent}function bp(e){Ng(e),Ng(Ro(e))}function Nr(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 $g(){return/mac/i.test(navigator.platform)}function Fg(e,t){return(Ro(e)||e).button===t}function cr(e){return Fg(e,0)}function wP(e){return Fg(e,1)}function ba(e){var t=Ro(e)||e;return cr(e)?$g()?t.metaKey:t.ctrlKey:!1}function pc(e){var t=Ro(e)||e;return cr(e)&&t.shiftKey}var jg=1001;function Hg(e,t){e.on("resize.start",jg+500,function(n){var i=n.context,r=i.shape;(E(r,"bpmn:Lane")||E(r,"bpmn:Participant"))&&(i.balanced=!ba(n))}),e.on("resize.end",jg,function(n){var i=n.context,r=i.shape,o=i.canExecute,a=i.newBounds;if(E(r,"bpmn:Lane")||E(r,"bpmn:Participant"))return o&&(a=gm(a),t.resizeLane(r,a,i.balanced)),!1})}Hg.$inject=["eventBus","modeling"];var EP=500;function _p(e,t,n,i,r){n.invoke(te,this);function o(l){return Ve(l,["bpmn:ReceiveTask","bpmn:SendTask"])||SP(l,["bpmn:ErrorEventDefinition","bpmn:EscalationEventDefinition","bpmn:MessageEventDefinition","bpmn:SignalEventDefinition"])}function a(l){var f=e.getDefinitions(),p=f.get("rootElements");return!!pt(p,to({id:l.id}))}function s(l){if(E(l,"bpmn:ErrorEventDefinition"))return"errorRef";if(E(l,"bpmn:EscalationEventDefinition"))return"escalationRef";if(E(l,"bpmn:MessageEventDefinition"))return"messageRef";if(E(l,"bpmn:SignalEventDefinition"))return"signalRef"}function c(l){if(Ve(l,["bpmn:ReceiveTask","bpmn:SendTask"]))return l.get("messageRef");var f=l.get("eventDefinitions"),p=f[0];return p.get(s(p))}function u(l,f){if(Ve(l,["bpmn:ReceiveTask","bpmn:SendTask"]))return l.set("messageRef",f);var p=l.get("eventDefinitions"),d=p[0];return d.set(s(d),f)}this.executed(["shape.create","element.updateProperties","element.updateModdleProperties"],function(l){var f=l.shape||l.element;if(o(f)){var p=ie(f),d=c(p),h;d&&!a(d)&&(h=e.getDefinitions().get("rootElements"),Tt(h,d),l.addedRootElement=d)}},!0),this.reverted(["shape.create","element.updateProperties","element.updateModdleProperties"],function(l){var f=l.addedRootElement;if(f){var p=e.getDefinitions().get("rootElements");Ct(p,f)}},!0),t.on("copyPaste.copyElement",function(l){var f=l.descriptor,p=l.element;if(!(p.labelTarget||!o(p))){var d=ie(p),h=c(d);h&&(f.referencedRootElement=h)}}),t.on("copyPaste.pasteElement",EP,function(l){var f=l.descriptor,p=f.businessObject,d=f.referencedRootElement;d&&(a(d)||(d=i.copyElement(d,r.create(d.$type))),u(p,d),delete f.referencedRootElement)})}_p.$inject=["bpmnjs","eventBus","injector","moddleCopy","bpmnFactory"],_e(_p,te);function SP(e,t){return De(t)||(t=[t]),Yi(t,function(n){return go(e,n)})}var zg=Math.max;function Gg(e){e.on("spaceTool.getMinDimensions",function(t){var n=t.shapes,i=t.axis,r=t.start,o={};return N(n,function(a){var s=a.id;E(a,"bpmn:Participant")&&(o[s]=CP(a,i,r)),E(a,"bpmn:Lane")&&(o[s]=qt(a)?yp:vp),E(a,"bpmn:SubProcess")&&Ke(a)&&(o[s]=Dg),E(a,"bpmn:TextAnnotation")&&(o[s]=Lg),E(a,"bpmn:Group")&&(o[s]=gP)}),o})}Gg.$inject=["eventBus"];function RP(e){return e==="x"}function CP(e,t,n){var i=qt(e);if(!TP(e))return i?uc:lc;var r=RP(t),o={};return r?i?o=uc:o={width:AP(e,n,r),height:lc.height}:i?o={width:uc.width,height:PP(e,n,r)}:o=lc,o}function PP(e,t,n){var i;return i=MP(e,t,n),zg(uc.height,i)}function AP(e,t,n){var i;return i=kP(e,t,n),zg(lc.width,i)}function TP(e){return!!ar(e).length}function MP(e,t,n){var i=ar(e),r;return r=xp(i,t,n),e.height-r.height+yp.height}function kP(e,t,n){var i=ar(e),r;return r=xp(i,t,n),e.width-r.width+vp.width}function xp(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=ar(r),o.length?xp(o,t,n):r}var Vg="_plane";function Wg(e){var t=e.id;return OP(t)}function _i(e){var t=e.id;return E(e,"bpmn:SubProcess")?Ug(t):t}function $r(e){return Ug(e)}function fc(e){var t=Ze(e);return E(t,"bpmndi:BPMNPlane")}function Ug(e){return e+Vg}function OP(e){return e.replace(new RegExp(Vg+"$"),"")}var Yg=400,DP=600,qg={x:180,y:160};function Ni(e,t,n,i,r,o,a){te.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(f){return E(f,"bpmn:SubProcess")&&!Ke(f)}function u(f){var p=f.shape,d=f.newRootElement,h=ie(p);d=s._addDiagram(d||h),f.newRootElement=e.addRootElement(d)}function l(f){var p=f.shape,d=ie(p);s._removeDiagram(d);var h=f.newRootElement=a.get(_i(d));e.removeRootElement(h)}this.executed("shape.create",function(f){var p=f.shape;c(p)&&u(f)},!0),this.postExecuted("elements.create",function(f){var p=f.elements;N(p,function(d){if(c(d)){var h=a.get(_i(d));if(!(!h||!d.children||!d.children.length)){var m=Kg(d);s._showRecursively(m),s._moveChildrenToShape(m,h)}}})},!0),this.reverted("shape.create",function(f){var p=f.shape;c(p)&&l(f)},!0),this.preExecute("shape.delete",function(f){var p=f.shape;!E(p,"bpmn:SubProcess")||!Ke(p)||N(ua([p]),d=>{n.removeShape(d.annotation)})},!0),this.preExecuted("shape.delete",function(f){var p=f.shape;if(c(p)){var d=a.get(_i(p));d&&n.removeElements(d.children.slice())}},!0),this.executed("shape.delete",function(f){var p=f.shape;c(p)&&l(f)},!0),this.reverted("shape.delete",function(f){var p=f.shape;c(p)&&u(f)},!0),this.preExecuted("shape.replace",function(f){var p=f.oldShape,d=f.newShape;!c(p)||!c(d)||(f.oldRoot=e.removeRootElement(_i(p)))},!0),this.postExecuted("shape.replace",function(f){var p=f.newShape,d=f.oldRoot,h=e.findRoot(_i(p));if(!(!d||!h)){var m=d.children;n.moveElements(m,{x:0,y:0},h)}},!0),this.executed("element.updateProperties",function(f){var p=f.element;if(E(p,"bpmn:SubProcess")){var d=f.properties,h=f.oldProperties,m=h.id,g=d.id;if(m!==g){if(fc(p)){a.updateId(p,$r(g)),a.updateId(m,g);return}var y=a.get($r(m));y&&a.updateId($r(m),$r(g))}}},!0),this.reverted("element.updateProperties",function(f){var p=f.element;if(E(p,"bpmn:SubProcess")){var d=f.properties,h=f.oldProperties,m=h.id,g=d.id;if(m!==g){if(fc(p)){a.updateId(p,$r(m)),a.updateId(g,m);return}var y=a.get($r(g));y&&a.updateId(y,$r(m))}}},!0),t.on("element.changed",function(f){var p=f.element;if(fc(p)){var d=p,h=a.get(Wg(d));!h||h===d||t.fire("element.changed",{element:h})}}),this.executed("shape.toggleCollapse",Yg,function(f){var p=f.shape;E(p,"bpmn:SubProcess")&&(Ke(p)?l(f):(u(f),s._showRecursively(p.children)))},!0),this.reverted("shape.toggleCollapse",Yg,function(f){var p=f.shape;E(p,"bpmn:SubProcess")&&(Ke(p)?l(f):(u(f),s._showRecursively(p.children)))},!0),this.postExecuted("shape.toggleCollapse",DP,function(f){var p=f.shape;if(E(p,"bpmn:SubProcess")){var d=f.newRootElement;if(d)if(Ke(p))s._moveChildrenToShape(d.children.slice(),p),N(ua(p.children),m=>{n.moveShape(m.annotation,{x:0,y:0},p.parent),N(m.associations,g=>{n.moveConnection(g,{x:0,y:0},p.parent)})});else{s._disconnectSharedAnnotations(p);var h=Kg(p);s._moveChildrenToShape(h,d)}}},!0),t.on("copyPaste.createTree",function(f){var p=f.element,d=f.children;if(c(p)){var h=_i(p),m=a.get(h);m&&d.push.apply(d,m.children)}}),t.on("copyPaste.copyElement",function(f){var p=f.descriptor,d=f.element,h=f.elements,m=d.parent,g=E(Ze(m),"bpmndi:BPMNPlane");if(g){var y=Wg(m),v=pt(h,function(b){return b.id===y});v&&(p.parent=v.id)}}),t.on("copyPaste.pasteElement",function(f){var p=f.descriptor;p.parent&&(c(p.parent)||p.parent.hidden)&&(p.hidden=!0)})}_e(Ni,te),Ni.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=Dt(i),o;if(!t.x)o={x:qg.x-r.x,y:qg.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})}},Ni.prototype._disconnectSharedAnnotations=function(e){var t=this._modeling,n=new Set(Fm(e).map(i=>i.annotation));n.size&&N(ua(e.children),i=>{n.has(i.annotation)&&N(i.associations,r=>{t.removeConnection(r)})})},Ni.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},Ni.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},Ni.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:_i(e),type:e.$type,di:i,businessObject:e,collapsed:!0});return o},Ni.prototype._removeDiagram=function(e){var t=this._bpmnjs,n=t.getDefinitions().diagrams,i=pt(n,function(r){return r.plane.bpmnElement.id===e.id});return n.splice(n.indexOf(i),1),i},Ni.$inject=["canvas","eventBus","modeling","elementFactory","bpmnFactory","bpmnjs","elementRegistry"];function LP(e){var t=[];return N(ua(e),n=>{t.push(n.annotation),t.push.apply(t,n.associations)}),t}function Kg(e){return e.children.slice().concat(LP(e.children)).concat(IP(e))}function IP(e){return Cl(e.children||[]).reduce(function(t,n){return n.label&&n.label.parent!==e&&t.push(n.label),t},[])}function wp(e,t){e.invoke(te,this),this.postExecuted("shape.replace",function(n){var i=n.context.oldShape,r=n.context.newShape;if(!(!E(r,"bpmn:SubProcess")||E(r,"bpmn:AdHocSubProcess")||!(E(i,"bpmn:Task")||E(i,"bpmn:CallActivity"))||!Ke(r))){var o=BP(r);t.createShape({type:"bpmn:StartEvent"},o,r)}})}wp.$inject=["injector","modeling"],_e(wp,te);function BP(e){return{x:e.x+e.width/6,y:e.y+e.height/2}}function Ep(e,t){te.call(this,e),this.preExecute("connection.create",function(n){const{target:i}=n;E(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&&E(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(!(!E(r,"bpmn:TextAnnotation")||o.autoResize)){var a=i.newBounds,s=t.getTextAnnotationBounds(a,Wn(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}}})}_e(Ep,te),Ep.$inject=["eventBus","textRenderer"];function Sp(e,t){te.call(this,e),this.postExecuted("shape.toggleCollapse",1500,function(n){var i=n.shape;if(Ke(i))return;var r=ia(i);r.forEach(function(a){var s=a.incoming.slice(),c=a.outgoing.slice();N(s,function(u){o(u,!0)}),N(c,function(u){o(u,!1)})});function o(a,s){r.indexOf(a.source)!==-1&&r.indexOf(a.target)!==-1||E(a,"bpmn:Association")&&(E(a.source,"bpmn:TextAnnotation")||E(a.target,"bpmn:TextAnnotation"))||(s?t.reconnectEnd(a,i,Le(i)):t.reconnectStart(a,i,Le(i)))}},!0)}_e(Sp,te),Sp.$inject=["eventBus","modeling"];var Rp=500;function Cp(e,t,n){te.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,f;return l=NP(c).concat([a]),f=ig(l),f?(u.width=Math.max(f.width,u.width),u.height=Math.max(f.height,u.height),u.x=f.x+(f.width-u.width)/2,u.y=f.y+(f.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"],Rp,function(a){var s=a.context,c=s.shape;E(c,"bpmn:SubProcess")&&(c.collapsed?Ze(c).isExpanded=!1:(i(c.children),Ze(c).isExpanded=!0))}),this.reverted(["shape.toggleCollapse"],Rp,function(a){var s=a.context,c=s.shape;c.collapsed?Ze(c).isExpanded=!1:Ze(c).isExpanded=!0}),this.postExecuted(["shape.toggleCollapse"],Rp,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"})})}_e(Cp,te),Cp.$inject=["eventBus","elementFactory","modeling"];function NP(e){return e.filter(function(t){return!t.hidden})}function Pp(e,t,n,i){t.invoke(te,this),this.preExecute("shape.delete",function(r){var o=r.context,a=o.shape,s=a.businessObject;Ge(a)||(E(a,"bpmn:Participant")&&Ke(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;E(r,"bpmn:Collaboration")&&n.ids.unclaim(o.id)})}_e(Pp,te),Pp.$inject=["canvas","injector","moddle","modeling"];function Ap(e,t){te.call(this,e),this.preExecute("connection.delete",function(n){var i=n.context,r=i.connection,o=r.source;$P(r,o)&&t.updateProperties(o,{default:null})})}_e(Ap,te),Ap.$inject=["eventBus","modeling"];function $P(e,t){if(!E(e,"bpmn:SequenceFlow"))return!1;var n=ie(t),i=ie(e);return n.get("default")===i}var FP=500,jP=5e3,Xg=["shape.create","shape.delete","shape.move","shape.resize"],Zg=[...Xg,"spaceTool","lane.add","lane.resize","lane.split","elements.create","elements.delete","elements.move"];function Tp(e,t){te.call(this,e);var n;function i(){return n=n||new HP,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(Zg,jP,function(){i()}),this.postExecuted(Zg,FP,function(){o()}),this.preExecute(Xg,function(a){var s=a.context,c=s.shape,u=r();!c||c.labelTarget||(E(c,"bpmn:Lane")&&u.addLane(c),E(c,"bpmn:FlowNode")&&u.addFlowNode(c))})}Tp.$inject=["eventBus","modeling"],_e(Tp,te);function HP(){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 zP=500,GP=5e3,Qg=["connection.create","connection.delete","connection.layout","connection.move","connection.reconnect","connection.updateWaypoints","shape.create","shape.delete","shape.move","shape.resize"],Jg=[...Qg,"elements.create","elements.delete","elements.move","label.create","spaceTool"];function Mp(e,t){te.call(this,e);var n;function i(){return n=n||new VP,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(Jg,GP,function(){i()}),this.postExecuted(Jg,zP,function(){o()}),this.preExecute(Qg,function(a){var s=a.context.connection||a.context.shape,c=r();!s||s.labelTarget||(E(s,"bpmn:FlowElement")&&c.addFlowElement(s),E(s,"bpmn:Group")&&c.addGroup(s))}),this.preExecute("label.create",function(a){var s=a.context.labelTarget;E(s,"bpmn:Group")&&r().addGroup(s)})}Mp.$inject=["eventBus","modeling"],_e(Mp,te);function VP(){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 kp(e,t){te.call(this,e),this.postExecuted("elements.create",function(n){const i=n.context,r=i.elements;for(const o of r)WP(o)&&!YP(o)&&t.updateProperties(o,{isForCompensation:void 0})})}_e(kp,te),kp.$inject=["eventBus","modeling"];function WP(e){const t=ie(e);return t&&t.isForCompensation}function UP(e){return e&&E(e,"bpmn:BoundaryEvent")&&go(e,"bpmn:CompensateEventDefinition")}function YP(e){return e.incoming.filter(n=>UP(n.source)).length>0}const qP={__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",Fl],appendBehavior:["type",jl],associationBehavior:["type",zl],attachEventBehavior:["type",Ys],artifactBehavior:["type",Hl],boundaryEventBehavior:["type",Gl],categoryRootElementReferenceBehavior:["type",Vl],compensateBoundaryEventBehaviour:["type",Wl],createBehavior:["type",Ul],createDataObjectBehavior:["type",Yl],createParticipantBehavior:["type",Xl],dataInputAssociationBehavior:["type",Zl],dataStoreBehavior:["type",Ql],deleteLaneBehavior:["type",Jl],detachEventBehavior:["type",tc],dropOnFlowBehavior:["type",tp],eventBasedGatewayBehavior:["type",np],fixHoverBehavior:["type",lg],groupBehavior:["type",ip],importDockingFix:["type",fg],isHorizontalFix:["type",op],labelBehavior:["type",sp],layoutConnectionBehavior:["type",cp],messageFlowBehavior:["type",pp],nonInterruptingBehavior:["type",fp],removeElementBehavior:["type",hp],removeEmbeddedLabelBoundsBehavior:["type",dp],removeParticipantBehavior:["type",mp],replaceConnectionBehavior:["type",gp],replaceElementBehaviour:["type",cc],resizeBehavior:["type",Ig],resizeLaneBehavior:["type",Hg],rootElementReferenceBehavior:["type",_p],spaceToolBehavior:["type",Gg],subProcessPlaneBehavior:["type",Ni],subProcessStartEventBehavior:["type",wp],textAnnotationBehavior:["type",Ep],toggleCollapseConnectionBehaviour:["type",Sp],toggleElementCollapseBehaviour:["type",Cp],unclaimIdBehavior:["type",Pp],unsetDefaultFlowBehavior:["type",Ap],updateFlowNodeRefsBehavior:["type",Tp],updateCategoryValueRefsBehavior:["type",Mp],setCompensationActivityAfterPasteBehavior:["type",kp]};function Op(e){this._commandStack=e.get("commandStack",!1)}Op.$inject=["injector"],Op.prototype.allowed=function(e,t){var n=!0,i=this._commandStack;return i&&(n=i.canExecute(e,t)),n===void 0?!0:n};const xi={__init__:["rules"],rules:["type",Op]};function Zn(e){te.call(this,e),this.init()}Zn.$inject=["eventBus"],_e(Zn,te),Zn.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)})},Zn.prototype.init=function(){};function ey(e,t){var n=en(e,t,-15);return n!=="intersect"?n:null}function nn(e){Zn.call(this,e)}_e(nn,Zn),nn.$inject=["eventBus"],nn.prototype.init=function(){this.addRule("connection.start",function(e){var t=e.source;return KP(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 hc(t,n)}finally{r&&(n.parent=null)}}),this.addRule("connection.reconnect",function(e){var t=e.connection,n=e.source,i=e.target;return hc(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 dy(t,n,i)}),this.addRule("elements.create",function(e){var t=e.elements,n=e.position,i=e.target;return at(i)&&!mc(t,i)?!1:Pr(t,function(r){return at(r)?hc(r.source,r.target,r):r.host?_a(r,r.host,null,n):Bp(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 sy(a)&&!n.includes(a.host)})?!1:_a(n,t,null,i)||py(n,t,i)||fy(n,t)||mc(n,t)}),this.addRule("shape.create",function(e){return Bp(e.shape,e.target,e.source,e.position)}),this.addRule("shape.attach",function(e){return _a(e.shape,e.target,null,e.position)}),this.addRule("element.copy",function(e){var t=e.element,n=e.elements;return vy(n,t)})},nn.prototype.canConnectMessageFlow=gy,nn.prototype.canConnectSequenceFlow=yy,nn.prototype.canConnectDataAssociation=Np,nn.prototype.canConnectAssociation=hy,nn.prototype.canConnectCompensationAssociation=my,nn.prototype.canMove=fy,nn.prototype.canAttach=_a,nn.prototype.canReplace=py,nn.prototype.canDrop=Co,nn.prototype.canInsert=mc,nn.prototype.canCreate=Bp,nn.prototype.canConnect=hc,nn.prototype.canResize=dy,nn.prototype.canCopy=vy;function KP(e){return Dp(e)?null:Ve(e,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference","bpmn:Group","bpmn:TextAnnotation"])}function Dp(e){return!e||Ge(e)}function ty(e){do{if(E(e,"bpmn:Process"))return ie(e);if(E(e,"bpmn:Participant"))return ie(e).processRef||ie(e)}while(e=e.parent)}function Lp(e){return E(e,"bpmn:TextAnnotation")}function Ip(e){return E(e,"bpmn:Group")&&!e.labelTarget}function ny(e){return E(e,"bpmn:BoundaryEvent")&&wi(e,"bpmn:CompensateEventDefinition")}function dc(e){return ie(e).isForCompensation}function XP(e,t){var n=ty(e),i=ty(t);return n===i}function ZP(e){return E(e,"bpmn:InteractionNode")&&!E(e,"bpmn:BoundaryEvent")&&(!E(e,"bpmn:Event")||E(e,"bpmn:ThrowEvent")&&oy(e,"bpmn:MessageEventDefinition"))}function QP(e){return E(e,"bpmn:InteractionNode")&&!dc(e)&&(!E(e,"bpmn:Event")||E(e,"bpmn:CatchEvent")&&oy(e,"bpmn:MessageEventDefinition"))&&!(E(e,"bpmn:BoundaryEvent")&&!wi(e,"bpmn:MessageEventDefinition"))}function iy(e){for(var t=e;t=t.parent;){if(E(t,"bpmn:FlowElementsContainer"))return ie(t);if(E(t,"bpmn:Participant"))return ie(t).processRef}return null}function ry(e,t){var n=iy(e),i=iy(t);return n===i}function wi(e,t){var n=ie(e);return!!pt(n.eventDefinitions||[],function(i){return E(i,t)})}function oy(e,t){var n=ie(e);return(n.eventDefinitions||[]).every(function(i){return E(i,t)})}function JP(e){return E(e,"bpmn:FlowNode")&&!E(e,"bpmn:EndEvent")&&!fn(e)&&!(E(e,"bpmn:IntermediateThrowEvent")&&wi(e,"bpmn:LinkEventDefinition"))&&!ny(e)&&!dc(e)}function eA(e){return E(e,"bpmn:FlowNode")&&!E(e,"bpmn:StartEvent")&&!E(e,"bpmn:BoundaryEvent")&&!fn(e)&&!(E(e,"bpmn:IntermediateCatchEvent")&&wi(e,"bpmn:LinkEventDefinition"))&&!dc(e)}function tA(e){return E(e,"bpmn:ReceiveTask")||E(e,"bpmn:IntermediateCatchEvent")&&(wi(e,"bpmn:MessageEventDefinition")||wi(e,"bpmn:TimerEventDefinition")||wi(e,"bpmn:ConditionalEventDefinition")||wi(e,"bpmn:SignalEventDefinition"))}function nA(e){for(var t=[];e;)e=e.parent,e&&t.push(e);return t}function ay(e,t){var n=nA(t);return n.indexOf(e)!==-1}function hc(e,t,n){if(Dp(e)||Dp(t))return null;if(!E(n,"bpmn:DataAssociation")){if(gy(e,t))return{type:"bpmn:MessageFlow"};if(yy(e,t))return{type:"bpmn:SequenceFlow"}}var i=Np(e,t);return i||(my(e,t)?{type:"bpmn:Association",associationDirection:"One"}:hy(e,t)?{type:"bpmn:Association",associationDirection:"None"}:!1)}function Co(e,t){return Ge(e)||Ip(e)?!0:E(t,"bpmn:Participant")&&!Ke(t)?!1:E(e,"bpmn:Participant")?E(t,"bpmn:Process")||E(t,"bpmn:Collaboration"):Ve(e,["bpmn:DataInput","bpmn:DataOutput"])&&e.parent?t===e.parent:E(e,"bpmn:Lane")?E(t,"bpmn:Participant")||E(t,"bpmn:Lane"):E(e,"bpmn:BoundaryEvent")&&!iA(e)?!1:E(e,"bpmn:FlowElement")&&!E(e,"bpmn:DataStoreReference")?E(t,"bpmn:FlowElementsContainer")?Ke(t):Ve(t,["bpmn:Participant","bpmn:Lane"]):E(e,"bpmn:DataStoreReference")&&E(t,"bpmn:Collaboration")?Yi(ie(t).get("participants"),function(n){return!!n.get("processRef")}):Ve(e,["bpmn:Artifact","bpmn:DataAssociation","bpmn:DataStoreReference"])?Ve(t,["bpmn:Collaboration","bpmn:Lane","bpmn:Participant","bpmn:Process","bpmn:SubProcess"]):E(e,"bpmn:MessageFlow")?E(t,"bpmn:Collaboration")||e.source.parent==t||e.target.parent==t:!1}function iA(e){return ie(e).cancelActivity&&(cy(e)||uy(e))}function sy(e){return!Ge(e)&&E(e,"bpmn:BoundaryEvent")}function rA(e){return E(e,"bpmn:Lane")}function oA(e){return sy(e)||E(e,"bpmn:IntermediateThrowEvent")&&cy(e)?!0:E(e,"bpmn:IntermediateCatchEvent")&&uy(e)}function cy(e){var t=ie(e);return t&&!(t.eventDefinitions&&t.eventDefinitions.length)}function uy(e){return ly(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])}function ly(e,t){return t.some(function(n){return wi(e,n)})}function aA(e){return E(e,"bpmn:ReceiveTask")&&pt(e.incoming,function(t){return E(t.source,"bpmn:EventBasedGateway")})}function _a(e,t,n,i){if(Array.isArray(e)||(e=[e]),e.length!==1)return!1;var r=e[0];return Ge(r)||!oA(r)||fn(t)||!E(t,"bpmn:Activity")||dc(t)||i&&!ey(i,t)||aA(t)?!1:"attach"}function py(e,t,n){if(!t)return!1;var i={replacements:[]};return N(e,function(r){fn(t)||E(r,"bpmn:StartEvent")&&r.type!=="label"&&Co(r,t)&&(mR(r)||i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"}),(gR(r)||yR(r)||vR(r))&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"}),ly(r,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])&&E(t,"bpmn:SubProcess")&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"})),E(t,"bpmn:Transaction")||wi(r,"bpmn:CancelEventDefinition")&&r.type!=="label"&&(E(r,"bpmn:EndEvent")&&Co(r,t)&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:EndEvent"}),E(r,"bpmn:BoundaryEvent")&&_a(r,t,null,n)&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:BoundaryEvent"}))}),i.replacements.length?i:!1}function fy(e,t){return Yi(e,rA)?!1:t===void 0?!0:t===null?!1:e.every(function(n){return Co(n,t)})}function Bp(e,t,n,i){return t?Ge(e)||Ip(e)?!0:Co(e,t)||mc(e,t):!1}function dy(e,t,n){return E(e,"bpmn:SubProcess")?Ke(e)&&(!t||t.width>=100&&t.height>=80):E(e,"bpmn:Lane")||E(e,"bpmn:Participant")?!0:Lp(e)?n?n==="e"||n==="w":!0:Ip(e)?!0:Ge(e)?n?n==="e"||n==="w":!0:!1}function sA(e,t){var n=Lp(e),i=Lp(t);return(n||i)&&n!==i}function hy(e,t){return ay(t,e)||ay(e,t)?!1:sA(e,t)?!0:!!Np(e,t)}function my(e,t){return ry(e,t)&&ny(e)&&E(t,"bpmn:Activity")&&!uA(t,e)&&!fn(t)}function gy(e,t){return _y(e)&&!_y(t)?!1:ZP(e)&&QP(t)&&!XP(e,t)}function yy(e,t){return JP(e)&&eA(t)&&ry(e,t)&&!(E(e,"bpmn:EventBasedGateway")&&!tA(t))}function Np(e,t){return Ve(e,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&Ve(t,["bpmn:Activity","bpmn:ThrowEvent"])?{type:"bpmn:DataInputAssociation"}:Ve(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&Ve(e,["bpmn:Activity","bpmn:CatchEvent"])?{type:"bpmn:DataOutputAssociation"}:!1}function mc(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:Ve(t,["bpmn:SequenceFlow","bpmn:MessageFlow"])&&!Ge(t)&&E(e,"bpmn:FlowNode")&&!E(e,"bpmn:BoundaryEvent")&&Co(e,t.parent)}function $p(e,t){return e&&t&&e.indexOf(t)!==-1}function vy(e,t){return Ge(t)?!0:!(E(t,"bpmn:Lane")&&!$p(e,t.parent)||E(t,"bpmn:MessageFlow")&&!cA(e,t))}function cA(e,t){var n=by(t.source),i=by(t.target);return $p(e,n)&&$p(e,i)}function by(e){for(;e;e=e.parent)if(E(e,"bpmn:Participant"))return e;return null}function _y(e){return bo(e,"bpmn:Process")||bo(e,"bpmn:Collaboration")}function uA(e,t){return e.attachers.includes(t)}const lA={__depends__:[xi],__init__:["bpmnRules"],bpmnRules:["type",nn]};var pA=2e3;function xy(e,t){e.on("saveXML.start",pA,n);function n(){var i=t.getRootElements();N(i,function(r){var o=Ze(r),a,s;a=ia([r]),a=We(a,function(c){return c!==r&&!c.labelTarget}),s=cn(a,Ze),o.set("planeElement",s)})}}xy.$inject=["eventBus","canvas"];const fA={__init__:["bpmnDiOrdering"],bpmnDiOrdering:["type",xy]};function gc(e){te.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)})}gc.prototype.getOrdering=function(e,t){return null},_e(gc,te);function Fp(e,t){gc.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=pt(n,function(c){return Ve(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&&!Ve(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||E(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=vd(s.children,function(f){return!a.labelTarget&&f.labelTarget?!1:c.level<r(f).level});return l!==-1&&u!==-1&&u<l&&(l-=1),{index:l,parent:s}}}Fp.$inject=["eventBus","canvas"],_e(Fp,gc);const dA={__init__:["bpmnOrderingProvider"],bpmnOrderingProvider:["type",Fp]};function xa(){}xa.prototype.get=function(){return this._data},xa.prototype.set=function(e){this._data=e},xa.prototype.clear=function(){var e=this._data;return delete this._data,e},xa.prototype.isEmpty=function(){return!this._data};const hA={clipboard:["type",xa]};var wy=1500;function Ey(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",wy,function(s){o(s)})}),(function(){var a,s;t.on("element.hover",function(c){a=c.gfx,s=c.element}),t.on("element.hover",wy,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=Nr(a),c=document.elementFromPoint(s.x,s.y),mA(c)}}Ey.$inject=["elementRegistry","eventBus","injector"];function mA(e){return kr(e,"svg, .djs-element",!0)}const gA={__init__:["hoverFix"],hoverFix:["type",Ey]};function yA(e){return!0}function yc(e){return cr(e)||wP(e)}var Sy=500;function Ry(e,t,n){var i=this;function r(T,I,k){if(!s(T,I)){var O,H,se;k?H=t.getGraphics(k):(O=I.delegateTarget||I.target,O&&(H=O,k=t.get(H))),!(!H||!k)&&(se=e.fire(T,{element:k,gfx:H,originalEvent:I}),se===!1&&(I.stopPropagation(),I.preventDefault()))}}var o={};function a(T){return o[T]}function s(T,I){var k=u[T]||cr;return!k(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":yA,"element.mousedown":yc,"element.mouseup":yc,"element.click":yc,"element.dblclick":yc};function l(T,I,k){var O=c[T];if(!O)throw new Error("unmapped DOM event name <"+T+">");return r(O,I,k)}var f="svg, .djs-element";function p(T,I,k,O){var H=o[k]=function(se){r(k,se)};O&&(u[k]=O),H.$delegate=Tn.bind(T,f,I,H)}function d(T,I,k){var O=a(k);O&&Tn.unbind(T,I,O.$delegate)}function h(T){N(c,function(I,k){p(T,k,I)})}function m(T){N(c,function(I,k){d(T,k,I)})}e.on("canvas.destroy",function(T){m(T.svg)}),e.on("canvas.init",function(T){h(T.svg)}),e.on(["shape.added","connection.added"],function(T){var I=T.element,k=T.gfx;e.fire("interactionEvents.createHit",{element:I,gfx:k})}),e.on(["shape.changed","connection.changed"],Sy,function(T){var I=T.element,k=T.gfx;e.fire("interactionEvents.updateHit",{element:I,gfx:k})}),e.on("interactionEvents.createHit",Sy,function(T){var I=T.element,k=T.gfx;i.createDefaultHit(I,k)}),e.on("interactionEvents.updateHit",function(T){var I=T.element,k=T.gfx;i.updateDefaultHit(I,k)});var g=C("djs-hit djs-hit-stroke"),y=C("djs-hit djs-hit-click-stroke"),v=C("djs-hit djs-hit-all"),b=C("djs-hit djs-hit-no-move"),_={all:v,"click-stroke":y,stroke:g,"no-move":b};function C(T,I){return I=V({stroke:"white",strokeWidth:15},I||{}),n.cls(T,["no-fill","no-border"],I)}function P(T,I){var k=_[I];if(!k)throw new Error("invalid hit type <"+I+">");return xe(T,k),T}function D(T,I){Fe(T,I)}this.removeHits=function(T){var I=As(".djs-hit",T);N(I,Ht)},this.createDefaultHit=function(T,I){var k=T.waypoints,O=T.isFrame,H;return k?this.createWaypointsHit(I,k):(H=O?"stroke":"all",this.createBoxHit(I,H,{width:T.width,height:T.height}))},this.createWaypointsHit=function(T,I){var k=na(I);return P(k,"stroke"),D(T,k),k},this.createBoxHit=function(T,I,k){k=V({x:0,y:0},k);var O=Pe("rect");return P(O,I),xe(O,k),D(T,O),O},this.updateDefaultHit=function(T,I){var k=rt(".djs-hit",I);if(k)return T.waypoints?Rl(k,T.waypoints):xe(k,{width:T.width,height:T.height}),k},this.fire=r,this.triggerMouseEvent=l,this.mouseHandler=a,this.registerEvent=p,this.unregisterEvent=d}Ry.$inject=["eventBus","elementRegistry","styles"];const vc={__init__:["interactionEvents"],interactionEvents:["type",Ry]};function Po(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)})}Po.$inject=["eventBus","canvas"],Po.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()})}},Po.prototype.get=function(){return Array.from(this._selectedElements)},Po.prototype.isSelected=function(e){return this._selectedElements.has(e)},Po.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?N(e,o=>{this._selectedElements.add(o)}):this._selectedElements=new Set(e),this._eventBus.fire("selection.changed",{oldSelection:n,newSelection:this.get()})};var Cy="hover",Py="selected";function Ay(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,Cy)}),t.on("element.out",function(r){i(r.element,Cy)}),t.on("selection.changed",function(r){function o(u){i(u,Py)}function a(u){n(u,Py)}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)})}Ay.$inject=["canvas","eventBus"];function Ty(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(vA))}}),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=pt(o,function(c){return a.id===c.id});s||t.select(a)}),e.on("element.click",function(r){if(cr(r)){var o=r.element;o===n.getRootElement()&&(o=null);var a=t.isSelected(o),s=t.get().length>1,c=pc(r);if(a&&s)return c?t.deselect(o):t.select(o);a?t.deselect(o):t.select(o,c)}})}Ty.$inject=["eventBus","selection","canvas","elementRegistry"];function vA(e){return!e.hidden}const Qn={__init__:["selectionVisuals","selectionBehavior"],__depends__:[vc],selection:["type",Po],selectionVisuals:["type",Ay],selectionBehavior:["type",Ty]};var bA=/^djs-cursor-.*$/;function bc(e){var t=bt(document.body);t.removeMatching(bA),e&&t.add("djs-cursor-"+e)}function My(){bc(null)}var _A=5e3;function ky(e,t){t=t||"element.click";function n(){return!1}return e.once(t,_A,n),function(){e.off(t,n)}}var xA=["c","C"],wA=["v","V"],EA=["d","D"],SA=["x","X"],RA=["y","Y"],Oy=["z","Z"];function CA(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function On(e){return e.altKey?!1:e.ctrlKey||e.metaKey}function zt(e,t){return e=De(e)?e:[e],e.indexOf(t.key)!==-1||e.indexOf(t.code)!==-1}function jp(e){return e.shiftKey}function PA(e){return On(e)&&zt(xA,e)}function AA(e){return On(e)&&zt(wA,e)}function TA(e){return On(e)&&zt(EA,e)}function MA(e){return On(e)&&zt(SA,e)}function kA(e){return On(e)&&!jp(e)&&zt(Oy,e)}function OA(e){return On(e)&&(zt(RA,e)||zt(Oy,e)&&jp(e))}var Ao=Math.round,Dy="djs-drag-active";function Fr(e){e.preventDefault()}function DA(e){return typeof TouchEvent<"u"&&e instanceof TouchEvent}function LA(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function Ly(e,t,n,i){var r={threshold:5,trapClick:!0},o;function a(b){var _=t.viewbox(),C=t._container.getBoundingClientRect();return{x:_.x+(b.x-C.left)/_.scale,y:_.y+(b.y-C.top)/_.scale}}function s(b,_){_=_||o;var C=e.createEvent(V({},_.payload,_.data,{isTouch:_.isTouch}));return e.fire("drag."+b,C)===!1?!1:e.fire(_.prefix+"."+b,C)}function c(b){var _=b.filter(function(C){return i.get(C.id)});_.length&&n.select(_)}function u(b,_){var C=o.payload,P=o.displacement,D=o.globalStart,T=Nr(b),I=ci(T,D),k=o.localStart,O=a(T),H=ci(O,k);if(!o.active&&(_||LA(I)>o.threshold)){if(V(C,{x:Ao(k.x+P.x),y:Ao(k.y+P.y),dx:0,dy:0},{originalEvent:b}),s("start")===!1)return g();o.active=!0,o.keepSelection||(C.previousSelection=n.get(),n.select(null)),o.cursor&&bc(o.cursor),t.addMarker(t.getRootElement(),Dy)}bp(b),o.active&&(V(C,{x:Ao(O.x+P.x),y:Ao(O.y+P.y),dx:Ao(H.x),dy:Ao(H.y)},{originalEvent:b}),s("move"))}function l(b){var _,C=!0;o.active&&(b&&(o.payload.originalEvent=b,bp(b)),C=s("end")),C===!1&&s("rejected"),_=y(C!==!0),s("ended",_)}function f(b){zt("Escape",b)&&(Fr(b),g())}function p(b){var _;o.active&&(_=ky(e),setTimeout(_,400),Fr(b)),l(b)}function d(b){u(b)}function h(b){var _=o.payload;_.hoverGfx=b.gfx,_.hover=b.element,s("hover")}function m(b){s("out");var _=o.payload;_.hoverGfx=null,_.hover=null}function g(b){var _;if(o){var C=o.active;C&&s("cancel"),_=y(b),C&&s("canceled",_)}}function y(b){var _,C;s("cleanup"),My(),o.trapClick?C=p:C=l,$e.unbind(document,"mousemove",u),$e.unbind(document,"dragstart",Fr),$e.unbind(document,"selectstart",Fr),$e.unbind(document,"mousedown",C,!0),$e.unbind(document,"mouseup",C,!0),$e.unbind(document,"keyup",f),$e.unbind(document,"touchstart",d,!0),$e.unbind(document,"touchcancel",g,!0),$e.unbind(document,"touchmove",u,!0),$e.unbind(document,"touchend",l,!0),e.off("element.hover",h),e.off("element.out",m),t.removeMarker(t.getRootElement(),Dy);var P=o.payload.previousSelection;return b!==!1&&P&&!n.get().length&&c(P),_=o,o=null,_}function v(b,_,C,P){o&&g(!1),typeof _=="string"&&(P=C,C=_,_=null),P=V({},r,P||{});var D=P.data||{},T,I,k,O,H;if(P.trapClick?O=p:O=l,b?(T=Ro(b)||b,I=Nr(b),bp(b),T.type==="dragstart"&&Fr(T)):(T=null,I={x:0,y:0}),k=a(I),_||(_=k),H=DA(T),o=V({prefix:C,data:D,payload:{},globalStart:I,displacement:ci(_,k),localStart:k,isTouch:H},P),P.manual||(H?($e.bind(document,"touchstart",d,!0),$e.bind(document,"touchcancel",g,!0),$e.bind(document,"touchmove",u,!0),$e.bind(document,"touchend",l,!0)):($e.bind(document,"mousemove",u),$e.bind(document,"dragstart",Fr),$e.bind(document,"selectstart",Fr),$e.bind(document,"mousedown",O,!0),$e.bind(document,"mouseup",O,!0)),$e.bind(document,"keyup",f),e.on("element.hover",h),e.on("element.out",m)),s("init")===!1)return g(),!1;P.autoActivate&&u(b,!0)}e.on("diagram.destroy",g),this.init=v,this.move=u,this.hover=h,this.out=m,this.end=l,this.cancel=g,this.context=function(){return o},this.setOptions=function(b){V(r,b)}}Ly.$inject=["eventBus","canvas","selection","elementRegistry"];const $i={__depends__:[gA,Qn],dragging:["type",Ly]};function To(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(Math.random()*1e9)+"-"}To.prototype.next=function(){return this._prefix+ ++this._counter};const IA=new To("ps");var BA=["marker-start","marker-mid","marker-end"],NA=["circle","ellipse","line","path","polygon","polyline","path","rect"];function ur(e,t,n,i){this._elementRegistry=e,this._canvas=n,this._styles=i}ur.$inject=["elementRegistry","eventBus","canvas","styles"],ur.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")},ur.prototype.getGfx=function(e){return this._elementRegistry.getGraphics(e)},ur.prototype.addDragger=function(e,t,n,i="djs-dragger"){n=n||this.getGfx(e);var r=Yh(n);return this._cloneMarkers(Lr(r),i),xe(r,this._styles.cls(i,[])),Fe(t,r),xe(r,"data-preview-support-element-id",e.id),r},ur.prototype.addFrame=function(e,t){var n=Pe("rect",{class:"djs-resize-overlay",width:e.width,height:e.height,x:e.x,y:e.y});return Fe(t,n),xe(n,"data-preview-support-element-id",e.id),n},ur.prototype._cloneMarkers=function(e,t="djs-dragger",n=e){var i=this;e.childNodes&&e.childNodes.forEach(r=>{i._cloneMarkers(r,t,n)}),HA(e)&&BA.forEach(function(r){if(xe(e,r)){var o=$A(e,r,i._canvas.getContainer());o&&i._cloneMarker(n,e,o,r,t)}})},ur.prototype._cloneMarker=function(e,t,n,i,r="djs-dragger"){var o=[n.id,r,IA.next()].join("-"),a=rt("marker#"+n.id,e);e=e||this._canvas._svg;var s=a||Yh(n);s.id=o,Xe(s).add(r);var c=rt(":scope > defs",e);c||(c=Pe("defs"),Fe(e,c)),Fe(c,s);var u=jA(s.id);xe(t,i,u)};function $A(e,t,n){var i=FA(xe(e,t));return rt("marker#"+i,n||document)}function FA(e){return e.match(/url\(['"]?#([^'"]*)['"]?\)/)[1]}function jA(e){return"url(#"+e+")"}function HA(e){return NA.indexOf(e.nodeName)!==-1}const Mo={__init__:["previewSupport"],previewSupport:["type",ur]};var zA="drop-ok",Iy="drop-not-ok",By="attach-ok",Ny="new-parent",$y="create",GA=2e3;function Fy(e,t,n,i,r){function o(c,u,l,f,p){if(!u)return!1;c=We(c,function(v){var b=v.labelTarget;return!v.parent&&!(Ge(v)&&c.indexOf(b)!==-1)});var d=pt(c,function(v){return!at(v)}),h=!1,m=!1,g=!1;Hy(c)&&(h=r.allowed("shape.attach",{position:l,shape:d,target:u})),h||(Hy(c)?g=r.allowed("shape.create",{position:l,shape:d,source:f,target:u}):g=r.allowed("elements.create",{elements:c,position:l,target:u}));var y=p.connectionTarget;return g||h?(d&&f&&(m=r.allowed("connection.create",{source:y===f?d:f,target:y===f?f:d,hints:{targetParent:u,targetAttach:h}})),{attach:h,connect:m}):g===null||h===null?null:!1}function a(c,u){[By,zA,Iy,Ny].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,f=c.hover,p=u.source,d=u.hints||{};if(!f){u.canExecute=!1,u.target=null;return}jy(c);var h={x:c.x,y:c.y},m=u.canExecute=f&&o(l,f,h,p,d);f&&m!==null&&(u.target=f,m&&m.attach?a(f,By):a(f,m?Ny:Iy))}),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,f=u.shape,p=u.elements,d=u.target,h=u.canExecute,m=h&&h.attach,g=h&&h.connect,y=u.hints||{};if(h===!1||!d)return!1;jy(c);var v={x:c.x,y:c.y};g?f=i.appendShape(l,f,v,d,{attach:m,connection:g===!0?{}:g,connectionTarget:y.connectionTarget}):(p=i.createElements(p,v,d,V({},y,{attach:m})),f=pt(p,function(b){return!at(b)})),V(u,{elements:p,shape:f}),V(c,{elements:p,shape:f})});function s(){var c=t.context();c&&c.prefix===$y&&t.cancel()}n.on("create.init",function(){n.on("elements.changed",s),n.once(["create.cancel","create.end"],GA,function(){n.off("elements.changed",s)})}),this.start=function(c,u,l){De(u)||(u=[u]);var f=pt(u,function(h){return!at(h)});if(f){l=V({elements:u,hints:{},shape:f},l||{}),N(u,function(h){Be(h.x)||(h.x=0),Be(h.y)||(h.y=0)});var p=We(u,function(h){return!h.hidden}),d=Dt(p);N(u,function(h){at(h)&&(h.waypoints=cn(h.waypoints,function(m){return{x:m.x-d.x-d.width/2,y:m.y-d.y-d.height/2}})),V(h,{x:h.x-d.x-d.width/2,y:h.y-d.y-d.height/2})}),t.init(c,$y,{cursor:"grabbing",autoActivate:!0,data:{shape:f,elements:u,context:l}})}}}Fy.$inject=["canvas","dragging","eventBus","modeling","rules"];function jy(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 Hy(e){return e&&e.length===1&&!at(e[0])}var VA=750;function zy(e,t,n,i,r){function o(a){var s=Pe("g");xe(s,r.cls("djs-drag-group",["no-events"]));var c=Pe("g");return a.forEach(function(u){var l;u.hidden||(u.waypoints?(l=n._createContainer("connection",c),n.drawConnection(Lr(l),u)):(l=n._createContainer("shape",c),n.drawShape(Lr(l),u),tn(l,u.x,u.y)),i.addDragger(u,s,l))}),s}t.on("create.move",VA,function(a){var s=a.hover,c=a.context,u=c.elements,l=c.dragGroup;l||(l=c.dragGroup=o(u));var f;s?(l.parentNode||(f=e.getActiveLayer(),Fe(f,l)),tn(l,a.x,a.y)):Ht(l)}),t.on("create.cleanup",function(a){var s=a.context,c=s.dragGroup;c&&Ht(c)})}zy.$inject=["canvas","eventBus","graphicsFactory","previewSupport","styles"];const _c={__depends__:[$i,Mo,xi,Qn],__init__:["create","createPreview"],create:["type",Fy],createPreview:["type",zy]};function Hp(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)})}Hp.$inject=["eventBus"],Hp.prototype.getLastMoveEvent=function(){return this._lastMoveEvent||WA(0,0)};function WA(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 wa={__init__:["mouse"],mouse:["type",Hp]};var Gy=2e3;function Dn(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,f=c.elementsSet;u.priority=1,u.id=l.id,f.has(l.parent)&&(u.parent=l.parent.id),UA(l)&&(u.priority=2,u.host=l.host.id),at(l)&&(u.priority=3,u.source=l.source.id,u.target=l.target.id,u.waypoints=YA(l)),Ge(l)&&(u.priority=4,u.labelTarget=l.labelTarget.id),N(["x","y","width","height"],function(p){Be(l[p])&&(u[p]=l[p])}),u.hidden=l.hidden,u.collapsed=l.collapsed}),r.on("copyPaste.elementsCopied",Gy,function(c){var u;((u=c.hints)==null?void 0:u.clip)!==!1&&n.set(c.tree)}),r.on("copyPaste.pasteElements",Gy,function(c){c.tree||(c.tree=n.get())}),r.on("copyPaste.pasteElements",function(c){var u=c.hints;V(u,{createElementsBehavior:!1})})}Dn.$inject=["canvas","create","clipboard","elementFactory","eventBus","modeling","mouse","rules"],Dn.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},Dn.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})}}},Dn.prototype.duplicate=function(e,t={}){var n=this.copy(e,{clip:!1});return this.paste({...t,tree:n})},Dn.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},Dn.prototype._getElementIdsFromTree=function(e){var t={};return N(e,function(n){N(n,function(i){i.id&&(t[i.id]=!0)})}),t},Dn.prototype._paste=function(e,t,n,i){N(e,function(o){Be(o.x)||(o.x=0),Be(o.y)||(o.y=0)});var r=Dt(e);return N(e,function(o){at(o)&&(o.waypoints=cn(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))},Dn.prototype._createElements=function(e){var t=this,n=this._eventBus,i={},r=[];return N(e,function(o,a){o=li(o,"priority"),N(o,function(s){var c=V({},pi(s,["priority"]));i[s.parent]?c.parent=i[s.parent]:delete c.parent,n.fire("copyPaste.pasteElement",{cache:i,descriptor:c});var u;if(at(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},Dn.prototype.createConnection=function(e){var t=this._elementFactory.createConnection(pi(e,["id"]));return t},Dn.prototype.createLabel=function(e){var t=this._elementFactory.createLabel(pi(e,["id"]));return t},Dn.prototype.createShape=function(e){var t=this._elementFactory.createShape(pi(e,["id"]));return t},Dn.prototype.hasRelations=function(e,t,n){return n||(n=new Set(t)),!(at(e)&&(!n.has(e.source)||!n.has(e.target))||Ge(e)&&!n.has(e.labelTarget))},Dn.prototype.createTree=function(e){var t=this._rules,n=this,i={},r=[],o=new Map,a=Os(e);function s(f,p){return t.allowed("element.copy",{element:f,elements:p})}function c(f,p){var d=o.get(f);if(!d){var h={element:f,depth:p};r.push(h),o.set(f,h);return}if(d.depth<p){r=u(d,r);var m={element:d.element,depth:p};r.push(m),o.set(f,m)}}function u(f,p){var d=p.indexOf(f);return d!==-1&&p.splice(d,1),p}Dr(a,function(f,p,d){if(Ge(f))return;N(f.labels,function(g){c(g,d)});function h(g){g&&g.length&&N(g,function(y){N(y.labels,function(v){c(v,d)}),c(y,d)})}N([f.attachers,f.incoming,f.outgoing],h),c(f,d);var m=[];return f.children&&(m=f.children.slice()),n._eventBus.fire("copyPaste.createTree",{element:f,children:m}),m}),e=cn(r,function(f){return f.element});var l=new Set(e);return r=cn(r,function(f){return f.descriptor={},n._eventBus.fire("copyPaste.copyElement",{descriptor:f.descriptor,element:f.element,elements:e,elementsSet:l}),f}),r=li(r,function(f){return f.descriptor.priority}),e=cn(r,function(f){return f.element}),N(r,function(f){var p=f.depth;if(!n.hasRelations(f.element,e,l)){Wy(f.element,e),l.delete(f.element);return}if(!s(f.element,e)){Wy(f.element,e),l.delete(f.element);return}i[p]||(i[p]=[]),i[p].push(f.descriptor)}),i};function UA(e){return!!e.host}function YA(e){return cn(e.waypoints,function(t){return t=Vy(t),t.original&&(t.original=Vy(t.original)),t})}function Vy(e){return V({},e)}function Wy(e,t){var n=t.indexOf(e);return n===-1?t:t.splice(n,1)}const qA={__depends__:[hA,_c,wa,xi],__init__:["copyPaste"],copyPaste:["type",Dn]};function zp(e,t,n){De(n)||(n=[n]),N(n,function(i){Cr(e[i])||(t[i]=e[i])})}var Gp=750;function Uy(e,t,n){function i(c,u){var l=e.create(c.$type);return n.copyElement(c,l,null,u)}t.on("copyPaste.copyElement",Gp,function(c){var u=c.descriptor,l=c.element,f=ie(l);if(Ge(l))return u;var p=u.businessObject=i(f,!0),d=u.di=i(Ze(l),!0);d.bpmnElement=p,zp(p,u,"name"),zp(d,u,"isExpanded"),f.default&&(u.default=f.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 f=ie(c);return c.default&&(l[c.default]={element:f,property:"default"}),c.host&&(ie(c).attachedToRef=ie(u[c.host])),pi(l,Cn(l,function(p,d,h){var m=d.element,g=d.property;return h===c.id&&(m.set(g,f),p.push(c.id)),p},[]))}t.on("copyPaste.pasteElement",function(c){var u=c.cache,l=c.descriptor,f=l.businessObject,p=l.di;if(Ge(l)){l.businessObject=ie(u[l.labelTarget]),l.di=Ze(u[l.labelTarget]);return}f=l.businessObject=i(f),p=l.di=i(p),p.bpmnElement=f,zp(l,f,["isExpanded","name"]),l.type=f.$type}),t.on("copyPaste.copyElement",Gp,function(c){var u=c.descriptor,l=c.element;if(E(l,"bpmn:Participant")){var f=ie(l);f.processRef&&(u.processRef=i(f.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;E(u,"bpmn:SubProcess")&&N(ua(l),f=>{l.push(f.annotation)})}),t.on("copyPaste.pasteElement",Gp,function(c){var u=c.cache,l=c.descriptor;a(u,s(l,u,o(u)))})}Uy.$inject=["bpmnFactory","eventBus","moddleCopy"];const KA=["artifacts","dataInputAssociations","dataOutputAssociations","default","flowElements","lanes","incoming","outgoing","categoryValue"],XA=["errorRef","escalationRef","messageRef","signalRef","dataObjectRef"];function Ea(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 li(r,o=>o==="extensionElements")}),e.on("moddleCopy.canCopyProperty",i=>{const{parent:r,property:o,propertyName:a}=i,s=Wt(r)&&r.$descriptor;if(a&&XA.includes(a))return o;if(a&&KA.includes(a)||a&&s&&!pt(s.properties,to({name:a})))return!1}),e.on("moddleCopy.canSetCopiedProperty",i=>{const{property:r}=i;if(E(r,"bpmn:ExtensionElements")&&(!r.values||!r.values.length))return!1})}Ea.$inject=["eventBus","bpmnFactory","moddle"],Ea.prototype.copyElement=function(e,t,n,i=!1){n&&!De(n)&&(n=[n]),n=n||Vp(e.$descriptor);const r=this._eventBus.fire("moddleCopy.canCopyProperties",{propertyNames:n,sourceElement:e,targetElement:t,clone:i});return r===!1||(De(r)&&(n=r),N(n,o=>{let a;Rn(e,o)&&(a=e.get(o));const s=this.copyProperty(a,t,o,i);!Ft(s)||this._eventBus.fire("moddleCopy.canSetCopiedProperty",{parent:t,property:s,propertyName:o})===!1||t.set(o,s)})),t},Ea.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 Wt(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)?Cn(e,(a,s)=>{const c=this.copyProperty(s,t,n,i);return c?a.concat(c):a},[]):Wt(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},Ea.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 Vp(e,t){return Cn(e.properties,(n,i)=>t&&i.default?n:n.concat(i.name),[])}const Yy={__depends__:[qA],__init__:["bpmnCopyPaste","moddleCopy"],bpmnCopyPaste:["type",Uy],moddleCopy:["type",Ea]};var qy=Math.round;function Wp(e,t){this._modeling=e,this._eventBus=t}Wp.$inject=["modeling","eventBus"],Wp.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=qy(s+o/2),l=qy(c+a/2),f=i.replaceShape(e,V({},t,{x:u,y:l,width:o,height:a}),n);return r.fire("replace.end",{element:e,newElement:f,hints:n}),f};function Ky(e,t){t.on("replace.end",500,function(n){const{newElement:i,hints:r={}}=n;r.select!==!1&&e.select(i)})}Ky.$inject=["selection","eventBus"];const ZA={__init__:["replace","replaceSelectionBehavior"],replaceSelectionBehavior:["type",Ky],replace:["type",Wp]};function QA(e,t,n){De(n)||(n=[n]),N(n,function(i){Cr(e[i])||(t[i]=e[i])})}var JA=["cancelActivity","instantiate","eventGatewayType","triggeredByEvent","isInterrupting"];function eT(e,t){var n=e&&Rn(e,"collapsed")?e.collapsed:!Ke(e),i;return t&&(Rn(t,"collapsed")||Rn(t,"isExpanded"))?i=Rn(t,"collapsed")?t.collapsed:!t.isExpanded:i=n,n!==i}function Xy(e,t,n,i,r,o){function a(s,c,u){u=u||{};var l=c.type,f=s.businessObject;if(xc(f)&&(l==="bpmn:SubProcess"||l==="bpmn:AdHocSubProcess")&&eT(s,c))return i.toggleCollapse(s),s;var p=e.create(l),d={type:l,businessObject:p};d.di={},l==="bpmn:ExclusiveGateway"&&(d.di.isMarkerVisible=!0),QA(s.di,d.di,["fill","stroke","background-color","border-color","color"]);var h=Vp(f.$descriptor),m=Vp(p.$descriptor,!0),g=tT(h,m);V(p,ai(c,JA));var y=We(g,function(_){return _==="eventDefinitions"?Zy(s,c.eventDefinitionType):_==="loopCharacteristics"?!fn(p):Rn(p,_)||_==="processRef"&&c.isExpanded===!1||_==="triggeredByEvent"?!1:_==="isForCompensation"?!fn(p):!0});if(p=n.copyElement(f,p,y),c.eventDefinitionType&&(Zy(p,c.eventDefinitionType)||(d.eventDefinitionType=c.eventDefinitionType,d.eventDefinitionAttrs=c.eventDefinitionAttrs)),E(f,"bpmn:Activity")){if(xc(f))d.isExpanded=Ke(s);else if(c&&Rn(c,"isExpanded")){d.isExpanded=c.isExpanded;var v=t.getDefaultSize(p,{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}Ke(s)&&!E(f,"bpmn:Task")&&d.isExpanded&&(d.width=s.width,d.height=s.height)}if(xc(f)&&!xc(p)&&(u.moveChildren=!1),E(f,"bpmn:Participant")){c.isExpanded===!0?p.processRef=e.create("bpmn:Process"):u.moveChildren=!1;var b=qt(s);Ze(s).isHorizontal||(Ze(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:p})||(d.height=t.getDefaultSize(d).height,d.width=t.getDefaultSize(d).width),p.name=f.name,Ve(f,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&Ve(p,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&(p.default=f.default),c.host&&!E(f,"bpmn:BoundaryEvent")&&E(p,"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}Xy.$inject=["bpmnFactory","elementFactory","moddleCopy","modeling","replace","rules"];function xc(e){return E(e,"bpmn:SubProcess")}function Zy(e,t){var n=ie(e);return t&&n.get("eventDefinitions").some(function(i){return E(i,t)})}function tT(e,t){return e.filter(function(n){return t.includes(n)})}const Qy={__depends__:[Yy,ZA,Qn],bpmnReplace:["type",Xy]};var nT=250;function jr(e){this._eventBus=e,this._tools=[],this._active=null}jr.$inject=["eventBus"],jr.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)},jr.prototype.isActive=function(e){return e&&this._active===e},jr.prototype.length=function(e){return this._tools.length},jr.prototype.setActive=function(e){var t=this._eventBus;this._active!==e&&(this._active=e,t.fire("tool-manager.update",{tool:e}))},jr.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),N(t,function(r){i.push(r+".ended"),i.push(r+".canceled")}),n.on(i,nT,function(r){this._active&&(iT(r)||this.setActive(null))},this)};function iT(e){var t=e.originalEvent&&e.originalEvent.target;return t&&kr(t,'.group[data-group="tools"]')}const wc={__depends__:[$i],__init__:["toolManager"],toolManager:["type",jr]};function rT(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 oT(e,t){var n=[],i=new Set(e);N(t,function(o){i.add(o)});var r=new Set;return i.forEach(function(o){var a=o.incoming,s=o.outgoing;N(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 aT(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 Up=Math.abs,sT=Math.round,Fi={x:"width",y:"height"},Jy="crosshair",lr={n:"top",w:"left",s:"bottom",e:"right"},cT=1500,Ec={n:"s",w:"e",s:"n",e:"w"},Sc=20;function Jn(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",cT,function(c){var u=c.context,l=u.initialized;l||(l=u.initialized=s.init(c,u)),l&&tv(c)}),n.on("spaceTool.end",function(c){var u=c.context,l=u.axis,f=u.direction,p=u.movingShapes,d=u.resizingShapes,h=u.start;if(u.initialized){tv(c);var m={x:0,y:0};m[l]=sT(c["d"+l]),s.makeSpace(p,d,m,f,h),n.once("spaceTool.ended",function(g){s.activateSelection(g.originalEvent,!0,!0)})}})}Jn.$inject=["canvas","dragging","eventBus","modeling","rules","toolManager","mouse"],Jn.prototype.activateSelection=function(e,t,n){this._dragging.init(e,"spaceTool.selection",{autoActivate:t,cursor:Jy,data:{context:{reactivate:n}},trapClick:!1})},Jn.prototype.activateMakeSpace=function(e){this._dragging.init(e,"spaceTool",{autoActivate:!0,cursor:Jy,data:{context:{}}})},Jn.prototype.makeSpace=function(e,t,n,i,r){return this._modeling.createSpace(e,t,n,i,r)},Jn.prototype.init=function(e,t){var n=Up(e.dx)>Up(e.dy)?"x":"y",i=e["d"+n],r=e[n]-i;if(Up(i)<5)return!1;i<0&&(i*=-1),ba(e)&&(i*=-1);var o=rT(n,i),a=this._canvas.getRootElement();!pc(e)&&e.hover&&(a=e.hover);var s=[...ia(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=uT(c,n,o,r,u);return V(t,c,{axis:n,direction:o,spaceToolConstraints:l,start:r}),bc("resize-"+(n==="x"?"ew":"ns")),!0},Jn.prototype.calculateAdjustments=function(e,t,n,i){var r=this._rules,o=[],a=[],s=new Set,c=new Set,u=[],l=[];function f(d){s.has(d)||(s.add(d),o.push(d));var h=d.label;h&&!s.has(h)&&(s.add(h),o.push(h))}function p(d){c.has(d)||(c.add(d),a.push(d))}return N(e,function(d){if(!(!d.parent||Ge(d))){if(at(d)){l.push(d);return}var h=d[t],m=h+d[Fi[t]];if(lT(d)&&(n>0&&Le(d)[t]>i||n<0&&Le(d)[t]<i)){u.push(d);return}if(n>0&&h>i||n<0&&m<i){f(d);return}if(h<i&&m>i&&r.allowed("shape.resize",{shape:d})){p(d);return}}}),N(o,function(d){var h=d.attachers;h&&N(h,function(m){f(m)})}),N(u,function(d){var h=d.host;(s.has(h)||c.has(h))&&f(d)}),N(l,function(d){var h=d.source,m=d.target,g=d.label;(s.has(h)||c.has(h))&&(s.has(m)||c.has(m))&&g&&f(g)}),{movingShapes:o,resizingShapes:a}},Jn.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},Jn.prototype.isActive=function(){var e=this._dragging.context();return e?/^spaceTool/.test(e.prefix):!1};function ev(e){return{top:e.top-Sc,right:e.right+Sc,bottom:e.bottom+Sc,left:e.left-Sc}}function tv(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 uT(e,t,n,i,r){var o=e.movingShapes,a=e.resizingShapes;if(a.length){var s={},c,u,l=new Set(o),f=new Set(a);return N(a,function(p){var d=p.attachers,h=p.children,m=Ae(p),g=We(h,function(H){return!at(H)&&!Ge(H)&&!l.has(H)&&!f.has(H)}),y=We(h,function(H){return!at(H)&&!Ge(H)&&l.has(H)}),v,b,_,C=[],P=[],D,T,I,k;g.length&&(b=ev(Ae(Dt(g))),v=i-m[lr[n]]+b[lr[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)),y.length&&(_=ev(Ae(Dt(y))),v=i-_[lr[Ec[n]]]+m[lr[Ec[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(H){l.has(H)?C.push(H):P.push(H)}),C.length&&(D=Ae(Dt(C.map(Le))),T=m[lr[Ec[n]]]-(D[lr[Ec[n]]]-i)),P.length&&(I=Ae(Dt(P.map(Le))),k=I[lr[n]]-(m[lr[n]]-i)),n==="n"?(v=Math.min(T||1/0,k||1/0),s.bottom=u=Be(u)?Math.min(u,v):v):n==="w"?(v=Math.min(T||1/0,k||1/0),s.right=u=Be(u)?Math.min(u,v):v):n==="s"?(v=Math.max(T||-1/0,k||-1/0),s.top=c=Be(c)?Math.max(c,v):v):n==="e"&&(v=Math.max(T||-1/0,k||-1/0),s.left=c=Be(c)?Math.max(c,v):v));var O=r&&r[p.id];O&&(n==="n"?(v=i+p[Fi[t]]-O[Fi[t]],s.bottom=u=Be(u)?Math.min(u,v):v):n==="w"?(v=i+p[Fi[t]]-O[Fi[t]],s.right=u=Be(u)?Math.min(u,v):v):n==="s"?(v=i-p[Fi[t]]+O[Fi[t]],s.top=c=Be(c)?Math.max(c,v):v):n==="e"&&(v=i-p[Fi[t]]+O[Fi[t]],s.left=c=Be(c)?Math.max(c,v):v))}),s}}function lT(e){return!!e.host}var Yp="djs-dragging",nv="djs-resizing",pT=250,Rc=Math.max;function iv(e,t,n,i,r){function o(a,s){N(a,function(c){r.addDragger(c,s),n.addMarker(c,Yp)})}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=Pe("g");xe(l,i.cls("djs-crosshair-group",["no-events"])),Fe(s,l);var f=Pe("path");xe(f,"d",u.x),Xe(f).add("djs-crosshair"),Fe(l,f);var p=Pe("path");xe(p,"d",u.y),Xe(p).add("djs-crosshair"),Fe(l,p),c.crosshairGroup=l}),e.on("spaceTool.selection.move",function(a){var s=a.context.crosshairGroup;tn(s,a.x,a.y)}),e.on("spaceTool.selection.cleanup",function(a){var s=a.context,c=s.crosshairGroup;c&&Ht(c)}),e.on("spaceTool.move",pT,function(a){var s=a.context,c=s.line,u=s.axis,l=s.movingShapes,f=s.resizingShapes;if(s.initialized){if(!s.dragGroup){var p=n.getLayer("space");c=Pe("path"),xe(c,"d","M0,0 L0,0"),Xe(c).add("djs-crosshair"),Fe(p,c),s.line=c;var d=Pe("g");xe(d,i.cls("djs-drag-group",["no-events"])),Fe(n.getActiveLayer(),d),o(l,d);var h=new Set(l);N(f,function(P){h.add(P)});var m=new Set,g=s.movingConnections=[];h.forEach(function(P){N(P.outgoing,function(D){m.has(D)||!at(D)||!h.has(D.target)||(m.add(D),g.push(D))})}),o(g,d),s.dragGroup=d}if(!s.frameGroup){var y=Pe("g");xe(y,i.cls("djs-frame-group",["no-events"])),Fe(n.getActiveLayer(),y);var v=[];N(f,function(P){var D=r.addFrame(P,y),T=D.getBBox();v.push({element:D,initialBounds:T}),n.addMarker(P,nv)}),s.frameGroup=y,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:"y",y:"x"},C={x:a.dx,y:a.dy};C[_[s.axis]]=0,tn(s.dragGroup,C.x,C.y),N(s.frames,function(P){var D=P.element,T=P.initialBounds,I,k;s.direction==="e"?xe(D,{width:Rc(T.width+C.x,5)}):(I=Rc(T.width-C.x,5),xe(D,{width:I,x:T.x+T.width-I})),s.direction==="s"?xe(D,{height:Rc(T.height+C.y,5)}):(k=Rc(T.height-C.y,5),xe(D,{height:k,y:T.y+T.height-k}))})}}),e.on("spaceTool.cleanup",function(a){var s=a.context,c=s.movingShapes,u=s.movingConnections,l=s.resizingShapes,f=s.line,p=s.dragGroup,d=s.frameGroup;N(c,function(h){n.removeMarker(h,Yp)}),N(u,function(h){n.removeMarker(h,Yp)}),p&&(Ht(f),Ht(p)),N(l,function(h){n.removeMarker(h,nv)}),d&&Ht(d)})}iv.$inject=["eventBus","elementRegistry","canvas","styles","previewSupport"];const fT={__init__:["spaceToolPreview"],__depends__:[$i,xi,wc,Mo,wa],spaceTool:["type",Jn],spaceToolPreview:["type",iv]};function Cc(e,t){e.invoke(Jn,this),this._canvas=t}Cc.$inject=["injector","canvas"],_e(Cc,Jn),Cc.prototype.calculateAdjustments=function(e,t,n,i){var r=this._canvas.getRootElement(),o=e[0]===r?null:e[0],a=[];o&&(a=Jr(po(r.children.filter(u=>E(u,"bpmn:Artifact")),Dt(o))));const s=[...e,...a];var c=Jn.prototype.calculateAdjustments.call(this,s,t,n,i);return c.resizingShapes=c.resizingShapes.filter(function(u){return!(E(u,"bpmn:TextAnnotation")||dT(u)&&(t==="y"&&qt(u)||t==="x"&&!qt(u)))}),c};function dT(e){return E(e,"bpmn:Participant")&&!ie(e).processRef}const rv={__depends__:[fT],spaceTool:["type",Cc]};function xt(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)}xt.$inject=["eventBus","injector"],xt.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()},xt.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},xt.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,e!==!1&&this._fire("changed",{trigger:"clear"})},xt.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()}},xt.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()}},xt.prototype.register=function(e,t){this._setHandler(e,t)},xt.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)},xt.prototype.canUndo=function(){return!!this._getUndoAction()},xt.prototype.canRedo=function(){return!!this._getRedoAction()},xt.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},xt.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},xt.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)})},xt.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},xt.prototype._createId=function(){return this._uid++},xt.prototype._atomicDo=function(e){const t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},xt.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()},xt.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)},xt.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:bd("id",i.reverse())}),i.length=0,this._fire("changed",{trigger:t}),e.trigger=null)},xt.prototype._markDirty=function(e){const t=this._currentExecution;e&&(e=De(e)?e:[e],t.dirty=t.dirty.concat(e))},xt.prototype._executedAction=function(e,t){const n=++this._stackIdx;t||this._stack.splice(n,this._stack.length,e)},xt.prototype._revertedAction=function(e){this._stackIdx--},xt.prototype._getHandler=function(e){return this._handlerMap[e]},xt.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 hT={commandStack:["type",xt]};function pr(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 mT=250,ov=1400;function qp(e,t,n){te.call(this,t);var i=e.get("movePreview",!1);t.on("shape.move.start",ov,function(r){var o=r.context,a=o.shapes,s=o.validatedShapes;o.shapes=av(a),o.validatedShapes=av(s)}),i&&t.on("shape.move.start",mT,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",ov,function(r){var o=r.context,a=o.closure,s=a.enclosedElements,c=[];N(s,function(u){N(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;pr(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=Pl(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&&(Tt(s.labels,a,c),a.labelTarget=s)})}_e(qp,te),qp.$inject=["injector","eventBus","modeling"];function av(e){var t=new Set(e);return We(e,function(n){return!t.has(n.labelTarget)})}const gT={__init__:["labelSupport"],labelSupport:["type",qp]};var yT=251,sv=1401,cv="attach-ok";function Kp(e,t,n,i,r){te.call(this,t);var o=e.get("movePreview",!1);t.on("shape.move.start",sv,function(a){var s=a.context,c=s.shapes,u=s.validatedShapes;s.shapes=vT(c),s.validatedShapes=bT(u)}),o&&t.on("shape.move.start",yT,function(a){var s=a.context,c=s.shapes,u=Xp(c);N(u,function(l){o.makeDraggable(s,l,!0),N(l.labels,function(f){o.makeDraggable(s,f,!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,cv),t.once(["shape.move.out","shape.move.cleanup"],function(){n.removeMarker(l,cv)}))}}),this.preExecuted("elements.move",sv,function(a){var s=a.context,c=s.closure,u=s.shapes,l=Xp(u);N(l,function(f){c.add(f,c.topLevel[f.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=We(c,function(f){var p=f.host;return _T(f)&&!xT(c,p)}),N(l,function(f){r.updateAttachment(f,u)}))}),this.postExecuted("elements.move",function(a){var s=a.context.shapes;N(s,function(c){N(c.attachers,function(u){N(u.outgoing.slice(),function(l){var f=i.allowed("connection.reconnect",{connection:l,source:l.source,target:l.target});f||r.removeConnection(l)}),N(u.incoming.slice(),function(l){var f=i.allowed("connection.reconnect",{connection:l,source:l.source,target:l.target});f||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;pr(c.attachers,function(l){var f=i.allowed("elements.move",{target:u,shapes:[l]});f==="attach"?r.updateAttachment(l,u):r.removeShape(l)}),u.attachers.length&&N(u.attachers,function(l){var f=Cg(l,c,u);r.moveShape(l,f,l.parent)})}),this.postExecute("shape.resize",function(a){var s=a.context,c=s.shape,u=s.oldBounds,l=s.newBounds,f=c.attachers,p=s.hints||{};p.attachSupport!==!1&&N(f,function(d){var h=Cg(d,u,l);r.moveShape(d,h,d.parent),N(d.labels,function(m){r.moveShape(m,h,m.parent)})})}),this.preExecute("shape.delete",function(a){var s=a.context.shape;pr(s.attachers,function(c){r.removeShape(c)}),s.host&&r.updateAttachment(s,null)})}_e(Kp,te),Kp.$inject=["injector","eventBus","canvas","rules","modeling"];function Xp(e){return Nu(cn(e,function(t){return t.attachers||[]}))}function vT(e){var t=Xp(e);return J0("id",e,t)}function bT(e){var t=eo(e,"id");return We(e,function(n){for(;n;){if(n.host&&t[n.host.id])return!1;n=n.parent}return!0})}function _T(e){return!!e.host}function xT(e,t){return e.indexOf(t)!==-1}const wT={__depends__:[xi],__init__:["attachSupport"],attachSupport:["type",Kp]};function uv(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(tm(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)})}uv.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];const Zp={__init__:["changeSupport"],changeSupport:["type",uv]};function ei(e){this._model=e}ei.$inject=["moddle"],ei.prototype._needsId=function(e){return Ve(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"])},ei.prototype._ensureId=function(e){if(e.id){this._model.ids.claim(e.id,e);return}var t;E(e,"bpmn:Activity")?t="Activity":E(e,"bpmn:Event")?t="Event":E(e,"bpmn:Gateway")?t="Gateway":Ve(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))},ei.prototype.create=function(e,t){var n=this._model.create(e,t||{});return this._ensureId(n),n},ei.prototype.createDiLabel=function(){return this.create("bpmndi:BPMNLabel",{bounds:this.createDiBounds()})},ei.prototype.createDiShape=function(e,t){return this.create("bpmndi:BPMNShape",V({bpmnElement:e,bounds:this.createDiBounds()},t))},ei.prototype.createDiBounds=function(e){return this.create("dc:Bounds",e)},ei.prototype.createDiWaypoints=function(e){var t=this;return cn(e,function(n){return t.createDiWaypoint(n)})},ei.prototype.createDiWaypoint=function(e){return this.create("dc:Point",ai(e,["x","y"]))},ei.prototype.createDiEdge=function(e,t){return this.create("bpmndi:BPMNEdge",V({bpmnElement:e,waypoint:this.createDiWaypoints([])},t))},ei.prototype.createDiPlane=function(e,t){return this.create("bpmndi:BPMNPlane",V({bpmnElement:e},t))};function Ln(e,t,n){te.call(this,e),this._bpmnFactory=t;var i=this;function r(d){var h=d.context,m=h.hints||{},g;!h.cropped&&m.createElementsBehavior!==!1&&(g=h.connection,g.waypoints=n.getCroppedWaypoints(g),h.cropped=!0)}this.executed(["connection.layout","connection.create"],r),this.reverted(["connection.layout"],function(d){delete d.context.cropped});function o(d){var h=d.context;i.updateParent(h.shape||h.connection,h.oldParent)}function a(d){var h=d.context,m=h.shape||h.connection,g=h.parent||h.newParent;i.updateParent(m,g)}this.executed(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],In(o)),this.reverted(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],In(a));function s(d){var h=d.context,m=h.oldRoot,g=m.children;N(g,function(y){E(y,"bpmn:BaseElement")&&i.updateParent(y)})}this.executed(["canvas.updateRoot"],s),this.reverted(["canvas.updateRoot"],s);function c(d){var h=d.context.shape;E(h,"bpmn:BaseElement")&&i.updateBounds(h)}this.executed(["shape.move","shape.create","shape.resize"],In(function(d){d.context.shape.type!=="label"&&c(d)})),this.reverted(["shape.move","shape.create","shape.resize"],In(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"],In(u)),this.reverted(["connection.create","connection.move","connection.delete","connection.reconnect"],In(u));function l(d){i.updateConnectionWaypoints(d.context.connection)}this.executed(["connection.layout","connection.move","connection.updateWaypoints"],In(l)),this.reverted(["connection.layout","connection.move","connection.updateWaypoints"],In(l)),this.executed("connection.reconnect",In(function(d){var h=d.context,m=h.connection,g=h.oldSource,y=h.newSource,v=ie(m),b=ie(g),_=ie(y);v.conditionExpression&&!Ve(_,["bpmn:Activity","bpmn:ExclusiveGateway","bpmn:InclusiveGateway"])&&(h.oldConditionExpression=v.conditionExpression,delete v.conditionExpression),g!==y&&b.default===v&&(h.oldDefault=b.default,delete b.default)})),this.reverted("connection.reconnect",In(function(d){var h=d.context,m=h.connection,g=h.oldSource,y=h.newSource,v=ie(m),b=ie(g),_=ie(y);h.oldConditionExpression&&(v.conditionExpression=h.oldConditionExpression),h.oldDefault&&(b.default=h.oldDefault,delete _.default)}));function f(d){i.updateAttachment(d.context)}this.executed(["element.updateAttachment"],In(f)),this.reverted(["element.updateAttachment"],In(f)),this.executed("element.updateLabel",In(p)),this.reverted("element.updateLabel",In(p));function p(d){const{element:h}=d.context,m=Wn(h),g=Ze(h),y=g&&g.get("label");rr(h)||fc(h)||(m&&!y?g.set("label",t.create("bpmndi:BPMNLabel")):!m&&y&&g.set("label",void 0))}}_e(Ln,te),Ln.$inject=["eventBus","bpmnFactory","connectionDocking"],Ln.prototype.updateAttachment=function(e){var t=e.shape,n=t.businessObject,i=t.host;n.attachedToRef=i&&i.businessObject},Ln.prototype.updateParent=function(e,t){if(!Ge(e)&&!(E(e,"bpmn:DataStoreReference")&&e.parent&&E(e.parent,"bpmn:Collaboration"))){var n=e.parent,i=e.businessObject,r=Ze(e),o=n&&n.businessObject,a=Ze(n);E(e,"bpmn:FlowNode")&&this.updateFlowNodeRefs(i,o,t&&t.businessObject),E(e,"bpmn:DataOutputAssociation")&&(e.source?o=e.source.businessObject:o=null),E(e,"bpmn:DataInputAssociation")&&(e.target?o=e.target.businessObject:o=null),this.updateSemanticParent(i,o),E(e,"bpmn:DataObjectReference")&&i.dataObjectRef&&this.updateSemanticParent(i.dataObjectRef,o),this.updateDiParent(r,a)}},Ln.prototype.updateBounds=function(e){var t=Ze(e),n=ST(e);if(n){var i=ci(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})},Ln.prototype.updateFlowNodeRefs=function(e,t,n){if(n!==t){var i,r;E(n,"bpmn:Lane")&&(i=n.get("flowNodeRef"),Ct(i,e)),E(t,"bpmn:Lane")&&(r=t.get("flowNodeRef"),Tt(r,e))}},Ln.prototype.updateDiConnection=function(e,t,n){var i=Ze(e),r=Ze(t),o=Ze(n);i.sourceElement&&i.sourceElement.bpmnElement!==ie(t)&&(i.sourceElement=t&&r),i.targetElement&&i.targetElement.bpmnElement!==ie(n)&&(i.targetElement=n&&o)},Ln.prototype.updateDiParent=function(e,t){if(t&&!E(t,"bpmndi:BPMNPlane")&&(t=t.$parent),e.$parent!==t){var n=(t||e.$parent).get("planeElement");t?(n.push(e),e.$parent=t):(Ct(n,e),e.$parent=null)}};function ET(e){for(;e&&!E(e,"bpmn:Definitions");)e=e.$parent;return e}Ln.prototype.getLaneSet=function(e){var t,n;return E(e,"bpmn:Lane")?(t=e.childLaneSet,t||(t=this._bpmnFactory.create("bpmn:LaneSet"),e.childLaneSet=t,t.$parent=e),t):(E(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)},Ln.prototype.updateSemanticParent=function(e,t,n){var i;if(e.$parent!==t&&!((E(e,"bpmn:DataInput")||E(e,"bpmn:DataOutput"))&&(E(t,"bpmn:Participant")&&"processRef"in t&&(t=t.processRef),"ioSpecification"in t&&t.ioSpecification===e.$parent))){if(E(e,"bpmn:Lane"))t&&(t=this.getLaneSet(t)),i="lanes";else if(E(e,"bpmn:FlowElement")){if(t){if(E(t,"bpmn:Participant"))t=t.processRef;else if(E(t,"bpmn:Lane"))do t=t.$parent.$parent;while(E(t,"bpmn:Lane"))}i="flowElements"}else if(E(e,"bpmn:Artifact")){for(;t&&!E(t,"bpmn:Process")&&!E(t,"bpmn:SubProcess")&&!E(t,"bpmn:Collaboration");)if(E(t,"bpmn:Participant")){t=t.processRef;break}else t=t.$parent;i="artifacts"}else if(E(e,"bpmn:MessageFlow"))i="messageFlows";else if(E(e,"bpmn:Participant")){i="participants";var r=e.processRef,o;r&&(o=ET(e.$parent||t),e.$parent&&(Ct(o.get("rootElements"),r),r.$parent=null),t&&(Tt(o.get("rootElements"),r),r.$parent=o))}else E(e,"bpmn:DataOutputAssociation")?i="dataOutputAssociations":E(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),Ct(a,e)),t?(a=t.get(i),a.push(e),e.$parent=t):e.$parent=null,n){var s=n.get(i);Ct(a,e),t&&(s||(s=[],t.set(i,s)),s.push(e))}}},Ln.prototype.updateConnectionWaypoints=function(e){var t=Ze(e);t.set("waypoint",this._bpmnFactory.createDiWaypoints(e.waypoints))},Ln.prototype.updateConnection=function(e){var t=e.connection,n=ie(t),i=t.source,r=ie(i),o=t.target,a=ie(t.target),s;if(E(n,"bpmn:DataAssociation"))E(n,"bpmn:DataInputAssociation")?(n.get("sourceRef")[0]=r,s=e.parent||e.newParent||a,this.updateSemanticParent(n,a,s)):E(n,"bpmn:DataOutputAssociation")&&(s=e.parent||e.newParent||r,this.updateSemanticParent(n,r,s),n.targetRef=a);else{var c=E(n,"bpmn:SequenceFlow");n.sourceRef!==r&&(c&&(Ct(n.sourceRef&&n.sourceRef.get("outgoing"),n),r&&r.get("outgoing")&&r.get("outgoing").push(n)),n.sourceRef=r),n.targetRef!==a&&(c&&(Ct(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)},Ln.prototype._getLabel=function(e){return e.label||(e.label=this._bpmnFactory.createDiLabel()),e.label};function In(e){return function(t){var n=t.context,i=n.shape||n.connection||n.element;E(i,"bpmn:BaseElement")&&e(t)}}function ST(e){if(E(e,"bpmn:Activity")){var t=Ze(e);if(t){var n=t.get("label");if(n)return n.get("bounds")}}}function fr(e,t){Li.call(this),this._bpmnFactory=e,this._moddle=t}_e(fr,Li),fr.$inject=["bpmnFactory","moddle"],fr.prototype._baseCreate=Li.prototype.create,fr.prototype.create=function(e,t){if(e==="label"){var n=t.di||this._bpmnFactory.createDiLabel();return this._baseCreate(e,V({type:"label",di:n},Ir,t))}return this.createElement(e,t)},fr.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(!CT(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)}E(i,"bpmn:Group")&&(t=V({isFrame:!0},t)),t=RT(i,t,["processRef","isInterrupting","associationDirection","isForCompensation"]),t.isExpanded&&(t=Qp(r,t,"isExpanded")),Ve(i,["bpmn:Lane","bpmn:Participant"])&&(t=Qp(r,t,"isHorizontal")),E(i,"bpmn:SubProcess")&&(t.collapsed=!Ke(i,r)),E(i,"bpmn:ExclusiveGateway")&&(Rn(r,"isMarkerVisible")?r.isMarkerVisible===void 0&&(r.isMarkerVisible=!1):r.isMarkerVisible=!0),Ft(t.triggeredByEvent)&&(i.triggeredByEvent=t.triggeredByEvent,delete t.triggeredByEvent),Ft(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)},fr.prototype.getDefaultSize=function(e,t){var n=ie(e);if(t=t||Ze(e),E(n,"bpmn:SubProcess"))return Ke(n,t)?{width:350,height:200}:{width:100,height:80};if(E(n,"bpmn:Task"))return{width:100,height:80};if(E(n,"bpmn:Gateway"))return{width:50,height:50};if(E(n,"bpmn:Event"))return{width:36,height:36};if(E(n,"bpmn:Participant")){var i=t.isHorizontal===void 0||t.isHorizontal===!0;return Ke(n,t)?i?{width:600,height:250}:{width:250,height:600}:i?{width:400,height:60}:{width:60,height:400}}return E(n,"bpmn:Lane")?{width:400,height:100}:E(n,"bpmn:DataObjectReference")?{width:36,height:50}:E(n,"bpmn:DataStoreReference")?{width:50,height:50}:E(n,"bpmn:TextAnnotation")?{width:100,height:40}:E(n,"bpmn:Group")?{width:300,height:300}:{width:100,height:80}},fr.prototype.createParticipantShape=function(e){return Wt(e)||(e={isExpanded:e}),e=V({type:"bpmn:Participant"},e||{}),e.isExpanded!==!1&&(e.processRef=this._bpmnFactory.create("bpmn:Process")),this.createShape(e)};function RT(e,t,n){return N(n,function(i){t=Qp(e,t,i)}),t}function Qp(e,t,n){return t[n]===void 0?t:(e[n]=t[n],pi(t,[n]))}function CT(e){return Ve(e,["bpmndi:BPMNShape","bpmndi:BPMNEdge","bpmndi:BPMNDiagram","bpmndi:BPMNPlane"])}function Pc(e,t){this._modeling=e,this._canvas=t}Pc.$inject=["modeling","canvas"],Pc.prototype.preExecute=function(e){var t=this._modeling,n=e.elements,i=e.alignment;N(n,function(r){var o={x:0,y:0};Ft(i.left)?o.x=i.left-r.x:Ft(i.right)?o.x=i.right-r.width-r.x:Ft(i.center)?o.x=i.center-Math.round(r.width/2)-r.x:Ft(i.top)?o.y=i.top-r.y:Ft(i.bottom)?o.y=i.bottom-r.height-r.y:Ft(i.middle)&&(o.y=i.middle-Math.round(r.height/2)-r.y),t.moveElements([r],o,r.parent)})},Pc.prototype.postExecute=function(e){};function Ac(e){this._modeling=e}Ac.$inject=["modeling"],Ac.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},Ac.prototype.postExecute=function(e){var t=e.hints||{};PT(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 PT(e,t){return Yi(e.outgoing,function(n){return n.target===t})}function Tc(e,t){this._canvas=e,this._layouter=t}Tc.$inject=["canvas","layouter"],Tc.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},Tc.prototype.revert=function(e){var t=e.connection;return this._canvas.removeConnection(t),t.source=null,t.target=null,t};var Mc=Math.round;function Jp(e){this._modeling=e}Jp.$inject=["modeling"],Jp.prototype.preExecute=function(e){var t=e.elements,n=e.parent,i=e.parentIndex,r=e.position,o=e.hints,a=this._modeling;N(t,function(f){Be(f.x)||(f.x=0),Be(f.y)||(f.y=0)});var s=We(t,function(f){return!f.hidden}),c=Dt(s);N(t,function(f){at(f)&&(f.waypoints=cn(f.waypoints,function(p){return{x:Mc(p.x-c.x-c.width/2+r.x),y:Mc(p.y-c.y-c.height/2+r.y)}})),V(f,{x:Mc(f.x-c.x-c.width/2+r.x),y:Mc(f.y-c.y-c.height/2+r.y)})});var u=new Set(Os(t)),l={};N(t,function(f){if(at(f)){l[f.id]=Be(i)?a.createConnection(l[f.source.id],l[f.target.id],i,f,f.parent||n,o):a.createConnection(l[f.source.id],l[f.target.id],f,f.parent||n,o);return}var p=V({},o);u.has(f)||(p.autoResize=!1),Ge(f)&&(p=pi(p,["attach"])),l[f.id]=Be(i)?a.createShape(f,ai(f,["x","y","width","height"]),f.parent||n,i,p):a.createShape(f,ai(f,["x","y","width","height"]),f.parent||n,p)}),e.elements=Jr(l)};var lv=Math.round;function dr(e){this._canvas=e}dr.$inject=["canvas"],dr.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-lv(t.width/2),y:n.y-lv(t.height/2)}),this._canvas.addShape(t,i,r),t},dr.prototype.revert=function(e){var t=e.shape;return this._canvas.removeShape(t),t};function Sa(e){dr.call(this,e)}_e(Sa,dr),Sa.$inject=["canvas"];var AT=dr.prototype.execute;Sa.prototype.execute=function(e){var t=e.shape;return MT(t),t.labelTarget=e.labelTarget,AT.call(this,e)};var TT=dr.prototype.revert;Sa.prototype.revert=function(e){return e.shape.labelTarget=null,TT.call(this,e)};function MT(e){["width","height"].forEach(function(t){typeof e[t]>"u"&&(e[t]=0)})}function Ra(e,t){this._canvas=e,this._modeling=t}Ra.$inject=["canvas","modeling"],Ra.prototype.preExecute=function(e){var t=this._modeling,n=e.connection;pr(n.incoming,function(i){t.removeConnection(i,{nested:!0})}),pr(n.outgoing,function(i){t.removeConnection(i,{nested:!0})})},Ra.prototype.execute=function(e){var t=e.connection,n=t.parent;return e.parent=n,e.parentIndex=Pl(n.children,t),e.source=t.source,e.target=t.target,this._canvas.removeConnection(t),t.source=null,t.target=null,t},Ra.prototype.revert=function(e){var t=e.connection,n=e.parent,i=e.parentIndex;return t.source=e.source,t.target=e.target,Tt(n.children,t,i),this._canvas.addConnection(t,n),t};function ef(e,t){this._modeling=e,this._elementRegistry=t}ef.$inject=["modeling","elementRegistry"],ef.prototype.postExecute=function(e){var t=this._modeling,n=this._elementRegistry,i=e.elements;N(i,function(r){n.get(r.id)&&(r.waypoints?t.removeConnection(r):t.removeShape(r))})};function Ca(e,t){this._canvas=e,this._modeling=t}Ca.$inject=["canvas","modeling"],Ca.prototype.preExecute=function(e){var t=this._modeling,n=e.shape;pr(n.incoming,function(i){t.removeConnection(i,{nested:!0})}),pr(n.outgoing,function(i){t.removeConnection(i,{nested:!0})}),pr(n.children,function(i){at(i)?t.removeConnection(i,{nested:!0}):t.removeShape(i,{nested:!0})})},Ca.prototype.execute=function(e){var t=this._canvas,n=e.shape,i=n.parent;return e.oldParent=i,e.oldParentIndex=Pl(i.children,n),t.removeShape(n),n},Ca.prototype.revert=function(e){var t=this._canvas,n=e.shape,i=e.oldParent,r=e.oldParentIndex;return Tt(i.children,n,r),t.addShape(n,i),n};function kc(e){this._modeling=e}kc.$inject=["modeling"];var pv={x:"y",y:"x"};kc.prototype.preExecute=function(e){var t=this._modeling,n=e.groups,i=e.axis,r=e.dimension;function o(g,y){g.range.min=Math.min(y[i],g.range.min),g.range.max=Math.max(y[i]+y[r],g.range.max)}function a(g){return g[i]+g[r]/2}function s(g){return g.length-1}function c(g){return g.max-g.min}function u(g,y){var v={y:0};v[i]=g-a(y),v[i]&&(v[pv[i]]=0,t.moveElements([y],v,y.parent))}var l=n[0],f=s(n),p=n[f],d,h,m=0;N(n,function(g,y){var v,b,_;if(g.elements.length<2){y&&y!==n.length-1&&(o(g,g.elements[0]),m+=c(g.range));return}v=li(g.elements,i),b=v[0],y===f&&(b=v[s(v)]),_=a(b),g.range=null,N(v,function(C){if(u(_,C),g.range===null){g.range={min:C[i],max:C[i]+C[r]};return}o(g,C)}),y&&y!==n.length-1&&(m+=c(g.range))}),h=Math.abs(p.range.min-l.range.max),d=Math.round((h-m)/(n.length-1)),!(d<n.length-1)&&N(n,function(g,y){var v={},b;g===l||g===p||(b=n[y-1],g.range.max=0,N(g.elements,function(_,C){v[pv[i]]=0,v[i]=b.range.max-_[i]+d,g.range.min!==_[i]&&(v[i]+=_[i]-g.range.min),v[i]&&t.moveElements([_],v,_.parent),g.range.max=Math.max(_[i]+_[r],C?g.range.max:0)}))})},kc.prototype.postExecute=function(e){};function Oc(e,t){this._layouter=e,this._canvas=t}Oc.$inject=["layouter","canvas"],Oc.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},Oc.prototype.revert=function(e){var t=e.connection;return t.waypoints=e.oldWaypoints,t};function tf(){}tf.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=Ct(o.children,t),Tt(i.children,t,r),t.parent=i,N(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},tf.prototype.revert=function(e){var t=e.connection,n=t.parent,i=e.oldParent,r=e.oldParentIndex,o=e.delta;return Ct(n.children,t),Tt(i.children,t,r),t.parent=i,N(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 nf(){this.allShapes={},this.allConnections={},this.enclosedElements={},this.enclosedConnections={},this.topLevel={}}nf.prototype.add=function(e,t){return this.addAll([e],t)},nf.prototype.addAll=function(e,t){var n=aS(e,!!t,this);return V(this,n),this};function Pa(e){this._modeling=e}Pa.prototype.moveRecursive=function(e,t,n){return e?this.moveClosure(this.getClosure(e),t,n):[]},Pa.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),N(a,function(f){o.moveShape(f,t,u[f.id]&&!l&&n,{recurse:!1,layout:!1})}),N(s,function(f){var p=!!a[f.source.id],d=!!a[f.target.id];c[f.id]&&p&&d?o.moveConnection(f,t,u[f.id]&&!l&&n):o.layoutConnection(f,{connectionStart:p&&up(f,f.source,t),connectionEnd:d&&lp(f,f.target,t)})})},Pa.prototype.getClosure=function(e){return new nf().addAll(e,!0)};function Dc(e){this._helper=new Pa(e)}Dc.$inject=["modeling"],Dc.prototype.preExecute=function(e){e.closure=this._helper.getClosure(e.shapes)},Dc.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 Hr(e){this._modeling=e,this._helper=new Pa(e)}Hr.$inject=["modeling"],Hr.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=ai(t,["x","y","width","height"]),e.oldParent=o,e.oldParentIndex=Ct(o.children,t),Tt(i.children,t,r),V(t,{parent:i,x:t.x+n.x,y:t.y+n.y}),t},Hr.prototype.postExecute=function(e){var t=e.shape,n=e.delta,i=e.hints,r=this._modeling;i.layout!==!1&&(N(t.incoming,function(o){r.layoutConnection(o,{connectionEnd:lp(o,t,n)})}),N(t.outgoing,function(o){r.layoutConnection(o,{connectionStart:up(o,t,n)})})),i.recurse!==!1&&this.moveChildren(e)},Hr.prototype.revert=function(e){var t=e.shape,n=e.oldParent,i=e.oldParentIndex,r=e.delta;return Tt(n.children,t,i),V(t,{parent:n,x:t.x-r.x,y:t.y-r.y}),t},Hr.prototype.moveChildren=function(e){var t=e.delta,n=e.shape;this._helper.moveRecursive(n.children,t,null)},Hr.prototype.getNewParent=function(e){return e.newParent||e.shape.parent};function Aa(e){this._modeling=e}Aa.$inject=["modeling"],Aa.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},Aa.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||fv(De(r)?r[0]:r)),i&&(!n||o.docking==="target")&&(a.connectionEnd=a.connectionEnd||fv(De(r)?r[r.length-1]:r)),o.newWaypoints&&(a.waypoints=o.newWaypoints),this._modeling.layoutConnection(t,a))},Aa.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 fv(e){return e.original||e}function ji(e,t){this._modeling=e,this._rules=t}ji.$inject=["modeling","rules"],ji.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(h,m,g){return i.allowed("connection.reconnect",{connection:g,source:h,target:m})}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 f;a.moveChildren!==!1&&(f=r.children.slice(),n.moveElements(f,{x:0,y:0},s,a));var p=r.incoming.slice(),d=r.outgoing.slice();N(p,function(h){var m=h.source,g=c(m,s,h);g&&t.reconnectEnd(h,s,ac(h,s,l),a)}),N(d,function(h){var m=h.target,g=c(s,m,h);g&&t.reconnectStart(h,s,oc(h,s,l),a)})},ji.prototype.postExecute=function(e){var t=e.oldShape;this._modeling.removeShape(t)},ji.prototype.execute=function(e){},ji.prototype.revert=function(e){},ji.prototype.createShape=function(e,t,n,i){return this._modeling.createShape(e,t,n,i)},ji.prototype.reconnectStart=function(e,t,n,i){this._modeling.reconnectStart(e,t,n,i)},ji.prototype.reconnectEnd=function(e,t,n,i){this._modeling.reconnectEnd(e,t,n,i)};function Ta(e){this._modeling=e}Ta.$inject=["modeling"],Ta.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},Ta.prototype.postExecute=function(e){var t=this._modeling,n=e.shape,i=e.oldBounds,r=e.hints||{};r.layout!==!1&&(N(n.incoming,function(o){t.layoutConnection(o,{connectionEnd:ac(o,n,i)})}),N(n.outgoing,function(o){t.layoutConnection(o,{connectionStart:oc(o,n,i)})}))},Ta.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 hr(e){this._modeling=e}hr.$inject=["modeling"],hr.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),N(r,function(s){a[s.id]=OT(s)}),this.resizeShapes(r,t,n),this.updateConnectionWaypoints(oT(i,r),t,n,o,i,r,a)},hr.prototype.execute=function(){},hr.prototype.revert=function(){},hr.prototype.moveShapes=function(e,t){var n=this;N(e,function(i){n._modeling.moveShape(i,t,null,{autoResize:!1,layout:!1,recurse:!1})})},hr.prototype.resizeShapes=function(e,t,n){var i=this;N(e,function(r){var o=aT(r,n,t);i._modeling.resizeShape(r,o,null,{attachSupport:!1,autoResize:!1,layout:!1})})},hr.prototype.updateConnectionWaypoints=function(e,t,n,i,r,o,a){var s=this,c=new Set(r),u=new Set(o);N(e,function(l){var f=l.source,p=l.target,d=kT(l),h=hv(n),m={},g=c.has(f)||u.has(f),y=c.has(p)||u.has(p);g&&y?(d=cn(d,function(v){return mv(v,i,n)&&(v[h]=v[h]+t[h]),v.original&&mv(v.original,i,n)&&(v.original[h]=v.original[h]+t[h]),v}),s._modeling.updateWaypoints(l,d,{labelBehavior:!1})):(g||y)&&(c.has(f)?m.connectionStart=up(l,f,t):c.has(p)?m.connectionEnd=lp(l,p,t):u.has(f)?m.connectionStart=oc(l,f,a[f.id]):u.has(p)&&(m.connectionEnd=ac(l,p,a[p.id])),s._modeling.layoutConnection(l,m))})};function dv(e){return V({},e)}function kT(e){return cn(e.waypoints,function(t){return t=dv(t),t.original&&(t.original=dv(t.original)),t})}function hv(e){switch(e){case"n":return"y";case"w":return"x";case"s":return"y";case"e":return"x"}}function mv(e,t,n){var i=hv(n);if(/e|s/.test(n))return e[i]>t;if(/n|w/.test(n))return e[i]<t}function OT(e){return{x:e.x,y:e.y,height:e.height,width:e.width}}function Lc(e){this._modeling=e}Lc.$inject=["modeling"],Lc.prototype.execute=function(e){var t=e.shape,n=t.children;e.oldChildrenVisibility=gv(n),t.collapsed=!t.collapsed;var i=yv(n,t.collapsed);return[t].concat(i)},Lc.prototype.revert=function(e){var t=e.shape,n=e.oldChildrenVisibility,i=t.children,r=vv(i,n);return t.collapsed=!t.collapsed,[t].concat(r)};function gv(e){var t={};return N(e,function(n){t[n.id]=n.hidden,n.children&&(t=V({},t,gv(n.children)))}),t}function yv(e,t){var n=[];return N(e,function(i){i.hidden=t,n=n.concat(i),i.children&&(n=n.concat(yv(i.children,i.collapsed||t)))}),n}function vv(e,t){var n=[];return N(e,function(i){i.hidden=t[i.id],n=n.concat(i),i.children&&(n=n.concat(vv(i.children,t)))}),n}function Ic(e){this._modeling=e}Ic.$inject=["modeling"],Ic.prototype.execute=function(e){var t=e.shape,n=e.newHost,i=t.host;return e.oldHost=i,e.attacherIdx=bv(i,t),_v(n,t),t.host=n,t},Ic.prototype.revert=function(e){var t=e.shape,n=e.newHost,i=e.oldHost,r=e.attacherIdx;return t.host=i,bv(n,t),_v(i,t,r),t};function bv(e,t){return Ct(e&&e.attachers,t)}function _v(e,t,n){if(e){var i=e.attachers;i||(e.attachers=i=[]),Tt(i,t,n)}}function rf(){}rf.prototype.execute=function(e){var t=e.connection,n=e.newWaypoints;return e.oldWaypoints=t.waypoints,t.waypoints=n,t},rf.prototype.revert=function(e){var t=e.connection,n=e.oldWaypoints;return t.waypoints=n,t};function st(e,t,n){this._eventBus=e,this._elementFactory=t,this._commandStack=n;var i=this;e.on("diagram.init",function(){i.registerHandlers(n)})}st.$inject=["eventBus","elementFactory","commandStack"],st.prototype.getHandlers=function(){return{"shape.append":Ac,"shape.create":dr,"shape.delete":Ca,"shape.move":Hr,"shape.resize":Ta,"shape.replace":ji,"shape.toggleCollapse":Lc,spaceTool:hr,"label.create":Sa,"connection.create":Tc,"connection.delete":Ra,"connection.move":tf,"connection.layout":Oc,"connection.updateWaypoints":rf,"connection.reconnect":Aa,"elements.create":Jp,"elements.move":Dc,"elements.delete":ef,"elements.distribute":kc,"elements.align":Pc,"element.updateAttachment":Ic}},st.prototype.registerHandlers=function(e){N(this.getHandlers(),function(t,n){e.registerHandler(n,t)})},st.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)},st.prototype.updateAttachment=function(e,t){var n={shape:e,newHost:t};this._commandStack.execute("element.updateAttachment",n)},st.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)},st.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)},st.prototype.layoutConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.layout",n)},st.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},st.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},st.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},st.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},st.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},st.prototype.removeElements=function(e){var t={elements:e};this._commandStack.execute("elements.delete",t)},st.prototype.distributeElements=function(e,t,n){var i={groups:e,axis:t,dimension:n};this._commandStack.execute("elements.distribute",i)},st.prototype.removeShape=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.delete",n)},st.prototype.removeConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.delete",n)},st.prototype.replaceShape=function(e,t,n){var i={oldShape:e,newData:t,hints:n||{}};return this._commandStack.execute("shape.replace",i),i.newShape},st.prototype.alignElements=function(e,t){var n={elements:e,alignment:t};this._commandStack.execute("elements.align",n)},st.prototype.resizeShape=function(e,t,n,i){var r={shape:e,newBounds:t,minBounds:n,hints:i};this._commandStack.execute("shape.resize",r)},st.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)},st.prototype.updateWaypoints=function(e,t,n){var i={connection:e,newWaypoints:t,hints:n||{}};this._commandStack.execute("connection.updateWaypoints",i)},st.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)},st.prototype.reconnectStart=function(e,t,n,i){i||(i={}),this.reconnect(e,t,e.target,n,V(i,{docking:"source"}))},st.prototype.reconnectEnd=function(e,t,n,i){i||(i={}),this.reconnect(e,e.source,t,n,V(i,{docking:"target"}))},st.prototype.connect=function(e,t,n,i){return this.createConnection(e,t,n||{},e.parent,i)},st.prototype._create=function(e,t){return WS(t)?t:this._elementFactory.create(e,t)},st.prototype.toggleCollapse=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.toggleCollapse",n)};function Ma(e){this._elementRegistry=e}Ma.$inject=["elementRegistry"],Ma.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||DT(n,os(i));return xv(n,i),e.oldProperties=o,e.changed=r,r},Ma.prototype.revert=function(e){var t=e.oldProperties,n=e.moddleElement,i=e.changed;return xv(n,t),i},Ma.prototype._getVisualReferences=function(e){var t=this._elementRegistry;return E(e,"bpmn:DataObject")?LT(e,t):[]};function DT(e,t){return Cn(t,function(n,i){return n[i]=e.get(i),n},{})}function xv(e,t){N(t,function(n,i){e.set(i,n)})}function LT(e,t){return t.filter(function(n){return E(n,"bpmn:DataObjectReference")&&ie(n).dataObjectRef===e})}var ka="default",Hi="id",wv="di",IT={width:0,height:0};function Oa(e,t,n,i){this._elementRegistry=e,this._moddle=t,this._modeling=n,this._textRenderer=i}Oa.$inject=["elementRegistry","moddle","modeling","textRenderer"],Oa.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||BT(t,a);return Ev(a,o)&&(r.unclaim(o[Hi]),i.updateId(t,a[Hi]),r.claim(a[Hi],o)),ka in a&&(a[ka]&&n.push(i.get(a[ka].id)),o[ka]&&n.push(i.get(o[ka].id))),Sv(t,a),e.oldProperties=s,e.changed=n,n},Oa.prototype.postExecute=function(e){var t=e.element,n=t.label,i=n&&ie(n).name;if(i){var r=this._textRenderer.getExternalLabelBounds(n,i);this._modeling.resizeShape(n,r,IT)}},Oa.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 Sv(t,i),Ev(n,r)&&(a.unclaim(n[Hi]),o.updateId(t,i[Hi]),a.claim(i[Hi],r)),e.changed};function Ev(e,t){return Hi in e&&e[Hi]!==t[Hi]}function BT(e,t){var n=os(t),i=e.businessObject,r=Ze(e);return Cn(n,function(o,a){return a!==wv?o[a]=i.get(a):o[a]=NT(r,os(t.di)),o},{})}function NT(e,t){return Cn(t,function(n,i){return n[i]=e&&e.get(i),n},{})}function Sv(e,t){var n=e.businessObject,i=Ze(e);N(t,function(r,o){o!==wv?n.set(o,r):i&&$T(i,r)})}function $T(e,t){N(t,function(n,i){e.set(i,n)})}var FT=["default"];function jT(e){var t=V({},e);return FT.forEach(function(n){n in e&&(t[n]=ie(t[n]))}),t}function Bc(e,t){this._canvas=e,this._modeling=t}Bc.$inject=["canvas","modeling"],Bc.prototype.execute=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=t.getRootElement(),o=r.businessObject,a=o.$parent,s=Ze(r);return t.setRootElement(n),t.removeRootElement(r),Tt(a.rootElements,i),i.$parent=a,Ct(a.rootElements,o),o.$parent=null,r.di=null,s.bpmnElement=i,n.di=s,e.oldRoot=r,[]},Bc.prototype.revert=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=e.oldRoot,o=r.businessObject,a=i.$parent,s=Ze(n);return t.setRootElement(r),t.removeRootElement(n),Ct(a.rootElements,i),i.$parent=null,Tt(a.rootElements,o),o.$parent=a,n.di=null,s.bpmnElement=o,r.di=s,[]};function of(e,t){this._modeling=e,this._spaceTool=t}of.$inject=["modeling","spaceTool"],of.prototype.preExecute=function(e){var t=this._spaceTool,n=this._modeling,i=e.shape,r=e.location,o=Xn(i),a=o===i,s=a?i:i.parent,c=ar(s),u=qt(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+Kn,y:i.y,width:i.width-Kn,height:i.height}:{x:i.x,y:i.y+Kn,width:i.width,height:i.height-Kn};n.createShape({type:"bpmn:Lane",isHorizontal:u},l,s)}var f=[];Dr(o,function(_){return f.push(_),_.label&&f.push(_.label),_===i?[]:We(_.children,function(C){return C!==i})});var p,d,h,m,g;r==="top"?(p=-120,d=i.y,h=d+10,m="n",g="y"):r==="left"?(p=-120,d=i.x,h=d+10,m="w",g="x"):r==="bottom"?(p=120,d=i.y+i.height,h=d-10,m="s",g="y"):r==="right"&&(p=120,d=i.x+i.width,h=d-10,m="e",g="x");var y=t.calculateAdjustments(f,g,p,h),v=u?{x:0,y:p}:{x:p,y:0};t.makeSpace(y.movingShapes,y.resizingShapes,v,m,h);var b=u?{x:i.x+(a?Kn:0),y:d-(r==="top"?120:0),width:i.width-(a?Kn:0),height:120}:{x:d-(r==="left"?120:0),y:i.y+(a?Kn:0),width:120,height:i.height-(a?Kn:0)};e.newLane=n.createShape({type:"bpmn:Lane",isHorizontal:u},b,s)};function af(e){this._modeling=e}af.$inject=["modeling"],af.prototype.preExecute=function(e){var t=this._modeling,n=e.shape,i=e.count,r=ar(n),o=r.length;if(o>i)throw new Error(`more than <${i}> child lanes`);var a=qt(n),s=a?n.height:n.width,c=Math.round(s/i),u,l,f,p;for(p=0;p<i;p++)p===i-1?u=s-c*p:u=c,l=a?{x:n.x+Kn,y:n.y+p*c,width:n.width-Kn,height:u}:{x:n.x+p*c,y:n.y+Kn,width:u,height:n.height-Kn},p<o?t.resizeShape(r[p],l):(f={type:"bpmn:Lane",isHorizontal:a},t.createShape(f,l,n))};function Da(e,t){this._modeling=e,this._spaceTool=t}Da.$inject=["modeling","spaceTool"],Da.prototype.preExecute=function(e){var t=e.shape,n=e.newBounds,i=e.balanced;i!==!1?this.resizeBalanced(t,n):this.resizeSpace(t,n)},Da.prototype.resizeBalanced=function(e,t){var n=this._modeling,i=LC(e,t);n.resizeShape(e,t),i.forEach(function(r){n.resizeShape(r.shape,r.newBounds)})},Da.prototype.resizeSpace=function(e,t){var n=this._spaceTool,i=Ae(e),r=Ae(t),o=ng(r,i),a=Xn(e),s=[],c=[];Dr(a,function(h){return s.push(h),(E(h,"bpmn:Lane")||E(h,"bpmn:Participant"))&&c.push(h),h.children});var u,l,f,p,d;(o.bottom||o.top)&&(u=o.bottom||o.top,l=e.y+(o.bottom?e.height:0)+(o.bottom?-10:10),f=o.bottom?"s":"n",p=o.top>0||o.bottom<0?-u:u,d=n.calculateAdjustments(s,"y",p,l),n.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:u},f)),(o.left||o.right)&&(u=o.right||o.left,l=e.x+(o.right?e.width:0)+(o.right?-10:100),f=o.right?"e":"w",p=o.left>0||o.right<0?-u:u,d=n.calculateAdjustments(c,"x",p,l),n.makeSpace(d.movingShapes,d.resizingShapes,{x:u,y:0},f))};var La="flowNodeRef",sf="lanes";function Nc(){}Nc.prototype._computeUpdates=function(e,t){var n=[],i=[],r={},o=[];function a(l,f){var p=Ae(f),d={x:l.x+l.width/2,y:l.y+l.height/2};return d.x>p.left&&d.x<p.right&&d.y>p.top&&d.y<p.bottom}function s(l){n.indexOf(l)===-1&&(o.push(l),n.push(l))}function c(l){var f=Xn(l);return r[f.id]||(r[f.id]=ec(f)),r[f.id]}function u(l){if(!l.parent)return[];var f=c(l);return f.filter(function(p){return a(l,p)}).map(function(p){return p.businessObject})}return t.forEach(function(l){var f=Xn(l);if(!(!f||n.indexOf(f)!==-1)){var p=f.children.filter(function(d){return E(d,"bpmn:FlowNode")});p.forEach(s),n.push(f)}}),e.forEach(s),o.forEach(function(l){var f=l.businessObject,p=f.get(sf),d=p.slice(),h=u(l);i.push({flowNode:f,remove:d,add:h})}),t.forEach(function(l){var f=l.businessObject;l.parent||f.get(La).forEach(function(p){i.push({flowNode:p,remove:[f],add:[]})})}),i},Nc.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(sf);n.remove.forEach(function(o){Ct(r,o),Ct(o.get(La),i)}),n.add.forEach(function(o){Tt(r,o),Tt(o.get(La),i)})}),[]},Nc.prototype.revert=function(e){var t=e.updates;return t.forEach(function(n){var i=n.flowNode,r=i.get(sf);n.add.forEach(function(o){Ct(r,o),Ct(o.get(La),i)}),n.remove.forEach(function(o){Tt(r,o),Tt(o.get(La),i)})}),[]};var cf="categoryValueRef";function Ia(e,t){this._bpmnFactory=e,this._elementRegistry=t}Ia.$inject=["bpmnFactory","elementRegistry"],Ia.prototype._computeUpdates=function(e,t){var n=this._elementRegistry,i=this._bpmnFactory,r=new Map,o=[],a=new Map;function s(v,b,_){if(b){var C=a.get(v);C||(C={},a.set(v,C)),!(_&&C.present)&&(!_&&C.past||(_?C.present={categoryValue:b,root:uf(v)}:C.past={categoryValue:b}))}}function c(v){r.set(v,ie(v))}function u(){n.filter(function(v){return E(v,"bpmn:FlowElement")&&!Ge(v)&&v.parent}).forEach(c)}function l(v){var b=ie(v),_=b.get("categoryValueRef");return _||(_=Zm(i,b),o.push(HT(v,_))),_}function f(v){return v.reduce(function(b,_){var C=uf(_),P=b.get(C);return P||(P=[],b.set(C,P)),P.push(_),b},new Map)}e=Array.from(e||[]);var p=f(e);t.length&&u(),e.forEach(c),n.filter(function(v){return E(v,"bpmn:Group")&&!Ge(v)&&v.parent}).forEach(function(v){var b=ie(v).get("categoryValueRef");if(!b){var _=uf(v),C=p.get(_)||[],P=po(C,v),D=Object.keys(P).length>0;D&&(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()),h=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),m=new Map,g=f(d);a.forEach(function(v,b){var _=v.present;if(_){var C=g.get(_.root)||[],P=po(C,b);C.forEach(function(D){if(P[D.id]){var T=m.get(D);T||(T=new Set,m.set(D,T)),T.add(_.categoryValue)}})}});var y=d.reduce(function(v,b){var _=r.get(b),C=_.get(cf),P=new Set(C),D=m.get(b)||new Set,T=Array.from(D).filter(function(k){return!P.has(k)}),I=C.filter(function(k){return h.has(k)&&!D.has(k)});return(T.length||I.length)&&v.push({businessObject:_,categoryValuesToAdd:T,categoryValuesToRemove:I}),v},[]);return{flowElements:y,groups:o}},Ia.prototype.execute=function(e){var t=e.updates;return t||(t=e.updates=this._computeUpdates(e.affectedFlowElements,e.affectedGroupEntries)),zT(t.groups),VT(t.flowElements),[]},Ia.prototype.revert=function(e){var t=e.updates;return WT(t.flowElements),GT(t.groups),[]};function HT(e,t){return{groupShape:e,categoryValue:t,category:t.$parent}}function zT(e){e.forEach(function(t){ie(t.groupShape).categoryValueRef=t.categoryValue,t.categoryValue.$parent=t.category})}function GT(e){e.forEach(function(t){ie(t.groupShape).categoryValueRef=null})}function VT(e){e.forEach(function(t){var n=t.businessObject,i=n.get(cf);t.categoryValuesToRemove.forEach(function(r){Ct(i,r)}),t.categoryValuesToAdd.forEach(function(r){Tt(i,r,!0)})})}function WT(e){e.forEach(function(t){var n=t.businessObject,i=n.get(cf);t.categoryValuesToAdd.forEach(function(r){Ct(i,r)}),t.categoryValuesToRemove.forEach(function(r){Tt(i,r,!0)})})}function uf(e){for(;e.parent;)e=e.parent;return e}function $c(e){this._moddle=e}$c.$inject=["moddle"],$c.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),[]},$c.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 UT={fill:void 0,stroke:void 0};function lf(e){this._commandStack=e,this._normalizeColor=function(t){if(t){if(Sn(t)){var n=YT(t);if(n)return n}throw new Error(`invalid color value: ${t}`)}}}lf.$inject=["commandStack"],lf.prototype.postExecute=function(e){var t=e.elements,n=e.colors||UT,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)}),N(t,function(o){var a=at(o)?ai(r,["border-color"]):r,s=Ze(o);if(qT(a),Ge(o)){if(!s||!E(s.label,"bpmndi:BPMNLabel"))return;i._commandStack.execute("element.updateModdleProperties",{element:o,moddleElement:s.label,properties:{color:r["border-color"]}})}else{if(!Ve(s,["bpmndi:BPMNEdge","bpmndi:BPMNShape"]))return;i._commandStack.execute("element.updateProperties",{element:o,properties:{di:a}})}})};function YT(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 qT(e){"border-color"in e&&(e.stroke=e["border-color"]),"background-color"in e&&(e.fill=e["background-color"])}var KT={width:0,height:0};function Rv(e,t,n){function i(c,u){var l=c.label||c,f=c.labelTarget||c;return ER(l,u),[l,f]}function r(c){var u=c.element,l=u.businessObject,f=c.newLabel;if(!Ge(u)&&rr(u)&&!Hs(u)&&!Cv(f)){var p=7,d=Dl(u);d={x:d.x,y:d.y+p},e.createLabel(u,d,{id:l.id+"_label",businessObject:l,di:u.di})}}function o(c){return c.oldLabel=Wn(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,f=c.newLabel,p=c.newBounds,d=c.hints||{};if(!(!Ge(l)&&!E(l,"bpmn:TextAnnotation"))){if(Ge(l)&&Cv(f)){d.removeShape!==!1&&e.removeShape(l,{unsetLabel:!1});return}var h=Wn(u);typeof p>"u"&&(p=t.getExternalLabelBounds(l,h)),p&&e.resizeShape(l,p,KT)}}this.preExecute=r,this.execute=o,this.revert=a,this.postExecute=s}Rv.$inject=["modeling","textRenderer","bpmnFactory"];function Cv(e){return!e||!e.trim()}function rn(e,t,n,i){st.call(this,e,t,n),this._bpmnRules=i}_e(rn,st),rn.$inject=["eventBus","elementFactory","commandStack","bpmnRules"],rn.prototype.getHandlers=function(){var e=st.prototype.getHandlers.call(this);return e["element.updateModdleProperties"]=Ma,e["element.updateProperties"]=Oa,e["canvas.updateRoot"]=Bc,e["lane.add"]=of,e["lane.resize"]=Da,e["lane.split"]=af,e["lane.updateRefs"]=Nc,e["group.updateRefs"]=Ia,e["id.updateClaim"]=$c,e["element.setColor"]=lf,e["element.updateLabel"]=Rv,e},rn.prototype.updateLabel=function(e,t,n,i){this._commandStack.execute("element.updateLabel",{element:e,newLabel:t,newBounds:n,hints:i||{}})},rn.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)},rn.prototype.updateModdleProperties=function(e,t,n){this._commandStack.execute("element.updateModdleProperties",{element:e,moddleElement:t,properties:n})},rn.prototype.updateProperties=function(e,t){this._commandStack.execute("element.updateProperties",{element:e,properties:t})},rn.prototype.resizeLane=function(e,t,n){this._commandStack.execute("lane.resize",{shape:e,newBounds:t,balanced:n})},rn.prototype.addLane=function(e,t){var n={shape:e,location:t};return this._commandStack.execute("lane.add",n),n.newLane},rn.prototype.splitLane=function(e,t){this._commandStack.execute("lane.split",{shape:e,count:t})},rn.prototype.makeCollaboration=function(){var e=this._create("root",{type:"bpmn:Collaboration"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},rn.prototype.makeProcess=function(){var e=this._create("root",{type:"bpmn:Process"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},rn.prototype.updateLaneRefs=function(e,t){this._commandStack.execute("lane.updateRefs",{flowNodeShapes:e,laneShapes:t})},rn.prototype.updateCategoryValueRefs=function(e,t){this._commandStack.execute("group.updateRefs",{affectedFlowElements:e,affectedGroupEntries:t})},rn.prototype.claimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t,claiming:!0})},rn.prototype.unclaimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t})},rn.prototype.setColor=function(e,t){e.length||(e=[e]),this._commandStack.execute("element.setColor",{elements:e,colors:t})};function Pv(){}Pv.prototype.layoutConnection=function(e,t){return t=t||{},[t.connectionStart||Le(t.source||e.source),t.connectionEnd||Le(t.target||e.target)]};var Fc=20,XT=5,jc=Math.round,Av=20,ZT={"h:h":20,"v:v":20,"h:v":-10,"v:h":-10};function QT(e,t){return!{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/./,v:/./}[t].test(e)}function JT(e,t){return{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/left|right/,v:/top|bottom/}[e].test(t)}function Tv(e,t,n){var i=en(t,e,XT),r=n.split(":")[0],o=jc((t.x-e.x)/2+e.x),a=jc((t.y-e.y)/2+e.y),s,c,u=JT(r,i),l=/h|r|l/.test(r),f=!1,p=!1;return u?(s=l?{x:o,y:e.y}:{x:e.x,y:a},c=l?"h:h":"v:v"):(f=QT(i,r),c=l?"h:v":"v:h",f?l?(p=a===e.y,s={x:e.x+Fc*(/l/.test(r)?-1:1),y:p?a+Fc:a}):(p=o===e.x,s={x:p?o+Fc:o,y:e.y+Fc*(/t/.test(r)?-1:1)}):s={x:o,y:a}),{waypoints:pf(e,s,c).concat(s),directions:c,turnNextDirections:p}}function eM(e,t,n){return Tv(e,t,n)}function tM(e,t,n){var i=Tv(t,e,Mv(n));return{waypoints:i.waypoints.slice().reverse(),directions:Mv(i.directions),turnNextDirections:i.turnNextDirections}}function nM(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=pf(e.waypoints[e.waypoints.length-1],t.waypoints[0],r);return{waypoints:o,directions:r}}function Mv(e){return e.split(":").reverse().join(":")}function iM(e,t,n){var i=jc((t.x-e.x)/2+e.x),r=jc((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 pf(e,t,n){if(n=n||"h:h",!fM(n))throw new Error("unknown directions: <"+n+">: must be specified as <start>:<end> with start/end in { h,v,t,r,b,l }");if(Ov(n)){var i=eM(e,t,n),r=tM(e,t,n),o=nM(i,r);return[].concat(i.waypoints,o.waypoints,r.waypoints)}return iM(e,t,n)}function rM(e,t,n){var i=pf(e,t,n);return i.unshift(e),i.push(t),Lv(i)}function oM(e,t,n,i,r){var o=r&&r.preferredLayouts||[],a=Z0(o,"straight")[0]||"h:h",s=ZT[a]||0,c=en(e,t,s),u=pM(c,a);n=n||Le(e),i=i||Le(t);var l=u.split(":"),f=Dv(n,e,l[0],dM(c)),p=Dv(i,t,l[1],c);return rM(f,p,u)}function aM(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&&cM(e,t,n,i,o),c||(c=o.connectionEnd&&lM(t,e,i,r),c)||(c=o.connectionStart&&uM(e,t,n,r),c)?c:!o.connectionStart&&!o.connectionEnd&&r&&r.length?r:oM(e,t,n,i,o)}function sM(e,t,n){return e>=t&&e<=n}function kv(e,t,n){var i={x:"width",y:"height"};return sM(t[e],n[e],n[e]+n[i[e]])}function cM(e,t,n,i,r){var o={},a,s;return s=en(e,t),/^(top|bottom|left|right)$/.test(s)?(/top|bottom/.test(s)&&(a="x"),/left|right/.test(s)&&(a="y"),r.preserveDocking==="target"?kv(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:kv(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 uM(e,t,n,i){return ff(e,t,n,i)}function lM(e,t,n,i){var r=i.slice().reverse();return r=ff(e,t,n,r),r?r.reverse():null}function ff(e,t,n,i){function r(l){return l.length<3?!0:l.length>4?!1:!!pt(l,function(f,p){var d=l[p-1];return d&&oa(f,d)<3})}function o(l,f,p){var d=Oi(f,l);switch(d){case"v":return{x:p.x,y:l.y};case"h":return{x:l.x,y:p.y}}return{x:l.x,y:l.y}}function a(l,f,p){var d;for(d=l.length-2;d!==0;d--)if(im(l[d],f,Av)||im(l[d],p,Av))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=ff(e,t,n,u)),c&&Oi(c)?null:c}function pM(e,t){if(Ov(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 fM(e){return e&&/^h|v|t|r|b|l:h|v|t|r|b|l$/.test(e)}function Ov(e){return e&&/t|r|b|l/.test(e)}function dM(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 Dv(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 Lv(e){return e.reduce(function(t,n,i){var r=t[t.length-1],o=e[i+1];return Al(r,o,n,0)||t.push(n),t},[])}var hM=-10,mM=40,gM={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},yM={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},df={top:"bottom","top-right":"bottom-left","top-left":"bottom-right",right:"left",bottom:"top","bottom-right":"top-left","bottom-left":"top-right",left:"right"},Ba={top:"t",right:"r",bottom:"b",left:"l"};function Hc(e){this._elementRegistry=e}_e(Hc,Pv),Hc.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=Iv(r&&r[0],n)),a||(a=Iv(r&&r[r.length-1],i)),(E(e,"bpmn:Association")||E(e,"bpmn:DataAssociation"))&&r&&!Bv(n,i))return[].concat([o],r.slice(1,-1),[a]);var l=Ym(n,s)?gM:yM;return E(e,"bpmn:MessageFlow")?c=bM(n,i,l):(E(e,"bpmn:SequenceFlow")||Bv(n,i))&&(n===i?c={preferredLayouts:RM(n,e,l)}:E(n,"bpmn:BoundaryEvent")?c={preferredLayouts:CM(n,i,a,l)}:Na(n)||Na(i)?c={preferredLayouts:l.subProcess,preserveDocking:xM(n)}:E(n,"bpmn:Gateway")?c={preferredLayouts:l.fromGateway}:E(i,"bpmn:Gateway")?c={preferredLayouts:l.toGateway}:c={preferredLayouts:l.default}),c&&(c=V(c,t),u=Lv(aM(n,i,o,a,r,c))),u||[o,a]};function vM(e){var t=e.host;return en(Le(e),t,hM)}function bM(e,t,n){return{preferredLayouts:n.messageFlow,preserveDocking:_M(e,t)}}function _M(e,t){return E(t,"bpmn:Participant")?"source":E(e,"bpmn:Participant")?"target":Na(t)?"source":Na(e)||E(t,"bpmn:Event")?"target":E(e,"bpmn:Event")?"source":null}function xM(e){return Na(e)?"target":"source"}function Iv(e,t){return e?e.original||e:Le(t)}function Bv(e,t){return E(t,"bpmn:Activity")&&E(e,"bpmn:BoundaryEvent")&&t.businessObject.isForCompensation}function Na(e){return E(e,"bpmn:SubProcess")&&Ke(e)}function zr(e,t){return e===t}function wM(e,t){return t.indexOf(e)!==-1}function ko(e){var t=/right|left/.exec(e);return t&&t[0]}function Oo(e){var t=/top|bottom/.exec(e);return t&&t[0]}function Nv(e,t){return df[e]===t}function EM(e,t){var n=ko(e),i=df[n];return t.indexOf(i)!==-1}function SM(e,t){var n=Oo(e),i=df[n];return t.indexOf(i)!==-1}function $v(e){return e==="right"||e==="left"}function RM(e,t,n){var i=t.waypoints,r=i&&i.length&&en(i[0],e);return r==="top"?n.loop.fromTop:r==="right"?n.loop.fromRight:r==="left"?n.loop.fromLeft:n.loop.fromBottom}function CM(e,t,n,i){var r=Le(e),o=Le(t),a=vM(e),s,c,u=zr(e.host,t),l=wM(a,["top","right","bottom","left"]),f=en(o,r,{x:e.width/2+t.width/2,y:e.height/2+t.height/2});return u?PM(a,l,e,t,n,i):(s=AM(a,f,l,i.isHorizontal),c=TM(a,f,l,i.isHorizontal),[s+":"+c])}function PM(e,t,n,i,r,o){var a=t?e:o.isHorizontal?Oo(e):ko(e),s=Ba[a],c;return t?$v(e)?c=Fv("y",n,i,r)?"h":o.boundaryLoop.alternateHorizontalSide:c=Fv("x",n,i,r)?"v":o.boundaryLoop.alternateVerticalSide:c=o.boundaryLoop.default,[s+":"+c]}function Fv(e,t,n,i){var r=mM;return!(hf(e,i,n,r)||hf(e,i,{x:n.x+n.width,y:n.y+n.height},r)||hf(e,i,Le(t),r))}function hf(e,t,n,i){return Math.abs(t[e]-n[e])<i}function AM(e,t,n,i){if(n)return Ba[e];var r=Oo(e),o=ko(e),a=Oo(t),s=ko(t);if(i){if(zr(r,a)||Nv(o,s))return Ba[r]}else if(zr(o,s)||Nv(r,a))return Ba[o];return Ba[i?o:r]}function TM(e,t,n,i){if(n)return $v(e)?EM(e,t)||zr(e,t)?"h":"v":SM(e,t)||zr(e,t)?"v":"h";var r=Oo(e),o=ko(e),a=Oo(t),s=ko(t);return a&&!s?"v":s&&!a?"h":i?zr(r,a)?"h":"v":zr(o,s)?"v":"h"}Hc.$inject=["elementRegistry"];function jv(e){return V({original:e.point.original||e.point},e.actual)}function mr(e,t){this._elementRegistry=e,this._graphicsFactory=t}mr.$inject=["elementRegistry","graphicsFactory"],mr.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(jv(i)),o.push(jv(r)),o},mr.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}},mr.prototype._getIntersection=function(e,t,n){var i=this._getShapePath(e),r=this._getConnectionPath(t);return aa(i,r,n)},mr.prototype._getConnectionPath=function(e){return this._graphicsFactory.getConnectionPath(e)},mr.prototype._getShapePath=function(e){return this._graphicsFactory.getShapePath(e)},mr.prototype._getGfx=function(e){return this._elementRegistry.getGraphics(e)};const mf={__init__:["modeling","bpmnUpdater"],__depends__:[qP,lA,fA,dA,Qy,hT,gT,wT,Qn,Zp,rv],bpmnFactory:["type",ei],bpmnUpdater:["type",Ln],elementFactory:["type",fr],modeling:["type",rn],layouter:["type",Hc],connectionDocking:["type",mr]};var MM=10,Hv=50,kM=250;function gf(e,t,n,i){for(var r;r=OM(e,n,t);)n=i(t,n,r);return n}function yf(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 OM(e,t,n){var i={x:t.x-n.width/2,y:t.y-n.height/2,width:n.width,height:n.height},r=LM(e);return pt(r,function(o){if(o===n)return!1;var a=en(o,i,MM);return a==="intersect"})}function DM(e,t){t||(t={});function n(h){return h.source===e?1:-1}var i=t.defaultDistance||Hv,r=t.direction||"e",o=t.filter,a=t.getWeight||n,s=t.maxDistance||kM,c=t.reference||"start";o||(o=NM);function u(h,m){return r==="n"?c==="start"?Ae(h).top-Ae(m).bottom:c==="center"?Ae(h).top-Le(m).y:Ae(h).top-Ae(m).top:r==="w"?c==="start"?Ae(h).left-Ae(m).right:c==="center"?Ae(h).left-Le(m).x:Ae(h).left-Ae(m).left:r==="s"?c==="start"?Ae(m).top-Ae(h).bottom:c==="center"?Le(m).y-Ae(h).bottom:Ae(m).bottom-Ae(h).bottom:c==="start"?Ae(m).left-Ae(h).right:c==="center"?Le(m).x-Ae(h).right:Ae(m).right-Ae(h).right}var l=e.incoming.filter(o).map(function(h){var m=a(h),g=m<0?u(h.source,e):u(e,h.source);return{id:h.source.id,distance:g,weight:m}}),f=e.outgoing.filter(o).map(function(h){var m=a(h),g=m>0?u(e,h.target):u(h.target,e);return{id:h.target.id,distance:g,weight:m}}),p=l.concat(f).reduce(function(h,m){return h[m.id+"__weight_"+m.weight]=m,h},{}),d=Cn(p,function(h,m){var g=m.distance,y=m.weight;return g<0||g>s||(h[String(g)]||(h[String(g)]=0),h[String(g)]+=1*y,(!h.distance||h[h.distance]<h[String(g)])&&(h.distance=g)),h},{});return d.distance||i}function LM(e){var t=vf(e);return e.host&&(t=t.concat(vf(e.host))),e.attachers&&(t=t.concat(e.attachers.reduce(function(n,i){return n.concat(vf(i))},[]))),t}function vf(e){return BM(e).concat(IM(e))}function IM(e){return e.incoming.map(function(t){return t.source})}function BM(e){return e.outgoing.map(function(t){return t.target})}function NM(){return!0}var $M=100;function zv(e,t,n){e.on("autoPlace",$M,function(i){var r=i.shape,o=i.source;return FM(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}}zv.$inject=["eventBus","modeling","canvas"];function FM(e,t,n){n||(n={});var i=n.defaultDistance||Hv,r=Le(e),o=Ae(e);return{x:o.right+i+t.width/2,y:r.y}}function Gv(e,t){e.on("autoPlace.end",500,function(n){t.select(n.shape)})}Gv.$inject=["eventBus","selection"];const jM={__init__:["autoPlaceSelectionBehavior"],autoPlace:["type",zv],autoPlaceSelectionBehavior:["type",Gv]};function Vv(e,t,n){var i=Ym(e,n);if(E(t,"bpmn:TextAnnotation"))return zM(e,t,i);if(Ve(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"]))return GM(e,t,i);if(E(t,"bpmn:FlowNode"))return HM(e,t,i)}function HM(e,t,n){var i=Ae(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=DM(e,{filter:function(d){return E(d,"bpmn:SequenceFlow")},direction:o.directionHint}),s=30,c=o.minDistance,u=o.baseOrientation;E(e,"bpmn:BoundaryEvent")&&(u=en(e,e.host,-25),u.indexOf(o.boundaryOrientation)!==-1&&(s*=-1));var l=n?{x:i.right+a+t.width/2,y:r.y+Wv(u,c,o)}:{x:r.x+Wv(u,c,o),y:i.bottom+a+t.height/2},f={margin:s,minDistance:c},p=n?{y:f}:{x:f};return gf(e,t,l,yf(p))}function Wv(e,t,n){return e.includes(n.start)?-1*t:e.includes(n.end)?t:0}function zM(e,t,n){var i=Ae(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};at(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 gf(e,t,r,yf(a))}function GM(e,t,n){var i=Ae(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 gf(e,t,r,yf(a))}function Uv(e,t){e.on("autoPlace",function(n){var i=n.shape,r=n.source;return Vv(r,i,t)})}Uv.$inject=["eventBus","elementRegistry"];const zc={__depends__:[jM],__init__:["bpmnAutoPlace"],bpmnAutoPlace:["type",Uv]},Yv=[Wm,fa,mf,zc];function VM(e={}){Hd(globalThis,e.dom);const t=document.createElement("div");return document.body.appendChild(t),new mo({container:t,moddleExtensions:e.moddleExtensions??fs,additionalModules:[...Yv,...e.additionalModules??[]]})}var WM=new To("ov"),UM=500;function Zt(e,t,n,i){this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=WM,this._overlayDefaults=V({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=YM(n.getContainer()),this._init()}Zt.$inject=["config.overlays","eventBus","canvas","elementRegistry"],Zt.prototype.get=function(e){if(Sn(e)&&(e={id:e}),Sn(e.element)&&(e.element=this._elementRegistry.get(e.element)),e.element){var t=this._getOverlayContainer(e.element,!0);return t?e.type?We(t.overlays,to({type:e.type})):t.overlays.slice():[]}else return e.type?We(this._overlays,to({type:e.type})):e.id?this._overlays[e.id]:null},Zt.prototype.add=function(e,t,n){if(Wt(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},Zt.prototype.remove=function(e){var t=this.get(e)||[];De(t)||(t=[t]);var n=this;N(t,function(i){var r=n._getOverlayContainer(i.element,!0);if(i&&(mi(i.html),mi(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)}})},Zt.prototype.isShown=function(){return this._overlayRoot.style.display!=="none"},Zt.prototype.show=function(){Gc(this._overlayRoot)},Zt.prototype.hide=function(){Gc(this._overlayRoot,!1)},Zt.prototype.clear=function(){this._overlays={},this._overlayContainers=[],Cs(this._overlayRoot)},Zt.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=Dt(t);i=o.x,r=o.y}qv(n,i,r),ln(e.html,"data-container-id",t.id)},Zt.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=Dt(i).width:a=i.width,r=t.right*-1+a}if(t.bottom!==void 0){var s;i.waypoints?s=Dt(i).height:s=i.height,o=t.bottom*-1+s}qv(n,r||0,o||0),this._updateOverlayVisibilty(e,this._canvas.viewbox())},Zt.prototype._createOverlayContainer=function(e){var t=mt('<div class="djs-overlays" />');vn(t,{position:"absolute"}),this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},Zt.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";Kv(this._overlayRoot,n)},Zt.prototype._getOverlayContainer=function(e,t){var n=pt(this._overlayContainers,function(i){return i.element===e});return!n&&!t?this._createOverlayContainer(e):n},Zt.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)),Sn(i)&&(i=mt(i)),o=this._getOverlayContainer(n),r=mt('<div class="djs-overlay" data-overlay-id="'+t+'">'),vn(r,{position:"absolute"}),r.appendChild(i),e.type&&bt(r).add("djs-overlay-"+e.type);var a=this._canvas.findRoot(n),s=this._canvas.getRootElement();Gc(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())},Zt.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&&(Ft(r)&&r>t.scale||Ft(o)&&o<t.scale))&&(c=!1),Gc(a,c),this._updateOverlayScale(e,t)},Zt.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),Ft(i)&&t.scale<i&&(a=(1/t.scale||1)*i),Ft(r)&&t.scale>r&&(a=(1/t.scale||1)*r)),Ft(a)&&(s="scale("+a+","+a+")"),Kv(o,s)},Zt.prototype._updateOverlaysVisibilty=function(e){var t=this;N(this._overlays,function(n){t._updateOverlayVisibilty(n,e)})},Zt.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});N(o,function(c){t.remove(c.id)});var a=t._getOverlayContainer(r);if(a){mi(a.html);var s=t._overlayContainers.indexOf(a);s!==-1&&t._overlayContainers.splice(s,1)}}),e.on("element.changed",UM,function(i){var r=i.element,o=t._getOverlayContainer(r,!0);o&&(N(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&&bt(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 YM(e){var t=mt('<div class="djs-overlay-container" />');return vn(t,{position:"absolute",width:0,height:0}),e.insertBefore(t,e.firstChild),t}function qv(e,t,n){vn(e,{left:t+"px",top:n+"px"})}function Gc(e,t){e.style.display=t===!1?"none":""}function Kv(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach(function(n){e.style[n+"transform"]=t})}const Vc={__init__:["overlays"],overlays:["type",Zt]};function bf(e,t){t.invoke(te,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)})}_e(bf,te),bf.$inject=["canvas","injector"];const qM={__init__:["rootElementsBehavior"],rootElementsBehavior:["type",bf]};function $a(e){return CSS.escape(e)}var KM={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function Xv(e){return e=""+e,e&&e.replace(/[&<>"']/g,function(t){return KM[t]})}var XM="bjs-breadcrumbs-shown";function Zv(e,t,n){var i=mt('<ul class="bjs-breadcrumbs"></ul>'),r=n.getContainer(),o=bt(r);r.appendChild(i);var a=[];e.on("element.changed",function(c){var u=c.element,l=ie(u),f=pt(a,function(p){return p===l});f&&s()});function s(c){c&&(a=ZM(c));var u=a.flatMap(function(f){var p=n.findRoot(_i(f))||n.findRoot(f.id);if(!p&&E(f,"bpmn:Process")){var d=t.find(function(g){var y=ie(g);return y&&y.get("processRef")===f});p=d&&n.findRoot(d.id)}if(!p)return[];var h=Xv(f.name||f.id),m=mt('<li><span class="bjs-crumb"><a title="'+h+'">'+h+"</a></span></li>");return m.addEventListener("click",function(){n.setRootElement(p)}),m});i.innerHTML="";var l=u.length>1;o.toggle(XM,l),u.forEach(function(f){i.appendChild(f)})}e.on("root.set",function(c){s(c.element)})}Zv.$inject=["eventBus","elementRegistry","canvas"];function ZM(e){for(var t=ie(e),n=[],i=t;i;i=i.$parent)(E(i,"bpmn:SubProcess")||E(i,"bpmn:Process"))&&n.push(i);return n.reverse()}function Qv(e,t){var n=null,i=new QM;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,!(!E(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})}Qv.$inject=["eventBus","canvas"];function QM(){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 Jv={x:180,y:160};function Gr(e,t){this._eventBus=e,this._moddle=t;var n=this;e.on("import.render.start",1500,function(i,r){n._handleImport(r.definitions)})}Gr.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)})}},Gr.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;E(a,"bpmn:SubProcess")&&!o.isExpanded&&n.push(a),e2(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},Gr.prototype._movePlaneElementsToOrigin=function(e){var t=e.get("planeElement"),n=JM(e),i={x:n.x-Jv.x,y:n.y-Jv.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)})},Gr.prototype._moveToDiPlane=function(e,t){var n=eb(e),i=n.plane.get("planeElement");i.splice(i.indexOf(e),1),t.get("planeElement").push(e)},Gr.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},Gr.$inject=["eventBus","moddle"];function eb(e){return E(e,"bpmndi:BPMNDiagram")?e:eb(e.$parent)}function JM(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=Ae(n.bounds);t.top=Math.min(i.top,t.top),t.left=Math.min(i.left,t.left)}}),Is(t)}function e2(e,t){var n=e.$parent;return!(!E(n,"bpmn:SubProcess")||n===t.bpmnElement||Ve(e,["bpmn:DataInputAssociation","bpmn:DataOutputAssociation"]))}var Wc=250,t2='<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>',n2="bjs-drilldown-empty";function gr(e,t,n,i,r){te.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",Wc,function(a){var s=a.shape;o._canDrillDown(s)?o._addOverlay(s):o._removeOverlay(s)},!0),this.reverted("shape.toggleCollapse",Wc,function(a){var s=a.shape;o._canDrillDown(s)?o._addOverlay(s):o._removeOverlay(s)},!0),this.executed(["shape.create","shape.move","shape.delete"],Wc,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"],Wc,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)})})}_e(gr,te),gr.prototype._updateDrilldownOverlay=function(e){var t=this._canvas;if(e){var n=t.findRoot(e);n&&this._updateOverlayVisibility(n)}},gr.prototype._canDrillDown=function(e){var t=this._canvas;return E(e,"bpmn:SubProcess")&&t.findRoot(_i(e))},gr.prototype._updateOverlayVisibility=function(e){var t=this._overlays,n=ie(e),i=t.get({element:n.id,type:"drilldown"})[0];if(i){var r=n&&n.get("flowElements")&&n.get("flowElements").length;bt(i.html).toggle(n2,!r)}},gr.prototype._addOverlay=function(e){var t=this._canvas,n=this._overlays,i=ie(e),r=n.get({element:e,type:"drilldown"});r.length&&this._removeOverlay(e);var o=mt('<button type="button" class="bjs-drilldown">'+t2+"</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(_i(e)))}),n.add(e,"drilldown",{position:{bottom:-7,right:-8},html:o}),this._updateOverlayVisibility(e)},gr.prototype._removeOverlay=function(e){var t=this._overlays;t.remove({element:e,type:"drilldown"})},gr.$inject=["canvas","eventBus","elementRegistry","overlays","translate"];const i2={__depends__:[Vc,Zp,qM],__init__:["drilldownBreadcrumbs","drilldownOverlayBehavior","drilldownCentering","subprocessCompatibility"],drilldownBreadcrumbs:["type",Zv],drilldownCentering:["type",Qv],drilldownOverlayBehavior:["type",gr],subprocessCompatibility:["type",Gr]};function yr(e){_t.call(this,e)}_e(yr,_t),yr.prototype._modules=[Wm,i2,Vc,Qn,fa],yr.prototype._moddleExtensions={};var Uc="keyboard.keydown",r2="keyboard.keyup",o2=1e3,tb="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 bn(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(tb));var i=e&&e.bind!==!1;t.on("canvas.init",function(r){n._target=r.svg,i&&n.bind(),n._fire("init")})}bn.$inject=["config.keyboard","eventBus"],bn.prototype._keydownHandler=function(e){this._keyHandler(e,Uc)},bn.prototype._keyupHandler=function(e){this._keyHandler(e,r2)},bn.prototype._keyHandler=function(e,t){var n;if(!this._isEventIgnored(e)){var i={keyEvent:e};n=this._eventBus.fire(t||Uc,i),n&&e.preventDefault()}},bn.prototype._isEventIgnored=function(e){return!1},bn.prototype.bind=function(e){e&&console.error("unsupported argument <node>",new Error(tb)),this.unbind(),e=this._node=this._target,$e.bind(e,"keydown",this._keydownHandler),$e.bind(e,"keyup",this._keyupHandler),this._fire("bind")},bn.prototype.getBinding=function(){return this._node},bn.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),$e.unbind(e,"keydown",this._keydownHandler),$e.unbind(e,"keyup",this._keyupHandler)),this._node=null},bn.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},bn.prototype.addListener=function(e,t,n){Ut(e)&&(n=t,t=e,e=o2),this._eventBus.on(n||Uc,e,t)},bn.prototype.removeListener=function(e,t){this._eventBus.off(t||Uc,e)},bn.prototype.hasModifier=CA,bn.prototype.isCmd=On,bn.prototype.isShift=jp,bn.prototype.isKey=zt;var a2=500;function Do(e,t){var n=this;e.on("editorActions.init",a2,function(i){var r=i.editorActions;n.registerBindings(t,r)})}Do.$inject=["eventBus","keyboard"],Do.prototype.registerBindings=function(e,t){function n(i,r){t.isRegistered(i)&&e.addListener(r)}n("undo",function(i){var r=i.keyEvent;if(kA(r))return t.trigger("undo"),!0}),n("redo",function(i){var r=i.keyEvent;if(OA(r))return t.trigger("redo"),!0}),n("copy",function(i){var r=i.keyEvent;if(PA(r))return t.trigger("copy"),!0}),n("paste",function(i){var r=i.keyEvent;if(AA(r))return t.trigger("paste"),!0}),n("duplicate",function(i){var r=i.keyEvent;if(TA(r))return t.trigger("duplicate"),!0}),n("cut",function(i){var r=i.keyEvent;if(MA(r))return t.trigger("cut"),!0}),n("stepZoom",function(i){var r=i.keyEvent;if(zt(["+","Add","="],r)&&On(r))return t.trigger("stepZoom",{value:1}),!0}),n("stepZoom",function(i){var r=i.keyEvent;if(zt(["-","Subtract"],r)&&On(r))return t.trigger("stepZoom",{value:-1}),!0}),n("zoom",function(i){var r=i.keyEvent;if(zt("0",r)&&On(r))return t.trigger("zoom",{value:1}),!0}),n("removeSelection",function(i){var r=i.keyEvent;if(zt(["Backspace","Delete","Del"],r))return t.trigger("removeSelection"),!0})};const _f={__init__:["keyboard","keyboardBindings"],keyboard:["type",bn],keyboardBindings:["type",Do]};var s2={moveSpeed:50,moveSpeedAccelerated:200};function nb(e,t,n){var i=this;this._config=V({},s2,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})}}nb.$inject=["config.keyboardMove","keyboard","canvas"];const ib={__depends__:[_f],__init__:["keyboardMove"],keyboardMove:["type",nb]};var c2=15;function rb(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=Nr(s),f=ci(l,c);if(!n.dragging&&u2(f)>c2&&(n.dragging=!0,u===0&&ky(e),bc("grab")),n.dragging){var p=n.last||n.start;f=ci(l,p),t.scroll({dx:f.x,dy:f.y}),n.last=l}s.preventDefault()}function o(s){$e.unbind(document,"mousemove",r),$e.unbind(document,"mouseup",o),n=null,My()}function a(s){if(!kr(s.target,".djs-draggable")){var c=s.button;if(!(c>=2||s.ctrlKey||s.shiftKey||s.altKey))return n={button:c,start:Nr(s)},$e.bind(document,"mousemove",r),$e.bind(document,"mouseup",o),!0}}this.isActive=function(){return!!n}}rb.$inject=["eventBus","canvas"];function u2(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}const ob={__init__:["moveCanvas"],moveCanvas:["type",rb]};function ab(e,t){var n=Nl(e.min),i=Nl(e.max),r=Math.abs(n)+Math.abs(i);return r/t}function l2(e,t){return Math.max(e.min,Math.min(e.max,t))}var p2=Math.sign||function(e){return e>=0?1:-1},xf={min:.2,max:4},sb=10,f2=.1,d2=.75;function Ei(e,t,n){e=e||{},this._enabled=!1,this._canvas=n,this._container=n._container,this._handleWheel=xn(this._handleWheel,this),this._totalDelta=0,this._scale=e.scale||d2;var i=this;t.on("canvas.mouseover",function(){i._init(e.enabled!==!1)}),t.on("canvas.mouseout",function(){i._init(!1)})}Ei.$inject=["config.zoomScroll","eventBus","canvas"],Ei.prototype.scroll=function(t){this._canvas.scroll(t)},Ei.prototype.reset=function(){this._canvas.zoom("fit-viewport")},Ei.prototype.zoom=function(t,n){var i=ab(xf,sb*2);this._totalDelta+=t,Math.abs(this._totalDelta)>f2&&(this._zoom(t,n,i),this._totalDelta=0)},Ei.prototype._handleWheel=function(t){if(this._enabled){var n=this._container;t.preventDefault();var i=t.ctrlKey||$g()&&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))*p2(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)}},Ei.prototype.stepZoom=function(t,n){var i=ab(xf,sb);this._zoom(t,n,i)},Ei.prototype._zoom=function(e,t,n){var i=this._canvas,r=e>0?1:-1,o=Nl(i.zoom()),a=Math.round(o/n)*n;a+=n*r;var s=Math.pow(10,a);i.zoom(l2(xf,s),t)},Ei.prototype.toggle=function(t){var n=this._container,i=this._handleWheel,r=this._enabled;return typeof t>"u"&&(t=!r),r!==t&&$e[t?"bind":"unbind"](n,"wheel",i,!1),this._enabled=t,t},Ei.prototype._init=function(e){this.toggle(e)};const cb={__init__:["zoomScroll"],zoomScroll:["type",Ei]};function Fa(e){yr.call(this,e)}_e(Fa,yr),Fa.prototype._navigationModules=[ib,ob,cb],Fa.prototype._modules=[].concat(yr.prototype._modules,Fa.prototype._navigationModules);function wf(e){return e&&e[e.length-1]}function ub(e){return e.y}function lb(e){return e.x}var h2={left:lb,center:lb,right:function(e){return e.x+e.width},top:ub,middle:ub,bottom:function(e){return e.y+e.height}};function Lo(e,t){this._modeling=e,this._rules=t}Lo.$inject=["modeling","rules"],Lo.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}},Lo.prototype._isType=function(e,t){return t.indexOf(e)!==-1},Lo.prototype._alignmentPosition=function(e,t){var n=this._getOrientationDetails(e),i=n.axis,r=n.dimension,o={},a={},s=!1,c,u,l;function f(p,d){return Math.round((p[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=wf(t),o[e]=l[i]+l[r];else if(this._isType(e,["center","middle"])){if(N(t,function(p){var d=p[i]+Math.round(p[r]/2);a[d]?a[d].elements.push(p):a[d]={elements:[p],center:d}}),c=li(a,function(p){return p.elements.length>1&&(s=!0),p.elements.length}),s)return o[e]=wf(c).center,o;u=t[0],t=li(t,function(p){return p[i]+p[r]}),l=wf(t),o[e]=f(u,l)}return o},Lo.prototype.trigger=function(e,t){var n=this._modeling,i,r=We(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=h2[t],a=li(r,o),s=this._alignmentPosition(t,a);n.alignElements(a,s)}};const m2={__init__:["alignElements"],alignElements:["type",Lo]},g2=new To;function Io(e){this._scheduled={},e.on("diagram.destroy",()=>{Object.keys(this._scheduled).forEach(t=>{this.cancel(t)})})}Io.$inject=["eventBus"],Io.prototype.schedule=function(e,t=g2.next()){this.cancel(t);const n=this._schedule(e,t);return this._scheduled[t]=n,n.promise},Io.prototype._schedule=function(e,t){const n=y2();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}},Io.prototype.cancel=function(e){const t=this._scheduled[e];t&&(this._cancel(t),this._scheduled[e]=null)},Io.prototype._cancel=function(e){clearTimeout(e.executionId)};function y2(){const e={};return e.promise=new Promise((t,n)=>{e.resolve=t,e.reject=n}),e}const v2={scheduler:["type",Io]};var b2="djs-element-hidden",Yc=".entry",_2=1e3,pb=8,x2=300;function It(e,t,n,i){this._canvas=e,this._elementRegistry=t,this._eventBus=n,this._scheduler=i,this._current=null,this._init()}It.$inject=["canvas","elementRegistry","eventBus","scheduler"],It.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()},It.prototype._createContainer=function(){var e=mt('<div class="djs-context-pad-parent"></div>');return this._canvas.getContainer().appendChild(e),e},It.prototype.registerProvider=function(e,t){t||(t=e,e=_2),this._eventBus.on("contextPad.getProviders",e,function(n){n.providers.push(t)})},It.prototype.getEntries=function(e){var t=this._getProviders(),n=De(e)?"getMultiElementContextPadEntries":"getContextPadEntries",i={};return N(t,function(r){if(Ut(r[n])){var o=r[n](e);Ut(o)?i=o(i):N(o,function(a,s){i[s]=a})}}),i},It.prototype.trigger=function(e,t,n){var i=this,r,o,a=t.delegateTarget||t.target;if(!a)return t.preventDefault();if(r=ln(a,"data-action"),o=t.originalEvent||t,e==="mouseover"){this._timeout=setTimeout(function(){i._mouseout=i.triggerEntry(r,"hover",o,n)},x2);return}else if(e==="mouseout"){clearTimeout(this._timeout),this._mouseout&&(this._mouseout(),this._mouseout=null);return}return this.triggerEntry(r,e,o,n)},It.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(Ut(s)){if(t==="click")return s(n,r,i)}else if(s[t])return s[t](n,r,i);n.preventDefault()}}}},It.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))}},It.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"contextPad.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},It.prototype._updateAndOpen=function(e){var t=this.getEntries(e),n=this._createHtml(e),i;N(t,function(r,o){var a=r.group||"default",s=mt(r.html||'<div class="entry" draggable="true"></div>'),c;ln(s,"data-action",o),c=rt("[data-group="+$a(a)+"]",n),c||(c=mt('<div class="group"></div>'),ln(c,"data-group",a),n.appendChild(c)),c.appendChild(s),r.className&&w2(s,r.className),r.title&&ln(s,"title",r.title),r.imageUrl&&(i=mt("<img>"),ln(i,"src",r.imageUrl),i.style.width="100%",i.style.height="100%",s.appendChild(i))}),bt(n).add("open"),this._current={entries:t,html:n,target:e},this._updatePosition(),this._updateVisibility(),this._eventBus.fire("contextPad.open",{current:this._current})},It.prototype._createHtml=function(e){var t=this,n=mt('<div class="djs-context-pad"></div>');return Tn.bind(n,Yc,"click",function(i){t.trigger("click",i)}),Tn.bind(n,Yc,"dragstart",function(i){t.trigger("dragstart",i)}),Tn.bind(n,Yc,"mouseover",function(i){t.trigger("mouseover",i)}),Tn.bind(n,Yc,"mouseout",function(i){t.trigger("mouseout",i)}),$e.bind(n,"mousedown",function(i){i.stopPropagation()}),this._container.appendChild(n),this._eventBus.fire("contextPad.create",{target:e,pad:n}),n},It.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()&&S2(this._current.target,e)?t=this._current.html:t=this._createHtml(e),{html:t}},It.prototype.close=function(){this.isOpen()&&(clearTimeout(this._timeout),this._container.innerHTML="",this._eventBus.fire("contextPad.close",{current:this._current}),this._current=null)},It.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&&Pr(e,function(i){return n.includes(i)}):n===e},It.prototype.isShown=function(){return this.isOpen()&&bt(this._current.html).has("open")},It.prototype.show=function(){this.isOpen()&&(bt(this._current.html).add("open"),this._updatePosition(),this._eventBus.fire("contextPad.show",{current:this._current}))},It.prototype.hide=function(){this.isOpen()&&(bt(this._current.html).remove("open"),this._eventBus.fire("contextPad.hide",{current:this._current}))},It.prototype._getPosition=function(e){if(!De(e)&&at(e)){var t=this._canvas.viewbox(),n=E2(e),i=n.x*t.scale-t.x*t.scale,r=n.y*t.scale-t.y*t.scale;return{left:i+pb*this._canvas.zoom(),top:r}}var o=this._canvas.getContainer(),a=o.getBoundingClientRect(),s=this._getTargetBounds(e);return{left:s.right-a.left+pb*this._canvas.zoom(),top:s.top-a.top}},It.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")},It.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,b2)});r?t.hide():t.show()}};this._scheduler.schedule(e,"ContextPad#_updateVisibility")},It.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 w2(e,t){var n=bt(e);t=De(t)?t:t.split(/\s+/g),t.forEach(function(i){n.add(i)})}function E2(e){return e.waypoints[e.waypoints.length-1]}function S2(e,t){return e=De(e)?e:[e],t=De(t)?t:[t],e.length===t.length&&Pr(e,function(n){return t.includes(n)})}const fb={__depends__:[vc,v2,Vc],contextPad:["type",It]};var qc,wt,db,vr,hb,mb,gb,Ef,Kc,ja,yb,Sf,Rf,Cf,Xc={},Zc=[],R2=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,Qc=Array.isArray;function zi(e,t){for(var n in t)e[n]=t[n];return e}function Pf(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function vb(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 Jc(e,a,i,r,null)}function Jc(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??++db,__i:-1,__u:0};return r==null&&wt.vnode!=null&&wt.vnode(o),o}function eu(e){return e.children}function tu(e,t){this.props=e,this.context=t}function Vr(e,t){if(t==null)return e.__?Vr(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"?Vr(e):null}function C2(e){if(e.__P&&e.__d){var t=e.__v,n=t.__e,i=[],r=[],o=zi({},t);o.__v=t.__v+1,wt.vnode&&wt.vnode(o),Af(e.__P,o,t,e.__n,e.__P.namespaceURI,32&t.__u?[n]:null,i,n??Vr(t),!!(32&t.__u),r),o.__v=t.__v,o.__.__k[o.__i]=o,Cb(i,o,r),t.__e=t.__=null,o.__e!=n&&bb(o)}}function bb(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}),bb(e)}function _b(e){(!e.__d&&(e.__d=!0)&&vr.push(e)&&!nu.__r++||hb!=wt.debounceRendering)&&((hb=wt.debounceRendering)||mb)(nu)}function nu(){try{for(var e,t=1;vr.length;)vr.length>t&&vr.sort(gb),e=vr.shift(),t=vr.length,C2(e)}finally{vr.length=nu.__r=0}}function xb(e,t,n,i,r,o,a,s,c,u,l){var f,p,d,h,m,g,y=i&&i.__k||Zc,v=t.length;for(c=P2(n,t,y,c,v),f=0;f<v;f++)(d=n.__k[f])!=null&&(p=d.__i!=-1&&y[d.__i]||Xc,d.__i=f,g=Af(e,d,p,r,o,a,s,c,u,l),h=d.__e,d.ref&&p.ref!=d.ref&&(p.ref&&Tf(p.ref,null,d),l.push(d.ref,d.__c||h,d)),m==null&&h!=null&&(m=h),4&d.__u?(c=wb(d,c,e),p.__e&&(p.__e=null)):typeof d.type=="function"&&g!==void 0?c=g:h&&(c=h.nextSibling),d.__u&=-7);return n.__e=m,c}function P2(e,t,n,i,r){var o,a,s,c,u,l=n.length,f=l,p=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]=Jc(null,a,null,null,null):Qc(a)?a=e.__k[o]=Jc(eu,{children:a},null,null,null):a.constructor===void 0&&a.__b>0?a=e.__k[o]=Jc(a.type,a.props,a.key,a.ref?a.ref:null,a.__v):e.__k[o]=a,c=o+p,a.__=e,a.__b=e.__b+1,s=null,(u=a.__i=A2(a,n,c,f))!=-1&&(f--,(s=n[u])&&(s.__u|=2)),s==null||s.__v==null?(u==-1&&(r>l?p--:r<l&&p++),typeof a.type!="function"&&(a.__u|=4)):u!=c&&(u==c-1?p--:u==c+1?p++:(u>c?p--:p++,a.__u|=4))):e.__k[o]=null;if(f)for(o=0;o<l;o++)(s=n[o])!=null&&(2&s.__u)==0&&(s.__e==i&&(i=Vr(s)),Ab(s,s));return i}function wb(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=wb(i[r],t,n));return t}e.__e!=t&&(t&&e.type&&!t.parentNode&&(t=Vr(e)),t=n.insertBefore(e.__e,t||null));do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function A2(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 Eb(e,t,n){t[0]=="-"?e.setProperty(t,n??""):e[t]=n==null?"":typeof n!="number"||R2.test(t)?n:n+"px"}function iu(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||Eb(e.style,t,"");if(n)for(t in n)i&&n[t]==i[t]||Eb(e.style,t,n[t])}else if(t[0]=="o"&&t[1]=="n")o=t!=(t=t.replace(yb,"$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[ja]=i[ja]:(n[ja]=Sf,e.addEventListener(t,o?Cf:Rf,o)):e.removeEventListener(t,o?Cf:Rf,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 Sb(e){return function(t){if(this.l){var n=this.l[t.type+e];if(t[Kc]==null)t[Kc]=Sf++;else if(t[Kc]<n[ja])return;return n(wt.event?wt.event(t):t)}}}function Af(e,t,n,i,r,o,a,s,c,u){var l,f,p,d,h,m,g,y,v,b,_,C,P,D,T,I,k=t.type;if(t.constructor!==void 0)return null;128&n.__u&&(c=!!(32&n.__u),o=[s=t.__e=n.__e]),(l=wt.__b)&&l(t);e:if(typeof k=="function"){f=a.length;try{if(v=t.props,b=k.prototype&&k.prototype.render,_=(l=k.contextType)&&i[l.__c],C=l?_?_.props.value:l.__:i,n.__c?y=(p=t.__c=n.__c).__=p.__E:(b?t.__c=p=new k(v,C):(t.__c=p=new tu(v,C),p.constructor=k,p.render=M2),_&&_.sub(p),p.state||(p.state={}),p.__n=i,d=p.__d=!0,p.__h=[],p._sb=[]),b&&p.__s==null&&(p.__s=p.state),b&&k.getDerivedStateFromProps!=null&&(p.__s==p.state&&(p.__s=zi({},p.__s)),zi(p.__s,k.getDerivedStateFromProps(v,p.__s))),h=p.props,m=p.state,p.__v=t,d)b&&k.getDerivedStateFromProps==null&&p.componentWillMount!=null&&p.componentWillMount(),b&&p.componentDidMount!=null&&p.__h.push(p.componentDidMount);else{if(b&&k.getDerivedStateFromProps==null&&v!==h&&p.componentWillReceiveProps!=null&&p.componentWillReceiveProps(v,C),t.__v==n.__v||!p.__e&&p.shouldComponentUpdate!=null&&p.shouldComponentUpdate(v,p.__s,C)===!1){t.__v!=n.__v&&(p.props=v,p.state=p.__s,p.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(O){O&&(O.__=t)}),Zc.push.apply(p.__h,p._sb),p._sb=[],p.__h.length&&a.push(p),s=Vr(n);break e}p.componentWillUpdate!=null&&p.componentWillUpdate(v,p.__s,C),b&&p.componentDidUpdate!=null&&p.__h.push(function(){p.componentDidUpdate(h,m,g)})}if(p.context=C,p.props=v,p.__P=e,p.__e=!1,P=wt.__r,D=0,b)p.state=p.__s,p.__d=!1,P&&P(t),l=p.render(p.props,p.state,p.context),Zc.push.apply(p.__h,p._sb),p._sb=[];else do p.__d=!1,P&&P(t),l=p.render(p.props,p.state,p.context),p.state=p.__s;while(p.__d&&++D<25);p.state=p.__s,p.getChildContext!=null&&(i=zi(zi({},i),p.getChildContext())),b&&!d&&p.getSnapshotBeforeUpdate!=null&&(g=p.getSnapshotBeforeUpdate(h,m)),T=l!=null&&l.type===eu&&l.key==null?Pb(l.props.children):l,s=xb(e,Qc(T)?T:[T],t,n,i,r,o,a,s,c,u),p.base=t.__e,t.__u&=-161,p.__h.length&&a.push(p),y&&(p.__E=p.__=null)}catch(O){if(a.length=f,t.__v=null,c||o!=null){if(O.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--;)Pf(o[I])}else t.__e=n.__e;t.__k==null&&(t.__k=n.__k||[]),O.then||Rb(t),wt.__e(O,t,n)}}else o==null&&t.__v==n.__v?(t.__k=n.__k,t.__e=n.__e):s=t.__e=T2(n.__e,t,n,i,r,o,a,c,u);return(l=wt.diffed)&&l(t),128&t.__u?void 0:s}function Rb(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some(Rb))}function Cb(e,t,n){for(var i=0;i<n.length;i++)Tf(n[i],n[++i],n[++i]);wt.__c&&wt.__c(t,e),e.some(function(r){try{e=r.__h,r.__h=[],e.some(function(o){o.call(r)})}catch(o){wt.__e(o,r.__v)}})}function Pb(e){return typeof e!="object"||e==null||e.__b>0?e:Qc(e)?e.map(Pb):e.constructor!==void 0?null:zi({},e)}function T2(e,t,n,i,r,o,a,s,c){var u,l,f,p,d,h,m,g=n.props||Xc,y=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(y);e=document.createElementNS(r,v,y.is&&y),s&&(wt.__m&&wt.__m(t,o),s=!1),o=null}if(v==null)g===y||s&&e.data==y||(e.data=y);else{if(o=v=="textarea"&&y.defaultValue!=null?null:o&&qc.call(e.childNodes),!s&&o!=null)for(g={},u=0;u<e.attributes.length;u++)g[(d=e.attributes[u]).name]=d.value;for(u in g)d=g[u],u=="dangerouslySetInnerHTML"?f=d:u=="children"||u in y||u=="value"&&"defaultValue"in y||u=="checked"&&"defaultChecked"in y||iu(e,u,null,d,r);for(u in y)d=y[u],u=="children"?p=d:u=="dangerouslySetInnerHTML"?l=d:u=="value"?h=d:u=="checked"?m=d:s&&typeof d!="function"||g[u]===d||iu(e,u,d,g[u],r);if(l)s||f&&(l.__html==f.__html||l.__html==e.innerHTML)||(e.innerHTML=l.__html),t.__k=[];else if(f&&(e.innerHTML=""),xb(t.type=="template"?e.content:e,Qc(p)?p:[p],t,n,i,v=="foreignObject"?"http://www.w3.org/1999/xhtml":r,o,a,o?o[0]:n.__k&&Vr(n,0),s,c),o!=null)for(u=o.length;u--;)Pf(o[u]);s&&v!="textarea"||(u="value",v=="progress"&&h==null?e.removeAttribute("value"):h!=null&&(h!==e[u]||v=="progress"&&!h||v=="option"&&h!=g[u])&&iu(e,u,h,g[u],r),u="checked",m!=null&&m!=e[u]&&iu(e,u,m,g[u],r))}return e}function Tf(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){wt.__e(r,n)}}function Ab(e,t,n){var i,r;if(wt.unmount&&wt.unmount(e),(i=e.ref)&&(i.current&&i.current!=e.__e||Tf(i,null,t)),(i=e.__c)!=null){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(o){wt.__e(o,t)}i.base=i.__P=i.__n=null}if(i=e.__k)for(r=0;r<i.length;r++)i[r]&&Ab(i[r],t,n||typeof e.type!="function");n||Pf(e.__e),e.__c=e.__=e.__e=void 0}function M2(e,t,n){return this.constructor(e,n)}function Tb(e,t,n){var i,r,o,a;t==document&&(t=document.documentElement),wt.__&&wt.__(e,t),r=(i=!1)?null:t.__k,o=[],a=[],Af(t,e=t.__k=vb(eu,null,[e]),r||Xc,Xc,t.namespaceURI,r?null:t.firstChild?qc.call(t.childNodes):null,o,r?r.__e:t.firstChild,i,a),Cb(o,e,a),e.props.children=null}qc=Zc.slice,wt={__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}},db=0,tu.prototype.setState=function(e,t){var n;n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=zi({},this.state),typeof e=="function"&&(e=e(zi({},n),this.props)),e&&zi(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),_b(this))},tu.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),_b(this))},tu.prototype.render=eu,vr=[],mb=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,gb=function(e,t){return e.__v.__b-t.__v.__b},nu.__r=0,Ef=Math.random().toString(8),Kc="__d"+Ef,ja="__a"+Ef,yb=/(PointerCapture)$|Capture$/i,Sf=0,Rf=Sb(!1),Cf=Sb(!0);var Mb=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,Mb(e,s,n,["",null])),i.push(r),s[0]?t[0]|=2:(t[o-2]=0,t[o]=r)):i.push(s)}return i},kb=new Map;function k2(e){var t=kb.get(this);return t||(t=new Map,kb.set(this,t)),(t=Mb(this,t.get(e)||(t.set(e,t=(function(n){for(var i,r,o=1,a="",s="",c=[0],u=function(p){o===1&&(p||(a=a.replace(/^\s*\n\s*|\s*\n\s*$/g,"")))?c.push(0,p,a):o===3&&(p||a)?(c.push(3,p,a),o=2):o===2&&a==="..."&&p?c.push(4,p,0):o===2&&a&&!p?c.push(5,0,!0,a):o>=5&&((a||!p&&o===5)&&(c.push(o,0,a,r),o=6),p&&(c.push(o,p,0,r),o=6)),a=""},l=0;l<n.length;l++){l&&(o===1&&u(),u(l));for(var f=0;f<n[l].length;f++)i=n[l][f],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][f+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 ct=k2.bind(vb),Bo,Bt,Mf,Ob,Ha=0,Db=[],Gt=wt,Lb=Gt.__b,Ib=Gt.__r,Bb=Gt.diffed,Nb=Gt.__c,$b=Gt.unmount,Fb=Gt.__;function ru(e,t){Gt.__h&&Gt.__h(Bt,e,Ha||t),Ha=0;var n=Bt.__H||(Bt.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({}),n.__[e]}function kf(e){return Ha=1,O2(Hb,e)}function O2(e,t,n){var i=ru(Bo++,2);if(i.t=e,!i.__c&&(i.__=[Hb(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=Bt,!Bt.__f)){var r=function(s,c,u){if(!i.__c.__H)return!0;var l=!1,f=i.__c.props!==s;if(i.__c.__H.__.some(function(d){if(d.__N){l=!0;var h=d.__[0];d.__=d.__N,d.__N=void 0,h!==d.__[0]&&(f=!0)}}),o){var p=o.call(this,s,c,u);return l?p||f:p}return!l||f};Bt.__f=!0;var o=Bt.shouldComponentUpdate,a=Bt.componentWillUpdate;Bt.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)},Bt.shouldComponentUpdate=r}return i.__N||i.__}function ou(e,t){var n=ru(Bo++,3);!Gt.__s&&Lf(n.__H,t)&&(n.__=e,n.u=t,Bt.__H.__h.push(n))}function Of(e,t){var n=ru(Bo++,4);!Gt.__s&&Lf(n.__H,t)&&(n.__=e,n.u=t,Bt.__h.push(n))}function au(e){return Ha=5,Gi(function(){return{current:e}},[])}function Gi(e,t){var n=ru(Bo++,7);return Lf(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function za(e,t){return Ha=8,Gi(function(){return e},t)}function D2(){for(var e;e=Db.shift();){var t=e.__H;if(e.__P&&t)try{t.__h.some(su),t.__h.some(Df),t.__h=[]}catch(n){t.__h=[],Gt.__e(n,e.__v)}}}Gt.__b=function(e){Bt=null,Lb&&Lb(e)},Gt.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),Fb&&Fb(e,t)},Gt.__r=function(e){Ib&&Ib(e),Bo=0;var t=(Bt=e.__c).__H;t&&(Mf===Bt?(t.__h=[],Bt.__h=[],t.__.some(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(t.__h.some(su),t.__h.some(Df),t.__h=[],Bo=0)),Mf=Bt},Gt.diffed=function(e){Bb&&Bb(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(Db.push(t)!==1&&Ob===Gt.requestAnimationFrame||((Ob=Gt.requestAnimationFrame)||L2)(D2)),t.__H.__.some(function(n){n.u&&(n.__H=n.u,n.u=void 0)})),Mf=Bt=null},Gt.__c=function(e,t){t.some(function(n){try{n.__h.some(su),n.__h=n.__h.filter(function(i){return!i.__||Df(i)})}catch(i){t.some(function(r){r.__h&&(r.__h=[])}),t=[],Gt.__e(i,n.__v)}}),Nb&&Nb(e,t)},Gt.unmount=function(e){$b&&$b(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.some(function(i){try{su(i)}catch(r){t=r}}),n.__H=void 0,t&&Gt.__e(t,n.__v))};var jb=typeof requestAnimationFrame=="function";function L2(e){var t,n=function(){clearTimeout(i),jb&&cancelAnimationFrame(t),setTimeout(e)},i=setTimeout(n,35);jb&&(t=requestAnimationFrame(n))}function su(e){var t=Bt,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Bt=t}function Df(e){var t=Bt;e.__c=e.__(),Bt=t}function Lf(e,t){return!e||e.length!==t.length||t.some(function(n,i){return n!==e[i]})}function Hb(e,t){return typeof t=="function"?t(e):t}function I2(e){const{navigationStack:t,setNavigationStack:n}=e,i=Gi(()=>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 ct`
12
12
  <div class="djs-popup-breadcrumbs">
13
- ${r&&st`
13
+ ${r&&ct`
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)=>st`
26
+ ${i.map((a,s)=>ct`
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&&st`
38
+ ${o&&ct`
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 jb(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=jb(e[t]))&&(i&&(i+=" "),i+=n)}else for(n in e)e[n]&&(i&&(i+=" "),i+=n);return i}function ou(){for(var e,t,n=0,i="",r=arguments.length;n<r;n++)(e=arguments[n])&&(t=jb(e))&&(i&&(i+=" "),i+=t);return i}function O2(e){const{headerEntries:t,onSelect:n,selectedEntry:i,setSelectedEntry:r,title:o}=e,a=Gi(()=>D2(t),[t]),s=u=>u.action&&!u.disabled,c=(u,l)=>{if(s(l))return n(u,l)};return st`
44
+ `}function zb(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=zb(e[t]))&&(i&&(i+=" "),i+=n)}else for(n in e)e[n]&&(i&&(i+=" "),i+=n);return i}function cu(){for(var e,t,n=0,i="",r=arguments.length;n<r;n++)(e=arguments[n])&&(t=zb(e))&&(i&&(i+=" "),i+=t);return i}function B2(e){const{headerEntries:t,onSelect:n,selectedEntry:i,setSelectedEntry:r,title:o}=e,a=Gi(()=>N2(t),[t]),s=u=>u.action&&!u.disabled,c=(u,l)=>{if(s(l))return n(u,l)};return ct`
45
45
  <div class="djs-popup-header">
46
46
  <h3 class="djs-popup-title" title=${o}>${o}</h3>
47
- ${a.map(u=>st`
47
+ ${a.map(u=>ct`
48
48
  <ul key=${u.id} class="djs-popup-header-group" data-header-group=${u.id}>
49
49
 
50
- ${u.entries.map(l=>st`
50
+ ${u.entries.map(l=>ct`
51
51
  <li key=${l.id}>
52
52
  <${s(l)?"button":"span"}
53
- class=${L2(l,l===i)}
53
+ class=${$2(l,l===i)}
54
54
  onClick=${f=>c(f,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&&st`<img class="djs-popup-entry-icon" src=${l.imageUrl} alt="" />`||l.imageHtml&&st`<div class="djs-popup-entry-icon" dangerouslySetInnerHTML=${{__html:l.imageHtml}} />`}
64
- ${l.label?st`
63
+ ${l.imageUrl&&ct`<img class="djs-popup-entry-icon" src=${l.imageUrl} alt="" />`||l.imageHtml&&ct`<div class="djs-popup-entry-icon" dangerouslySetInnerHTML=${{__html:l.imageHtml}} />`}
64
+ ${l.label?ct`
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 D2(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 L2(e,t){return ou("entry",e.className,e.active?"active":"",e.disabled?"disabled":"",t?"selected":"")}function Hb(e,t){return`${e}-entry-${t.id}`}function I2(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 st`
73
+ `}function N2(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 $2(e,t){return cu("entry",e.className,e.active?"active":"",e.disabled?"disabled":"",t?"selected":"")}function Gb(e,t){return`${e}-entry-${t.id}`}function F2(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 ct`
74
74
  <li
75
- class=${ou("entry",{selected:i,disabled:n.disabled})}
75
+ class=${cu("entry",{selected:i,disabled:n.disabled})}
76
76
  data-id=${n.id}
77
- id=${Hb(t,n)}
77
+ id=${Gb(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=${ou("djs-popup-entry-name",n.className)}
91
+ class=${cu("djs-popup-entry-name",n.className)}
92
92
  >
93
- ${n.imageUrl&&st`<img class="djs-popup-entry-icon" src=${n.imageUrl} alt="" />`||n.imageHtml&&st`<div class="djs-popup-entry-icon" dangerouslySetInnerHTML=${{__html:n.imageHtml}} />`}
93
+ ${n.imageUrl&&ct`<img class="djs-popup-entry-icon" src=${n.imageUrl} alt="" />`||n.imageHtml&&ct`<div class="djs-popup-entry-icon" dangerouslySetInnerHTML=${{__html:n.imageHtml}} />`}
94
94
 
95
- ${n.label?st`
95
+ ${n.label?ct`
96
96
  <span class="djs-popup-label">
97
97
  ${n.label}
98
98
  </span>
99
99
  `:null}
100
100
 
101
- ${n.documentationRef&&st`
101
+ ${n.documentationRef&&ct`
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&&st`
118
+ ${n.description&&ct`
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&&st`
126
+ ${n.entries&&ct`
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 B2(e){const{selectedEntry:t,setSelectedEntry:n,groupedEntries:i,keyboardSelection:r,idPrefix:o,id:a,ariaLabel:s,tabIndex:c,ariaActivedescendant:u,...l}=e,f=iu();Tf(()=>{if(!r||!r.current)return;const h=f.current;if(!h)return;const m=h.querySelector(".selected");m&&N2(m)},[t]);const p=()=>{r.current=!1},d=h=>{r.current||n(h)},g=()=>{r.current||n(null)};return st`
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,f=au();Of(()=>{if(!r||!r.current)return;const m=f.current;if(!m)return;const g=m.querySelector(".selected");g&&H2(g)},[t]);const p=()=>{r.current=!1},d=m=>{r.current||n(m)},h=()=>{r.current||n(null)};return ct`
135
135
  <div
136
136
  class="djs-popup-results"
137
137
  ref=${f}
@@ -142,34 +142,34 @@
142
142
  aria-activedescendant=${u}
143
143
  onMouseMove=${p}
144
144
  >
145
- ${i.map(h=>st`
146
- ${h.name&&st`
147
- <div key=${h.id} id=${zb(o,h)} class="entry-header" title=${h.name}>
148
- ${h.name}
145
+ ${i.map(m=>ct`
146
+ ${m.name&&ct`
147
+ <div key=${m.id} id=${Vb(o,m)} class="entry-header" title=${m.name}>
148
+ ${m.name}
149
149
  </div>
150
150
  `}
151
151
  <ul
152
152
  class="djs-popup-group"
153
- data-group=${h.id}
153
+ data-group=${m.id}
154
154
  role="group"
155
- aria-labelledby=${h.name?zb(o,h):void 0}
155
+ aria-labelledby=${m.name?Vb(o,m):void 0}
156
156
  >
157
- ${h.entries.map(m=>st`
158
- <${I2}
159
- key=${m.id}
157
+ ${m.entries.map(g=>ct`
158
+ <${F2}
159
+ key=${g.id}
160
160
  idPrefix=${o}
161
- entry=${m}
162
- selected=${m===t}
163
- onMouseEnter=${()=>d(m)}
164
- onMouseLeave=${g}
161
+ entry=${g}
162
+ selected=${g===t}
163
+ onMouseEnter=${()=>d(g)}
164
+ onMouseLeave=${h}
165
165
  ...${l}
166
166
  />
167
167
  `)}
168
168
  </ul>
169
169
  `)}
170
170
  </div>
171
- `}function zb(e,t){return`${e}-group-${t.id}`}function N2(e){typeof e.scrollIntoViewIfNeeded=="function"?e.scrollIntoViewIfNeeded():e.scrollIntoView({scrollMode:"if-needed",block:"nearest"})}const $2=new To("djs-popup");function F2(e){const{onClose:t,onSelect:n,className:i,headerEntries:r,position:o,title:a,width:s,scale:c,search:u,emptyPlaceholder:l,searchFn:f,entries:p,onOpened:d,onClosed:g}=e,[h,m]=Af([]);nu(()=>{m([])},[p]);const[x,y]=Af(""),_=x.trim().length>0,S=Gi(()=>z2(p),[p]),P=Gi(()=>Ft(u)?S.length>5:!1,[u,S]),C=Gi(()=>{const W=h.length?h[h.length-1].entries:p;return P?_?f(S.filter(({searchable:q})=>q!==!1),x,{keys:["label","search","description"]}).map(({item:q})=>q):W.filter(({rank:q=0})=>q>=0):W},[P,_,S,x,f,h,p]),L=Gi(()=>_?C.length?[{id:"default",entries:C}]:[]:G2(C),[C,_]),[T,j]=Af(C[0]),k=iu(null),D=iu(!1),z=Gi(()=>$2.next(),[]),ce=`${z}-results`,Ee=T&&Hb(z,T);nu(()=>{const W=k.current;W&&C.includes(W)?j(W):j(C[0]),k.current=null},[C]);const Ye=Ha(W=>{const q=H2(L);let Te=q.indexOf(T)+W;Te<0&&(Te=q.length-1),Te>=q.length&&(Te=0),D.current=!0,j(q[Te])},[L,T]),ze=Ha(W=>{W>0&&T&&T.entries&&(D.current=!0,m(q=>[...q,T])),W<0&&h.length>0&&(D.current=!0,k.current=h[h.length+W],m(q=>q.slice(0,W)))},[T,h]),Y=Ha((W,q,J)=>{if(!(!q||q.disabled))return q.entries?(W.preventDefault(),ze(1)):n(W,q,J)},[n,ze]),ue=Ha(W=>{if(W.key==="Enter"&&T){const q=W.target;return!!kr(q,"a, button",!0)||T.disabled?void 0:Y(W,T)}if(W.key==="Backspace"){const q=W.target;if(!(dl(q,"input")&&q.value!==""))return ze(-1),W.preventDefault()}if(W.key==="ArrowUp")return Ye(-1),W.preventDefault();if(W.key==="ArrowDown")return Ye(1),W.preventDefault();if(W.key==="ArrowRight")return ze(1),W.preventDefault();if(W.key==="ArrowLeft")return ze(-1),W.preventDefault()},[T,Ye,ze,Y]),oe=Ha(W=>{dl(W.target,"input")&&y(()=>W.target.value)},[y]);nu(()=>(d(),()=>{g()}),[]);const le=!_&&h.length>0,Me=(a||r.length>0)&&!le;return st`
172
- <${Gb}
171
+ `}function Vb(e,t){return`${e}-group-${t.id}`}function H2(e){typeof e.scrollIntoViewIfNeeded=="function"?e.scrollIntoViewIfNeeded():e.scrollIntoView({scrollMode:"if-needed",block:"nearest"})}const z2=new To("djs-popup");function G2(e){const{onClose:t,onSelect:n,className:i,headerEntries:r,position:o,title:a,width:s,scale:c,search:u,emptyPlaceholder:l,searchFn:f,entries:p,onOpened:d,onClosed:h}=e,[m,g]=kf([]);ou(()=>{g([])},[p]);const[y,v]=kf(""),b=y.trim().length>0,_=Gi(()=>U2(p),[p]),C=Gi(()=>Ft(u)?_.length>5:!1,[u,_]),P=Gi(()=>{const W=m.length?m[m.length-1].entries:p;return C?b?f(_.filter(({searchable:Y})=>Y!==!1),y,{keys:["label","search","description"]}).map(({item:Y})=>Y):W.filter(({rank:Y=0})=>Y>=0):W},[C,b,_,y,f,m,p]),D=Gi(()=>b?P.length?[{id:"default",entries:P}]:[]:Y2(P),[P,b]),[T,I]=kf(P[0]),k=au(null),O=au(!1),H=Gi(()=>z2.next(),[]),se=`${H}-results`,Ee=T&&Gb(H,T);ou(()=>{const W=k.current;W&&P.includes(W)?I(W):I(P[0]),k.current=null},[P]);const qe=za(W=>{const Y=W2(D);let Te=Y.indexOf(T)+W;Te<0&&(Te=Y.length-1),Te>=Y.length&&(Te=0),O.current=!0,I(Y[Te])},[D,T]),ze=za(W=>{W>0&&T&&T.entries&&(O.current=!0,g(Y=>[...Y,T])),W<0&&m.length>0&&(O.current=!0,k.current=m[m.length+W],g(Y=>Y.slice(0,W)))},[T,m]),q=za((W,Y,J)=>{if(!(!Y||Y.disabled))return Y.entries?(W.preventDefault(),ze(1)):n(W,Y,J)},[n,ze]),ue=za(W=>{if(W.key==="Enter"&&T){const Y=W.target;return!!kr(Y,"a, button",!0)||T.disabled?void 0:q(W,T)}if(W.key==="Backspace"){const Y=W.target;if(!(gl(Y,"input")&&Y.value!==""))return ze(-1),W.preventDefault()}if(W.key==="ArrowUp")return qe(-1),W.preventDefault();if(W.key==="ArrowDown")return qe(1),W.preventDefault();if(W.key==="ArrowRight")return ze(1),W.preventDefault();if(W.key==="ArrowLeft")return ze(-1),W.preventDefault()},[T,qe,ze,q]),oe=za(W=>{gl(W.target,"input")&&v(()=>W.target.value)},[v]);ou(()=>(d(),()=>{h()}),[]);const le=!b&&m.length>0,Me=(a||r.length>0)&&!le;return ct`
172
+ <${Wb}
173
173
  onClose=${t}
174
174
  onKeyup=${oe}
175
175
  onKeydown=${ue}
@@ -177,27 +177,27 @@
177
177
  position=${o}
178
178
  width=${s}
179
179
  scale=${c}
180
- navigationStack=${h}
180
+ navigationStack=${m}
181
181
  >
182
- ${Me&&st`
183
- <${O2}
182
+ ${Me&&ct`
183
+ <${B2}
184
184
  headerEntries=${r}
185
185
  onSelect=${n}
186
186
  selectedEntry=${T}
187
- setSelectedEntry=${j}
187
+ setSelectedEntry=${I}
188
188
  title=${a}
189
189
  />
190
190
  `}
191
- ${le&&st`
192
- <${k2}
193
- navigationStack=${h}
194
- setNavigationStack=${m}
191
+ ${le&&ct`
192
+ <${I2}
193
+ navigationStack=${m}
194
+ setNavigationStack=${g}
195
195
  />
196
196
  `}
197
- ${p.length>0&&st`
197
+ ${p.length>0&&ct`
198
198
  <div class="djs-popup-body">
199
199
 
200
- ${P&&st`
200
+ ${C&&ct`
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=${ce}
211
+ aria-controls=${se}
212
212
  aria-activedescendant=${Ee||void 0}
213
213
  aria-autocomplete="list"
214
214
  />
215
215
  </div>
216
216
  `}
217
217
 
218
- ${_&&st`
218
+ ${b&&ct`
219
219
  <div class="djs-popup-search-count" aria-live="polite">
220
- ${C.length} ${C.length===1?"result":"results"} found
220
+ ${P.length} ${P.length===1?"result":"results"} found
221
221
  </div>
222
222
  `}
223
223
 
224
- <${B2}
225
- groupedEntries=${L}
224
+ <${j2}
225
+ groupedEntries=${D}
226
226
  selectedEntry=${T}
227
- setSelectedEntry=${j}
228
- keyboardSelection=${D}
229
- onAction=${Y}
230
- idPrefix=${z}
231
- id=${ce}
227
+ setSelectedEntry=${I}
228
+ keyboardSelection=${O}
229
+ onAction=${q}
230
+ idPrefix=${H}
231
+ id=${se}
232
232
  ariaLabel=${a||"Results"}
233
- tabIndex=${P?-1:0}
234
- ariaActivedescendant=${P?void 0:Ee||void 0}
233
+ tabIndex=${C?-1:0}
234
+ ariaActivedescendant=${C?void 0:Ee||void 0}
235
235
  />
236
236
 
237
- ${T&&T.documentationRef&&st`
237
+ ${T&&T.documentationRef&&ct`
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&&C.length===0&&st`
258
- <div class="djs-popup-no-results">${Ut(l)?l(x):l}</div>
257
+ ${l&&P.length===0&&ct`
258
+ <div class="djs-popup-no-results">${Ut(l)?l(y):l}</div>
259
259
  `}
260
- </${Gb}>
261
- `}function Gb(e){const{onClose:t,onKeydown:n,onKeyup:i,className:r,children:o,navigationStack:a,position:s}=e,c=iu();return Tf(()=>{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]),Tf(()=>{const u=c.current;if(!u)return;(u.querySelector("input")||u.querySelector('[role="listbox"]')||u).focus()},[a]),nu(()=>{const u=f=>{if(f.key==="Escape")return f.preventDefault(),t()},l=f=>{if(!kr(f.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)}},[]),st`
260
+ </${Wb}>
261
+ `}function Wb(e){const{onClose:t,onKeydown:n,onKeyup:i,className:r,children:o,navigationStack:a,position:s}=e,c=au();return Of(()=>{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]),Of(()=>{const u=c.current;if(!u)return;(u.querySelector("input")||u.querySelector('[role="listbox"]')||u).focus()},[a]),ou(()=>{const u=f=>{if(f.key==="Escape")return f.preventDefault(),t()},l=f=>{if(!kr(f.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)}},[]),ct`
262
262
  <div
263
- class=${ou("djs-popup",r)}
264
- style=${j2(e)}
263
+ class=${cu("djs-popup",r)}
264
+ style=${V2(e)}
265
265
  onKeydown=${n}
266
266
  onKeyup=${i}
267
267
  ref=${c}
@@ -269,10 +269,10 @@
269
269
  >
270
270
  ${o}
271
271
  </div>
272
- `}function j2(e){const{width:t}=e,n=typeof t=="number"?`${t}px`:t;return{transform:`scale(${e.scale})`,width:Ft(t)?n:void 0,maxWidth:Ft(t)?"unset":void 0,"transform-origin":"top left"}}function H2(e){const t=[];return e.forEach(n=>{n.entries.forEach(i=>{t.push(i)})}),t}function z2(e){const t=[];function n(i){i.forEach(r=>{if(r.entries){n(r.entries);return}t.push(r)})}return n(e),t}function G2(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 V2="data-id",Vb=["contextPad.close","canvas.viewbox.changing","commandStack.changed"],W2=1e3;function Et(e,t,n,i){this._eventBus=t,this._canvas=n,this._search=i,this._current=null;var r=Ft(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()})}Et.$inject=["config.popupMenu","eventBus","canvas","search"],Et.prototype._render=function(){const{position:e,providerId:t,entries:n,headerEntries:i,emptyPlaceholder:r,options:o}=this._current,a=Wb(n),s=Object.entries(i).map(([p,d])=>({id:p,...d})),c=e&&(p=>this._ensureVisible(p,e)),u=this._updateScale(this._current.container);Pb(st`
273
- <${F2}
272
+ `}function V2(e){const{width:t}=e,n=typeof t=="number"?`${t}px`:t;return{transform:`scale(${e.scale})`,width:Ft(t)?n:void 0,maxWidth:Ft(t)?"unset":void 0,"transform-origin":"top left"}}function W2(e){const t=[];return e.forEach(n=>{n.entries.forEach(i=>{t.push(i)})}),t}function U2(e){const t=[];function n(i){i.forEach(r=>{if(r.entries){n(r.entries);return}t.push(r)})}return n(e),t}function Y2(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 q2="data-id",Ub=["contextPad.close","canvas.viewbox.changing","commandStack.changed"],K2=1e3;function Et(e,t,n,i){this._eventBus=t,this._canvas=n,this._search=i,this._current=null;var r=Ft(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()})}Et.$inject=["config.popupMenu","eventBus","canvas","search"],Et.prototype._render=function(){const{position:e,providerId:t,entries:n,headerEntries:i,emptyPlaceholder:r,options:o}=this._current,a=Yb(n),s=Object.entries(i).map(([p,d])=>({id:p,...d})),c=e&&(p=>this._ensureVisible(p,e)),u=this._updateScale(this._current.container);Tb(ct`
273
+ <${G2}
274
274
  onClose=${p=>this.close(p)}
275
- onSelect=${(p,d,g)=>this.trigger(p,d,g)}
275
+ onSelect=${(p,d,h)=>this.trigger(p,d,h)}
276
276
  position=${c}
277
277
  className=${t}
278
278
  entries=${a}
@@ -284,7 +284,7 @@
284
284
  searchFn=${this._search}
285
285
  ...${{...o}}
286
286
  />
287
- `,this._current.container)},Et.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()},Et.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()},Et.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)}},Et.prototype.close=function(){this.isOpen()&&(this._emit("close"),this.reset(),this._canvas.restoreFocus(),this._current=null)},Et.prototype.reset=function(){const e=this._current.container;Pb(null,e),mi(e)},Et.prototype._emit=function(e,t){this._eventBus.fire(`popupMenu.${e}`,t)},Et.prototype._onOpened=function(){this._emit("opened")},Et.prototype._onClosed=function(){this._emit("closed")},Et.prototype._createContainer=function(e){var t=this._canvas,n=t.getContainer();const i=mt(`<div class="djs-popup-parent djs-scrollable" data-popup=${e.provider}></div>`);return n.appendChild(i),i},Et.prototype._bindAutoClose=function(){this._eventBus.once(Vb,this.close,this)},Et.prototype._unbindAutoClose=function(){this._eventBus.off(Vb,this.close,this)},Et.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),Ft(n)&&e<n&&(r=n),Ft(i)&&e>i&&(r=i)),r},Et.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}},Et.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},Et.prototype.registerProvider=function(e,t,n){n||(n=t,t=W2),this._eventBus.on("popupMenu.getProviders."+e,t,function(i){i.providers.push(n)})},Et.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"popupMenu.getProviders."+e,providers:[]});return this._eventBus.fire(t),t.providers},Et.prototype._getEntries=function(e,t){var n={};return B(t,function(i){if(!i.getPopupMenuEntries){B(i.getEntries(e),function(o){var a=o.id;if(!a)throw new Error("entry ID is missing");n[a]=pi(o,["id"])});return}var r=i.getPopupMenuEntries(e);Ut(r)?n=r(n):B(r,function(o,a){n[a]=o})}),n},Et.prototype._getHeaderEntries=function(e,t){var n={};return B(t,function(i){if(!i.getPopupMenuHeaderEntries){if(!i.getHeaderEntries)return;B(i.getHeaderEntries(e),function(o){var a=o.id;if(!a)throw new Error("entry ID is missing");n[a]=pi(o,["id"])});return}var r=i.getPopupMenuHeaderEntries(e);Ut(r)?n=r(n):B(r,function(o,a){n[a]=o})}),n},Et.prototype._getEmptyPlaceholder=function(e){const t=e.find(n=>Ut(n.getEmptyPlaceholder));return t&&t.getEmptyPlaceholder()},Et.prototype.isOpen=function(){return!!this._current},Et.prototype.trigger=function(e,t,n="click"){if(e.preventDefault(),!t){let r=kr(e.delegateTarget||e.target,".entry",!0),o=ln(r,V2);t={id:o,...this._getEntry(o)}}const i=t.action;if(this._emit("trigger",{entry:t,event:e})!==!1){if(Ut(i)){if(n==="click")return i(e,t)}else if(i[n])return i[n](e,t)}},Et.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 Wb(e,t=[]){return Object.entries(e).map(([n,i])=>{const r={id:n,...i};return r.entries?r.entries=Wb(r.entries,[...t,...Ub(r.search)]):t.length&&(r.search=[...t,...Ub(r.search)]),r})}function Ub(e){return e?De(e)?e:[e]:[]}function U2(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=q2(o,r,i);return a?{item:o,tokens:a}:[]}).sort(Y2(i))}function q2(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,f)=>{const{tokens:p,matchedWords:d}=Zb(f,t);return{tokens:[...l.tokens,p],matchedWords:{...l.matchedWords,...d}}},{matchedWords:{},tokens:[]}):Zb(s,t);return{tokens:{...o.tokens,[a]:c},matchedWords:{...o.matchedWords,...u}}},{matchedWords:{},tokens:{}});return Object.keys(i).length!==t.length?null:r}function Y2(e){return(t,n)=>{let i=0,r=1;for(const o of e){const a=K2(t.tokens[o],n.tokens[o]);if(a!==0){i+=a*r,r*=qb;continue}const s=X2(t.item[o],n.item[o]);if(s!==0){i+=s*r,r*=qb;continue}}return i}}function K2(e,t){return Yb(t)-Yb(e)}const qb=.5,No={FULL:131.9,START_FULL_WORD:8,START_WORD_PART:7.87,WORD_START:2.19,WORD_PART:1,NO_MATCH:-.07};function Yb(e){const t=e.reduce((s,c)=>s+Kb(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 Kb(e){if(De(e))return Math.max(...e.map(Kb));const t=Math.log(e.value.length);return e.match?(e.start?e.end?No.FULL:e.wordEnd?No.START_FULL_WORD:No.START_WORD_PART:e.wordStart?No.WORD_START:No.WORD_PART)*t:No.NO_MATCH*t}function Xb(e=""){return De(e)?e.join(", "):e}function X2(e,t){return Xb(e).localeCompare(Xb(t))}function Zb(e,t){var u;if(!e)return{tokens:[],matchedWords:{}};const n=[],i={},r=t.map(Z2),o=[`(?<all>${r.join("\\s+")})`,...r].join("|"),a=new RegExp(o,"ig");let s,c=0;for(;s=a.exec(e);){const[l]=s,f=s.index,p=s.index+l.length,d=f===0,g=p===e.length,h=!!((u=s.groups)!=null&&u.all),m=d||/\s/.test(e.charAt(f-1)),x=g||/\s/.test(e.charAt(p));s.index>c&&n.push({value:e.slice(c,s.index),index:c}),n.push({value:l,index:s.index,match:!0,wordStart:m,wordEnd:x,start:d,end:g,all:h});const y=h?t:[l];for(const _ of y)i[_.toLowerCase()]=!0;c=s.index+l.length}return c<e.length&&n.push({value:e.slice(c),index:c}),{tokens:n,matchedWords:i}}function Z2(e){return e.replace(/[/\-\\^$*+?.()|[\]{}]/g,"\\$&")}const Qb={search:["value",U2]},Of={__depends__:[Qb],__init__:["popupMenu"],popupMenu:["type",Et]};var Jb={align:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2000 2000">
287
+ `,this._current.container)},Et.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()},Et.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()},Et.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)}},Et.prototype.close=function(){this.isOpen()&&(this._emit("close"),this.reset(),this._canvas.restoreFocus(),this._current=null)},Et.prototype.reset=function(){const e=this._current.container;Tb(null,e),mi(e)},Et.prototype._emit=function(e,t){this._eventBus.fire(`popupMenu.${e}`,t)},Et.prototype._onOpened=function(){this._emit("opened")},Et.prototype._onClosed=function(){this._emit("closed")},Et.prototype._createContainer=function(e){var t=this._canvas,n=t.getContainer();const i=mt(`<div class="djs-popup-parent djs-scrollable" data-popup=${e.provider}></div>`);return n.appendChild(i),i},Et.prototype._bindAutoClose=function(){this._eventBus.once(Ub,this.close,this)},Et.prototype._unbindAutoClose=function(){this._eventBus.off(Ub,this.close,this)},Et.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),Ft(n)&&e<n&&(r=n),Ft(i)&&e>i&&(r=i)),r},Et.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}},Et.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},Et.prototype.registerProvider=function(e,t,n){n||(n=t,t=K2),this._eventBus.on("popupMenu.getProviders."+e,t,function(i){i.providers.push(n)})},Et.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"popupMenu.getProviders."+e,providers:[]});return this._eventBus.fire(t),t.providers},Et.prototype._getEntries=function(e,t){var n={};return N(t,function(i){if(!i.getPopupMenuEntries){N(i.getEntries(e),function(o){var a=o.id;if(!a)throw new Error("entry ID is missing");n[a]=pi(o,["id"])});return}var r=i.getPopupMenuEntries(e);Ut(r)?n=r(n):N(r,function(o,a){n[a]=o})}),n},Et.prototype._getHeaderEntries=function(e,t){var n={};return N(t,function(i){if(!i.getPopupMenuHeaderEntries){if(!i.getHeaderEntries)return;N(i.getHeaderEntries(e),function(o){var a=o.id;if(!a)throw new Error("entry ID is missing");n[a]=pi(o,["id"])});return}var r=i.getPopupMenuHeaderEntries(e);Ut(r)?n=r(n):N(r,function(o,a){n[a]=o})}),n},Et.prototype._getEmptyPlaceholder=function(e){const t=e.find(n=>Ut(n.getEmptyPlaceholder));return t&&t.getEmptyPlaceholder()},Et.prototype.isOpen=function(){return!!this._current},Et.prototype.trigger=function(e,t,n="click"){if(e.preventDefault(),!t){let r=kr(e.delegateTarget||e.target,".entry",!0),o=ln(r,q2);t={id:o,...this._getEntry(o)}}const i=t.action;if(this._emit("trigger",{entry:t,event:e})!==!1){if(Ut(i)){if(n==="click")return i(e,t)}else if(i[n])return i[n](e,t)}},Et.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 Yb(e,t=[]){return Object.entries(e).map(([n,i])=>{const r={id:n,...i};return r.entries?r.entries=Yb(r.entries,[...t,...qb(r.search)]):t.length&&(r.search=[...t,...qb(r.search)]),r})}function qb(e){return e?De(e)?e:[e]:[]}function X2(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=Z2(o,r,i);return a?{item:o,tokens:a}:[]}).sort(Q2(i))}function Z2(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,f)=>{const{tokens:p,matchedWords:d}=Jb(f,t);return{tokens:[...l.tokens,p],matchedWords:{...l.matchedWords,...d}}},{matchedWords:{},tokens:[]}):Jb(s,t);return{tokens:{...o.tokens,[a]:c},matchedWords:{...o.matchedWords,...u}}},{matchedWords:{},tokens:{}});return Object.keys(i).length!==t.length?null:r}function Q2(e){return(t,n)=>{let i=0,r=1;for(const o of e){const a=J2(t.tokens[o],n.tokens[o]);if(a!==0){i+=a*r,r*=Kb;continue}const s=ek(t.item[o],n.item[o]);if(s!==0){i+=s*r,r*=Kb;continue}}return i}}function J2(e,t){return Xb(t)-Xb(e)}const Kb=.5,No={FULL:131.9,START_FULL_WORD:8,START_WORD_PART:7.87,WORD_START:2.19,WORD_PART:1,NO_MATCH:-.07};function Xb(e){const t=e.reduce((s,c)=>s+Zb(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 Zb(e){if(De(e))return Math.max(...e.map(Zb));const t=Math.log(e.value.length);return e.match?(e.start?e.end?No.FULL:e.wordEnd?No.START_FULL_WORD:No.START_WORD_PART:e.wordStart?No.WORD_START:No.WORD_PART)*t:No.NO_MATCH*t}function Qb(e=""){return De(e)?e.join(", "):e}function ek(e,t){return Qb(e).localeCompare(Qb(t))}function Jb(e,t){var u;if(!e)return{tokens:[],matchedWords:{}};const n=[],i={},r=t.map(tk),o=[`(?<all>${r.join("\\s+")})`,...r].join("|"),a=new RegExp(o,"ig");let s,c=0;for(;s=a.exec(e);){const[l]=s,f=s.index,p=s.index+l.length,d=f===0,h=p===e.length,m=!!((u=s.groups)!=null&&u.all),g=d||/\s/.test(e.charAt(f-1)),y=h||/\s/.test(e.charAt(p));s.index>c&&n.push({value:e.slice(c,s.index),index:c}),n.push({value:l,index:s.index,match:!0,wordStart:g,wordEnd:y,start:d,end:h,all:m});const v=m?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 tk(e){return e.replace(/[/\-\\^$*+?.()|[\]{}]/g,"\\$&")}const e_={search:["value",X2]},If={__depends__:[e_],__init__:["popupMenu"],popupMenu:["type",Et]};var t_={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>`},Q2=900;function $o(e,t,n,i){e.registerProvider(Q2,this),this._contextPad=e,this._popupMenu=t,this._translate=n,this._canvas=i}$o.$inject=["contextPad","popupMenu","translate","canvas"],$o.prototype.getMultiElementContextPadEntries=function(e){var t={};return this._isAllowed(e)&&V(t,this._getEntries(e)),t},$o.prototype._isAllowed=function(e){return!this._popupMenu.isEmpty(e,"align-elements")},$o.prototype._getEntries=function(){var e=this;return{"align-elements":{group:"align-elements",title:e._translate("Align elements"),html:`<div class="entry">${Jb.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)}}}}},$o.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 J2=["left","center","right","top","middle","bottom"];function za(e,t,n,i){this._alignElements=t,this._translate=n,this._popupMenu=e,this._rules=i,e.registerProvider("align-elements",this)}za.$inject=["popupMenu","alignElements","translate","rules"],za.prototype.getPopupMenuEntries=function(e){var t={};return this._isAllowed(e)&&V(t,this._getEntries(e)),t},za.prototype._isAllowed=function(e){return this._rules.allowed("elements.align",{elements:e})},za.prototype._getEntries=function(e){var t=this._alignElements,n=this._translate,i=this._popupMenu,r={};return B(J2,function(o){r["align-elements-"+o]={group:"align",title:n("Align elements "+o),className:"bjs-align-elements-menu-entry",imageHtml:Jb[o],action:function(){t.trigger(e,o),i.close()}}}),r};function au(e){Xn.call(this,e)}au.$inject=["eventBus"],_e(au,Xn),au.prototype.init=function(){this.addRule("elements.align",function(e){var t=e.elements,n=We(t,function(i){return!(i.waypoints||i.host||i.labelTarget)});return n=Ts(n),n.length<2?!1:n})};const ek={__depends__:[p2,lb,Of],__init__:["alignElementsContextPadProvider","alignElementsMenuProvider","bpmnAlignElements"],alignElementsContextPadProvider:["type",$o],alignElementsMenuProvider:["type",za],bpmnAlignElements:["type",au]};function Vi(e,t,n,i){te.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=Lu(Jr(a.closure.topLevel)),c=a.hints,u=c?c.autoResize:!0;if(u!==!1){var l=eo(s,function(f){return f.parent.id});B(l,function(f,p){De(u)&&(f=f.filter(function(d){return lt(u,to({id:d.id}))})),r._expand(f,p)})}}),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)})}Vi.$inject=["eventBus","elementRegistry","modeling","rules"],_e(Vi,te),Vi.prototype._getOptimalBounds=function(e,t){var n=this.getOffset(t),i=this.getPadding(t),r=Ae(Dt(e)),o=Ae(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),Os(V({},o,a))},Vi.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(tk(i,t)){var r=nk(oi(t,["x","y","width","height"]),i);this.resize(t,i,{autoResize:r});var o=t.parent;o&&this._expand([t],o)}}},Vi.prototype.getOffset=function(e){return{top:60,bottom:60,left:100,right:100}},Vi.prototype.getPadding=function(e){return{top:2,bottom:2,left:15,right:15}},Vi.prototype.resize=function(e,t,n){this._modeling.resizeShape(e,t,null,n)};function tk(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}function nk(e,t){var n="";return e=Ae(e),t=Ae(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 su(e){e.invoke(Vi,this)}su.$inject=["injector"],_e(su,Vi),su.prototype.resize=function(e,t,n){w(e,"bpmn:Participant")?this._modeling.resizeLane(e,t,null,n):this._modeling.resizeShape(e,t,null,n)};function Ga(e){Xn.call(this,e);var t=this;this.addRule("element.autoResize",function(n){return t.canResize(n.elements,n.target)})}Ga.$inject=["eventBus"],_e(Ga,Xn),Ga.prototype.canResize=function(e,t){return!1};function cu(e,t){Ga.call(this,e),this._modeling=t}_e(cu,Ga),cu.$inject=["eventBus","modeling"],cu.prototype.canResize=function(e,t){if(w(t.di,"bpmndi:BPMNPlane")||!w(t,"bpmn:Participant")&&!w(t,"bpmn:Lane")&&!w(t,"bpmn:SubProcess"))return!1;var n=!0;return B(e,function(i){if(w(i,"bpmn:Lane")||Ge(i)){n=!1;return}}),n};const ik={__init__:["bpmnAutoResize","bpmnAutoResizeProvider"],bpmnAutoResize:["type",su],bpmnAutoResizeProvider:["type",cu]};function Fo(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()})}Fo.$inject=["config.autoScroll","eventBus","canvas"],Fo.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++)rk(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 rk(e,t,n){return t<e&&e<n}Fo.prototype.stopScroll=function(){clearTimeout(this._scrolling)},Fo.prototype.setOptions=function(e){this._opts=V({},this._opts,e)},Fo.prototype._toBorderPoint=function(e){var t=this._canvas._container.getBoundingClientRect(),n=Nr(e.originalEvent);return{x:n.x-t.left,y:n.y-t.top}};const ok={__depends__:[$i],__init__:["autoScroll"],autoScroll:["type",Fo]};var e_="djs-bendpoint",t_="djs-segment-dragger";function ak(e,t){var n=Nr(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 Df(e,t,n){var i=ak(e,n),r=Zl(t,i);return r}function Lf(e,t){var n=Pe("g");Xe(n).add(e_),Fe(e,n);var i=Pe("circle");xe(i,{cx:0,cy:0,r:4}),Xe(i).add("djs-visual"),Fe(n,i);var r=Pe("circle");return xe(r,{cx:0,cy:0,r:10}),Xe(r).add("djs-hit"),Fe(n,r),t&&Xe(n).add(t),n}function sk(e,t,n,i){var r=Pe("g");Fe(e,r);var o=18,a=6,s=11,c=uk(t,n,i),u=a+s,l=Pe("rect");xe(l,{x:-o/2,y:-a/2,width:o,height:a}),Xe(l).add("djs-visual"),Fe(r,l);var f=Pe("rect");return xe(f,{x:-c/2,y:-u/2,width:c,height:u}),Xe(f).add("djs-hit"),Fe(r,f),Am(r,i==="v"?90:0),r}function n_(e,t,n){var i=Pe("g"),r=Cl(t,n),o=Oi(t,n);return Fe(e,i),sk(i,t,n,o),Xe(i).add(t_),Xe(i).add(o==="h"?"horizontal":"vertical"),en(i,r.x,r.y),i}function If(e){return Math.abs(Math.round(e*2/3))}function ck(e,t){var n=lk(e,t);return ip(e,n)}function uk(e,t,n){var i=t.x-e.x,r=t.y-e.y;return If(n==="h"?i:r)}function lk(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=hg(e,[a,s]);c<i&&(i=c,r=o)}return[n[r],n[r+1]]}function i_(e,t,n,i,r){function o(_,S,P){var C=_.index,L=_.point,T,j,k,D,z,ce;return C<=0||_.bendpoint?!1:(T=S[C-1],j=S[C],k=Cl(T,j),D=Oi(T,j),z=Math.abs(L.x-k.x),ce=Math.abs(L.y-k.y),D&&z<=P&&ce<=P)}function a(_,S){var P=_.waypoints,C,L,T,j;return S.index<=0||S.bendpoint||(C={start:P[S.index-1],end:P[S.index]},L=Oi(C.start,C.end),!L)?null:(L==="h"?T=C.end.x-C.start.x:T=C.end.y-C.start.y,j=If(T)/2,j)}function s(_,S){var P=S.waypoints,C=Df(t,P,_),L;if(C){L=a(S,C);var T;if(o(C,P,L)?T=r.start(_,S,C.index):T=i.start(_,S,C.index,!C.bendpoint),T!==!1)return!0}}function c(_,S,P){$e.bind(_,S,function(C){n.triggerMouseEvent(S,C,P),C.stopPropagation()})}function u(_,S){var P=t.getLayer("overlays"),C=rt('.djs-bendpoints[data-element-id="'+Na(_.id)+'"]',P);return!C&&S&&(C=Pe("g"),xe(C,{"data-element-id":_.id}),Xe(C).add("djs-bendpoints"),Fe(P,C),c(C,"mousedown",_),c(C,"click",_),c(C,"dblclick",_)),C}function l(_,S){return rt('.djs-segment-dragger[data-segment-idx="'+_+'"]',S)}function f(_,S){S.waypoints.forEach(function(P,C){var L=Lf(_);Fe(_,L),en(L,P.x,P.y)}),Lf(_,"floating")}function p(_,S){for(var P=S.waypoints,C,L,T,j=1;j<P.length;j++)C=P[j-1],L=P[j],Oi(C,L)&&(T=n_(_,C,L),xe(T,{"data-segment-idx":j}),c(T,"mousemove",S))}function d(_){B(Rs("."+e_,_),function(S){Ht(S)})}function g(_){B(Rs("."+t_,_),function(S){Ht(S)})}function h(_){var S=u(_);return S||(S=u(_,!0),f(S,_),p(S,_)),S}function m(_){var S=u(_);S&&(g(S),d(S),p(S,_),f(S,_))}function x(_,S){var P=rt(".floating",_),C=S.point;P&&(en(P,C.x,C.y),Xe(P).add("positioned"))}function y(_,S,P){var C=l(S.index,_),L=P[S.index-1],T=P[S.index],j=S.point,k=Cl(L,T),D=Oi(L,T),z,ce;C&&(z=pk(C),ce={x:j.x-k.x,y:j.y-k.y},D==="v"&&(ce={x:ce.y,y:ce.x}),en(z,ce.x,ce.y))}e.on("connection.changed",function(_){m(_.element)}),e.on("connection.remove",function(_){var S=u(_.element);S&&Ht(S)}),e.on("element.marker.update",function(_){var S=_.element,P;S.waypoints&&(P=h(S),_.add?Xe(P).add(_.marker):Xe(P).remove(_.marker))}),e.on("element.mousemove",function(_){var S=_.element,P=S.waypoints,C,L;if(P){if(C=u(S,!0),L=Df(t,P,_.originalEvent),!L)return;x(C,L),L.bendpoint||y(C,L,P)}}),e.on("element.mousedown",function(_){if(cr(_)){var S=_.originalEvent,P=_.element;if(P.waypoints)return s(S,P)}}),e.on("selection.changed",function(_){var S=_.newSelection,P=S[0];P&&P.waypoints&&h(P)}),e.on("element.hover",function(_){var S=_.element;S.waypoints&&h(S)}),e.on("element.out",function(_){var S=_.element;if(S.waypoints){var P=u(S);if(P){var C=rt(".floating",P);C&&Xe(C).remove("positioned")}}}),e.on("element.updateId",function(_){var S=_.element,P=_.newId;if(S.waypoints){var C=u(S);C&&xe(C,{"data-element-id":P})}}),this.addHandles=h,this.updateHandles=m,this.getBendpointsContainer=u,this.getSegmentDragger=l}i_.$inject=["eventBus","canvas","interactionEvents","bendpointMove","connectionSegmentMove"];function pk(e){return rt(".djs-visual",e)}var r_=Math.round,Wr="reconnectStart",Ur="reconnectEnd",Va="updateWaypoints";function Bf(e,t,n,i,r,o){this._injector=e,this.start=function(a,s,c,u){var l=n.getGraphics(s),f=s.source,p=s.target,d=s.waypoints,g;!u&&c===0?g=Wr:!u&&c===d.length-1?g=Ur:g=Va;var h=g===Va?"connection.updateWaypoints":"connection.reconnect",m=r.allowed(h,{connection:s,source:f,target:p});if(m===!1&&(m=r.allowed(h,{connection:s,source:p,target:f})),m!==!1)return i.init(a,"bendpoint.move",{data:{connection:s,connectionGfx:l,context:{allowed:m,bendpointIndex:c,connection:s,source:f,target:p,insert:u,type:g}}})},t.on("bendpoint.move.hover",function(a){var s=a.context,c=s.connection,u=c.source,l=c.target,f=a.hover,p=s.type;s.hover=f;var d;if(f){var g=p===Va?"connection.updateWaypoints":"connection.reconnect";if(d=s.allowed=r.allowed(g,{connection:c,source:p===Wr?f:u,target:p===Ur?f:l}),d){s.source=p===Wr?f:u,s.target=p===Ur?f:l;return}d===!1&&(d=s.allowed=r.allowed(g,{connection:c,source:p===Ur?f:l,target:p===Wr?f:u})),d&&(s.source=p===Ur?f:l,s.target=p===Wr?f: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!==Va&&(s.allowed=!1)}),t.on("bendpoint.move.end",function(a){var s=a.context,c=s.allowed,u=s.bendpointIndex,l=s.connection,f=s.insert,p=l.waypoints.slice(),d=s.source,g=s.target,h=s.type,m=s.hints||{},x={x:r_(a.x),y:r_(a.y)};if(!c)return!1;h===Va?(f?p.splice(u,0,x):p[u]=x,m.bendpointMove={insert:f,bendpointIndex:u},p=this.cropWaypoints(l,p),o.updateWaypoints(l,AS(p),m)):(h===Wr?(m.docking="source",uu(s)&&(m.docking="target",m.newWaypoints=p.reverse())):h===Ur&&(m.docking="target",uu(s)&&(m.docking="source",m.newWaypoints=p.reverse())),o.reconnect(l,d,g,x,m))},this)}Bf.$inject=["injector","eventBus","canvas","dragging","rules","modeling"],Bf.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 uu(e){var t=e.hover,n=e.source,i=e.target,r=e.type;if(r===Wr)return t&&i&&t===i&&n!==i;if(r===Ur)return t&&n&&t===n&&n!==i}var fk="reconnectStart",dk="reconnectEnd",o_="updateWaypoints",Wa="connect-ok",lu="connect-not-ok",a_="connect-hover",s_="djs-updating",c_="djs-dragging",u_=1100;function l_(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,f=l.slice();a.waypoints=l,u&&f.splice(s,0,{x:o.x,y:o.y}),c.waypoints=f;var p=a.draggerGfx=Lf(i.getLayer("overlays"));Xe(p).add("djs-dragging"),i.addMarker(c,c_),i.addMarker(c,s_)}),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,a_),u===o_)return;s?(i.removeMarker(c,lu),i.addMarker(c,Wa)):s===!1&&(i.removeMarker(c,Wa),i.addMarker(c,lu))}}),n.on(["bendpoint.move.out","bendpoint.move.cleanup"],u_,function(o){var a=o.context,s=a.hover,c=a.target;s&&(i.removeMarker(s,a_),i.removeMarker(s,c?Wa:lu))}),n.on("bendpoint.move.move",function(o){var a=o.context,s=a.allowed,c=a.bendpointIndex,u=a.draggerGfx,l=a.hover,f=a.type,p=a.connection,d=p.source,g=p.target,h=p.waypoints.slice(),m={x:o.x,y:o.y},x=a.hints||{},y={};r&&(x.connectionStart&&(y.connectionStart=x.connectionStart),x.connectionEnd&&(y.connectionEnd=x.connectionEnd),f===fk?uu(a)?(y.connectionEnd=y.connectionEnd||m,y.source=g,y.target=l||d,h=h.reverse()):(y.connectionStart=y.connectionStart||m,y.source=l||d,y.target=g):f===dk?uu(a)?(y.connectionStart=y.connectionStart||m,y.source=l||g,y.target=d,h=h.reverse()):(y.connectionEnd=y.connectionEnd||m,y.source=d,y.target=l||g):(y.noCropping=!0,y.noLayout=!0,h[c]=m),f===o_&&(h=e.cropWaypoints(p,h)),y.waypoints=h,r.drawPreview(a,s,y)),en(u,o.x,o.y)},this),n.on(["bendpoint.move.end","bendpoint.move.cancel"],u_,function(o){var a=o.context,s=a.connection,c=a.draggerGfx,u=a.hover,l=a.target,f=a.waypoints;s.waypoints=f,Ht(c),i.removeMarker(s,s_),i.removeMarker(s,c_),u&&(i.removeMarker(u,Wa),i.removeMarker(u,l?Wa:lu)),r&&r.cleanUp(a)})}l_.$inject=["bendpointMove","injector","eventBus","canvas"];var p_="connect-hover",f_="djs-updating";function d_(e,t,n){return Nf(e,t,e[t]+n)}function Nf(e,t,n){return{x:t==="x"?n:e.x,y:t==="y"?n:e.y}}function hk(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 Nf(t,i,s)}function h_(e){return e==="x"?"y":"x"}function m_(e,t,n){var i,r;return e.original?e.original:(i=Le(t),r=h_(n),Nf(e,r,i[r]))}function g_(e,t,n,i,r,o){var a=e.get("connectionDocking",!1);this.start=function(f,p,d){var g,h=n.getGraphics(p),m=d-1,x=d,y=p.waypoints,_=y[m],S=y[x],P=Df(n,y,f),C,L,T;if(C=Oi(_,S),!!C)return L=C==="v"?"x":"y",m===0&&(_=m_(_,p.source,L)),x===y.length-1&&(S=m_(S,p.target,L)),P?T=P.point:T={x:(_.x+S.x)/2,y:(_.y+S.y)/2},g={connection:p,segmentStartIndex:m,segmentEndIndex:x,segmentStart:_,segmentEnd:S,axis:L,dragPosition:T},i.init(f,T,"connectionSegment.move",{cursor:L==="x"?"resize-ew":"resize-ns",data:{connection:p,connectionGfx:h,context:g}})};function s(f,p){if(!a)return p;var d=f.waypoints,g;return f.waypoints=p,g=a.getCroppedWaypoints(f),f.waypoints=d,g}function c(f){r.update("connection",f.connection,f.connectionGfx)}function u(f,p,d){var g=f.newWaypoints,h=f.segmentStartIndex+p,m=g[h],x=f.segmentEndIndex+p,y=g[x],_=h_(f.axis),S=hk(d,m,y,_);en(f.draggerGfx,S.x,S.y)}function l(f,p){var d=0,g=f.filter(function(h,m){return Rl(f[m-1],f[m+1],h)?(d=m<=p?d-1:d,!1):!0});return{waypoints:g,segmentOffset:d}}t.on("connectionSegment.move.start",function(f){var p=f.context,d=f.connection,g=n.getLayer("overlays");p.originalWaypoints=d.waypoints.slice(),p.draggerGfx=n_(g,p.segmentStart,p.segmentEnd),Xe(p.draggerGfx).add("djs-dragging"),n.addMarker(d,f_)}),t.on("connectionSegment.move.move",function(f){var p=f.context,d=p.connection,g=p.segmentStartIndex,h=p.segmentEndIndex,m=p.segmentStart,x=p.segmentEnd,y=p.axis,_=p.originalWaypoints.slice(),S=d_(m,y,f["d"+y]),P=d_(x,y,f["d"+y]),C=_.length,L=0;_[g]=S,_[h]=P;var T,j;g<2&&(T=Jt(d.source,S),g===1?T==="intersect"&&(_.shift(),_[0]=S,L--):T!=="intersect"&&(_.unshift(m),L++)),h>C-3&&(j=Jt(d.target,P),h===C-2?j==="intersect"&&(_.pop(),_[_.length-1]=P):j!=="intersect"&&_.push(x)),p.newWaypoints=d.waypoints=s(d,_),u(p,L,f),p.newSegmentStartIndex=g+L,c(f)}),t.on("connectionSegment.move.hover",function(f){f.context.hover=f.hover,n.addMarker(f.hover,p_)}),t.on(["connectionSegment.move.out","connectionSegment.move.cleanup"],function(f){var p=f.context.hover;p&&n.removeMarker(p,p_)}),t.on("connectionSegment.move.cleanup",function(f){var p=f.context,d=p.connection;p.draggerGfx&&Ht(p.draggerGfx),n.removeMarker(d,f_)}),t.on(["connectionSegment.move.cancel","connectionSegment.move.end"],function(f){var p=f.context,d=p.connection;d.waypoints=p.originalWaypoints,c(f)}),t.on("connectionSegment.move.end",function(f){var p=f.context,d=p.connection,g=p.newWaypoints,h=p.newSegmentStartIndex;g=g.map(function(P){return{original:P.original,x:Math.round(P.x),y:Math.round(P.y)}});var m=l(g,h),x=m.waypoints,y=s(d,x),_=m.segmentOffset,S={segmentMove:{segmentStartIndex:p.segmentStartIndex,newSegmentStartIndex:h+_}};o.updateWaypoints(d,y,S)})}g_.$inject=["injector","eventBus","canvas","dragging","graphicsFactory","modeling"];var mk=Math.abs,y_=Math.round;function gk(e,t,n){n=n===void 0?10:n;var i,r;for(i=0;i<t.length;i++)if(r=t[i],mk(r-e)<=n)return r}function v_(e){return{x:e.x,y:e.y}}function b_(e){return{x:e.x+e.width,y:e.y+e.height}}function ei(e,t){return!e||isNaN(e.x)||isNaN(e.y)?t:{x:y_(e.x+e.width/2),y:y_(e.y+e.height/2)}}function jo(e,t){var n=e.snapped;return n?typeof t=="string"?n[t]:n.x&&n.y:!1}function Nt(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 __(e){return e.children||[]}var yk=Math.abs,x_=Math.round,$f=10;function w_(e){function t(o,a){if(De(o)){for(var s=o.length;s--;)if(yk(o[s]-a)<=$f)return o[s]}else{o=+o;var c=a%o;if(c<$f)return a-c;if(c>o-$f)return a-c+o}return a}function n(o,a){if(o.waypoints)return ck(a,o);if(o.width)return{x:x_(o.width/2+o.x),y:x_(o.height/2+o.y)}}function i(o){var a=o.context,s=a.snapPoints,c=a.connection,u=c.waypoints,l=a.segmentStart,f=a.segmentStartIndex,p=a.segmentEnd,d=a.segmentEndIndex,g=a.axis;if(s)return s;var h=[u[f-1],l,p,u[d+1]];return f<2&&h.unshift(n(c.source,o)),d>u.length-3&&h.unshift(n(c.target,o)),a.snapPoints=s={horizontal:[],vertical:[]},B(h,function(m){m&&(m=m.original||m,g==="y"&&s.horizontal.push(m.y),g==="x"&&s.vertical.push(m.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 f=s-u,p=c-l;V(o,{dx:o.dx-f,dy:o.dy-p,x:u,y:l}),(f||a.vertical.indexOf(s)!==-1)&&Nt(o,"x",u),(p||a.horizontal.indexOf(c)!==-1)&&Nt(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:[]},B(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);!ot(s)||!c||!c.x||!c.y||(Nt(o,"x",c.x),Nt(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,f=o.y,p,d;if(s){p=t(u?s.vertical.concat([u.x]):s.vertical,l),d=t(u?s.horizontal.concat([u.y]):s.horizontal,f);var g=l-p,h=f-d;V(o,{dx:o.dx-g,dy:o.dy-h,x:o.x-g,y:o.y-h}),(g||s.vertical.indexOf(l)!==-1)&&Nt(o,"x",p),(h||s.horizontal.indexOf(f)!==-1)&&Nt(o,"y",d)}})}w_.$inject=["eventBus"];const vk={__depends__:[$i,xi],__init__:["bendpoints","bendpointSnapping","bendpointMovePreview"],bendpoints:["type",i_],bendpointMove:["type",Bf],bendpointMovePreview:["type",l_],connectionSegmentMove:["type",g_],bendpointSnapping:["type",w_]};function E_(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),!Qr(l)){if(l!==!1){s.source=c,s.target=u;return}l=s.canExecute=o(c,u),!Qr(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},f=s.source,p=s.target;if(!c)return!1;var d=null,g={connectionStart:Ff(s)?l:u,connectionEnd:Ff(s)?u:l};Wt(c)&&(d=c),s.connection=n.connect(f,p,d,g)}),this.start=function(a,s,c,u){Wt(c)||(u=c,c=Le(s)),t.init(a,"connect",{autoActivate:u,data:{shape:s,context:{start:s,connectionStart:c}}})}}E_.$inject=["eventBus","dragging","modeling","rules"];function Ff(e){var t=e.hover,n=e.source,i=e.target;return t&&n&&t===n&&n!==i}var bk=1100,_k=900,S_="connect-ok",R_="connect-not-ok";function C_(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,f=o.target,p=o.connectionStart||l,d=o.connectionEnd||{x:r.x,y:r.y},g=p,h=d;Ff(o)&&(g=d,h=p),i.drawPreview(o,a,{source:c||u,target:f||s,connectionStart:g,connectionEnd:h})}),t.on("connect.hover",_k,function(r){var o=r.context,a=r.hover,s=o.canExecute;s!==null&&n.addMarker(a,s?S_:R_)}),t.on(["connect.out","connect.cleanup"],bk,function(r){var o=r.hover;o&&(n.removeMarker(o,S_),n.removeMarker(o,R_))}),i&&t.on("connect.cleanup",function(r){i.cleanUp(r.context)})}C_.$inject=["injector","eventBus","canvas"];const jf={__depends__:[Zn,xi,$i],__init__:["connectPreview"],connect:["type",E_],connectPreview:["type",C_]};var xk="djs-dragger";function Wi(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)}Wi.$inject=["injector","canvas","graphicsFactory","elementFactory"],Wi.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,f=n.noCropping,p=n.noNoop,d,g=this;if(i||(i=e.connectionPreviewGfx=this.createConnectionPreviewGfx()),Cs(i),r||(r=e.getConnection=wk(function(h,m,x){return g.getConnection(h,m,x)})),t&&(d=r(t,o,a)),!d){!p&&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)&&!f&&(d.waypoints=this._connectionDocking.getCroppedWaypoints(d,o,a)),this._graphicsFactory.drawConnection(i,d,{stroke:"var(--element-dragger-color)"})},Wi.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]);Fe(e,s)},Wi.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&&oa(o,s,!0)||e,t=i&&oa(a,s,!1)||t,[e,t]},Wi.prototype.cleanUp=function(e){e&&e.connectionPreviewGfx&&Ht(e.connectionPreviewGfx)},Wi.prototype.getConnection=function(e){var t=Ek(e);return this._elementFactory.createConnection(t)},Wi.prototype.createConnectionPreviewGfx=function(){var e=Pe("g");return xe(e,{pointerEvents:"none"}),Xe(e).add(xk),Fe(this._canvas.getActiveLayer(),e),e},Wi.prototype.createNoopConnection=function(e,t){return ta([e,t],{stroke:"#333",strokeDasharray:[1],strokeWidth:2,"pointer-events":"none"})};function wk(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 Ek(e){return Wt(e)?e:{}}const Sk={__init__:["connectionPreview"],connectionPreview:["type",Wi]},pu="complex-preview";class P_{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(pu);n.filter(s=>!Rk(s)).forEach(s=>{let c;ot(s)?(c=this._graphicsFactory._createContainer("connection",Pe("g")),this._graphicsFactory.drawConnection(Lr(c),s)):(c=this._graphicsFactory._createContainer("shape",Pe("g")),this._graphicsFactory.drawShape(Lr(c),s),en(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);ot(s)?en(u,c.x,c.y):en(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",Pe("g"));this._graphicsFactory.drawShape(Lr(u),s,{width:c.width,height:c.height}),en(u,c.x,c.y),this._previewSupport.addDragger(s,a,u)})}cleanUp(){Cs(this._canvas.getLayer(pu)),this._markers.forEach(([t,n])=>this._canvas.removeMarker(t,n)),this._markers=[]}show(){this._canvas.showLayer(pu)}hide(){this._canvas.hideLayer(pu)}}P_.$inject=["canvas","graphicsFactory","previewSupport"];function Rk(e){return e.hidden}const Ck={__depends__:[Mo],__init__:["complexPreview"],complexPreview:["type",P_]},A_=Math.round;function fu(e,t,n,i,r,o){this._complexPreview=e,this._connectionDocking=t,this._elementFactory=n,this._eventBus=i,this._layouter=r,this._rules=o}fu.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-A_(u.width/2),y:l.y-A_(u.height/2)});const f=c.allowed("connection.create",{source:e,target:u,hints:{targetParent:e.parent}});let p=null;f&&(p=o.createConnection(f),p.waypoints=s.layoutConnection(p,{source:e,target:u}),p.waypoints=r.getCroppedWaypoints(p,e,u)),i.create({created:[u,p].filter(d=>!Qr(d))})},fu.prototype.cleanUp=function(){this._complexPreview.cleanUp()},fu.$inject=["complexPreview","connectionDocking","elementFactory","eventBus","layouter","rules"];const Pk={__depends__:[Fc,Ck,ff],__init__:["appendPreview"],appendPreview:["type",fu]};var T_=Math.min,M_=Math.max;function Hf(e){e.preventDefault()}function Ua(e){e.stopPropagation()}function Ak(e){return e.nodeType===Node.TEXT_NODE}function Tk(e){return[].slice.call(e)}function ui(e){this.container=e.container,this.parent=mt('<div class="djs-direct-editing-parent"><div class="djs-direct-editing-content" contenteditable="true"></div></div>'),this.content=rt("[contenteditable]",this.parent),this.keyHandler=e.keyHandler||function(){},this.resizeHandler=e.resizeHandler||function(){},this.focusoutHandler=e.focusoutHandler||function(){},this.autoResize=xn(this.autoResize,this),this.handlePaste=xn(this.handlePaste,this)}ui.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=oi(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=oi(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,$e.bind(a,"keydown",this.keyHandler),$e.bind(a,"mousedown",Ua),$e.bind(a,"paste",r.handlePaste),$e.bind(a,"focusout",this.focusoutHandler),i.autoResize&&$e.bind(a,"input",this.autoResize),i.resizable&&this.resizable(t),s.appendChild(o),this.setSelection(a.lastChild,a.lastChild&&a.lastChild.length),o},ui.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)}},ui.prototype.insertText=function(e){e=Mk(e);var t=document.execCommand("insertText",!1,e);t||this._insertTextIE(e)},ui.prototype._insertTextIE=function(e){var t=this.getSelection(),n=t.startContainer,i=t.endContainer,r=t.startOffset,o=t.endOffset,a=t.commonAncestorContainer,s=Tk(a.childNodes),c,u;if(Ak(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 f=document.createTextNode(e);this.content.insertBefore(f,s[r]),c=f,u=f.textContent.length}else{var p=s.indexOf(n),d=s.indexOf(i);s.forEach(function(g,h){h===p?g.textContent=n.textContent.substring(0,r)+e+i.textContent.substring(o):h>p&&h<=d&&mi(g)}),c=n,u=r+e.length}c&&u!==void 0&&setTimeout(function(){self.setSelection(c,u)})},ui.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})}},ui.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=mt('<div class="djs-direct-editing-resize-handle"></div>');var s,c,u,l,f=function(g){Hf(g),Ua(g),s=g.clientX,c=g.clientY;var h=t.getBoundingClientRect();u=h.width,l=h.height,$e.bind(document,"mousemove",p),$e.bind(document,"mouseup",d)},p=function(g){Hf(g),Ua(g);var h=T_(M_(u+g.clientX-s,i),o),m=T_(M_(l+g.clientY-c,r),a);t.style.width=h+"px",t.style.height=m+"px",e.resizeHandler({width:u,height:l,dx:g.clientX-s,dy:g.clientY-c})},d=function(g){Hf(g),Ua(g),$e.unbind(document,"mousemove",p,!1),$e.unbind(document,"mouseup",d,!1)};$e.bind(n,"mousedown",f)}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)},ui.prototype.destroy=function(){var e=this.parent,t=this.content,n=this.resizeHandle;t.innerText="",e.removeAttribute("style"),t.removeAttribute("style"),$e.unbind(t,"keydown",this.keyHandler),$e.unbind(t,"mousedown",Ua),$e.unbind(t,"input",this.autoResize),$e.unbind(t,"paste",this.handlePaste),$e.unbind(t,"focusout",this.focusoutHandler),n&&(n.removeAttribute("style"),mi(n)),mi(e)},ui.prototype.getValue=function(){return this.content.innerText.trim()},ui.prototype.getSelection=function(){var e=window.getSelection(),t=e.getRangeAt(0);return t},ui.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 Mk(e){return e.replace(/\r\n|\r|\n/g,`
316
- `)}function In(e,t){this._eventBus=e,this._canvas=t,this._providers=[],this._textbox=new ui({container:t.getContainer(),keyHandler:xn(this._handleKey,this),resizeHandler:xn(this._handleResize,this),focusoutHandler:xn(this._handleFocusout,this)}),e.on(["diagram.clear","diagram.destroy"],()=>this._cleanup())}In.$inject=["eventBus","canvas"],In.prototype.registerProvider=function(e){this._providers.push(e)},In.prototype.isActive=function(e){return!!(this._active&&(!e||this._active.element===e))},In.prototype.cancel=function(){this._active&&(this._fire("cancel"),this.close())},In.prototype._fire=function(e,t){this._eventBus.fire("directEditing."+e,t||{active:this._active})},In.prototype.close=function(){this._fire("deactivate"),this._cleanup(),this._canvas.restoreFocus&&this._canvas.restoreFocus()},In.prototype._cleanup=function(){this._active&&(this._textbox.destroy(),this._active=null,this.resizable=void 0)},In.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()}},In.prototype.getValue=function(){return this._textbox.getValue()},In.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()},In.prototype._handleResize=function(e){this._fire("resize",e)},In.prototype._handleFocusout=function(e){e.relatedTarget&&this._textbox.parent.contains(e.relatedTarget)||this.complete()},In.prototype.activate=function(e){if(this.isActive()&&this.cancel(),this._eventBus.fire("directEditing.activate.allowed",{element:e})===!1)return!1;var t,n=lt(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 k_={__depends__:[mc],__init__:["directEditing"],directEditing:["type",In]};function kk(e){return function(t){var n=t.target,i=ie(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===Ke(e);return!o||!a||!s||!c}}const Ok={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 ee(e,t={}){var n=Ok[e];if(!n)throw new Error("unknown popup entry <"+e+">");return{...n,actionName:"replace-with-"+e,...t}}var Dk=[ee("none-start-event",{actionName:"replace-with-none-start"}),ee("none-intermediate-throwing"),ee("none-end-event",{actionName:"replace-with-none-end"}),ee("message-start"),ee("timer-start"),ee("conditional-start"),ee("signal-start")],Lk=[ee("none-start-event",{actionName:"replace-with-none-start"}),ee("none-intermediate-throwing"),ee("none-end-event",{actionName:"replace-with-none-end"})],Ik=[ee("none-start-event",{actionName:"replace-with-none-start"}),ee("none-intermediate-throwing",{actionName:"replace-with-none-intermediate-throw"}),ee("none-end-event",{actionName:"replace-with-none-end"}),ee("message-intermediate-catch"),ee("message-intermediate-throw"),ee("timer-intermediate-catch"),ee("escalation-intermediate-throw"),ee("conditional-intermediate-catch"),ee("link-intermediate-catch"),ee("link-intermediate-throw"),ee("compensation-intermediate-throw"),ee("signal-intermediate-catch"),ee("signal-intermediate-throw")],Bk=[ee("none-start-event",{actionName:"replace-with-none-start"}),ee("none-intermediate-throwing",{actionName:"replace-with-none-intermediate-throw"}),ee("none-end-event",{actionName:"replace-with-none-end"}),ee("message-end"),ee("escalation-end"),ee("error-end"),ee("cancel-end"),ee("compensation-end"),ee("signal-end"),ee("terminate-end")],Nk=[ee("exclusive-gateway"),ee("parallel-gateway"),ee("inclusive-gateway"),ee("complex-gateway"),ee("event-based-gateway")],$k=[ee("transaction"),ee("event-subprocess"),ee("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess",label:"Ad-hoc sub-process"}),ee("collapsed-subprocess")],Fk=[ee("expanded-subprocess",{actionName:"replace-with-subprocess",label:"Sub-process"}),ee("transaction"),ee("event-subprocess"),ee("collapsed-ad-hoc-subprocess")],O_=[ee("transaction"),ee("expanded-subprocess",{actionName:"replace-with-subprocess",label:"Sub-process"}),ee("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess",label:"Ad-hoc sub-process"}),ee("event-subprocess")],jk=O_,D_=[ee("task"),ee("user-task"),ee("service-task"),ee("send-task"),ee("receive-task"),ee("manual-task"),ee("rule-task"),ee("script-task"),ee("call-activity"),ee("collapsed-subprocess"),ee("expanded-subprocess"),ee("collapsed-ad-hoc-subprocess"),ee("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess"})],Hk=[ee("data-store-reference")],zk=[ee("data-object-reference")],Gk=[ee("message-boundary"),ee("timer-boundary"),ee("escalation-boundary"),ee("conditional-boundary"),ee("error-boundary"),ee("cancel-boundary"),ee("signal-boundary"),ee("compensation-boundary"),ee("non-interrupting-message-boundary"),ee("non-interrupting-timer-boundary"),ee("non-interrupting-escalation-boundary"),ee("non-interrupting-conditional-boundary"),ee("non-interrupting-signal-boundary")],Vk=[ee("message-start"),ee("timer-start"),ee("conditional-start"),ee("signal-start"),ee("error-start"),ee("escalation-start"),ee("compensation-start"),ee("non-interrupting-message-start"),ee("non-interrupting-timer-start"),ee("non-interrupting-conditional-start"),ee("non-interrupting-signal-start"),ee("non-interrupting-escalation-start")],Wk=[{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"}],Uk=[ee("expanded-pool"),ee("collapsed-pool",{label:function(e){var t="Empty pool/participant";return e.children&&e.children.length&&(t+=" (removes content)"),t}})],qk={"bpmn:MessageEventDefinition":[ee("message-start"),ee("message-intermediate-catch"),ee("message-intermediate-throw"),ee("message-end")],"bpmn:TimerEventDefinition":[ee("timer-start"),ee("timer-intermediate-catch")],"bpmn:ConditionalEventDefinition":[ee("conditional-start"),ee("conditional-intermediate-catch")],"bpmn:SignalEventDefinition":[ee("signal-start"),ee("signal-intermediate-catch"),ee("signal-intermediate-throw"),ee("signal-end")],"bpmn:ErrorEventDefinition":[ee("error-start"),ee("error-end")],"bpmn:EscalationEventDefinition":[ee("escalation-start"),ee("escalation-intermediate-throw"),ee("escalation-end")],"bpmn:CompensateEventDefinition":[ee("compensation-start"),ee("compensation-intermediate-throw"),ee("compensation-end")]};const L_={"start-event-non-interrupting":`
315
+ </svg>`},nk=900;function $o(e,t,n,i){e.registerProvider(nk,this),this._contextPad=e,this._popupMenu=t,this._translate=n,this._canvas=i}$o.$inject=["contextPad","popupMenu","translate","canvas"],$o.prototype.getMultiElementContextPadEntries=function(e){var t={};return this._isAllowed(e)&&V(t,this._getEntries(e)),t},$o.prototype._isAllowed=function(e){return!this._popupMenu.isEmpty(e,"align-elements")},$o.prototype._getEntries=function(){var e=this;return{"align-elements":{group:"align-elements",title:e._translate("Align elements"),html:`<div class="entry">${t_.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)}}}}},$o.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 ik=["left","center","right","top","middle","bottom"];function Ga(e,t,n,i){this._alignElements=t,this._translate=n,this._popupMenu=e,this._rules=i,e.registerProvider("align-elements",this)}Ga.$inject=["popupMenu","alignElements","translate","rules"],Ga.prototype.getPopupMenuEntries=function(e){var t={};return this._isAllowed(e)&&V(t,this._getEntries(e)),t},Ga.prototype._isAllowed=function(e){return this._rules.allowed("elements.align",{elements:e})},Ga.prototype._getEntries=function(e){var t=this._alignElements,n=this._translate,i=this._popupMenu,r={};return N(ik,function(o){r["align-elements-"+o]={group:"align",title:n("Align elements "+o),className:"bjs-align-elements-menu-entry",imageHtml:t_[o],action:function(){t.trigger(e,o),i.close()}}}),r};function uu(e){Zn.call(this,e)}uu.$inject=["eventBus"],_e(uu,Zn),uu.prototype.init=function(){this.addRule("elements.align",function(e){var t=e.elements,n=We(t,function(i){return!(i.waypoints||i.host||i.labelTarget)});return n=Os(n),n.length<2?!1:n})};const rk={__depends__:[m2,fb,If],__init__:["alignElementsContextPadProvider","alignElementsMenuProvider","bpmnAlignElements"],alignElementsContextPadProvider:["type",$o],alignElementsMenuProvider:["type",Ga],bpmnAlignElements:["type",uu]};function Vi(e,t,n,i){te.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=Nu(Jr(a.closure.topLevel)),c=a.hints,u=c?c.autoResize:!0;if(u!==!1){var l=eo(s,function(f){return f.parent.id});N(l,function(f,p){De(u)&&(f=f.filter(function(d){return pt(u,to({id:d.id}))})),r._expand(f,p)})}}),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)})}Vi.$inject=["eventBus","elementRegistry","modeling","rules"],_e(Vi,te),Vi.prototype._getOptimalBounds=function(e,t){var n=this.getOffset(t),i=this.getPadding(t),r=Ae(Dt(e)),o=Ae(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),Is(V({},o,a))},Vi.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(ok(i,t)){var r=ak(ai(t,["x","y","width","height"]),i);this.resize(t,i,{autoResize:r});var o=t.parent;o&&this._expand([t],o)}}},Vi.prototype.getOffset=function(e){return{top:60,bottom:60,left:100,right:100}},Vi.prototype.getPadding=function(e){return{top:2,bottom:2,left:15,right:15}},Vi.prototype.resize=function(e,t,n){this._modeling.resizeShape(e,t,null,n)};function ok(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}function ak(e,t){var n="";return e=Ae(e),t=Ae(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 lu(e){e.invoke(Vi,this)}lu.$inject=["injector"],_e(lu,Vi),lu.prototype.resize=function(e,t,n){E(e,"bpmn:Participant")?this._modeling.resizeLane(e,t,null,n):this._modeling.resizeShape(e,t,null,n)};function Va(e){Zn.call(this,e);var t=this;this.addRule("element.autoResize",function(n){return t.canResize(n.elements,n.target)})}Va.$inject=["eventBus"],_e(Va,Zn),Va.prototype.canResize=function(e,t){return!1};function pu(e,t){Va.call(this,e),this._modeling=t}_e(pu,Va),pu.$inject=["eventBus","modeling"],pu.prototype.canResize=function(e,t){if(E(t.di,"bpmndi:BPMNPlane")||!E(t,"bpmn:Participant")&&!E(t,"bpmn:Lane")&&!E(t,"bpmn:SubProcess"))return!1;var n=!0;return N(e,function(i){if(E(i,"bpmn:Lane")||Ge(i)){n=!1;return}}),n};const sk={__init__:["bpmnAutoResize","bpmnAutoResizeProvider"],bpmnAutoResize:["type",lu],bpmnAutoResizeProvider:["type",pu]};function Fo(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()})}Fo.$inject=["config.autoScroll","eventBus","canvas"],Fo.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++)ck(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 ck(e,t,n){return t<e&&e<n}Fo.prototype.stopScroll=function(){clearTimeout(this._scrolling)},Fo.prototype.setOptions=function(e){this._opts=V({},this._opts,e)},Fo.prototype._toBorderPoint=function(e){var t=this._canvas._container.getBoundingClientRect(),n=Nr(e.originalEvent);return{x:n.x-t.left,y:n.y-t.top}};const uk={__depends__:[$i],__init__:["autoScroll"],autoScroll:["type",Fo]};var n_="djs-bendpoint",i_="djs-segment-dragger";function lk(e,t){var n=Nr(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 Bf(e,t,n){var i=lk(e,n),r=ep(t,i);return r}function Nf(e,t){var n=Pe("g");Xe(n).add(n_),Fe(e,n);var i=Pe("circle");xe(i,{cx:0,cy:0,r:4}),Xe(i).add("djs-visual"),Fe(n,i);var r=Pe("circle");return xe(r,{cx:0,cy:0,r:10}),Xe(r).add("djs-hit"),Fe(n,r),t&&Xe(n).add(t),n}function pk(e,t,n,i){var r=Pe("g");Fe(e,r);var o=18,a=6,s=11,c=dk(t,n,i),u=a+s,l=Pe("rect");xe(l,{x:-o/2,y:-a/2,width:o,height:a}),Xe(l).add("djs-visual"),Fe(r,l);var f=Pe("rect");return xe(f,{x:-c/2,y:-u/2,width:c,height:u}),Xe(f).add("djs-hit"),Fe(r,f),Mm(r,i==="v"?90:0),r}function r_(e,t,n){var i=Pe("g"),r=Tl(t,n),o=Oi(t,n);return Fe(e,i),pk(i,t,n,o),Xe(i).add(i_),Xe(i).add(o==="h"?"horizontal":"vertical"),tn(i,r.x,r.y),i}function $f(e){return Math.abs(Math.round(e*2/3))}function fk(e,t){var n=hk(e,t);return ap(e,n)}function dk(e,t,n){var i=t.x-e.x,r=t.y-e.y;return $f(n==="h"?i:r)}function hk(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=gg(e,[a,s]);c<i&&(i=c,r=o)}return[n[r],n[r+1]]}function o_(e,t,n,i,r){function o(b,_,C){var P=b.index,D=b.point,T,I,k,O,H,se;return P<=0||b.bendpoint?!1:(T=_[P-1],I=_[P],k=Tl(T,I),O=Oi(T,I),H=Math.abs(D.x-k.x),se=Math.abs(D.y-k.y),O&&H<=C&&se<=C)}function a(b,_){var C=b.waypoints,P,D,T,I;return _.index<=0||_.bendpoint||(P={start:C[_.index-1],end:C[_.index]},D=Oi(P.start,P.end),!D)?null:(D==="h"?T=P.end.x-P.start.x:T=P.end.y-P.start.y,I=$f(T)/2,I)}function s(b,_){var C=_.waypoints,P=Bf(t,C,b),D;if(P){D=a(_,P);var T;if(o(P,C,D)?T=r.start(b,_,P.index):T=i.start(b,_,P.index,!P.bendpoint),T!==!1)return!0}}function c(b,_,C){$e.bind(b,_,function(P){n.triggerMouseEvent(_,P,C),P.stopPropagation()})}function u(b,_){var C=t.getLayer("overlays"),P=rt('.djs-bendpoints[data-element-id="'+$a(b.id)+'"]',C);return!P&&_&&(P=Pe("g"),xe(P,{"data-element-id":b.id}),Xe(P).add("djs-bendpoints"),Fe(C,P),c(P,"mousedown",b),c(P,"click",b),c(P,"dblclick",b)),P}function l(b,_){return rt('.djs-segment-dragger[data-segment-idx="'+b+'"]',_)}function f(b,_){_.waypoints.forEach(function(C,P){var D=Nf(b);Fe(b,D),tn(D,C.x,C.y)}),Nf(b,"floating")}function p(b,_){for(var C=_.waypoints,P,D,T,I=1;I<C.length;I++)P=C[I-1],D=C[I],Oi(P,D)&&(T=r_(b,P,D),xe(T,{"data-segment-idx":I}),c(T,"mousemove",_))}function d(b){N(As("."+n_,b),function(_){Ht(_)})}function h(b){N(As("."+i_,b),function(_){Ht(_)})}function m(b){var _=u(b);return _||(_=u(b,!0),f(_,b),p(_,b)),_}function g(b){var _=u(b);_&&(h(_),d(_),p(_,b),f(_,b))}function y(b,_){var C=rt(".floating",b),P=_.point;C&&(tn(C,P.x,P.y),Xe(C).add("positioned"))}function v(b,_,C){var P=l(_.index,b),D=C[_.index-1],T=C[_.index],I=_.point,k=Tl(D,T),O=Oi(D,T),H,se;P&&(H=mk(P),se={x:I.x-k.x,y:I.y-k.y},O==="v"&&(se={x:se.y,y:se.x}),tn(H,se.x,se.y))}e.on("connection.changed",function(b){g(b.element)}),e.on("connection.remove",function(b){var _=u(b.element);_&&Ht(_)}),e.on("element.marker.update",function(b){var _=b.element,C;_.waypoints&&(C=m(_),b.add?Xe(C).add(b.marker):Xe(C).remove(b.marker))}),e.on("element.mousemove",function(b){var _=b.element,C=_.waypoints,P,D;if(C){if(P=u(_,!0),D=Bf(t,C,b.originalEvent),!D)return;y(P,D),D.bendpoint||v(P,D,C)}}),e.on("element.mousedown",function(b){if(cr(b)){var _=b.originalEvent,C=b.element;if(C.waypoints)return s(_,C)}}),e.on("selection.changed",function(b){var _=b.newSelection,C=_[0];C&&C.waypoints&&m(C)}),e.on("element.hover",function(b){var _=b.element;_.waypoints&&m(_)}),e.on("element.out",function(b){var _=b.element;if(_.waypoints){var C=u(_);if(C){var P=rt(".floating",C);P&&Xe(P).remove("positioned")}}}),e.on("element.updateId",function(b){var _=b.element,C=b.newId;if(_.waypoints){var P=u(_);P&&xe(P,{"data-element-id":C})}}),this.addHandles=m,this.updateHandles=g,this.getBendpointsContainer=u,this.getSegmentDragger=l}o_.$inject=["eventBus","canvas","interactionEvents","bendpointMove","connectionSegmentMove"];function mk(e){return rt(".djs-visual",e)}var a_=Math.round,Wr="reconnectStart",Ur="reconnectEnd",Wa="updateWaypoints";function Ff(e,t,n,i,r,o){this._injector=e,this.start=function(a,s,c,u){var l=n.getGraphics(s),f=s.source,p=s.target,d=s.waypoints,h;!u&&c===0?h=Wr:!u&&c===d.length-1?h=Ur:h=Wa;var m=h===Wa?"connection.updateWaypoints":"connection.reconnect",g=r.allowed(m,{connection:s,source:f,target:p});if(g===!1&&(g=r.allowed(m,{connection:s,source:p,target:f})),g!==!1)return i.init(a,"bendpoint.move",{data:{connection:s,connectionGfx:l,context:{allowed:g,bendpointIndex:c,connection:s,source:f,target:p,insert:u,type:h}}})},t.on("bendpoint.move.hover",function(a){var s=a.context,c=s.connection,u=c.source,l=c.target,f=a.hover,p=s.type;s.hover=f;var d;if(f){var h=p===Wa?"connection.updateWaypoints":"connection.reconnect";if(d=s.allowed=r.allowed(h,{connection:c,source:p===Wr?f:u,target:p===Ur?f:l}),d){s.source=p===Wr?f:u,s.target=p===Ur?f:l;return}d===!1&&(d=s.allowed=r.allowed(h,{connection:c,source:p===Ur?f:l,target:p===Wr?f:u})),d&&(s.source=p===Ur?f:l,s.target=p===Wr?f: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!==Wa&&(s.allowed=!1)}),t.on("bendpoint.move.end",function(a){var s=a.context,c=s.allowed,u=s.bendpointIndex,l=s.connection,f=s.insert,p=l.waypoints.slice(),d=s.source,h=s.target,m=s.type,g=s.hints||{},y={x:a_(a.x),y:a_(a.y)};if(!c)return!1;m===Wa?(f?p.splice(u,0,y):p[u]=y,g.bendpointMove={insert:f,bendpointIndex:u},p=this.cropWaypoints(l,p),o.updateWaypoints(l,OS(p),g)):(m===Wr?(g.docking="source",fu(s)&&(g.docking="target",g.newWaypoints=p.reverse())):m===Ur&&(g.docking="target",fu(s)&&(g.docking="source",g.newWaypoints=p.reverse())),o.reconnect(l,d,h,y,g))},this)}Ff.$inject=["injector","eventBus","canvas","dragging","rules","modeling"],Ff.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 fu(e){var t=e.hover,n=e.source,i=e.target,r=e.type;if(r===Wr)return t&&i&&t===i&&n!==i;if(r===Ur)return t&&n&&t===n&&n!==i}var gk="reconnectStart",yk="reconnectEnd",s_="updateWaypoints",Ua="connect-ok",du="connect-not-ok",c_="connect-hover",u_="djs-updating",l_="djs-dragging",p_=1100;function f_(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,f=l.slice();a.waypoints=l,u&&f.splice(s,0,{x:o.x,y:o.y}),c.waypoints=f;var p=a.draggerGfx=Nf(i.getLayer("overlays"));Xe(p).add("djs-dragging"),i.addMarker(c,l_),i.addMarker(c,u_)}),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,c_),u===s_)return;s?(i.removeMarker(c,du),i.addMarker(c,Ua)):s===!1&&(i.removeMarker(c,Ua),i.addMarker(c,du))}}),n.on(["bendpoint.move.out","bendpoint.move.cleanup"],p_,function(o){var a=o.context,s=a.hover,c=a.target;s&&(i.removeMarker(s,c_),i.removeMarker(s,c?Ua:du))}),n.on("bendpoint.move.move",function(o){var a=o.context,s=a.allowed,c=a.bendpointIndex,u=a.draggerGfx,l=a.hover,f=a.type,p=a.connection,d=p.source,h=p.target,m=p.waypoints.slice(),g={x:o.x,y:o.y},y=a.hints||{},v={};r&&(y.connectionStart&&(v.connectionStart=y.connectionStart),y.connectionEnd&&(v.connectionEnd=y.connectionEnd),f===gk?fu(a)?(v.connectionEnd=v.connectionEnd||g,v.source=h,v.target=l||d,m=m.reverse()):(v.connectionStart=v.connectionStart||g,v.source=l||d,v.target=h):f===yk?fu(a)?(v.connectionStart=v.connectionStart||g,v.source=l||h,v.target=d,m=m.reverse()):(v.connectionEnd=v.connectionEnd||g,v.source=d,v.target=l||h):(v.noCropping=!0,v.noLayout=!0,m[c]=g),f===s_&&(m=e.cropWaypoints(p,m)),v.waypoints=m,r.drawPreview(a,s,v)),tn(u,o.x,o.y)},this),n.on(["bendpoint.move.end","bendpoint.move.cancel"],p_,function(o){var a=o.context,s=a.connection,c=a.draggerGfx,u=a.hover,l=a.target,f=a.waypoints;s.waypoints=f,Ht(c),i.removeMarker(s,u_),i.removeMarker(s,l_),u&&(i.removeMarker(u,Ua),i.removeMarker(u,l?Ua:du)),r&&r.cleanUp(a)})}f_.$inject=["bendpointMove","injector","eventBus","canvas"];var d_="connect-hover",h_="djs-updating";function m_(e,t,n){return jf(e,t,e[t]+n)}function jf(e,t,n){return{x:t==="x"?n:e.x,y:t==="y"?n:e.y}}function vk(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 jf(t,i,s)}function g_(e){return e==="x"?"y":"x"}function y_(e,t,n){var i,r;return e.original?e.original:(i=Le(t),r=g_(n),jf(e,r,i[r]))}function v_(e,t,n,i,r,o){var a=e.get("connectionDocking",!1);this.start=function(f,p,d){var h,m=n.getGraphics(p),g=d-1,y=d,v=p.waypoints,b=v[g],_=v[y],C=Bf(n,v,f),P,D,T;if(P=Oi(b,_),!!P)return D=P==="v"?"x":"y",g===0&&(b=y_(b,p.source,D)),y===v.length-1&&(_=y_(_,p.target,D)),C?T=C.point:T={x:(b.x+_.x)/2,y:(b.y+_.y)/2},h={connection:p,segmentStartIndex:g,segmentEndIndex:y,segmentStart:b,segmentEnd:_,axis:D,dragPosition:T},i.init(f,T,"connectionSegment.move",{cursor:D==="x"?"resize-ew":"resize-ns",data:{connection:p,connectionGfx:m,context:h}})};function s(f,p){if(!a)return p;var d=f.waypoints,h;return f.waypoints=p,h=a.getCroppedWaypoints(f),f.waypoints=d,h}function c(f){r.update("connection",f.connection,f.connectionGfx)}function u(f,p,d){var h=f.newWaypoints,m=f.segmentStartIndex+p,g=h[m],y=f.segmentEndIndex+p,v=h[y],b=g_(f.axis),_=vk(d,g,v,b);tn(f.draggerGfx,_.x,_.y)}function l(f,p){var d=0,h=f.filter(function(m,g){return Al(f[g-1],f[g+1],m)?(d=g<=p?d-1:d,!1):!0});return{waypoints:h,segmentOffset:d}}t.on("connectionSegment.move.start",function(f){var p=f.context,d=f.connection,h=n.getLayer("overlays");p.originalWaypoints=d.waypoints.slice(),p.draggerGfx=r_(h,p.segmentStart,p.segmentEnd),Xe(p.draggerGfx).add("djs-dragging"),n.addMarker(d,h_)}),t.on("connectionSegment.move.move",function(f){var p=f.context,d=p.connection,h=p.segmentStartIndex,m=p.segmentEndIndex,g=p.segmentStart,y=p.segmentEnd,v=p.axis,b=p.originalWaypoints.slice(),_=m_(g,v,f["d"+v]),C=m_(y,v,f["d"+v]),P=b.length,D=0;b[h]=_,b[m]=C;var T,I;h<2&&(T=en(d.source,_),h===1?T==="intersect"&&(b.shift(),b[0]=_,D--):T!=="intersect"&&(b.unshift(g),D++)),m>P-3&&(I=en(d.target,C),m===P-2?I==="intersect"&&(b.pop(),b[b.length-1]=C):I!=="intersect"&&b.push(y)),p.newWaypoints=d.waypoints=s(d,b),u(p,D,f),p.newSegmentStartIndex=h+D,c(f)}),t.on("connectionSegment.move.hover",function(f){f.context.hover=f.hover,n.addMarker(f.hover,d_)}),t.on(["connectionSegment.move.out","connectionSegment.move.cleanup"],function(f){var p=f.context.hover;p&&n.removeMarker(p,d_)}),t.on("connectionSegment.move.cleanup",function(f){var p=f.context,d=p.connection;p.draggerGfx&&Ht(p.draggerGfx),n.removeMarker(d,h_)}),t.on(["connectionSegment.move.cancel","connectionSegment.move.end"],function(f){var p=f.context,d=p.connection;d.waypoints=p.originalWaypoints,c(f)}),t.on("connectionSegment.move.end",function(f){var p=f.context,d=p.connection,h=p.newWaypoints,m=p.newSegmentStartIndex;h=h.map(function(C){return{original:C.original,x:Math.round(C.x),y:Math.round(C.y)}});var g=l(h,m),y=g.waypoints,v=s(d,y),b=g.segmentOffset,_={segmentMove:{segmentStartIndex:p.segmentStartIndex,newSegmentStartIndex:m+b}};o.updateWaypoints(d,v,_)})}v_.$inject=["injector","eventBus","canvas","dragging","graphicsFactory","modeling"];var bk=Math.abs,b_=Math.round;function _k(e,t,n){n=n===void 0?10:n;var i,r;for(i=0;i<t.length;i++)if(r=t[i],bk(r-e)<=n)return r}function __(e){return{x:e.x,y:e.y}}function x_(e){return{x:e.x+e.width,y:e.y+e.height}}function ti(e,t){return!e||isNaN(e.x)||isNaN(e.y)?t:{x:b_(e.x+e.width/2),y:b_(e.y+e.height/2)}}function jo(e,t){var n=e.snapped;return n?typeof t=="string"?n[t]:n.x&&n.y:!1}function Nt(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 w_(e){return e.children||[]}var xk=Math.abs,E_=Math.round,Hf=10;function S_(e){function t(o,a){if(De(o)){for(var s=o.length;s--;)if(xk(o[s]-a)<=Hf)return o[s]}else{o=+o;var c=a%o;if(c<Hf)return a-c;if(c>o-Hf)return a-c+o}return a}function n(o,a){if(o.waypoints)return fk(a,o);if(o.width)return{x:E_(o.width/2+o.x),y:E_(o.height/2+o.y)}}function i(o){var a=o.context,s=a.snapPoints,c=a.connection,u=c.waypoints,l=a.segmentStart,f=a.segmentStartIndex,p=a.segmentEnd,d=a.segmentEndIndex,h=a.axis;if(s)return s;var m=[u[f-1],l,p,u[d+1]];return f<2&&m.unshift(n(c.source,o)),d>u.length-3&&m.unshift(n(c.target,o)),a.snapPoints=s={horizontal:[],vertical:[]},N(m,function(g){g&&(g=g.original||g,h==="y"&&s.horizontal.push(g.y),h==="x"&&s.vertical.push(g.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 f=s-u,p=c-l;V(o,{dx:o.dx-f,dy:o.dy-p,x:u,y:l}),(f||a.vertical.indexOf(s)!==-1)&&Nt(o,"x",u),(p||a.horizontal.indexOf(c)!==-1)&&Nt(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:[]},N(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);!at(s)||!c||!c.x||!c.y||(Nt(o,"x",c.x),Nt(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,f=o.y,p,d;if(s){p=t(u?s.vertical.concat([u.x]):s.vertical,l),d=t(u?s.horizontal.concat([u.y]):s.horizontal,f);var h=l-p,m=f-d;V(o,{dx:o.dx-h,dy:o.dy-m,x:o.x-h,y:o.y-m}),(h||s.vertical.indexOf(l)!==-1)&&Nt(o,"x",p),(m||s.horizontal.indexOf(f)!==-1)&&Nt(o,"y",d)}})}S_.$inject=["eventBus"];const wk={__depends__:[$i,xi],__init__:["bendpoints","bendpointSnapping","bendpointMovePreview"],bendpoints:["type",o_],bendpointMove:["type",Ff],bendpointMovePreview:["type",f_],connectionSegmentMove:["type",v_],bendpointSnapping:["type",S_]};function R_(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),!Qr(l)){if(l!==!1){s.source=c,s.target=u;return}l=s.canExecute=o(c,u),!Qr(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},f=s.source,p=s.target;if(!c)return!1;var d=null,h={connectionStart:zf(s)?l:u,connectionEnd:zf(s)?u:l};Wt(c)&&(d=c),s.connection=n.connect(f,p,d,h)}),this.start=function(a,s,c,u){Wt(c)||(u=c,c=Le(s)),t.init(a,"connect",{autoActivate:u,data:{shape:s,context:{start:s,connectionStart:c}}})}}R_.$inject=["eventBus","dragging","modeling","rules"];function zf(e){var t=e.hover,n=e.source,i=e.target;return t&&n&&t===n&&n!==i}var Ek=1100,Sk=900,C_="connect-ok",P_="connect-not-ok";function A_(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,f=o.target,p=o.connectionStart||l,d=o.connectionEnd||{x:r.x,y:r.y},h=p,m=d;zf(o)&&(h=d,m=p),i.drawPreview(o,a,{source:c||u,target:f||s,connectionStart:h,connectionEnd:m})}),t.on("connect.hover",Sk,function(r){var o=r.context,a=r.hover,s=o.canExecute;s!==null&&n.addMarker(a,s?C_:P_)}),t.on(["connect.out","connect.cleanup"],Ek,function(r){var o=r.hover;o&&(n.removeMarker(o,C_),n.removeMarker(o,P_))}),i&&t.on("connect.cleanup",function(r){i.cleanUp(r.context)})}A_.$inject=["injector","eventBus","canvas"];const Gf={__depends__:[Qn,xi,$i],__init__:["connectPreview"],connect:["type",R_],connectPreview:["type",A_]};var Rk="djs-dragger";function Wi(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)}Wi.$inject=["injector","canvas","graphicsFactory","elementFactory"],Wi.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,f=n.noCropping,p=n.noNoop,d,h=this;if(i||(i=e.connectionPreviewGfx=this.createConnectionPreviewGfx()),Ts(i),r||(r=e.getConnection=Ck(function(m,g,y){return h.getConnection(m,g,y)})),t&&(d=r(t,o,a)),!d){!p&&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)&&!f&&(d.waypoints=this._connectionDocking.getCroppedWaypoints(d,o,a)),this._graphicsFactory.drawConnection(i,d,{stroke:"var(--element-dragger-color)"})},Wi.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]);Fe(e,s)},Wi.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&&aa(o,s,!0)||e,t=i&&aa(a,s,!1)||t,[e,t]},Wi.prototype.cleanUp=function(e){e&&e.connectionPreviewGfx&&Ht(e.connectionPreviewGfx)},Wi.prototype.getConnection=function(e){var t=Pk(e);return this._elementFactory.createConnection(t)},Wi.prototype.createConnectionPreviewGfx=function(){var e=Pe("g");return xe(e,{pointerEvents:"none"}),Xe(e).add(Rk),Fe(this._canvas.getActiveLayer(),e),e},Wi.prototype.createNoopConnection=function(e,t){return na([e,t],{stroke:"#333",strokeDasharray:[1],strokeWidth:2,"pointer-events":"none"})};function Ck(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 Pk(e){return Wt(e)?e:{}}const Ak={__init__:["connectionPreview"],connectionPreview:["type",Wi]},hu="complex-preview";class T_{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(hu);n.filter(s=>!Tk(s)).forEach(s=>{let c;at(s)?(c=this._graphicsFactory._createContainer("connection",Pe("g")),this._graphicsFactory.drawConnection(Lr(c),s)):(c=this._graphicsFactory._createContainer("shape",Pe("g")),this._graphicsFactory.drawShape(Lr(c),s),tn(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);at(s)?tn(u,c.x,c.y):tn(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",Pe("g"));this._graphicsFactory.drawShape(Lr(u),s,{width:c.width,height:c.height}),tn(u,c.x,c.y),this._previewSupport.addDragger(s,a,u)})}cleanUp(){Ts(this._canvas.getLayer(hu)),this._markers.forEach(([t,n])=>this._canvas.removeMarker(t,n)),this._markers=[]}show(){this._canvas.showLayer(hu)}hide(){this._canvas.hideLayer(hu)}}T_.$inject=["canvas","graphicsFactory","previewSupport"];function Tk(e){return e.hidden}const Mk={__depends__:[Mo],__init__:["complexPreview"],complexPreview:["type",T_]},M_=Math.round;function mu(e,t,n,i,r,o){this._complexPreview=e,this._connectionDocking=t,this._elementFactory=n,this._eventBus=i,this._layouter=r,this._rules=o}mu.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-M_(u.width/2),y:l.y-M_(u.height/2)});const f=c.allowed("connection.create",{source:e,target:u,hints:{targetParent:e.parent}});let p=null;f&&(p=o.createConnection(f),p.waypoints=s.layoutConnection(p,{source:e,target:u}),p.waypoints=r.getCroppedWaypoints(p,e,u)),i.create({created:[u,p].filter(d=>!Qr(d))})},mu.prototype.cleanUp=function(){this._complexPreview.cleanUp()},mu.$inject=["complexPreview","connectionDocking","elementFactory","eventBus","layouter","rules"];const kk={__depends__:[zc,Mk,mf],__init__:["appendPreview"],appendPreview:["type",mu]};var k_=Math.min,O_=Math.max;function Vf(e){e.preventDefault()}function Ya(e){e.stopPropagation()}function Ok(e){return e.nodeType===Node.TEXT_NODE}function Dk(e){return[].slice.call(e)}function ui(e){this.container=e.container,this.parent=mt('<div class="djs-direct-editing-parent"><div class="djs-direct-editing-content" contenteditable="true"></div></div>'),this.content=rt("[contenteditable]",this.parent),this.keyHandler=e.keyHandler||function(){},this.resizeHandler=e.resizeHandler||function(){},this.focusoutHandler=e.focusoutHandler||function(){},this.autoResize=xn(this.autoResize,this),this.handlePaste=xn(this.handlePaste,this)}ui.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=ai(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=ai(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,$e.bind(a,"keydown",this.keyHandler),$e.bind(a,"mousedown",Ya),$e.bind(a,"paste",r.handlePaste),$e.bind(a,"focusout",this.focusoutHandler),i.autoResize&&$e.bind(a,"input",this.autoResize),i.resizable&&this.resizable(t),s.appendChild(o),this.setSelection(a.lastChild,a.lastChild&&a.lastChild.length),o},ui.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)}},ui.prototype.insertText=function(e){e=Lk(e);var t=document.execCommand("insertText",!1,e);t||this._insertTextIE(e)},ui.prototype._insertTextIE=function(e){var t=this.getSelection(),n=t.startContainer,i=t.endContainer,r=t.startOffset,o=t.endOffset,a=t.commonAncestorContainer,s=Dk(a.childNodes),c,u;if(Ok(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 f=document.createTextNode(e);this.content.insertBefore(f,s[r]),c=f,u=f.textContent.length}else{var p=s.indexOf(n),d=s.indexOf(i);s.forEach(function(h,m){m===p?h.textContent=n.textContent.substring(0,r)+e+i.textContent.substring(o):m>p&&m<=d&&mi(h)}),c=n,u=r+e.length}c&&u!==void 0&&setTimeout(function(){self.setSelection(c,u)})},ui.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})}},ui.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=mt('<div class="djs-direct-editing-resize-handle"></div>');var s,c,u,l,f=function(h){Vf(h),Ya(h),s=h.clientX,c=h.clientY;var m=t.getBoundingClientRect();u=m.width,l=m.height,$e.bind(document,"mousemove",p),$e.bind(document,"mouseup",d)},p=function(h){Vf(h),Ya(h);var m=k_(O_(u+h.clientX-s,i),o),g=k_(O_(l+h.clientY-c,r),a);t.style.width=m+"px",t.style.height=g+"px",e.resizeHandler({width:u,height:l,dx:h.clientX-s,dy:h.clientY-c})},d=function(h){Vf(h),Ya(h),$e.unbind(document,"mousemove",p,!1),$e.unbind(document,"mouseup",d,!1)};$e.bind(n,"mousedown",f)}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)},ui.prototype.destroy=function(){var e=this.parent,t=this.content,n=this.resizeHandle;t.innerText="",e.removeAttribute("style"),t.removeAttribute("style"),$e.unbind(t,"keydown",this.keyHandler),$e.unbind(t,"mousedown",Ya),$e.unbind(t,"input",this.autoResize),$e.unbind(t,"paste",this.handlePaste),$e.unbind(t,"focusout",this.focusoutHandler),n&&(n.removeAttribute("style"),mi(n)),mi(e)},ui.prototype.getValue=function(){return this.content.innerText.trim()},ui.prototype.getSelection=function(){var e=window.getSelection(),t=e.getRangeAt(0);return t},ui.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 Lk(e){return e.replace(/\r\n|\r|\n/g,`
316
+ `)}function Bn(e,t){this._eventBus=e,this._canvas=t,this._providers=[],this._textbox=new ui({container:t.getContainer(),keyHandler:xn(this._handleKey,this),resizeHandler:xn(this._handleResize,this),focusoutHandler:xn(this._handleFocusout,this)}),e.on(["diagram.clear","diagram.destroy"],()=>this._cleanup())}Bn.$inject=["eventBus","canvas"],Bn.prototype.registerProvider=function(e){this._providers.push(e)},Bn.prototype.isActive=function(e){return!!(this._active&&(!e||this._active.element===e))},Bn.prototype.cancel=function(){this._active&&(this._fire("cancel"),this.close())},Bn.prototype._fire=function(e,t){this._eventBus.fire("directEditing."+e,t||{active:this._active})},Bn.prototype.close=function(){this._fire("deactivate"),this._cleanup(),this._canvas.restoreFocus&&this._canvas.restoreFocus()},Bn.prototype._cleanup=function(){this._active&&(this._textbox.destroy(),this._active=null,this.resizable=void 0)},Bn.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()}},Bn.prototype.getValue=function(){return this._textbox.getValue()},Bn.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()},Bn.prototype._handleResize=function(e){this._fire("resize",e)},Bn.prototype._handleFocusout=function(e){e.relatedTarget&&this._textbox.parent.contains(e.relatedTarget)||this.complete()},Bn.prototype.activate=function(e){if(this.isActive()&&this.cancel(),this._eventBus.fire("directEditing.activate.allowed",{element:e})===!1)return!1;var t,n=pt(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 D_={__depends__:[vc],__init__:["directEditing"],directEditing:["type",Bn]};function Ik(e){return function(t){var n=t.target,i=ie(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===Ke(e);return!o||!a||!s||!c}}const Bk={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 ee(e,t={}){var n=Bk[e];if(!n)throw new Error("unknown popup entry <"+e+">");return{...n,actionName:"replace-with-"+e,...t}}var Nk=[ee("none-start-event",{actionName:"replace-with-none-start"}),ee("none-intermediate-throwing"),ee("none-end-event",{actionName:"replace-with-none-end"}),ee("message-start"),ee("timer-start"),ee("conditional-start"),ee("signal-start")],$k=[ee("none-start-event",{actionName:"replace-with-none-start"}),ee("none-intermediate-throwing"),ee("none-end-event",{actionName:"replace-with-none-end"})],Fk=[ee("none-start-event",{actionName:"replace-with-none-start"}),ee("none-intermediate-throwing",{actionName:"replace-with-none-intermediate-throw"}),ee("none-end-event",{actionName:"replace-with-none-end"}),ee("message-intermediate-catch"),ee("message-intermediate-throw"),ee("timer-intermediate-catch"),ee("escalation-intermediate-throw"),ee("conditional-intermediate-catch"),ee("link-intermediate-catch"),ee("link-intermediate-throw"),ee("compensation-intermediate-throw"),ee("signal-intermediate-catch"),ee("signal-intermediate-throw")],jk=[ee("none-start-event",{actionName:"replace-with-none-start"}),ee("none-intermediate-throwing",{actionName:"replace-with-none-intermediate-throw"}),ee("none-end-event",{actionName:"replace-with-none-end"}),ee("message-end"),ee("escalation-end"),ee("error-end"),ee("cancel-end"),ee("compensation-end"),ee("signal-end"),ee("terminate-end")],Hk=[ee("exclusive-gateway"),ee("parallel-gateway"),ee("inclusive-gateway"),ee("complex-gateway"),ee("event-based-gateway")],zk=[ee("transaction"),ee("event-subprocess"),ee("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess",label:"Ad-hoc sub-process"}),ee("collapsed-subprocess")],Gk=[ee("expanded-subprocess",{actionName:"replace-with-subprocess",label:"Sub-process"}),ee("transaction"),ee("event-subprocess"),ee("collapsed-ad-hoc-subprocess")],L_=[ee("transaction"),ee("expanded-subprocess",{actionName:"replace-with-subprocess",label:"Sub-process"}),ee("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess",label:"Ad-hoc sub-process"}),ee("event-subprocess")],Vk=L_,I_=[ee("task"),ee("user-task"),ee("service-task"),ee("send-task"),ee("receive-task"),ee("manual-task"),ee("rule-task"),ee("script-task"),ee("call-activity"),ee("collapsed-subprocess"),ee("expanded-subprocess"),ee("collapsed-ad-hoc-subprocess"),ee("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess"})],Wk=[ee("data-store-reference")],Uk=[ee("data-object-reference")],Yk=[ee("message-boundary"),ee("timer-boundary"),ee("escalation-boundary"),ee("conditional-boundary"),ee("error-boundary"),ee("cancel-boundary"),ee("signal-boundary"),ee("compensation-boundary"),ee("non-interrupting-message-boundary"),ee("non-interrupting-timer-boundary"),ee("non-interrupting-escalation-boundary"),ee("non-interrupting-conditional-boundary"),ee("non-interrupting-signal-boundary")],qk=[ee("message-start"),ee("timer-start"),ee("conditional-start"),ee("signal-start"),ee("error-start"),ee("escalation-start"),ee("compensation-start"),ee("non-interrupting-message-start"),ee("non-interrupting-timer-start"),ee("non-interrupting-conditional-start"),ee("non-interrupting-signal-start"),ee("non-interrupting-escalation-start")],Kk=[{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"}],Xk=[ee("expanded-pool"),ee("collapsed-pool",{label:function(e){var t="Empty pool/participant";return e.children&&e.children.length&&(t+=" (removes content)"),t}})],Zk={"bpmn:MessageEventDefinition":[ee("message-start"),ee("message-intermediate-catch"),ee("message-intermediate-throw"),ee("message-end")],"bpmn:TimerEventDefinition":[ee("timer-start"),ee("timer-intermediate-catch")],"bpmn:ConditionalEventDefinition":[ee("conditional-start"),ee("conditional-intermediate-catch")],"bpmn:SignalEventDefinition":[ee("signal-start"),ee("signal-intermediate-catch"),ee("signal-intermediate-throw"),ee("signal-end")],"bpmn:ErrorEventDefinition":[ee("error-start"),ee("error-end")],"bpmn:EscalationEventDefinition":[ee("escalation-start"),ee("escalation-intermediate-throw"),ee("escalation-end")],"bpmn:CompensateEventDefinition":[ee("compensation-start"),ee("compensation-intermediate-throw"),ee("compensation-end")]};const B_={"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 ti(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()}ti.$inject=["bpmnFactory","popupMenu","modeling","moddle","bpmnReplace","rules","translate","moddleCopy"],ti.prototype._register=function(){this._popupMenu.registerProvider("bpmn-replace",this)},ti.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=kk(e);return w(t,"bpmn:DataObjectReference")?this._createEntries(e,Hk):w(t,"bpmn:DataStoreReference")&&!w(e.parent,"bpmn:Collaboration")?this._createEntries(e,zk):(w(t,"bpmn:Event")&&!w(t,"bpmn:BoundaryEvent")&&(r=(s=t.get("eventDefinitions")[0])==null?void 0:s.$type,i=qk[r]||[],!fn(t.$parent)&&w(t.$parent,"bpmn:SubProcess")&&(i=We(i,function(c){return c.target.type!=="bpmn:StartEvent"}))),w(t,"bpmn:StartEvent")&&!w(t.$parent,"bpmn:SubProcess")?(o=We(Dk.concat(i),a),this._createEntries(e,o)):w(t,"bpmn:Participant")?(o=We(Uk,function(c){return Ke(e)!==c.target.isExpanded}),this._createEntries(e,o)):w(t,"bpmn:StartEvent")&&fn(t.$parent)?(o=We(Vk.concat(i),function(c){var u=c.target,l=u.isInterrupting!==!1,f=t.isInterrupting===l;return a(c)||!a(c)&&!f}),this._createEntries(e,o)):w(t,"bpmn:StartEvent")&&!fn(t.$parent)&&w(t.$parent,"bpmn:SubProcess")?(o=We(Lk.concat(i),a),this._createEntries(e,o)):w(t,"bpmn:EndEvent")?(o=We(Bk.concat(i),function(c){var u=c.target;return u.eventDefinitionType=="bpmn:CancelEventDefinition"&&!w(t.$parent,"bpmn:Transaction")?!1:a(c)}),this._createEntries(e,o)):w(t,"bpmn:BoundaryEvent")?(o=We(Gk,function(c){var u=c.target;if(u.eventDefinitionType=="bpmn:CancelEventDefinition"&&!w(t.attachedToRef,"bpmn:Transaction"))return!1;var l=u.cancelActivity!==!1,f=t.cancelActivity==l;return a(c)||!a(c)&&!f}),this._createEntries(e,o)):w(t,"bpmn:IntermediateCatchEvent")||w(t,"bpmn:IntermediateThrowEvent")?(o=We(Ik.concat(i),a),this._createEntries(e,o)):w(t,"bpmn:Gateway")?(o=We(Nk,a),this._createEntries(e,o)):w(t,"bpmn:Transaction")?(o=We(O_,a),this._createEntries(e,o)):fn(t)&&Ke(e)?(o=We(jk,a),this._createEntries(e,o)):w(t,"bpmn:AdHocSubProcess")&&Ke(e)?(o=We(Fk,a),this._createEntries(e,o)):w(t,"bpmn:SubProcess")&&Ke(e)?(o=We($k,a),this._createEntries(e,o)):w(t,"bpmn:SubProcess")&&!Ke(e)?(o=We(D_,function(c){var u=c.target.type===e.type,l=c.target.isExpanded===!0;return u===l}),this._createEntries(e,o)):w(t,"bpmn:SequenceFlow")?this._createSequenceFlowEntries(e,Wk):w(t,"bpmn:FlowNode")?(o=We(D_,a),this._createEntries(e,o)):{})},ti.prototype.getPopupMenuHeaderEntries=function(e){var t={};return w(e,"bpmn:Activity")&&!fn(e)&&(t={...t,...this._getLoopCharacteristicsHeaderEntries(e)}),w(e,"bpmn:DataObjectReference")&&(t={...t,...this._getCollectionHeaderEntries(e)}),w(e,"bpmn:Participant")&&(t={...t,...this._getParticipantMultiplicityHeaderEntries(e)}),Tg(e)&&(t={...t,...this._getNonInterruptingHeaderEntries(e)}),t},ti.prototype._createEntries=function(e,t){var n={},i=this;return B(t,function(r){n[r.actionName]=i._createEntry(r,e)}),n},ti.prototype._createSequenceFlowEntries=function(e,t){var n=ie(e),i={},r=this._modeling,o=this._moddle,a=this;return B(t,function(s){switch(s.actionName){case"replace-with-default-flow":n.sourceRef.default!==n&&(w(n.sourceRef,"bpmn:ExclusiveGateway")||w(n.sourceRef,"bpmn:InclusiveGateway")||w(n.sourceRef,"bpmn:ComplexGateway")||w(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&&w(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:w(n.sourceRef,"bpmn:Activity")&&n.conditionExpression&&(i={...i,[s.actionName]:a._createEntry(s,e,function(){r.updateProperties(e,{conditionExpression:void 0})})}),(w(n.sourceRef,"bpmn:ExclusiveGateway")||w(n.sourceRef,"bpmn:InclusiveGateway")||w(n.sourceRef,"bpmn:ComplexGateway")||w(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},ti.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}},ti.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 f=e.businessObject.get("loopCharacteristics");f&&w(f,l.options.loopCharacteristics)?t._modeling.updateModdleProperties(e,f,{isSequential:l.options.isSequential}):(f=t._moddle.create(l.options.loopCharacteristics,{isSequential:l.options.isSequential}),t._modeling.updateProperties(e,{loopCharacteristics:f}))}var r=ie(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"}}}},ti.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}}},ti.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}}},ti.prototype._getNonInterruptingHeaderEntries=function(e){const t=this._translate,n=ie(e),i=this,r=Mg(e),o=w(e,"bpmn:BoundaryEvent")?L_["intermediate-event-non-interrupting"]:L_["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 Yk={__depends__:[Of,Xy,Fc],__init__:["replaceMenuProvider"],replaceMenuProvider:["type",ti]};function qa(e,t,n,i,r,o,a,s,c,u,l,f,p){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=f,this._eventBus=n,this._appendPreview=p,e.autoPlace!==!1&&(this._autoPlace=t.get("autoPlace",!1)),n.on("create.end",250,function(d){var g=d.context,h=g.shape;if(!(!va(d)||!i.isOpen(h))){var m=i.getEntries(h);m.replace&&m.replace.action.click(d,h)}}),n.on("contextPad.close",function(){p.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)?Pr(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,g()),l;var f=e.businessObject;function p(_,S){r.start(_,S)}function d(_,S){n.removeElements([S])}function g(){return{delete:{group:"edit",className:"bpmn-icon-trash",title:c("Delete"),action:{click:d}}}}function h(_){var S=5,P=t.getPad(_).html,C=P.getBoundingClientRect(),L={x:C.left,y:C.bottom+S};return L}function m(_,S,P,C){function L(k,D){var z=i.createShape(V({type:_},C));o.start(k,z,{source:D})}var T=s?function(k,D){var z=i.createShape(V({type:_},C));s.append(D,z)}:L,j=s?function(k,D){return u.create(D,_,C),()=>{u.cleanUp()}}:null;return{group:"model",className:S,title:P,action:{dragstart:L,click:T,hover:j}}}function x(_){return function(S,P){n.splitLane(P,_),t.open(P,!0)}}if(Ve(f,["bpmn:Lane","bpmn:Participant"])&&Ke(e)){var y=ar(e);V(l,{"lane-insert-above":{group:"lane-insert-above",className:"bpmn-icon-lane-insert-above",title:c("Add lane above"),action:{click:function(_,S){n.addLane(S,"top")}}}}),y.length<2&&((Yt(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:x(2)}}}),(Yt(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:x(3)}}})),V(l,{"lane-insert-below":{group:"lane-insert-below",className:"bpmn-icon-lane-insert-below",title:c("Add lane below"),action:{click:function(_,S){n.addLane(S,"bottom")}}}})}return w(f,"bpmn:FlowNode")&&(w(f,"bpmn:EventBasedGateway")?V(l,{"append.receive-task":m("bpmn:ReceiveTask","bpmn-icon-receive-task",c("Append receive task")),"append.message-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-message",c("Append message intermediate catch event"),{eventDefinitionType:"bpmn:MessageEventDefinition"}),"append.timer-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-timer",c("Append timer intermediate catch event"),{eventDefinitionType:"bpmn:TimerEventDefinition"}),"append.condition-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-condition",c("Append conditional intermediate catch event"),{eventDefinitionType:"bpmn:ConditionalEventDefinition"}),"append.signal-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-signal",c("Append signal intermediate catch event"),{eventDefinitionType:"bpmn:SignalEventDefinition"})}):I_(f,"bpmn:BoundaryEvent","bpmn:CompensateEventDefinition")?V(l,{"append.compensation-activity":m("bpmn:Task","bpmn-icon-task",c("Append compensation activity"),{isForCompensation:!0})}):!w(f,"bpmn:EndEvent")&&!f.isForCompensation&&!I_(f,"bpmn:IntermediateThrowEvent","bpmn:LinkEventDefinition")&&!fn(f)&&V(l,{"append.end-event":m("bpmn:EndEvent","bpmn-icon-end-event-none",c("Append end event")),"append.gateway":m("bpmn:ExclusiveGateway","bpmn-icon-gateway-none",c("Append gateway")),"append.append-task":m("bpmn:Task","bpmn-icon-task",c("Append task")),"append.intermediate-event":m("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(_,S){var P=V(h(S),{cursor:{x:_.x,y:_.y}});a.open(S,"bpmn-replace",P,{title:c("Change element"),width:"var(--bpmn-replace-popup-width, 300px)",search:!0})}}}}),w(f,"bpmn:SequenceFlow")&&V(l,{"append.text-annotation":m("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),w(f,"bpmn:MessageFlow")&&V(l,{"append.text-annotation":m("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),Ve(f,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference"])&&V(l,{"append.text-annotation":m("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:p,dragstart:p}}}),w(f,"bpmn:TextAnnotation")&&V(l,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect using association"),action:{click:p,dragstart:p}}}),Ve(f,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&V(l,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect using data input association"),action:{click:p,dragstart:p}}}),w(f,"bpmn:Group")&&V(l,{"append.text-annotation":m("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),this._isDeleteAllowed([e])&&V(l,g()),l};function I_(e,t,n){var i=e.$instanceOf(t),r=!1,o=e.eventDefinitions||[];return B(o,function(a){a.$type===n&&(r=!0)}),i&&r}const Kk={__depends__:[Pk,k_,lb,Zn,jf,yc,Yk],__init__:["contextPadProvider"],contextPadProvider:["type",qa]};var Xk={horizontal:["x","width"],vertical:["y","height"]},B_=5;function Ui(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:[]})}Ui.$inject=["modeling","rules"],Ui.prototype.registerFilter=function(e){if(typeof e!="function")throw new Error("the filter has to be a function");this._filters.push(e)},Ui.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},Ui.prototype._filterElements=function(e){var t=this._filters,n=this._axis,i=this._dimension,r=[].concat(e);return t.length?(B(t,function(o){r=o(r,n,i)}),r):e},Ui.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=li(e,i);return B(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},Ui.prototype._setOrientation=function(e){var t=Xk[e];this._axis=t[0],this._dimension=t[1]},Ui.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)},Ui.prototype._findRange=function(e){var t=e[this._axis],n=e[this._dimension];return{min:t+B_,max:t+n-B_}};const Zk={__init__:["distributeElements"],distributeElements:["type",Ui]};function du(e){Xn.call(this,e)}du.$inject=["eventBus"],_e(du,Xn),du.prototype.init=function(){this.addRule("elements.distribute",function(e){var t=e.elements;return t=We(t,function(n){var i=Ve(n,["bpmn:Association","bpmn:BoundaryEvent","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:Lane","bpmn:MessageFlow","bpmn:SequenceFlow","bpmn:TextAnnotation"]);return!(n.labelTarget||i)}),t=Ts(t),t.length<3?!1:t})};var N_={horizontal:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 1800">
327
+ </svg>`};function ni(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()}ni.$inject=["bpmnFactory","popupMenu","modeling","moddle","bpmnReplace","rules","translate","moddleCopy"],ni.prototype._register=function(){this._popupMenu.registerProvider("bpmn-replace",this)},ni.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=Ik(e);return E(t,"bpmn:DataObjectReference")?this._createEntries(e,Wk):E(t,"bpmn:DataStoreReference")&&!E(e.parent,"bpmn:Collaboration")?this._createEntries(e,Uk):(E(t,"bpmn:Event")&&!E(t,"bpmn:BoundaryEvent")&&(r=(s=t.get("eventDefinitions")[0])==null?void 0:s.$type,i=Zk[r]||[],!fn(t.$parent)&&E(t.$parent,"bpmn:SubProcess")&&(i=We(i,function(c){return c.target.type!=="bpmn:StartEvent"}))),E(t,"bpmn:StartEvent")&&!E(t.$parent,"bpmn:SubProcess")?(o=We(Nk.concat(i),a),this._createEntries(e,o)):E(t,"bpmn:Participant")?(o=We(Xk,function(c){return Ke(e)!==c.target.isExpanded}),this._createEntries(e,o)):E(t,"bpmn:StartEvent")&&fn(t.$parent)?(o=We(qk.concat(i),function(c){var u=c.target,l=u.isInterrupting!==!1,f=t.isInterrupting===l;return a(c)||!a(c)&&!f}),this._createEntries(e,o)):E(t,"bpmn:StartEvent")&&!fn(t.$parent)&&E(t.$parent,"bpmn:SubProcess")?(o=We($k.concat(i),a),this._createEntries(e,o)):E(t,"bpmn:EndEvent")?(o=We(jk.concat(i),function(c){var u=c.target;return u.eventDefinitionType=="bpmn:CancelEventDefinition"&&!E(t.$parent,"bpmn:Transaction")?!1:a(c)}),this._createEntries(e,o)):E(t,"bpmn:BoundaryEvent")?(o=We(Yk,function(c){var u=c.target;if(u.eventDefinitionType=="bpmn:CancelEventDefinition"&&!E(t.attachedToRef,"bpmn:Transaction"))return!1;var l=u.cancelActivity!==!1,f=t.cancelActivity==l;return a(c)||!a(c)&&!f}),this._createEntries(e,o)):E(t,"bpmn:IntermediateCatchEvent")||E(t,"bpmn:IntermediateThrowEvent")?(o=We(Fk.concat(i),a),this._createEntries(e,o)):E(t,"bpmn:Gateway")?(o=We(Hk,a),this._createEntries(e,o)):E(t,"bpmn:Transaction")?(o=We(L_,a),this._createEntries(e,o)):fn(t)&&Ke(e)?(o=We(Vk,a),this._createEntries(e,o)):E(t,"bpmn:AdHocSubProcess")&&Ke(e)?(o=We(Gk,a),this._createEntries(e,o)):E(t,"bpmn:SubProcess")&&Ke(e)?(o=We(zk,a),this._createEntries(e,o)):E(t,"bpmn:SubProcess")&&!Ke(e)?(o=We(I_,function(c){var u=c.target.type===e.type,l=c.target.isExpanded===!0;return u===l}),this._createEntries(e,o)):E(t,"bpmn:SequenceFlow")?this._createSequenceFlowEntries(e,Kk):E(t,"bpmn:FlowNode")?(o=We(I_,a),this._createEntries(e,o)):{})},ni.prototype.getPopupMenuHeaderEntries=function(e){var t={};return E(e,"bpmn:Activity")&&!fn(e)&&(t={...t,...this._getLoopCharacteristicsHeaderEntries(e)}),E(e,"bpmn:DataObjectReference")&&(t={...t,...this._getCollectionHeaderEntries(e)}),E(e,"bpmn:Participant")&&(t={...t,...this._getParticipantMultiplicityHeaderEntries(e)}),kg(e)&&(t={...t,...this._getNonInterruptingHeaderEntries(e)}),t},ni.prototype._createEntries=function(e,t){var n={},i=this;return N(t,function(r){n[r.actionName]=i._createEntry(r,e)}),n},ni.prototype._createSequenceFlowEntries=function(e,t){var n=ie(e),i={},r=this._modeling,o=this._moddle,a=this;return N(t,function(s){switch(s.actionName){case"replace-with-default-flow":n.sourceRef.default!==n&&(E(n.sourceRef,"bpmn:ExclusiveGateway")||E(n.sourceRef,"bpmn:InclusiveGateway")||E(n.sourceRef,"bpmn:ComplexGateway")||E(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&&E(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:E(n.sourceRef,"bpmn:Activity")&&n.conditionExpression&&(i={...i,[s.actionName]:a._createEntry(s,e,function(){r.updateProperties(e,{conditionExpression:void 0})})}),(E(n.sourceRef,"bpmn:ExclusiveGateway")||E(n.sourceRef,"bpmn:InclusiveGateway")||E(n.sourceRef,"bpmn:ComplexGateway")||E(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},ni.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}},ni.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 f=e.businessObject.get("loopCharacteristics");f&&E(f,l.options.loopCharacteristics)?t._modeling.updateModdleProperties(e,f,{isSequential:l.options.isSequential}):(f=t._moddle.create(l.options.loopCharacteristics,{isSequential:l.options.isSequential}),t._modeling.updateProperties(e,{loopCharacteristics:f}))}var r=ie(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"}}}},ni.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}}},ni.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}}},ni.prototype._getNonInterruptingHeaderEntries=function(e){const t=this._translate,n=ie(e),i=this,r=Og(e),o=E(e,"bpmn:BoundaryEvent")?B_["intermediate-event-non-interrupting"]:B_["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 Qk={__depends__:[If,Qy,zc],__init__:["replaceMenuProvider"],replaceMenuProvider:["type",ni]};function qa(e,t,n,i,r,o,a,s,c,u,l,f,p){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=f,this._eventBus=n,this._appendPreview=p,e.autoPlace!==!1&&(this._autoPlace=t.get("autoPlace",!1)),n.on("create.end",250,function(d){var h=d.context,m=h.shape;if(!(!ba(d)||!i.isOpen(m))){var g=i.getEntries(m);g.replace&&g.replace.action.click(d,m)}}),n.on("contextPad.close",function(){p.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)?Pr(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,h()),l;var f=e.businessObject;function p(b,_){r.start(b,_)}function d(b,_){n.removeElements([_])}function h(){return{delete:{group:"edit",className:"bpmn-icon-trash",title:c("Delete"),action:{click:d}}}}function m(b){var _=5,C=t.getPad(b).html,P=C.getBoundingClientRect(),D={x:P.left,y:P.bottom+_};return D}function g(b,_,C,P){function D(k,O){var H=i.createShape(V({type:b},P));o.start(k,H,{source:O})}var T=s?function(k,O){var H=i.createShape(V({type:b},P));s.append(O,H)}:D,I=s?function(k,O){return u.create(O,b,P),()=>{u.cleanUp()}}:null;return{group:"model",className:_,title:C,action:{dragstart:D,click:T,hover:I}}}function y(b){return function(_,C){n.splitLane(C,b),t.open(C,!0)}}if(Ve(f,["bpmn:Lane","bpmn:Participant"])&&Ke(e)){var v=ar(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,_){n.addLane(_,"top")}}}}),v.length<2&&((qt(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:y(2)}}}),(qt(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:y(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,_){n.addLane(_,"bottom")}}}})}return E(f,"bpmn:FlowNode")&&(E(f,"bpmn:EventBasedGateway")?V(l,{"append.receive-task":g("bpmn:ReceiveTask","bpmn-icon-receive-task",c("Append receive task")),"append.message-intermediate-event":g("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-message",c("Append message intermediate catch event"),{eventDefinitionType:"bpmn:MessageEventDefinition"}),"append.timer-intermediate-event":g("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-timer",c("Append timer intermediate catch event"),{eventDefinitionType:"bpmn:TimerEventDefinition"}),"append.condition-intermediate-event":g("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-condition",c("Append conditional intermediate catch event"),{eventDefinitionType:"bpmn:ConditionalEventDefinition"}),"append.signal-intermediate-event":g("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-signal",c("Append signal intermediate catch event"),{eventDefinitionType:"bpmn:SignalEventDefinition"})}):N_(f,"bpmn:BoundaryEvent","bpmn:CompensateEventDefinition")?V(l,{"append.compensation-activity":g("bpmn:Task","bpmn-icon-task",c("Append compensation activity"),{isForCompensation:!0})}):!E(f,"bpmn:EndEvent")&&!f.isForCompensation&&!N_(f,"bpmn:IntermediateThrowEvent","bpmn:LinkEventDefinition")&&!fn(f)&&V(l,{"append.end-event":g("bpmn:EndEvent","bpmn-icon-end-event-none",c("Append end event")),"append.gateway":g("bpmn:ExclusiveGateway","bpmn-icon-gateway-none",c("Append gateway")),"append.append-task":g("bpmn:Task","bpmn-icon-task",c("Append task")),"append.intermediate-event":g("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,_){var C=V(m(_),{cursor:{x:b.x,y:b.y}});a.open(_,"bpmn-replace",C,{title:c("Change element"),width:"var(--bpmn-replace-popup-width, 300px)",search:!0})}}}}),E(f,"bpmn:SequenceFlow")&&V(l,{"append.text-annotation":g("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),E(f,"bpmn:MessageFlow")&&V(l,{"append.text-annotation":g("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),Ve(f,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference"])&&V(l,{"append.text-annotation":g("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:p,dragstart:p}}}),E(f,"bpmn:TextAnnotation")&&V(l,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect using association"),action:{click:p,dragstart:p}}}),Ve(f,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&V(l,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect using data input association"),action:{click:p,dragstart:p}}}),E(f,"bpmn:Group")&&V(l,{"append.text-annotation":g("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),this._isDeleteAllowed([e])&&V(l,h()),l};function N_(e,t,n){var i=e.$instanceOf(t),r=!1,o=e.eventDefinitions||[];return N(o,function(a){a.$type===n&&(r=!0)}),i&&r}const Jk={__depends__:[kk,D_,fb,Qn,Gf,_c,Qk],__init__:["contextPadProvider"],contextPadProvider:["type",qa]};var eO={horizontal:["x","width"],vertical:["y","height"]},$_=5;function Ui(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:[]})}Ui.$inject=["modeling","rules"],Ui.prototype.registerFilter=function(e){if(typeof e!="function")throw new Error("the filter has to be a function");this._filters.push(e)},Ui.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},Ui.prototype._filterElements=function(e){var t=this._filters,n=this._axis,i=this._dimension,r=[].concat(e);return t.length?(N(t,function(o){r=o(r,n,i)}),r):e},Ui.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=li(e,i);return N(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},Ui.prototype._setOrientation=function(e){var t=eO[e];this._axis=t[0],this._dimension=t[1]},Ui.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)},Ui.prototype._findRange=function(e){var t=e[this._axis],n=e[this._dimension];return{min:t+$_,max:t+n-$_}};const tO={__init__:["distributeElements"],distributeElements:["type",Ui]};function gu(e){Zn.call(this,e)}gu.$inject=["eventBus"],_e(gu,Zn),gu.prototype.init=function(){this.addRule("elements.distribute",function(e){var t=e.elements;return t=We(t,function(n){var i=Ve(n,["bpmn:Association","bpmn:BoundaryEvent","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:Lane","bpmn:MessageFlow","bpmn:SequenceFlow","bpmn:TextAnnotation"]);return!(n.labelTarget||i)}),t=Os(t),t.length<3?!1:t})};var F_={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>`},Qk=900;function Ya(e,t,n,i){this._distributeElements=t,this._translate=n,this._popupMenu=e,this._rules=i,e.registerProvider("align-elements",Qk,this)}Ya.$inject=["popupMenu","distributeElements","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.distribute",{elements:e})},Ya.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:N_.horizontal,action:function(o,a){t.trigger(e,"horizontal"),i.close()}},"distribute-elements-vertical":{group:"distribute",title:n("Distribute elements vertically"),imageHtml:N_.vertical,action:function(o,a){t.trigger(e,"vertical"),i.close()}}};return r};const Jk={__depends__:[Of,Zk],__init__:["bpmnDistributeElements","distributeElementsMenuProvider"],bpmnDistributeElements:["type",du],distributeElementsMenuProvider:["type",Ya]};var $_="is not a registered action",eO="is already registered";function ni(e,t){this._eventBus=e,this._actions={};var n=this;e.on("diagram.init",function(){n._registerDefaultActions(t),e.fire("editorActions.init",{editorActions:n})})}ni.$inject=["eventBus","injector"],ni.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 f=s.allowed("elements.delete",{elements:l});if(f!==!1){var p=De(f)?f:l;return o.cut(p.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 f=s.allowed("elements.delete",{elements:l}),p;f!==!1&&(De(f)?p=f:p=l,p.length&&n.removeElements(p.slice()))}}),c&&this.register("moveCanvas",function(l){c.moveCanvas(l)}),u&&this.register("moveSelection",function(l){u.moveSelection(l.direction,l.accelerated)})},ni.prototype.trigger=function(e,t){if(!this._actions[e])throw zf(e,$_);var n=this._eventBus.fire("editorActions.allowed",{action:e,opts:t});if(n!==!1)return this._actions[e](t)},ni.prototype.register=function(e,t){var n=this;if(typeof e=="string")return this._registerAction(e,t);B(e,function(i,r){n._registerAction(r,i)})},ni.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw zf(e,eO);this._actions[e]=t},ni.prototype.unregister=function(e){if(!this.isRegistered(e))throw zf(e,$_);this._actions[e]=void 0},ni.prototype.getActions=function(){return Object.keys(this._actions)},ni.prototype.isRegistered=function(e){return!!this._actions[e]};function zf(e,t){return new Error(e+" "+t)}const tO={__init__:["editorActions"],editorActions:["type",ni]};function hu(e){e.invoke(ni,this)}_e(hu,ni),hu.$inject=["injector"],hu.prototype._registerDefaultActions=function(e){ni.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),f=e.get("searchPad",!1),p=e.get("modeling",!1),d=e.get("contextPad",!1);t&&n&&i&&this._registerAction("selectElements",function(){var g=t.getRootElement(),h=n.filter(function(m){return m!==g});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(g){var h=i.get(),m=g.type;h.length&&c.trigger(h,m)}),i&&u&&this._registerAction("alignElements",function(g){var h=i.get(),m=[],x=g.type;h.length&&(m=We(h,function(y){return!w(y,"bpmn:Lane")}),u.trigger(m,x))}),i&&p&&this._registerAction("setColor",function(g){var h=i.get();h.length&&p.setColor(h,g)}),i&&l&&this._registerAction("directEditing",function(){var g=i.get();g.length&&l.activate(g[0])}),f&&this._registerAction("find",function(){f.toggle()}),t&&p&&this._registerAction("moveToOrigin",function(){var g=t.getRootElement(),h,m;w(g,"bpmn:Collaboration")?m=n.filter(function(x){return w(x.parent,"bpmn:Collaboration")}):m=n.filter(function(x){return x!==g&&!w(x.parent,"bpmn:SubProcess")}),h=Dt(m),p.moveElements(m,{x:-h.x,y:-h.y},g)}),i&&d&&this._registerAction("replaceElement",function(g){d.triggerEntry("replace","click",g)})};const nO={__depends__:[tO],editorActions:["type",hu]};function F_(e){e.on(["create.init","shape.move.init"],function(t){var n=t.context,i=t.shape;Ve(i,["bpmn:Participant","bpmn:SubProcess","bpmn:TextAnnotation"])&&(n.gridSnappingContext||(n.gridSnappingContext={}),n.gridSnappingContext.snapLocation="top-left")})}F_.$inject=["eventBus"];function qr(e,t){te.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;Sn(a)?r.newBounds=n.snapComplex(c,a):r.newBounds=n.snapSimple(s,c)}})}qr.$inject=["eventBus","gridSnapping","modeling"],_e(qr,te),qr.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},qr.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},qr.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},qr.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 iO=2e3;function j_(e,t){e.on(["spaceTool.move","spaceTool.end"],iO,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)}})}j_.$inject=["eventBus","gridSnapping"];const rO={__init__:["gridSnappingResizeBehavior","gridSnappingSpaceToolBehavior"],gridSnappingResizeBehavior:["type",qr],gridSnappingSpaceToolBehavior:["type",j_]};var mu=10;function Gf(e,t,n){return n||(n="round"),Math[n](e/t)*t}var oO=1200,aO=800;function br(e,t,n){var i=!n||n.active!==!1;this._eventBus=t;var r=this;t.on("diagram.init",aO,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"],oO,function(o){var a=o.originalEvent;if(!(!r.active||a&&kn(a))){var s=o.context,c=s.gridSnappingContext;c||(c=s.gridSnappingContext={}),["x","y"].forEach(function(u){var l={},f=cO(o,u,e);f&&(l.offset=f);var p=sO(o,u);p&&V(l,p),jo(o,u)||r.snapEvent(o,u,l)})}})}br.prototype.snapEvent=function(e,t,n){var i=this.snapValue(e[t],n);Nt(e,t,i)},br.prototype.getGridSpacing=function(){return mu},br.prototype.snapValue=function(e,t){var n=0;t&&t.offset&&(n=t.offset),e+=n,e=Gf(e,mu);var i,r;return t&&t.min&&(i=t.min,Be(i)&&(i=Gf(i+n,mu,"ceil"),e=Math.max(e,i))),t&&t.max&&(r=t.max,Be(r)&&(r=Gf(r+n,mu,"floor"),e=Math.min(e,r))),e-=n,e},br.prototype.isActive=function(){return this.active},br.prototype.setActive=function(e){this.active=e,this._eventBus.fire("gridSnapping.toggle",{active:e})},br.prototype.toggleActive=function(){this.setActive(!this.active)},br.$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&&(gu(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&&(gu(t)?z_(s)?a.x.max=c.left:a.x.min=c.right:H_(s)?a.y.max=c.top:a.y.min=c.bottom),u&&(gu(t)?z_(s)?a.x.min=u.left:a.x.max=u.right:H_(s)?a.y.min=u.top:a.y.max=u.bottom),a[t]}function cO(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)||(gu(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 gu(e){return e==="x"}function H_(e){return e.indexOf("n")!==-1}function z_(e){return e.indexOf("w")!==-1}const uO={__depends__:[rO],__init__:["gridSnapping"],gridSnapping:["type",br]};var lO=2e3;function G_(e,t,n){e.on("autoPlace",lO,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],w(a,"bpmn:TextAnnotation")&&(pO(c)?u.offset=-a.width/2:u.offset=-a.height/2),s[c]=t.snapValue(s[c],u))}),s})}G_.$inject=["eventBus","gridSnapping","elementRegistry"];function pO(e){return e==="x"}var fO=1750;function V_(e,t,n){t.on(["create.start","shape.move.start"],fO,function(i){var r=i.context,o=r.shape,a=e.getRootElement();if(!(!w(o,"bpmn:Participant")||!w(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}))}})}V_.$inject=["canvas","eventBus","gridSnapping"];var dO=3e3;function yu(e,t,n){te.call(this,e),this._gridSnapping=t;var i=this;this.postExecuted(["connection.create","connection.layout"],dO,function(r){var o=r.context,a=o.connection,s=o.hints||{},c=a.waypoints;s.connectionStart||s.connectionEnd||s.createElementsBehavior===!1||hO(c)&&n.updateWaypoints(a,i.snapMiddleSegments(c))})}yu.$inject=["eventBus","gridSnapping","modeling"],_e(yu,te),yu.prototype.snapMiddleSegments=function(e){var t=this._gridSnapping,n;e=e.slice();for(var i=1;i<e.length-2;i++)n=yO(t,e[i],e[i+1]),e[i]=n[0],e[i+1]=n[1];return e};function hO(e){return e.length>3}function mO(e){return e==="h"}function gO(e){return e==="v"}function yO(e,t,n){var i=Oi(t,n),r={};return mO(i)&&(r.y=e.snapValue(t.y)),gO(i)&&(r.x=e.snapValue(t.x)),("x"in r||"y"in r)&&(t=V({},t,r),n=V({},n,r)),[t,n]}const vO={__depends__:[uO,{__init__:["gridSnappingAutoPlaceBehavior","gridSnappingParticipantBehavior","gridSnappingLayoutConnectionBehavior"],gridSnappingAutoPlaceBehavior:["type",G_],gridSnappingParticipantBehavior:["type",V_],gridSnappingLayoutConnectionBehavior:["type",yu]}],__init__:["bpmnGridSnapping"],bpmnGridSnapping:["type",F_]};var bO=30,W_=30;function Ka(e,t){this._interactionEvents=t;var n=this;e.on(["interactionEvents.createHit","interactionEvents.updateHit"],function(i){var r=i.element,o=i.gfx;if(w(r,"bpmn:Lane"))return n._createParticipantHit(r,o);if(w(r,"bpmn:Participant"))return Ke(r)?n._createParticipantHit(r,o):n._createDefaultHit(r,o);if(w(r,"bpmn:SubProcess"))return Ke(r)?n._createSubProcessHit(r,o):n._createDefaultHit(r,o)})}Ka.$inject=["eventBus","interactionEvents"],Ka.prototype._createDefaultHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createDefaultHit(e,t),!0},Ka.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=Yt(e)?{width:bO,height:e.height}:{width:e.width,height:W_};return this._interactionEvents.createBoxHit(t,"all",n),!0},Ka.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:W_}),!0};const _O={__init__:["bpmnInteractionEvents"],bpmnInteractionEvents:["type",Ka]};function vu(e){e.invoke(Do,this)}_e(vu,Do),vu.$inject=["injector"],vu.prototype.registerBindings=function(e,t){Do.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 xO={__depends__:[yf],__init__:["keyboardBindings"],keyboardBindings:["type",vu]};var wO={moveSpeed:1,moveSpeedAccelerated:10},EO=1500,U_="left",q_="up",Y_="right",K_="down",SO={ArrowLeft:U_,Left:U_,ArrowUp:q_,Up:q_,ArrowRight:Y_,Right:Y_,ArrowDown:K_,Down:K_},RO={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 X_(e,t,n,i,r){var o=this;this._config=V({},wO,e||{}),t.addListener(EO,function(a){var s=a.keyEvent,c=SO[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=RO[a](u),f=i.allowed("elements.move",{shapes:c,hints:{keyboardMove:!0}});f&&n.moveElements(c,l)}}}X_.$inject=["config.keyboardMoveSelection","keyboard","modeling","rules","selection"];const CO={__depends__:[yf,Zn],__init__:["keyboardMoveSelection"],keyboardMoveSelection:["type",X_]};var Z_=10;function Xa(e,t,n,i){this._dragging=i,this._rules=t;var r=this;function o(c,u){var l=c.shape,f=c.direction,p=c.resizeConstraints,d;c.delta=u,d=wC(l,f,u),c.newBounds=SC(d,p),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:Ae(l)})}function s(c){var u=c.shape,l=c.canExecute,f=c.newBounds;if(l){if(f=hm(f),!PO(u,f))return;n.resizeShape(u,f)}}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)})}Xa.prototype.canResize=function(e){var t=this._rules,n=oi(e,["newBounds","shape","delta","direction"]);return t.allowed("shape.resize",n)},Xa.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,Q_(t,o),"resize",{autoActivate:!0,cursor:AO(o),data:{shape:t,context:r}})},Xa.prototype.computeMinResizeBox=function(e){var t=e.shape,n=e.direction,i,r;return i=e.minDimensions||{width:Z_,height:Z_},r=tg(t,e.childrenBoxPadding),RC(n,t,i,r)},Xa.$inject=["eventBus","rules","modeling","dragging"];function PO(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}function Q_(e,t){var n=Le(e),i=Ae(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 AO(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 J_="djs-resizing",ex="resize-not-ok",TO=500;function tx(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,J_)),s.width>5&&xe(c,{x:s.x,width:s.width}),s.height>5&&xe(c,{y:s.y,height:s.height}),o.canExecute?Xe(c).remove(ex):Xe(c).add(ex)}function r(o){var a=o.shape,s=o.frame;s&&Ht(o.frame),t.removeMarker(a,J_)}e.on("resize.move",TO,function(o){i(o.context)}),e.on("resize.cleanup",function(o){r(o.context)})}tx.$inject=["eventBus","canvas","previewSupport"];var bu=-6,_u=8,xu=20,Za="djs-resizer",MO=["n","w","s","e","nw","ne","se","sw"];function _r(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&&B(a,xn(r.addResizer,r))}),e.on("shape.changed",function(o){var a=o.element;n.isSelected(a)&&(r.removeResizers(),r.addResizer(a))})}_r.prototype.makeDraggable=function(e,t,n){var i=this._resize;function r(o){cr(o)&&i.activate(o,e,n)}$e.bind(t,"mousedown",r),$e.bind(t,"touchstart",r)},_r.prototype._createResizer=function(e,t,n,i){var r=this._getResizersParent(),o=kO(i),a=Pe("g");Xe(a).add(Za),Xe(a).add(Za+"-"+e.id),Xe(a).add(Za+"-"+i),Fe(r,a);var s=Pe("rect");xe(s,{x:-_u/2+o.x,y:-_u/2+o.y,width:_u,height:_u}),Xe(s).add(Za+"-visual"),Fe(a,s);var c=Pe("rect");return xe(c,{x:-xu/2+o.x,y:-xu/2+o.y,width:xu,height:xu}),Xe(c).add(Za+"-hit"),Fe(a,c),Is(a,t,n),a},_r.prototype.createResizer=function(e,t){var n=Q_(e,t),i=this._createResizer(e,n.x,n.y,t);this.makeDraggable(e,i,t)},_r.prototype.addResizer=function(e){var t=this;ot(e)||B(MO,function(n){t._resize.canResize({shape:e,direction:n})&&t.createResizer(e,n)})},_r.prototype.removeResizers=function(){var e=this._getResizersParent();Cs(e)},_r.prototype._getResizersParent=function(){return this._canvas.getLayer("resizers")},_r.$inject=["eventBus","canvas","selection","resize"];function kO(e){var t={x:0,y:0};return e.indexOf("e")!==-1?t.x=-bu:e.indexOf("w")!==-1&&(t.x=bu),e.indexOf("s")!==-1?t.y=-bu:e.indexOf("n")!==-1&&(t.y=bu),t}const nx={__depends__:[xi,$i,Mo],__init__:["resize","resizePreview","resizeHandles"],resize:["type",Xa],resizePreview:["type",tx],resizeHandles:["type",_r]};var OO=2e3;function Qa(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"],OO,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,f=c.context.canExecute,p=c.isTouch;p||f&&(u.hints&&u.hints.createElementsBehavior===!1||s(l))}),e.on("autoPlace.end",500,function(c){s(c.shape)});function s(c,u){(u||Ve(c,["bpmn:Activity","bpmn:Event","bpmn:TextAnnotation","bpmn:Participant"]))&&i.activate(c)}}Qa.$inject=["eventBus","bpmnFactory","canvas","directEditing","modeling","resizeHandles","textRenderer"],Qa.prototype.activate=function(e){var t=zn(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}),(Ve(e,["bpmn:Task","bpmn:Participant","bpmn:Lane","bpmn:CallActivity"])||ix(e))&&V(r,{centerVertically:!0}),rr(e)&&(V(r,{resizable:!0,autoResize:!0}),V(o,{backgroundColor:"#ffffff",border:"1px solid #ccc"})),w(e,"bpmn:TextAnnotation")&&(V(r,{resizable:!0,autoResize:!0}),V(o,{backgroundColor:"#ffffff",border:"1px solid #ccc"})),V(n,{options:r,style:o}),n}},Qa.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,f=s.fontSize*a,p=s.lineHeight,d={fontFamily:this._textRenderer.getDefaultStyle().fontFamily,fontWeight:this._textRenderer.getDefaultStyle().fontWeight};if(w(e,"bpmn:Lane")||IO(e)){var g=Yt(e),h=g?{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:f+"px",lineHeight:p,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px",transform:g?"rotate(-90deg)":null})}if(LO(e)){var m=Yt(e),x=m?{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,x),V(d,{fontSize:f+"px",lineHeight:p,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px",transform:m?null:"rotate(-90deg)"})}(Ve(e,["bpmn:Task","bpmn:CallActivity"])||ix(e))&&(V(o,{width:i.width,height:i.height}),V(d,{fontSize:f+"px",lineHeight:p,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px"})),DO(e)&&(V(o,{width:i.width,x:i.x}),V(d,{fontSize:f+"px",lineHeight:p,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px"}));var y=1,_=i.width+2*y;if(n.labelTarget&&(V(o,{width:_,height:i.height+2*y,x:i.x-y,y:i.y-y}),V(d,{fontSize:u+"px",lineHeight:l})),rr(n)&&!$s(n)&&!Ge(n)){var S=Ml(e),P=t.getAbsoluteBBox({x:S.x,y:S.y,width:0,height:0}),C=u,L=Ir.width*a+2*y;V(o,{width:L,height:C+2*y,x:P.x-L/2,y:P.y-C/2-y}),V(d,{fontSize:u+"px",lineHeight:l})}return w(e,"bpmn:TextAnnotation")&&(V(o,{width:i.width+2*y,height:i.height+2*y,x:i.x-y,y:i.y-y,minWidth:30*a,minHeight:10*a}),V(d,{textAlign:"left",paddingTop:yo*a+"px",paddingBottom:yo*a+"px",paddingLeft:yo*a+"px",paddingRight:yo*a+"px",fontSize:f+"px",lineHeight:p})),{bounds:o,style:d}},Qa.prototype.update=function(e,t,n,i){var r,o;w(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}),BO(t)&&(t=null),this._modeling.updateLabel(e,t,r)};function ix(e){return w(e,"bpmn:SubProcess")&&!Ke(e)}function DO(e){return w(e,"bpmn:SubProcess")&&Ke(e)}function LO(e){return w(e,"bpmn:Participant")&&!Ke(e)}function IO(e){return w(e,"bpmn:Participant")&&Ke(e)}function BO(e){return!e||!e.trim()}var rx="djs-element-hidden",ox="djs-label-hidden";function ax(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,w(o,"bpmn:TextAnnotation")){a=t.getAbsoluteBBox(o),s=Pe("g");var l=n.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:o.width,containerHeight:o.height,position:{mx:0,my:0}}),f=i.path=Pe("path");xe(f,{d:l,strokeWidth:2,stroke:NO(o)}),Fe(s,f),Fe(r,s),en(s,o.x,o.y)}w(o,"bpmn:TextAnnotation")||o.labelTarget?t.addMarker(o,rx):(w(o,"bpmn:Task")||w(o,"bpmn:CallActivity")||w(o,"bpmn:SubProcess")||w(o,"bpmn:Participant")||w(o,"bpmn:Lane"))&&t.addMarker(o,ox)}),e.on("directEditing.resize",function(c){if(w(o,"bpmn:TextAnnotation")){var u=c.height,l=c.dy,f=Math.max(o.height/a.height*(u+l),0),p=n.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:o.width,containerHeight:f,position:{mx:0,my:0}});xe(i.path,{d:p})}}),e.on(["directEditing.complete","directEditing.cancel"],function(c){var u=c.active;u&&(t.removeMarker(u.element.label||u.element,rx),t.removeMarker(o,ox)),o=void 0,a=void 0,s&&(Ht(s),s=void 0)})}ax.$inject=["eventBus","canvas","pathMap"];function NO(e,t){var n=Ze(e);return n.get("stroke")||t||"black"}const $O={__depends__:[Yp,nx,k_],__init__:["labelEditingProvider","labelEditingPreview"],labelEditingProvider:["type",Qa],labelEditingPreview:["type",ax]};var FO=500,jO=1e3;function Si(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){SS(o)||i.createOutline(o)}e.on("element.hover",function(o){r(o.element)}),e.on("selection.changed",function(o){B(o.newSelection,r)}),e.on(["shape.changed","connection.changed"],FO,function(o){var a=o.element,s=o.gfx,c=rt(".djs-outline",s);c&&i.updateOutline(a,c)})}Si.prototype.createOutline=function(e){var t=this._elementRegistry.getGraphics(e);if(!t)throw new Error("cannot create outline for non-rendered element");var n=rt(".djs-outline",t);return n||(n=this.getOutline(e)||this._createOutlineGfx(),Fe(t,n),this.updateOutline(e,n)),n},Si.prototype._createOutlineGfx=function(){var e=Pe("rect");return xe(e,V({x:0,y:0,rx:4,width:100,height:100},this._outlineStyle)),e},Si.prototype.updateOutline=function(e,t){e.waypoints?this.updateConnectionOutline(t,e):this.updateShapeOutline(t,e)},Si.prototype.updateShapeOutline=function(e,t){var n=!1,i=this._getProviders();i.length&&B(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})},Si.prototype.updateConnectionOutline=function(e,t){var n=Dt(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})},Si.prototype.registerProvider=function(e,t){t||(t=e,e=jO),this._eventBus.on("outline.getProviders",e,function(n){n.providers.push(t)})},Si.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"outline.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},Si.prototype.getOutline=function(e){var t,n=this._getProviders();return B(n,function(i){Ut(i.getOutline)&&(t=t||i.getOutline(e))}),t},Si.$inject=["eventBus","styles","elementRegistry"];var wu=6;function Vf(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)})}Vf.prototype._updateMultiSelectionOutline=function(e){var t=this._canvas.getLayer("selectionOutline");Cs(t);var n=e.length>1,i=this._canvas.getContainer();if(Xe(i)[n?"add":"remove"]("djs-multi-select"),!!n){var r=HO(Dt(e)),o=Pe("rect");xe(o,V({rx:3},r)),Xe(o).add("djs-selection-outline"),Fe(t,o)}},Vf.$inject=["eventBus","canvas","selection"];function HO(e){return{x:e.x-wu,y:e.y-wu,width:e.width+wu*2,height:e.height+wu*2}}const Wf={__depends__:[Zn],__init__:["outline","multiSelectionOutline"],outline:["type",Si],multiSelectionOutline:["type",Vf]},sx=["bpmn:Event","bpmn:SequenceFlow","bpmn:Gateway"],cx={class:"bjs-label-link",stroke:"var(--element-selected-outline-secondary-stroke-color)",strokeDasharray:"5, 5"},zO=15,Eu=2;function ux(e,t,n,i,r){const o=t.getLayer("overlays");e.on(["selection.changed","shape.changed"],function(){s()}),e.on("selection.changed",function({newSelection:f}){var d;const p=f.filter(g=>Ve(g,sx));if(p.length===1){const g=p[0];Ge(g)?a(g,g.labelTarget):(d=g.labels)!=null&&d.length&&a(g.labels[0],g)}if(p.length===2){const g=p.find(Ge),h=p.find(m=>{var x;return(x=m.labels)==null?void 0:x.includes(g)});g&&h&&a(g,h)}}),e.on("shape.changed",function({element:f}){var p;!Ve(f,sx)||!l(f)||(Ge(f)?a(f,f.labelTarget):(p=f.labels)!=null&&p.length&&a(f.labels[0],f))});function a(f,p){const d=ta([Le(p),Le(f)],cx),g=d.getAttribute("d"),m=r.isSelected(f)?c(f):u(f),x=oa(m,g);if(!x)return;const _=r.isSelected(p)?c(p):u(p),S=oa(_,g)||Le(p);ma(S,x)<zO||(wl(d,[S,x]),Fe(o,d))}function s(){Rs(`.${cx.class}`,o).forEach(Ht)}function c(f){const p=i.getOutline(f);if(!p)return u(f);if(p.x){const d={x:f.x+xr(p,"x")-Eu,y:f.y+xr(p,"y")-Eu,width:xr(p,"width")+Eu*2,height:xr(p,"height")+Eu*2};return Ol(d,xr(p,"rx"))}if(p.cx){const d=xr(p,"r"),g={x:f.x+xr(p,"cx")-d,y:f.y+xr(p,"cy")-d,width:d*2,height:d*2};return $m(g)}}function u(f){return n.getShapePath(f)}function l(f){return r.isSelected(f)}}ux.$inject=["eventBus","canvas","graphicsFactory","outline","selection"];function xr(e,t){return parseFloat(xe(e,t)||0)}const GO={__depends__:[Zn,Wf],__init__:["labelLink"],labelLink:["type",ux]};var VO=new To("tt");function WO(e){var t=mt('<div class="djs-tooltip-container" />');return vn(t,{position:"absolute",width:"0",height:"0"}),e.insertBefore(t,e.firstChild),t}function UO(e,t,n){vn(e,{left:t+"px",top:n+"px"})}function Uf(e,t){e.style.display=t===!1?"none":""}var lx="djs-tooltip",qf="."+lx;function En(e,t){this._eventBus=e,this._canvas=t,this._ids=VO,this._tooltipDefaults={show:{minZoom:.7,maxZoom:5}},this._tooltips={},this._tooltipRoot=WO(t.getContainer());var n=this;An.bind(this._tooltipRoot,qf,"mousedown",function(i){i.stopPropagation()}),An.bind(this._tooltipRoot,qf,"mouseover",function(i){n.trigger("mouseover",i)}),An.bind(this._tooltipRoot,qf,"mouseout",function(i){n.trigger("mouseout",i)}),this._init()}En.$inject=["eventBus","canvas"],En.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},En.prototype.trigger=function(e,t){var n=t.delegateTarget||t.target,i=this.get(ln(n,"data-tooltip-id"));i&&(e==="mouseover"&&i.timeout&&this.clearTimeout(i),e==="mouseout"&&i.timeout&&(i.timeout=1e3,this.setTimeout(i)))},En.prototype.get=function(e){return typeof e!="string"&&(e=e.id),this._tooltips[e]},En.prototype.clearTimeout=function(e){if(e=this.get(e),!!e){var t=e.removeTimer;t&&(clearTimeout(t),e.removeTimer=null)}},En.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)}},En.prototype.remove=function(e){var t=this.get(e);t&&(mi(t.html),mi(t.htmlContainer),delete t.htmlContainer,delete this._tooltips[t.id])},En.prototype.show=function(){Uf(this._tooltipRoot)},En.prototype.hide=function(){Uf(this._tooltipRoot,!1)},En.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},En.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)),Sn(n)&&(n=mt(n)),i=mt('<div data-tooltip-id="'+t+'" class="'+lx+'">'),vn(i,{position:"absolute"}),i.appendChild(n),e.type&&bt(i).add("djs-tooltip-"+e.type),e.className&&bt(i).add(e.className),e.htmlContainer=i,r.appendChild(i),this._tooltips[t]=e,this._updateTooltip(e)},En.prototype._updateTooltip=function(e){var t=e.position,n=e.htmlContainer;UO(n,t.x,t.y)},En.prototype._updateTooltipVisibilty=function(e){B(this._tooltips,function(t){var n=t.show,i=t.htmlContainer,r=!0;n&&((n.minZoom>e.scale||n.maxZoom<e.scale)&&(r=!1),Uf(i,r))})},En.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 qO={__init__:["tooltips"],tooltips:["type",En]};var YO="flow elements must be children of pools/participants",KO="Data object must be placed within a pool/participant.";function px(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;w(s,"bpmn:Collaboration")&&(w(a,"bpmn:FlowNode")?i(r,n(YO)):w(a,"bpmn:DataObjectReference")&&i(r,n(KO)))})}px.$inject=["eventBus","tooltips","translate"];const XO={__depends__:[qO],__init__:["modelingFeedback"],modelingFeedback:["type",px]};var ZO=500,QO=1250,JO=1500,Su=Math.round;function eD(e){return{x:e.x+Su(e.width/2),y:e.y+Su(e.height/2)}}function fx(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",JO,function(s){var c=s.context,u=s.shape,l=i.get().slice();l.indexOf(u)===-1&&(l=[u]),l=tD(l),V(c,{shapes:l,validatedShapes:l,shape:u})}),e.on("shape.move.start",QO,function(s){var c=s.context,u=c.validatedShapes,l;if(l=c.canExecute=o(u),!l)return!1}),e.on("shape.move.move",ZO,function(s){var c=s.context,u=c.validatedShapes,l=s.hover,f={x:s.dx,y:s.dy},p={x:s.x,y:s.y},d;if(d=o(u,f,p,l),c.delta=f,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,f=l==="attach",p=c.shapes;if(l===!1)return!1;u.x=Su(u.x),u.y=Su(u.y),!(u.x===0&&u.y===0)&&n.moveElements(p,u,c.target,{primaryShape:c.shape,attach:f})}),e.on("element.mousedown",function(s){if(cr(s)){var c=Ro(s);if(!c)throw new Error("must supply DOM mousedown event");return a(c,s.element)}});function a(s,c,u,l){if(Wt(u)&&(l=u,u=!1),!(c.waypoints||!c.parent)&&!Xe(s.target).has("djs-hit-no-move")){var f=eD(c),p=t.init(s,f,"shape.move",{cursor:"grabbing",autoActivate:u,data:{shape:c,context:l||{}}});if(p!==!1)return!0}}this.start=a}fx.$inject=["eventBus","dragging","modeling","selection","rules"];function tD(e){var t=eo(e,"id");return We(e,function(n){for(;n=n.parent;)if(t[n.id])return!1;return!0})}var dx=499,Yf="djs-dragging",hx="drop-ok",mx="drop-not-ok",gx="new-parent",yx="attach-ok";function vx(e,t,n,i){function r(c){var u=o(c),l=nD(u);return l}function o(c){var u=na(c),l=u.flatMap(d=>(d.incoming||[]).concat(d.outgoing||[])),f=u.concat(l),p=[...new Set(f)];return p}function a(c,u){[yx,hx,mx,gx].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,Yf),c.allDraggedElements?c.allDraggedElements.push(u):c.allDraggedElements=[u]}e.on("shape.move.start",dx,function(c){var u=c.context,l=u.shapes,f=u.allDraggedElements,p=r(l);if(!u.dragGroup){var d=Pe("g");xe(d,n.cls("djs-drag-group",["no-events"]));var g=t.getActiveLayer();Fe(g,d),u.dragGroup=d}p.forEach(function(h){i.addDragger(h,u.dragGroup)}),f?f=Lu([f,o(l)]):f=o(l),B(f,function(h){t.addMarker(h,Yf)}),u.allDraggedElements=f,u.differentParents=iD(l)}),e.on("shape.move.move",dx,function(c){var u=c.context,l=u.dragGroup,f=u.target,p=u.shape.parent,d=u.canExecute;f&&(d==="attach"?a(f,yx):u.canExecute&&p&&f.id!==p.id?a(f,gx):a(f,u.canExecute?hx:mx)),en(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,f=u.dragGroup;B(l,function(p){t.removeMarker(p,Yf)}),f&&Ht(f)}),this.makeDraggable=s}vx.$inject=["eventBus","canvas","styles","previewSupport"];function nD(e){var t=new Set;e.forEach(function(i){t.add(i.id)});var n=We(e,function(i){return ot(i)?t.has(i.source.id)&&t.has(i.target.id):!0});return n}function iD(e){return X0(eo(e,function(t){return t.parent&&t.parent.id}))!==1}const rD={__depends__:[mc,Zn,Wf,xi,$i,Mo],__init__:["move","movePreview"],move:["type",fx],movePreview:["type",vx]};var bx=".djs-palette-toggle",_x=".entry",oD=bx+", "+_x,Kf="djs-palette-",aD="shown",Xf="open",xx="two-column",sD=1e3;function $t(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()})}$t.$inject=["eventBus","canvas"],$t.prototype.registerProvider=function(e,t){t||(t=e,e=sD),this._eventBus.on("palette.getProviders",e,function(n){n.providers.push(t)}),this._rebuild()},$t.prototype.getEntries=function(){var e=this._getProviders();return e.reduce(uD,{})},$t.prototype._rebuild=function(){if(this._diagramInitialized){var e=this._getProviders();e.length&&(this._container||this._init(),this._update())}},$t.prototype._init=function(){var e=this,t=this._eventBus,n=this._getParentContainer(),i=this._container=mt($t.HTML_MARKUP);n.appendChild(i),bt(n).add(Kf+aD),An.bind(i,oD,"click",function(r){var o=r.delegateTarget;if(dl(o,bx))return e.toggle();e.trigger("click",r)}),$e.bind(i,"mousedown",function(r){r.stopPropagation()}),An.bind(i,_x,"dragstart",function(r){e.trigger("dragstart",r)}),t.on("canvas.resized",this._layoutChanged,this),t.fire("palette.create",{container:i})},$t.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"palette.getProviders",providers:[]});return this._eventBus.fire(t),t.providers},$t.prototype._toggleState=function(e){e=e||{};var t=this._getParentContainer(),n=this._container,i=this._eventBus,r,o=bt(n),a=bt(t);"twoColumn"in e?r=e.twoColumn:r=this._needsCollapse(t.clientHeight,this._entries||{}),o.toggle(xx,r),a.toggle(Kf+xx,r),"open"in e&&(o.toggle(Xf,e.open),a.toggle(Kf+Xf,e.open)),i.fire("palette.changed",{twoColumn:r,open:this.isOpen()})},$t.prototype._update=function(){var e=rt(".djs-palette-entries",this._container),t=this._entries=this.getEntries();Es(e),B(t,function(n,i){var r=n.group||"default",o=rt("[data-group="+Na(r)+"]",e);o||(o=mt('<div class="group"></div>'),ln(o,"data-group",r),e.appendChild(o));var a=n.html||(n.separator?'<hr class="separator" />':'<div class="entry" draggable="true"></div>'),s=mt(a);if(o.appendChild(s),!n.separator&&(ln(s,"data-action",i),n.title&&ln(s,"title",n.title),n.className&&cD(s,n.className),n.imageUrl)){var c=mt("<img>");ln(c,"src",n.imageUrl),s.appendChild(c)}}),this.open()},$t.prototype.trigger=function(e,t,n){var i,r,o=t.delegateTarget||t.target;return o?(i=ln(o,"data-action"),r=t.originalEvent||t,this.triggerEntry(i,e,r,n)):t.preventDefault()},$t.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(Ut(a)){if(t==="click")return a(n,i)}else if(a[t])return a[t](n,i);n.preventDefault()}},$t.prototype._layoutChanged=function(){this._toggleState({})},$t.prototype._needsCollapse=function(e,t){var n=50,i=Object.keys(t).length*46;return e<i+n},$t.prototype.close=function(){this._toggleState({open:!1,twoColumn:!1})},$t.prototype.open=function(){this._toggleState({open:!0})},$t.prototype.toggle=function(){this.isOpen()?this.close():this.open()},$t.prototype.isActiveTool=function(e){return e&&this._activeTool===e},$t.prototype.updateToolHighlight=function(e){var t,n;this._toolsContainer||(t=rt(".djs-palette-entries",this._container),this._toolsContainer=rt("[data-group=tools]",t)),n=this._toolsContainer,B(n.children,function(i){var r=i.getAttribute("data-action");if(r){var o=bt(i);r=r.replace("-tool",""),o.contains("entry")&&r===e?o.add("highlighted-entry"):o.remove("highlighted-entry")}})},$t.prototype.isOpen=function(){return bt(this._container).has(Xf)},$t.prototype._getParentContainer=function(){return this._canvas.getContainer()},$t.HTML_MARKUP='<div class="djs-palette"><div class="djs-palette-entries"></div><div class="djs-palette-toggle"></div></div>';function cD(e,t){var n=bt(e),i=De(t)?t:t.split(/\s+/g);i.forEach(function(r){n.add(r)})}function uD(e,t){var n=t.getPaletteEntries();return Ut(n)?n(e):(B(n,function(i,r){e[r]=i}),e)}const lD={__init__:["palette"],palette:["type",$t]};var wx="crosshair",Ex="selected",pD="djs-dragging-active-lasso";function wr(e,t,n,i,r,o,a){this._selection=r,this._dragging=n,this._mouse=a;var s=this,c={create:function(f){var p=t.getActiveLayer(),d=f.frame=Pe("rect");xe(d,{class:"djs-lasso-overlay",width:1,height:1,x:0,y:0}),Fe(p,d),u(!0),this.update(f)},update:function(f){var p=f.frame,d=f.bbox;p&&d&&xe(p,{x:d.x,y:d.y,width:d.width,height:d.height});var g=f.marked,h=f.lastMarked;if(g&&h){for(const m of h)g.has(m)||t.removeMarker(m,Ex);for(const m of g)h.has(m)||t.addMarker(m,Ex)}},remove:function(f){this.update(f),f.frame&&Ht(f.frame),u(!1)}};function u(f){Xe(t.getContainer()).toggle(pD,f)}function l(f){var p=i.getAll();return new Set(Jr(po(p,f)))}o.registerTool("lasso",{tool:"lasso.selection",dragging:"lasso"}),e.on("lasso.selection.end",function(f){var p=f.originalEvent.target;!f.hover&&!(p instanceof SVGElement)||e.once("lasso.selection.ended",function(){s.activateLasso(f.originalEvent,!0)})}),e.on("lasso.end",0,function(f){var p=f.context;s._select(Array.from(p.marked))}),e.on("lasso.start",function(f){var p=f.context;p.bbox=Sx(f),p.add=cc(f),p.lastMarked=new Set(r.get()),p.add?p.marked=p.lastMarked:p.marked=new Set,p.initialMarked=p.marked,c.create(p)}),e.on("lasso.move",function(f){var p=f.context,d=p.bbox=Sx(f),g=l(d),h=p.initialMarked.union(g);p.lastMarked=p.marked,p.marked=h,c.update(p)}),e.on("lasso.cleanup",function(f){var p=f.context;p.lastMarked=p.marked,p.marked=new Set(r.get()),c.remove(f.context)}),e.on("element.mousedown",1500,function(f){if(cc(f))return s.activateLasso(f.originalEvent),!0})}wr.$inject=["eventBus","canvas","dragging","elementRegistry","selection","toolManager","mouse"],wr.prototype.activateLasso=function(e,t){this._dragging.init(e,"lasso",{autoActivate:t,cursor:wx,data:{context:{}},keepSelection:!0})},wr.prototype.activateSelection=function(e,t){this._dragging.init(e,"lasso.selection",{trapClick:!1,autoActivate:t,cursor:wx,data:{context:{}},keepSelection:!0})},wr.prototype._select=function(e){this._selection.select(e)},wr.prototype.select=function(e,t,n=[]){var i=Jr(po(e,t));this._select([...n,...i])},wr.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},wr.prototype.isActive=function(){var e=this._dragging.context();return e&&/^lasso/.test(e.prefix)};function Sx(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 fD={__depends__:[bc,xa],__init__:["lassoTool"],lassoTool:["type",wr]};var Zf=1500,Rx="grab";function Ho(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",Zf,function(c){if(va(c))return a.activateMove(c.originalEvent,!0),!1}),s&&s.addListener(Zf,function(c){if(!(!Cx(c.keyEvent)||a.isActive())){var u=a._mouse.getLastMoveEvent();a.activateMove(u,!!u)}},"keyboard.keydown"),s&&s.addListener(Zf,function(c){!Cx(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!va(c)&&l&&e.once("hand.move.ended",function(f){a.activateHand(f.originalEvent,!0,!0)}),!1})}Ho.$inject=["eventBus","canvas","dragging","injector","toolManager","mouse"],Ho.prototype.activateMove=function(e,t,n){typeof t=="object"&&(n=t,t=!1),this._dragging.init(e,"hand.move",{autoActivate:t,cursor:Rx,data:{context:n||{}}})},Ho.prototype.activateHand=function(e,t,n){this._dragging.init(e,"hand",{trapClick:!1,autoActivate:t,cursor:Rx,data:{context:{reactivate:n}}})},Ho.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateHand(e,!!e)},Ho.prototype.isActive=function(){var e=this._dragging.context();return e?/^(hand|hand\.move)$/.test(e.prefix):!1};function Cx(e){return zt("Space",e)}const dD={__depends__:[bc,xa],__init__:["handTool"],handTool:["type",Ho]};var Px="connect-ok",Ax="connect-not-ok";function zo(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,f=u.canStartConnect=s.canStartConnect(l);f!==null&&(u.startTarget=l,i.addMarker(l,f?Px:Ax))}),e.on(["global-connect.out","global-connect.cleanup"],function(c){var u=c.context.startTarget,l=c.context.canStartConnect;u&&i.removeMarker(u,l?Px:Ax)}),e.on(["global-connect.ended"],function(c){var u=c.context,l=u.startTarget,f={x:c.x,y:c.y},p=s.canStartConnect(l);if(p)return e.once("element.out",function(){e.once(["connect.ended","connect.canceled"],function(){e.fire("global-connect.drag.ended")}),n.start(null,l,f)}),!1})}zo.$inject=["eventBus","dragging","connect","canvas","toolManager","rules","mouse"],zo.prototype.start=function(e,t){this._dragging.init(e,"global-connect",{autoActivate:t,trapClick:!1,data:{context:{}}})},zo.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();return this.start(e,!!e)},zo.prototype.isActive=function(){var e=this._dragging.context();return e&&/^global-connect/.test(e.prefix)},zo.prototype.canStartConnect=function(e){return this._rules.allowed("connection.start",{source:e})};const hD={__depends__:[jf,xi,$i,bc,xa],globalConnect:["type",zo]};function Qf(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)}Qf.$inject=["palette","create","elementFactory","spaceTool","lassoTool","handTool","globalConnect","translate"],Qf.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(f,p,d,g,h){function m(x){var y=n.createShape(V({type:f},h));t.start(x,y)}return{group:p,className:d,title:g,action:{dragstart:m,click:m}}}function u(f){var p=n.createShape({type:"bpmn:SubProcess",x:0,y:0,isExpanded:!0}),d=n.createShape({type:"bpmn:StartEvent",x:40,y:82,parent:p});t.start(f,[p,d],{hints:{autoSelect:[p]}})}function l(f){t.start(f,n.createParticipantShape())}return V(e,{"hand-tool":{group:"tools",className:"bpmn-icon-hand-tool",title:s("Activate hand tool"),action:{click:function(f){o.activateHand(f)}}},"lasso-tool":{group:"tools",className:"bpmn-icon-lasso-tool",title:s("Activate lasso tool"),action:{click:function(f){r.activateSelection(f)}}},"space-tool":{group:"tools",className:"bpmn-icon-space-tool",title:s("Activate create/remove space tool"),action:{click:function(f){i.activateSelection(f)}}},"global-connect-tool":{group:"tools",className:"bpmn-icon-connection-multi",title:s("Activate global connect tool"),action:{click:function(f){a.start(f)}}},"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 mD={__depends__:[lD,yc,nv,fD,dD,hD,pa],__init__:["paletteProvider"],paletteProvider:["type",Qf]};var gD=250;function Jf(e,t,n,i,r){te.call(this,e);function o(s){var c=s.canExecute.replacements;B(c,function(u){var l=u.oldElementId,f={type:u.newElementType};if(!s.visualReplacements[l]){var p=t.get(l);V(f,{x:p.x,y:p.y});var d=n.createShape(f);i.addShape(d,p.parent);var g=rt('[data-element-id="'+Na(p.id)+'"]',s.dragGroup);g&&xe(g,{display:"none"});var h=r.addDragger(d,s.dragGroup);s.visualReplacements[l]=h,i.removeShape(d)}})}function a(s){var c=s.visualReplacements;B(c,function(u,l){var f=rt('[data-element-id="'+Na(l)+'"]',s.dragGroup);f&&xe(f,{display:"inline"}),u.remove(),c[l]&&delete c[l]})}e.on("shape.move.move",gD,function(s){var c=s.context,u=c.canExecute;c.visualReplacements||(c.visualReplacements={}),u&&u.replacements?o(c):a(c)})}Jf.$inject=["eventBus","elementRegistry","elementFactory","canvas","previewSupport"],_e(Jf,te);const yD={__depends__:[Mo],__init__:["bpmnReplacePreview"],bpmnReplacePreview:["type",Jf]};var vD=1250,ed=40,bD=20,_D=10,Tx=20,Mx=["x","y"],xD=Math.abs;function kx(e){e.on(["connect.hover","connect.move","connect.end"],vD,function(t){var n=t.context,i=n.canExecute,r=n.start,o=n.hover,a=n.source,s=n.target;t.originalEvent&&kn(t.originalEvent)||(n.initialConnectionStart||(n.initialConnectionStart=n.connectionStart),i&&o&&wD(t,o,CD(o)),o&&RD(i,["bpmn:Association","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:SequenceFlow"])?(n.connectionStart=ei(r),Ve(o,["bpmn:Event","bpmn:Gateway"])&&Ox(t,ei(o)),Ve(o,["bpmn:Task","bpmn:SubProcess"])&&ED(t,o),w(a,"bpmn:BoundaryEvent")&&s===a.host&&SD(t)):Dx(i,"bpmn:MessageFlow")?(w(r,"bpmn:Event")&&(n.connectionStart=ei(r)),w(o,"bpmn:Event")&&Ox(t,ei(o))):n.connectionStart=n.initialConnectionStart)})}kx.$inject=["eventBus"];function wD(e,t,n){Mx.forEach(function(i){var r=Lx(i,t);e[i]<t[i]+n?Nt(e,i,t[i]+n):e[i]>t[i]+r-n&&Nt(e,i,t[i]+r-n)})}function ED(e,t){var n=ei(t);Mx.forEach(function(i){PD(e,t,i)&&Nt(e,i,n[i])})}function SD(e){var t=e.context,n=t.source,i=t.target;if(!AD(t)){var r=ei(n),o=Jt(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;xD(c-r[s])<ed&&(c>r[s]?u=r[s]+ed:u=r[s]-ed,Nt(e,s,u))})}}function Ox(e,t){Nt(e,"x",t.x),Nt(e,"y",t.y)}function Dx(e,t){return e&&e.type===t}function RD(e,t){return qi(t,function(n){return Dx(e,n)})}function Lx(e,t){return e==="x"?t.width:t.height}function CD(e){return w(e,"bpmn:Task")?_D:bD}function PD(e,t,n){return e[n]>t[n]+Tx&&e[n]<t[n]+Lx(n,t)-Tx}function AD(e){var t=e.hover,n=e.source;return t&&n&&t===n}function Er(){this._targets={},this._snapOrigins={},this._snapLocations=[],this._defaultSnaps={}}Er.prototype.getSnapOrigin=function(e){return this._snapOrigins[e]},Er.prototype.setSnapOrigin=function(e,t){this._snapOrigins[e]=t,this._snapLocations.indexOf(e)===-1&&this._snapLocations.push(e)},Er.prototype.addDefaultSnap=function(e,t){var n=this._defaultSnaps[e];n||(n=this._defaultSnaps[e]=[]),n.push(t)},Er.prototype.getSnapLocations=function(){return this._snapLocations},Er.prototype.setSnapLocations=function(e){this._snapLocations=e},Er.prototype.pointsForTarget=function(e){var t=e.id||e,n=this._targets[t];return n||(n=this._targets[t]=new Ru,n.initDefaults(this._defaultSnaps)),n};function Ru(){this._snapValues={}}Ru.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)},Ru.prototype.snap=function(e,t,n,i){var r=this._snapValues[t];return r&&gk(e[n],r[n],i)},Ru.prototype.initDefaults=function(e){var t=this;B(e||{},function(n,i){B(n,function(r){t.add(i,r)})})};var TD=1250;function Ri(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"],TD,function(r){var o=r.context,a=o.shape,s=o.snapContext,c=o.target;if(!(r.originalEvent&&kn(r.originalEvent))&&!(jo(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()})}Ri.$inject=["elementRegistry","eventBus","snapping"],Ri.prototype.initSnap=function(e){var t=this._elementRegistry,n=e.context,i=n.shape,r=n.snapContext;r||(r=n.snapContext=new Er);var o;t.get(i.id)?o=ei(i,e):o={x:e.x+ei(i).x,y:e.y+ei(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},Ri.prototype.addSnapTargetPoints=function(e,t,n){var i=this.getSnapTargets(t,n);return B(i,function(r){if(Ge(r)){Ge(t)&&e.add("mid",ei(r));return}if(ot(r)){if(r.waypoints.length<3)return;var o=r.waypoints.slice(1,-1);B(o,function(a){e.add("mid",a)});return}e.add("mid",ei(r))}),!Be(t.x)||!Be(t.y)||this._elementRegistry.get(t.id)&&e.add("mid",ei(t)),e},Ri.prototype.getSnapTargets=function(e,t){return __(t).filter(function(n){return!MD(n)})};function MD(e){return!!e.hidden}var Ix=1500;function Go(e,t){t.invoke(Ri,this),e.on(["create.move","create.end"],Ix,LD),e.on(["create.move","create.end","shape.move.move","shape.move.end"],Ix,function(n){var i=n.context,r=i.canExecute,o=i.target,a=r&&(r==="attach"||r.attach);a&&!jo(n)&&kD(n,o)})}_e(Go,Ri),Go.$inject=["eventBus","injector"],Go.prototype.initSnap=function(e){var t=Ri.prototype.initSnap.call(this,e),n=e.shape,i=!!this._elementRegistry.get(n.id);return B(n.outgoing,function(r){var o=r.waypoints[0];o=o.original||o,t.setSnapOrigin(r.id+"-docking",Nx(o,i,e))}),B(n.incoming,function(r){var o=r.waypoints[r.waypoints.length-1];o=o.original||o,t.setSnapOrigin(r.id+"-docking",Nx(o,i,e))}),w(n,"bpmn:Participant")&&t.setSnapLocations(["top-left","bottom-right","mid"]),t},Go.prototype.addSnapTargetPoints=function(e,t,n){Ri.prototype.addSnapTargetPoints.call(this,e,t,n);var i=this.getSnapTargets(t,n);B(i,function(o){(DD(o)||OD([t,o],"bpmn:TextAnnotation"))&&(e.add("top-left",v_(o)),e.add("bottom-right",b_(o)))});var r=this._elementRegistry;return B(t.incoming,function(o){if(r.get(t.id)){Bx(i,o.source)||e.add("mid",Le(o.source));var a=o.waypoints[0];e.add(o.id+"-docking",a.original||a)}}),B(t.outgoing,function(o){if(r.get(t.id)){Bx(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)}}),w(n,"bpmn:SequenceFlow")&&(e=this.addSnapTargetPoints(e,t,n.parent)),e},Go.prototype.getSnapTargets=function(e,t){return Ri.prototype.getSnapTargets.call(this,e,t).filter(function(n){return!w(n,"bpmn:Lane")})};function kD(e,t){var n=Ae(t),i=Qg(e,t),r=e.context,o=r.shape,a;o.parent?a={x:0,y:0}:a=Le(o),/top/.test(i)?Nt(e,"y",n.top-a.y):/bottom/.test(i)&&Nt(e,"y",n.bottom-a.y),/left/.test(i)?Nt(e,"x",n.left-a.x):/right/.test(i)&&Nt(e,"x",n.right-a.x)}function OD(e,t){return e.every(function(n){return w(n,t)})}function DD(e){return w(e,"bpmn:SubProcess")&&Ke(e)?!0:w(e,"bpmn:Participant")}function LD(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)&&Nt(e,"x",e.x),(i&&i>=e.y||o&&o<=e.y)&&Nt(e,"y",e.y)}}function Bx(e,t){return e.indexOf(t)!==-1}function Nx(e,t,n){return t?{x:e.x-n.x,y:e.y-n.y}:{x:e.x,y:e.y}}var ID=1250;function Ja(e,t){var n=this;e.on(["resize.start"],function(i){n.initSnap(i)}),e.on(["resize.move","resize.end"],ID,function(i){var r=i.context,o=r.shape,a=o.parent,s=r.direction,c=r.snapContext;if(!(i.originalEvent&&kn(i.originalEvent))&&!jo(i)){var u=c.pointsForTarget(a);u.initialized||(u=n.addSnapTargetPoints(u,o,a,s),u.initialized=!0),$D(s)&&Nt(i,"x",i.x),FD(s)&&Nt(i,"y",i.y),t.snap(i,u)}}),e.on(["resize.cleanup"],function(){t.hide()})}Ja.prototype.initSnap=function(e){var t=e.context,n=t.shape,i=t.direction,r=t.snapContext;r||(r=t.snapContext=new Er);var o=$x(n,i);return r.setSnapOrigin("corner",{x:o.x-e.x,y:o.y-e.y}),r},Ja.prototype.addSnapTargetPoints=function(e,t,n,i){var r=this.getSnapTargets(t,n);return B(r,function(o){e.add("corner",b_(o)),e.add("corner",v_(o))}),e.add("corner",$x(t,i)),e},Ja.$inject=["eventBus","snapping"],Ja.prototype.getSnapTargets=function(e,t){return __(t).filter(function(n){return!BD(n,e)&&!ot(n)&&!ND(n)&&!Ge(n)})};function $x(e,t){var n=Le(e),i=Ae(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 BD(e,t){return e.host===t}function ND(e){return!!e.hidden}function $D(e){return e==="n"||e==="s"}function FD(e){return e==="e"||e==="w"}var jD=7,HD=1e3;function Sr(e){this._canvas=e,this._asyncHide=Bu(xn(this.hide,this),HD)}Sr.$inject=["canvas"],Sr.prototype.snap=function(e,t){var n=e.context,i=n.snapContext,r=i.getSnapLocations(),o={x:jo(e,"x"),y:jo(e,"y")};B(r,function(a){var s=i.getSnapOrigin(a),c={x:e.x+s.x,y:e.y+s.y};if(B(["x","y"],function(u){var l;o[u]||(l=t.snap(c,a,u,jD),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),B(["x","y"],function(a){var s=o[a];Wt(s)&&Nt(e,a,s.originValue)})},Sr.prototype._createLine=function(e){var t=this._canvas.getLayer("snap"),n=Pe("path");return xe(n,{d:"M0,0 L0,0"}),Xe(n).add("djs-snap-line"),Fe(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"})}}},Sr.prototype._createSnapLines=function(){this._snapLines={horizontal:this._createLine("horizontal"),vertical:this._createLine("vertical")}},Sr.prototype.showSnapLine=function(e,t){var n=this.getSnapLine(e);n&&n.update(t),this._asyncHide()},Sr.prototype.getSnapLine=function(e){return this._snapLines||this._createSnapLines(),this._snapLines[e]},Sr.prototype.hide=function(){B(this._snapLines,function(e){e.update()})};const zD={__depends__:[{__init__:["createMoveSnapping","resizeSnapping","snapping"],createMoveSnapping:["type",Ri],resizeSnapping:["type",Ja],snapping:["type",Sr]}],__init__:["connectSnapping","createMoveSnapping"],connectSnapping:["type",kx],createMoveSnapping:["type",Go]};var Fx=300;function je(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=rt(je.INPUT_SELECTOR,this._container),this._resultsContainer=rt(je.RESULTS_CONTAINER_SELECTOR,this._container),this._canvas.getContainer().appendChild(this._container),t.on(["canvas.destroy","diagram.destroy","drag.init","elements.changed"],this.close,this)}je.$inject=["canvas","eventBus","selection","translate"],je.prototype._bindEvents=function(){var e=this;function t(n,i,r,o){e._eventMaps.push({el:n,type:r,listener:An.bind(n,i,r,o)})}t(document,"html","click",function(n){e.close(!1)}),t(this._container,je.INPUT_SELECTOR,"click",function(n){n.stopPropagation(),n.delegateTarget.focus()}),t(this._container,je.RESULT_SELECTOR,"mouseover",function(n){n.stopPropagation(),e._scrollToNode(n.delegateTarget),e._preselect(n.delegateTarget)}),t(this._container,je.RESULT_SELECTOR,"click",function(n){n.stopPropagation(),e._select(n.delegateTarget)}),t(this._container,je.INPUT_SELECTOR,"keydown",function(n){zt("ArrowUp",n)&&n.preventDefault(),zt("ArrowDown",n)&&n.preventDefault()}),t(this._container,je.INPUT_SELECTOR,"keyup",function(n){if(zt("Escape",n))return e.close();if(zt("Enter",n)){var i=e._getCurrentResult();return i?e._select(i):e.close(!1)}if(zt("ArrowUp",n))return e._scrollToDirection(!0);if(zt("ArrowDown",n))return e._scrollToDirection();zt(["ArrowLeft","ArrowRight"],n)||e._search(n.delegateTarget.value)})},je.prototype._unbindEvents=function(){this._eventMaps.forEach(function(e){An.unbind(e.el,e.type,e.listener)})},je.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=rt(je.RESULT_SELECTOR,this._resultsContainer);this._scrollToNode(i),this._preselect(i)}},je.prototype._scrollToDirection=function(e){var t=this._getCurrentResult();if(t){var n=e?t.previousElementSibling:t.nextElementSibling;n&&(this._scrollToNode(n),this._preselect(n))}},je.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)}},je.prototype._clearResults=function(){Es(this._resultsContainer),this._results={},this._eventBus.fire("searchPad.cleared")},je.prototype._getCurrentResult=function(){return rt(je.RESULT_SELECTED_SELECTOR,this._resultsContainer)},je.prototype._createResultNode=function(e,t){var n=mt(je.RESULT_HTML);return e.primaryTokens.length>0&&jx(n,e.primaryTokens,je.RESULT_PRIMARY_HTML),jx(n,e.secondaryTokens,je.RESULT_SECONDARY_HTML),ln(n,je.RESULT_ID_ATTRIBUTE,t),this._resultsContainer.appendChild(n),n},je.prototype.registerProvider=function(e){this._searchProvider=e},je.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,bt(this._canvas.getContainer()).add("djs-search-open"),bt(this._container).add("open"),this._searchInput.focus(),this._eventBus.fire("searchPad.opened"))},je.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,bt(this._canvas.getContainer()).remove("djs-search-open"),bt(this._container).remove("open"),this._clearResults(),this._searchInput.value="",this._searchInput.blur(),this._eventBus.fire("searchPad.closed"),this._canvas.restoreFocus())},je.prototype.toggle=function(){this.isOpen()?this.close():this.open()},je.prototype.isOpen=function(){return this._open},je.prototype._preselect=function(e){var t=this._getCurrentResult();if(e!==t){t&&bt(t).remove(je.RESULT_SELECTED_CLASS);var n=ln(e,je.RESULT_ID_ATTRIBUTE),i=this._results[n].element;bt(e).add(je.RESULT_SELECTED_CLASS),this._canvas.scrollToElement(i,{top:Fx}),this._selection.select(i),this._eventBus.fire("searchPad.preselected",i)}},je.prototype._select=function(e){var t=ln(e,je.RESULT_ID_ATTRIBUTE),n=this._results[t].element;this._cachedSelection=null,this._cachedViewbox=null,this.close(!1),this._canvas.scrollToElement(n,{top:Fx}),this._selection.select(n),this._eventBus.fire("searchPad.selected",n)},je.prototype._getBoxHtml=function(){const e=mt(je.BOX_HTML),t=rt(je.INPUT_SELECTOR,e);return t&&t.setAttribute("aria-label",this._translate("Search in diagram")),e};function jx(e,t,n){var i=GD(t),r=mt(n);r.innerHTML=i,e.appendChild(r)}function GD(e){var t="";return e.forEach(function(n){var i=Yv(n.value||n.matched||n.normal),r=n.match||n.matched;r?t+='<b class="'+je.RESULT_HIGHLIGHT_CLASS+'">'+i+"</b>":t+=i}),t!==""?t:null}je.CONTAINER_SELECTOR=".djs-search-container",je.INPUT_SELECTOR=".djs-search-input input",je.RESULTS_CONTAINER_SELECTOR=".djs-search-results",je.RESULT_SELECTOR=".djs-search-result",je.RESULT_SELECTED_CLASS="djs-search-result-selected",je.RESULT_SELECTED_SELECTOR="."+je.RESULT_SELECTED_CLASS,je.RESULT_ID_ATTRIBUTE="data-result-id",je.RESULT_HIGHLIGHT_CLASS="djs-search-highlight",je.BOX_HTML=`<div class="djs-search-container djs-scrollable">
335
+ </svg>`},nO=900;function Ka(e,t,n,i){this._distributeElements=t,this._translate=n,this._popupMenu=e,this._rules=i,e.registerProvider("align-elements",nO,this)}Ka.$inject=["popupMenu","distributeElements","translate","rules"],Ka.prototype.getPopupMenuEntries=function(e){var t={};return this._isAllowed(e)&&V(t,this._getEntries(e)),t},Ka.prototype._isAllowed=function(e){return this._rules.allowed("elements.distribute",{elements:e})},Ka.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:F_.horizontal,action:function(o,a){t.trigger(e,"horizontal"),i.close()}},"distribute-elements-vertical":{group:"distribute",title:n("Distribute elements vertically"),imageHtml:F_.vertical,action:function(o,a){t.trigger(e,"vertical"),i.close()}}};return r};const iO={__depends__:[If,tO],__init__:["bpmnDistributeElements","distributeElementsMenuProvider"],bpmnDistributeElements:["type",gu],distributeElementsMenuProvider:["type",Ka]};var j_="is not a registered action",rO="is already registered";function ii(e,t){this._eventBus=e,this._actions={};var n=this;e.on("diagram.init",function(){n._registerDefaultActions(t),e.fire("editorActions.init",{editorActions:n})})}ii.$inject=["eventBus","injector"],ii.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 f=s.allowed("elements.delete",{elements:l});if(f!==!1){var p=De(f)?f:l;return o.cut(p.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 f=s.allowed("elements.delete",{elements:l}),p;f!==!1&&(De(f)?p=f:p=l,p.length&&n.removeElements(p.slice()))}}),c&&this.register("moveCanvas",function(l){c.moveCanvas(l)}),u&&this.register("moveSelection",function(l){u.moveSelection(l.direction,l.accelerated)})},ii.prototype.trigger=function(e,t){if(!this._actions[e])throw Wf(e,j_);var n=this._eventBus.fire("editorActions.allowed",{action:e,opts:t});if(n!==!1)return this._actions[e](t)},ii.prototype.register=function(e,t){var n=this;if(typeof e=="string")return this._registerAction(e,t);N(e,function(i,r){n._registerAction(r,i)})},ii.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw Wf(e,rO);this._actions[e]=t},ii.prototype.unregister=function(e){if(!this.isRegistered(e))throw Wf(e,j_);this._actions[e]=void 0},ii.prototype.getActions=function(){return Object.keys(this._actions)},ii.prototype.isRegistered=function(e){return!!this._actions[e]};function Wf(e,t){return new Error(e+" "+t)}const oO={__init__:["editorActions"],editorActions:["type",ii]};function yu(e){e.invoke(ii,this)}_e(yu,ii),yu.$inject=["injector"],yu.prototype._registerDefaultActions=function(e){ii.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),f=e.get("searchPad",!1),p=e.get("modeling",!1),d=e.get("contextPad",!1);t&&n&&i&&this._registerAction("selectElements",function(){var h=t.getRootElement(),m=n.filter(function(g){return g!==h});return i.select(m),m}),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(h){var m=i.get(),g=h.type;m.length&&c.trigger(m,g)}),i&&u&&this._registerAction("alignElements",function(h){var m=i.get(),g=[],y=h.type;m.length&&(g=We(m,function(v){return!E(v,"bpmn:Lane")}),u.trigger(g,y))}),i&&p&&this._registerAction("setColor",function(h){var m=i.get();m.length&&p.setColor(m,h)}),i&&l&&this._registerAction("directEditing",function(){var h=i.get();h.length&&l.activate(h[0])}),f&&this._registerAction("find",function(){f.toggle()}),t&&p&&this._registerAction("moveToOrigin",function(){var h=t.getRootElement(),m,g;E(h,"bpmn:Collaboration")?g=n.filter(function(y){return E(y.parent,"bpmn:Collaboration")}):g=n.filter(function(y){return y!==h&&!E(y.parent,"bpmn:SubProcess")}),m=Dt(g),p.moveElements(g,{x:-m.x,y:-m.y},h)}),i&&d&&this._registerAction("replaceElement",function(h){d.triggerEntry("replace","click",h)})};const aO={__depends__:[oO],editorActions:["type",yu]};function H_(e){e.on(["create.init","shape.move.init"],function(t){var n=t.context,i=t.shape;Ve(i,["bpmn:Participant","bpmn:SubProcess","bpmn:TextAnnotation"])&&(n.gridSnappingContext||(n.gridSnappingContext={}),n.gridSnappingContext.snapLocation="top-left")})}H_.$inject=["eventBus"];function Yr(e,t){te.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;Sn(a)?r.newBounds=n.snapComplex(c,a):r.newBounds=n.snapSimple(s,c)}})}Yr.$inject=["eventBus","gridSnapping","modeling"],_e(Yr,te),Yr.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},Yr.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},Yr.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},Yr.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 sO=2e3;function z_(e,t){e.on(["spaceTool.move","spaceTool.end"],sO,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)}})}z_.$inject=["eventBus","gridSnapping"];const cO={__init__:["gridSnappingResizeBehavior","gridSnappingSpaceToolBehavior"],gridSnappingResizeBehavior:["type",Yr],gridSnappingSpaceToolBehavior:["type",z_]};var vu=10;function Uf(e,t,n){return n||(n="round"),Math[n](e/t)*t}var uO=1200,lO=800;function br(e,t,n){var i=!n||n.active!==!1;this._eventBus=t;var r=this;t.on("diagram.init",lO,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"],uO,function(o){var a=o.originalEvent;if(!(!r.active||a&&On(a))){var s=o.context,c=s.gridSnappingContext;c||(c=s.gridSnappingContext={}),["x","y"].forEach(function(u){var l={},f=fO(o,u,e);f&&(l.offset=f);var p=pO(o,u);p&&V(l,p),jo(o,u)||r.snapEvent(o,u,l)})}})}br.prototype.snapEvent=function(e,t,n){var i=this.snapValue(e[t],n);Nt(e,t,i)},br.prototype.getGridSpacing=function(){return vu},br.prototype.snapValue=function(e,t){var n=0;t&&t.offset&&(n=t.offset),e+=n,e=Uf(e,vu);var i,r;return t&&t.min&&(i=t.min,Be(i)&&(i=Uf(i+n,vu,"ceil"),e=Math.max(e,i))),t&&t.max&&(r=t.max,Be(r)&&(r=Uf(r+n,vu,"floor"),e=Math.min(e,r))),e-=n,e},br.prototype.isActive=function(){return this.active},br.prototype.setActive=function(e){this.active=e,this._eventBus.fire("gridSnapping.toggle",{active:e})},br.prototype.toggleActive=function(){this.setActive(!this.active)},br.$inject=["elementRegistry","eventBus","config.gridSnapping"];function pO(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&&(bu(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&&(bu(t)?V_(s)?a.x.max=c.left:a.x.min=c.right:G_(s)?a.y.max=c.top:a.y.min=c.bottom),u&&(bu(t)?V_(s)?a.x.min=u.left:a.x.max=u.right:G_(s)?a.y.min=u.top:a.y.max=u.bottom),a[t]}function fO(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)||(bu(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 bu(e){return e==="x"}function G_(e){return e.indexOf("n")!==-1}function V_(e){return e.indexOf("w")!==-1}const dO={__depends__:[cO],__init__:["gridSnapping"],gridSnapping:["type",br]};var hO=2e3;function W_(e,t,n){e.on("autoPlace",hO,function(i){var r=i.source,o=Le(r),a=i.shape,s=Vv(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],E(a,"bpmn:TextAnnotation")&&(mO(c)?u.offset=-a.width/2:u.offset=-a.height/2),s[c]=t.snapValue(s[c],u))}),s})}W_.$inject=["eventBus","gridSnapping","elementRegistry"];function mO(e){return e==="x"}var gO=1750;function U_(e,t,n){t.on(["create.start","shape.move.start"],gO,function(i){var r=i.context,o=r.shape,a=e.getRootElement();if(!(!E(o,"bpmn:Participant")||!E(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}))}})}U_.$inject=["canvas","eventBus","gridSnapping"];var yO=3e3;function _u(e,t,n){te.call(this,e),this._gridSnapping=t;var i=this;this.postExecuted(["connection.create","connection.layout"],yO,function(r){var o=r.context,a=o.connection,s=o.hints||{},c=a.waypoints;s.connectionStart||s.connectionEnd||s.createElementsBehavior===!1||vO(c)&&n.updateWaypoints(a,i.snapMiddleSegments(c))})}_u.$inject=["eventBus","gridSnapping","modeling"],_e(_u,te),_u.prototype.snapMiddleSegments=function(e){var t=this._gridSnapping,n;e=e.slice();for(var i=1;i<e.length-2;i++)n=xO(t,e[i],e[i+1]),e[i]=n[0],e[i+1]=n[1];return e};function vO(e){return e.length>3}function bO(e){return e==="h"}function _O(e){return e==="v"}function xO(e,t,n){var i=Oi(t,n),r={};return bO(i)&&(r.y=e.snapValue(t.y)),_O(i)&&(r.x=e.snapValue(t.x)),("x"in r||"y"in r)&&(t=V({},t,r),n=V({},n,r)),[t,n]}const wO={__depends__:[dO,{__init__:["gridSnappingAutoPlaceBehavior","gridSnappingParticipantBehavior","gridSnappingLayoutConnectionBehavior"],gridSnappingAutoPlaceBehavior:["type",W_],gridSnappingParticipantBehavior:["type",U_],gridSnappingLayoutConnectionBehavior:["type",_u]}],__init__:["bpmnGridSnapping"],bpmnGridSnapping:["type",H_]};var EO=30,Y_=30;function Xa(e,t){this._interactionEvents=t;var n=this;e.on(["interactionEvents.createHit","interactionEvents.updateHit"],function(i){var r=i.element,o=i.gfx;if(E(r,"bpmn:Lane"))return n._createParticipantHit(r,o);if(E(r,"bpmn:Participant"))return Ke(r)?n._createParticipantHit(r,o):n._createDefaultHit(r,o);if(E(r,"bpmn:SubProcess"))return Ke(r)?n._createSubProcessHit(r,o):n._createDefaultHit(r,o)})}Xa.$inject=["eventBus","interactionEvents"],Xa.prototype._createDefaultHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createDefaultHit(e,t),!0},Xa.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=qt(e)?{width:EO,height:e.height}:{width:e.width,height:Y_};return this._interactionEvents.createBoxHit(t,"all",n),!0},Xa.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:Y_}),!0};const SO={__init__:["bpmnInteractionEvents"],bpmnInteractionEvents:["type",Xa]};function xu(e){e.invoke(Do,this)}_e(xu,Do),xu.$inject=["injector"],xu.prototype.registerBindings=function(e,t){Do.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 RO={__depends__:[_f],__init__:["keyboardBindings"],keyboardBindings:["type",xu]};var CO={moveSpeed:1,moveSpeedAccelerated:10},PO=1500,q_="left",K_="up",X_="right",Z_="down",AO={ArrowLeft:q_,Left:q_,ArrowUp:K_,Up:K_,ArrowRight:X_,Right:X_,ArrowDown:Z_,Down:Z_},TO={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 Q_(e,t,n,i,r){var o=this;this._config=V({},CO,e||{}),t.addListener(PO,function(a){var s=a.keyEvent,c=AO[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=TO[a](u),f=i.allowed("elements.move",{shapes:c,hints:{keyboardMove:!0}});f&&n.moveElements(c,l)}}}Q_.$inject=["config.keyboardMoveSelection","keyboard","modeling","rules","selection"];const MO={__depends__:[_f,Qn],__init__:["keyboardMoveSelection"],keyboardMoveSelection:["type",Q_]};var J_=10;function Za(e,t,n,i){this._dragging=i,this._rules=t;var r=this;function o(c,u){var l=c.shape,f=c.direction,p=c.resizeConstraints,d;c.delta=u,d=CC(l,f,u),c.newBounds=AC(d,p),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:Ae(l)})}function s(c){var u=c.shape,l=c.canExecute,f=c.newBounds;if(l){if(f=gm(f),!kO(u,f))return;n.resizeShape(u,f)}}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)})}Za.prototype.canResize=function(e){var t=this._rules,n=ai(e,["newBounds","shape","delta","direction"]);return t.allowed("shape.resize",n)},Za.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,ex(t,o),"resize",{autoActivate:!0,cursor:OO(o),data:{shape:t,context:r}})},Za.prototype.computeMinResizeBox=function(e){var t=e.shape,n=e.direction,i,r;return i=e.minDimensions||{width:J_,height:J_},r=ig(t,e.childrenBoxPadding),TC(n,t,i,r)},Za.$inject=["eventBus","rules","modeling","dragging"];function kO(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}function ex(e,t){var n=Le(e),i=Ae(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 OO(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 tx="djs-resizing",nx="resize-not-ok",DO=500;function ix(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,tx)),s.width>5&&xe(c,{x:s.x,width:s.width}),s.height>5&&xe(c,{y:s.y,height:s.height}),o.canExecute?Xe(c).remove(nx):Xe(c).add(nx)}function r(o){var a=o.shape,s=o.frame;s&&Ht(o.frame),t.removeMarker(a,tx)}e.on("resize.move",DO,function(o){i(o.context)}),e.on("resize.cleanup",function(o){r(o.context)})}ix.$inject=["eventBus","canvas","previewSupport"];var wu=-6,Eu=8,Su=20,Qa="djs-resizer",LO=["n","w","s","e","nw","ne","se","sw"];function _r(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&&N(a,xn(r.addResizer,r))}),e.on("shape.changed",function(o){var a=o.element;n.isSelected(a)&&(r.removeResizers(),r.addResizer(a))})}_r.prototype.makeDraggable=function(e,t,n){var i=this._resize;function r(o){cr(o)&&i.activate(o,e,n)}$e.bind(t,"mousedown",r),$e.bind(t,"touchstart",r)},_r.prototype._createResizer=function(e,t,n,i){var r=this._getResizersParent(),o=IO(i),a=Pe("g");Xe(a).add(Qa),Xe(a).add(Qa+"-"+e.id),Xe(a).add(Qa+"-"+i),Fe(r,a);var s=Pe("rect");xe(s,{x:-Eu/2+o.x,y:-Eu/2+o.y,width:Eu,height:Eu}),Xe(s).add(Qa+"-visual"),Fe(a,s);var c=Pe("rect");return xe(c,{x:-Su/2+o.x,y:-Su/2+o.y,width:Su,height:Su}),Xe(c).add(Qa+"-hit"),Fe(a,c),$s(a,t,n),a},_r.prototype.createResizer=function(e,t){var n=ex(e,t),i=this._createResizer(e,n.x,n.y,t);this.makeDraggable(e,i,t)},_r.prototype.addResizer=function(e){var t=this;at(e)||N(LO,function(n){t._resize.canResize({shape:e,direction:n})&&t.createResizer(e,n)})},_r.prototype.removeResizers=function(){var e=this._getResizersParent();Ts(e)},_r.prototype._getResizersParent=function(){return this._canvas.getLayer("resizers")},_r.$inject=["eventBus","canvas","selection","resize"];function IO(e){var t={x:0,y:0};return e.indexOf("e")!==-1?t.x=-wu:e.indexOf("w")!==-1&&(t.x=wu),e.indexOf("s")!==-1?t.y=-wu:e.indexOf("n")!==-1&&(t.y=wu),t}const rx={__depends__:[xi,$i,Mo],__init__:["resize","resizePreview","resizeHandles"],resize:["type",Za],resizePreview:["type",ix],resizeHandles:["type",_r]};var BO=2e3;function Ja(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"],BO,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,f=c.context.canExecute,p=c.isTouch;p||f&&(u.hints&&u.hints.createElementsBehavior===!1||s(l))}),e.on("autoPlace.end",500,function(c){s(c.shape)});function s(c,u){(u||Ve(c,["bpmn:Activity","bpmn:Event","bpmn:TextAnnotation","bpmn:Participant"]))&&i.activate(c)}}Ja.$inject=["eventBus","bpmnFactory","canvas","directEditing","modeling","resizeHandles","textRenderer"],Ja.prototype.activate=function(e){var t=Wn(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}),(Ve(e,["bpmn:Task","bpmn:Participant","bpmn:Lane","bpmn:CallActivity"])||ox(e))&&V(r,{centerVertically:!0}),rr(e)&&(V(r,{resizable:!0,autoResize:!0}),V(o,{backgroundColor:"#ffffff",border:"1px solid #ccc"})),E(e,"bpmn:TextAnnotation")&&(V(r,{resizable:!0,autoResize:!0}),V(o,{backgroundColor:"#ffffff",border:"1px solid #ccc"})),V(n,{options:r,style:o}),n}},Ja.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,f=s.fontSize*a,p=s.lineHeight,d={fontFamily:this._textRenderer.getDefaultStyle().fontFamily,fontWeight:this._textRenderer.getDefaultStyle().fontWeight};if(E(e,"bpmn:Lane")||FO(e)){var h=qt(e),m=h?{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,m),V(d,{fontSize:f+"px",lineHeight:p,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px",transform:h?"rotate(-90deg)":null})}if($O(e)){var g=qt(e),y=g?{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,y),V(d,{fontSize:f+"px",lineHeight:p,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px",transform:g?null:"rotate(-90deg)"})}(Ve(e,["bpmn:Task","bpmn:CallActivity"])||ox(e))&&(V(o,{width:i.width,height:i.height}),V(d,{fontSize:f+"px",lineHeight:p,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px"})),NO(e)&&(V(o,{width:i.width,x:i.x}),V(d,{fontSize:f+"px",lineHeight:p,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})),rr(n)&&!Hs(n)&&!Ge(n)){var _=Dl(e),C=t.getAbsoluteBBox({x:_.x,y:_.y,width:0,height:0}),P=u,D=Ir.width*a+2*v;V(o,{width:D,height:P+2*v,x:C.x-D/2,y:C.y-P/2-v}),V(d,{fontSize:u+"px",lineHeight:l})}return E(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:yo*a+"px",paddingBottom:yo*a+"px",paddingLeft:yo*a+"px",paddingRight:yo*a+"px",fontSize:f+"px",lineHeight:p})),{bounds:o,style:d}},Ja.prototype.update=function(e,t,n,i){var r,o;E(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 ox(e){return E(e,"bpmn:SubProcess")&&!Ke(e)}function NO(e){return E(e,"bpmn:SubProcess")&&Ke(e)}function $O(e){return E(e,"bpmn:Participant")&&!Ke(e)}function FO(e){return E(e,"bpmn:Participant")&&Ke(e)}function jO(e){return!e||!e.trim()}var ax="djs-element-hidden",sx="djs-label-hidden";function cx(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,E(o,"bpmn:TextAnnotation")){a=t.getAbsoluteBBox(o),s=Pe("g");var l=n.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:o.width,containerHeight:o.height,position:{mx:0,my:0}}),f=i.path=Pe("path");xe(f,{d:l,strokeWidth:2,stroke:HO(o)}),Fe(s,f),Fe(r,s),tn(s,o.x,o.y)}E(o,"bpmn:TextAnnotation")||o.labelTarget?t.addMarker(o,ax):(E(o,"bpmn:Task")||E(o,"bpmn:CallActivity")||E(o,"bpmn:SubProcess")||E(o,"bpmn:Participant")||E(o,"bpmn:Lane"))&&t.addMarker(o,sx)}),e.on("directEditing.resize",function(c){if(E(o,"bpmn:TextAnnotation")){var u=c.height,l=c.dy,f=Math.max(o.height/a.height*(u+l),0),p=n.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:o.width,containerHeight:f,position:{mx:0,my:0}});xe(i.path,{d:p})}}),e.on(["directEditing.complete","directEditing.cancel"],function(c){var u=c.active;u&&(t.removeMarker(u.element.label||u.element,ax),t.removeMarker(o,sx)),o=void 0,a=void 0,s&&(Ht(s),s=void 0)})}cx.$inject=["eventBus","canvas","pathMap"];function HO(e,t){var n=Ze(e);return n.get("stroke")||t||"black"}const zO={__depends__:[Zp,rx,D_],__init__:["labelEditingProvider","labelEditingPreview"],labelEditingProvider:["type",Ja],labelEditingPreview:["type",cx]};var GO=500,VO=1e3;function Si(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){AS(o)||i.createOutline(o)}e.on("element.hover",function(o){r(o.element)}),e.on("selection.changed",function(o){N(o.newSelection,r)}),e.on(["shape.changed","connection.changed"],GO,function(o){var a=o.element,s=o.gfx,c=rt(".djs-outline",s);c&&i.updateOutline(a,c)})}Si.prototype.createOutline=function(e){var t=this._elementRegistry.getGraphics(e);if(!t)throw new Error("cannot create outline for non-rendered element");var n=rt(".djs-outline",t);return n||(n=this.getOutline(e)||this._createOutlineGfx(),Fe(t,n),this.updateOutline(e,n)),n},Si.prototype._createOutlineGfx=function(){var e=Pe("rect");return xe(e,V({x:0,y:0,rx:4,width:100,height:100},this._outlineStyle)),e},Si.prototype.updateOutline=function(e,t){e.waypoints?this.updateConnectionOutline(t,e):this.updateShapeOutline(t,e)},Si.prototype.updateShapeOutline=function(e,t){var n=!1,i=this._getProviders();i.length&&N(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})},Si.prototype.updateConnectionOutline=function(e,t){var n=Dt(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})},Si.prototype.registerProvider=function(e,t){t||(t=e,e=VO),this._eventBus.on("outline.getProviders",e,function(n){n.providers.push(t)})},Si.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"outline.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},Si.prototype.getOutline=function(e){var t,n=this._getProviders();return N(n,function(i){Ut(i.getOutline)&&(t=t||i.getOutline(e))}),t},Si.$inject=["eventBus","styles","elementRegistry"];var Ru=6;function Yf(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)})}Yf.prototype._updateMultiSelectionOutline=function(e){var t=this._canvas.getLayer("selectionOutline");Ts(t);var n=e.length>1,i=this._canvas.getContainer();if(Xe(i)[n?"add":"remove"]("djs-multi-select"),!!n){var r=WO(Dt(e)),o=Pe("rect");xe(o,V({rx:3},r)),Xe(o).add("djs-selection-outline"),Fe(t,o)}},Yf.$inject=["eventBus","canvas","selection"];function WO(e){return{x:e.x-Ru,y:e.y-Ru,width:e.width+Ru*2,height:e.height+Ru*2}}const qf={__depends__:[Qn],__init__:["outline","multiSelectionOutline"],outline:["type",Si],multiSelectionOutline:["type",Yf]},ux=["bpmn:Event","bpmn:SequenceFlow","bpmn:Gateway"],lx={class:"bjs-label-link",stroke:"var(--element-selected-outline-secondary-stroke-color)",strokeDasharray:"5, 5"},UO=15,Cu=2;function px(e,t,n,i,r){const o=t.getLayer("overlays");e.on(["selection.changed","shape.changed"],function(){s()}),e.on("selection.changed",function({newSelection:f}){var d;const p=f.filter(h=>Ve(h,ux));if(p.length===1){const h=p[0];Ge(h)?a(h,h.labelTarget):(d=h.labels)!=null&&d.length&&a(h.labels[0],h)}if(p.length===2){const h=p.find(Ge),m=p.find(g=>{var y;return(y=g.labels)==null?void 0:y.includes(h)});h&&m&&a(h,m)}}),e.on("shape.changed",function({element:f}){var p;!Ve(f,ux)||!l(f)||(Ge(f)?a(f,f.labelTarget):(p=f.labels)!=null&&p.length&&a(f.labels[0],f))});function a(f,p){const d=na([Le(p),Le(f)],lx),h=d.getAttribute("d"),g=r.isSelected(f)?c(f):u(f),y=aa(g,h);if(!y)return;const b=r.isSelected(p)?c(p):u(p),_=aa(b,h)||Le(p);ga(_,y)<UO||(Rl(d,[_,y]),Fe(o,d))}function s(){As(`.${lx.class}`,o).forEach(Ht)}function c(f){const p=i.getOutline(f);if(!p)return u(f);if(p.x){const d={x:f.x+xr(p,"x")-Cu,y:f.y+xr(p,"y")-Cu,width:xr(p,"width")+Cu*2,height:xr(p,"height")+Cu*2};return Il(d,xr(p,"rx"))}if(p.cx){const d=xr(p,"r"),h={x:f.x+xr(p,"cx")-d,y:f.y+xr(p,"cy")-d,width:d*2,height:d*2};return jm(h)}}function u(f){return n.getShapePath(f)}function l(f){return r.isSelected(f)}}px.$inject=["eventBus","canvas","graphicsFactory","outline","selection"];function xr(e,t){return parseFloat(xe(e,t)||0)}const YO={__depends__:[Qn,qf],__init__:["labelLink"],labelLink:["type",px]};var qO=new To("tt");function KO(e){var t=mt('<div class="djs-tooltip-container" />');return vn(t,{position:"absolute",width:"0",height:"0"}),e.insertBefore(t,e.firstChild),t}function XO(e,t,n){vn(e,{left:t+"px",top:n+"px"})}function Kf(e,t){e.style.display=t===!1?"none":""}var fx="djs-tooltip",Xf="."+fx;function En(e,t){this._eventBus=e,this._canvas=t,this._ids=qO,this._tooltipDefaults={show:{minZoom:.7,maxZoom:5}},this._tooltips={},this._tooltipRoot=KO(t.getContainer());var n=this;Tn.bind(this._tooltipRoot,Xf,"mousedown",function(i){i.stopPropagation()}),Tn.bind(this._tooltipRoot,Xf,"mouseover",function(i){n.trigger("mouseover",i)}),Tn.bind(this._tooltipRoot,Xf,"mouseout",function(i){n.trigger("mouseout",i)}),this._init()}En.$inject=["eventBus","canvas"],En.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},En.prototype.trigger=function(e,t){var n=t.delegateTarget||t.target,i=this.get(ln(n,"data-tooltip-id"));i&&(e==="mouseover"&&i.timeout&&this.clearTimeout(i),e==="mouseout"&&i.timeout&&(i.timeout=1e3,this.setTimeout(i)))},En.prototype.get=function(e){return typeof e!="string"&&(e=e.id),this._tooltips[e]},En.prototype.clearTimeout=function(e){if(e=this.get(e),!!e){var t=e.removeTimer;t&&(clearTimeout(t),e.removeTimer=null)}},En.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)}},En.prototype.remove=function(e){var t=this.get(e);t&&(mi(t.html),mi(t.htmlContainer),delete t.htmlContainer,delete this._tooltips[t.id])},En.prototype.show=function(){Kf(this._tooltipRoot)},En.prototype.hide=function(){Kf(this._tooltipRoot,!1)},En.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},En.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)),Sn(n)&&(n=mt(n)),i=mt('<div data-tooltip-id="'+t+'" class="'+fx+'">'),vn(i,{position:"absolute"}),i.appendChild(n),e.type&&bt(i).add("djs-tooltip-"+e.type),e.className&&bt(i).add(e.className),e.htmlContainer=i,r.appendChild(i),this._tooltips[t]=e,this._updateTooltip(e)},En.prototype._updateTooltip=function(e){var t=e.position,n=e.htmlContainer;XO(n,t.x,t.y)},En.prototype._updateTooltipVisibilty=function(e){N(this._tooltips,function(t){var n=t.show,i=t.htmlContainer,r=!0;n&&((n.minZoom>e.scale||n.maxZoom<e.scale)&&(r=!1),Kf(i,r))})},En.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 ZO={__init__:["tooltips"],tooltips:["type",En]};var QO="flow elements must be children of pools/participants",JO="Data object must be placed within a pool/participant.";function dx(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;E(s,"bpmn:Collaboration")&&(E(a,"bpmn:FlowNode")?i(r,n(QO)):E(a,"bpmn:DataObjectReference")&&i(r,n(JO)))})}dx.$inject=["eventBus","tooltips","translate"];const eD={__depends__:[ZO],__init__:["modelingFeedback"],modelingFeedback:["type",dx]};var tD=500,nD=1250,iD=1500,Pu=Math.round;function rD(e){return{x:e.x+Pu(e.width/2),y:e.y+Pu(e.height/2)}}function hx(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",iD,function(s){var c=s.context,u=s.shape,l=i.get().slice();l.indexOf(u)===-1&&(l=[u]),l=oD(l),V(c,{shapes:l,validatedShapes:l,shape:u})}),e.on("shape.move.start",nD,function(s){var c=s.context,u=c.validatedShapes,l;if(l=c.canExecute=o(u),!l)return!1}),e.on("shape.move.move",tD,function(s){var c=s.context,u=c.validatedShapes,l=s.hover,f={x:s.dx,y:s.dy},p={x:s.x,y:s.y},d;if(d=o(u,f,p,l),c.delta=f,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,f=l==="attach",p=c.shapes;if(l===!1)return!1;u.x=Pu(u.x),u.y=Pu(u.y),!(u.x===0&&u.y===0)&&n.moveElements(p,u,c.target,{primaryShape:c.shape,attach:f})}),e.on("element.mousedown",function(s){if(cr(s)){var c=Ro(s);if(!c)throw new Error("must supply DOM mousedown event");return a(c,s.element)}});function a(s,c,u,l){if(Wt(u)&&(l=u,u=!1),!(c.waypoints||!c.parent)&&!Xe(s.target).has("djs-hit-no-move")){var f=rD(c),p=t.init(s,f,"shape.move",{cursor:"grabbing",autoActivate:u,data:{shape:c,context:l||{}}});if(p!==!1)return!0}}this.start=a}hx.$inject=["eventBus","dragging","modeling","selection","rules"];function oD(e){var t=eo(e,"id");return We(e,function(n){for(;n=n.parent;)if(t[n.id])return!1;return!0})}var mx=499,Zf="djs-dragging",gx="drop-ok",yx="drop-not-ok",vx="new-parent",bx="attach-ok";function _x(e,t,n,i){function r(c){var u=o(c),l=aD(u);return l}function o(c){var u=ia(c),l=u.flatMap(d=>(d.incoming||[]).concat(d.outgoing||[])),f=u.concat(l),p=[...new Set(f)];return p}function a(c,u){[bx,gx,yx,vx].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,Zf),c.allDraggedElements?c.allDraggedElements.push(u):c.allDraggedElements=[u]}e.on("shape.move.start",mx,function(c){var u=c.context,l=u.shapes,f=u.allDraggedElements,p=r(l);if(!u.dragGroup){var d=Pe("g");xe(d,n.cls("djs-drag-group",["no-events"]));var h=t.getActiveLayer();Fe(h,d),u.dragGroup=d}p.forEach(function(m){i.addDragger(m,u.dragGroup)}),f?f=Nu([f,o(l)]):f=o(l),N(f,function(m){t.addMarker(m,Zf)}),u.allDraggedElements=f,u.differentParents=sD(l)}),e.on("shape.move.move",mx,function(c){var u=c.context,l=u.dragGroup,f=u.target,p=u.shape.parent,d=u.canExecute;f&&(d==="attach"?a(f,bx):u.canExecute&&p&&f.id!==p.id?a(f,vx):a(f,u.canExecute?gx:yx)),tn(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,f=u.dragGroup;N(l,function(p){t.removeMarker(p,Zf)}),f&&Ht(f)}),this.makeDraggable=s}_x.$inject=["eventBus","canvas","styles","previewSupport"];function aD(e){var t=new Set;e.forEach(function(i){t.add(i.id)});var n=We(e,function(i){return at(i)?t.has(i.source.id)&&t.has(i.target.id):!0});return n}function sD(e){return Q0(eo(e,function(t){return t.parent&&t.parent.id}))!==1}const cD={__depends__:[vc,Qn,qf,xi,$i,Mo],__init__:["move","movePreview"],move:["type",hx],movePreview:["type",_x]};var xx=".djs-palette-toggle",wx=".entry",uD=xx+", "+wx,Qf="djs-palette-",lD="shown",Jf="open",Ex="two-column",pD=1e3;function $t(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()})}$t.$inject=["eventBus","canvas"],$t.prototype.registerProvider=function(e,t){t||(t=e,e=pD),this._eventBus.on("palette.getProviders",e,function(n){n.providers.push(t)}),this._rebuild()},$t.prototype.getEntries=function(){var e=this._getProviders();return e.reduce(dD,{})},$t.prototype._rebuild=function(){if(this._diagramInitialized){var e=this._getProviders();e.length&&(this._container||this._init(),this._update())}},$t.prototype._init=function(){var e=this,t=this._eventBus,n=this._getParentContainer(),i=this._container=mt($t.HTML_MARKUP);n.appendChild(i),bt(n).add(Qf+lD),Tn.bind(i,uD,"click",function(r){var o=r.delegateTarget;if(gl(o,xx))return e.toggle();e.trigger("click",r)}),$e.bind(i,"mousedown",function(r){r.stopPropagation()}),Tn.bind(i,wx,"dragstart",function(r){e.trigger("dragstart",r)}),t.on("canvas.resized",this._layoutChanged,this),t.fire("palette.create",{container:i})},$t.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"palette.getProviders",providers:[]});return this._eventBus.fire(t),t.providers},$t.prototype._toggleState=function(e){e=e||{};var t=this._getParentContainer(),n=this._container,i=this._eventBus,r,o=bt(n),a=bt(t);"twoColumn"in e?r=e.twoColumn:r=this._needsCollapse(t.clientHeight,this._entries||{}),o.toggle(Ex,r),a.toggle(Qf+Ex,r),"open"in e&&(o.toggle(Jf,e.open),a.toggle(Qf+Jf,e.open)),i.fire("palette.changed",{twoColumn:r,open:this.isOpen()})},$t.prototype._update=function(){var e=rt(".djs-palette-entries",this._container),t=this._entries=this.getEntries();Cs(e),N(t,function(n,i){var r=n.group||"default",o=rt("[data-group="+$a(r)+"]",e);o||(o=mt('<div class="group"></div>'),ln(o,"data-group",r),e.appendChild(o));var a=n.html||(n.separator?'<hr class="separator" />':'<div class="entry" draggable="true"></div>'),s=mt(a);if(o.appendChild(s),!n.separator&&(ln(s,"data-action",i),n.title&&ln(s,"title",n.title),n.className&&fD(s,n.className),n.imageUrl)){var c=mt("<img>");ln(c,"src",n.imageUrl),s.appendChild(c)}}),this.open()},$t.prototype.trigger=function(e,t,n){var i,r,o=t.delegateTarget||t.target;return o?(i=ln(o,"data-action"),r=t.originalEvent||t,this.triggerEntry(i,e,r,n)):t.preventDefault()},$t.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(Ut(a)){if(t==="click")return a(n,i)}else if(a[t])return a[t](n,i);n.preventDefault()}},$t.prototype._layoutChanged=function(){this._toggleState({})},$t.prototype._needsCollapse=function(e,t){var n=50,i=Object.keys(t).length*46;return e<i+n},$t.prototype.close=function(){this._toggleState({open:!1,twoColumn:!1})},$t.prototype.open=function(){this._toggleState({open:!0})},$t.prototype.toggle=function(){this.isOpen()?this.close():this.open()},$t.prototype.isActiveTool=function(e){return e&&this._activeTool===e},$t.prototype.updateToolHighlight=function(e){var t,n;this._toolsContainer||(t=rt(".djs-palette-entries",this._container),this._toolsContainer=rt("[data-group=tools]",t)),n=this._toolsContainer,N(n.children,function(i){var r=i.getAttribute("data-action");if(r){var o=bt(i);r=r.replace("-tool",""),o.contains("entry")&&r===e?o.add("highlighted-entry"):o.remove("highlighted-entry")}})},$t.prototype.isOpen=function(){return bt(this._container).has(Jf)},$t.prototype._getParentContainer=function(){return this._canvas.getContainer()},$t.HTML_MARKUP='<div class="djs-palette"><div class="djs-palette-entries"></div><div class="djs-palette-toggle"></div></div>';function fD(e,t){var n=bt(e),i=De(t)?t:t.split(/\s+/g);i.forEach(function(r){n.add(r)})}function dD(e,t){var n=t.getPaletteEntries();return Ut(n)?n(e):(N(n,function(i,r){e[r]=i}),e)}const hD={__init__:["palette"],palette:["type",$t]};var Sx="crosshair",Rx="selected",mD="djs-dragging-active-lasso";function wr(e,t,n,i,r,o,a){this._selection=r,this._dragging=n,this._mouse=a;var s=this,c={create:function(f){var p=t.getActiveLayer(),d=f.frame=Pe("rect");xe(d,{class:"djs-lasso-overlay",width:1,height:1,x:0,y:0}),Fe(p,d),u(!0),this.update(f)},update:function(f){var p=f.frame,d=f.bbox;p&&d&&xe(p,{x:d.x,y:d.y,width:d.width,height:d.height});var h=f.marked,m=f.lastMarked;if(h&&m){for(const g of m)h.has(g)||t.removeMarker(g,Rx);for(const g of h)m.has(g)||t.addMarker(g,Rx)}},remove:function(f){this.update(f),f.frame&&Ht(f.frame),u(!1)}};function u(f){Xe(t.getContainer()).toggle(mD,f)}function l(f){var p=i.getAll();return new Set(Jr(po(p,f)))}o.registerTool("lasso",{tool:"lasso.selection",dragging:"lasso"}),e.on("lasso.selection.end",function(f){var p=f.originalEvent.target;!f.hover&&!(p instanceof SVGElement)||e.once("lasso.selection.ended",function(){s.activateLasso(f.originalEvent,!0)})}),e.on("lasso.end",0,function(f){var p=f.context;s._select(Array.from(p.marked))}),e.on("lasso.start",function(f){var p=f.context;p.bbox=Cx(f),p.add=pc(f),p.lastMarked=new Set(r.get()),p.add?p.marked=p.lastMarked:p.marked=new Set,p.initialMarked=p.marked,c.create(p)}),e.on("lasso.move",function(f){var p=f.context,d=p.bbox=Cx(f),h=l(d),m=p.initialMarked.union(h);p.lastMarked=p.marked,p.marked=m,c.update(p)}),e.on("lasso.cleanup",function(f){var p=f.context;p.lastMarked=p.marked,p.marked=new Set(r.get()),c.remove(f.context)}),e.on("element.mousedown",1500,function(f){if(pc(f))return s.activateLasso(f.originalEvent),!0})}wr.$inject=["eventBus","canvas","dragging","elementRegistry","selection","toolManager","mouse"],wr.prototype.activateLasso=function(e,t){this._dragging.init(e,"lasso",{autoActivate:t,cursor:Sx,data:{context:{}},keepSelection:!0})},wr.prototype.activateSelection=function(e,t){this._dragging.init(e,"lasso.selection",{trapClick:!1,autoActivate:t,cursor:Sx,data:{context:{}},keepSelection:!0})},wr.prototype._select=function(e){this._selection.select(e)},wr.prototype.select=function(e,t,n=[]){var i=Jr(po(e,t));this._select([...n,...i])},wr.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},wr.prototype.isActive=function(){var e=this._dragging.context();return e&&/^lasso/.test(e.prefix)};function Cx(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 gD={__depends__:[wc,wa],__init__:["lassoTool"],lassoTool:["type",wr]};var ed=1500,Px="grab";function Ho(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",ed,function(c){if(ba(c))return a.activateMove(c.originalEvent,!0),!1}),s&&s.addListener(ed,function(c){if(!(!Ax(c.keyEvent)||a.isActive())){var u=a._mouse.getLastMoveEvent();a.activateMove(u,!!u)}},"keyboard.keydown"),s&&s.addListener(ed,function(c){!Ax(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!ba(c)&&l&&e.once("hand.move.ended",function(f){a.activateHand(f.originalEvent,!0,!0)}),!1})}Ho.$inject=["eventBus","canvas","dragging","injector","toolManager","mouse"],Ho.prototype.activateMove=function(e,t,n){typeof t=="object"&&(n=t,t=!1),this._dragging.init(e,"hand.move",{autoActivate:t,cursor:Px,data:{context:n||{}}})},Ho.prototype.activateHand=function(e,t,n){this._dragging.init(e,"hand",{trapClick:!1,autoActivate:t,cursor:Px,data:{context:{reactivate:n}}})},Ho.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateHand(e,!!e)},Ho.prototype.isActive=function(){var e=this._dragging.context();return e?/^(hand|hand\.move)$/.test(e.prefix):!1};function Ax(e){return zt("Space",e)}const yD={__depends__:[wc,wa],__init__:["handTool"],handTool:["type",Ho]};var Tx="connect-ok",Mx="connect-not-ok";function zo(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,f=u.canStartConnect=s.canStartConnect(l);f!==null&&(u.startTarget=l,i.addMarker(l,f?Tx:Mx))}),e.on(["global-connect.out","global-connect.cleanup"],function(c){var u=c.context.startTarget,l=c.context.canStartConnect;u&&i.removeMarker(u,l?Tx:Mx)}),e.on(["global-connect.ended"],function(c){var u=c.context,l=u.startTarget,f={x:c.x,y:c.y},p=s.canStartConnect(l);if(p)return e.once("element.out",function(){e.once(["connect.ended","connect.canceled"],function(){e.fire("global-connect.drag.ended")}),n.start(null,l,f)}),!1})}zo.$inject=["eventBus","dragging","connect","canvas","toolManager","rules","mouse"],zo.prototype.start=function(e,t){this._dragging.init(e,"global-connect",{autoActivate:t,trapClick:!1,data:{context:{}}})},zo.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();return this.start(e,!!e)},zo.prototype.isActive=function(){var e=this._dragging.context();return e&&/^global-connect/.test(e.prefix)},zo.prototype.canStartConnect=function(e){return this._rules.allowed("connection.start",{source:e})};const vD={__depends__:[Gf,xi,$i,wc,wa],globalConnect:["type",zo]};function td(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)}td.$inject=["palette","create","elementFactory","spaceTool","lassoTool","handTool","globalConnect","translate"],td.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(f,p,d,h,m){function g(y){var v=n.createShape(V({type:f},m));t.start(y,v)}return{group:p,className:d,title:h,action:{dragstart:g,click:g}}}function u(f){var p=n.createShape({type:"bpmn:SubProcess",x:0,y:0,isExpanded:!0}),d=n.createShape({type:"bpmn:StartEvent",x:40,y:82,parent:p});t.start(f,[p,d],{hints:{autoSelect:[p]}})}function l(f){t.start(f,n.createParticipantShape())}return V(e,{"hand-tool":{group:"tools",className:"bpmn-icon-hand-tool",title:s("Activate hand tool"),action:{click:function(f){o.activateHand(f)}}},"lasso-tool":{group:"tools",className:"bpmn-icon-lasso-tool",title:s("Activate lasso tool"),action:{click:function(f){r.activateSelection(f)}}},"space-tool":{group:"tools",className:"bpmn-icon-space-tool",title:s("Activate create/remove space tool"),action:{click:function(f){i.activateSelection(f)}}},"global-connect-tool":{group:"tools",className:"bpmn-icon-connection-multi",title:s("Activate global connect tool"),action:{click:function(f){a.start(f)}}},"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 bD={__depends__:[hD,_c,rv,gD,yD,vD,fa],__init__:["paletteProvider"],paletteProvider:["type",td]};var _D=250;function nd(e,t,n,i,r){te.call(this,e);function o(s){var c=s.canExecute.replacements;N(c,function(u){var l=u.oldElementId,f={type:u.newElementType};if(!s.visualReplacements[l]){var p=t.get(l);V(f,{x:p.x,y:p.y});var d=n.createShape(f);i.addShape(d,p.parent);var h=rt('[data-element-id="'+$a(p.id)+'"]',s.dragGroup);h&&xe(h,{display:"none"});var m=r.addDragger(d,s.dragGroup);s.visualReplacements[l]=m,i.removeShape(d)}})}function a(s){var c=s.visualReplacements;N(c,function(u,l){var f=rt('[data-element-id="'+$a(l)+'"]',s.dragGroup);f&&xe(f,{display:"inline"}),u.remove(),c[l]&&delete c[l]})}e.on("shape.move.move",_D,function(s){var c=s.context,u=c.canExecute;c.visualReplacements||(c.visualReplacements={}),u&&u.replacements?o(c):a(c)})}nd.$inject=["eventBus","elementRegistry","elementFactory","canvas","previewSupport"],_e(nd,te);const xD={__depends__:[Mo],__init__:["bpmnReplacePreview"],bpmnReplacePreview:["type",nd]};var wD=1250,id=40,ED=20,SD=10,kx=20,Ox=["x","y"],RD=Math.abs;function Dx(e){e.on(["connect.hover","connect.move","connect.end"],wD,function(t){var n=t.context,i=n.canExecute,r=n.start,o=n.hover,a=n.source,s=n.target;t.originalEvent&&On(t.originalEvent)||(n.initialConnectionStart||(n.initialConnectionStart=n.connectionStart),i&&o&&CD(t,o,MD(o)),o&&TD(i,["bpmn:Association","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:SequenceFlow"])?(n.connectionStart=ti(r),Ve(o,["bpmn:Event","bpmn:Gateway"])&&Lx(t,ti(o)),Ve(o,["bpmn:Task","bpmn:SubProcess"])&&PD(t,o),E(a,"bpmn:BoundaryEvent")&&s===a.host&&AD(t)):Ix(i,"bpmn:MessageFlow")?(E(r,"bpmn:Event")&&(n.connectionStart=ti(r)),E(o,"bpmn:Event")&&Lx(t,ti(o))):n.connectionStart=n.initialConnectionStart)})}Dx.$inject=["eventBus"];function CD(e,t,n){Ox.forEach(function(i){var r=Bx(i,t);e[i]<t[i]+n?Nt(e,i,t[i]+n):e[i]>t[i]+r-n&&Nt(e,i,t[i]+r-n)})}function PD(e,t){var n=ti(t);Ox.forEach(function(i){kD(e,t,i)&&Nt(e,i,n[i])})}function AD(e){var t=e.context,n=t.source,i=t.target;if(!OD(t)){var r=ti(n),o=en(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;RD(c-r[s])<id&&(c>r[s]?u=r[s]+id:u=r[s]-id,Nt(e,s,u))})}}function Lx(e,t){Nt(e,"x",t.x),Nt(e,"y",t.y)}function Ix(e,t){return e&&e.type===t}function TD(e,t){return Yi(t,function(n){return Ix(e,n)})}function Bx(e,t){return e==="x"?t.width:t.height}function MD(e){return E(e,"bpmn:Task")?SD:ED}function kD(e,t,n){return e[n]>t[n]+kx&&e[n]<t[n]+Bx(n,t)-kx}function OD(e){var t=e.hover,n=e.source;return t&&n&&t===n}function Er(){this._targets={},this._snapOrigins={},this._snapLocations=[],this._defaultSnaps={}}Er.prototype.getSnapOrigin=function(e){return this._snapOrigins[e]},Er.prototype.setSnapOrigin=function(e,t){this._snapOrigins[e]=t,this._snapLocations.indexOf(e)===-1&&this._snapLocations.push(e)},Er.prototype.addDefaultSnap=function(e,t){var n=this._defaultSnaps[e];n||(n=this._defaultSnaps[e]=[]),n.push(t)},Er.prototype.getSnapLocations=function(){return this._snapLocations},Er.prototype.setSnapLocations=function(e){this._snapLocations=e},Er.prototype.pointsForTarget=function(e){var t=e.id||e,n=this._targets[t];return n||(n=this._targets[t]=new Au,n.initDefaults(this._defaultSnaps)),n};function Au(){this._snapValues={}}Au.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)},Au.prototype.snap=function(e,t,n,i){var r=this._snapValues[t];return r&&_k(e[n],r[n],i)},Au.prototype.initDefaults=function(e){var t=this;N(e||{},function(n,i){N(n,function(r){t.add(i,r)})})};var DD=1250;function Ri(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"],DD,function(r){var o=r.context,a=o.shape,s=o.snapContext,c=o.target;if(!(r.originalEvent&&On(r.originalEvent))&&!(jo(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()})}Ri.$inject=["elementRegistry","eventBus","snapping"],Ri.prototype.initSnap=function(e){var t=this._elementRegistry,n=e.context,i=n.shape,r=n.snapContext;r||(r=n.snapContext=new Er);var o;t.get(i.id)?o=ti(i,e):o={x:e.x+ti(i).x,y:e.y+ti(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},Ri.prototype.addSnapTargetPoints=function(e,t,n){var i=this.getSnapTargets(t,n);return N(i,function(r){if(Ge(r)){Ge(t)&&e.add("mid",ti(r));return}if(at(r)){if(r.waypoints.length<3)return;var o=r.waypoints.slice(1,-1);N(o,function(a){e.add("mid",a)});return}e.add("mid",ti(r))}),!Be(t.x)||!Be(t.y)||this._elementRegistry.get(t.id)&&e.add("mid",ti(t)),e},Ri.prototype.getSnapTargets=function(e,t){return w_(t).filter(function(n){return!LD(n)})};function LD(e){return!!e.hidden}var Nx=1500;function Go(e,t){t.invoke(Ri,this),e.on(["create.move","create.end"],Nx,$D),e.on(["create.move","create.end","shape.move.move","shape.move.end"],Nx,function(n){var i=n.context,r=i.canExecute,o=i.target,a=r&&(r==="attach"||r.attach);a&&!jo(n)&&ID(n,o)})}_e(Go,Ri),Go.$inject=["eventBus","injector"],Go.prototype.initSnap=function(e){var t=Ri.prototype.initSnap.call(this,e),n=e.shape,i=!!this._elementRegistry.get(n.id);return N(n.outgoing,function(r){var o=r.waypoints[0];o=o.original||o,t.setSnapOrigin(r.id+"-docking",Fx(o,i,e))}),N(n.incoming,function(r){var o=r.waypoints[r.waypoints.length-1];o=o.original||o,t.setSnapOrigin(r.id+"-docking",Fx(o,i,e))}),E(n,"bpmn:Participant")&&t.setSnapLocations(["top-left","bottom-right","mid"]),t},Go.prototype.addSnapTargetPoints=function(e,t,n){Ri.prototype.addSnapTargetPoints.call(this,e,t,n);var i=this.getSnapTargets(t,n);N(i,function(o){(ND(o)||BD([t,o],"bpmn:TextAnnotation"))&&(e.add("top-left",__(o)),e.add("bottom-right",x_(o)))});var r=this._elementRegistry;return N(t.incoming,function(o){if(r.get(t.id)){$x(i,o.source)||e.add("mid",Le(o.source));var a=o.waypoints[0];e.add(o.id+"-docking",a.original||a)}}),N(t.outgoing,function(o){if(r.get(t.id)){$x(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)}}),E(n,"bpmn:SequenceFlow")&&(e=this.addSnapTargetPoints(e,t,n.parent)),e},Go.prototype.getSnapTargets=function(e,t){return Ri.prototype.getSnapTargets.call(this,e,t).filter(function(n){return!E(n,"bpmn:Lane")})};function ID(e,t){var n=Ae(t),i=ey(e,t),r=e.context,o=r.shape,a;o.parent?a={x:0,y:0}:a=Le(o),/top/.test(i)?Nt(e,"y",n.top-a.y):/bottom/.test(i)&&Nt(e,"y",n.bottom-a.y),/left/.test(i)?Nt(e,"x",n.left-a.x):/right/.test(i)&&Nt(e,"x",n.right-a.x)}function BD(e,t){return e.every(function(n){return E(n,t)})}function ND(e){return E(e,"bpmn:SubProcess")&&Ke(e)?!0:E(e,"bpmn:Participant")}function $D(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)&&Nt(e,"x",e.x),(i&&i>=e.y||o&&o<=e.y)&&Nt(e,"y",e.y)}}function $x(e,t){return e.indexOf(t)!==-1}function Fx(e,t,n){return t?{x:e.x-n.x,y:e.y-n.y}:{x:e.x,y:e.y}}var FD=1250;function es(e,t){var n=this;e.on(["resize.start"],function(i){n.initSnap(i)}),e.on(["resize.move","resize.end"],FD,function(i){var r=i.context,o=r.shape,a=o.parent,s=r.direction,c=r.snapContext;if(!(i.originalEvent&&On(i.originalEvent))&&!jo(i)){var u=c.pointsForTarget(a);u.initialized||(u=n.addSnapTargetPoints(u,o,a,s),u.initialized=!0),zD(s)&&Nt(i,"x",i.x),GD(s)&&Nt(i,"y",i.y),t.snap(i,u)}}),e.on(["resize.cleanup"],function(){t.hide()})}es.prototype.initSnap=function(e){var t=e.context,n=t.shape,i=t.direction,r=t.snapContext;r||(r=t.snapContext=new Er);var o=jx(n,i);return r.setSnapOrigin("corner",{x:o.x-e.x,y:o.y-e.y}),r},es.prototype.addSnapTargetPoints=function(e,t,n,i){var r=this.getSnapTargets(t,n);return N(r,function(o){e.add("corner",x_(o)),e.add("corner",__(o))}),e.add("corner",jx(t,i)),e},es.$inject=["eventBus","snapping"],es.prototype.getSnapTargets=function(e,t){return w_(t).filter(function(n){return!jD(n,e)&&!at(n)&&!HD(n)&&!Ge(n)})};function jx(e,t){var n=Le(e),i=Ae(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 HD(e){return!!e.hidden}function zD(e){return e==="n"||e==="s"}function GD(e){return e==="e"||e==="w"}var VD=7,WD=1e3;function Sr(e){this._canvas=e,this._asyncHide=Fu(xn(this.hide,this),WD)}Sr.$inject=["canvas"],Sr.prototype.snap=function(e,t){var n=e.context,i=n.snapContext,r=i.getSnapLocations(),o={x:jo(e,"x"),y:jo(e,"y")};N(r,function(a){var s=i.getSnapOrigin(a),c={x:e.x+s.x,y:e.y+s.y};if(N(["x","y"],function(u){var l;o[u]||(l=t.snap(c,a,u,VD),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),N(["x","y"],function(a){var s=o[a];Wt(s)&&Nt(e,a,s.originValue)})},Sr.prototype._createLine=function(e){var t=this._canvas.getLayer("snap"),n=Pe("path");return xe(n,{d:"M0,0 L0,0"}),Xe(n).add("djs-snap-line"),Fe(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"})}}},Sr.prototype._createSnapLines=function(){this._snapLines={horizontal:this._createLine("horizontal"),vertical:this._createLine("vertical")}},Sr.prototype.showSnapLine=function(e,t){var n=this.getSnapLine(e);n&&n.update(t),this._asyncHide()},Sr.prototype.getSnapLine=function(e){return this._snapLines||this._createSnapLines(),this._snapLines[e]},Sr.prototype.hide=function(){N(this._snapLines,function(e){e.update()})};const UD={__depends__:[{__init__:["createMoveSnapping","resizeSnapping","snapping"],createMoveSnapping:["type",Ri],resizeSnapping:["type",es],snapping:["type",Sr]}],__init__:["connectSnapping","createMoveSnapping"],connectSnapping:["type",Dx],createMoveSnapping:["type",Go]};var Hx=300;function je(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=rt(je.INPUT_SELECTOR,this._container),this._resultsContainer=rt(je.RESULTS_CONTAINER_SELECTOR,this._container),this._canvas.getContainer().appendChild(this._container),t.on(["canvas.destroy","diagram.destroy","drag.init","elements.changed"],this.close,this)}je.$inject=["canvas","eventBus","selection","translate"],je.prototype._bindEvents=function(){var e=this;function t(n,i,r,o){e._eventMaps.push({el:n,type:r,listener:Tn.bind(n,i,r,o)})}t(document,"html","click",function(n){e.close(!1)}),t(this._container,je.INPUT_SELECTOR,"click",function(n){n.stopPropagation(),n.delegateTarget.focus()}),t(this._container,je.RESULT_SELECTOR,"mouseover",function(n){n.stopPropagation(),e._scrollToNode(n.delegateTarget),e._preselect(n.delegateTarget)}),t(this._container,je.RESULT_SELECTOR,"click",function(n){n.stopPropagation(),e._select(n.delegateTarget)}),t(this._container,je.INPUT_SELECTOR,"keydown",function(n){zt("ArrowUp",n)&&n.preventDefault(),zt("ArrowDown",n)&&n.preventDefault()}),t(this._container,je.INPUT_SELECTOR,"keyup",function(n){if(zt("Escape",n))return e.close();if(zt("Enter",n)){var i=e._getCurrentResult();return i?e._select(i):e.close(!1)}if(zt("ArrowUp",n))return e._scrollToDirection(!0);if(zt("ArrowDown",n))return e._scrollToDirection();zt(["ArrowLeft","ArrowRight"],n)||e._search(n.delegateTarget.value)})},je.prototype._unbindEvents=function(){this._eventMaps.forEach(function(e){Tn.unbind(e.el,e.type,e.listener)})},je.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=rt(je.RESULT_SELECTOR,this._resultsContainer);this._scrollToNode(i),this._preselect(i)}},je.prototype._scrollToDirection=function(e){var t=this._getCurrentResult();if(t){var n=e?t.previousElementSibling:t.nextElementSibling;n&&(this._scrollToNode(n),this._preselect(n))}},je.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)}},je.prototype._clearResults=function(){Cs(this._resultsContainer),this._results={},this._eventBus.fire("searchPad.cleared")},je.prototype._getCurrentResult=function(){return rt(je.RESULT_SELECTED_SELECTOR,this._resultsContainer)},je.prototype._createResultNode=function(e,t){var n=mt(je.RESULT_HTML);return e.primaryTokens.length>0&&zx(n,e.primaryTokens,je.RESULT_PRIMARY_HTML),zx(n,e.secondaryTokens,je.RESULT_SECONDARY_HTML),ln(n,je.RESULT_ID_ATTRIBUTE,t),this._resultsContainer.appendChild(n),n},je.prototype.registerProvider=function(e){this._searchProvider=e},je.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,bt(this._canvas.getContainer()).add("djs-search-open"),bt(this._container).add("open"),this._searchInput.focus(),this._eventBus.fire("searchPad.opened"))},je.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,bt(this._canvas.getContainer()).remove("djs-search-open"),bt(this._container).remove("open"),this._clearResults(),this._searchInput.value="",this._searchInput.blur(),this._eventBus.fire("searchPad.closed"),this._canvas.restoreFocus())},je.prototype.toggle=function(){this.isOpen()?this.close():this.open()},je.prototype.isOpen=function(){return this._open},je.prototype._preselect=function(e){var t=this._getCurrentResult();if(e!==t){t&&bt(t).remove(je.RESULT_SELECTED_CLASS);var n=ln(e,je.RESULT_ID_ATTRIBUTE),i=this._results[n].element;bt(e).add(je.RESULT_SELECTED_CLASS),this._canvas.scrollToElement(i,{top:Hx}),this._selection.select(i),this._eventBus.fire("searchPad.preselected",i)}},je.prototype._select=function(e){var t=ln(e,je.RESULT_ID_ATTRIBUTE),n=this._results[t].element;this._cachedSelection=null,this._cachedViewbox=null,this.close(!1),this._canvas.scrollToElement(n,{top:Hx}),this._selection.select(n),this._eventBus.fire("searchPad.selected",n)},je.prototype._getBoxHtml=function(){const e=mt(je.BOX_HTML),t=rt(je.INPUT_SELECTOR,e);return t&&t.setAttribute("aria-label",this._translate("Search in diagram")),e};function zx(e,t,n){var i=YD(t),r=mt(n);r.innerHTML=i,e.appendChild(r)}function YD(e){var t="";return e.forEach(function(n){var i=Xv(n.value||n.matched||n.normal),r=n.match||n.matched;r?t+='<b class="'+je.RESULT_HIGHLIGHT_CLASS+'">'+i+"</b>":t+=i}),t!==""?t:null}je.CONTAINER_SELECTOR=".djs-search-container",je.INPUT_SELECTOR=".djs-search-input input",je.RESULTS_CONTAINER_SELECTOR=".djs-search-results",je.RESULT_SELECTOR=".djs-search-result",je.RESULT_SELECTED_CLASS="djs-search-result-selected",je.RESULT_SELECTED_SELECTOR="."+je.RESULT_SELECTED_CLASS,je.RESULT_ID_ATTRIBUTE="data-result-id",je.RESULT_HIGHLIGHT_CLASS="djs-search-highlight",je.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>`,je.RESULT_HTML='<div class="djs-search-result"></div>',je.RESULT_PRIMARY_HTML='<div class="djs-search-result-primary"></div>',je.RESULT_SECONDARY_HTML='<p class="djs-search-result-secondary"></p>';const VD={__depends__:[pa,Hc,Zn],searchPad:["type",je]};function td(e,t,n,i){this._elementRegistry=e,this._canvas=n,this._search=i,t.registerProvider(this)}td.$inject=["elementRegistry","searchPad","canvas","search"],td.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:zn(i),id:i.id})),e,{keys:["label","id"]}).map(WD)};function WD(e){const{item:{element:t},tokens:n}=e;return{element:t,primaryTokens:n.label,secondaryTokens:n.id}}const UD={__depends__:[VD,Qb],__init__:["bpmnSearch"],bpmnSearch:["type",td]},qD="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",YD="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",KD={width:36,height:50},XD={width:50,height:50};function Hx(e,t,n){return Pe("path",{d:e,strokeWidth:2,transform:`translate(${t.x}, ${t.y})`,...n})}const ii=5;function Cu(e,t){this._styles=t,e.registerProvider(this)}Cu.$inject=["outline","styles"],Cu.prototype.getOutline=function(e){const t=this._styles.cls("djs-outline",["no-fill"]);var n;if(_R(e))return n=Pe("rect"),xe(n,V({x:-ii,y:-ii,rx:4,width:e.width+ii*2,height:e.height+ii*2},t)),n;if(!Ge(e))return w(e,"bpmn:Gateway")?(n=Pe("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))):Ve(e,["bpmn:Task","bpmn:SubProcess","bpmn:Group","bpmn:CallActivity"])?(n=Pe("rect"),xe(n,V({x:-ii,y:-ii,rx:14,width:e.width+ii*2,height:e.height+ii*2},t))):w(e,"bpmn:EndEvent")?(n=Pe("circle"),xe(n,V({cx:e.width/2,cy:e.height/2,r:e.width/2+ii+1},t))):w(e,"bpmn:Event")?(n=Pe("circle"),xe(n,V({cx:e.width/2,cy:e.height/2,r:e.width/2+ii},t))):w(e,"bpmn:DataObjectReference")&&zx(e,"bpmn:DataObjectReference")?n=Hx(qD,{x:-6,y:-6},t):w(e,"bpmn:DataStoreReference")&&zx(e,"bpmn:DataStoreReference")&&(n=Hx(YD,{x:-6,y:-6},t)),n},Cu.prototype.updateOutline=function(e,t){if(!Ge(e))return Ve(e,["bpmn:SubProcess","bpmn:Group"])?(xe(t,{width:e.width+ii*2,height:e.height+ii*2}),!0):!!Ve(e,["bpmn:Event","bpmn:Gateway","bpmn:DataStoreReference","bpmn:DataObjectReference"])};function zx(e,t){var n;return t==="bpmn:DataObjectReference"?n=KD:t==="bpmn:DataStoreReference"&&(n=XD),e.width===n.width&&e.height===n.height}const ZD={__depends__:[Wf],__init__:["outlineProvider"],outlineProvider:["type",Cu]};var QD='<?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 Ci(e){mo.call(this,e)}_e(Ci,mo),Ci.Viewer=yr,Ci.NavigatedViewer=$a,Ci.prototype.createDiagram=function(){return this.importXML(QD)},Ci.prototype._interactionModules=[tb,ib,ab],Ci.prototype._modelingModules=[ek,Fc,ok,ik,vk,jf,Sk,Kk,Wy,yc,Jk,nO,vO,_O,xO,CO,$O,GO,ff,XO,rD,mD,yD,nx,zD,UD,ZD],Ci.prototype._modules=[].concat(yr.prototype._modules,Ci.prototype._interactionModules,Ci.prototype._modelingModules);const JD=((e,t)=>{const n=e.__vccOpts||e;for(const[i,r]of t)n[i]=r;return n})(Ot.defineComponent({__name:"BpmnModelerView",props:{xml:{}},emits:["ready","imported","import-error"],setup(e,{expose:t,emit:n}){const i=e,r=n,o=Ot.ref();let a;async function s(u){if(!a)throw new Error("modeler not mounted");try{const{warnings:l}=await a.importXML(u),f=Xu(l);return r("imported",f),{warnings:f}}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 Ot.onMounted(async()=>{a=new Ci({container:o.value,moddleExtensions:ps}),i.xml&&await s(i.xml),r("ready")}),Ot.watch(()=>i.xml,u=>{u&&a&&s(u)}),Ot.onBeforeUnmount(()=>{a==null||a.destroy(),a=void 0}),t({importXml:s,saveXml:c,getModeler:()=>a}),(u,l)=>(Ot.openBlock(),Ot.createElementBlock("div",{ref_key:"container",ref:o,class:"bpmn-modeler-view"},null,512))}}),[["__scopeId","data-v-a9b41c97"]]);ae.ADDABLE_FLOW_NODE_TYPES=is,ae.APPLY_BPMN_OPS_SCHEMA=U0,ae.BPMN_MODDLE_EXTENSIONS=ps,ae.BWL_MODDLE_SCHEMA=ld,ae.BWL_NS=ud,ae.BWL_PREFIX=ku,ae.BWL_SIDES=Ou,ae.BpmnModelerView=JD,ae.EDITOR=b1,ae.FLOW_LABEL_INDENT=Vd,ae.HEADLESS_BPMN_MODULES=Wv,ae.HEADLESS_TEXT_METRICS=ro,ae.I18N_NS=SE,ae.I18N_PREFIX=Id,ae.IR_FLOW_NODE_TYPES=Rr,ae.LABEL_FORK_MARGIN=el,ae.SYMBOLIC_OP_KINDS=dd,ae.SYMBOLIC_OP_SCHEMA=hd,ae.UNDO_EPISODE_COMMAND=Du,ae.applyBpmnOpBatch=$h,ae.applyBpmnOps=Lh,ae.approximateTextWidth=oo,ae.auditBpmnGeometry=th,ae.auditBpmnGeometryXml=YE,ae.auditGeometry=Wn,ae.auditTargetsOf=Vn,ae.axisSegmentsOf=yn,ae.blackBoxNameRect=Qu,ae.buildBpmnOpBatch=v1,ae.buildRegistryIndex=ih,ae.containerBoundarySegments=Qo,ae.createBpmnEditorController=_1,ae.createBpmnModdle=Bd,ae.createHeadlessBpmnModeler=jM,ae.crossedShapesOf=un,ae.crossingCost=Fn,ae.describeProcess=Nh,ae.describeProcessXml=y1,ae.edgeCrossCount=gs,ae.edgeCrossingPairsOf=nl,ae.edgeCrossingStatsOf=Kd,ae.executeAsUndoEpisode=fd,ae.forwardThreePointCandidates=ol,ae.geometryFindingKey=ai,ae.installHeadlessBpmnDom=$d,ae.isAddableFlowNodeType=cd,ae.isEdgeOverlapFinding=Ju,ae.isIrFlowNodeType=sd,ae.labelRectsOf=co,ae.lineCrossesLabel=Ti,ae.lineThroughLabel=Ud,ae.lineThroughShapeLabel=Jd,ae.loadBpmnXml=Ku,ae.lowerOps=Dh,ae.oppositeOverlapCount=BE,ae.oppositeOverlapOf=Gd,ae.planBackEdgeBoundaryClearance=dh,ae.planCrossPoolRoute=lh,ae.planEdgeRepair=ch,ae.planLabelLineClearance=Eh,ae.planLabelPlacement=wh,ae.planMiddleSegmentShifts=oh,ae.planOppositeOverlapRepair=mh,ae.planSegmentDetours=rl,ae.planShapeLabelClearance=Ch,ae.repairIntroducedBoundaryHugging=hh,ae.repairIntroducedCrossings=al,ae.repairIntroducedFakeMerges=yh,ae.repairIntroducedLabelLines=Sh,ae.repairIntroducedOppositeOverlaps=xh,ae.repairIntroducedShapeLabelLines=Ph,ae.repairIntroducedSharedSegmentLabels=Rh,ae.rerouteIntroducedCrossPoolEdges=ph,ae.resolverServicesOf=kh,ae.saveBpmnXml=RE,ae.sceneCrossingCost=Yd,ae.sceneFromDefinitions=eh,ae.sceneFromRegistry=pt,ae.sharedSegmentUnderLabel=ms,ae.sharedSpansOf=hs,ae.unreadableOverlapCount=$n,ae.unreadableOverlapOf=ao,ae.validateOps=Mh,ae.warningMessages=Xu,Object.defineProperty(ae,Symbol.toStringTag,{value:"Module"})}));
343
+ </div>`,je.RESULT_HTML='<div class="djs-search-result"></div>',je.RESULT_PRIMARY_HTML='<div class="djs-search-result-primary"></div>',je.RESULT_SECONDARY_HTML='<p class="djs-search-result-secondary"></p>';const qD={__depends__:[fa,Vc,Qn],searchPad:["type",je]};function rd(e,t,n,i){this._elementRegistry=e,this._canvas=n,this._search=i,t.registerProvider(this)}rd.$inject=["elementRegistry","searchPad","canvas","search"],rd.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:Wn(i),id:i.id})),e,{keys:["label","id"]}).map(KD)};function KD(e){const{item:{element:t},tokens:n}=e;return{element:t,primaryTokens:n.label,secondaryTokens:n.id}}const XD={__depends__:[qD,e_],__init__:["bpmnSearch"],bpmnSearch:["type",rd]},ZD="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",QD="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",JD={width:36,height:50},eL={width:50,height:50};function Gx(e,t,n){return Pe("path",{d:e,strokeWidth:2,transform:`translate(${t.x}, ${t.y})`,...n})}const ri=5;function Tu(e,t){this._styles=t,e.registerProvider(this)}Tu.$inject=["outline","styles"],Tu.prototype.getOutline=function(e){const t=this._styles.cls("djs-outline",["no-fill"]);var n;if(SR(e))return n=Pe("rect"),xe(n,V({x:-ri,y:-ri,rx:4,width:e.width+ri*2,height:e.height+ri*2},t)),n;if(!Ge(e))return E(e,"bpmn:Gateway")?(n=Pe("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))):Ve(e,["bpmn:Task","bpmn:SubProcess","bpmn:Group","bpmn:CallActivity"])?(n=Pe("rect"),xe(n,V({x:-ri,y:-ri,rx:14,width:e.width+ri*2,height:e.height+ri*2},t))):E(e,"bpmn:EndEvent")?(n=Pe("circle"),xe(n,V({cx:e.width/2,cy:e.height/2,r:e.width/2+ri+1},t))):E(e,"bpmn:Event")?(n=Pe("circle"),xe(n,V({cx:e.width/2,cy:e.height/2,r:e.width/2+ri},t))):E(e,"bpmn:DataObjectReference")&&Vx(e,"bpmn:DataObjectReference")?n=Gx(ZD,{x:-6,y:-6},t):E(e,"bpmn:DataStoreReference")&&Vx(e,"bpmn:DataStoreReference")&&(n=Gx(QD,{x:-6,y:-6},t)),n},Tu.prototype.updateOutline=function(e,t){if(!Ge(e))return Ve(e,["bpmn:SubProcess","bpmn:Group"])?(xe(t,{width:e.width+ri*2,height:e.height+ri*2}),!0):!!Ve(e,["bpmn:Event","bpmn:Gateway","bpmn:DataStoreReference","bpmn:DataObjectReference"])};function Vx(e,t){var n;return t==="bpmn:DataObjectReference"?n=JD:t==="bpmn:DataStoreReference"&&(n=eL),e.width===n.width&&e.height===n.height}const tL={__depends__:[qf],__init__:["outlineProvider"],outlineProvider:["type",Tu]};var nL='<?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 Ci(e){mo.call(this,e)}_e(Ci,mo),Ci.Viewer=yr,Ci.NavigatedViewer=Fa,Ci.prototype.createDiagram=function(){return this.importXML(nL)},Ci.prototype._interactionModules=[ib,ob,cb],Ci.prototype._modelingModules=[rk,zc,uk,sk,wk,Gf,Ak,Jk,Yy,_c,iO,aO,wO,SO,RO,MO,zO,YO,mf,eD,cD,bD,xD,rx,UD,XD,tL],Ci.prototype._modules=[].concat(yr.prototype._modules,Ci.prototype._interactionModules,Ci.prototype._modelingModules);const iL=((e,t)=>{const n=e.__vccOpts||e;for(const[i,r]of t)n[i]=r;return n})(Ot.defineComponent({__name:"BpmnModelerView",props:{xml:{}},emits:["ready","imported","import-error"],setup(e,{expose:t,emit:n}){const i=e,r=n,o=Ot.ref();let a;async function s(u){if(!a)throw new Error("modeler not mounted");try{const{warnings:l}=await a.importXML(u),f=Ju(l);return r("imported",f),{warnings:f}}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 Ot.onMounted(async()=>{a=new Ci({container:o.value,moddleExtensions:fs}),i.xml&&await s(i.xml),r("ready")}),Ot.watch(()=>i.xml,u=>{u&&a&&s(u)}),Ot.onBeforeUnmount(()=>{a==null||a.destroy(),a=void 0}),t({importXml:s,saveXml:c,getModeler:()=>a}),(u,l)=>(Ot.openBlock(),Ot.createElementBlock("div",{ref_key:"container",ref:o,class:"bpmn-modeler-view"},null,512))}}),[["__scopeId","data-v-a9b41c97"]]);ae.ADDABLE_FLOW_NODE_TYPES=rs,ae.APPLY_BPMN_OPS_SCHEMA=q0,ae.BPMN_MODDLE_EXTENSIONS=fs,ae.BWL_MODDLE_SCHEMA=dd,ae.BWL_NS=fd,ae.BWL_PREFIX=Lu,ae.BWL_SIDES=Iu,ae.BpmnModelerView=iL,ae.EDITOR=E1,ae.FLOW_LABEL_INDENT=Yd,ae.HEADLESS_BPMN_MODULES=Yv,ae.HEADLESS_TEXT_METRICS=ro,ae.I18N_NS=CE,ae.I18N_PREFIX=$d,ae.IR_FLOW_NODE_TYPES=Rr,ae.LABEL_FORK_MARGIN=il,ae.SYMBOLIC_OP_KINDS=gd,ae.SYMBOLIC_OP_SCHEMA=yd,ae.UNDO_EPISODE_COMMAND=Bu,ae.applyBpmnOpBatch=jh,ae.applyBpmnOps=Bh,ae.approximateTextWidth=oo,ae.auditBpmnGeometry=rh,ae.auditBpmnGeometryXml=ZE,ae.auditGeometry=Pn,ae.auditTargetsOf=zn,ae.axisSegmentsOf=yn,ae.blackBoxNameRect=tl,ae.buildBpmnOpBatch=w1,ae.buildRegistryIndex=ah,ae.containerBoundarySegments=Qo,ae.createBpmnEditorController=S1,ae.createBpmnModdle=Fd,ae.createHeadlessBpmnModeler=VM,ae.crossedShapesOf=Qt,ae.crossingCost=Hn,ae.describeProcess=Fh,ae.describeProcessXml=x1,ae.edgeCrossCount=Jo,ae.edgeCrossingPairsOf=ys,ae.edgeCrossingStatsOf=Qd,ae.executeAsUndoEpisode=md,ae.forwardThreePointCandidates=bs,ae.geometryFindingKey=Fn,ae.installHeadlessBpmnDom=Hd,ae.isAddableFlowNodeType=pd,ae.isEdgeOverlapFinding=nl,ae.isIrFlowNodeType=ld,ae.labelRectsOf=co,ae.lineCrossesLabel=Ti,ae.lineThroughLabel=Kd,ae.lineThroughShapeLabel=nh,ae.loadBpmnXml=Qu,ae.lowerOps=Ih,ae.oppositeOverlapCount=FE,ae.oppositeOverlapOf=Ud,ae.planBackEdgeBoundaryClearance=mh,ae.planCrossPoolRoute=fh,ae.planEdgeRepair=sl,ae.planLabelLineClearance=Rh,ae.planLabelPlacement=Sh,ae.planMiddleSegmentShifts=ch,ae.planOppositeOverlapRepair=yh,ae.planSegmentDetours=vs,ae.planShapeLabelClearance=Ah,ae.repairIntroducedBoundaryHugging=gh,ae.repairIntroducedCrossings=cl,ae.repairIntroducedEdgeCrossings=lh,ae.repairIntroducedFakeMerges=bh,ae.repairIntroducedLabelLines=Ch,ae.repairIntroducedOppositeOverlaps=Eh,ae.repairIntroducedShapeLabelLines=Th,ae.repairIntroducedSharedSegmentLabels=Ph,ae.rerouteIntroducedCrossPoolEdges=dh,ae.resolverServicesOf=Dh,ae.saveBpmnXml=PE,ae.sceneCrossingCost=Zd,ae.sceneFromDefinitions=ih,ae.sceneFromRegistry=ot,ae.sharedSegmentUnderLabel=gs,ae.sharedSpansOf=ms,ae.unreadableOverlapCount=jn,ae.unreadableOverlapOf=ao,ae.validateOps=Oh,ae.warningMessages=Ju,Object.defineProperty(ae,Symbol.toStringTag,{value:"Module"})}));