@g1cloud/bpmn-modeler-next 5.0.0-alpha.30 → 5.0.0-alpha.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent/geometryAudit.d.ts +14 -0
- package/dist/bpmn-modeler.js +7623 -7536
- package/dist/bpmn-modeler.umd.cjs +50 -50
- package/package.json +1 -1
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
(function(Q,St){typeof exports=="object"&&typeof module<"u"?St(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],St):(Q=typeof globalThis<"u"?globalThis:Q||self,St(Q.BpmnModeler={},Q.Vue))})(this,(function(Q,St){"use strict";var nD=Object.defineProperty;var iD=(Q,St,Ei)=>St in Q?nD(Q,St,{enumerable:!0,configurable:!0,writable:!0,value:Ei}):Q[St]=Ei;var Xr=(Q,St,Ei)=>iD(Q,typeof St!="symbol"?St+"":St,Ei);const Ei=["startEvent","endEvent","userTask","serviceTask","task","sendTask","receiveTask","exclusiveGateway","parallelGateway"];function Ff(e){return Ei.includes(e)}const Hf="http://g1project.net/spec/bpmn/bwl/1.0",bu="bwl",xu=["top-left","top","top-right","right","bottom-right","bottom","bottom-left","left"],zf={name:"bwl-hints",uri:Hf,prefix:bu,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"}]}]},wu="bwl.undoEpisode",Vf=new WeakSet;function Ox(e){Vf.has(e)||(e.register(wu,{preExecute(t){try{t.run()}catch(n){t.error=n}}}),Vf.add(e))}function Gf(e,t){Ox(e);const n={run:t};if(e.execute(wu,n),n.error!==void 0)throw e.canUndo()&&e.undo(),n.error}const Wf=["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"],Dx={description:"생략 = 보존, null = 제거.",anyOf:[{type:"string"},{type:"null"}]},Lx={type:"object",description:"레인. 배열 선언 순서 = 풀 내 상→하 순서.",properties:{id:{type:"string"},name:{type:"string"}},required:["id"],additionalProperties:!1},Ix={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},Nx={type:"object",description:"플로우 노드. 좌표는 지정하지 않는다 — 배치는 resolver 가 결정한다.",properties:{id:{type:"string"},type:{type:"string",enum:[...Ei]},name:{type:"string"},participant:{type:"string",description:"소속 풀 id(협업 문서)."},lane:{type:"string",description:"소속 레인 id(풀 정의에 선언된 것)."}},required:["id","type"],additionalProperties:!1},Bx={type:"object",description:"분기 조건 — 게이트웨이가 아닌 플로우에 붙인다. MVP 는 label 만.",properties:{label:{type:"string"}},required:["label"],additionalProperties:!1},$x={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},jx={type:"object",description:"메시지 플로우(풀 경계를 넘는 연결 — 노드 또는 블랙박스 풀 자체가 끝점).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"},name:{type:"string"}},required:["id","source","target"],additionalProperties:!1},Fx={type:"object",properties:{id:{type:"string"},name:{type:"string"}},required:["id"],additionalProperties:!1},Hx={type:"object",description:"데이터 입출력 연관. 방향 = source→target(태스크→스토어 = 쓰기, 스토어→태스크 = 읽기).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"}},required:["source","target"],additionalProperties:!1},zx={type:"object",properties:{id:{type:"string"},text:{type:"string"}},required:["id","text"],additionalProperties:!1},Vx={type:"object",description:"연관선(주석 ↔ 요소).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"}},required:["source","target"],additionalProperties:!1},Gx={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},Wx={type:"object",description:"주석 방위 힌트 — 앵커 요소 기준 상대 배치. 있으면 결정적 배치, 없으면 휴리스틱.",properties:{anchor:{type:"string",description:"기준 요소 id."},side:{type:"string",enum:[...xu]},offset:{type:"number",description:"앵커 가장자리 → 주석 가장자리 간격(px). 생략 시 50."}},required:["anchor","side"],additionalProperties:!1};function nn(e,t){return{type:"object",description:t.description,properties:{kind:{const:e},...t.properties},required:["kind",...t.required??[]],additionalProperties:!1}}const Ux={"participant.add":nn("participant.add",{description:"풀 추가. order = 풀 세로 순서 힌트 — **작을수록 위**(생략 시 op 순서가 곧 배치 순서). 값은 상대 순서만 쓰므로 1,2,3… 연속이든 10,20,30 간격이든 같다.",properties:{participant:{$ref:"#/$defs/irParticipant"},order:{type:"integer"}},required:["participant"]}),"participant.update":nn("participant.update",{description:"풀 이름/레인 갱신. lanes 는 전체 재선언(생략 = 보존) — 기존 레인을 유지하려면 함께 다시 나열한다.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},lanes:{type:"array",items:{$ref:"#/$defs/irLane"}}},required:["id"]}),"node.add":nn("node.add",{description:'플로우 노드 추가. band = 가로 밴드 순번 힌트(주 흐름 0, 갈래 1, 2…) — 위/아래가 아니라 "주 흐름에서 몇 번째 갈래"다. 행 배치(어느 갈래가 위/아래인지)는 호스트가 정한다(대칭·메시지 방향). 레인이 있으면 그 레인 안의 밴드다 — 한 레인 안에서 게이트웨이 출구를 갈라 놓을 때 쓴다. 컨테이너(풀·레인)는 밴드 수만큼 자란다.',properties:{node:{$ref:"#/$defs/irNode"},band:{type:"integer",description:"0 이상 정수(음수는 payload-invalid 로 거부)."}},required:["node"]}),"node.update":nn("node.update",{description:"노드 이름/레인/타입 갱신. lane = 레인 재배정(이동), type = 태스크·이벤트 타입 전환.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},lane:{type:"string"},type:{type:"string",enum:[...Ei]}},required:["id"]}),"sequenceFlow.add":nn("sequenceFlow.add",{description:"시퀀스 플로우 추가. 분기 조건은 게이트웨이가 아닌 플로우의 condition 에 싣는다.",properties:{flow:{$ref:"#/$defs/irSequenceFlow"}},required:["flow"]}),"sequenceFlow.update":nn("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":nn("messageFlow.add",{description:"메시지 플로우 추가(풀 경계를 넘는 연결).",properties:{flow:{$ref:"#/$defs/irMessageFlow"}},required:["flow"]}),"messageFlow.update":nn("messageFlow.update",{description:"메시지 플로우 이름 갱신.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"}},required:["id"]}),"dataStore.add":nn("dataStore.add",{description:"데이터 스토어 추가(+ 입출력 연관 동반 가능).",properties:{dataStore:{$ref:"#/$defs/irDataStore"},associations:{type:"array",items:{$ref:"#/$defs/irDataAssociation"}}},required:["dataStore"]}),"dataStore.update":nn("dataStore.update",{description:"데이터 스토어 이름 갱신.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"}},required:["id"]}),"dataAssociation.add":nn("dataAssociation.add",{description:"기존 노드 ↔ 기존 데이터 스토어의 입출력 연관 추가.",properties:{association:{$ref:"#/$defs/irDataAssociation"}},required:["association"]}),"association.add":nn("association.add",{description:"주석 ↔ 요소 연관 추가(한쪽 끝은 주석). 주석 신설과 함께면 annotation.add 의 association 을 쓰고, 이 op 는 추가 연관(한 주석에 여러 연관)용.",properties:{association:{$ref:"#/$defs/irAssociation"}},required:["association"]}),"annotation.add":nn("annotation.add",{description:"텍스트 주석 추가. association 으로 대상 요소와 연결하고, placement 로 방위를 지정하면 결정적 배치된다.",properties:{annotation:{$ref:"#/$defs/irTextAnnotation"},association:{$ref:"#/$defs/irAssociation"},placement:{$ref:"#/$defs/bwlPlacement"}},required:["annotation"]}),"annotation.update":nn("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":nn("group.add",{description:"그룹 추가 — 바운즈는 members 의 bbox 로 산출되므로 좌표를 지정하지 않는다.",properties:{group:{$ref:"#/$defs/irGroup"}},required:["group"]}),"group.update":nn("group.update",{description:"그룹 이름/멤버 갱신. members 는 전체 재선언(생략 = 보존).",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},members:{type:"array",items:{type:"string"}}},required:["id"]}),"element.remove":nn("element.remove",{description:"요소 제거(카테고리 무관). 부착된 연결선은 함께 제거된다.",properties:{id:{type:"string"}},required:["id"]})},Uf={anyOf:Wf.map(e=>Ux[e])},Yx={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:Lx,irParticipant:Ix,irNode:Nx,irFlowCondition:Bx,irSequenceFlow:$x,irMessageFlow:jx,irDataStore:Fx,irDataAssociation:Hx,irTextAnnotation:zx,irAssociation:Vx,irGroup:Gx,bwlPlacement:Wx,nullableString:Dx,symbolicOp:Uf}};function Eu(e){return Array.prototype.concat.apply([],e)}const Ho=Object.prototype.toString,qx=Object.prototype.hasOwnProperty;function Rr(e){return e===void 0}function Bt(e){return e!==void 0}function Zr(e){return e==null}function _e(e){return Ho.call(e)==="[object Array]"}function Vt(e){return Ho.call(e)==="[object Object]"}function we(e){return Ho.call(e)==="[object Number]"}function Gt(e){const t=Ho.call(e);return t==="[object Function]"||t==="[object AsyncFunction]"||t==="[object GeneratorFunction]"||t==="[object AsyncGeneratorFunction]"||t==="[object Proxy]"}function En(e){return Ho.call(e)==="[object String]"}function Kx(e){if(!_e(e))throw new Error("must supply array")}function Sn(e,t){return!Zr(e)&&qx.call(e,t)}function ct(e,t){const n=Za(t);let i;return k(e,function(r,o){if(n(r,o))return i=r,!1}),i}function Yf(e,t){const n=Za(t);let i=_e(e)?-1:void 0;return k(e,function(r,o){if(n(r,o))return i=o,!1}),i}function Le(e,t){const n=Za(t);let i=[];return k(e,function(r,o){n(r,o)&&i.push(r)}),i}function k(e,t){let n,i;if(Rr(e))return;const r=_e(e)?e0:Jx;for(let o in e)if(Sn(e,o)&&(n=e[o],i=t(n,r(o)),i===!1))return n}function Xx(e,t){if(Rr(e))return[];Kx(e);const n=Za(t);return e.filter(function(i,r){return!n(i,r)})}function Rn(e,t,n){return k(e,function(i,r){n=t(n,i,r)}),n}function Cr(e,t){return!!Rn(e,function(n,i,r){return n&&t(i,r)},!0)}function Wi(e,t){return!!ct(e,t)}function rn(e,t){let n=[];return k(e,function(i,r){n.push(t(i,r))}),n}function Xa(e){return e&&Object.keys(e)||[]}function Zx(e){return Xa(e).length}function Qr(e){return rn(e,t=>t)}function Jr(e,t,n={}){return t=Su(t),k(e,function(i){let r=t(i)||"_",o=n[r];o||(o=n[r]=[]),o.push(i)}),n}function qf(e,...t){e=Su(e);let n={};return k(t,r=>Jr(r,e,n)),rn(n,function(r,o){return r[0]})}const Qx=qf;function ai(e,t){t=Su(t);let n=[];return k(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)}),rn(n,i=>i.v)}function eo(e){return function(t){return Cr(e,function(n,i){return t[i]===n})}}function Su(e){return Gt(e)?e:t=>t[e]}function Za(e){return Gt(e)?e:t=>t===e}function Jx(e){return e}function e0(e){return Number(e)}function Ru(e,t){let n,i,r,o;function a(p){let f=Date.now(),d=p?0:o+t-f;if(d>0)return s(d);e.apply(r,i),c()}function s(p){n=setTimeout(a,p)}function c(){n&&clearTimeout(n),n=o=i=r=void 0}function u(){n&&a(!0),c()}function l(...p){o=Date.now(),i=p,r=this,n||s(t)}return l.flush=u,l.cancel=c,l}function vn(e,t){return e.bind(t)}function D(e,...t){return Object.assign(e,...t)}function t0(e,t,n){let i=e;return k(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];Bt(a)&&Zr(s)&&(s=i[r]=isNaN(+a)?{}:[]),Rr(a)?Rr(n)?delete i[r]:i[r]=n:i=s}),e}function ii(e,t){let n={},i=Object(e);return k(t,function(r){r in i&&(n[r]=e[r])}),n}function si(e,t){let n={},i=Object(e);return k(i,function(r,o){t.indexOf(o)===-1&&(n[o]=r)}),n}function Cu(){}Cu.prototype.get=function(e){return this.$model.properties.get(this,e)},Cu.prototype.set=function(e,t){this.$model.properties.set(this,e,t)};function Kf(e,t){this.model=e,this.properties=t}Kf.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(Cu.prototype);k(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}),k(a,vn(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 n0=D(Object.create(null),{String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0}),Xf=D(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 Pu(e,t){var n=Xf[e];return n?n(t):t}function Au(e){return!!n0[e]}function Zf(e){return!!Xf[e]}function on(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 ii(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=on(r[0],i),a=on(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||(k(e.properties,vn(function(o){o=D({},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 Ui(e,t){this.packageMap=Object.create(null),this.typeMap=Object.create(null),this.packages=[],this.properties=t,k(e,vn(this.registerPackage,this))}Ui.prototype.getPackage=function(e){return this.packageMap[e]},Ui.prototype.getPackages=function(){return this.packages},Ui.prototype.registerPackage=function(e){e=D({},e);var t=this.packageMap;Qf(t,e,"prefix"),Qf(t,e,"uri"),k(e.types,vn(function(n){this.registerType(n,e)},this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},Ui.prototype.registerType=function(e,t){e=D({},e,{superClass:(e.superClass||[]).slice(),extends:(e.extends||[]).slice(),properties:(e.properties||[]).slice(),meta:D({},e.meta||{})});var n=on(e.name,t.prefix),i=n.name,r=Object.create(null);k(e.properties,vn(function(o){var a=on(o.name,n.prefix),s=a.name;Au(o.type)||(o.type=on(o.type,a.prefix).name),D(o,{ns:a,name:s}),r[s]=o},this)),D(e,{ns:n,name:i,propertiesByName:r}),k(e.extends,vn(function(o){var a=on(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},Ui.prototype.mapTypes=function(e,t,n){var i=Au(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(c,u){var l=on(c,Au(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+">");k(i.superClass,n?a:s),t(i,!n),k(i.traits,a)},Ui.prototype.getEffectiveDescriptor=function(e){var t=on(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},Ui.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})};function Qf(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function Pr(e){this.model=e}Pr.prototype.set=function(e,t,n){if(!En(t)||!t.length)throw new TypeError("property name must be a non-empty string");var i=this.getProperty(e,t),r=i&&i.name;i0(n)?i?delete e[r]:delete e.$attrs[Tu(t)]:i?r in e?e[r]=n:Jf(e,i,n):e.$attrs[Tu(t)]=n},Pr.prototype.get=function(e,t){var n=this.getProperty(e,t);if(!n)return e.$attrs[Tu(t)];var i=n.name;return!e[i]&&n.isMany&&Jf(e,n,[]),e[i]},Pr.prototype.define=function(e,t,n){if(!n.writable){var i=n.value;n=D({},n,{get:function(){return i}}),delete n.value}Object.defineProperty(e,t,n)},Pr.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},Pr.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},Pr.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 i0(e){return typeof e>"u"}function Jf(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function Tu(e){return e.replace(/^:/,"")}function zn(e,t={}){this.properties=new Pr(this),this.factory=new Kf(this,this.properties),this.registry=new Ui(e,this.properties),this.typeCache=Object.create(null),this.config=t}zn.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},zn.prototype.getType=function(e){var t=this.typeCache,n=En(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},zn.prototype.createAny=function(e,t,n){var i=on(e),r={$type:e,$instanceOf:function(a){return a===this.$type},get:function(a){return this[a]},set:function(a,s){t0(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}),k(n,function(a,s){Vt(a)&&a.value!==void 0?r[a.name]=a.value:r[s]=a}),r},zn.prototype.getPackage=function(e){return this.registry.getPackage(e)},zn.prototype.getPackages=function(){return this.registry.getPackages()},zn.prototype.getElementDescriptor=function(e){return e.$descriptor},zn.prototype.hasType=function(e,t){t===void 0&&(t=e,e=this);var n=e.$model.getElementDescriptor(e);return t in n.allTypesByName},zn.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},zn.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var ed=String.fromCharCode,r0=Object.prototype.hasOwnProperty,o0=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/ig,zo={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};Object.keys(zo).forEach(function(e){zo[e.toUpperCase()]=zo[e]});function a0(e,t,n,i){return i?r0.call(zo,i)?zo[i]:"&"+i+";":ed(t||parseInt(n,16))}function Ar(e){return e.length>3&&e.indexOf("&")!==-1?e.replace(o0,a0):e}var td="non-whitespace outside of root node";function Yi(e){return new Error(e)}function s0(e){return"missing namespace for prefix <"+e+">"}function Qa(e){return{get:e,enumerable:!0}}function c0(e){var t=Object.create(null),n;for(n in e)t[n]=e[n];return t}var nd=Symbol("nameCache");function Mu(e){return e+"$uri"}function u0(e){var t=Object.create(null),n,i;for(n in e)i=e[n],t[i]=i,t[Mu(i)]=n;return t}function Ja(){return{line:0,column:0}}function l0(e){throw e}function id(e){if(!this)return new id(e);var t=e&&e.proxy,n,i,r,o,a=l0,s,c,u,l,p=Ja,f=!1,d=!1,h="",m=!1,g=!1,R=null,w=!1,b,x,S,M;function L(N){N instanceof Error||(N=Yi(N)),R=N,a(N,p)}function A(N){s&&(N instanceof Error||(N=Yi(N)),s(N,p))}this.on=function(N,G){if(typeof G!="function")throw Yi("required args <name, cb>");switch(N){case"openTag":i=G;break;case"text":n=G;break;case"closeTag":r=G;break;case"error":a=G;break;case"warn":s=G;break;case"cdata":o=G;break;case"attention":l=G;break;case"question":u=G;break;case"comment":c=G;break;default:throw Yi("unsupported event: "+N)}return this},this.ns=function(N){if(typeof N>"u"&&(N={}),typeof N!="object")throw Yi("required args <nsMap={}>");var G=Object.create(null),pe;for(pe in N)G[pe]=N[pe];return g=!0,M=G,this};function H(){b=g?[]:null,x=g?u0(M):null,S=[],p=Ja,w=!1,R=null,d=!1,h=""}this.parse=function(N){if(typeof N!="string")throw Yi("required args <xml=string>");if(f)throw Yi("parse during stream; call end() first");return H(),V(N),p=Ja,w=!1,R},this.write=function(N){if(typeof N!="string")throw Yi("required args <xml=string>");return f||(H(),f=!0),R||(h=V(h+N,!0)||""),this},this.end=function(){return f||H(),f=!1,R||V(h),h="",p=Ja,w=!1,R},this.stop=function(){w=!0};function V(N,G=!1){var pe=null,ze=null,lt,Y=0,fe=!1,de=!1,ue=0,le=0,te,z,F,U,Oe,Ot,P,_,y,O="",I=0,W;function ce(it,Dt){var un=it.indexOf(":");if(un===-1)return it;var ln=x[it.substring(0,un)];return ln?Dt===ln?it.substr(un+1):ln+it.substr(un):(A(s0(it.substring(0,un))),null)}function Pe(){if(W!==null)return W;var it,Dt,un=g&&x.xmlns,ln=g&&m?[]:null,st=I,Lt=O,pn=Lt.length,Fo,fn,In,Nn,wt,Gi={},qa=new Set,xn,Ye,Xe;e:for(;st<pn;st++)if(xn=!1,Ye=Lt.charCodeAt(st),!(Ye===32||Ye<14&&Ye>8)){for((Ye<65||Ye>122||Ye>90&&Ye<97)&&Ye!==95&&Ye!==58&&(A("illegal first char attribute name"),xn=!0),Xe=st+1;Xe<pn;Xe++)if(Ye=Lt.charCodeAt(Xe),!(Ye>96&&Ye<123||Ye>64&&Ye<91||Ye>47&&Ye<59||Ye===46||Ye===45||Ye===95)){if(Ye===32||Ye<14&&Ye>8){A("missing attribute value"),st=Xe;continue e}if(Ye===61)break;A("illegal attribute name char"),xn=!0}if(wt=Lt.substring(st,Xe),wt==="xmlns:xmlns"&&(A("illegal declaration of xmlns"),xn=!0),Ye=Lt.charCodeAt(Xe+1),Ye===34)Xe=Lt.indexOf('"',st=Xe+2),Xe===-1&&(Xe=Lt.indexOf("'",st),Xe!==-1&&(A("attribute value quote missmatch"),xn=!0));else if(Ye===39)Xe=Lt.indexOf("'",st=Xe+2),Xe===-1&&(Xe=Lt.indexOf('"',st),Xe!==-1&&(A("attribute value quote missmatch"),xn=!0));else for(A("missing attribute value quotes"),xn=!0,Xe=Xe+1;Xe<pn&&(Ye=Lt.charCodeAt(Xe+1),!(Ye===32||Ye<14&&Ye>8));Xe++);for(Xe===-1&&(A("missing closing quotes"),Xe=pn,xn=!0),xn||(In=Lt.substring(st,Xe)),st=Xe;Xe+1<pn&&(Ye=Lt.charCodeAt(Xe+1),!(Ye===32||Ye<14&&Ye>8));Xe++)st===Xe&&(A("illegal character after attribute end"),xn=!0);if(st=Xe+1,xn)continue e;if(qa.has(wt)){A("attribute <"+wt+"> already defined");continue}if(qa.add(wt),!g){Gi[wt]=In;continue}if(m){if(fn=wt==="xmlns"?"xmlns":wt.charCodeAt(0)===120&&wt.substr(0,6)==="xmlns:"?wt.substr(6):null,fn!==null){if(it=Ar(In),Dt=Mu(fn),Nn=M[it],!Nn){if(fn==="xmlns"||Dt in x&&x[Dt]!==it)do Nn="ns"+Y++;while(typeof x[Nn]<"u");else Nn=fn;M[it]=Nn}x[fn]!==Nn&&(Fo||(x=c0(x),Fo=!0),x[fn]=Nn,fn==="xmlns"&&(x[Mu(Nn)]=it,un=Nn),x[Dt]=it),Gi[wt]=In;continue}ln.push(wt,In);continue}wt=ce(wt,un),wt!==null&&(Gi[wt]=In)}if(m)for(st=0,pn=ln.length;st<pn;st++)wt=ce(ln[st++],un),In=ln[st],wt!==null&&(Gi[wt]=In);return W=Gi}function qe(){for(var it=/(\r\n|\r|\n)/g,Dt=0,un=0,ln=0,st=le,Lt,pn;ue>=ln&&(Lt=it.exec(N),!(!Lt||(st=Lt[0].length+Lt.index,st>ue)));)Dt+=1,ln=st;return ue==-1?(un=st,pn=N.substring(le)):le===0?pn=N.substring(le,ue):(un=ue-ln,pn=le==-1?N.substring(ue):N.substring(ue,le+1)),{data:pn,line:Dt,column:un}}for(p=qe,t&&(y=Object.create({},{name:Qa(function(){return P}),originalName:Qa(function(){return _}),attrs:Qa(Pe),ns:Qa(function(){return x})}));le!==-1;){if(N.charCodeAt(le)===60?ue=le:ue=N.indexOf("<",le),ue===-1){if(G)return N.substring(le);if(S.length)return L("unexpected end of file");if(!d)return L("missing start tag");le<N.length&&N.substring(le).trim()&&A(td);return}if(d||(d=!0),le!==ue){if(S.length){if(n&&(n(N.substring(le,ue),Ar,p),w))return}else if(N.substring(le,ue).trim()&&(A(td),w))return}if(U=N.charCodeAt(ue+1),U===33){if(F=N.charCodeAt(ue+2),F===91&&N.substr(ue+3,6)==="CDATA["){if(le=N.indexOf("]]>",ue),le===-1)return G?N.substring(ue):L("unclosed cdata");if(o&&(o(N.substring(ue+9,le),p),w))return;le+=3;continue}if(F===45&&N.charCodeAt(ue+3)===45){if(le=N.indexOf("-->",ue),le===-1)return G?N.substring(ue):L("unclosed comment");if(c&&(c(N.substring(ue+4,le),Ar,p),w))return;le+=3;continue}}if(U===63){if(le=N.indexOf("?>",ue),le===-1)return G?N.substring(ue):L("unclosed question");if(u&&(u(N.substring(ue,le+2),p),w))return;le+=2;continue}for(te=ue+1;;te++){if(Oe=N.charCodeAt(te),isNaN(Oe))return G?N.substring(ue):(le=-1,L("unclosed tag"));if(Oe===34)F=N.indexOf('"',te+1),te=F!==-1?F:te;else if(Oe===39)F=N.indexOf("'",te+1),te=F!==-1?F:te;else if(Oe===62){le=te;break}}if(U===33){if(l&&(l(N.substring(ue,le+1),Ar,p),w))return;le+=1;continue}if(W={},U===47){if(fe=!1,de=!0,!S.length)return L("missing open tag");if(te=P=S.pop(),F=ue+2+te.length,N.substring(ue+2,F)!==te)return L("closing tag mismatch");for(;F<le;F++)if(U=N.charCodeAt(F),!(U===32||U>8&&U<14))return L("close tag")}else{if(N.charCodeAt(le-1)===47?(te=P=N.substring(ue+1,le-1),fe=!0,de=!0):(te=P=N.substring(ue+1,le),fe=!0,de=!1),!(U>96&&U<123||U>64&&U<91||U===95||U===58))return L("illegal first char nodeName");for(F=1,z=te.length;F<z;F++)if(U=te.charCodeAt(F),!(U>96&&U<123||U>64&&U<91||U>47&&U<59||U===45||U===95||U==46)){if(U===32||U<14&&U>8){P=te.substring(0,F),W=null;break}return L("invalid nodeName")}de||S.push(P)}if(g){lt=x,fe&&(de||b.push(lt),W===null&&(m=te.indexOf("xmlns",F)!==-1)&&(I=F,O=te,Pe(),m=!1)),_=P,ze!==x&&(pe=x[nd],pe===void 0&&(pe=x[nd]=Object.create(null)),ze=x);var pt=pe[P];if(pt!==void 0)P=pt;else{if(U=P.indexOf(":"),U!==-1){if(Ot=x[P.substring(0,U)],!Ot)return L("missing namespace on <"+_+">");P=P.substr(U+1)}else Ot=x.xmlns;Ot&&(P=Ot+":"+P),pe[_]=P}}if(fe&&(I=F,O=te,i&&(t?i(y,Ar,de,p):i(P,Pe,Ar,de,p),w)))return;if(de){if(r&&(r(t?y:P,Ar,fe,p),w))return;g&&(fe?x=lt:x=b.pop())}le+=1}}}function rd(e){return e.xml&&e.xml.tagAlias==="lowerCase"}var ku={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},od="property";function ad(e){return e.xml&&e.xml.serialize}function p0(e){const t=ad(e);return t!==od&&(t||null)}function f0(e){return e.charAt(0).toUpperCase()+e.slice(1)}function sd(e,t){return rd(t)?e.prefix+":"+f0(e.localName):e.name}function d0(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 h0(e,t,n){const i=on(e,t.xmlns),r=`${t[i.prefix]||i.prefix}:${i.localName}`,o=on(r);var a=n.getPackage(o.prefix);return d0(o,a)}function qi(e){return new Error(e)}function Si(e){return e.$descriptor}function m0(e){D(this,e),this.elementsById={},this.references=[],this.warnings=[],this.addReference=function(t){this.references.push(t)},this.addElement=function(t){if(!t)throw qi("expected element");var n=this.elementsById,i=Si(t),r=i.idProperty,o;if(r&&(o=t.get(r.name),o)){if(!/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i.test(o))throw new Error("illegal ID <"+o+">");if(n[o])throw qi("duplicate ID <"+o+">");n[o]=t}},this.addWarning=function(t){this.warnings.push(t)}}function Vo(){}Vo.prototype.handleEnd=function(){},Vo.prototype.handleText=function(){},Vo.prototype.handleNode=function(){};function Ou(){}Ou.prototype=Object.create(Vo.prototype),Ou.prototype.handleNode=function(){return this};function to(){}to.prototype=Object.create(Vo.prototype),to.prototype.handleText=function(e){this.body=(this.body||"")+e};function Go(e,t){this.property=e,this.context=t}Go.prototype=Object.create(to.prototype),Go.prototype.handleNode=function(e){if(this.element)throw qi("expected no sub nodes");return this.element=this.createReference(e),this},Go.prototype.handleEnd=function(){this.element.id=this.body},Go.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}};function Du(e,t){this.element=t,this.propertyDesc=e}Du.prototype=Object.create(to.prototype),Du.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=Pu(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)};function es(){}es.prototype=Object.create(to.prototype),es.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 dn(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}dn.prototype=Object.create(es.prototype),dn.prototype.addReference=function(e){this.context.addReference(e)},dn.prototype.handleText=function(e){var t=this.element,n=Si(t),i=n.bodyProperty;if(!i)throw qi("unexpected body text <"+e+">");to.prototype.handleText.call(this,e)},dn.prototype.handleEnd=function(){var e=this.body,t=this.element,n=Si(t),i=n.bodyProperty;i&&e!==void 0&&(e=Pu(i.type,e),t.set(i.name,e))},dn.prototype.createElement=function(e){var t=e.attributes,n=this.type,i=Si(n),r=this.context,o=new n({}),a=this.model,s;return k(t,function(c,u){var l=i.propertiesByName[u],p;l&&l.isReference?l.isMany?(p=c.split(" "),k(p,function(f){r.addReference({element:o,property:l.ns.name,id:f})})):r.addReference({element:o,property:l.ns.name,id:c}):(l?c=Pu(l.type,c):u==="xmlns"?u=":"+u:(s=on(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},dn.prototype.getPropertyForNode=function(e){var t=e.name,n=on(t),i=this.type,r=this.model,o=Si(i),a=n.name,s=o.propertiesByName[a];if(s&&!s.isAttr){const u=p0(s);if(u){const l=e.attributes[u];if(l){const p=h0(l,e.ns,r),f=r.getType(p);return D({},s,{effectiveType:Si(f).name})}}return s}var c=r.getPackage(n.prefix);if(c){const u=sd(n,c),l=r.getType(u);if(s=ct(o.properties,function(p){return!p.isVirtual&&!p.isReference&&!p.isAttribute&&l.hasType(p.type)}),s)return D({},s,{effectiveType:Si(l).name})}else if(s=ct(o.properties,function(u){return!u.isReference&&!u.isAttribute&&u.type==="Element"}),s)return s;throw qi("unrecognized element <"+n.name+">")},dn.prototype.toString=function(){return"ElementDescriptor["+Si(this.type).name+"]"},dn.prototype.valueHandler=function(e,t){return new Du(e,t)},dn.prototype.referenceHandler=function(e){return new Go(e,this.context)},dn.prototype.handler=function(e){return e==="Element"?new no(this.model,e,this.context):new dn(this.model,e,this.context)},dn.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,n=t.effectiveType||t.type,Zf(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?(D(o,{element:i}),this.context.addReference(o)):o.$parent=i),r};function Lu(e,t,n){dn.call(this,e,t,n)}Lu.prototype=Object.create(dn.prototype),Lu.prototype.createElement=function(e){var t=e.name,n=on(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),a=o&&sd(n,o)||t;if(!r.hasType(a))throw qi("unexpected element <"+e.originalName+">");return dn.prototype.createElement.call(this,e)};function no(e,t,n){this.model=e,this.context=n}no.prototype=Object.create(es.prototype),no.prototype.createElement=function(e){var t=e.name,n=on(t),i=n.prefix,r=e.ns[i+"$uri"],o=e.attributes;return this.model.createAny(t,r,o)},no.prototype.handleChild=function(e){var t=new no(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},no.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)};function Iu(e){e instanceof zn&&(e={model:e}),D(this,{lax:!1},e)}Iu.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof dn?(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 m0(D({},t,{rootHandler:i})),s=new id({proxy:!0}),c=g0();i.context=a,c.push(i);function u(S,M,L){var A=M(),H=A.line,V=A.column,N=A.data;N.charAt(0)==="<"&&N.indexOf(" ")!==-1&&(N=N.slice(0,N.indexOf(" "))+">");var G="unparsable content "+(N?N+" ":"")+`detected
|
|
1
|
+
(function(ee,Ct){typeof exports=="object"&&typeof module<"u"?Ct(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],Ct):(ee=typeof globalThis<"u"?globalThis:ee||self,Ct(ee.BpmnModeler={},ee.Vue))})(this,(function(ee,Ct){"use strict";var sO=Object.defineProperty;var cO=(ee,Ct,Ei)=>Ct in ee?sO(ee,Ct,{enumerable:!0,configurable:!0,writable:!0,value:Ei}):ee[Ct]=Ei;var Xr=(ee,Ct,Ei)=>cO(ee,typeof Ct!="symbol"?Ct+"":Ct,Ei);const Ei=["startEvent","endEvent","userTask","serviceTask","task","sendTask","receiveTask","exclusiveGateway","parallelGateway"];function zf(e){return Ei.includes(e)}const Vf="http://g1project.net/spec/bpmn/bwl/1.0",wu="bwl",Eu=["top-left","top","top-right","right","bottom-right","bottom","bottom-left","left"],Gf={name:"bwl-hints",uri:Vf,prefix:wu,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"}]}]},Su="bwl.undoEpisode",Wf=new WeakSet;function jx(e){Wf.has(e)||(e.register(Su,{preExecute(t){try{t.run()}catch(n){t.error=n}}}),Wf.add(e))}function Uf(e,t){jx(e);const n={run:t};if(e.execute(Su,n),n.error!==void 0)throw e.canUndo()&&e.undo(),n.error}const Yf=["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"],Fx={description:"생략 = 보존, null = 제거.",anyOf:[{type:"string"},{type:"null"}]},Hx={type:"object",description:"레인. 배열 선언 순서 = 풀 내 상→하 순서.",properties:{id:{type:"string"},name:{type:"string"}},required:["id"],additionalProperties:!1},zx={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},Vx={type:"object",description:"플로우 노드. 좌표는 지정하지 않는다 — 배치는 resolver 가 결정한다.",properties:{id:{type:"string"},type:{type:"string",enum:[...Ei]},name:{type:"string"},participant:{type:"string",description:"소속 풀 id(협업 문서)."},lane:{type:"string",description:"소속 레인 id(풀 정의에 선언된 것)."}},required:["id","type"],additionalProperties:!1},Gx={type:"object",description:"분기 조건 — 게이트웨이가 아닌 플로우에 붙인다. MVP 는 label 만.",properties:{label:{type:"string"}},required:["label"],additionalProperties:!1},Wx={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},Ux={type:"object",description:"메시지 플로우(풀 경계를 넘는 연결 — 노드 또는 블랙박스 풀 자체가 끝점).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"},name:{type:"string"}},required:["id","source","target"],additionalProperties:!1},Yx={type:"object",properties:{id:{type:"string"},name:{type:"string"}},required:["id"],additionalProperties:!1},qx={type:"object",description:"데이터 입출력 연관. 방향 = source→target(태스크→스토어 = 쓰기, 스토어→태스크 = 읽기).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"}},required:["source","target"],additionalProperties:!1},Kx={type:"object",properties:{id:{type:"string"},text:{type:"string"}},required:["id","text"],additionalProperties:!1},Xx={type:"object",description:"연관선(주석 ↔ 요소).",properties:{id:{type:"string"},source:{type:"string"},target:{type:"string"}},required:["source","target"],additionalProperties:!1},Zx={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},Qx={type:"object",description:"주석 방위 힌트 — 앵커 요소 기준 상대 배치. 있으면 결정적 배치, 없으면 휴리스틱.",properties:{anchor:{type:"string",description:"기준 요소 id."},side:{type:"string",enum:[...Eu]},offset:{type:"number",description:"앵커 가장자리 → 주석 가장자리 간격(px). 생략 시 50."}},required:["anchor","side"],additionalProperties:!1};function rn(e,t){return{type:"object",description:t.description,properties:{kind:{const:e},...t.properties},required:["kind",...t.required??[]],additionalProperties:!1}}const Jx={"participant.add":rn("participant.add",{description:"풀 추가. order = 풀 세로 순서 힌트 — **작을수록 위**(생략 시 op 순서가 곧 배치 순서). 값은 상대 순서만 쓰므로 1,2,3… 연속이든 10,20,30 간격이든 같다.",properties:{participant:{$ref:"#/$defs/irParticipant"},order:{type:"integer"}},required:["participant"]}),"participant.update":rn("participant.update",{description:"풀 이름/레인 갱신. lanes 는 전체 재선언(생략 = 보존) — 기존 레인을 유지하려면 함께 다시 나열한다.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},lanes:{type:"array",items:{$ref:"#/$defs/irLane"}}},required:["id"]}),"node.add":rn("node.add",{description:'플로우 노드 추가. band = 가로 밴드 순번 힌트(주 흐름 0, 갈래 1, 2…) — 위/아래가 아니라 "주 흐름에서 몇 번째 갈래"다. 행 배치(어느 갈래가 위/아래인지)는 호스트가 정한다(대칭·메시지 방향). 레인이 있으면 그 레인 안의 밴드다 — 한 레인 안에서 게이트웨이 출구를 갈라 놓을 때 쓴다. 컨테이너(풀·레인)는 밴드 수만큼 자란다.',properties:{node:{$ref:"#/$defs/irNode"},band:{type:"integer",description:"0 이상 정수(음수는 payload-invalid 로 거부)."}},required:["node"]}),"node.update":rn("node.update",{description:"노드 이름/레인/타입 갱신. lane = 레인 재배정(이동), type = 태스크·이벤트 타입 전환.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},lane:{type:"string"},type:{type:"string",enum:[...Ei]}},required:["id"]}),"sequenceFlow.add":rn("sequenceFlow.add",{description:"시퀀스 플로우 추가. 분기 조건은 게이트웨이가 아닌 플로우의 condition 에 싣는다.",properties:{flow:{$ref:"#/$defs/irSequenceFlow"}},required:["flow"]}),"sequenceFlow.update":rn("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":rn("messageFlow.add",{description:"메시지 플로우 추가(풀 경계를 넘는 연결).",properties:{flow:{$ref:"#/$defs/irMessageFlow"}},required:["flow"]}),"messageFlow.update":rn("messageFlow.update",{description:"메시지 플로우 이름 갱신.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"}},required:["id"]}),"dataStore.add":rn("dataStore.add",{description:"데이터 스토어 추가(+ 입출력 연관 동반 가능).",properties:{dataStore:{$ref:"#/$defs/irDataStore"},associations:{type:"array",items:{$ref:"#/$defs/irDataAssociation"}}},required:["dataStore"]}),"dataStore.update":rn("dataStore.update",{description:"데이터 스토어 이름 갱신.",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"}},required:["id"]}),"dataAssociation.add":rn("dataAssociation.add",{description:"기존 노드 ↔ 기존 데이터 스토어의 입출력 연관 추가.",properties:{association:{$ref:"#/$defs/irDataAssociation"}},required:["association"]}),"association.add":rn("association.add",{description:"주석 ↔ 요소 연관 추가(한쪽 끝은 주석). 주석 신설과 함께면 annotation.add 의 association 을 쓰고, 이 op 는 추가 연관(한 주석에 여러 연관)용.",properties:{association:{$ref:"#/$defs/irAssociation"}},required:["association"]}),"annotation.add":rn("annotation.add",{description:"텍스트 주석 추가. association 으로 대상 요소와 연결하고, placement 로 방위를 지정하면 결정적 배치된다.",properties:{annotation:{$ref:"#/$defs/irTextAnnotation"},association:{$ref:"#/$defs/irAssociation"},placement:{$ref:"#/$defs/bwlPlacement"}},required:["annotation"]}),"annotation.update":rn("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":rn("group.add",{description:"그룹 추가 — 바운즈는 members 의 bbox 로 산출되므로 좌표를 지정하지 않는다.",properties:{group:{$ref:"#/$defs/irGroup"}},required:["group"]}),"group.update":rn("group.update",{description:"그룹 이름/멤버 갱신. members 는 전체 재선언(생략 = 보존).",properties:{id:{type:"string"},name:{$ref:"#/$defs/nullableString"},members:{type:"array",items:{type:"string"}}},required:["id"]}),"element.remove":rn("element.remove",{description:"요소 제거(카테고리 무관). 부착된 연결선은 함께 제거된다.",properties:{id:{type:"string"}},required:["id"]})},qf={anyOf:Yf.map(e=>Jx[e])},e0={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:Hx,irParticipant:zx,irNode:Vx,irFlowCondition:Gx,irSequenceFlow:Wx,irMessageFlow:Ux,irDataStore:Yx,irDataAssociation:qx,irTextAnnotation:Kx,irAssociation:Xx,irGroup:Zx,bwlPlacement:Qx,nullableString:Fx,symbolicOp:qf}};function Ru(e){return Array.prototype.concat.apply([],e)}const Ho=Object.prototype.toString,t0=Object.prototype.hasOwnProperty;function Rr(e){return e===void 0}function $t(e){return e!==void 0}function Zr(e){return e==null}function be(e){return Ho.call(e)==="[object Array]"}function Gt(e){return Ho.call(e)==="[object Object]"}function Se(e){return Ho.call(e)==="[object Number]"}function Wt(e){const t=Ho.call(e);return t==="[object Function]"||t==="[object AsyncFunction]"||t==="[object GeneratorFunction]"||t==="[object AsyncGeneratorFunction]"||t==="[object Proxy]"}function wn(e){return Ho.call(e)==="[object String]"}function n0(e){if(!be(e))throw new Error("must supply array")}function En(e,t){return!Zr(e)&&t0.call(e,t)}function ct(e,t){const n=Za(t);let i;return k(e,function(r,o){if(n(r,o))return i=r,!1}),i}function Kf(e,t){const n=Za(t);let i=be(e)?-1:void 0;return k(e,function(r,o){if(n(r,o))return i=o,!1}),i}function Ie(e,t){const n=Za(t);let i=[];return k(e,function(r,o){n(r,o)&&i.push(r)}),i}function k(e,t){let n,i;if(Rr(e))return;const r=be(e)?s0:a0;for(let o in e)if(En(e,o)&&(n=e[o],i=t(n,r(o)),i===!1))return n}function i0(e,t){if(Rr(e))return[];n0(e);const n=Za(t);return e.filter(function(i,r){return!n(i,r)})}function Sn(e,t,n){return k(e,function(i,r){n=t(n,i,r)}),n}function Cr(e,t){return!!Sn(e,function(n,i,r){return n&&t(i,r)},!0)}function Wi(e,t){return!!ct(e,t)}function on(e,t){let n=[];return k(e,function(i,r){n.push(t(i,r))}),n}function Xa(e){return e&&Object.keys(e)||[]}function r0(e){return Xa(e).length}function Qr(e){return on(e,t=>t)}function Jr(e,t,n={}){return t=Cu(t),k(e,function(i){let r=t(i)||"_",o=n[r];o||(o=n[r]=[]),o.push(i)}),n}function Xf(e,...t){e=Cu(e);let n={};return k(t,r=>Jr(r,e,n)),on(n,function(r,o){return r[0]})}const o0=Xf;function ai(e,t){t=Cu(t);let n=[];return k(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)}),on(n,i=>i.v)}function eo(e){return function(t){return Cr(e,function(n,i){return t[i]===n})}}function Cu(e){return Wt(e)?e:t=>t[e]}function Za(e){return Wt(e)?e:t=>t===e}function a0(e){return e}function s0(e){return Number(e)}function Pu(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 _n(e,t){return e.bind(t)}function L(e,...t){return Object.assign(e,...t)}function c0(e,t,n){let i=e;return k(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];$t(a)&&Zr(s)&&(s=i[r]=isNaN(+a)?{}:[]),Rr(a)?Rr(n)?delete i[r]:i[r]=n:i=s}),e}function ii(e,t){let n={},i=Object(e);return k(t,function(r){r in i&&(n[r]=e[r])}),n}function si(e,t){let n={},i=Object(e);return k(i,function(r,o){t.indexOf(o)===-1&&(n[o]=r)}),n}function Au(){}Au.prototype.get=function(e){return this.$model.properties.get(this,e)},Au.prototype.set=function(e,t){this.$model.properties.set(this,e,t)};function Zf(e,t){this.model=e,this.properties=t}Zf.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(Au.prototype);k(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}),k(a,_n(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 u0=L(Object.create(null),{String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0}),Qf=L(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 Tu(e,t){var n=Qf[e];return n?n(t):t}function Mu(e){return!!u0[e]}function Jf(e){return!!Qf[e]}function an(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 ii(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=an(r[0],i),a=an(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||(k(e.properties,_n(function(o){o=L({},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 Ui(e,t){this.packageMap=Object.create(null),this.typeMap=Object.create(null),this.packages=[],this.properties=t,k(e,_n(this.registerPackage,this))}Ui.prototype.getPackage=function(e){return this.packageMap[e]},Ui.prototype.getPackages=function(){return this.packages},Ui.prototype.registerPackage=function(e){e=L({},e);var t=this.packageMap;ed(t,e,"prefix"),ed(t,e,"uri"),k(e.types,_n(function(n){this.registerType(n,e)},this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},Ui.prototype.registerType=function(e,t){e=L({},e,{superClass:(e.superClass||[]).slice(),extends:(e.extends||[]).slice(),properties:(e.properties||[]).slice(),meta:L({},e.meta||{})});var n=an(e.name,t.prefix),i=n.name,r=Object.create(null);k(e.properties,_n(function(o){var a=an(o.name,n.prefix),s=a.name;Mu(o.type)||(o.type=an(o.type,a.prefix).name),L(o,{ns:a,name:s}),r[s]=o},this)),L(e,{ns:n,name:i,propertiesByName:r}),k(e.extends,_n(function(o){var a=an(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},Ui.prototype.mapTypes=function(e,t,n){var i=Mu(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(c,u){var l=an(c,Mu(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+">");k(i.superClass,n?a:s),t(i,!n),k(i.traits,a)},Ui.prototype.getEffectiveDescriptor=function(e){var t=an(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},Ui.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 Pr(e){this.model=e}Pr.prototype.set=function(e,t,n){if(!wn(t)||!t.length)throw new TypeError("property name must be a non-empty string");var i=this.getProperty(e,t),r=i&&i.name;l0(n)?i?delete e[r]:delete e.$attrs[ku(t)]:i?r in e?e[r]=n:td(e,i,n):e.$attrs[ku(t)]=n},Pr.prototype.get=function(e,t){var n=this.getProperty(e,t);if(!n)return e.$attrs[ku(t)];var i=n.name;return!e[i]&&n.isMany&&td(e,n,[]),e[i]},Pr.prototype.define=function(e,t,n){if(!n.writable){var i=n.value;n=L({},n,{get:function(){return i}}),delete n.value}Object.defineProperty(e,t,n)},Pr.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},Pr.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},Pr.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 l0(e){return typeof e>"u"}function td(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function ku(e){return e.replace(/^:/,"")}function zn(e,t={}){this.properties=new Pr(this),this.factory=new Zf(this,this.properties),this.registry=new Ui(e,this.properties),this.typeCache=Object.create(null),this.config=t}zn.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},zn.prototype.getType=function(e){var t=this.typeCache,n=wn(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},zn.prototype.createAny=function(e,t,n){var i=an(e),r={$type:e,$instanceOf:function(a){return a===this.$type},get:function(a){return this[a]},set:function(a,s){c0(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}),k(n,function(a,s){Gt(a)&&a.value!==void 0?r[a.name]=a.value:r[s]=a}),r},zn.prototype.getPackage=function(e){return this.registry.getPackage(e)},zn.prototype.getPackages=function(){return this.registry.getPackages()},zn.prototype.getElementDescriptor=function(e){return e.$descriptor},zn.prototype.hasType=function(e,t){t===void 0&&(t=e,e=this);var n=e.$model.getElementDescriptor(e);return t in n.allTypesByName},zn.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},zn.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var nd=String.fromCharCode,p0=Object.prototype.hasOwnProperty,f0=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/ig,zo={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};Object.keys(zo).forEach(function(e){zo[e.toUpperCase()]=zo[e]});function d0(e,t,n,i){return i?p0.call(zo,i)?zo[i]:"&"+i+";":nd(t||parseInt(n,16))}function Ar(e){return e.length>3&&e.indexOf("&")!==-1?e.replace(f0,d0):e}var id="non-whitespace outside of root node";function Yi(e){return new Error(e)}function h0(e){return"missing namespace for prefix <"+e+">"}function Qa(e){return{get:e,enumerable:!0}}function m0(e){var t=Object.create(null),n;for(n in e)t[n]=e[n];return t}var rd=Symbol("nameCache");function Du(e){return e+"$uri"}function g0(e){var t=Object.create(null),n,i;for(n in e)i=e[n],t[i]=i,t[Du(i)]=n;return t}function Ja(){return{line:0,column:0}}function y0(e){throw e}function od(e){if(!this)return new od(e);var t=e&&e.proxy,n,i,r,o,a=y0,s,c,u,l,f=Ja,p=!1,d=!1,h="",m=!1,g=!1,R=null,w=!1,b,x,S,M;function N($){$ instanceof Error||($=Yi($)),R=$,a($,f)}function T($){s&&($ instanceof Error||($=Yi($)),s($,f))}this.on=function($,G){if(typeof G!="function")throw Yi("required args <name, cb>");switch($){case"openTag":i=G;break;case"text":n=G;break;case"closeTag":r=G;break;case"error":a=G;break;case"warn":s=G;break;case"cdata":o=G;break;case"attention":l=G;break;case"question":u=G;break;case"comment":c=G;break;default:throw Yi("unsupported event: "+$)}return this},this.ns=function($){if(typeof $>"u"&&($={}),typeof $!="object")throw Yi("required args <nsMap={}>");var G=Object.create(null),fe;for(fe in $)G[fe]=$[fe];return g=!0,M=G,this};function H(){b=g?[]:null,x=g?g0(M):null,S=[],f=Ja,w=!1,R=null,d=!1,h=""}this.parse=function($){if(typeof $!="string")throw Yi("required args <xml=string>");if(p)throw Yi("parse during stream; call end() first");return H(),V($),f=Ja,w=!1,R},this.write=function($){if(typeof $!="string")throw Yi("required args <xml=string>");return p||(H(),p=!0),R||(h=V(h+$,!0)||""),this},this.end=function(){return p||H(),p=!1,R||V(h),h="",f=Ja,w=!1,R},this.stop=function(){w=!0};function V($,G=!1){var fe=null,ze=null,lt,q=0,de=!1,he=!1,ue=0,le=0,ie,z,F,U,Oe,Lt,P,_,y,D="",B=0,W;function ce(it,It){var ln=it.indexOf(":");if(ln===-1)return it;var pn=x[it.substring(0,ln)];return pn?It===pn?it.substr(ln+1):pn+it.substr(ln):(T(h0(it.substring(0,ln))),null)}function Te(){if(W!==null)return W;var it,It,ln=g&&x.xmlns,pn=g&&m?[]:null,st=B,Nt=D,fn=Nt.length,Fo,dn,Ln,In,Et,Gi={},_u=new Set,Nn,qe,Je;e:for(;st<fn;st++)if(Nn=!1,qe=Nt.charCodeAt(st),!(qe===32||qe<14&&qe>8)){for((qe<65||qe>122||qe>90&&qe<97)&&qe!==95&&qe!==58&&(T("illegal first char attribute name"),Nn=!0),Je=st+1;Je<fn;Je++)if(qe=Nt.charCodeAt(Je),!(qe>96&&qe<123||qe>64&&qe<91||qe>47&&qe<59||qe===46||qe===45||qe===95)){if(qe===32||qe<14&&qe>8){T("missing attribute value"),st=Je;continue e}if(qe===61)break;T("illegal attribute name char"),Nn=!0}if(Et=Nt.substring(st,Je),Et==="xmlns:xmlns"&&(T("illegal declaration of xmlns"),Nn=!0),qe=Nt.charCodeAt(Je+1),qe===34)Je=Nt.indexOf('"',st=Je+2),Je===-1&&(Je=Nt.indexOf("'",st),Je!==-1&&(T("attribute value quote missmatch"),Nn=!0));else if(qe===39)Je=Nt.indexOf("'",st=Je+2),Je===-1&&(Je=Nt.indexOf('"',st),Je!==-1&&(T("attribute value quote missmatch"),Nn=!0));else for(T("missing attribute value quotes"),Nn=!0,Je=Je+1;Je<fn&&(qe=Nt.charCodeAt(Je+1),!(qe===32||qe<14&&qe>8));Je++);for(Je===-1&&(T("missing closing quotes"),Je=fn,Nn=!0),Nn||(Ln=Nt.substring(st,Je)),st=Je;Je+1<fn&&(qe=Nt.charCodeAt(Je+1),!(qe===32||qe<14&&qe>8));Je++)st===Je&&(T("illegal character after attribute end"),Nn=!0);if(st=Je+1,Nn)continue e;if(_u.has(Et)){T("attribute <"+Et+"> already defined");continue}if(_u.add(Et),!g){Gi[Et]=Ln;continue}if(m){if(dn=Et==="xmlns"?"xmlns":Et.charCodeAt(0)===120&&Et.substr(0,6)==="xmlns:"?Et.substr(6):null,dn!==null){if(it=Ar(Ln),It=Du(dn),In=M[it],!In){if(dn==="xmlns"||It in x&&x[It]!==it)do In="ns"+q++;while(typeof x[In]<"u");else In=dn;M[it]=In}x[dn]!==In&&(Fo||(x=m0(x),Fo=!0),x[dn]=In,dn==="xmlns"&&(x[Du(In)]=it,ln=In),x[It]=it),Gi[Et]=Ln;continue}pn.push(Et,Ln);continue}Et=ce(Et,ln),Et!==null&&(Gi[Et]=Ln)}if(m)for(st=0,fn=pn.length;st<fn;st++)Et=ce(pn[st++],ln),Ln=pn[st],Et!==null&&(Gi[Et]=Ln);return W=Gi}function Ye(){for(var it=/(\r\n|\r|\n)/g,It=0,ln=0,pn=0,st=le,Nt,fn;ue>=pn&&(Nt=it.exec($),!(!Nt||(st=Nt[0].length+Nt.index,st>ue)));)It+=1,pn=st;return ue==-1?(ln=st,fn=$.substring(le)):le===0?fn=$.substring(le,ue):(ln=ue-pn,fn=le==-1?$.substring(ue):$.substring(ue,le+1)),{data:fn,line:It,column:ln}}for(f=Ye,t&&(y=Object.create({},{name:Qa(function(){return P}),originalName:Qa(function(){return _}),attrs:Qa(Te),ns:Qa(function(){return x})}));le!==-1;){if($.charCodeAt(le)===60?ue=le:ue=$.indexOf("<",le),ue===-1){if(G)return $.substring(le);if(S.length)return N("unexpected end of file");if(!d)return N("missing start tag");le<$.length&&$.substring(le).trim()&&T(id);return}if(d||(d=!0),le!==ue){if(S.length){if(n&&(n($.substring(le,ue),Ar,f),w))return}else if($.substring(le,ue).trim()&&(T(id),w))return}if(U=$.charCodeAt(ue+1),U===33){if(F=$.charCodeAt(ue+2),F===91&&$.substr(ue+3,6)==="CDATA["){if(le=$.indexOf("]]>",ue),le===-1)return G?$.substring(ue):N("unclosed cdata");if(o&&(o($.substring(ue+9,le),f),w))return;le+=3;continue}if(F===45&&$.charCodeAt(ue+3)===45){if(le=$.indexOf("-->",ue),le===-1)return G?$.substring(ue):N("unclosed comment");if(c&&(c($.substring(ue+4,le),Ar,f),w))return;le+=3;continue}}if(U===63){if(le=$.indexOf("?>",ue),le===-1)return G?$.substring(ue):N("unclosed question");if(u&&(u($.substring(ue,le+2),f),w))return;le+=2;continue}for(ie=ue+1;;ie++){if(Oe=$.charCodeAt(ie),isNaN(Oe))return G?$.substring(ue):(le=-1,N("unclosed tag"));if(Oe===34)F=$.indexOf('"',ie+1),ie=F!==-1?F:ie;else if(Oe===39)F=$.indexOf("'",ie+1),ie=F!==-1?F:ie;else if(Oe===62){le=ie;break}}if(U===33){if(l&&(l($.substring(ue,le+1),Ar,f),w))return;le+=1;continue}if(W={},U===47){if(de=!1,he=!0,!S.length)return N("missing open tag");if(ie=P=S.pop(),F=ue+2+ie.length,$.substring(ue+2,F)!==ie)return N("closing tag mismatch");for(;F<le;F++)if(U=$.charCodeAt(F),!(U===32||U>8&&U<14))return N("close tag")}else{if($.charCodeAt(le-1)===47?(ie=P=$.substring(ue+1,le-1),de=!0,he=!0):(ie=P=$.substring(ue+1,le),de=!0,he=!1),!(U>96&&U<123||U>64&&U<91||U===95||U===58))return N("illegal first char nodeName");for(F=1,z=ie.length;F<z;F++)if(U=ie.charCodeAt(F),!(U>96&&U<123||U>64&&U<91||U>47&&U<59||U===45||U===95||U==46)){if(U===32||U<14&&U>8){P=ie.substring(0,F),W=null;break}return N("invalid nodeName")}he||S.push(P)}if(g){lt=x,de&&(he||b.push(lt),W===null&&(m=ie.indexOf("xmlns",F)!==-1)&&(B=F,D=ie,Te(),m=!1)),_=P,ze!==x&&(fe=x[rd],fe===void 0&&(fe=x[rd]=Object.create(null)),ze=x);var pt=fe[P];if(pt!==void 0)P=pt;else{if(U=P.indexOf(":"),U!==-1){if(Lt=x[P.substring(0,U)],!Lt)return N("missing namespace on <"+_+">");P=P.substr(U+1)}else Lt=x.xmlns;Lt&&(P=Lt+":"+P),fe[_]=P}}if(de&&(B=F,D=ie,i&&(t?i(y,Ar,he,f):i(P,Te,Ar,he,f),w)))return;if(he){if(r&&(r(t?y:P,Ar,de,f),w))return;g&&(de?x=lt:x=b.pop())}le+=1}}}function ad(e){return e.xml&&e.xml.tagAlias==="lowerCase"}var Ou={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},sd="property";function cd(e){return e.xml&&e.xml.serialize}function v0(e){const t=cd(e);return t!==sd&&(t||null)}function _0(e){return e.charAt(0).toUpperCase()+e.slice(1)}function ud(e,t){return ad(t)?e.prefix+":"+_0(e.localName):e.name}function b0(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 x0(e,t,n){const i=an(e,t.xmlns),r=`${t[i.prefix]||i.prefix}:${i.localName}`,o=an(r);var a=n.getPackage(o.prefix);return b0(o,a)}function qi(e){return new Error(e)}function Si(e){return e.$descriptor}function w0(e){L(this,e),this.elementsById={},this.references=[],this.warnings=[],this.addReference=function(t){this.references.push(t)},this.addElement=function(t){if(!t)throw qi("expected element");var n=this.elementsById,i=Si(t),r=i.idProperty,o;if(r&&(o=t.get(r.name),o)){if(!/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i.test(o))throw new Error("illegal ID <"+o+">");if(n[o])throw qi("duplicate ID <"+o+">");n[o]=t}},this.addWarning=function(t){this.warnings.push(t)}}function Vo(){}Vo.prototype.handleEnd=function(){},Vo.prototype.handleText=function(){},Vo.prototype.handleNode=function(){};function Lu(){}Lu.prototype=Object.create(Vo.prototype),Lu.prototype.handleNode=function(){return this};function to(){}to.prototype=Object.create(Vo.prototype),to.prototype.handleText=function(e){this.body=(this.body||"")+e};function Go(e,t){this.property=e,this.context=t}Go.prototype=Object.create(to.prototype),Go.prototype.handleNode=function(e){if(this.element)throw qi("expected no sub nodes");return this.element=this.createReference(e),this},Go.prototype.handleEnd=function(){this.element.id=this.body},Go.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}};function Iu(e,t){this.element=t,this.propertyDesc=e}Iu.prototype=Object.create(to.prototype),Iu.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=Tu(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)};function es(){}es.prototype=Object.create(to.prototype),es.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 hn(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}hn.prototype=Object.create(es.prototype),hn.prototype.addReference=function(e){this.context.addReference(e)},hn.prototype.handleText=function(e){var t=this.element,n=Si(t),i=n.bodyProperty;if(!i)throw qi("unexpected body text <"+e+">");to.prototype.handleText.call(this,e)},hn.prototype.handleEnd=function(){var e=this.body,t=this.element,n=Si(t),i=n.bodyProperty;i&&e!==void 0&&(e=Tu(i.type,e),t.set(i.name,e))},hn.prototype.createElement=function(e){var t=e.attributes,n=this.type,i=Si(n),r=this.context,o=new n({}),a=this.model,s;return k(t,function(c,u){var l=i.propertiesByName[u],f;l&&l.isReference?l.isMany?(f=c.split(" "),k(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=Tu(l.type,c):u==="xmlns"?u=":"+u:(s=an(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},hn.prototype.getPropertyForNode=function(e){var t=e.name,n=an(t),i=this.type,r=this.model,o=Si(i),a=n.name,s=o.propertiesByName[a];if(s&&!s.isAttr){const u=v0(s);if(u){const l=e.attributes[u];if(l){const f=x0(l,e.ns,r),p=r.getType(f);return L({},s,{effectiveType:Si(p).name})}}return s}var c=r.getPackage(n.prefix);if(c){const u=ud(n,c),l=r.getType(u);if(s=ct(o.properties,function(f){return!f.isVirtual&&!f.isReference&&!f.isAttribute&&l.hasType(f.type)}),s)return L({},s,{effectiveType:Si(l).name})}else if(s=ct(o.properties,function(u){return!u.isReference&&!u.isAttribute&&u.type==="Element"}),s)return s;throw qi("unrecognized element <"+n.name+">")},hn.prototype.toString=function(){return"ElementDescriptor["+Si(this.type).name+"]"},hn.prototype.valueHandler=function(e,t){return new Iu(e,t)},hn.prototype.referenceHandler=function(e){return new Go(e,this.context)},hn.prototype.handler=function(e){return e==="Element"?new no(this.model,e,this.context):new hn(this.model,e,this.context)},hn.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,n=t.effectiveType||t.type,Jf(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?(L(o,{element:i}),this.context.addReference(o)):o.$parent=i),r};function Nu(e,t,n){hn.call(this,e,t,n)}Nu.prototype=Object.create(hn.prototype),Nu.prototype.createElement=function(e){var t=e.name,n=an(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),a=o&&ud(n,o)||t;if(!r.hasType(a))throw qi("unexpected element <"+e.originalName+">");return hn.prototype.createElement.call(this,e)};function no(e,t,n){this.model=e,this.context=n}no.prototype=Object.create(es.prototype),no.prototype.createElement=function(e){var t=e.name,n=an(t),i=n.prefix,r=e.ns[i+"$uri"],o=e.attributes;return this.model.createAny(t,r,o)},no.prototype.handleChild=function(e){var t=new no(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},no.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)};function Bu(e){e instanceof zn&&(e={model:e}),L(this,{lax:!1},e)}Bu.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof hn?(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 w0(L({},t,{rootHandler:i})),s=new od({proxy:!0}),c=E0();i.context=a,c.push(i);function u(S,M,N){var T=M(),H=T.line,V=T.column,$=T.data;$.charAt(0)==="<"&&$.indexOf(" ")!==-1&&($=$.slice(0,$.indexOf(" "))+">");var G="unparsable content "+($?$+" ":"")+`detected
|
|
2
2
|
line: `+H+`
|
|
3
3
|
column: `+V+`
|
|
4
|
-
nested error: `+S.message;if(
|
|
5
|
-
`,
|
|
6
|
-
`),this},this.appendIndent=function(){return t&&e.write(n.join(" ")),this},this.indent=function(){return n.push(""),this},this.unindent=function(){return n.pop(),this}}function D0(e){e=D({format:!1,preamble:!0},e||{});function t(n,i){var r=i||new k0,o=new O0(r,e.format);e.preamble&&o.append(y0);var a=new dt,s=n.$model;if(a.getNamespaces().mapDefaultPrefixes(L0(s)),a.build(n).serializeTo(o),!i)return r.value}return{toXML:t}}function L0(e){const t=e.config&&e.config.nsMap||{},n={};for(const i in ku)n[i]=ku[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 ns(e,t){zn.call(this,e,t)}ns.prototype=Object.create(zn.prototype),ns.prototype.fromXML=function(e,t,n){En(t)||(n=t,t="bpmn:Definitions");var i=new Iu(D({model:this,lax:!0},n)),r=i.handler(t);return i.fromXML(e,r)},ns.prototype.toXML=function(e,t){var n=new D0(t);return new Promise(function(i,r){try{var o=n.toXML(e);return i({xml:o})}catch(a){return r(a)}})};var I0="BPMN20",N0="http://www.omg.org/spec/BPMN/20100524/MODEL",B0="bpmn",$0=[],j0=[{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"}]}],F0=[{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"}]}],H0={tagAlias:"lowerCase",typePrefix:"t"},z0={name:I0,uri:N0,prefix:B0,associations:$0,types:j0,enumerations:F0,xml:H0},V0="BPMNDI",G0="http://www.omg.org/spec/BPMN/20100524/DI",W0="bpmndi",U0=[{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"]}],Y0=[{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"}]}],q0=[],K0={name:V0,uri:G0,prefix:W0,types:U0,enumerations:Y0,associations:q0},X0="DC",Z0="http://www.omg.org/spec/DD/20100524/DC",Q0="dc",J0=[{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}]}],ew=[],tw={name:X0,uri:Z0,prefix:Q0,types:J0,associations:ew},nw="DI",iw="http://www.omg.org/spec/DD/20100524/DI",rw="di",ow=[{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"}]}],aw=[],sw={tagAlias:"lowerCase"},cw={name:nw,uri:iw,prefix:rw,types:ow,associations:aw,xml:sw},uw="bpmn.io colors for BPMN",lw="http://bpmn.io/schema/bpmn/biocolor/1.0",pw="bioc",fw=[{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"}]}],dw=[],hw=[],mw={name:uw,uri:lw,prefix:pw,types:fw,enumerations:dw,associations:hw},gw="BPMN in Color",yw="http://www.omg.org/spec/BPMN/non-normative/color/1.0",vw="color",_w=[{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"}]}],bw=[],xw=[],ww={name:gw,uri:yw,prefix:vw,types:_w,enumerations:bw,associations:xw};const Ew={bpmn:z0,bpmndi:K0,dc:tw,di:cw,bioc:mw,color:ww};function fd(e,t){const n=D({},Ew,e);return new ns(n,t)}const Sw={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"}},Rw="http://www.omg.org/spec/BPMN/non-normative/extensions/i18n/1.0",dd="i18n",is={[dd]:Sw,[bu]:zf};function hd(){return fd(is)}const md=hd();async function $u(e){const{rootElement:t,warnings:n}=await md.fromXML(e,"bpmn:Definitions");return{definitions:t,warnings:n}}async function Cw(e){const{xml:t}=await md.toXML(e,{format:!0});return t}function ju(e){return e.map(t=>typeof t=="string"?t:t.message??String(t))}const io={cjkEm:.865,upperEm:.68,lowerEm:.5,digitEm:.556,spaceEm:.278,otherEm:.35,ascentEm:.9,descentEm:.25},Pw=/[ᄀ-ᇿ -〿-ヿ㐀-鿿가--⦆]/;function Aw(e){const t=io;return Pw.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 ro(e,t){let n=0;for(const i of e)n+=t*Aw(i);return n}function gd(e=globalThis,{textMeasurement:t="approximate"}={}){if(!(e!=null&&e.SVGElement))throw new Error("installHeadlessBpmnDom: DOM 전역이 없다 — jsdom window 를 전역에 올린 뒤 호출할 것");t==="approximate"&&Tw(e),Mw(e),kw(e),Ow(e)}function Tw(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:ro(r,o),fontBoundingBoxAscent:o*io.ascentEm,fontBoundingBoxDescent:o*io.descentEm,actualBoundingBoxAscent:o*io.ascentEm,actualBoundingBoxDescent:o*io.descentEm}}};t.getContext=()=>n}function Mw(e){if(e.SVGMatrix)return;class t{constructor(){Xr(this,"a",1);Xr(this,"b",0);Xr(this,"c",0);Xr(this,"d",1);Xr(this,"e",0);Xr(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 kw(e){var o;const t=()=>{const a=new e.SVGMatrix;return{type:0,matrix:a,setTranslate(s,c){a.e=s,a.f=c},setScale(s,c){a.a=s,a.d=c},setRotate(s,c=0,u=0){const l=s*Math.PI/180,p=Math.cos(l),f=Math.sin(l);a.a=p,a.b=f,a.c=-f,a.d=p,a.e=c-p*c+f*u,a.f=u-f*c-p*u},setMatrix(s){Object.assign(a,s)}}},n=a=>{const s=t();return Object.assign(s.matrix,a),s},i=(o=e.SVGSVGElement)==null?void 0:o.prototype;i&&!i.createSVGTransform&&(i.createSVGTransform=t,i.createSVGTransformFromMatrix=n,i.createSVGMatrix=()=>new e.SVGMatrix,i.createSVGPoint=()=>({x:0,y:0,matrixTransform:()=>({x:0,y:0})}));const r=e.SVGElement.prototype;Object.getOwnPropertyDescriptor(r,"transform")||Object.defineProperty(r,"transform",{configurable:!0,get(){if(!this.__headlessTransformList){const a=[];this.__headlessTransformList={baseVal:{get numberOfItems(){return a.length},clear:()=>{a.length=0},appendItem:s=>(a.push(s),s),getItem:s=>a[s],createSVGTransformFromMatrix:n,consolidate:()=>a[a.length-1]??null}}}return this.__headlessTransformList}})}function Ow(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:ro(n,12),height:14}})}const rs=new Set(["bpmn:Participant","bpmn:Lane","bpmn:Group","bpmn:SubProcess","bpmn:AdHocSubProcess","bpmn:Transaction"]),Dw=1,Lw=2;function Ki(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"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]}`;case"group-on-container-boundary":return`gb|${e.group}|${e.container}|${e.side}`;case"pool-name-over-label":return`pn|${e.pool}|${e.label}`}}const yd=20,vd=5,Iw=3,_d=12,Nw=_d*1.2;function Fu(e,t){const n=t.split(/\r?\n/),i=Math.max(...n.map(o=>ro(o,_d))),r=n.length*Nw;return{x:e.x+e.width/2-i/2,y:e.y+e.height/2-r/2,width:i,height:r}}const bd=1;function hn(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 os(e,t){let n=null;const i=e.type!==t.type;for(const r of hn(e))for(const o of hn(t)){if(r.axis!==o.axis||Math.abs(r.at-o.at)>bd)continue;const a=r.dir!==o.dir?"opposite":i?"mixed":null;if(!a)continue;const s=Math.min(r.hi,o.hi)-Math.max(r.lo,o.lo);s>=yd&&(!n||s>n.length)&&(n={axis:r.axis,length:s,kind:a})}return n}function xd(e,t){const n=os(e,t);return n&&n.kind==="opposite"?{axis:n.axis,length:n.length}:null}function Bw(e,t){let n=0;for(const i of t)i.id!==e.id&&xd(e,i)&&n++;return n}function Mr(e,t){let n=0;for(const i of t)i.id!==e.id&&os(e,i)&&n++;return n}const wd=15,Ed=20;function $w(e,t){const n=t.axis==="v"?[e.x,e.x+e.width]:[e.y,e.y+e.height];if(t.at<n[0]-Ed||t.at>n[1]+Ed)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 Hu=20;function as(e,t){const n=[];for(const i of t){if(i.axis!==e.axis||Math.abs(i.at-e.at)>bd)continue;const r=Math.max(e.lo,i.lo),o=Math.min(e.hi,i.hi);o-r<yd||n.push([r-Hu,o+Hu])}return n}function ss(e,t){const n=e.label;if(!n)return null;let i=null;for(const r of hn(e)){const o=$w(n,r);if(o){for(const a of t)if(a.id!==e.id&&!(i&&a.id>=i.other)){for(const[s,c]of as(r,hn(a)))if(Math.min(c,o[1])>Math.max(s,o[0])){i={other:a.id,axis:r.axis};break}}}}return i}const jw=1,Fw=(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 Hw(e,t,n,i){const r=n.x+i,o=n.y+i,a=n.x+n.width-i,s=n.y+n.height-i;if(a<=r||s<=o)return!1;const c=t.x-e.x,u=t.y-e.y;let l=0,p=1;const f=(d,h)=>{if(h===0)return d<=0;const m=d/h;if(h>0){if(m>p)return!1;m>l&&(l=m)}else{if(m<l)return!1;m<p&&(p=m)}return!0};return f(r-e.x,c)&&f(e.x-a,-c)&&f(o-e.y,u)&&f(e.y-s,-u)&&p>l}function zu(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 zw=(e,t)=>e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height,oo=1;function Ri(e,t){const n=e.x+oo,i=e.x+e.width-oo,r=e.y+oo,o=e.y+e.height-oo;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 Wo(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 Sd(e,t){const n=e.label;if(!n)return null;if(hn(e).some(i=>Ri(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(hn(i).some(r=>Ri(n,r)))return i.id;for(const i of t.shapes.filter(r=>r.container).sort((r,o)=>r.id.localeCompare(o.id)))if(Wo(i).some(r=>Ri(n,r)))return i.id;return null}function Vn(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(Hw(e.waypoints[o],e.waypoints[o+1],r,Lw)){i.push(r);break}}return i}function Vw(e,t,n,i){const r=(u,l,p)=>(l.x-u.x)*(p.y-u.y)-(l.y-u.y)*(p.x-u.x),o=r(n,i,e),a=r(n,i,t),s=r(e,t,n),c=r(e,t,i);return o*a<0&&s*c<0}const Rd=(e,t)=>e.endpoints.some(n=>t.endpoints.includes(n));function cs(e,t){let n=0;for(const i of t){if(i.id===e.id||Rd(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++)Vw(e.waypoints[o],e.waypoints[o+1],i.waypoints[a],i.waypoints[a+1])&&(r=!0);r&&n++}return n}function Ci(e,t){let n=0;for(const i of t)i.id===e.id||Rd(e,i)||cs(e,[i])>0&&(n+=i.type===e.type?2:1);return n}function Cd(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++)cs(n[i],[n[r]])>0&&(t+=n[i].type===n[r].type?2:1);return t}function Vu(e){const t=[],n=e.edges;for(let i=0;i<n.length;i++)for(let r=i+1;r<n.length;r++)if(cs(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 Pd(e){var n;const t=(n=ht(e==null?void 0:e.extensionElements))==null?void 0:n.values;if(Array.isArray(t))for(const i of t){const r=ht(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 Ad=e=>e?{members:e}:{},Pi=e=>e.shapes.filter(t=>!t.container);function Gw(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 Td(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(hn(i).some(r=>Ri(n,r)))return i.id;for(const i of[...t.shapes].filter(r=>r.container).sort((r,o)=>r.id.localeCompare(o.id)))if(Wo(i).some(r=>Ri(n,r)))return i.id;return null}function Uo(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 Xi(e){const t=[],n=e.shapes.filter(p=>!p.container);for(const p of e.edges)for(const f of Vn(p,n))t.push({kind:"edge-crosses-shape",edge:p.id,shape:f.id});const i=n.filter(p=>!p.attached);for(let p=0;p<i.length;p++)for(let f=p+1;f<i.length;f++){const d=i[p],h=i[f];if(!zu(d,h,Dw))continue;const m=d.id<h.id?[d.id,h.id]:[h.id,d.id];t.push({kind:"shape-overlap",shapes:m,identical:zw(d,h)})}const r=e.shapes.filter(p=>p.type==="bpmn:Group"&&Array.isArray(p.members)&&p.members.length>0);for(let p=0;p<r.length;p++)for(let f=p+1;f<r.length;f++){const d=r[p],h=r[f],m=Math.min(d.x+d.width,h.x+h.width)-Math.max(d.x,h.x),g=Math.min(d.y+d.height,h.y+h.height)-Math.max(d.y,h.y);if(m<=vd||g<=vd)continue;const R=new Set(h.members);d.members.some(w=>R.has(w))||t.push({kind:"group-overlap-unintended",groups:d.id<h.id?[d.id,h.id]:[h.id,d.id]})}const o=e.shapes.filter(p=>p.container&&p.type!=="bpmn:Group"&&p.type!=="bpmn:Lane");for(const p of e.shapes.filter(f=>f.type==="bpmn:Group"))for(const f of o){const d=p.x<f.x+f.width&&f.x<p.x+p.width,h=p.y<f.y+f.height&&f.y<p.y+p.height,m=[["top",p.y,f.y,d],["bottom",p.y+p.height,f.y+f.height,d],["left",p.x,f.x,h],["right",p.x+p.width,f.x+f.width,h]];for(const[g,R,w,b]of m)b&&Math.abs(R-w)<=Iw&&t.push({kind:"group-on-container-boundary",group:p.id,container:f.id,side:g})}for(let p=0;p<e.edges.length;p++)for(let f=p+1;f<e.edges.length;f++){const d=e.edges[p],h=e.edges[f],m=os(d,h);if(!m)continue;const g=d.id<h.id?[d.id,h.id]:[h.id,d.id];t.push({kind:m.kind==="opposite"?"edge-overlap-opposite":"edge-overlap-mixed",edges:g,axis:m.axis,length:Math.round(m.length)})}for(const p of e.edges){if(!p.label)continue;const f=ss(p,e.edges);f&&t.push({kind:"label-on-shared-segment",edge:p.id,other:f.other,axis:f.axis})}for(const p of e.edges){if(!p.label)continue;const f=Sd(p,e);f&&t.push({kind:"label-over-line",edge:p.id,line:f})}const a=new Set(n.map(p=>p.id)),s=e.shapes.filter(p=>p.type==="bpmn:Participant"&&p.label);for(const p of[...n,...s.filter(f=>!a.has(f.id))]){if(!p.label)continue;const f=Td(p,e);f&&t.push({kind:"label-over-line",edge:p.id,line:f})}const c=new Set(e.shapes.filter(p=>p.type==="bpmn:TextAnnotation").map(p=>p.id));for(const p of s)for(const{owner:f,rect:d}of Uo(e))f===p.id||c.has(f)||zu(p.label,d,oo)&&t.push({kind:"pool-name-over-label",pool:p.id,label:f});const u=Uo(e);for(const p of n)if(p.type==="bpmn:TextAnnotation")for(const{owner:f,rect:d}of u)f!==p.id&&zu(p,d,oo)&&t.push({kind:"annotation-over-label",annotation:p.id,label:f});const l=new Map(e.shapes.map(p=>[p.id,p]));for(const p of n){const f=p.parent??Gw(p,e,l);if(!f)continue;const d=l.get(f);!d||!d.container||Fw(d,p,jw)||t.push({kind:"shape-outside-container",shape:p.id,container:d.id})}return t.sort((p,f)=>Ki(p).localeCompare(Ki(f)))}const ht=e=>typeof e=="object"&&e!==null?e:void 0,bt=e=>typeof e=="number"?e:0,kr=e=>{const t=ht(e);return typeof(t==null?void 0:t.id)=="string"?t.id:void 0};function Ww(e){const t=ht(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=kr(o);a&&n.push(a)}}return n}function Uw(e,t){const n=ht(e.$parent);if(!n)return;const i=typeof n.$type=="string"?n.$type:"";if(i==="bpmn:Process"){const r=kr(n);return r?t.get(r):void 0}if(rs.has(i)&&i!=="bpmn:Lane"&&i!=="bpmn:Group")return kr(n)}function Md(e){var a,s,c,u,l;const t=[],n=[],i=((a=ht(e))==null?void 0:a.diagrams)??[],r=new Map,o=new Set;for(const p of((s=ht(e))==null?void 0:s.rootElements)??[]){const f=ht(p);if((f==null?void 0:f.$type)==="bpmn:Collaboration")for(const d of f.participants??[]){const h=ht(d),m=kr(h),g=kr(h==null?void 0:h.processRef);m&&g?r.set(g,m):m&&o.add(m)}}for(const p of i){const f=ht((c=ht(p))==null?void 0:c.plane),d=(f==null?void 0:f.planeElement)??[];for(const h of d){const m=ht(h);if(!m)continue;const g=ht(m.bpmnElement),R=typeof(g==null?void 0:g.id)=="string"?g.id:void 0;if(!R)continue;const w=typeof(g==null?void 0:g.$type)=="string"?g.$type:"",b=ht(m.bounds);if(b){const S=m.isExpanded===!1&&w!=="bpmn:Participant",M=ht((u=ht(m.label))==null?void 0:u.bounds),L={id:R,type:w,x:bt(b.x),y:bt(b.y),width:bt(b.width),height:bt(b.height),container:rs.has(w)&&!S,attached:(g==null?void 0:g.attachedToRef)!==void 0,...g?{parent:Uw(g,r)}:{},...M?{label:{x:bt(M.x),y:bt(M.y),width:bt(M.width),height:bt(M.height)}}:{},...w==="bpmn:Group"?Ad(Pd(g)):{}},A=m.isHorizontal!==!1,H=typeof(g==null?void 0:g.name)=="string"?g.name:"";o.has(R)&&A&&H&&(L.label=Fu(L,H)),t.push(L);continue}const x=m.waypoint;if(Array.isArray(x)){const S=ht((l=ht(m.label))==null?void 0:l.bounds);n.push({id:R,type:w,waypoints:x.map(M=>{var L,A;return{x:bt((L=ht(M))==null?void 0:L.x),y:bt((A=ht(M))==null?void 0:A.y)}}),endpoints:Ww(g),...S?{label:{x:bt(S.x),y:bt(S.y),width:bt(S.width),height:bt(S.height)}}:{}})}}}return{shapes:t,edges:n}}function kd(e){return Xi(Md(e))}async function Yw(e){const{definitions:t,warnings:n}=await $u(e);return{findings:kd(t),warnings:n}}function $t(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=ht(o.label);n.push({id:o.id,type:a,waypoints:s.map(g=>({x:bt(g.x),y:bt(g.y)})),endpoints:[kr(o.source),kr(o.target)].filter(g=>!!g),...m&&typeof m.x=="number"?{label:{x:m.x,y:bt(m.y),width:bt(m.width),height:bt(m.height)}}:{}});continue}if(typeof o.x!="number"||typeof o.y!="number")continue;const c=ht(o.businessObject),u=ht(o.label);let l=ht(o.parent);for(;l&&l.type==="bpmn:Lane";)l=ht(l.parent);const p=typeof(l==null?void 0:l.type)=="string"?l.type:"",f=l&&rs.has(p)&&p!=="bpmn:Group"&&typeof l.id=="string"?l.id:void 0,d={id:o.id,type:a,x:o.x,y:o.y,width:bt(o.width),height:bt(o.height),container:rs.has(a)&&(a==="bpmn:Participant"||o.collapsed!==!0),attached:(c==null?void 0:c.attachedToRef)!==void 0,...f!==void 0?{parent:f}:{},...u&&typeof u.x=="number"?{label:{x:u.x,y:bt(u.y),width:bt(u.width),height:bt(u.height)}}:{},...a==="bpmn:Group"?Ad(Pd(c)):{}},h=typeof(c==null?void 0:c.name)=="string"?c.name:"";a==="bpmn:Participant"&&!(c!=null&&c.processRef)&&h&&((i=ht(o.di))==null?void 0:i.isHorizontal)!==!1&&(d.label=Fu(d,h)),t.push(d)}return{shapes:t,edges:n}}const qw={"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 Kw(e,t){const n=qw[e];return n||(e==="label"||e.startsWith("bpmndi:")?"other":e.startsWith("bpmn:")&&!("waypoints"in t&&t.waypoints)?"flowNode":"other")}function Od(e){let t=e.parent;for(;t;){if(t.type==="bpmn:Participant")return t.id;t=t.parent}}function Dd(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 Kw(i.type,i)},lanesOf:n=>t().filter(i=>i.type==="bpmn:Lane"&&Od(i)===n).sort((i,r)=>i.y-r.y).map(i=>i.id),participantOf:n=>{const i=e.get(n);return i?Od(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 Ld=20,Xw=4,Rt=(e,t)=>Math.abs(e-t)<.5;function Id(e,t,n,i=Ld){if(Rt(e.y,t.y)&&!Rt(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(Rt(e.x,t.x)&&!Rt(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 Nd(e,t,n=Ld){if(e.length!==4)return null;const[i,r,o,a]=e;if(Rt(i.y,r.y)&&Rt(r.x,o.x)&&Rt(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(Rt(i.x,r.x)&&Rt(r.y,o.y)&&Rt(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 Gu(e,t){if(e.endpoints.length!==2)return[];const n=t.find(p=>p.id===e.endpoints[0]),i=t.find(p=>p.id===e.endpoints[1]);if(!n||!i)return[];if(i.x<=n.x+n.width)return[];const r=n.y+n.height/2,o=i.y+i.height/2;if(r>=i.y&&r<=i.y+i.height)return[];const a=i.x+i.width/2,s=n.x+n.width/2,c=r>o,u=[{x:n.x+n.width,y:r},{x:a,y:r},{x:a,y:c?i.y+i.height:i.y}],l=[{x:s,y:c?n.y:n.y+n.height},{x:s,y:o},{x:i.x,y:o}];return[u,l]}const Bd=30,Zw=[0,-25,25,-40,40];function Qw(e,t){if(e.type!=="bpmn:MessageFlow"||e.endpoints.length!==2)return[];const n=t.find(f=>f.id===e.endpoints[0]),i=t.find(f=>f.id===e.endpoints[1]);if(!n||!i)return[];const r=n.y+n.height/2,o=i.y+i.height/2;if(i.y<n.y+n.height&&i.y+i.height>n.y)return[];const a=o<r,s=a?n.y+n.height:n.y,c=a?s+Bd:s-Bd,u=a?i.y+i.height:i.y,l=n.x+n.width/2,p=i.x+i.width/2;return Zw.map(f=>[{x:l,y:s},{x:l,y:c},{x:p+f,y:c},{x:p+f,y:u}])}const Jw=(e,t,n)=>[...e.slice(0,t+1),...n,...e.slice(t+1)],us=(e,t,n)=>Vn({...e,waypoints:t},n).length;function $d(e,t,n,i){let r=[...e.waypoints],o=us(e,r,t);if(o===0)return null;let a=!1;for(const p of Gu(e,t))if(us(e,p,t)===0)return p;const s=(i??[]).filter(p=>p.id!==e.id).flatMap(hn),c=p=>hn({...e,waypoints:p}).some(f=>as(f,s).length>0),u=Qw(e,t).filter(p=>us(e,p,t)===0);if(u.length)return u.find(p=>!c(p))??u[0];const l=p=>!n||p.every(f=>f.x>=n.x&&f.x<=n.x+n.width&&f.y>=n.y&&f.y<=n.y+n.height);for(let p=0;p<Xw&&o>0;p++){let f=!1;for(let d=0;d+1<r.length&&!f;d++){const h=r[d],m=r[d+1];for(const g of t){if(e.endpoints.includes(g.id)||Vn({...e,waypoints:[h,m]},[g]).length===0)continue;const R=Id(h,m,g),w=R?R.map(x=>Jw(r,d,x)):Nd(r,g)??[];if(!w.length)continue;const b=[...w].sort((x,S)=>Number(l(S))-Number(l(x)));for(const x of b){const S=us(e,x,t);if(S<o){r=x,o=S,f=!0,a=!0;break}}if(f)break}}if(!f)break}return a&&o===0?r:null}function jd(e,t){const{elementRegistry:n}=e,i=e.modeling,r=$t(n),o=Pi(r),a=Xi(r).filter(c=>c.kind==="edge-crosses-shape"&&!t.has(Ki(c)));if(!a.length)return;const s=new Map;for(const c of a){if(c.kind!=="edge-crosses-shape"||s.has(c.edge))continue;const u=r.edges.find(l=>l.id===c.edge);u&&s.set(c.edge,u)}for(const[c,u]of s){const l=n.get(c);if(!l)continue;const p=l.parent,f=p&&typeof p.x=="number"&&typeof p.width=="number"?{x:p.x,y:p.y,width:p.width,height:p.height}:void 0,d=$d(u,o,f,r.edges);d&&i.updateWaypoints(l,d)}}const eE=10;function Fd(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 Hd(e,t){if(e.waypoints.length<2||e.endpoints.length!==2)return null;const n=t.shapes.filter(G=>G.type==="bpmn:Participant"&&G.container),i=t.shapes.find(G=>G.id===e.endpoints[0]),r=t.shapes.find(G=>G.id===e.endpoints[1]);if(!i||!r)return null;const o=Fd(i,n),a=Fd(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(G=>G.id!==o.id&&G.id!==a.id&&G.y>=c.y+c.height&&G.y+G.height<=u.y).sort((G,pe)=>G.y-pe.y);if(!l.length)return null;const p=l[0],f=l[l.length-1],d=(c.y+c.height+p.y)/2,h=(f.y+f.height+u.y)/2,m=s?d:h,g=s?h:d,R=e.waypoints[0],w=e.waypoints[e.waypoints.length-1],b=Pi(t),x=t.edges.filter(G=>G.id!==e.id),S=Ci(e,x),M=Vn(e,b).length;if(S===0&&M===0||M===0&&e.waypoints.length===2)return null;const L=Math.min(...l.map(G=>G.x)),A=Math.max(...l.map(G=>G.x+G.width)),H=(R.x+w.x)/2,V=G=>G.filter((pe,ze)=>ze===0||!(Rt(pe.x,G[ze-1].x)&&Rt(pe.y,G[ze-1].y)));let N;for(let G=L;G<=A;G+=eE){const pe=V([R,{x:R.x,y:m},{x:G,y:m},{x:G,y:g},{x:w.x,y:g},w]),ze={...e,waypoints:pe};if(Vn(ze,b).length>0)continue;const lt=Ci(ze,x),Y=Math.abs(G-H);(!N||lt<N.cross||lt===N.cross&&Y<N.detour)&&(N={pts:pe,cross:lt,detour:Y})}return N&&(M>0?N.cross<=S:N.cross<S)?N.pts:null}function zd(e,t){const{elementRegistry:n}=e,i=e.modeling,r=$t(n);for(const o of r.edges){if(o.type!=="bpmn:MessageFlow"||t.has(o.id))continue;const a=$t(n),s=a.edges.find(l=>l.id===o.id);if(!s)continue;const c=Hd(s,a);if(!c)continue;const u=n.get(o.id);u&&i.updateWaypoints(u,c)}}const ao=[25,-25,40,-40],ls=35;function Vd(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[];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-ls:n.y+n.height+ls,p=[];for(const w of[0,...ao]){if(Math.abs(w)>=i.width/2-5)continue;const b=o+w;p.push({pts:[{x:n.x,y:r},{x:b,y:r},{x:b,y:c}],cost:Math.abs(w)});for(const x of[0,...ao]){if(Math.abs(x)>=n.width/2-5)continue;const S=a+x;p.push({pts:[{x:S,y:u},{x:S,y:l},{x:b,y:l},{x:b,y:c}],cost:Math.abs(w)+Math.abs(x)})}}const f=50,d=i.y+i.height/2,h=s?n.y+n.height:n.y;for(const w of[0,...ao]){if(Math.abs(w)>=n.width/2-5)continue;const b=a+w;p.push({pts:[{x:b,y:h},{x:b,y:d},{x:i.x+i.width,y:d}],cost:f+Math.abs(w)})}const m=60,g=s?i.y+i.height:i.y,R=s?i.y+i.height+ls:i.y-ls;for(const w of[0,...ao]){if(Math.abs(w)>=i.width/2-5)continue;const b=o+w;for(const x of[0,...ao]){if(Math.abs(x)>=n.width/2-5)continue;const S=a+x;p.push({pts:[{x:S,y:h},{x:S,y:R},{x:b,y:R},{x:b,y:g}],cost:m+Math.abs(w)+Math.abs(x)})}}return p}const ps=30;function Gd(e,t){for(let n=1;n<e.length-2;n++){const i=e[n],r=e[n+1],o=Rt(i.y,r.y)&&!Rt(i.x,r.x),a=Rt(i.x,r.x)&&!Rt(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)<ps||Math.abs(i.y-(s.y+s.height))<ps)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)<ps||Math.abs(i.x-(s.x+s.width))<ps)return!0}}return!1}const fs=40;function tE(e,t,n){let i=0;for(const r of t){if(r.container||n.includes(r.id))continue;const o=r.x-fs,a=r.x+r.width+fs,s=r.y-fs,c=r.y+r.height+fs;for(let u=1;u<e.length-2;u++){const l=e[u],p=e[u+1],f={x:Math.min(l.x,p.x),y:Math.min(l.y,p.y)},d={x:Math.max(l.x,p.x),y:Math.max(l.y,p.y)};if(f.x<a&&d.x>o&&f.y<c&&d.y>s){i++;break}}}return i}function Wd(e,t){if(e.type!=="bpmn:SequenceFlow")return null;const n=t.shapes.filter(w=>w.container),i=new Map(t.shapes.map(w=>[w.id,w])),r=Pi(t),o=t.edges.filter(w=>w.id!==e.id),a=Mr(e,o),s=Ci(e,o),c=w=>tE(w,t.shapes,e.endpoints)+(Gd(w,n)?1:0),u=c(e.waypoints),l=w=>{if(!w)return;const b=w.x+w.width/2,x=w.y+w.height/2;return n.find(S=>S.type==="bpmn:Lane"&&b>=S.x&&b<=S.x+S.width&&x>=S.y&&x<=S.y+S.height)},p=l(i.get(e.endpoints[0]??"")),f=l(i.get(e.endpoints[1]??"")),d=!!p&&!!f&&p.id!==f.id,h=w=>{if(!d||!f)return!1;for(let b=1;b<w.length-2;b++){const x=w[b],S=w[b+1];if(Rt(x.y,S.y)&&!Rt(x.x,S.x)&&x.y>f.y&&x.y<f.y+f.height)return!0}return!1},m=h(e.waypoints);if(!Gd(e.waypoints,n)&&!(d&&!m))return null;const g=w=>w.reduce((b,x,S)=>S?b+Math.abs(x.x-w[S-1].x)+Math.abs(x.y-w[S-1].y):0,0);let R;for(const{pts:w,cost:b}of Vd(e,i)){const x={...e,waypoints:w};if(Vn(x,r).length>0||Mr(x,o)>a||Ci(x,o)>s)continue;const S=c(w),M=h(w);if(!(M&&!m)&&S>=u)continue;const A=M?0:1,H=g(w);(!R||A<R.lane||A===R.lane&&(S<R.sc||S===R.sc&&(b<R.cost||b===R.cost&&H<R.len)))&&(R={pts:w,sc:S,lane:A,cost:b,len:H})}return(R==null?void 0:R.pts)??null}function nE(e,t){const{elementRegistry:n}=e,i=e.modeling,r=$t(n).edges.filter(o=>!t.has(o.id)&&o.waypoints.length>=4).map(o=>o.id).sort();for(const o of r){const a=$t(n),s=a.edges.find(d=>d.id===o);if(!s||s.waypoints.length<4)continue;const c=Pi(a),u=a.edges.filter(d=>d.id!==o),l=Vn(s,c).length,p=Mr(s,u),f=Ci(s,u);for(const d of Gu(s,a.shapes)){if(d.length>=s.waypoints.length)continue;const h={...s,waypoints:d};if(Vn(h,c).length>l||Mr(h,u)>p||Ci(h,u)>f)continue;const m=n.get(o);m&&i.updateWaypoints(m,d);break}}}function Ud(e,t){const{elementRegistry:n}=e,i=e.modeling,r=$t(n).edges.filter(o=>o.type==="bpmn:SequenceFlow"&&!t.has(o.id)).map(o=>o.id).sort();for(const o of r){const a=$t(n),s=a.edges.find(l=>l.id===o);if(!s)continue;const c=Wd(s,a);if(!c)continue;const u=n.get(o);u&&i.updateWaypoints(u,c)}}function iE(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=Rt(n[0].x,n[1].x)&&!Rt(n[0].y,n[1].y),s=Rt(n[n.length-1].x,n[n.length-2].x)&&!Rt(n[n.length-1].y,n[n.length-2].y);for(const c of ao){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 Yd(e,t){const n=new Map(t.shapes.map(l=>[l.id,l])),i=Pi(t),r=t.edges.filter(l=>l.id!==e.id),o=Mr(e,r);if(o===0)return null;const a=Ci(e,r);let s;const c=l=>l.reduce((p,f,d)=>d?p+Math.abs(f.x-l[d-1].x)+Math.abs(f.y-l[d-1].y):0,0),u=[...Vd(e,n),...iE(e,n)];for(const{pts:l,cost:p}of u){const f={...e,waypoints:l};if(Vn(f,i).length>0)continue;const d=Mr(f,r),h=Ci(f,r);if(d>=o||h-a>o-d)continue;const m=c(l);(!s||d<s.opposite||d===s.opposite&&(h<s.cross||h===s.cross&&(p<s.cost||p===s.cost&&m<s.len)))&&(s={pts:l,opposite:d,cross:h,cost:p,len:m})}return(s==null?void 0:s.pts)??null}function qd(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=$t(i),a=Xi(o).filter(l=>(l.kind==="edge-overlap-opposite"||l.kind==="edge-overlap-mixed")&&!t.has(Ki(l)));if(!a.length)return;const s=new Set;for(const l of a)if(!(l.kind!=="edge-overlap-opposite"&&l.kind!=="edge-overlap-mixed"))for(const p of l.edges)n.has(p)||s.add(p);const c=l=>{var p;return((p=o.edges.find(f=>f.id===l))==null?void 0:p.type)??""},u=[...s].sort((l,p)=>{const f=c(l)==="bpmn:SequenceFlow"?0:1,d=c(p)==="bpmn:SequenceFlow"?0:1;return f!==d?f-d:l.localeCompare(p)});for(const l of u){const p=$t(i),f=p.edges.find(m=>m.id===l);if(!f)continue;const d=Yd(f,p);if(!d)continue;const h=i.get(l);h&&r.updateWaypoints(h,d)}}const rE=10,oE=(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 Kd(e,t){const n=e.label;if(!n)return null;const i=t.edges.filter(a=>a.id!==e.id);if(!ss(e,i))return null;const r=Pi(t),o=i.flatMap(hn);for(const a of hn(e)){let s=[[a.lo,a.hi]];for(const[d,h]of as(a,o))s=s.flatMap(([m,g])=>{const R=[];return d>m&&R.push([m,Math.min(g,d)]),h<g&&R.push([Math.max(m,h),g]),R.filter(([w,b])=>b>w)});const c=a.axis==="h"?n.width:n.height,u=s.find(([d,h])=>h-d>=c+rE*2);if(!u)continue;const l=(u[0]+u[1])/2,p=a.axis==="h"?{x:l,y:a.at-wd}:{x:a.at+Cn+n.width/2,y:l},f={x:p.x-n.width/2,y:p.y-n.height/2,width:n.width,height:n.height};if(!ss({...e,label:f},i)&&!r.some(d=>!e.endpoints.includes(d.id)&&oE(f,d)))return f}return null}const Cn=8;function Xd(e,t){const n=e.label;if(!n)return null;const i=hn(e);if(!i.length)return null;const r=n.x+n.width/2,o=n.y+n.height/2,a=f=>{const d=f.axis==="h"?r:o,h=f.axis==="h"?o-f.at:r-f.at,m=d<f.lo?f.lo-d:d>f.hi?d-f.hi:0;return Math.hypot(h,m)},s=i.reduce((f,d)=>a(d)<a(f)?d:f,i[0]),c=[...i,...t.edges.filter(f=>f.id!==e.id).flatMap(hn),...t.shapes.filter(f=>f.container).flatMap(Wo)],u=f=>!c.some(d=>Ri(f,d));if(u(n))return null;const l=(s.axis==="v"?n.height:n.width)+Cn,p=[0,-l,l,-2*l,2*l];if(s.axis==="v")for(const f of[s.at+Cn,s.at-Cn-n.width])for(const d of p){const h=n.y+d;if(h<s.lo||h+n.height>s.hi)continue;const m={...n,x:f,y:h};if(u(m))return m}else for(const f of[s.at-Cn-n.height,s.at+Cn])for(const d of p){const h=n.x+d;if(h<s.lo||h+n.width>s.hi)continue;const m={...n,x:h,y:f};if(u(m))return m}return null}function Zd(e,t){const{elementRegistry:n}=e,i=e.modeling,r=$t(n);for(const o of r.edges){if(!o.label||t.has(o.id))continue;const a=Xd(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 Qd(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=$t(i),a=Xi(o).filter(s=>s.kind==="label-on-shared-segment"&&!t.has(Ki(s)));for(const s of a){if(s.kind!=="label-on-shared-segment"||n.has(s.edge))continue;const c=o.edges.find(f=>f.id===s.edge);if(!c)continue;const u=Kd(c,o);if(!u)continue;const l=i.get(s.edge),p=l==null?void 0:l.label;p&&r.moveElements([p],{x:u.x-p.x,y:u.y-p.y})}}function Jd(e,t){const n=e.label;if(!n)return null;const i=[...t.edges.flatMap(hn),...t.shapes.filter(f=>f.container).flatMap(Wo)],r=i.filter(f=>Ri(n,f));if(!r.length)return null;const o=t.shapes.filter(f=>!f.container&&f.id!==e.id),a=Uo(t).filter(f=>f.owner!==e.id).map(f=>f.rect),s=(f,d)=>f.x<d.x+d.width&&d.x<f.x+f.width&&f.y<d.y+d.height&&d.y<f.y+f.height,c=f=>!i.some(d=>Ri(f,d))&&!o.some(d=>s(f,d))&&!a.some(d=>s(f,d)),u=[];for(const f of r)f.axis==="h"?u.push({...n,y:f.at-Cn-n.height},{...n,y:f.at+Cn}):u.push({...n,x:f.at-Cn-n.width},{...n,x:f.at+Cn});const l=e.x+e.width/2,p=e.y+e.height/2;return u.push({...n,x:l-n.width/2,y:e.y+e.height+Cn},{...n,x:l-n.width/2,y:e.y-Cn-n.height},{...n,x:e.x+e.width+Cn,y:p-n.height/2},{...n,x:e.x-Cn-n.width,y:p-n.height/2}),u.find(c)??null}function eh(e,t){const{elementRegistry:n}=e,i=e.modeling,r=$t(n);for(const o of r.shapes){if(o.container||!o.label||t.has(o.id))continue;const a=Jd(o,$t(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 aE=/^[\p{L}_][\p{L}\p{N}_.\-]*$/u,th=new Set(["sequenceFlow","messageFlow","dataAssociation","association"]),nh={"participant.add":[{path:"participant",shape:["id"]},{path:"participant.lanes[]",shape:["id"],optional:!0}],"participant.update":[{path:"id",shape:null},{path:"lanes[]",shape:["id"],optional:!0}],"node.add":[{path:"node",shape:["id","type"]}],"node.update":[{path:"id",shape:null}],"sequenceFlow.add":[{path:"flow",shape:["id","source","target"]}],"sequenceFlow.update":[{path:"id",shape:null}],"messageFlow.add":[{path:"flow",shape:["id","source","target"]}],"messageFlow.update":[{path:"id",shape:null}],"dataStore.add":[{path:"dataStore",shape:["id"]},{path:"associations[]",shape:["source","target"],optional:!0}],"dataStore.update":[{path:"id",shape:null}],"dataAssociation.add":[{path:"association",shape:["source","target"]}],"association.add":[{path:"association",shape:["source","target"]}],"annotation.add":[{path:"annotation",shape:["id","text"]},{path:"association",shape:["source","target"],optional:!0},{path:"placement",shape:["anchor","side"],optional:!0}],"annotation.update":[{path:"id",shape:null},{path:"placement",shape:["anchor","side"],optional:!0}],"group.add":[{path:"group",shape:["id"]},{path:"group.members[]",shape:null,optional:!0}],"group.update":[{path:"id",shape:null},{path:"members[]",shape:null,optional:!0}],"element.remove":[{path:"id",shape:null}]},ds=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Wu=e=>typeof e=="string"&&e!=="";function sE(e){const t=[];function n(i,r,o,a){if(a===null){Wu(o)||t.push({kind:"payload-invalid",opIndex:i,field:r});return}if(!ds(o)){t.push({kind:"payload-invalid",opIndex:i,field:r});return}for(const s of a)Wu(o[s])||t.push({kind:"payload-invalid",opIndex:i,field:`${r}.${s}`})}return e.forEach((i,r)=>{if(!ds(i)||!Wu(i.kind)||!(i.kind in nh)){t.push({kind:"payload-invalid",opIndex:r,field:"kind"});return}for(const o of nh[i.kind]){const a=o.path.endsWith("[]"),s=a?o.path.slice(0,-2):o.path,c=s.split(".");let u=i;for(const p of c.slice(0,-1)){if(!ds(u))break;u=u[p]}if(!ds(u))continue;const l=u[c[c.length-1]];if(!(l===void 0&&o.optional)&&!(l===null&&o.optional)){if(!a){n(r,o.path,l,o.shape);continue}if(!Array.isArray(l)){t.push({kind:"payload-invalid",opIndex:r,field:o.path});continue}l.forEach((p,f)=>n(r,`${s}[${f}]`,p,o.shape))}}if(i.kind==="node.add"){const o=i.band;o!==void 0&&(!Number.isInteger(o)||o<0)&&t.push({kind:"payload-invalid",opIndex:r,field:"band"})}}),t}function ih(e,t){const n=sE(e);if(n.length>0)return n;const i=[],r=new Map,o=new Map;function a(f,d,h){if(!aE.test(d)){i.push({kind:"id-invalid",opIndex:f,id:d});return}if(t.categoryOf(d)!==void 0||r.has(d)){i.push({kind:"id-duplicate",opIndex:f,id:d});return}r.set(d,{...h,opIndex:f})}e.forEach((f,d)=>{var h;switch(f.kind){case"participant.add":a(d,f.participant.id,{category:"participant",lanes:(f.participant.lanes??[]).map(m=>m.id)});for(const m of f.participant.lanes??[])a(d,m.id,{category:"lane"});break;case"node.add":a(d,f.node.id,{category:"flowNode",participant:f.node.participant});break;case"sequenceFlow.add":a(d,f.flow.id,{category:"sequenceFlow"});break;case"messageFlow.add":a(d,f.flow.id,{category:"messageFlow"});break;case"dataStore.add":a(d,f.dataStore.id,{category:"dataStore"});for(const m of f.associations??[])m.id&&a(d,m.id,{category:"dataAssociation"});break;case"dataAssociation.add":f.association.id&&a(d,f.association.id,{category:"dataAssociation"});break;case"association.add":f.association.id&&a(d,f.association.id,{category:"association"});break;case"annotation.add":a(d,f.annotation.id,{category:"annotation"}),(h=f.association)!=null&&h.id&&a(d,f.association.id,{category:"association"});break;case"group.add":a(d,f.group.id,{category:"group"});break;case"participant.update":if(f.lanes){o.set(f.id,f.lanes.map(m=>m.id));for(const m of f.lanes)t.categoryOf(m.id)===void 0&&a(d,m.id,{category:"lane"})}break}});const s=f=>{var d;return((d=r.get(f))==null?void 0:d.category)??t.categoryOf(f)},c=f=>{const d=r.get(f);return d?d.category==="participant"?f:d.participant:t.categoryOf(f)==="participant"?f:t.participantOf(f)};function u(f,d,h,m){const g=s(d);if(g===void 0){i.push({kind:"ref-missing",opIndex:f,ref:d,role:h});return}if(m&&!m.includes(g)){i.push({kind:"ref-category",opIndex:f,ref:d,role:h,expected:m.join("|"),actual:g});return}return g}const l=t.isCollaboration()||e.some(f=>f.kind==="participant.add");return e.forEach((f,d)=>{var h;switch(f.kind){case"participant.add":break;case"node.add":{const{participant:m,lane:g}=f.node;if(m===void 0){(l||g!==void 0)&&i.push({kind:"participant-required",opIndex:d,id:f.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:R,name:w,condition:b}=f.flow,x=u(d,g,"source",["flowNode"]),S=u(d,R,"target",["flowNode"]);x&&S&&c(g)!==c(R)&&i.push({kind:"flow-cross-pool",opIndex:d,id:m}),w!==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:R}=f.flow,w=u(d,g,"source",["flowNode","participant"]),b=u(d,R,"target",["flowNode","participant"]);if(w&&b){const x=c(g),S=c(R);x!==void 0&&x===S&&i.push({kind:"message-flow-same-pool",opIndex:d,id:m})}break}case"dataStore.add":{for(const m of f.associations??[]){if([m.source,m.target].filter(w=>w===f.dataStore.id).length!==1){i.push({kind:"data-association-ends",opIndex:d,source:m.source,target:m.target});continue}const R=m.source===f.dataStore.id?m.target:m.source;u(d,R,"dataAssociation",["flowNode"])}break}case"dataAssociation.add":{const{source:m,target:g}=f.association,R=u(d,m,"source"),w=u(d,g,"target");if(R&&w){const b=new Set([R,w]);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:R}=f.association,w=u(d,g,"source"),b=u(d,R,"target");w&&b&&w!=="annotation"&&b!=="annotation"&&i.push({kind:"association-detached",opIndex:d,annotation:m??`${g}->${R}`});break}case"annotation.add":{if(f.association){const{source:m,target:g}=f.association;if(m!==f.annotation.id&&g!==f.annotation.id)i.push({kind:"association-detached",opIndex:d,annotation:f.annotation.id});else{const R=m===f.annotation.id?g:m;u(d,R,"association")}}f.placement&&u(d,f.placement.anchor,"anchor");break}case"group.add":{for(const m of f.group.members??[]){const g=u(d,m,"member");g&&th.has(g)&&i.push({kind:"ref-category",opIndex:d,ref:m,role:"member",expected:"shape",actual:g})}break}case"participant.update":{if(p(d,f.id,"participant")===void 0)break;if(f.lanes){const m=t.lanesOf(f.id),g=f.lanes.map(w=>w.id);for(const w of m)g.includes(w)||i.push({kind:"lane-shrink-unsupported",opIndex:d,participant:f.id,lane:w});for(const w of g)t.categoryOf(w)!==void 0&&!m.includes(w)&&i.push({kind:"id-duplicate",opIndex:d,id:w});const R=g.filter(w=>m.includes(w));R.length===m.length&&R.some((w,b)=>w!==m[b])&&i.push({kind:"lane-reorder-unsupported",opIndex:d,participant:f.id})}break}case"node.update":{if(p(d,f.id,"flowNode")===void 0)break;if(f.lane!==void 0){const m=t.participantOf(f.id);(m?o.get(m)??t.lanesOf(m):[]).includes(f.lane)||i.push({kind:"lane-unknown",opIndex:d,lane:f.lane,participant:m??""})}break}case"sequenceFlow.update":{if(p(d,f.id,"sequenceFlow")===void 0)break;if(f.name!==void 0&&f.condition!==void 0&&i.push({kind:"condition-name-conflict",opIndex:d,id:f.id}),f.source!==void 0||f.target!==void 0){const m=f.source===void 0||u(d,f.source,"source",["flowNode"])!==void 0,g=f.target===void 0||u(d,f.target,"target",["flowNode"])!==void 0,R=t.endpointsOf(f.id),w=f.source??(R==null?void 0:R.source),b=f.target??(R==null?void 0:R.target);m&&g&&w!==void 0&&b!==void 0&&new Set([c(w),c(b),c(f.id)]).size>1&&i.push({kind:"flow-cross-pool",opIndex:d,id:f.id})}break}case"messageFlow.update":p(d,f.id,"messageFlow");break;case"dataStore.update":p(d,f.id,"dataStore");break;case"annotation.update":{if(p(d,f.id,"annotation")===void 0)break;f.placement&&u(d,f.placement.anchor,"anchor");break}case"group.update":{if(p(d,f.id,"group")===void 0)break;for(const m of f.members??[]){const g=u(d,m,"member");g&&th.has(g)&&i.push({kind:"ref-category",opIndex:d,ref:m,role:"member",expected:"shape",actual:g})}break}case"element.remove":{p(d,f.id)==="lane"&&i.push({kind:"ref-category",opIndex:d,ref:f.id,role:"target",expected:"removable",actual:"lane"});break}}}),i;function p(f,d,h){if(r.has(d)){i.push({kind:"target-added-in-batch",opIndex:f,id:d});return}const m=t.categoryOf(d);if(m===void 0){i.push({kind:"ref-missing",opIndex:f,ref:d,role:"target"});return}if(h&&m!==h){i.push({kind:"ref-category",opIndex:f,ref:d,role:"target",expected:h,actual:m});return}return m}}function rh(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 hs(e){return`bpmn:${e[0].toUpperCase()}${e.slice(1)}`}const Uu={"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]};function Xt(e,t){return e.filter(n=>n.kind===t)}function oh(e,t){var Rx,Cx,Px,Ax,Tx,Mx;const{modeling:n,bpmnFactory:i,elementFactory:r,elementRegistry:o,canvas:a,autoPlace:s,bpmnReplace:c}=t,u=()=>a.getRootElement(),l=E=>o.get(E),p=E=>{const C=l(E);if(!C)throw new Error(`하강 참조 해소 실패: ${E}`);return C},f=E=>{let C=E.parent;for(;C;){if(C.type==="bpmn:Participant")return C;C=C.parent}},d=Xt(e,"participant.add"),h=Xt(e,"node.add"),m=Xt(e,"sequenceFlow.add"),g=Xt(e,"messageFlow.add"),R=Xt(e,"dataStore.add"),w=Xt(e,"dataAssociation.add"),b=Xt(e,"annotation.add"),x=Xt(e,"group.add"),S=new Map(h.map(E=>[E.node.id,E])),M=(E,C,T)=>{var J;const B=E.businessObject,$=(((J=B.extensionElements)==null?void 0:J.values)??[]).filter(ne=>ne.$type!==C),j=T?[...$,i.create(C,T)]:$;if(!j.length){B.extensionElements&&n.updateProperties(E,{extensionElements:void 0});return}const Z=i.create("bpmn:ExtensionElements",{values:j});j.forEach(ne=>{ne.$parent=Z}),n.updateProperties(E,{extensionElements:Z})},L=E=>({anchor:E.anchor,side:E.side,...E.offset!==void 0?{offset:E.offset}:{}});for(const E of Xt(e,"element.remove")){const C=l(E.id);C&&n.removeElements([C])}const A=E=>o.filter(C=>{var T;return C.type==="bpmn:Lane"&&((T=f(C))==null?void 0:T.id)===E}).sort((C,T)=>C.y-T.y);for(const E of Xt(e,"participant.update")){const C=p(E.id);if(E.name!==void 0&&n.updateProperties(C,{name:E.name??void 0}),!E.lanes)continue;const T=A(E.id);if(!T.length){n.splitLane(C,E.lanes.length),A(E.id).forEach(($,j)=>{const Z=E.lanes[j];Z&&n.updateProperties($,{id:Z.id,name:Z.name})});continue}const B=new Set(T.map($=>$.id));E.lanes.forEach(($,j)=>{if(B.has($.id)){n.updateProperties(p($.id),{name:$.name});return}const Z=j===0?n.addLane(A(E.id)[0],"top"):n.addLane(p(E.lanes[j-1].id),"bottom");n.updateProperties(Z,{id:$.id,name:$.name})})}const H=150,V=130,N=80,G=90,pe=180,ze=new Set;for(const E of d){ze.add(`pool:${E.participant.id}`);for(const C of E.participant.lanes??[])ze.add(C.id)}const lt=new Map;for(const E of h){const C=E.node.lane??`pool:${E.node.participant??""}`;let T=lt.get(C);T||lt.set(C,T=new Set([0])),E.band!==void 0&&T.add(E.band)}const Y=new Map;for(const[E,C]of lt){if(!ze.has(E))continue;const T=[...C].sort((j,Z)=>j-Z),B=T.map((j,Z)=>Z===0?0:Z%2===1?Math.ceil(Z/2):-(Z/2)),$=Math.min(...B);Y.set(E,new Map(T.map((j,Z)=>[j,B[Z]-$])))}{const E=new Map;for(const C of d)(C.participant.lanes??[]).forEach((T,B)=>E.set(T.id,B));for(const[C,T]of Y){if(!E.has(C)||T.size<2)continue;const B=E.get(C),$=T.get(0)??0,j=new Set;for(const Fe of h){if(Fe.node.lane!==C||(Fe.band??0)!==0||!Fe.node.type.endsWith("Gateway"))continue;const Me={in:new Set,out:new Set,cross:new Set};for(const ve of m){const et=ve.flow.source===Fe.node.id;if(!et&&ve.flow.target!==Fe.node.id)continue;const It=S.get(et?ve.flow.target:ve.flow.source);if(!It||It.node.participant!==Fe.node.participant||!It.node.lane)continue;let wn,Ut=!1;if(It.node.lane!==C){const Nt=E.get(It.node.lane);if(Nt===void 0)continue;wn=Nt>B?"down":"up",Ut=!0}else{const Nt=T.get(It.band??0)??$;wn=Nt>$?"down":Nt<$?"up":void 0}wn&&(Me[et?"out":"in"].add(wn),Ut&&Me.cross.add(wn))}for(const ve of["up","down"])Me.in.has(ve)&&Me.out.has(ve)&&Me.cross.has(ve)&&j.add(ve)}if(j.size!==1)continue;const[Z]=j,J=Math.max(...T.values()),ne=Z==="down"?J:0;if($===ne)continue;const se=[...T.entries()].filter(([Fe])=>Fe!==0).sort((Fe,Me)=>Fe[1]-Me[1]),Ve=[...Array(J+1).keys()].filter(Fe=>Fe!==ne),Je=new Map([[0,ne]]);se.forEach(([Fe],Me)=>Je.set(Fe,Ve[Me])),Y.set(C,Je)}}const fe=E=>{var C;return(((C=lt.get(E))==null?void 0:C.size)??0)>1},de=E=>E.band??(E.node.lane||!fe(`pool:${E.node.participant??""}`)?void 0:0),ue=new Map,le=E=>ue.get(E.node.id)??de(E),te=new Set,z=new Set;{const E=new Map;for(const B of m)E.set(B.flow.target,(E.get(B.flow.target)??0)+1);const C=B=>{const $=[],j=new Set([B]),Z=[B];for(;Z.length;){const J=Z.shift();$.push(J);for(const ne of m)ne.flow.source!==J||j.has(ne.flow.target)||(E.get(ne.flow.target)??0)!==1||(j.add(ne.flow.target),Z.push(ne.flow.target))}return $},T=(B,$)=>{var j;return((j=Y.get(B))==null?void 0:j.get($))??$};for(const B of h){if(!B.node.type.endsWith("Gateway"))continue;const $=B.node.lane??`pool:${B.node.participant??""}`,j=Y.get($);if(!j||j.size<2)continue;const Z=le(B);if(Z===void 0||T($,Z)!==T($,0))continue;const J=T($,Z),ne=m.filter(ve=>ve.flow.source===B.node.id).map(ve=>S.get(ve.flow.target)).filter(ve=>!!ve&&(ve.node.lane??`pool:${ve.node.participant??""}`)===$),se=ne.filter(ve=>{const et=le(ve);return et!==void 0&&T($,et)===J&&(E.get(ve.node.id)??0)===1}),Ve=ne.some(ve=>{const et=le(ve);return et!==void 0&&T($,et)>J});if(se.length!==1||!Ve)continue;const Je=new Set(ne.flatMap(ve=>C(ve.node.id)));if(!m.some(ve=>ve.flow.target===B.node.id&&Je.has(ve.flow.source)))continue;const Me=new Map;for(const[ve,et]of j)Me.set(ve,et+1);Me.set(-1,0),Y.set($,Me);for(const ve of C(se[0].node.id))S.has(ve)&&(ue.set(ve,-1),z.add(ve));te.add(B.node.id)}}const F=(E,C)=>{var T;return((T=Y.get(E))==null?void 0:T.get(C))??C},U=new Map;for(const[E,C]of lt){let T=0;for(const B of C)T=Math.max(T,F(E,B));U.set(E,T)}const Oe=E=>pe+H*E,Ot=d.map((E,C)=>({op:E,declared:C}));Ot.sort((E,C)=>{const T=E.op.order??Number.POSITIVE_INFINITY,B=C.op.order??Number.POSITIVE_INFINITY;return T!==B?T-B:E.declared-C.declared});let P=80;for(const E of o.getAll())E.parent===u()&&"height"in E&&typeof E.y=="number"&&(P=Math.max(P,E.y+E.height+60));for(const{op:E}of Ot){const C=E.participant,T=h.filter(Fe=>Fe.node.participant===C.id).length,B=((Rx=C.lanes)==null?void 0:Rx.length)??0,$=Math.max(1200,T*160+300),j=(C.lanes??[]).map(Fe=>Oe(U.get(Fe.id)??0)),Z=j.reduce((Fe,Me)=>Fe+Me,0);B&&Z<300&&(j[B-1]+=300-Z);const J=Math.max(300,H*((U.get(`pool:${C.id}`)??0)+1)),ne=C.blackBox||T+B===0?120:B?Math.max(300,Z):J,se=r.createShape({type:"bpmn:Participant",businessObject:i.create("bpmn:Participant",{id:C.id,name:C.name,...E.order!==void 0?{"bwl:poolOrder":E.order}:{},...C.blackBox?{}:{processRef:i.create("bpmn:Process")}}),width:$,height:ne,isExpanded:!0}),Ve=n.createShape(se,{x:100+$/2,y:P+ne/2},u()),Je=C.lanes??[];if(Je.length&&n.splitLane(Ve,Je.length),Je.length){const Fe=o.filter(Me=>{var ve;return Me.type==="bpmn:Lane"&&((ve=f(Me))==null?void 0:ve.id)===C.id}).sort((Me,ve)=>Me.y-ve.y);if(Fe.forEach((Me,ve)=>{const et=Je[ve];et&&n.updateProperties(Me,{id:et.id,name:et.name})}),j.some(Me=>Me!==Ve.height/B)){let Me=Ve.y;Fe.forEach((ve,et)=>{const It=j[et];n.resizeShape(ve,{x:ve.x,y:Me,width:ve.width,height:It}),Me+=It})}}P=Ve.y+Ve.height+60}const _=E=>{var B;const C=S.get(E);if(C)return C.node.participant??"";const T=l(E);return T?T.type==="bpmn:Participant"?T.id:((B=f(T))==null?void 0:B.id)??"":""},y=new Map,O=E=>{let C=y.get(E);return C||y.set(E,C={nodes:[],flows:[]}),C};for(const E of h)O(E.node.participant??"").nodes.push(E);for(const E of m)O(_(E.flow.source)).flows.push(E);const I=E=>{var C;return i.create("bpmn:SequenceFlow",{id:E.id,name:E.name??((C=E.condition)==null?void 0:C.label)})},W=(E,C)=>r.createShape({type:hs(E.type),businessObject:i.create(hs(E.type),{id:E.id,name:E.name,...C!==void 0?{"bwl:band":C}:{}})}),ce=[...Ot.map(({op:E})=>E.participant.id).filter(E=>y.has(E)),...[...y.keys()].filter(E=>!d.some(C=>C.participant.id===E))],Pe=E=>E.endsWith("Gateway");for(const E of ce){const C=y.get(E),T=E?p(E):void 0,B=T?T.x+150:250;let $=T?T.y+80:120;const j=(Ne,Ie,re)=>{const ye=u().children.filter(me=>!("waypoints"in me&&me.waypoints)&&me.id!==Ie&&typeof me.y=="number"&&me.y>=Ne);ye.length&&n.moveElements(ye,{x:0,y:re})},Z=(Ne,Ie)=>{if(Ne){const Be=p(Ne),Ze=Oe(Ie);if(Be.height>=Ze)return;const qt=Ze-Be.height,ee=f(Be),Ke=ee?ee.y+ee.height:Be.y+Be.height;n.resizeLane(Be,{x:Be.x,y:Be.y,width:Be.width,height:Ze},!1),j(Ke,ee==null?void 0:ee.id,qt);return}if(!T)return;const re=H*(Ie+1);if(T.height>=re)return;const ye=re-T.height,me=T.y+T.height;n.resizeShape(T,{x:T.x,y:T.y,width:T.width,height:re}),j(me,T.id,ye)},J=(Ne,Ie,re)=>{if(Ne){const ye=p(Ne);return ye.y+Math.min(ye.height/2,G)+F(Ne,Ie??0)*H}return Ie!==void 0&&T?T.y+N+F(`pool:${E}`,Ie)*H:re},ne=(Ne,Ie,re)=>{if(Ne){const ye=p(Ne);return ye.y+Math.min(ye.height/2,G)+Ie*H}return T?T.y+N+Ie*H:re},se=Ne=>Ne.participant?p(Ne.participant):u(),Ve=30,Je=(Ne,Ie,re,ye)=>{const me=re-Ie.width/2,Be=ye-Ie.height/2;return(Ne.children??[]).find(Ze=>!("waypoints"in Ze&&Ze.waypoints)&&Ze.type!=="bpmn:Lane"&&Ze.type!=="label"&&typeof Ze.x=="number"&&me<Ze.x+Ze.width+Ve&&me+Ie.width+Ve>Ze.x&&Be<Ze.y+Ze.height&&Be+Ie.height>Ze.y)},Fe=(Ne,Ie,re,ye,me,Be)=>{const Ze=re!==void 0||ye!==void 0,qt=F(re??`pool:${E}`,ye??0);if(Ze)for(let Ae=0;Ae<4;Ae++){const Te=ne(re,qt+Ae,Be);if(!Je(Ne,Ie,me,Te))return Z(re,qt+Ae),{x:me,y:Te}}const ee=J(re,ye,Be);Ze&&Z(re,qt);let Ke=me;for(let Ae=0;Ae<64;Ae++){const Te=Je(Ne,Ie,Ke,ee);if(!Te)break;Ke=Te.x+Te.width+V+Ie.width/2}return{x:Ke,y:ee}},Me=new Set(C.flows.map(Ne=>Ne.flow.target)),ve=new Map;for(const Ne of C.nodes){if(Me.has(Ne.node.id))continue;const Ie=W(Ne.node,Ne.band),re=de(Ne),ye=Ne.node.lane?`${Ne.node.lane}|${re??""}`:re!==void 0?`band:${re}`:"",me=se(Ne.node),Be=Fe(me,Ie,Ne.node.lane,re,ve.get(ye)??B,$);n.createShape(Ie,Be,me),ve.set(ye,Be.x+Ie.width+V),!Ne.node.lane&&re===void 0&&($+=160)}const et=new Set,It=new Map,wn=new Map,Ut=new Map;if(E&&ze.has(`pool:${E}`)){const Ne=new Map;for(const ee of C.flows)Ne.set(ee.flow.target,(Ne.get(ee.flow.target)??0)+1);const Ie=ee=>J(ee.node.lane,le(ee),Number.NaN),re=new Set,ye=ee=>{var Te;const Ke=(Te=S.get(ee))==null?void 0:Te.node.participant;if(Ke)return l(Ke);const Ae=l(ee);if(Ae)return Ae.type==="bpmn:Participant"?Ae:f(Ae)},me=ee=>{const Ke=[],Ae=new Set([ee]),Te=[ee];for(;Te.length;){const ft=Te.shift(),Qe=S.get(ft);Qe&&Ke.push(Qe);for(const Ee of C.flows)Ee.flow.source!==ft||Ae.has(Ee.flow.target)||(Ne.get(Ee.flow.target)??0)!==1||(Ae.add(Ee.flow.target),Te.push(Ee.flow.target))}return Ke},Be=ee=>{if(!T)return;const Ke=new Set(ee.map(ft=>ft.node.id));let Ae=!1,Te=!1;for(const ft of g){if(!Ke.has(ft.flow.source))continue;const Qe=ye(ft.flow.target);!Qe||Qe.id===T.id||(Qe.y<T.y?Ae=!0:Te=!0)}return Ae&&!Te?"up":Te&&!Ae?"down":void 0};for(const ee of C.nodes){if(!Pe(ee.node.type))continue;const Ke=J(ee.node.lane,de(ee),Number.NaN);if(Number.isNaN(Ke))continue;const Ae=[];for(const Ee of C.flows){if(Ee.flow.source!==ee.node.id)continue;const Ge=S.get(Ee.flow.target);if(!Ge||Ge.node.lane!==ee.node.lane||(Ne.get(Ge.node.id)??0)!==1)continue;const tt=de(Ge);if(tt===void 0)continue;const yn=J(Ge.node.lane,tt,Number.NaN);if(Number.isNaN(yn))continue;const Kr=me(Ge.node.id),Kt=Be(Kr);Kt&&Ae.push({subtree:Kr,band:tt,row:yn,dir:Kt})}if(!Ae.some(Ee=>Ee.dir==="up")||!Ae.some(Ee=>Ee.dir==="down")||!Ae.some(Ee=>Ee.dir==="up"&&Ae.some(Ge=>Ge.dir==="down"&&Ge.row<Ee.row)))continue;const ft=[...Ae].sort((Ee,Ge)=>Ee.row-Ge.row);[...Ae.filter(Ee=>Ee.dir==="up"),...Ae.filter(Ee=>Ee.dir==="down")].sort((Ee,Ge)=>Ee.dir===Ge.dir?Ee.row-Ge.row:Ee.dir==="up"?-1:1).forEach((Ee,Ge)=>{const tt=ft[Ge].band;if(tt!==Ee.band){re.add(ee.node.id);for(const yn of Ee.subtree)de(yn)===Ee.band&&ue.set(yn.node.id,tt)}})}const Ze=ee=>{if(!T)return;const Ke=new Set(ee.map(ft=>ft.node.id));let Ae=!1,Te=!1;for(const ft of g){if(!Ke.has(ft.flow.target))continue;const Qe=ye(ft.flow.source);!Qe||Qe.id===T.id||(Qe.y<T.y?Ae=!0:Te=!0)}return Ae&&!Te?"up":Te&&!Ae?"down":void 0};for(const ee of C.nodes){if(!Pe(ee.node.type))continue;const Ke=ee.node.lane??`pool:${E}`,Ae=Y.get(Ke);if(!Ae||Ae.size<2)continue;const Te=Ae.get(0);if(Te===void 0)continue;const ft=Math.max(...Ae.values()),Qe=Te===ft&&Te!==0?"down":void 0;if(!Qe)continue;const Ee=[];for(const Kt of C.flows){if(Kt.flow.source!==ee.node.id)continue;const ni=S.get(Kt.flow.target);if(!ni||ni.node.lane!==ee.node.lane||(Ne.get(ni.node.id)??0)!==1)continue;const kx=le(ni);kx!==void 0&&Ee.push({t:ni,subtree:me(ni.node.id),band:kx})}const Ge=Ee.find(Kt=>(Ae.get(Kt.band)??Kt.band)===Te);if(!Ge||Ze(Ge.subtree)===Qe||Be(Ge.subtree)===Qe)continue;const tt=Ee.find(Kt=>Kt!==Ge&&Ze(Kt.subtree)===Qe);if(!tt)continue;const yn=Ge.band,Kr=tt.band;for(const Kt of Ge.subtree)le(Kt)===yn&&ue.set(Kt.node.id,Kr);for(const Kt of tt.subtree)le(Kt)===Kr&&ue.set(Kt.node.id,yn);re.add(ee.node.id)}for(const ee of C.nodes){if(!Pe(ee.node.type))continue;const Ke=Ie(ee);if(Number.isNaN(Ke)||b.some(Ee=>{var Ge,tt;return(((Ge=Ee.placement)==null?void 0:Ge.anchor)??(Ee.association?Ee.association.source===Ee.annotation.id?Ee.association.target:Ee.association.source:void 0))===ee.node.id&&((tt=Ee.placement)==null?void 0:tt.side.startsWith("bottom"))}))continue;let Te,ft=!1,Qe;for(const Ee of C.flows){if(Ee.flow.source!==ee.node.id)continue;const Ge=S.get(Ee.flow.target);if(!Ge||!Ge.node.lane&&de(Ge)===void 0)continue;const tt=Ie(Ge);Number.isNaN(tt)||(Math.abs(tt-Ke)<.5&&(ft=!0),tt>Ke?!Te||tt>Te.row?Te={id:Ge.node.id,row:tt,count:1}:tt===Te.row&&Te.count++:tt<Ke&&Ge.node.lane===ee.node.lane&&(!Qe||tt>Qe.row?Qe={op:Ge,row:tt,count:1}:tt===Qe.row&&Qe.count++))}Te&&Te.count===1&&(Ne.get(Te.id)??0)===1&&!re.has(ee.node.id)&&et.add(Te.id),!ft&&Qe&&Qe.count===1&&(Ne.get(Qe.op.node.id)??0)===1&&!te.has(ee.node.id)&&It.set(Qe.op.node.id,{lane:ee.node.lane,band:le(ee)})}const qt=new Map;for(const ee of g)qt.set(ee.flow.target,[...qt.get(ee.flow.target)??[],ee]);for(const ee of C.nodes){const Ke=qt.get(ee.node.id);if(!Ke||Ke.length!==1||!Ne.get(ee.node.id)||!ee.node.lane&&de(ee)===void 0||z.has(ee.node.id))continue;const Ae=(Cx=S.get(Ke[0].flow.source))==null?void 0:Cx.node.participant,Te=Ae?l(Ae):void 0;if(!Te||!T||Te.id===T.id)continue;const ft=ee.node.lane??`pool:${E}`,Qe=Y.get(ft);if(!Qe)continue;const Ee=Qe.get(0)??0,Ge=(Qe.get(le(ee)??0)??Ee)-Ee;if(Ge===0)continue;const tt=Te.y<T.y;if(tt&&Ge<0||!tt&&Ge>0)continue;let yn;for(const[Kr,Kt]of Qe){const ni=Kt-Ee;(tt&&ni<0&&(!yn||ni<yn.row)||!tt&&ni>0&&(!yn||ni>yn.row))&&(yn={band:Kr,row:ni})}yn&&wn.set(ee.node.id,{lane:ee.node.lane,band:yn.band})}}const Nt=new Set;let Bn=0;for(;Bn++<C.nodes.length+2;){for(let re=0;re<C.nodes.length+C.flows.length+2;re++){let ye=!1;for(const me of C.flows){const Be=me.flow;if(Nt.has(Be.id))continue;const Ze=l(Be.source);if(!Ze)continue;const qt=l(Be.target),ee=S.get(Be.target);if(!qt&&ee){const Ke=W(ee.node,ee.band),Ae=le(ee);if(ee.node.lane||Ae!==void 0){const Te=se(ee.node),ft=Ze,Qe=ft.x+(Ut.get(Be.source)??0)+ft.width+V,Ee=It.get(Be.target)??wn.get(Be.target),Ge=Fe(Te,Ke,Ee?Ee.lane:ee.node.lane,Ee?Ee.band:Ae,et.has(Be.target)?ft.x+ft.width/2:Qe,Number.NaN),tt=n.createShape(Ke,Ge,Te);et.has(Be.target)&&Ut.set(Be.target,Qe-(tt.x+tt.width/2)),n.connect(Ze,tt,{type:"bpmn:SequenceFlow",businessObject:I(Be)})}else s.append(Ze,Ke,{connection:{type:"bpmn:SequenceFlow",businessObject:I(Be)}})}else if(qt)n.connect(Ze,qt,{type:"bpmn:SequenceFlow",businessObject:I(Be)});else continue;Nt.add(Be.id),ye=!0}if(!ye)break}const Ne=C.nodes.filter(re=>!l(re.node.id));if(!Ne.length)break;const Ie=Ne[0];{const re=W(Ie.node,Ie.band),ye=se(Ie.node),me=de(Ie);n.createShape(re,Fe(ye,re,Ie.node.lane,me,B,$),ye),!Ie.node.lane&&me===void 0&&($+=160)}}}const qe=40,pt=(E,C=()=>!0)=>{const T=l(E);if(!T)return[];const B=[T],$=new Set([E]);for(let j=0;j<B.length;j++){const Z=B[j].id;for(const J of m){const ne=J.flow.target;if(J.flow.source!==Z||$.has(ne)||!S.has(ne))continue;$.add(ne);const se=l(ne);se&&C(se)&&B.push(se)}}return B},it=(E,C=()=>!0)=>{const T=l(E);if(!T)return[];const B=[T],$=new Set([E]);for(let j=0;j<B.length;j++){const Z=B[j].id;for(const J of m){const ne=J.flow.source;if(J.flow.target!==Z||$.has(ne)||!S.has(ne))continue;$.add(ne);const se=l(ne);se&&C(se)&&B.push(se)}}return B};for(const E of Xt(e,"sequenceFlow.update")){if(E.target===void 0)continue;const C=S.get(E.target);if(!C)continue;const T=l(E.target),B=l(E.id);if(!T||!B)continue;const $=E.source!==void 0?l(E.source):B.source,j=B.target;if(!$||!j||j.id===T.id)continue;const Z=pt(E.target),J=new Set(Z.map(Me=>Me.id)),ne=Math.min(...Z.map(Me=>Me.x)),se=Math.max(...Z.map(Me=>Me.x+Me.width)),Ve=$.x+$.width,Je=se-ne+qe*2-(j.x-Ve);if(Je>0){const Me=f(T),ve=(Me==null?void 0:Me.children)??[],et=Ut=>Ut.type==="bpmn:Lane",It=ve.filter(Ut=>!("waypoints"in Ut&&Ut.waypoints)&&!et(Ut)&&!J.has(Ut.id)&&Ut.x>=j.x),wn=Me?[Me,...ve.filter(Ut=>et(Ut))]:[];It.length&&n.createSpace(It,wn,{x:Je,y:0},"e",j.x-1)}const Fe=C.node.lane||C.band!==void 0?T.y+T.height/2:$.y+$.height/2;n.moveElements(Z,{x:Ve+qe-ne,y:Fe-(T.y+T.height/2)})}const Dt=(E,C)=>{const T=C.target===E,B=p(C.source),$=p(C.target),j=T?"bpmn:DataOutputAssociation":"bpmn:DataInputAssociation";n.connect(B,$,C.id?{type:j,businessObject:i.create(j,{id:C.id})}:{type:j})},un=100,ln=E=>{for(const C of d){if(!C.participant.blackBox)continue;const T=l(C.participant.id);if(!T)continue;const B=[];for(const j of g){const Z=j.flow.source===C.participant.id?j.flow.target:j.flow.target===C.participant.id?j.flow.source:void 0,J=Z?l(Z):void 0;J&&typeof J.x=="number"&&J.type!=="bpmn:Participant"&&B.push(J)}if(!B.length)continue;const $=Math.max(...B.map(j=>j.x+j.width/2))+un;if($>T.x+T.width&&n.resizeShape(T,{x:T.x,y:T.y,width:$-T.x,height:T.height}),!!E)for(const j of g){const Z=l(j.flow.id),J=j.flow.source===C.participant.id?j.flow.target:j.flow.target===C.participant.id?j.flow.source:void 0,ne=J?l(J):void 0;if(!Z||!ne||ne.type==="bpmn:Participant")continue;const se=ne.x+ne.width/2;if(se<T.x+10||se>T.x+T.width-10)continue;const Ve=T.y>ne.y,Je=Ve?ne.y+ne.height:ne.y,Fe=Ve?T.y:T.y+T.height,Me=j.flow.source===C.participant.id?[{x:se,y:Fe},{x:se,y:Je}]:[{x:se,y:Je},{x:se,y:Fe}],ve=$t(o),et={...ve.edges.find(It=>It.id===j.flow.id),waypoints:Me};Vn(et,Pi(ve)).length||n.updateWaypoints(Z,Me)}}};ln(!1);for(const E of g){const C=E.flow;n.connect(p(C.source),p(C.target),{type:"bpmn:MessageFlow",businessObject:i.create("bpmn:MessageFlow",{id:C.id,name:C.name})})}const st=100,Lt=30,pn=4,Fo=E=>!("waypoints"in E&&E.waypoints)&&E.type!=="bpmn:Lane"&&E.type!=="label"&&typeof E.x=="number",fn=()=>{const E=$t(o);return{bad:Xi(E).filter(C=>C.kind==="edge-crosses-shape"||C.kind==="edge-overlap-opposite"||C.kind==="edge-overlap-mixed").length,crossings:Cd(E),straight:E.edges.filter(C=>C.type==="bpmn:MessageFlow"&&C.waypoints.length===2).length}},In=E=>{const C=$t(o),T=C.edges.find(B=>B.id===E);return T?Vn(T,Pi(C)).length:0},Nn=E=>In(E)>0,wt=E=>$t(o).edges.filter(C=>C.type==="bpmn:MessageFlow"&&C.id!==E&&C.waypoints.length===2).length,Gi=(E,C,T)=>{const B=new Set(E.map(se=>se.id)),$=(C.children??[]).filter(Fo).filter(se=>!B.has(se.id));if(E.some(se=>$.some(Ve=>se.x+T<Ve.x+Ve.width+Lt&&se.x+T+se.width+Lt>Ve.x&&se.y<Ve.y+Ve.height&&se.y+se.height>Ve.y)))return null;const Z=C.width;n.moveElements(E,{x:T,y:0});const ne=Math.max(...E.map(se=>se.x+se.width))+150-(C.x+C.width);return ne>0&&n.resizeShape(C,{x:C.x,y:C.y,width:C.width+ne,height:C.height}),()=>{n.moveElements(E,{x:-T,y:0}),ne>0&&n.resizeShape(C,{x:C.x,y:C.y,width:Z,height:C.height})}},qa=(E,C)=>C.bad>E.bad||C.crossings>E.crossings&&C.straight<=E.straight&&C.bad>=E.bad,xn=(E,C,T,B=()=>!0)=>{const $=fn(),j=Gi(E,C,T);if(!j)return!1;const Z=fn();return qa($,Z)||!B()?(j(),!1):!0},Ye=E=>{var C;return!!((C=S.get(E))!=null&&C.node.participant)},Xe=new Map;for(const E of g){if(!Ye(E.flow.target))continue;const C=Xe.get(E.flow.target)??[];C.push(E),Xe.set(E.flow.target,C)}const Bf=[...Xe.keys()],mx=new Set(m.map(E=>E.flow.target)),gx=E=>Ot.findIndex(({op:C})=>C.participant.id===E);Bf.sort((E,C)=>{var $,j;const T=mx.has(E)?1:0,B=mx.has(C)?1:0;return T!==B?T-B:gx(($=S.get(E))==null?void 0:$.node.participant)-gx((j=S.get(C))==null?void 0:j.node.participant)});const _u=E=>E.x+E.width/2,qO=E=>{const C=new Map;for(const $ of o.getAll()){const j=$;if(!j.waypoints||!j.source||!j.target)continue;(C.get(j.source.id)??C.set(j.source.id,[]).get(j.source.id)).push(j.target.id)}const T=new Set([E]),B=[E];for(let $=0;$<B.length;$++)for(const j of C.get(B[$])??[])T.has(j)||(T.add(j),B.push(j));return T},KO=(E,C)=>{const T=qO(C);let B;for(const $ of o.getAll()){const j=$;if(j.type!=="bpmn:MessageFlow"||!j.source||!j.target||j.target.id!==E||T.has(j.source.id))continue;const Z=j.source;if(typeof Z.x!="number"||Z.type==="bpmn:Participant")continue;const J=_u(Z);(B===void 0||J>B)&&(B=J)}return B},$f=(E,C)=>{const T=l(E.flow.source);if(T)return T.type==="bpmn:Participant"?KO(T.id,C):_u(T)},yx=E=>{let C;for(const T of Xe.get(E)??[]){const B=$f(T,E);B!==void 0&&(!C||B>C.cx)&&(C={op:T,cx:B})}return C==null?void 0:C.op},XO=E=>{const C=yx(E),T=l(E),B=C?$f(C,E):void 0;return T&&B!==void 0?B-_u(T):void 0},ZO=E=>{const C=XO(E);return C!==void 0&&Math.abs(C)<st},jf=E=>{const C=yx(E);if(!C)return null;const T=l(E),B=l(C.flow.source),$=$f(C,E);if(!T||!B||$===void 0)return null;const j=$-_u(T);if(j>=st){const Z=p(S.get(E).node.participant);return{subtree:pt(E,J=>J.x>=T.x),pool:Z,dx:j}}if(-j>=st&&Ye(C.flow.source)){const Z=p(S.get(C.flow.source).node.participant);return{subtree:pt(C.flow.source,J=>J.x>=B.x&&!ZO(J.id)),pool:Z,dx:-j}}return null},vx=()=>Bf.map(E=>({id:E,plan:jf(E)})).filter(E=>!!E.plan).sort((E,C)=>Math.min(...E.plan.subtree.map(T=>T.x))-Math.min(...C.plan.subtree.map(T=>T.x))).map(E=>E.id);for(let E=0;E<3;E++){const C=fn(),T=[];for(const $ of vx()){const j=jf($);if(!j)continue;const Z=Gi(j.subtree,j.pool,j.dx);Z&&T.push(Z)}if(!T.length)break;if(!qa(C,fn()))continue;for(const $ of T.reverse())$();let B=!1;for(const $ of vx()){const j=jf($);j&&xn(j.subtree,j.pool,j.dx)&&(B=!0)}if(!B)break}for(const E of Bf.flatMap(C=>Xe.get(C)??[])){if(!Nn(E.flow.id))continue;const C=l(E.flow.target);if(!C)continue;const T=p(S.get(E.flow.target).node.participant),B=pt(E.flow.target,J=>J.x>=C.x),$=C.width+V,j=In(E.flow.id),Z=wt(E.flow.id);for(let J=1;J<=pn;J++){const ne=()=>In(E.flow.id)<j&&wt(E.flow.id)>=Z;if(xn(B,T,$*J,ne))break}}for(const E of g){if(!Nn(E.flow.id))continue;const C=l(E.flow.source),T=l(E.flow.target);if(!C||!T||C.type==="bpmn:Participant"||T.type==="bpmn:Participant")continue;const B=C.x+C.width/2;if(Math.abs(B-(T.x+T.width/2))>15)continue;const[$,j]=C.y<T.y?[C.y+C.height,T.y]:[T.y+T.height,C.y],Z=[...S.values()].map(J=>l(J.node.id)).filter(J=>!!J&&J.id!==C.id&&J.id!==T.id).filter(J=>J.x<=B&&B<=J.x+J.width&&J.y+J.height>$&&J.y<j).sort((J,ne)=>J.x-ne.x);for(const J of Z){const ne=(Px=S.get(J.id))==null?void 0:Px.node.participant,se=ne?l(ne):void 0;if(!se)continue;const Ve=[...S.values()].filter(Nt=>Nt.node.participant===ne).map(Nt=>Nt.node.id),Je=Nt=>Nt.map(Bn=>l(Bn)).filter(Bn=>!!Bn),Me=[it(J.id,Nt=>{var Bn;return((Bn=S.get(Nt.id))==null?void 0:Bn.node.participant)===ne}),Je(Ve)].filter(Nt=>Nt.length),ve=J.width+V,et=In(E.flow.id),It=wt(E.flow.id),wn=()=>In(E.flow.id)<et&&wt(E.flow.id)>=It;let Ut=!1;for(const Nt of Me){for(let Bn=1;Bn<=pn;Bn++)if(xn(Nt,se,ve*Bn,wn)){Ut=!0;break}if(Ut)break}if(!Nn(E.flow.id))break}}{const E=T=>T.y+T.height/2,C=[];for(const T of S.keys()){if(!Ye(T))continue;const B=m.filter(Z=>Z.flow.target===T);if(B.length!==1)continue;const $=l(B[0].flow.source),j=l(T);!$||!j||!S.has($.id)||Math.abs(E($)-E(j))>1||j.x-($.x+$.width)<=V+1||C.push({id:T,pred:$,node:j})}C.sort((T,B)=>T.node.x-B.node.x);for(const{id:T}of C){const B=S.get(T),$=l(T),j=l(m.find(Fe=>Fe.flow.target===T).flow.source);if(!$||!j)continue;const Z=$.x-(j.x+j.width);if(Z<=V+1)continue;const J=p(B.node.participant),ne=pt(T,Fe=>Fe.x>=$.x),se=fn(),Ve=Gi(ne,J,-(Z-V));if(!Ve)continue;const Je=fn();(Je.bad>se.bad||Je.crossings>=se.crossings||Je.straight<se.straight)&&Ve()}}ln(!0);for(const E of R){const C=E.associations??[],T=C.map(j=>j.source===E.dataStore.id?j.target:j.source).map(l).find(Boolean),B=T?f(T)??u():u(),$=T?{x:T.x+T.width/2,y:T.y+T.height+110}:{x:200,y:P+60};n.createShape({type:"bpmn:DataStoreReference",businessObject:i.create("bpmn:DataStoreReference",{id:E.dataStore.id,name:E.dataStore.name})},$,B);for(const j of C)Dt(E.dataStore.id,j)}for(const E of w){const T=p(E.association.target).type==="bpmn:DataStoreReference"?E.association.target:E.association.source;Dt(T,E.association)}let _x=0;const QO=10,bx=(E,C)=>{for(const T of C.map(B=>f(B)).filter(B=>!!B)){const B=QO,$=T.y,j=T.y+T.height,Z=T.x,J=T.x+T.width;if(Math.abs(E.y-$)<B){const ne=$+B-E.y;E.y+=ne,E.height-=ne}if(Math.abs(E.y+E.height-j)<B&&(E.height=j-B-E.y),Math.abs(E.x-Z)<B){const ne=Z+B-E.x;E.x+=ne,E.width-=ne}Math.abs(E.x+E.width-J)<B&&(E.width=J-B-E.x)}};for(const E of x){const C=(E.group.members??[]).map(l).filter(j=>!!j),T=40;let B;if(C.length){const j=Math.min(...C.map(se=>se.x))-T,Z=Math.min(...C.map(se=>se.y))-T,J=Math.max(...C.map(se=>se.x+se.width))+T,ne=Math.max(...C.map(se=>se.y+se.height))+T;B={x:j,y:Z,width:J-j,height:ne-Z},bx(B,C)}else B={x:300+_x*350,y:40,width:300,height:200},_x++;const $=n.createShape({type:"bpmn:Group",businessObject:i.create("bpmn:Group",{id:E.group.id}),width:B.width,height:B.height},{x:B.x+B.width/2,y:B.y+B.height/2},u());E.group.name&&n.updateLabel($,E.group.name),(Ax=E.group.members)!=null&&Ax.length&&M($,"bwl:Members",{refs:E.group.members.join(" ")})}const xx=E=>{const C=E.waypoints;if(C!=null&&C.length){const B=C[Math.floor((C.length-1)/2)];return{x:B.x,y:B.y,width:0,height:0}}const T=E;return{x:T.x,y:T.y,width:T.width,height:T.height}},wx=(E,C,T,B)=>{const $=C,j=(re,ye)=>{const[me,Be]=Uu[re];let Ze={x:E.x+E.width/2+me*(E.width/2+$.width/2+ye),y:E.y+E.height/2+Be*(E.height/2+$.height/2+ye)};const qt=T.x+tn+$.width/2,ee=T.x+T.width-tn-$.width/2,Ke=T.y+tn+$.height/2,Ae=T.y+T.height-tn-$.height/2,Te={x:Math.min(ee,Math.max(qt,Ze.x)),y:Math.min(Ae,Math.max(Ke,Ze.y))};return(Te.x!==Ze.x||Te.y!==Ze.y)&&(Ze=Math.abs(Te.x-(E.x+E.width/2))<(E.width+$.width)/2+tn&&Math.abs(Te.y-(E.y+E.height/2))<(E.height+$.height)/2+tn?{x:E.x+E.width+tn+$.width/2,y:Te.y}:Te),Ze},Z=(T.children??[]).filter(re=>!("waypoints"in re&&re.waypoints)&&re.type!=="bpmn:Lane"&&re.type!=="label"&&typeof re.x=="number"&&re.id!==B.selfId),J=$t(o),ne=re=>{var me,Be;if(!B.selfId)return!1;const ye=o.get(re);return!!ye&&(((me=ye.source)==null?void 0:me.id)===B.selfId||((Be=ye.target)==null?void 0:Be.id)===B.selfId)},se=J.edges.filter(re=>!ne(re.id)).flatMap(hn),Ve=Uo(J).filter(re=>re.owner!==B.selfId).map(re=>re.rect),Je=re=>({x0:re.x-$.width/2-tn,x1:re.x+$.width/2+tn,y0:re.y-$.height/2-tn,y1:re.y+$.height/2+tn}),Fe=re=>{const ye=Je(re);return Z.some(me=>ye.x0<me.x+me.width&&ye.x1>me.x&&ye.y0<me.y+me.height&&ye.y1>me.y)},Me=re=>{const ye=Je(re);return se.some(me=>me.axis==="h"?me.at>ye.y0&&me.at<ye.y1&&me.lo<ye.x1&&me.hi>ye.x0:me.at>ye.x0&&me.at<ye.x1&&me.lo<ye.y1&&me.hi>ye.y0)},ve=re=>{const ye=Je(re);return Ve.some(me=>ye.x0<me.x+me.width&&ye.x1>me.x&&ye.y0<me.y+me.height&&ye.y1>me.y)},et=re=>Fe(re)||Me(re)||ve(re),It=re=>re.x-$.width/2>=T.x&&re.x+$.width/2<=T.x+T.width&&re.y-$.height/2>=T.y&&re.y+$.height/2<=T.y+T.height;if(B.placement){const re=ee=>ee.startsWith("top")?ee.replace(/^top/,"bottom"):ee.replace(/^bottom/,"top"),ye=ee=>ee.endsWith("left")?ee.replace(/left$/,"right"):ee.replace(/right$/,"left"),me=B.placement.side,Be=[me,re(me),ye(me),re(ye(me)),"top","bottom","left","right","top-left","top-right","bottom-left","bottom-right"],Ze=B.placement.offset??50;let qt=j(me,Ze);if(et(qt)){const ee=new Set;for(const Ke of Be){if(ee.has(Ke))continue;ee.add(Ke);const Ae=j(Ke,Ze);if(It(Ae)&&!et(Ae)){qt=Ae;break}}}return qt}const wn=B.from,Ut=T.x+tn+$.width/2,Nt=T.x+T.width-tn-$.width/2,Bn=T.y+tn+$.height/2,Ne=T.y+T.height-tn-$.height/2;let Ie={x:Math.min(Nt,Math.max(Ut,wn.x)),y:Math.min(Ne,Math.max(Bn,wn.y))};if(et(Ie)){const re=(E.width+$.width)/2+tn,me=[{x:Ie.x+re,y:Ie.y},{x:Ie.x-re,y:Ie.y},{x:Ie.x,y:Ie.y-$.height-tn},{x:Ie.x,y:Ie.y+$.height+tn}].filter(It).find(Be=>!et(Be));me&&(Ie=me)}return Ie};let Ka=0;const Ex=12,Sx=14,JO=15,eD=300,tD=E=>{const C=E.split(`
|
|
7
|
-
`),T=Math.max(...C.map(j=>ro(j,Ex))),B=Math.max(100,Math.min(eD,Math.ceil(T)+Sx)),$=C.reduce((j,Z)=>j+Math.max(1,Math.ceil((ro(Z,Ex)+Sx)/B)),0);return{width:B,height:Math.max(30,$*JO+10)}},tn=10;for(const E of b){const C=E.association,T=((Tx=E.placement)==null?void 0:Tx.anchor)??(C?C.source===E.annotation.id?C.target:C.source:void 0),B=T?l(T):void 0,$=B?xx(B):void 0,j=tD(E.annotation.text??"");let Z;if($&&E.placement){const[Ve,Je]=Uu[E.placement.side],Fe=E.placement.offset??50;Z={x:$.x+$.width/2+Ve*($.width/2+j.width/2+Fe),y:$.y+$.height/2+Je*($.height/2+j.height/2+Fe)}}else $?(Z={x:$.x+$.width/2+180+Ka%3*260,y:$.y-110-Ka%2*95},Ka++):(Z={x:300+Ka*260,y:60},Ka++);const J=B?f(B)??u():u(),ne=J;$&&typeof ne.x=="number"&&typeof ne.width=="number"&&ne.type==="bpmn:Participant"&&(Z=wx($,j,ne,E.placement?{placement:E.placement}:{from:Z}));const se=n.createShape({type:"bpmn:TextAnnotation",width:j.width,height:j.height,businessObject:i.create("bpmn:TextAnnotation",{id:E.annotation.id,text:E.annotation.text})},Z,J);if(C){const Ve=Je=>Je===E.annotation.id?se:p(Je);n.connect(Ve(C.source),Ve(C.target),C.id?{type:"bpmn:Association",businessObject:i.create("bpmn:Association",{id:C.id})}:{type:"bpmn:Association"})}E.placement&&M(se,"bwl:Placement",L(E.placement))}for(const E of Xt(e,"association.add")){const C=E.association;n.connect(p(C.source),p(C.target),C.id?{type:"bpmn:Association",businessObject:i.create("bpmn:Association",{id:C.id})}:{type:"bpmn:Association"})}for(const E of Xt(e,"node.update")){let C=p(E.id);if(E.type&&hs(E.type)!==C.type&&(C=c.replaceElement(C,{type:hs(E.type)})),E.name!==void 0&&n.updateProperties(C,{name:E.name??void 0}),E.lane){const T=p(E.lane),B=T.y+T.height/2-(C.y+C.height/2);B!==0&&n.moveElements([C],{x:0,y:B})}}for(const E of Xt(e,"sequenceFlow.update")){const C=p(E.id);if(E.source!==void 0||E.target!==void 0){const T=C,B=E.source!==void 0?p(E.source):T.source,$=E.target!==void 0?p(E.target):T.target,j=Z=>({x:Z.x+Z.width/2,y:Z.y+Z.height/2});n.reconnect(T,B,$,[j(B),j($)])}E.name!==void 0&&n.updateProperties(C,{name:E.name??void 0}),E.condition!==void 0&&n.updateProperties(C,{name:((Mx=E.condition)==null?void 0:Mx.label)??void 0})}for(const E of Xt(e,"messageFlow.update"))E.name!==void 0&&n.updateProperties(p(E.id),{name:E.name??void 0});for(const E of Xt(e,"dataStore.update"))E.name!==void 0&&n.updateProperties(p(E.id),{name:E.name??void 0});for(const E of Xt(e,"annotation.update")){const C=p(E.id);if(E.text!==void 0&&n.updateProperties(C,{text:E.text}),E.placement===null)M(C,"bwl:Placement",null);else if(E.placement){const T=p(E.placement.anchor),B=xx(T),$=f(T)??u(),j=typeof $.x=="number"&&typeof $.width=="number"&&$.type==="bpmn:Participant",[Z,J]=Uu[E.placement.side],ne=E.placement.offset??50,se={x:B.x+B.width/2+Z*(B.width/2+C.width/2+ne),y:B.y+B.height/2+J*(B.height/2+C.height/2+ne)},Ve=j?wx(B,{width:C.width,height:C.height},$,{placement:E.placement,selfId:E.id}):se;n.moveElements([C],{x:Ve.x-(C.x+C.width/2),y:Ve.y-(C.y+C.height/2)}),M(C,"bwl:Placement",L(E.placement))}}for(const E of Xt(e,"group.update")){const C=p(E.id);if(E.name!==void 0&&n.updateLabel(C,E.name??""),E.members){const T=E.members.map(l).filter(B=>!!B);if(T.length){const $=Math.min(...T.map(se=>se.x))-40,j=Math.min(...T.map(se=>se.y))-40,Z=Math.max(...T.map(se=>se.x+se.width))+40,J=Math.max(...T.map(se=>se.y+se.height))+40,ne={x:$,y:j,width:Z-$,height:J-j};bx(ne,T),n.resizeShape(C,ne)}M(C,"bwl:Members",{refs:E.members.join(" ")})}}}function ah(e,t,n=oh){const i=rh(e),r=ih(t,Dd(i.elementRegistry)),o={edgeCrossings:{before:0,after:0,pairs:[]}};if(r.length)return{ok:!1,issues:r,findings:[],stats:o};const a=$t(i.elementRegistry),s=new Set(Xi(a).map(Ki)),c=new Set(a.edges.map(m=>m.id)),u=new Set(a.shapes.map(m=>m.id)),l=Vu(a).length,p=e.get("commandStack");try{Gf(p,()=>{n(t,i),zd(i,c),jd(i,s),qd(i,s,c),Ud(i,c),nE(i,c),Qd(i,s,c),Zd(i,c),eh(i,u)})}catch(m){return{ok:!1,issues:[{kind:"lower-failed",message:m instanceof Error?m.message:String(m)}],findings:[],stats:o}}const f=$t(i.elementRegistry),d=Xi(f).filter(m=>!s.has(Ki(m))),h=Vu(f);return{ok:!0,issues:[],findings:d,stats:{edgeCrossings:{before:l,after:h.length,pairs:h}}}}function cE(e){const t=e.slice(e.indexOf(":")+1);return t.charAt(0).toLowerCase()+t.slice(1)}function uE(e,t){return typeof e.get=="function"?e.get(t):e[t]}function sh(e,t){const n=uE(e,t);return typeof n=="number"&&Number.isFinite(n)?n:void 0}function ch(e,t){var i;return(((i=e.extensionElements)==null?void 0:i.values)??[]).find(r=>(r==null?void 0:r.$type)===t)}function lE(e){return typeof e=="string"&&xu.includes(e)}function ui(e){if(typeof e=="string")return e;const t=e==null?void 0:e.id;return typeof t=="string"?t:void 0}function uh(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:{}},p=[],f=[],d=[],h=[],m=[],g=[],R=new Set,w=new Set,b=Y=>{Y&&R.add(Y)},x=Y=>{R.add(Y),w.add(Y)},S=Y=>{const fe=ch(Y,"bwl:Placement");if(!fe)return;const de=typeof fe.anchor=="string"?fe.anchor:void 0;if(!de||!lE(fe.side))return;const ue=typeof fe.offset=="number"?fe.offset:void 0;m.push({owner:Y.id,anchor:de,side:fe.side,...ue!==void 0?{offset:ue}:{}})},M=Y=>{const fe=ch(Y,"bwl:Members"),de=typeof(fe==null?void 0:fe.refs)=="string"?fe.refs.split(/\s+/).filter(Boolean):[];de.length&&g.push({owner:Y.id,refs:de})},L=Y=>{var fe;for(const de of Y)switch(b(de.id),de.$type){case"bpmn:TextAnnotation":x(de.id),s.push({id:de.id,text:typeof de.text=="string"?de.text:""}),S(de);break;case"bpmn:Association":d.push({id:de.id,type:de.$type,source:ui(de.sourceRef),target:ui(de.targetRef)});break;case"bpmn:Group":{x(de.id);const ue=(fe=de.categoryValueRef)==null?void 0:fe.value;c.push({id:de.id,...typeof ue=="string"&&ue?{name:ue}:{}}),M(de);break}default:u.push({id:de.id,type:de.$type,reason:"type-outside-mvp"})}},A=(Y,fe)=>{const de=Y.flowElements??[],ue=(Y.laneSets??[]).flatMap(te=>te.lanes??[]),le=new Map;for(const te of ue){b(te.id);for(const z of te.flowNodeRef??[]){const F=ui(z);F&&le.set(F,te.id)}}for(const te of de){if(b(te.id),te.$type==="bpmn:SequenceFlow"){p.push({id:te.id,source:ui(te.sourceRef),target:ui(te.targetRef),...typeof te.name=="string"&&te.name?{name:te.name}:{}});continue}if(te.$type==="bpmn:DataStoreReference"){x(te.id),a.push({id:te.id,...te.name?{name:te.name}:{}});continue}const z=cE(te.$type);if(!Ff(z)){u.push({id:te.id,type:te.$type,reason:"type-outside-mvp"});continue}x(te.id),o.push({id:te.id,type:z,...te.name?{name:te.name}:{},...fe?{participant:fe}:{},...le.has(te.id)?{lane:le.get(te.id)}:{}});const F=sh(te,"bwl:band");F!==void 0&&(l.bands[te.id]=F);for(const U of te.dataOutputAssociations??[])b(U.id),h.push({id:U.id,type:U.$type,source:te.id,target:ui(U.targetRef)});for(const U of te.dataInputAssociations??[])b(U.id),h.push({id:U.id,type:U.$type,source:ui((U.sourceRef??[])[0]),target:te.id})}L(Y.artifacts??[])};if(n){const Y=new Set;for(const fe of n.participants??[]){x(fe.id);const de=ui(fe.processRef);de&&Y.add(de);const ue=de?i.get(de):void 0,le=((ue==null?void 0:ue.laneSets)??[]).flatMap(U=>U.lanes??[]),te=le.map(U=>({id:U.id,...U.name?{name:U.name}:{}}));for(const U of te)x(U.id);const z=!ue||(ue.flowElements??[]).length===0&&le.length===0&&(ue.artifacts??[]).length===0;r.push({id:fe.id,...fe.name?{name:fe.name}:{},...z?{blackBox:!0}:{},...te.length?{lanes:te}:{}});const F=sh(fe,"bwl:poolOrder");F!==void 0&&(l.poolOrders[fe.id]=F),ue&&A(ue,fe.id)}for(const fe of n.messageFlows??[])b(fe.id),f.push({id:fe.id,source:ui(fe.sourceRef),target:ui(fe.targetRef),...typeof fe.name=="string"&&fe.name?{name:fe.name}:{}});L(n.artifacts??[]);for(const[fe,de]of i)!Y.has(fe)&&(de.flowElements??[]).length>0&&u.push({id:fe,type:de.$type,reason:"unreachable-process"})}else for(const Y of i.values())A(Y);const H=[],V=[],N=[],G=[],pe=(Y,fe)=>!!Y&&!!fe&&w.has(Y)&&w.has(fe);for(const Y of p){if(!pe(Y.source,Y.target)){u.push({id:Y.id,type:"bpmn:SequenceFlow",reason:"endpoint-outside-mvp"});continue}H.push({id:Y.id,source:Y.source,target:Y.target,...Y.name?{name:Y.name}:{}}),w.add(Y.id)}for(const Y of f){if(!pe(Y.source,Y.target)){u.push({id:Y.id,type:"bpmn:MessageFlow",reason:"endpoint-outside-mvp"});continue}V.push({id:Y.id,source:Y.source,target:Y.target,...Y.name?{name:Y.name}:{}}),w.add(Y.id)}for(const Y of h){if(!pe(Y.source,Y.target)){u.push({id:Y.id??"",type:Y.type,reason:"endpoint-outside-mvp"});continue}G.push({...Y.id?{id:Y.id}:{},source:Y.source,target:Y.target}),Y.id&&w.add(Y.id)}for(const Y of d){if(!pe(Y.source,Y.target)){u.push({id:Y.id??"",type:Y.type,reason:"endpoint-outside-mvp"});continue}N.push({...Y.id?{id:Y.id}:{},source:Y.source,target:Y.target})}const ze=new Map(c.map(Y=>[Y.id,Y]));for(const{owner:Y,refs:fe}of g){const de=fe.filter(le=>R.has(le)),ue=ze.get(Y);ue&&de.length&&(ue.members=de)}for(const Y of m)R.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:H,...V.length?{messageFlows:V}:{},...a.length?{dataStores:a}:{},...G.length?{dataAssociations:G}:{},...s.length?{annotations:s}:{},...N.length?{associations:N}:{},...c.length?{groups:c}:{}},hints:l,omitted:u}}async function pE(e){const{definitions:t,warnings:n}=await $u(e);return{...uh(t),warnings:n}}function fE(e,t,n,i={}){return{documentId:e,baseVersion:t,ops:[...n],origin:i.origin??"agent",clientOpId:(i.mkClientOpId??(()=>crypto.randomUUID()))()}}async function lh(e,t,{currentVersion:n}){if(t.baseVersion!==n)return{status:"conflict",baseVersion:t.baseVersion,currentVersion:n};const i=ah(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 dE=Symbol("bpmn-editor");function hE(){const e=St.ref(!1),t=St.ref(!0),n=St.ref(!1);let i,r;const o=()=>{e.value=!0};function a(u,l){u.get("canvas").getContainer().style.pointerEvents=l?"":"none";const p=u.get("keyboard");l?(r&&p.bind(r),r=void 0):r||(r=p.getBinding(),p.unbind())}function s(){if(!i)throw new Error("modeler not attached — 뷰 @ready 후 attach() 필요");return i}function c(){return i==null?void 0:i.get("commandStack")}return{dirty:e,editable:t,agentBusy:n,attach(u){i&&this.detach(),i=u,i.get("eventBus").on("commandStack.changed",o),t.value||a(i,!1)},detach(){i==null||i.get("eventBus").off("commandStack.changed",o),i&&!t.value&&a(i,!0),r=void 0,i=void 0},setEditable(u){t.value=u,i&&a(i,u)},async applyAgentBatch(u,l){const p=s();n.value=!0;try{const f=await lh(p,u,{currentVersion:l});return f.status==="applied"&&(e.value=!1),f}finally{n.value=!1}},async importXml(u){const{warnings:l}=await s().importXML(u);return e.value=!1,{warnings: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 oe(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}function mE(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Yu={exports:{}},ph;function gE(){if(ph)return Yu.exports;ph=1;var e=Yu.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},Yu.exports}var yE=gE(),vE=mE(yE);function li(e){if(!(this instanceof li))return new li(e);e=e||[128,36,1],this._seed=e.length?vE.rack(e[0],e[1],e[2]):e}li.prototype.next=function(e){return this._seed(e||!0)},li.prototype.nextPrefixed=function(e,t){var n;do n=e+this.next(!0);while(this.assigned(n));return this.claim(n,t),n},li.prototype.claim=function(e,t){this._seed.set(e,t||!0)},li.prototype.assigned=function(e){return this._seed.get(e)||!1},li.prototype.unclaim=function(e){delete this._seed.hats[e]},li.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 ut(e,t=globalThis.document){var u;if(typeof e!="string")throw new TypeError("String expected");const n=/^<!--(.*?)-->$/s.exec(e);if(n)return t.createComment(n[1]);const i=(u=/<([\w:]+)/.exec(e))==null?void 0:u[1];if(!i)return t.createTextNode(e);if(e=e.trim(),i==="body"){const l=t.createElement("html");l.innerHTML=e;const{lastChild:p}=l;return p.remove(),p}let[r,o,a]=Object.hasOwn(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 _E(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 mn(e,...t){const n=e.style;return k(t,function(i){i&&k(i,function(r,o){n[o]=r})}),e}function an(e,t,n){return arguments.length==2?e.getAttribute(t):n===null?e.removeAttribute(t):(e.setAttribute(t,n),e)}const bE=Object.prototype.toString;function mt(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 bE.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 ms(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function Or(e,t,n){var i=n?e:e.parentNode;return i&&typeof i.closest=="function"&&i.closest(t)||null}function xE(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var gs={},fh;function wE(){if(fh)return gs;fh=1;var e,t,n;function i(){e=window.addEventListener?"addEventListener":"attachEvent",t=window.removeEventListener?"removeEventListener":"detachEvent",n=e!=="addEventListener"?"on":""}return gs.bind=function(r,o,a,s){return e||i(),r[e](n+o,a,s||!1),a},gs.unbind=function(r,o,a,s){return t||i(),r[t](n+o,a,s||!1),a},gs}var dh=wE(),EE=xE(dh),Se=_E({__proto__:null,default:EE},[dh]),hh=["focus","blur"];function SE(e,t,n,i,r){return hh.indexOf(n)!==-1&&(r=!0),Se.bind(e,n,function(o){var a=o.target||o.srcElement;o.delegateTarget=Or(a,t,!0),o.delegateTarget&&i.call(e,o)},r)}function RE(e,t,n,i){return hh.indexOf(t)!==-1&&(i=!0),Se.unbind(e,t,n,i)}var Pn={bind:SE,unbind:RE};function qu(e,t){return e&&typeof e.matches=="function"&&e.matches(t)||!1}function nt(e,t){return t=t||document,t.querySelector(e)}function ys(e,t){return t=t||document,t.querySelectorAll(e)}function pi(e){e.parentNode&&e.parentNode.removeChild(e)}function CE(e,t){if(e.ownerDocument!==t.ownerDocument)try{return t.ownerDocument.importNode(e,!0)}catch{}return e}function PE(e,t){return t.appendChild(CE(e,t))}function Re(e,t){return PE(t,e),e}var Ku=2,mh={"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":Ku,"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":Ku,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function AE(e,t){return mh[t]?e.style[t]:e.getAttributeNS(null,t)}function gh(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=mh[i];r?(r===Ku&&typeof n=="number"&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function TE(e,t){var n=Object.keys(t),i,r;for(i=0,r;r=n[i];i++)gh(e,r,t[r])}function ae(e,t,n){if(typeof t=="string")if(n!==void 0)gh(e,t,n);else return AE(e,t);else TE(e,t);return e}const ME=Object.prototype.toString;function He(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 ME.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 vs(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function yh(e){return e.cloneNode(!0)}var Xu={svg:"http://www.w3.org/2000/svg"},vh='<svg xmlns="'+Xu.svg+'"';function kE(e){var t=!1;e.substring(0,4)==="<svg"?e.indexOf(Xu.svg)===-1&&(e=vh+e.substring(4)):(e=vh+">"+e+"</svg>",t=!0);var n=OE(e);if(!t)return n;for(var i=document.createDocumentFragment(),r=n.firstChild;r.firstChild;)i.appendChild(r.firstChild);return i}function OE(e){var t;return t=new DOMParser,t.async=!1,t.parseFromString(e,"text/xml")}function he(e,t){var n;return e=e.trim(),e.charAt(0)==="<"?(n=kE(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(Xu.svg,e),t&&ae(n,t),n}var Zu=null;function _h(){return Zu===null&&(Zu=he("svg")),Zu}function bh(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}function DE(e,t,n,i,r,o){var a=_h().createSVGMatrix();switch(arguments.length){case 0:return a;case 1:return bh(a,e);case 6:return bh(a,{a:e,b:t,c:n,d:i,e:r,f:o})}}function Yo(e){return _h().createSVGTransform()}var xh=/([&<>]{1})/g,LE=/([&<>\n\r"]{1})/g,IE={"&":"&","<":"<",">":">",'"':"'"};function Qu(e,t){function n(i,r){return IE[r]||r}return e.replace(t,n)}function wh(e,t){var n,i,r,o,a;switch(e.nodeType){case 3:t.push(Qu(e.textContent,xh));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,'="',Qu(o.value,LE),'"');if(e.hasChildNodes()){for(t.push(">"),a=e.childNodes,n=0,i=a.length;n<i;++n)wh(a.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("<!--",Qu(e.nodeValue,xh),"-->");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function NE(e){for(var t=e.firstChild,n=[];t;)wh(t,n),t=t.nextSibling;return n.join("")}function Eh(e,t){return NE(e)}function Ft(e){var t=e.parentNode;return t&&t.removeChild(e),e}function BE(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function $E(e,t){var n,i;for(e.clear(),n=0;i=t[n];n++)e.appendItem(BE(e,i))}function qo(e,t){var n=e.transform.baseVal;return t&&(Array.isArray(t)||(t=[t]),$E(n,t)),n.consolidate()}const jE=/^class[ {]/;function FE(e){return jE.test(e.toString())}function Ju(e){return Array.isArray(e)}function el(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function _s(...e){e.length===1&&Ju(e[0])&&(e=e[0]),e=[...e];const t=e.pop();return t.$inject=e,t}const HE=/constructor\s*[^(]*\(\s*([^)]*)\)/m,zE=/^(?:async\s+)?(?:function\s*[^(]*)?(?:\(\s*([^)]*)\)|(\w+))/m,VE=/\/\*([^*]*)\*\//m;function GE(e){if(typeof e!="function")throw new Error(`Cannot annotate "${e}". Expected a function!`);const t=e.toString().match(FE(e)?HE:zE);if(!t)return[];const n=t[1]||t[2];return n&&n.split(",").map(i=>{const r=i.match(VE);return(r&&r[1]||i).trim()})||[]}function Sh(e,t){const n=t||{get:function(b,x){if(i.push(b),x===!1)return null;throw s(`No provider for "${b}"!`)}},i=[],r=this._providers=Object.create(n._providers||null),o=this._instances=Object.create(null),a=o.injector=this,s=function(b){const x=i.join(" -> ");return i.length=0,new Error(x?`${b} (Resolving: ${x})`:b)};function c(b,x){if(!r[b]&&b.includes(".")){const S=b.split(".");let M=c(S.shift());for(;S.length;)M=M[S.shift()];return M}if(el(o,b))return o[b];if(el(r,b)){if(i.indexOf(b)!==-1)throw i.push(b),s("Cannot resolve circular dependency!");return i.push(b),o[b]=r[b][0](r[b][1]),i.pop(),o[b]}return n.get(b,x)}function u(b,x){if(typeof x>"u"&&(x={}),typeof b!="function")if(Ju(b))b=_s(b.slice());else throw s(`Cannot invoke "${b}". Expected a function!`);const M=(b.$inject||GE(b)).map(L=>el(x,L)?x[L]:c(L));return{fn:b,dependencies:M}}function l(b){const{fn:x,dependencies:S}=u(b),M=Function.prototype.bind.call(x,null,...S);return new M}function p(b,x,S){const{fn:M,dependencies:L}=u(b,S);return M.apply(x,L)}function f(b){return _s(x=>b.get(x))}function d(b,x){if(x&&x.length){const S=Object.create(null),M=Object.create(null),L=[],A=[],H=[];let V,N,G,pe;for(let ze in r)V=r[ze],x.indexOf(ze)!==-1&&(V[2]==="private"?(N=L.indexOf(V[3]),N===-1?(G=V[3].createChild([],x),pe=f(G),L.push(V[3]),A.push(G),H.push(pe),S[ze]=[pe,ze,"private",G]):S[ze]=[H[N],ze,"private",A[N]]):S[ze]=[V[2],V[1]],M[ze]=!0),(V[2]==="factory"||V[2]==="type")&&V[1].$scope&&x.forEach(lt=>{V[1].$scope.indexOf(lt)!==-1&&(S[ze]=[V[2],V[1]],M[lt]=!0)});x.forEach(ze=>{if(!M[ze])throw new Error('No provider for "'+ze+'". Cannot use provider from the parent!')}),b.unshift(S)}return new Sh(b,a)}const h={factory:p,type:l,value:function(b){return b}};function m(b,x){const S=b.__init__||[];return function(){S.forEach(M=>{typeof M=="string"?x.get(M):x.invoke(M)})}}function g(b){const x=b.__exports__;if(x){const S=b.__modules__,M=Object.keys(b).reduce((N,G)=>(G!=="__exports__"&&G!=="__modules__"&&G!=="__init__"&&G!=="__depends__"&&(N[G]=b[G]),N),Object.create(null)),L=(S||[]).concat(M),A=d(L),H=_s(function(N){return A.get(N)});x.forEach(function(N){r[N]=[H,N,"private",A]});const V=(b.__init__||[]).slice();return V.unshift(function(){A.init()}),b=Object.assign({},b,{__init__:V}),m(b,A)}return Object.keys(b).forEach(function(S){if(S==="__init__"||S==="__depends__")return;const M=b[S];if(M[2]==="private"){r[S]=M;return}const L=M[0],A=M[1];r[S]=[h[L],WE(L,A),L]}),m(b,a)}function R(b,x){return b.indexOf(x)!==-1||(b=(x.__depends__||[]).reduce(R,b),b.indexOf(x)!==-1)?b:b.concat(x)}function w(b){const x=b.reduce(R,[]).map(g);let S=!1;return function(){S||(S=!0,x.forEach(M=>M()))}}this.get=c,this.invoke=p,this.instantiate=l,this.createChild=d,this.init=w(e)}function WE(e,t){return e!=="value"&&Ju(t)&&(t=_s(t.slice())),t}var UE=1e3;function Ai(e,t){var n=this;t=t||UE,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)})}Ai.prototype.canRender=function(e){},Ai.prototype.drawShape=function(e,t){},Ai.prototype.drawConnection=function(e,t){},Ai.prototype.getShapePath=function(e){},Ai.prototype.getConnectionPath=function(e){};function Dr(e){return e.flat().join(",").replace(/,?([A-Za-z]),?/g,"$1")}function YE(e){return["M",e.x,e.y]}function tl(e){return["L",e.x,e.y]}function qE(e,t,n){return["C",e.x,e.y,t.x,t.y,n.x,n.y]}function KE(e,t){const n=e.length,i=[YE(e[0])];for(let r=1;r<n;r++){const o=e[r-1],a=e[r],s=e[r+1];if(!s||!t){i.push(tl(a));continue}const c=Math.min(t,nl(a.x-o.x,a.y-o.y),nl(s.x-a.x,s.y-a.y));if(!c){i.push(tl(a));continue}const u=bs(a,o,c),l=bs(a,o,c*.5),p=bs(a,s,c),f=bs(a,s,c*.5);i.push(tl(u)),i.push(qE(l,f,p))}return i}function bs(e,t,n){const i=t.x-e.x,r=t.y-e.y,o=nl(i,r),a=n/o;return{x:e.x+i*a,y:e.y+r*a}}function nl(e,t){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2))}function Ko(e,t,n){we(t)&&(n=t,t=null),t||(t={});const i=he("path",t);return we(n)&&(i.dataset.cornerRadius=String(n)),il(i,e)}function il(e,t){const n=parseInt(e.dataset.cornerRadius,10)||0;return ae(e,{d:Dr(KE(t,n))}),e}function xs(e){var t=new Set(e);return Le(e,function(n){for(var i=n.parent;i;){if(t.has(i))return!1;i=i.parent}return!0})}function Lr(e,t,n){n=n||0,_e(e)||(e=[e]),k(e,function(i,r){var o=t(i,r,n);_e(o)&&o.length&&Lr(o,t,n+1)})}function rl(e,t,n){var i=new Set,r=new Set;return Lr(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 Xo(e,t){return rl(e)}function XE(e,t,n){Rr(t)&&(t=!0),Vt(t)&&(n=t,t=!0),n=n||{};var i=Zo(n.allShapes),r=Zo(n.allConnections),o=Zo(n.enclosedElements),a=Zo(n.enclosedConnections),s=Zo(n.topLevel,t&&Jr(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,k(l.incoming,c),k(l.outgoing,c),l.children}return Lr(e,u),{allShapes:i,allConnections:r,topLevel:s,enclosedConnections:a,enclosedElements:o}}function Ct(e,t){t=!!t,_e(e)||(e=[e]);var n,i,r,o;return k(e,function(a){var s=a;a.waypoints&&!t&&(s=Ct(a.waypoints,!0));var c=s.x,u=s.y,l=s.height||0,p=s.width||0;(c<n||n===void 0)&&(n=c),(u<i||i===void 0)&&(i=u),(c+p>r||r===void 0)&&(r=c+p),(u+l>o||o===void 0)&&(o=u+l)}),{x:n,y:i,height:o-i,width:r-n}}function so(e,t){var n={};return k(e,function(i){var r=i;r.waypoints&&(r=Ct(r)),!we(t.y)&&r.x>t.x&&(n[i.id]=i),!we(t.x)&&r.y>t.y&&(n[i.id]=i),r.x>t.x&&r.y>t.y&&(we(t.width)&&we(t.height)&&r.width+r.x<t.width+t.x&&r.height+r.y<t.height+t.y||!we(t.width)||!we(t.height))&&(n[i.id]=i)}),n}function Rh(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function Ch(e){return!!(e&&e.isFrame)}function Zo(e,t){return D({},e||{},t||{})}var ZE=1;function Ji(e,t){Ai.call(this,e,ZE),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})}oe(Ji,Ai),Ji.prototype.canRender=function(){return!0},Ji.prototype.drawShape=function(t,n,i){var r=he("rect");return ae(r,{x:0,y:0,width:n.width||0,height:n.height||0}),Ch(n)?ae(r,D({},this.FRAME_STYLE,i||{})):ae(r,D({},this.SHAPE_STYLE,i||{})),Re(t,r),r},Ji.prototype.drawConnection=function(t,n,i){var r=Ko(n.waypoints,D({},this.CONNECTION_STYLE,i||{}));return Re(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 Dr(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 Dr(o)},Ji.$inject=["eventBus","styles"];function QE(){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 D(o,{class:n})},this.style=function(n,i){!_e(n)&&!i&&(i=n,n=[]);var r=Rn(n,function(o,a){return D(o,e[a]||{})},{});return i?D(r,i):r},this.computeStyle=function(n,i,r){return _e(i)||(r=i,i=[]),t.style(i||[],D({},r,n||{}))}}const JE={__init__:["defaultRenderer"],defaultRenderer:["type",Ji],styles:["type",QE]};function xt(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return n!==-1&&e.splice(n,1),n}function Et(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 ol(e,t){return!e||!t?-1:e.indexOf(t)}function Qo(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=Qo(e,t);return Math.abs(r/o)<=i}var e1=2;function Ti(e,t){var n=Array.from(arguments).flat();const i={x:"v",y:"h"};for(const[r,o]of Object.entries(i))if(t1(r,n))return o;return!1}function t1(e,t){const n=t[0];return Cr(t,function(i){return Math.abs(n[e]-i[e])<=e1})}function Ph(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 sl(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}var n1=/,?([a-z]),?/gi,Ah=parseFloat,Pt=Math,er=Pt.PI,fi=Pt.min,di=Pt.max,Th=Pt.pow,tr=Pt.abs,i1=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/ig,r1=/(-?\d*\.?\d*(?:e[-+]?\d+)?)[\s]*,?[\s]*/ig,Mh=Array.isArray||function(e){return e instanceof Array};function o1(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function a1(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 s1(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 o1(r,i)?(a1(o,i),r[i]):(o.length>=1e3&&delete r[o.shift()],o.push(i),r[i]=e(...arguments),r[i])}return t}function c1(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(i1,function(i,r,o){var a=[],s=r.toLowerCase();for(o.replace(r1,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=ul,n}function u1(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 l1(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 cl(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 ul(){return this.join(",").replace(n1,"$1")}function p1(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=ul,t}function kh(e,t,n,i,r,o,a,s,c){var u=1-c,l=Th(u,3),p=Th(u,2),f=c*c,d=f*c,h=l*e+p*3*c*n+u*3*c*c*r+d*a,m=l*t+p*3*c*i+u*3*c*c*o+d*s;return{x:ws(h),y:ws(m)}}function Oh(e){var t=y1(...e);return cl(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 f1(e,t){return e=cl(e),t=cl(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 Dh(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 Lh(e,t,n,i,r,o,a,s,c){c==null&&(c=1),c=c>1?1:c<0?0:c;for(var u=c/2,l=12,p=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],f=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],d=0,h=0;h<l;h++){var m=u*p[h]+u,g=Dh(m,e,n,r,a),R=Dh(m,t,i,o,s),w=g*g+R*R;d+=f[h]*Pt.sqrt(w)}return u*d}function d1(e,t,n,i,r,o,a,s){if(!(di(e,n)<fi(r,a)||fi(e,n)>di(r,a)||di(t,i)<fi(o,s)||fi(t,i)>di(o,s))){var c=(e*i-t*n)*(r-a)-(e-n)*(r*s-o*a),u=(e*i-t*n)*(o-s)-(t-i)*(r*s-o*a),l=(e-n)*(o-s)-(t-i)*(r-a);if(l){var p=ws(c/l),f=ws(u/l),d=+p.toFixed(2),h=+f.toFixed(2);if(!(d<+fi(e,n).toFixed(2)||d>+di(e,n).toFixed(2)||d<+fi(r,a).toFixed(2)||d>+di(r,a).toFixed(2)||h<+fi(t,i).toFixed(2)||h>+di(t,i).toFixed(2)||h<+fi(o,s).toFixed(2)||h>+di(o,s).toFixed(2)))return{x:p,y:f}}}}function ws(e){return Math.round(e*1e11)/1e11}function h1(e,t,n){var i=Oh(e),r=Oh(t);if(!f1(i,r))return[];var o=Lh(...e),a=Lh(...t),s=Nh(e)?1:~~(o/5)||1,c=Nh(t)?1:~~(a/5)||1,u=new Array(s+1),l=new Array(c+1),p={},f=[],d,h;for(d=0;d<s+1;d++){var m=kh(...e,d/s);u[d]={x:m.x,y:m.y,t:d/s}}for(d=0;d<c+1;d++)m=kh(...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],R=u[d+1],w=l[h],b=l[h+1],x=tr(R.x-g.x)<.01?"y":"x",S=tr(b.x-w.x)<.01?"y":"x",M=d1(g.x,g.y,R.x,R.y,w.x,w.y,b.x,b.y),L;if(M){if(L=M.x.toFixed(9)+"#"+M.y.toFixed(9),p[L])continue;p[L]=!0;var A=g.t+tr((M[x]-g[x])/(R[x]-g[x]))*(R.t-g.t),H=w.t+tr((M[S]-w[S])/(b[S]-w[S]))*(b.t-w.t);A>=0&&A<=1&&H>=0&&H<=1&&f.push({x:M.x,y:M.y,t1:A,t2:H})}}return f}function Ih(e,t,n){e=jh(e),t=jh(t);for(var i,r,o,a,s,c,u,l,p,f,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"?(p=[i,r,...g.slice(1)],i=p[6],r=p[7]):(p=[i,r,i,r,s,c,s,c],i=s,r=c);for(var R=0,w=t.length;R<w;R++){var b=t[R];if(b[0]=="M")o=u=b[1],a=l=b[2];else{b[0]=="C"?(f=[o,a,...b.slice(1)],o=f[6],a=f[7]):(f=[o,a,o,a,u,l,u,l],o=u,a=l);var x=h1(p,f);{for(var S=0,M=x.length;S<M;S++)x[S].segment1=h,x[S].segment2=R,x[S].bez1=p,x[S].bez2=f;d=d.concat(x)}}}}}return d}function m1(e){return Mh(e)&&Mh(e[0])}function g1(e){if(u1(e))return e;var t=new Array(e.length),n=0,i=0,r=0,o=0,a=0,s;e[0][0]=="M"&&(n=+e[0][1],i=+e[0][2],r=n,o=i,a++,t[0]=["M",n,i]);for(var c,u,l=a,p=e.length;l<p;l++){if(u=e[l],s=u[0],t[l]=c=new Array(u.length),s!=s.toUpperCase())switch(c[0]=s.toUpperCase(),c[0]){case"A":c[1]=u[1],c[2]=u[2],c[3]=u[3],c[4]=u[4],c[5]=u[5],c[6]=+u[6]+n,c[7]=+u[7]+i;break;case"V":c[1]=+u[1]+i;break;case"H":c[1]=+u[1]+n;break;case"M":r=+u[1]+n,o=+u[2]+i;default:for(var f=1,d=u.length;f<d;f++)c[f]=+u[f]+(f%2?n:i)}else for(var 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=ul,t}function Nh(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function Es(e,t,n,i){return[e,t,n,i,n,i]}function Bh(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 $h(e,t,n,i,r,o,a,s,c,u){var l=er*120/180,p=er/180*(+r||0),f=[],d,h=s1(function(P,_,y){var O=P*Pt.cos(y)-_*Pt.sin(y),I=P*Pt.sin(y)+_*Pt.cos(y);return{x:O,y:I}});if(u)L=u[0],A=u[1],S=u[2],M=u[3];else{d=h(e,t,-p),e=d.x,t=d.y,d=h(s,c,-p),s=d.x,c=d.y;var m=(e-s)/2,g=(t-c)/2,R=m*m/(n*n)+g*g/(i*i);R>1&&(R=Pt.sqrt(R),n=R*n,i=R*i);var w=n*n,b=i*i,x=(o==a?-1:1)*Pt.sqrt(tr((w*b-w*g*g-b*m*m)/(w*g*g+b*m*m))),S=x*n*g/i+(e+s)/2,M=x*-i*m/n+(t+c)/2,L=Pt.asin(((t-M)/i).toFixed(9)),A=Pt.asin(((c-M)/i).toFixed(9));L=e<S?er-L:L,A=s<S?er-A:A,L<0&&(L=er*2+L),A<0&&(A=er*2+A),a&&L>A&&(L=L-er*2),!a&&A>L&&(A=A-er*2)}var H=A-L;if(tr(H)>l){var V=A,N=s,G=c;A=L+l*(a&&A>L?1:-1),s=S+n*Pt.cos(A),c=M+i*Pt.sin(A),f=$h(s,c,n,i,r,0,a,N,G,[A,V,S,M])}H=A-L;var pe=Pt.cos(L),ze=Pt.sin(L),lt=Pt.cos(A),Y=Pt.sin(A),fe=Pt.tan(H/4),de=4/3*n*fe,ue=4/3*i*fe,le=[e,t],te=[e+de*ze,t-ue*pe],z=[s+de*Y,c-ue*lt],F=[s,c];if(te[0]=2*le[0]-te[0],te[1]=2*le[1]-te[1],u)return[te,z,F].concat(f);f=[te,z,F].concat(f).join().split(",");for(var U=[],Oe=0,Ot=f.length;Oe<Ot;Oe++)U[Oe]=Oe%2?h(f[Oe-1],f[Oe],p).y:h(f[Oe],f[Oe+1],p).x;return U}function y1(e,t,n,i,r,o,a,s){for(var c=[],u=[[],[]],l,p,f,d,h,m,g,R,w=0;w<2;++w){if(w==0?(p=6*e-12*n+6*r,l=-3*e+9*n-9*r+3*a,f=3*n-3*e):(p=6*t-12*i+6*o,l=-3*t+9*i-9*o+3*s,f=3*i-3*t),tr(l)<1e-12){if(tr(p)<1e-12)continue;d=-f/p,0<d&&d<1&&c.push(d);continue}g=p*p-4*f*l,R=Pt.sqrt(g),!(g<0)&&(h=(-p+R)/(2*l),0<h&&h<1&&c.push(h),m=(-p-R)/(2*l),0<m&&m<1&&c.push(m))}for(var b=c.length,x=b,S;b--;)d=c[b],S=1-d,u[0][b]=S*S*S*e+3*S*S*d*n+3*S*d*d*r+d*d*d*a,u[1][b]=S*S*S*t+3*S*S*d*i+3*S*d*d*o+d*d*d*s;return u[0][x]=e,u[1][x]=t,u[0][x+1]=a,u[1][x+1]=s,u[0].length=u[1].length=x+2,{x0:fi(...u[0]),y0:fi(...u[1]),x1:di(...u[0]),y1:di(...u[1])}}function jh(e){if(m1(e)||(e=c1(e)),l1(e))return e;for(var t=p1(g1(e)),n={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},i=function(f,d,h){var m,g;if(!f)return["C",d.x,d.y,d.x,d.y,d.x,d.y];switch(!(f[0]in{T:1,Q:1})&&(d.qx=d.qy=null),f[0]){case"M":d.X=f[1],d.Y=f[2];break;case"A":f=["C",...$h(d.x,d.y,...f.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),f=["C",m,g,...f.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),f=["C",...Bh(d.x,d.y,d.qx,d.qy,f[1],f[2])];break;case"Q":d.qx=f[1],d.qy=f[2],f=["C",...Bh(d.x,d.y,f[1],f[2],f[3],f[4])];break;case"L":f=["C",...Es(d.x,d.y,f[1],f[2])];break;case"H":f=["C",...Es(d.x,d.y,f[1],d.y)];break;case"V":f=["C",...Es(d.x,d.y,d.x,f[1])];break;case"Z":f=["C",...Es(d.x,d.y,d.X,d.Y)];break}return f},r=function(f,d){if(f[d].length>7){f[d].shift();for(var h=f[d];h.length;)o[d]="A",f.splice(d++,0,["C",...h.splice(0,6)]);f.splice(d,1),u=t.length}},o=[],a="",s="",c=0,u=t.length;c<u;c++){t[c]&&(a=t[c][0]),a!="C"&&(o[c]=a,c&&(s=o[c-1])),t[c]=i(t[c],n,s),o[c]!="A"&&a=="C"&&(o[c]="C"),r(t,c);var l=t[c],p=l.length;n.x=l[p-2],n.y=l[p-1],n.bx=Ah(l[p-4])||n.x,n.by=Ah(l[p-3])||n.y}return t}function rt(e){return Vt(e)&&Sn(e,"waypoints")}function ke(e){return Vt(e)&&Sn(e,"labelTarget")}function v1(e){return Vt(e)&&Zr(e.parent)}function Fh(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function Mi(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function ge(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function Ss(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function _1(e){return Mi({x:e.x+(e.width||0)/2,y:e.y+(e.height||0)/2})}function b1(e){for(var t=e.waypoints,n=t.reduce(function(u,l,p){var f=t[p-1];if(f){var d=u[u.length-1],h=d&&d.endLength||0,m=E1(f,l);u.push({start:f,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 be(e){return rt(e)?b1(e):_1(e)}function Zt(e,t,n){n=n||0,Vt(n)||(n={x:n,y:n});var i=ge(e),r=ge(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 Jo(e,t,n){var i=x1(e,t);return i.length===1||i.length===2&&Qo(i[0],i[1])<1?Mi(i[0]):i.length>1?(i=ai(i,function(r){var o=Math.floor(r.t2*100)||1;return o=100-o,o=(o<10?"0":"")+o,r.segment2+"#"+o}),Mi(i[n?0:i.length-1])):null}function x1(e,t){return Ih(e,t)}function w1(e){e=e.slice();for(var t=0,n,i,r;e[t];)n=e[t],i=e[t-1],r=e[t+1],Qo(n,r)===0||al(i,r,n)?e.splice(t,1):t++;return e}function E1(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Rs(e,t){return Math.round(e*t)/t}function Hh(e){return we(e)?e+"px":e}function S1(e){for(;e.parent;)e=e.parent;return e}function R1(e){e=D({},{width:"100%",height:"100%"},e);const t=e.container||document.body,n=document.createElement("div");return n.setAttribute("class","djs-container djs-parent"),mn(n,{position:"relative",overflow:"hidden",width:Hh(e.width),height:Hh(e.height)}),t.appendChild(n),n}function zh(e,t,n){const i=he("g");He(i).add(t);const r=n!==void 0?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}const C1="base",Vh=0,P1=1,A1={shape:["x","y","width","height"],connection:["waypoints"]};function xe(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||{})}xe.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],xe.prototype._init=function(e){const t=this._eventBus,n=this._container=R1(e),i=this._svg=he("svg");ae(i,{width:"100%",height:"100%"}),an(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")}),Re(n,i);const r=this._viewport=zh(i,"viewport");e.deferUpdate&&(this._viewboxChanged=Ru(this._viewboxChanged,300)),this._restoreFocus=Ru(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)},xe.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},xe.prototype._setFocused=function(e){e!=this._focused&&(this._focused=e,this._eventBus.fire("canvas.focus.changed",{focused:e}))},xe.prototype._clear=function(){this._elementRegistry.getAll().forEach(t=>{const n=Rh(t);n==="root"?this.removeRootElement(t):this._removeElement(t,n)}),this._planes=[],this._rootElement=null,delete this._cachedViewbox},xe.prototype.focus=function(){this._svg.focus({preventScroll:!0}),this._setFocused(!0)},xe.prototype.restoreFocus=function(){this._restoreFocus()},xe.prototype._restoreFocus=function(){document.activeElement===document.body&&this.focus()},xe.prototype.isFocused=function(){return this._focused},xe.prototype.getDefaultLayer=function(){return this.getLayer(C1,Vh)},xe.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},xe.prototype._getChildIndex=function(e){return Rn(this._layers,function(t,n){return n.visible&&e>=n.index&&t++,t},0)},xe.prototype._createLayer=function(e,t){typeof t>"u"&&(t=P1);const n=this._getChildIndex(t);return{group:zh(this._viewport,"layer-"+e,n),index:t,visible:!0}},xe.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},xe.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&&(Ft(n),t.visible=!1),n},xe.prototype._removeLayer=function(e){const t=this._layers[e];t&&(delete this._layers[e],Ft(t.group))},xe.prototype.getActiveLayer=function(){const e=this._findPlaneForRoot(this.getRootElement());return e?e.layer:null},xe.prototype.findRoot=function(e){const t=this._resolveElements(e);let n;for(const i of t){const r=this._findPlaneForRoot(S1(i));if(!r||n&&r.rootElement!==n)return;n=r.rootElement}return n},xe.prototype.getRootElements=function(){return this._planes.map(function(e){return e.rootElement})},xe.prototype._findPlaneForRoot=function(e){return ct(this._planes,function(t){return t.rootElement===e})},xe.prototype._resolveElement=function(e){return typeof e=="string"?this._elementRegistry.get(e):e},xe.prototype._resolveElements=function(e){return _e(e)||(e=[e]),e.map(t=>this._resolveElement(t)).filter(Boolean)},xe.prototype.getContainer=function(){return this._container},xe.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&&(k([i.gfx,i.secondaryGfx],function(r){r&&(n?(e.markers.add(t),He(r).add(t)):(e.markers.delete(t),He(r).remove(t)))}),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},xe.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},xe.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},xe.prototype.hasMarker=function(e,t){return e=this._resolveElement(e),e.markers?e.markers.has(t):!1},xe.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},xe.prototype.getRootElement=function(){const e=this._rootElement;return e||this._planes.length?e:this.setRootElement(this.addRootElement(null))},xe.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,Vh);return this.hideLayer(n),this._addRoot(e,i),this._planes.push({rootElement:e,layer:i}),e},xe.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},xe.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},xe.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)},xe.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})},xe.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})},xe.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=A1[e];if(!Cr(n,function(r){return typeof t[r]<"u"}))throw new Error("must supply { "+n.join(", ")+" } with "+e)},xe.prototype._setParent=function(e,t,n){Et(t.children,e,n),e.parent=t},xe.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},xe.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},xe.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},xe.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),xt(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},xe.prototype.removeShape=function(e){return this._removeElement(e,"shape")},xe.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},xe.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},xe.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},xe.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},xe.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);qo(t,l)});else return o=this._rootElement?this.getActiveLayer():null,i=o&&o.getBBox()||{},a=qo(t),r=a?a.matrix:DE(),s=Rs(r.a,1e3),c=Rs(-r.e||0,1e3),u=Rs(-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},xe.prototype.scroll=function(e){const t=this._viewport;let n=t.getCTM();return e&&this._changeViewbox(function(){e=D({dx:0,dy:0},e||{}),n=this._svg.createSVGMatrix().translate(e.dx,e.dy).multiply(n),Gh(t,n)}),{x:n.e,y:n.f}},xe.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=Ct(o),s=ge(a),c=this.viewbox(),u=this.zoom();let l,p;c.y+=t.top/u,c.x+=t.left/u,c.width-=(t.right+t.left)/u,c.height-=(t.bottom+t.top)/u;const f=ge(c);if(!(a.width<c.width&&a.height<c.height))l=a.x-c.x,p=a.y-c.y;else{const h=Math.max(0,s.right-f.right),m=Math.min(0,s.left-f.left),g=Math.max(0,s.bottom-f.bottom),R=Math.min(0,s.top-f.top);l=h||m,p=g||R}this.scroll({dx:-l*u,dy:-p*u})},xe.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)}),Rs(i.a,1e3)};function Gh(e,t){const n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}xe.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},xe.prototype._setZoom=function(e,t){const n=this._svg,i=this._viewport,r=n.createSVGMatrix(),o=n.createSVGPoint();let a,s,c,u,l;c=i.getCTM();const p=c.a;return t?(a=D(o,t),s=a.matrixTransform(c.inverse()),u=r.translate(s.x,s.y).scale(1/p*e).translate(-s.x,-s.y),l=c.multiply(u)):l=r.scale(e),Gh(this._viewport,l),l},xe.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},xe.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}},xe.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var co="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),ae(t,co,i),n&&ae(n,co,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&&(ae(i.gfx,co,""),i.secondaryGfx&&ae(i.secondaryGfx,co,""),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&&ae(t,co,i),t},jn.prototype.get=function(e){var t;typeof e=="string"?t=e:t=e&&ae(e,co);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 T1(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 M1(e){return e.__refs_collection===!0}function k1(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)}function Wh(e,t,n){var i=T1(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 O1(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 Gn(e,t){if(!(this instanceof Gn))return new Gn(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Gn.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?Wh(this,t,e):O1(this,t,e)},Gn.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return M1(n)||Wh(this,t,e),n},Gn.prototype.ensureBound=function(e,t){k1(e,t)||this.bind(e,t)},Gn.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},Gn.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var ll=new Gn({name:"children",enumerable:!0,collection:!0},{name:"parent"}),Uh=new Gn({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),Yh=new Gn({name:"attachers",collection:!0},{name:"host"}),qh=new Gn({name:"outgoing",collection:!0},{name:"source"}),Kh=new Gn({name:"incoming",collection:!0},{name:"target"});function uo(){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)}}),ll.bind(this,"parent"),Uh.bind(this,"labels"),qh.bind(this,"outgoing"),Kh.bind(this,"incoming")}function ea(){uo.call(this),ll.bind(this,"children"),Yh.bind(this,"host"),Yh.bind(this,"attachers")}oe(ea,uo);function Xh(){uo.call(this),ll.bind(this,"children")}oe(Xh,ea);function Zh(){ea.call(this),Uh.bind(this,"labelTarget")}oe(Zh,ea);function Qh(){uo.call(this),qh.bind(this,"source"),Kh.bind(this,"target")}oe(Qh,uo);var D1={connection:Qh,shape:ea,label:Zh,root:Xh};function L1(e,t){var n=D1[e];if(!n)throw new Error("unknown type: <"+e+">");return D(new n,t)}function I1(e){return e instanceof uo}function ki(){this._uid=12}ki.prototype.createRoot=function(e){return this.create("root",e)},ki.prototype.createLabel=function(e){return this.create("label",e)},ki.prototype.createShape=function(e){return this.create("shape",e)},ki.prototype.createConnection=function(e){return this.create("connection",e)},ki.prototype.create=function(e,t){return t=D({},t||{}),t.id||(t.id=e+"_"+this._uid++),L1(e,t)};var Cs="__fn",Jh=1e3,N1=Array.prototype.slice;function An(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}An.prototype.on=function(e,t,n,i){if(e=_e(e)?e:[e],Gt(t)&&(i=n,n=t,t=Jh),!we(t))throw new Error("priority must be a number");var r=n;i&&(r=vn(n,i),r[Cs]=n[Cs]||n);var o=this;e.forEach(function(a){o._addListener(a,{priority:t,callback:r,next:null})})},An.prototype.once=function(e,t,n,i){var r=this;if(Gt(t)&&(i=n,n=t,t=Jh),!we(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[Cs]=n,this.on(e,t,o)},An.prototype.off=function(e,t){e=_e(e)?e:[e];var n=this;e.forEach(function(i){n._removeListener(i,t)})},An.prototype.createEvent=function(e){var t=new ta;return t.init(e),t},An.prototype.fire=function(e,t){var n,i,r,o;if(o=N1.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 ta?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}},An.prototype.handleError=function(e){return this.fire("error",{error:e})===!1},An.prototype._destroy=function(){this._listeners={}},An.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},An.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return i;try{i=B1(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},An.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},An.prototype._getListeners=function(e){return this._listeners[e]},An.prototype._setListeners=function(e,t){this._listeners[e]=t},An.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[Cs]===t)&&(r?r.next=i:this._setListeners(e,i)),r=n,n=i};function ta(){}ta.prototype.stopPropagation=function(){this.cancelBubble=!0},ta.prototype.preventDefault=function(){this.defaultPrevented=!0},ta.prototype.init=function(e){D(this,e||{})};function B1(e,t){return e.apply(null,t)}function Ir(e){return e.childNodes[0]}function $1(e){return e.parentNode.childNodes[1]}function Ps(e,t,n,i,r){var o=Yo();o.setTranslate(t,n);var a=Yo();a.setRotate(i||0,0,0);var s=Yo();s.setScale(1,1),qo(e,[o,a,s])}function Qt(e,t,n){var i=Yo();i.setTranslate(t,n),qo(e,i)}function em(e,t){var n=Yo();n.setRotate(t,0,0),qo(e,n)}function Fn(e,t){this._eventBus=e,this._elementRegistry=t}Fn.$inject=["eventBus","elementRegistry"],Fn.prototype._getChildrenContainer=function(e){var t=this._elementRegistry.getGraphics(e),n;return e.parent?(n=$1(t),n||(n=he("g"),He(n).add("djs-children"),Re(t.parentNode,n))):n=t,n},Fn.prototype._clear=function(e){var t=Ir(e);return ms(t),t},Fn.prototype._createContainer=function(e,t,n,i){var r=he("g");He(r).add("djs-group"),typeof n<"u"?j1(r,t,t.childNodes[n]):Re(t,r);var o=he("g");He(o).add("djs-element"),He(o).add("djs-"+e),i&&He(o).add("djs-frame"),Re(r,o);var a=he("g");return He(a).add("djs-visual"),Re(o,a),o},Fn.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,Ch(t))},Fn.prototype.updateContainments=function(e){var t=this,n=this._elementRegistry,i;i=Rn(e,function(r,o){return o.parent&&(r[o.parent.id]=o.parent),r},{}),k(i,function(r){var o=r.children;if(o){var a=t._getChildrenContainer(r),s=a.firstChild;k(o,function(c){var u=n.getGraphics(c).parentNode;u===s?s=s.nextSibling:a.insertBefore(u,s)})}})},Fn.prototype.drawShape=function(e,t,n={}){var i=this._eventBus;return i.fire("render.shape",{gfx:e,element:t,attrs:n})},Fn.prototype.getShapePath=function(e){var t=this._eventBus;return t.fire("render.getShapePath",e)},Fn.prototype.drawConnection=function(e,t,n={}){var i=this._eventBus;return i.fire("render.connection",{gfx:e,element:t,attrs:n})},Fn.prototype.getConnectionPath=function(e){var t=this._eventBus;return t.fire("render.getConnectionPath",e)},Fn.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if(e==="shape")this.drawShape(i,t),Qt(n,t.x,t.y);else if(e==="connection")this.drawConnection(i,t);else throw new Error("unknown type: "+e);t.hidden?ae(n,"display","none"):ae(n,"display","block")}},Fn.prototype.remove=function(e){var t=this._elementRegistry.getGraphics(e);Ft(t.parentNode)};function j1(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}const F1={__depends__:[JE],__init__:["canvas"],canvas:["type",xe],elementRegistry:["type",jn],elementFactory:["type",ki],eventBus:["type",An],graphicsFactory:["type",Fn]};function H1(e){var t=new Sh(e);return t.init(),t}function z1(e){e=e||{};var t={config:["value",e]},n=[t,F1].concat(e.modules||[]);return H1(n)}function ir(e,t){this._injector=t||z1(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 sn(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}function _n(e,t){return e.$instanceOf(t)}function V1(e){return ct(e.rootElements,function(t){return _n(t,"bpmn:Process")||_n(t,"bpmn:Collaboration")})}function G1(e){var t={},n=[],i={};function r(z,F){return function(U){z(U,F)}}function o(z){t[z.id]=z}function a(z){return t[z.id]}function s(z,F){var U=z.gfx;if(U)throw new Error(`already rendered ${sn(z)}`);return e.element(z,i[z.id],F)}function c(z,F){return e.root(z,i[z.id],F)}function u(z,F){try{var U=i[z.id]&&s(z,F);return o(z),U}catch(Oe){l(Oe.message,{element:z,error:Oe}),console.error(`failed to import ${sn(z)}`,Oe)}}function l(z,F){e.error(z,F)}var p=this.registerDi=function(F){var U=F.bpmnElement;U?i[U.id]?l(`multiple DI elements defined for ${sn(U)}`,{element:U}):i[U.id]=F:l(`no bpmnElement referenced in ${sn(F)}`,{element:F})};function f(z){d(z.plane)}function d(z){p(z),k(z.planeElement,h)}function h(z){p(z)}this.handleDefinitions=function(F,U){var Oe=F.diagrams;if(U&&Oe.indexOf(U)===-1)throw new Error("diagram not part of <bpmn:Definitions />");if(!U&&Oe&&Oe.length&&(U=Oe[0]),!U)throw new Error("no diagram to display");i={},f(U);var Ot=U.plane;if(!Ot)throw new Error(`no plane for ${sn(U)}`);var P=Ot.bpmnElement;if(!P)if(P=V1(F),P)l(`correcting missing bpmnElement on ${sn(Ot)} to ${sn(P)}`),Ot.bpmnElement=P,p(Ot);else throw new Error("no process or collaboration to display");var _=c(P,Ot);if(_n(P,"bpmn:Process")||_n(P,"bpmn:SubProcess"))g(P,_);else if(_n(P,"bpmn:Collaboration"))le(P,_),R(F.rootElements,_);else throw new Error(`unsupported bpmnElement for ${sn(Ot)}: ${sn(P)}`);m(n)};var m=this.handleDeferred=function(){for(var F;n.length;)F=n.shift(),F()};function g(z,F){fe(z,F),H(z.ioSpecification,F),A(z.artifacts,F),o(z)}function R(z,F){var U=Le(z,function(Oe){return!a(Oe)&&_n(Oe,"bpmn:Process")&&Oe.laneSets});U.forEach(r(g,F))}function w(z,F){u(z,F)}function b(z,F){k(z,r(w,F))}function x(z,F){u(z,F)}function S(z,F){u(z,F)}function M(z,F){u(z,F)}function L(z,F){u(z,F)}function A(z,F){k(z,function(U){_n(U,"bpmn:Association")?n.push(function(){L(U,F)}):L(U,F)})}function H(z,F){z&&(k(z.dataInputs,r(S,F)),k(z.dataOutputs,r(M,F)))}var V=this.handleSubProcess=function(F,U){fe(F,U),A(F.artifacts,U)};function N(z,F){var U=u(z,F);_n(z,"bpmn:SubProcess")&&V(z,U||F),_n(z,"bpmn:Activity")&&H(z.ioSpecification,F),n.push(function(){k(z.dataInputAssociations,r(x,F)),k(z.dataOutputAssociations,r(x,F))})}function G(z,F){u(z,F)}function pe(z,F){u(z,F)}function ze(z,F){n.push(function(){var U=u(z,F);z.childLaneSet&<(z.childLaneSet,U||F),te(z)})}function lt(z,F){k(z.lanes,r(ze,F))}function Y(z,F){k(z,r(lt,F))}function fe(z,F){de(z.flowElements,F),z.laneSets&&Y(z.laneSets,F)}function de(z,F){k(z,function(U){_n(U,"bpmn:SequenceFlow")?n.push(function(){G(U,F)}):_n(U,"bpmn:BoundaryEvent")?n.unshift(function(){N(U,F)}):_n(U,"bpmn:FlowNode")?N(U,F):_n(U,"bpmn:DataObject")||(_n(U,"bpmn:DataStoreReference")||_n(U,"bpmn:DataObjectReference")?pe(U,F):l(`unrecognized flowElement ${sn(U)} in context ${sn(F&&F.businessObject)}`,{element:U,context:F}))})}function ue(z,F){var U=u(z,F),Oe=z.processRef;Oe&&g(Oe,U||F)}function le(z,F){k(z.participants,r(ue,F)),n.push(function(){b(z.messageFlows,F)}),A(z.artifacts,F)}function te(z){k(z.flowNodeRef,function(F){var U=F.get("lanes");U&&U.push(z)})}}function v(e,t){var n=X(e);return n&&typeof n.$instanceOf=="function"&&n.$instanceOf(t)}function De(e,t){return Wi(t,function(n){return v(e,n)})}function X(e){return e&&e.businessObject||e}function We(e){return e&&e.di}function W1(e,t,n){var i,r,o,a,s=[];function c(u,l){var p={root:function(m,g){return i.add(m,g)},element:function(m,g,R){return i.add(m,g,R)},error:function(m,g){s.push({message:m,context:g})}},f=new G1(p);l=l||u.diagrams&&u.diagrams[0];var d=U1(u,l);if(!d)throw new Error("no diagram to display");k(d,function(m){f.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(p){return p.warnings=s,l(p)}})}function U1(e,t){if(!(!t||!t.plane)){var n=t.plane.bpmnElement,i=n;!v(n,"bpmn:Process")&&!v(n,"bpmn:Collaboration")&&(i=Y1(n));var r;v(i,"bpmn:Collaboration")?r=i:r=ct(e.rootElements,function(u){if(v(u,"bpmn:Collaboration"))return ct(u.participants,function(l){return l.processRef===i})});var o=[i];r&&(o=rn(r.participants,function(u){return u.processRef}),o.push(r));var a=tm(o),s=[t],c=[n];return k(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 k(e,function(n){n&&(t.push(n),t=t.concat(tm(n.flowElements)))}),t}function Y1(e){for(var t=e;t;){if(v(t,"bpmn:Process"))return t;t=t.$parent}}var q1='<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>',nm=q1,im={verticalAlign:"middle"},rm={color:"#404040"},K1={zIndex:"1001",position:"fixed",top:"0",left:"0",right:"0",bottom:"0"},X1={width:"100%",height:"100%",background:"rgba(40,40,40,0.2)"},Z1={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"},Q1='<div class="bjs-powered-by-lightbox"><div class="backdrop"></div><div class="notice"><a href="https://bpmn.io" target="_blank" rel="noopener" class="link">'+nm+'</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>',hi;function J1(){hi=ut(Q1),mn(hi,K1),mn(nt("svg",hi),im),mn(nt(".backdrop",hi),X1),mn(nt(".notice",hi),Z1),mn(nt(".link",hi),rm,{margin:"15px 20px 15px 10px",alignSelf:"center"})}function eS(){hi||(J1(),Pn.bind(hi,".backdrop","click",function(e){document.body.removeChild(hi)})),document.body.appendChild(hi)}const As=5,om="djs-outline-hidden";function gt(e){e=D({},nS,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),this._init(this._container,this._moddle,e),rS(this._container)}oe(gt,ir),gt.prototype.importXML=async function(t,n){const i=this;function r(a){return i.get("eventBus").createEvent(a)}let o=[];try{t=this._emit("import.parse.start",{xml:t})||t;let a;try{a=await this._moddle.fromXML(t,"bpmn:Definitions")}catch(f){throw this._emit("import.parse.complete",{error:f}),f}let s=a.rootElement;const c=a.references,u=a.warnings,l=a.elementsById;o=o.concat(u),s=this._emit("import.parse.complete",r({error:null,definitions:s,elementsById:l,references:c,warnings:o}))||s;const p=await this.importDefinitions(s,n);return o=o.concat(p.warnings),this._emit("import.done",{error:null,warnings:o}),{warnings:o}}catch(a){let s=a;throw o=o.concat(s.warnings||[]),Ts(s,o),s=tS(s),this._emit("import.done",{error:s,warnings:s.warnings}),s}},gt.prototype.importDefinitions=async function(t,n){return this._setDefinitions(t),{warnings:(await this.open(n)).warnings}},gt.prototype.open=async function(t){const n=this._definitions;let i=t;if(!n){const o=new Error("no XML imported");throw Ts(o,[]),o}if(typeof t=="string"&&(i=iS(n,t),!i)){const o=new Error("BPMNDiagram <"+t+"> not found");throw Ts(o,[]),o}try{this.clear()}catch(o){throw Ts(o,[]),o}const{warnings:r}=await W1(this,n,i);return{warnings:r}},gt.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},gt.prototype.saveSVG=async function(){this._emit("saveSVG.start");let t,n;try{const i=this.get("canvas"),r=i.getActiveLayer(),o=nt(":scope > defs",i._svg),a=Eh(r),s=o?"<defs>"+Eh(o)+"</defs>":"",c=i.getContainer();mt(c).add(om);let u;try{u=r.getBBox()}finally{mt(c).remove(om)}const l=u.x-As,p=u.y-As,f=u.width+As*2,d=u.height+As*2;t=`<?xml version="1.0" encoding="utf-8"?>
|
|
4
|
+
nested error: `+S.message;if(N)return a.addWarning({message:G,error:S}),!0;throw qi(G)}function l(S,M){return u(S,M,!0)}function f(){var S=a.elementsById,M=a.references,N,T;for(N=0;T=M[N];N++){var H=T.element,V=S[T.id],$=Si(H).propertiesByName[T.property];if(V||a.addWarning({message:"unresolved reference <"+T.id+">",element:T.element,property:T.property,value:T.id}),$.isMany){var G=H.get($.name),fe=G.indexOf(T);fe===-1&&(fe=G.length),V?G[fe]=V:G.splice(fe,1)}else H.set($.name,V)}}function p(){c.pop().handleEnd()}var d=/^<\?xml /i,h=/ encoding="([^"]+)"/i,m=/^utf-8$/i;function g(S){if(d.test(S)){var M=h.exec(S),N=M&&M[1];!N||m.test(N)||a.addWarning({message:"unsupported document encoding <"+N+">, falling back to UTF-8"})}}function R(S,M){var N=c.peek();try{c.push(N.handleNode(S))}catch(T){u(T,M,o)&&c.push(new Lu)}}function w(S,M){try{c.peek().handleText(S)}catch(N){l(N,M)}}function b(S,M){S.trim()&&w(S,M)}var x=r.getPackages().reduce(function(S,M){return S[M.uri]=M.prefix,S},Object.entries(Ou).reduce(function(S,[M,N]){return S[N]=M,S},r.config&&r.config.nsMap||{}));return s.ns(x).on("openTag",function(S,M,N,T){var H=S.attrs||{},V=Object.keys(H).reduce(function(G,fe){var ze=M(H[fe]);return G[fe]=ze,G},{}),$={name:S.name,originalName:S.originalName,attributes:V,ns:S.ns};R($,T)}).on("question",g).on("closeTag",p).on("cdata",w).on("text",function(S,M,N){b(M(S),N)}).on("error",u).on("warn",l),new Promise(function(S,M){var N;try{s.parse(e),f()}catch(G){N=G}var T=i.element;!N&&!T&&(N=qi("failed to parse document as <"+i.type.$descriptor.name+">"));var H=a.warnings,V=a.references,$=a.elementsById;return N?(N.warnings=H,M(N)):S({rootElement:T,elementsById:$,references:V,warnings:H})})},Bu.prototype.handler=function(e){return new Nu(this.model,e)};function E0(){var e=[];return Object.defineProperty(e,"peek",{value:function(){return this[this.length-1]}}),e}var S0=`<?xml version="1.0" encoding="UTF-8"?>
|
|
5
|
+
`,R0=/<|>|'|"|&|\n\r|\n/g,ld=/<|>|&/g;function ci(e){this.prefixMap={},this.uriMap={},this.used={},this.wellknown=[],this.custom=[],this.parent=e,this.defaultPrefixMap=e&&e.defaultPrefixMap||{}}ci.prototype.mapDefaultPrefixes=function(e){this.defaultPrefixMap=e},ci.prototype.defaultUriByPrefix=function(e){return this.defaultPrefixMap[e]},ci.prototype.byUri=function(e){return this.uriMap[e]||this.parent&&this.parent.byUri(e)},ci.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)},ci.prototype.uriByPrefix=function(e){return this.prefixMap[e||"xmlns"]||this.parent&&this.parent.uriByPrefix(e)},ci.prototype.mapPrefix=function(e,t){this.prefixMap[e||"xmlns"]=t},ci.prototype.getNSKey=function(e){return e.prefix!==void 0?e.uri+"|"+e.prefix:e.uri},ci.prototype.logUsed=function(e){var t=e.uri,n=this.getNSKey(e);this.used[n]=this.byUri(t),this.parent&&this.parent.logUsed(e)},ci.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 C0(e){return e.charAt(0).toLowerCase()+e.slice(1)}function P0(e,t){return ad(t)?C0(e):e}function pd(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function fd(e){return wn(e)?e:(e.prefix?e.prefix+":":"")+e.localName}function A0(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 T0(e,t){return t.isGeneric?L({localName:t.ns.localName},e):L({localName:P0(t.ns.localName,t.$pkg)},e)}function M0(e,t){return L({localName:t.ns.localName},e)}function k0(e){var t=e.$descriptor;return Ie(t.properties,function(n){var i=n.name;if(n.isVirtual||!En(e,i))return!1;var r=e[i];return r===n.default||r===null?!1:n.isMany?r.length:!0})}var D0={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},O0={"<":"lt",">":"gt","&":"amp"};function dd(e,t,n){return e=wn(e)?e:""+e,e.replace(t,function(i){return"&"+n[i]+";"})}function L0(e){return dd(e,R0,D0)}function I0(e){return dd(e,ld,O0)}function N0(e){return Ie(e,function(t){return t.isAttr})}function B0(e){return Ie(e,function(t){return!t.isAttr})}function $u(e){this.tagName=e}$u.prototype.build=function(e){return this.element=e,this},$u.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()};function Tr(){}Tr.prototype.serializeValue=Tr.prototype.serializeTo=function(e){e.append(this.escape?I0(this.value):this.value)},Tr.prototype.build=function(e,t){return this.value=t,e.type==="String"&&t.search(ld)!==-1&&(this.escape=!0),this};function ju(e){this.tagName=e}pd(ju,Tr),ju.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()};function ht(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}ht.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=k0(e),this.parseAttributes(N0(r)),this.parseContainments(B0(r))),this.parseGenericAttributes(e,i),this},ht.prototype.nsTagName=function(e){var t=this.logNamespaceUsed(e.ns);return T0(t,e)},ht.prototype.nsPropertyTagName=function(e){var t=this.logNamespaceUsed(e.ns);return M0(t,e)},ht.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},ht.prototype.nsAttributeName=function(e){var t;if(wn(e)?t=an(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}:L({localName:t.localName},n)},ht.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}))},ht.prototype.parseGenericContainments=function(e){var t=e.$body;t&&this.body.push(new Tr().build({type:"String"},t));var n=e.$children;n&&k(n,i=>{this.body.push(new ht(this).build(i))})},ht.prototype.parseNsAttribute=function(e,t,n){var i=e.$model,r=an(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)}},ht.prototype.parseNsAttributes=function(e){var t=this,n=e.$attrs,i=[];return k(n,function(r,o){var a=t.parseNsAttribute(e,o,r);a&&i.push(a)}),i},ht.prototype.parseGenericAttributes=function(e,t){var n=this;k(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)}})},ht.prototype.parseContainments=function(e){var t=this,n=this.body,i=this.element;k(e,function(r){var o=i.get(r.name),a=r.isReference,s=r.isMany;if(s||(o=[o]),r.isBody)n.push(new Tr().build(r,o[0]));else if(Jf(r.type))k(o,function(u){n.push(new ju(t.addTagName(t.nsPropertyTagName(r))).build(r,u))});else if(a)k(o,function(u){n.push(new $u(t.addTagName(t.nsPropertyTagName(r))).build(u))});else{var c=cd(r);k(o,function(u){var l;c?c===sd?l=new ht(t,r):l=new ts(t,r,c):l=new ht(t),n.push(l.build(u))})}})},ht.prototype.getNamespaces=function(e){var t=this.namespaces,n=this.parent,i;return t||(i=n&&n.getNamespaces(),e||!i?this.namespaces=t=new ci(i):t=i),t},ht.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},ht.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},ht.prototype.parseAttributes=function(e){var t=this,n=this.element;k(e,function(i){var r=n.get(i.name);if(i.isReference)if(!i.isMany)r=r.id;else{var o=[];k(r,function(a){o.push(a.id)}),r=o.join(" ")}t.addAttribute(t.nsAttributeName(i),r)})},ht.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),fd(e)},ht.prototype.addAttribute=function(e,t){var n=this.attrs;wn(t)&&(t=L0(t));var i=Kf(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)},ht.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=A0(n).concat(t)),k(t,function(i){e.append(" ").append(fd(i.name)).append('="').append(i.value).append('"')})},ht.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==Tr;e.appendIndent().append("<"+this.tagName),this.serializeAttributes(e),e.append(t?">":" />"),t&&(n&&e.appendNewLine().indent(),k(this.body,function(i){i.serializeTo(e)}),n&&e.unindent().appendIndent(),e.append("</"+this.tagName+">")),e.appendNewLine()};function ts(e,t,n){ht.call(this,e,t),this.serialization=n}pd(ts,ht),ts.prototype.parseNsAttributes=function(e){var t=ht.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},ts.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri};function $0(){this.value="",this.write=function(e){this.value+=e}}function j0(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 F0(e){e=L({format:!1,preamble:!0},e||{});function t(n,i){var r=i||new $0,o=new j0(r,e.format);e.preamble&&o.append(S0);var a=new ht,s=n.$model;if(a.getNamespaces().mapDefaultPrefixes(H0(s)),a.build(n).serializeTo(o),!i)return r.value}return{toXML:t}}function H0(e){const t=e.config&&e.config.nsMap||{},n={};for(const i in Ou)n[i]=Ou[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 ns(e,t){zn.call(this,e,t)}ns.prototype=Object.create(zn.prototype),ns.prototype.fromXML=function(e,t,n){wn(t)||(n=t,t="bpmn:Definitions");var i=new Bu(L({model:this,lax:!0},n)),r=i.handler(t);return i.fromXML(e,r)},ns.prototype.toXML=function(e,t){var n=new F0(t);return new Promise(function(i,r){try{var o=n.toXML(e);return i({xml:o})}catch(a){return r(a)}})};var z0="BPMN20",V0="http://www.omg.org/spec/BPMN/20100524/MODEL",G0="bpmn",W0=[],U0=[{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"}]}],Y0=[{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"}]}],q0={tagAlias:"lowerCase",typePrefix:"t"},K0={name:z0,uri:V0,prefix:G0,associations:W0,types:U0,enumerations:Y0,xml:q0},X0="BPMNDI",Z0="http://www.omg.org/spec/BPMN/20100524/DI",Q0="bpmndi",J0=[{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"]}],ew=[{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"}]}],tw=[],nw={name:X0,uri:Z0,prefix:Q0,types:J0,enumerations:ew,associations:tw},iw="DC",rw="http://www.omg.org/spec/DD/20100524/DC",ow="dc",aw=[{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}]}],sw=[],cw={name:iw,uri:rw,prefix:ow,types:aw,associations:sw},uw="DI",lw="http://www.omg.org/spec/DD/20100524/DI",pw="di",fw=[{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"}]}],dw=[],hw={tagAlias:"lowerCase"},mw={name:uw,uri:lw,prefix:pw,types:fw,associations:dw,xml:hw},gw="bpmn.io colors for BPMN",yw="http://bpmn.io/schema/bpmn/biocolor/1.0",vw="bioc",_w=[{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"}]}],bw=[],xw=[],ww={name:gw,uri:yw,prefix:vw,types:_w,enumerations:bw,associations:xw},Ew="BPMN in Color",Sw="http://www.omg.org/spec/BPMN/non-normative/color/1.0",Rw="color",Cw=[{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"}]}],Pw=[],Aw=[],Tw={name:Ew,uri:Sw,prefix:Rw,types:Cw,enumerations:Pw,associations:Aw};const Mw={bpmn:K0,bpmndi:nw,dc:cw,di:mw,bioc:ww,color:Tw};function hd(e,t){const n=L({},Mw,e);return new ns(n,t)}const kw={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"}},Dw="http://www.omg.org/spec/BPMN/non-normative/extensions/i18n/1.0",md="i18n",is={[md]:kw,[wu]:Gf};function gd(){return hd(is)}const yd=gd();async function Fu(e){const{rootElement:t,warnings:n}=await yd.fromXML(e,"bpmn:Definitions");return{definitions:t,warnings:n}}async function Ow(e){const{xml:t}=await yd.toXML(e,{format:!0});return t}function Hu(e){return e.map(t=>typeof t=="string"?t:t.message??String(t))}const io={cjkEm:.865,upperEm:.68,lowerEm:.5,digitEm:.556,spaceEm:.278,otherEm:.35,ascentEm:.9,descentEm:.25},Lw=/[ᄀ-ᇿ -〿-ヿ㐀-鿿가--⦆]/;function Iw(e){const t=io;return Lw.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 ro(e,t){let n=0;for(const i of e)n+=t*Iw(i);return n}function vd(e=globalThis,{textMeasurement:t="approximate"}={}){if(!(e!=null&&e.SVGElement))throw new Error("installHeadlessBpmnDom: DOM 전역이 없다 — jsdom window 를 전역에 올린 뒤 호출할 것");t==="approximate"&&Nw(e),Bw(e),$w(e),jw(e)}function Nw(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:ro(r,o),fontBoundingBoxAscent:o*io.ascentEm,fontBoundingBoxDescent:o*io.descentEm,actualBoundingBoxAscent:o*io.ascentEm,actualBoundingBoxDescent:o*io.descentEm}}};t.getContext=()=>n}function Bw(e){if(e.SVGMatrix)return;class t{constructor(){Xr(this,"a",1);Xr(this,"b",0);Xr(this,"c",0);Xr(this,"d",1);Xr(this,"e",0);Xr(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 $w(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 jw(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:ro(n,12),height:14}})}const rs=new Set(["bpmn:Participant","bpmn:Lane","bpmn:Group","bpmn:SubProcess","bpmn:AdHocSubProcess","bpmn:Transaction"]),Fw=1,Hw=2;function Ki(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"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]}`;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"pool-name-over-label":return`pn|${e.pool}|${e.label}`}}const _d=20,bd=5,xd=3,wd=12,zw=wd*1.2;function zu(e,t){const n=t.split(/\r?\n/),i=Math.max(...n.map(o=>ro(o,wd))),r=n.length*zw;return{x:e.x+e.width/2-i/2,y:e.y+e.height/2-r/2,width:i,height:r}}const Ed=1;function mn(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 os(e,t){let n=null;const i=e.type!==t.type;for(const r of mn(e))for(const o of mn(t)){if(r.axis!==o.axis||Math.abs(r.at-o.at)>Ed)continue;const a=r.dir!==o.dir?"opposite":i?"mixed":null;if(!a)continue;const s=Math.min(r.hi,o.hi)-Math.max(r.lo,o.lo);s>=_d&&(!n||s>n.length)&&(n={axis:r.axis,length:s,kind:a})}return n}function Sd(e,t){const n=os(e,t);return n&&n.kind==="opposite"?{axis:n.axis,length:n.length}:null}function Vw(e,t){let n=0;for(const i of t)i.id!==e.id&&Sd(e,i)&&n++;return n}function Mr(e,t){let n=0;for(const i of t)i.id!==e.id&&os(e,i)&&n++;return n}const Rd=15,Cd=20;function Gw(e,t){const n=t.axis==="v"?[e.x,e.x+e.width]:[e.y,e.y+e.height];if(t.at<n[0]-Cd||t.at>n[1]+Cd)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 Vu=20;function as(e,t){const n=[];for(const i of t){if(i.axis!==e.axis||Math.abs(i.at-e.at)>Ed)continue;const r=Math.max(e.lo,i.lo),o=Math.min(e.hi,i.hi);o-r<_d||n.push([r-Vu,o+Vu])}return n}function ss(e,t){const n=e.label;if(!n)return null;let i=null;for(const r of mn(e)){const o=Gw(n,r);if(o){for(const a of t)if(a.id!==e.id&&!(i&&a.id>=i.other)){for(const[s,c]of as(r,mn(a)))if(Math.min(c,o[1])>Math.max(s,o[0])){i={other:a.id,axis:r.axis};break}}}}return i}const Ww=1,Uw=(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 Yw(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 Gu(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 qw=(e,t)=>e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height,oo=1;function Ri(e,t){const n=e.x+oo,i=e.x+e.width-oo,r=e.y+oo,o=e.y+e.height-oo;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 Wo(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 Pd(e,t){const n=e.label;if(!n)return null;if(mn(e).some(i=>Ri(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(mn(i).some(r=>Ri(n,r)))return i.id;for(const i of t.shapes.filter(r=>r.container).sort((r,o)=>r.id.localeCompare(o.id)))if(Wo(i).some(r=>Ri(n,r)))return i.id;return null}function Vn(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(Yw(e.waypoints[o],e.waypoints[o+1],r,Hw)){i.push(r);break}}return i}function Kw(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 Ad=(e,t)=>e.endpoints.some(n=>t.endpoints.includes(n));function cs(e,t){let n=0;for(const i of t){if(i.id===e.id||Ad(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++)Kw(e.waypoints[o],e.waypoints[o+1],i.waypoints[a],i.waypoints[a+1])&&(r=!0);r&&n++}return n}function Ci(e,t){let n=0;for(const i of t)i.id===e.id||Ad(e,i)||cs(e,[i])>0&&(n+=i.type===e.type?2:1);return n}function Td(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++)cs(n[i],[n[r]])>0&&(t+=n[i].type===n[r].type?2:1);return t}function Wu(e){const t=[],n=e.edges;for(let i=0;i<n.length;i++)for(let r=i+1;r<n.length;r++)if(cs(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 Md(e){var n;const t=(n=mt(e==null?void 0:e.extensionElements))==null?void 0:n.values;if(Array.isArray(t))for(const i of t){const r=mt(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 kd=e=>e?{members:e}:{},Pi=e=>e.shapes.filter(t=>!t.container);function Xw(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 Dd(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(mn(i).some(r=>Ri(n,r)))return i.id;for(const i of[...t.shapes].filter(r=>r.container).sort((r,o)=>r.id.localeCompare(o.id)))if(Wo(i).some(r=>Ri(n,r)))return i.id;return null}function Uo(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 Xi(e){const t=[],n=e.shapes.filter(p=>!p.container);for(const p of e.edges)for(const d of Vn(p,n))t.push({kind:"edge-crosses-shape",edge:p.id,shape:d.id});const i=n.filter(p=>!p.attached);for(let p=0;p<i.length;p++)for(let d=p+1;d<i.length;d++){const h=i[p],m=i[d];if(!Gu(h,m,Fw))continue;const g=h.id<m.id?[h.id,m.id]:[m.id,h.id];t.push({kind:"shape-overlap",shapes:g,identical:qw(h,m)})}const r=e.shapes.filter(p=>p.type==="bpmn:Group"&&Array.isArray(p.members)&&p.members.length>0);for(let p=0;p<r.length;p++)for(let d=p+1;d<r.length;d++){const h=r[p],m=r[d],g=Math.min(h.x+h.width,m.x+m.width)-Math.max(h.x,m.x),R=Math.min(h.y+h.height,m.y+m.height)-Math.max(h.y,m.y);if(g<=bd||R<=bd)continue;const w=new Set(m.members);h.members.some(b=>w.has(b))||t.push({kind:"group-overlap-unintended",groups:h.id<m.id?[h.id,m.id]:[m.id,h.id]})}const o=e.shapes.filter(p=>p.container&&p.type!=="bpmn:Group"&&p.type!=="bpmn:Lane");for(const p of e.shapes.filter(d=>d.type==="bpmn:Group"))for(const d of o){const h=p.x<d.x+d.width&&d.x<p.x+p.width,m=p.y<d.y+d.height&&d.y<p.y+p.height,g=[["top",p.y,d.y,h],["bottom",p.y+p.height,d.y+d.height,h],["left",p.x,d.x,m],["right",p.x+p.width,d.x+d.width,m]];for(const[R,w,b,x]of g)x&&Math.abs(w-b)<=xd&&t.push({kind:"group-on-container-boundary",group:p.id,container:d.id,side:R})}const a=e.shapes.filter(p=>p.type==="bpmn:Group");for(let p=0;p<a.length;p++)for(let d=p+1;d<a.length;d++){const h=a[p],m=a[d],g=h.x<m.x+m.width&&m.x<h.x+h.width,R=h.y<m.y+m.height&&m.y<h.y+h.height,w=[["x",h.x+h.width,m.x,R],["x",m.x+m.width,h.x,R],["y",h.y+h.height,m.y,g],["y",m.y+m.height,h.y,g]];for(const[b,x,S,M]of w)if(M&&Math.abs(x-S)<=xd){t.push({kind:"group-on-group-boundary",groups:h.id<m.id?[h.id,m.id]:[m.id,h.id],axis:b});break}}for(let p=0;p<e.edges.length;p++)for(let d=p+1;d<e.edges.length;d++){const h=e.edges[p],m=e.edges[d],g=os(h,m);if(!g)continue;const R=h.id<m.id?[h.id,m.id]:[m.id,h.id];t.push({kind:g.kind==="opposite"?"edge-overlap-opposite":"edge-overlap-mixed",edges:R,axis:g.axis,length:Math.round(g.length)})}for(const p of e.edges){if(!p.label)continue;const d=ss(p,e.edges);d&&t.push({kind:"label-on-shared-segment",edge:p.id,other:d.other,axis:d.axis})}for(const p of e.edges){if(!p.label)continue;const d=Pd(p,e);d&&t.push({kind:"label-over-line",edge:p.id,line:d})}const s=new Set(n.map(p=>p.id)),c=e.shapes.filter(p=>p.type==="bpmn:Participant"&&p.label);for(const p of[...n,...c.filter(d=>!s.has(d.id))]){if(!p.label)continue;const d=Dd(p,e);d&&t.push({kind:"label-over-line",edge:p.id,line:d})}const u=new Set(e.shapes.filter(p=>p.type==="bpmn:TextAnnotation").map(p=>p.id));for(const p of c)for(const{owner:d,rect:h}of Uo(e))d===p.id||u.has(d)||Gu(p.label,h,oo)&&t.push({kind:"pool-name-over-label",pool:p.id,label:d});const l=Uo(e);for(const p of n)if(p.type==="bpmn:TextAnnotation")for(const{owner:d,rect:h}of l)d!==p.id&&Gu(p,h,oo)&&t.push({kind:"annotation-over-label",annotation:p.id,label:d});const f=new Map(e.shapes.map(p=>[p.id,p]));for(const p of n){const d=p.parent??Xw(p,e,f);if(!d)continue;const h=f.get(d);!h||!h.container||Uw(h,p,Ww)||t.push({kind:"shape-outside-container",shape:p.id,container:h.id})}return t.sort((p,d)=>Ki(p).localeCompare(Ki(d)))}const mt=e=>typeof e=="object"&&e!==null?e:void 0,xt=e=>typeof e=="number"?e:0,kr=e=>{const t=mt(e);return typeof(t==null?void 0:t.id)=="string"?t.id:void 0};function Zw(e){const t=mt(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=kr(o);a&&n.push(a)}}return n}function Qw(e,t){const n=mt(e.$parent);if(!n)return;const i=typeof n.$type=="string"?n.$type:"";if(i==="bpmn:Process"){const r=kr(n);return r?t.get(r):void 0}if(rs.has(i)&&i!=="bpmn:Lane"&&i!=="bpmn:Group")return kr(n)}function Od(e){var a,s,c,u,l;const t=[],n=[],i=((a=mt(e))==null?void 0:a.diagrams)??[],r=new Map,o=new Set;for(const f of((s=mt(e))==null?void 0:s.rootElements)??[]){const p=mt(f);if((p==null?void 0:p.$type)==="bpmn:Collaboration")for(const d of p.participants??[]){const h=mt(d),m=kr(h),g=kr(h==null?void 0:h.processRef);m&&g?r.set(g,m):m&&o.add(m)}}for(const f of i){const p=mt((c=mt(f))==null?void 0:c.plane),d=(p==null?void 0:p.planeElement)??[];for(const h of d){const m=mt(h);if(!m)continue;const g=mt(m.bpmnElement),R=typeof(g==null?void 0:g.id)=="string"?g.id:void 0;if(!R)continue;const w=typeof(g==null?void 0:g.$type)=="string"?g.$type:"",b=mt(m.bounds);if(b){const S=m.isExpanded===!1&&w!=="bpmn:Participant",M=mt((u=mt(m.label))==null?void 0:u.bounds),N={id:R,type:w,x:xt(b.x),y:xt(b.y),width:xt(b.width),height:xt(b.height),container:rs.has(w)&&!S,attached:(g==null?void 0:g.attachedToRef)!==void 0,...g?{parent:Qw(g,r)}:{},...M?{label:{x:xt(M.x),y:xt(M.y),width:xt(M.width),height:xt(M.height)}}:{},...w==="bpmn:Group"?kd(Md(g)):{}},T=m.isHorizontal!==!1,H=typeof(g==null?void 0:g.name)=="string"?g.name:"";o.has(R)&&T&&H&&(N.label=zu(N,H)),t.push(N);continue}const x=m.waypoint;if(Array.isArray(x)){const S=mt((l=mt(m.label))==null?void 0:l.bounds);n.push({id:R,type:w,waypoints:x.map(M=>{var N,T;return{x:xt((N=mt(M))==null?void 0:N.x),y:xt((T=mt(M))==null?void 0:T.y)}}),endpoints:Zw(g),...S?{label:{x:xt(S.x),y:xt(S.y),width:xt(S.width),height:xt(S.height)}}:{}})}}}return{shapes:t,edges:n}}function Ld(e){return Xi(Od(e))}async function Jw(e){const{definitions:t,warnings:n}=await Fu(e);return{findings:Ld(t),warnings:n}}function jt(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=mt(o.label);n.push({id:o.id,type:a,waypoints:s.map(g=>({x:xt(g.x),y:xt(g.y)})),endpoints:[kr(o.source),kr(o.target)].filter(g=>!!g),...m&&typeof m.x=="number"?{label:{x:m.x,y:xt(m.y),width:xt(m.width),height:xt(m.height)}}:{}});continue}if(typeof o.x!="number"||typeof o.y!="number")continue;const c=mt(o.businessObject),u=mt(o.label);let l=mt(o.parent);for(;l&&l.type==="bpmn:Lane";)l=mt(l.parent);const f=typeof(l==null?void 0:l.type)=="string"?l.type:"",p=l&&rs.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:xt(o.width),height:xt(o.height),container:rs.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:xt(u.y),width:xt(u.width),height:xt(u.height)}}:{},...a==="bpmn:Group"?kd(Md(c)):{}},h=typeof(c==null?void 0:c.name)=="string"?c.name:"";a==="bpmn:Participant"&&!(c!=null&&c.processRef)&&h&&((i=mt(o.di))==null?void 0:i.isHorizontal)!==!1&&(d.label=zu(d,h)),t.push(d)}return{shapes:t,edges:n}}const eE={"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 tE(e,t){const n=eE[e];return n||(e==="label"||e.startsWith("bpmndi:")?"other":e.startsWith("bpmn:")&&!("waypoints"in t&&t.waypoints)?"flowNode":"other")}function Id(e){let t=e.parent;for(;t;){if(t.type==="bpmn:Participant")return t.id;t=t.parent}}function Nd(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 tE(i.type,i)},lanesOf:n=>t().filter(i=>i.type==="bpmn:Lane"&&Id(i)===n).sort((i,r)=>i.y-r.y).map(i=>i.id),participantOf:n=>{const i=e.get(n);return i?Id(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 Bd=20,nE=4,Pt=(e,t)=>Math.abs(e-t)<.5;function $d(e,t,n,i=Bd){if(Pt(e.y,t.y)&&!Pt(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(Pt(e.x,t.x)&&!Pt(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 jd(e,t,n=Bd){if(e.length!==4)return null;const[i,r,o,a]=e;if(Pt(i.y,r.y)&&Pt(r.x,o.x)&&Pt(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(Pt(i.x,r.x)&&Pt(r.y,o.y)&&Pt(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 Uu(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 Fd=30,iE=[0,-25,25,-40,40];function rE(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+Fd:s-Fd,u=a?i.y+i.height:i.y,l=n.x+n.width/2,f=i.x+i.width/2;return iE.map(p=>[{x:l,y:s},{x:l,y:c},{x:f+p,y:c},{x:f+p,y:u}])}const oE=(e,t,n)=>[...e.slice(0,t+1),...n,...e.slice(t+1)],us=(e,t,n)=>Vn({...e,waypoints:t},n).length;function Hd(e,t,n,i){let r=[...e.waypoints],o=us(e,r,t);if(o===0)return null;let a=!1;for(const f of Uu(e,t))if(us(e,f,t)===0)return f;const s=(i??[]).filter(f=>f.id!==e.id).flatMap(mn),c=f=>mn({...e,waypoints:f}).some(p=>as(p,s).length>0),u=rE(e,t).filter(f=>us(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);for(let f=0;f<nE&&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)||Vn({...e,waypoints:[h,m]},[g]).length===0)continue;const R=$d(h,m,g),w=R?R.map(x=>oE(r,d,x)):jd(r,g)??[];if(!w.length)continue;const b=[...w].sort((x,S)=>Number(l(S))-Number(l(x)));for(const x of b){const S=us(e,x,t);if(S<o){r=x,o=S,p=!0,a=!0;break}}if(p)break}}if(!p)break}return a&&o===0?r:null}function zd(e,t){const{elementRegistry:n}=e,i=e.modeling,r=jt(n),o=Pi(r),a=Xi(r).filter(c=>c.kind==="edge-crosses-shape"&&!t.has(Ki(c)));if(!a.length)return;const s=new Map;for(const c of a){if(c.kind!=="edge-crosses-shape"||s.has(c.edge))continue;const u=r.edges.find(l=>l.id===c.edge);u&&s.set(c.edge,u)}for(const[c,u]of s){const l=n.get(c);if(!l)continue;const f=l.parent,p=f&&typeof f.x=="number"&&typeof f.width=="number"?{x:f.x,y:f.y,width:f.width,height:f.height}:void 0,d=Hd(u,o,p,r.edges);d&&i.updateWaypoints(l,d)}}const aE=10;function Vd(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 Gd(e,t){if(e.waypoints.length<2||e.endpoints.length!==2)return null;const n=t.shapes.filter(G=>G.type==="bpmn:Participant"&&G.container),i=t.shapes.find(G=>G.id===e.endpoints[0]),r=t.shapes.find(G=>G.id===e.endpoints[1]);if(!i||!r)return null;const o=Vd(i,n),a=Vd(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(G=>G.id!==o.id&&G.id!==a.id&&G.y>=c.y+c.height&&G.y+G.height<=u.y).sort((G,fe)=>G.y-fe.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,R=e.waypoints[0],w=e.waypoints[e.waypoints.length-1],b=Pi(t),x=t.edges.filter(G=>G.id!==e.id),S=Ci(e,x),M=Vn(e,b).length;if(S===0&&M===0||M===0&&e.waypoints.length===2)return null;const N=Math.min(...l.map(G=>G.x)),T=Math.max(...l.map(G=>G.x+G.width)),H=(R.x+w.x)/2,V=G=>G.filter((fe,ze)=>ze===0||!(Pt(fe.x,G[ze-1].x)&&Pt(fe.y,G[ze-1].y)));let $;for(let G=N;G<=T;G+=aE){const fe=V([R,{x:R.x,y:m},{x:G,y:m},{x:G,y:g},{x:w.x,y:g},w]),ze={...e,waypoints:fe};if(Vn(ze,b).length>0)continue;const lt=Ci(ze,x),q=Math.abs(G-H);(!$||lt<$.cross||lt===$.cross&&q<$.detour)&&($={pts:fe,cross:lt,detour:q})}return $&&(M>0?$.cross<=S:$.cross<S)?$.pts:null}function Wd(e,t){const{elementRegistry:n}=e,i=e.modeling,r=jt(n);for(const o of r.edges){if(o.type!=="bpmn:MessageFlow"||t.has(o.id))continue;const a=jt(n),s=a.edges.find(l=>l.id===o.id);if(!s)continue;const c=Gd(s,a);if(!c)continue;const u=n.get(o.id);u&&i.updateWaypoints(u,c)}}const ao=[25,-25,40,-40],ls=35;function Ud(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[];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-ls:n.y+n.height+ls,f=[];for(const w of[0,...ao]){if(Math.abs(w)>=i.width/2-5)continue;const b=o+w;f.push({pts:[{x:n.x,y:r},{x:b,y:r},{x:b,y:c}],cost:Math.abs(w)});for(const x of[0,...ao]){if(Math.abs(x)>=n.width/2-5)continue;const S=a+x;f.push({pts:[{x:S,y:u},{x:S,y:l},{x:b,y:l},{x:b,y:c}],cost:Math.abs(w)+Math.abs(x)})}}const p=50,d=i.y+i.height/2,h=s?n.y+n.height:n.y;for(const w of[0,...ao]){if(Math.abs(w)>=n.width/2-5)continue;const b=a+w;f.push({pts:[{x:b,y:h},{x:b,y:d},{x:i.x+i.width,y:d}],cost:p+Math.abs(w)})}const m=60,g=s?i.y+i.height:i.y,R=s?i.y+i.height+ls:i.y-ls;for(const w of[0,...ao]){if(Math.abs(w)>=i.width/2-5)continue;const b=o+w;for(const x of[0,...ao]){if(Math.abs(x)>=n.width/2-5)continue;const S=a+x;f.push({pts:[{x:S,y:h},{x:S,y:R},{x:b,y:R},{x:b,y:g}],cost:m+Math.abs(w)+Math.abs(x)})}}return f}const ps=30;function Yd(e,t){for(let n=1;n<e.length-2;n++){const i=e[n],r=e[n+1],o=Pt(i.y,r.y)&&!Pt(i.x,r.x),a=Pt(i.x,r.x)&&!Pt(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)<ps||Math.abs(i.y-(s.y+s.height))<ps)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)<ps||Math.abs(i.x-(s.x+s.width))<ps)return!0}}return!1}const fs=40;function sE(e,t,n){let i=0;for(const r of t){if(r.container||n.includes(r.id))continue;const o=r.x-fs,a=r.x+r.width+fs,s=r.y-fs,c=r.y+r.height+fs;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 qd(e,t){if(e.type!=="bpmn:SequenceFlow")return null;const n=t.shapes.filter(w=>w.container),i=new Map(t.shapes.map(w=>[w.id,w])),r=Pi(t),o=t.edges.filter(w=>w.id!==e.id),a=Mr(e,o),s=Ci(e,o),c=w=>sE(w,t.shapes,e.endpoints)+(Yd(w,n)?1:0),u=c(e.waypoints),l=w=>{if(!w)return;const b=w.x+w.width/2,x=w.y+w.height/2;return n.find(S=>S.type==="bpmn:Lane"&&b>=S.x&&b<=S.x+S.width&&x>=S.y&&x<=S.y+S.height)},f=l(i.get(e.endpoints[0]??"")),p=l(i.get(e.endpoints[1]??"")),d=!!f&&!!p&&f.id!==p.id,h=w=>{if(!d||!p)return!1;for(let b=1;b<w.length-2;b++){const x=w[b],S=w[b+1];if(Pt(x.y,S.y)&&!Pt(x.x,S.x)&&x.y>p.y&&x.y<p.y+p.height)return!0}return!1},m=h(e.waypoints);if(!Yd(e.waypoints,n)&&!(d&&!m))return null;const g=w=>w.reduce((b,x,S)=>S?b+Math.abs(x.x-w[S-1].x)+Math.abs(x.y-w[S-1].y):0,0);let R;for(const{pts:w,cost:b}of Ud(e,i)){const x={...e,waypoints:w};if(Vn(x,r).length>0||Mr(x,o)>a||Ci(x,o)>s)continue;const S=c(w),M=h(w);if(!(M&&!m)&&S>=u)continue;const T=M?0:1,H=g(w);(!R||T<R.lane||T===R.lane&&(S<R.sc||S===R.sc&&(b<R.cost||b===R.cost&&H<R.len)))&&(R={pts:w,sc:S,lane:T,cost:b,len:H})}return(R==null?void 0:R.pts)??null}function cE(e,t){const{elementRegistry:n}=e,i=e.modeling,r=jt(n).edges.filter(o=>!t.has(o.id)&&o.waypoints.length>=4).map(o=>o.id).sort();for(const o of r){const a=jt(n),s=a.edges.find(d=>d.id===o);if(!s||s.waypoints.length<4)continue;const c=Pi(a),u=a.edges.filter(d=>d.id!==o),l=Vn(s,c).length,f=Mr(s,u),p=Ci(s,u);for(const d of Uu(s,a.shapes)){if(d.length>=s.waypoints.length)continue;const h={...s,waypoints:d};if(Vn(h,c).length>l||Mr(h,u)>f||Ci(h,u)>p)continue;const m=n.get(o);m&&i.updateWaypoints(m,d);break}}}function Kd(e,t){const{elementRegistry:n}=e,i=e.modeling,r=jt(n).edges.filter(o=>o.type==="bpmn:SequenceFlow"&&!t.has(o.id)).map(o=>o.id).sort();for(const o of r){const a=jt(n),s=a.edges.find(l=>l.id===o);if(!s)continue;const c=qd(s,a);if(!c)continue;const u=n.get(o);u&&i.updateWaypoints(u,c)}}function uE(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=Pt(n[0].x,n[1].x)&&!Pt(n[0].y,n[1].y),s=Pt(n[n.length-1].x,n[n.length-2].x)&&!Pt(n[n.length-1].y,n[n.length-2].y);for(const c of ao){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 Xd(e,t){const n=new Map(t.shapes.map(l=>[l.id,l])),i=Pi(t),r=t.edges.filter(l=>l.id!==e.id),o=Mr(e,r);if(o===0)return null;const a=Ci(e,r);let s;const c=l=>l.reduce((f,p,d)=>d?f+Math.abs(p.x-l[d-1].x)+Math.abs(p.y-l[d-1].y):0,0),u=[...Ud(e,n),...uE(e,n)];for(const{pts:l,cost:f}of u){const p={...e,waypoints:l};if(Vn(p,i).length>0)continue;const d=Mr(p,r),h=Ci(p,r);if(d>=o||h-a>o-d)continue;const m=c(l);(!s||d<s.opposite||d===s.opposite&&(h<s.cross||h===s.cross&&(f<s.cost||f===s.cost&&m<s.len)))&&(s={pts:l,opposite:d,cross:h,cost:f,len:m})}return(s==null?void 0:s.pts)??null}function Zd(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=jt(i),a=Xi(o).filter(l=>(l.kind==="edge-overlap-opposite"||l.kind==="edge-overlap-mixed")&&!t.has(Ki(l)));if(!a.length)return;const s=new Set;for(const l of a)if(!(l.kind!=="edge-overlap-opposite"&&l.kind!=="edge-overlap-mixed"))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=jt(i),p=f.edges.find(m=>m.id===l);if(!p)continue;const d=Xd(p,f);if(!d)continue;const h=i.get(l);h&&r.updateWaypoints(h,d)}}const lE=10,pE=(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 Qd(e,t){const n=e.label;if(!n)return null;const i=t.edges.filter(a=>a.id!==e.id);if(!ss(e,i))return null;const r=Pi(t),o=i.flatMap(mn);for(const a of mn(e)){let s=[[a.lo,a.hi]];for(const[d,h]of as(a,o))s=s.flatMap(([m,g])=>{const R=[];return d>m&&R.push([m,Math.min(g,d)]),h<g&&R.push([Math.max(m,h),g]),R.filter(([w,b])=>b>w)});const c=a.axis==="h"?n.width:n.height,u=s.find(([d,h])=>h-d>=c+lE*2);if(!u)continue;const l=(u[0]+u[1])/2,f=a.axis==="h"?{x:l,y:a.at-Rd}:{x:a.at+Rn+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(!ss({...e,label:p},i)&&!r.some(d=>!e.endpoints.includes(d.id)&&pE(p,d)))return p}return null}const Rn=8;function Jd(e,t){const n=e.label;if(!n)return null;const i=mn(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(mn),...t.shapes.filter(p=>p.container).flatMap(Wo)],u=p=>!c.some(d=>Ri(p,d));if(u(n))return null;const l=(s.axis==="v"?n.height:n.width)+Rn,f=[0,-l,l,-2*l,2*l];if(s.axis==="v")for(const p of[s.at+Rn,s.at-Rn-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-Rn-n.height,s.at+Rn])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 eh(e,t){const{elementRegistry:n}=e,i=e.modeling,r=jt(n);for(const o of r.edges){if(!o.label||t.has(o.id))continue;const a=Jd(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 th(e,t,n){const{elementRegistry:i}=e,r=e.modeling,o=jt(i),a=Xi(o).filter(s=>s.kind==="label-on-shared-segment"&&!t.has(Ki(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=Qd(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 nh(e,t){const n=e.label;if(!n)return null;const i=[...t.edges.flatMap(mn),...t.shapes.filter(p=>p.container).flatMap(Wo)],r=i.filter(p=>Ri(n,p));if(!r.length)return null;const o=t.shapes.filter(p=>!p.container&&p.id!==e.id),a=Uo(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=>Ri(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-Rn-n.height},{...n,y:p.at+Rn}):u.push({...n,x:p.at-Rn-n.width},{...n,x:p.at+Rn});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+Rn},{...n,x:l-n.width/2,y:e.y-Rn-n.height},{...n,x:e.x+e.width+Rn,y:f-n.height/2},{...n,x:e.x-Rn-n.width,y:f-n.height/2}),u.find(c)??null}function ih(e,t){const{elementRegistry:n}=e,i=e.modeling,r=jt(n);for(const o of r.shapes){if(o.container||!o.label||t.has(o.id))continue;const a=nh(o,jt(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 fE=/^[\p{L}_][\p{L}\p{N}_.\-]*$/u,rh=new Set(["sequenceFlow","messageFlow","dataAssociation","association"]),oh={"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}]},ds=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Yu=e=>typeof e=="string"&&e!=="";function dE(e){const t=[];function n(i,r,o,a){if(a===null){Yu(o)||t.push({kind:"payload-invalid",opIndex:i,field:r});return}if(!ds(o)){t.push({kind:"payload-invalid",opIndex:i,field:r});return}for(const s of a)Yu(o[s])||t.push({kind:"payload-invalid",opIndex:i,field:`${r}.${s}`})}return e.forEach((i,r)=>{if(!ds(i)||!Yu(i.kind)||!(i.kind in oh)){t.push({kind:"payload-invalid",opIndex:r,field:"kind"});return}for(const o of oh[i.kind]){const a=o.path.endsWith("[]"),s=a?o.path.slice(0,-2):o.path,c=s.split(".");let u=i;for(const f of c.slice(0,-1)){if(!ds(u))break;u=u[f]}if(!ds(u))continue;const l=u[c[c.length-1]];if(!(l===void 0&&o.optional)&&!(l===null&&o.optional)){if(!a){n(r,o.path,l,o.shape);continue}if(!Array.isArray(l)){t.push({kind:"payload-invalid",opIndex:r,field:o.path});continue}l.forEach((f,p)=>n(r,`${s}[${p}]`,f,o.shape))}}if(i.kind==="node.add"){const o=i.band;o!==void 0&&(!Number.isInteger(o)||o<0)&&t.push({kind:"payload-invalid",opIndex:r,field:"band"})}}),t}function ah(e,t){const n=dE(e);if(n.length>0)return n;const i=[],r=new Map,o=new Map;function a(p,d,h){if(!fE.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:R,name:w,condition:b}=p.flow,x=u(d,g,"source",["flowNode"]),S=u(d,R,"target",["flowNode"]);x&&S&&c(g)!==c(R)&&i.push({kind:"flow-cross-pool",opIndex:d,id:m}),w!==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:R}=p.flow,w=u(d,g,"source",["flowNode","participant"]),b=u(d,R,"target",["flowNode","participant"]);if(w&&b){const x=c(g),S=c(R);x!==void 0&&x===S&&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(w=>w===p.dataStore.id).length!==1){i.push({kind:"data-association-ends",opIndex:d,source:m.source,target:m.target});continue}const R=m.source===p.dataStore.id?m.target:m.source;u(d,R,"dataAssociation",["flowNode"])}break}case"dataAssociation.add":{const{source:m,target:g}=p.association,R=u(d,m,"source"),w=u(d,g,"target");if(R&&w){const b=new Set([R,w]);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:R}=p.association,w=u(d,g,"source"),b=u(d,R,"target");w&&b&&w!=="annotation"&&b!=="annotation"&&i.push({kind:"association-detached",opIndex:d,annotation:m??`${g}->${R}`});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 R=m===p.annotation.id?g:m;u(d,R,"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&&rh.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(w=>w.id);for(const w of m)g.includes(w)||i.push({kind:"lane-shrink-unsupported",opIndex:d,participant:p.id,lane:w});for(const w of g)t.categoryOf(w)!==void 0&&!m.includes(w)&&i.push({kind:"id-duplicate",opIndex:d,id:w});const R=g.filter(w=>m.includes(w));R.length===m.length&&R.some((w,b)=>w!==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,R=t.endpointsOf(p.id),w=p.source??(R==null?void 0:R.source),b=p.target??(R==null?void 0:R.target);m&&g&&w!==void 0&&b!==void 0&&new Set([c(w),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&&rh.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 sh(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 hs(e){return`bpmn:${e[0].toUpperCase()}${e.slice(1)}`}const qu={"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]};function Zt(e,t){return e.filter(n=>n.kind===t)}function ch(e,t){var Dx,Ox,Lx,Ix,Nx,Bx;const{modeling:n,bpmnFactory:i,elementFactory:r,elementRegistry:o,canvas:a,autoPlace:s,bpmnReplace:c}=t,u=()=>a.getRootElement(),l=E=>o.get(E),f=E=>{const C=l(E);if(!C)throw new Error(`하강 참조 해소 실패: ${E}`);return C},p=E=>{let C=E.parent;for(;C;){if(C.type==="bpmn:Participant")return C;C=C.parent}},d=Zt(e,"participant.add"),h=Zt(e,"node.add"),m=Zt(e,"sequenceFlow.add"),g=Zt(e,"messageFlow.add"),R=Zt(e,"dataStore.add"),w=Zt(e,"dataAssociation.add"),b=Zt(e,"annotation.add"),x=Zt(e,"group.add"),S=new Map(h.map(E=>[E.node.id,E])),M=(E,C,A)=>{var J;const I=E.businessObject,j=(((J=I.extensionElements)==null?void 0:J.values)??[]).filter(Q=>Q.$type!==C),O=A?[...j,i.create(C,A)]:j;if(!O.length){I.extensionElements&&n.updateProperties(E,{extensionElements:void 0});return}const Y=i.create("bpmn:ExtensionElements",{values:O});O.forEach(Q=>{Q.$parent=Y}),n.updateProperties(E,{extensionElements:Y})},N=E=>({anchor:E.anchor,side:E.side,...E.offset!==void 0?{offset:E.offset}:{}});for(const E of Zt(e,"element.remove")){const C=l(E.id);C&&n.removeElements([C])}const T=E=>o.filter(C=>{var A;return C.type==="bpmn:Lane"&&((A=p(C))==null?void 0:A.id)===E}).sort((C,A)=>C.y-A.y);for(const E of Zt(e,"participant.update")){const C=f(E.id);if(E.name!==void 0&&n.updateProperties(C,{name:E.name??void 0}),!E.lanes)continue;const A=T(E.id);if(!A.length){n.splitLane(C,E.lanes.length),T(E.id).forEach((j,O)=>{const Y=E.lanes[O];Y&&n.updateProperties(j,{id:Y.id,name:Y.name})});continue}const I=new Set(A.map(j=>j.id));E.lanes.forEach((j,O)=>{if(I.has(j.id)){n.updateProperties(f(j.id),{name:j.name});return}const Y=O===0?n.addLane(T(E.id)[0],"top"):n.addLane(f(E.lanes[O-1].id),"bottom");n.updateProperties(Y,{id:j.id,name:j.name})})}const H=150,V=130,$=80,G=90,fe=180,ze=new Set;for(const E of d){ze.add(`pool:${E.participant.id}`);for(const C of E.participant.lanes??[])ze.add(C.id)}const lt=new Map;for(const E of h){const C=E.node.lane??`pool:${E.node.participant??""}`;let A=lt.get(C);A||lt.set(C,A=new Set([0])),E.band!==void 0&&A.add(E.band)}const q=new Map;for(const[E,C]of lt){if(!ze.has(E))continue;const A=[...C].sort((O,Y)=>O-Y),I=A.map((O,Y)=>Y===0?0:Y%2===1?Math.ceil(Y/2):-(Y/2)),j=Math.min(...I);q.set(E,new Map(A.map((O,Y)=>[O,I[Y]-j])))}{const E=new Map;for(const C of d)(C.participant.lanes??[]).forEach((A,I)=>E.set(A.id,I));for(const[C,A]of q){if(!E.has(C)||A.size<2)continue;const I=E.get(C),j=A.get(0)??0,O=new Set;for(const pe of h){if(pe.node.lane!==C||(pe.band??0)!==0||!pe.node.type.endsWith("Gateway"))continue;const Ee={in:new Set,out:new Set,cross:new Set};for(const ve of m){const Ze=ve.flow.source===pe.node.id;if(!Ze&&ve.flow.target!==pe.node.id)continue;const ft=S.get(Ze?ve.flow.target:ve.flow.source);if(!ft||ft.node.participant!==pe.node.participant||!ft.node.lane)continue;let Rt,Yt=!1;if(ft.node.lane!==C){const Bt=E.get(ft.node.lane);if(Bt===void 0)continue;Rt=Bt>I?"down":"up",Yt=!0}else{const Bt=A.get(ft.band??0)??j;Rt=Bt>j?"down":Bt<j?"up":void 0}Rt&&(Ee[Ze?"out":"in"].add(Rt),Yt&&Ee.cross.add(Rt))}for(const ve of["up","down"])Ee.in.has(ve)&&Ee.out.has(ve)&&Ee.cross.has(ve)&&O.add(ve)}if(O.size!==1)continue;const[Y]=O,J=Math.max(...A.values()),Q=Y==="down"?J:0;if(j===Q)continue;const te=[...A.entries()].filter(([pe])=>pe!==0).sort((pe,Ee)=>pe[1]-Ee[1]),Ue=[...Array(J+1).keys()].filter(pe=>pe!==Q),Xe=new Map([[0,Q]]);te.forEach(([pe],Ee)=>Xe.set(pe,Ue[Ee])),q.set(C,Xe)}}const de=E=>{var C;return(((C=lt.get(E))==null?void 0:C.size)??0)>1},he=E=>E.band??(E.node.lane||!de(`pool:${E.node.participant??""}`)?void 0:0),ue=new Map,le=E=>ue.get(E.node.id)??he(E),ie=new Set,z=new Set;{const E=new Map;for(const I of m)E.set(I.flow.target,(E.get(I.flow.target)??0)+1);const C=I=>{const j=[],O=new Set([I]),Y=[I];for(;Y.length;){const J=Y.shift();j.push(J);for(const Q of m)Q.flow.source!==J||O.has(Q.flow.target)||(E.get(Q.flow.target)??0)!==1||(O.add(Q.flow.target),Y.push(Q.flow.target))}return j},A=(I,j)=>{var O;return((O=q.get(I))==null?void 0:O.get(j))??j};for(const I of h){if(!I.node.type.endsWith("Gateway"))continue;const j=I.node.lane??`pool:${I.node.participant??""}`,O=q.get(j);if(!O||O.size<2)continue;const Y=le(I);if(Y===void 0||A(j,Y)!==A(j,0))continue;const J=A(j,Y),Q=m.filter(ve=>ve.flow.source===I.node.id).map(ve=>S.get(ve.flow.target)).filter(ve=>!!ve&&(ve.node.lane??`pool:${ve.node.participant??""}`)===j),te=Q.filter(ve=>{const Ze=le(ve);return Ze!==void 0&&A(j,Ze)===J&&(E.get(ve.node.id)??0)===1}),Ue=Q.some(ve=>{const Ze=le(ve);return Ze!==void 0&&A(j,Ze)>J});if(te.length!==1||!Ue)continue;const Xe=new Set(Q.flatMap(ve=>C(ve.node.id)));if(!m.some(ve=>ve.flow.target===I.node.id&&Xe.has(ve.flow.source)))continue;const Ee=new Map;for(const[ve,Ze]of O)Ee.set(ve,Ze+1);Ee.set(-1,0),q.set(j,Ee);for(const ve of C(te[0].node.id))S.has(ve)&&(ue.set(ve,-1),z.add(ve));ie.add(I.node.id)}}const F=(E,C)=>{var A;return((A=q.get(E))==null?void 0:A.get(C))??C},U=new Map;for(const[E,C]of lt){let A=0;for(const I of C)A=Math.max(A,F(E,I));U.set(E,A)}const Oe=E=>fe+H*E,Lt=d.map((E,C)=>({op:E,declared:C}));Lt.sort((E,C)=>{const A=E.op.order??Number.POSITIVE_INFINITY,I=C.op.order??Number.POSITIVE_INFINITY;return A!==I?A-I:E.declared-C.declared});let P=80;for(const E of o.getAll())E.parent===u()&&"height"in E&&typeof E.y=="number"&&(P=Math.max(P,E.y+E.height+60));for(const{op:E}of Lt){const C=E.participant,A=h.filter(pe=>pe.node.participant===C.id).length,I=((Dx=C.lanes)==null?void 0:Dx.length)??0,j=Math.max(1200,A*160+300),O=(C.lanes??[]).map(pe=>Oe(U.get(pe.id)??0)),Y=O.reduce((pe,Ee)=>pe+Ee,0);I&&Y<300&&(O[I-1]+=300-Y);const J=Math.max(300,H*((U.get(`pool:${C.id}`)??0)+1)),Q=C.blackBox||A+I===0?120:I?Math.max(300,Y):J,te=r.createShape({type:"bpmn:Participant",businessObject:i.create("bpmn:Participant",{id:C.id,name:C.name,...E.order!==void 0?{"bwl:poolOrder":E.order}:{},...C.blackBox?{}:{processRef:i.create("bpmn:Process")}}),width:j,height:Q,isExpanded:!0}),Ue=n.createShape(te,{x:100+j/2,y:P+Q/2},u()),Xe=C.lanes??[];if(Xe.length&&n.splitLane(Ue,Xe.length),Xe.length){const pe=o.filter(Ee=>{var ve;return Ee.type==="bpmn:Lane"&&((ve=p(Ee))==null?void 0:ve.id)===C.id}).sort((Ee,ve)=>Ee.y-ve.y);if(pe.forEach((Ee,ve)=>{const Ze=Xe[ve];Ze&&n.updateProperties(Ee,{id:Ze.id,name:Ze.name})}),O.some(Ee=>Ee!==Ue.height/I)){let Ee=Ue.y;pe.forEach((ve,Ze)=>{const ft=O[Ze];n.resizeShape(ve,{x:ve.x,y:Ee,width:ve.width,height:ft}),Ee+=ft})}}P=Ue.y+Ue.height+60}const _=E=>{var I;const C=S.get(E);if(C)return C.node.participant??"";const A=l(E);return A?A.type==="bpmn:Participant"?A.id:((I=p(A))==null?void 0:I.id)??"":""},y=new Map,D=E=>{let C=y.get(E);return C||y.set(E,C={nodes:[],flows:[]}),C};for(const E of h)D(E.node.participant??"").nodes.push(E);for(const E of m)D(_(E.flow.source)).flows.push(E);const B=E=>{var C;return i.create("bpmn:SequenceFlow",{id:E.id,name:E.name??((C=E.condition)==null?void 0:C.label)})},W=(E,C)=>r.createShape({type:hs(E.type),businessObject:i.create(hs(E.type),{id:E.id,name:E.name,...C!==void 0?{"bwl:band":C}:{}})}),ce=[...Lt.map(({op:E})=>E.participant.id).filter(E=>y.has(E)),...[...y.keys()].filter(E=>!d.some(C=>C.participant.id===E))],Te=E=>E.endsWith("Gateway");for(const E of ce){const C=y.get(E),A=E?f(E):void 0,I=A?A.x+150:250;let j=A?A.y+80:120;const O=(Be,Ne,oe)=>{const _e=u().children.filter(ge=>!("waypoints"in ge&&ge.waypoints)&&ge.id!==Ne&&typeof ge.y=="number"&&ge.y>=Be);_e.length&&n.moveElements(_e,{x:0,y:oe})},Y=(Be,Ne)=>{if(Be){const $e=f(Be),Qe=Oe(Ne);if($e.height>=Qe)return;const Kt=Qe-$e.height,ne=p($e),Ke=ne?ne.y+ne.height:$e.y+$e.height;n.resizeLane($e,{x:$e.x,y:$e.y,width:$e.width,height:Qe},!1),O(Ke,ne==null?void 0:ne.id,Kt);return}if(!A)return;const oe=H*(Ne+1);if(A.height>=oe)return;const _e=oe-A.height,ge=A.y+A.height;n.resizeShape(A,{x:A.x,y:A.y,width:A.width,height:oe}),O(ge,A.id,_e)},J=(Be,Ne,oe)=>{if(Be){const _e=f(Be);return _e.y+Math.min(_e.height/2,G)+F(Be,Ne??0)*H}return Ne!==void 0&&A?A.y+$+F(`pool:${E}`,Ne)*H:oe},Q=(Be,Ne,oe)=>{if(Be){const _e=f(Be);return _e.y+Math.min(_e.height/2,G)+Ne*H}return A?A.y+$+Ne*H:oe},te=Be=>Be.participant?f(Be.participant):u(),Ue=30,Xe=(Be,Ne,oe,_e)=>{const ge=oe-Ne.width/2,$e=_e-Ne.height/2;return(Be.children??[]).find(Qe=>!("waypoints"in Qe&&Qe.waypoints)&&Qe.type!=="bpmn:Lane"&&Qe.type!=="label"&&typeof Qe.x=="number"&&ge<Qe.x+Qe.width+Ue&&ge+Ne.width+Ue>Qe.x&&$e<Qe.y+Qe.height&&$e+Ne.height>Qe.y)},pe=(Be,Ne,oe,_e,ge,$e)=>{const Qe=oe!==void 0||_e!==void 0,Kt=F(oe??`pool:${E}`,_e??0);if(Qe)for(let Me=0;Me<4;Me++){const ke=Q(oe,Kt+Me,$e);if(!Xe(Be,Ne,ge,ke))return Y(oe,Kt+Me),{x:ge,y:ke}}const ne=J(oe,_e,$e);Qe&&Y(oe,Kt);let Ke=ge;for(let Me=0;Me<64;Me++){const ke=Xe(Be,Ne,Ke,ne);if(!ke)break;Ke=ke.x+ke.width+V+Ne.width/2}return{x:Ke,y:ne}},Ee=new Set(C.flows.map(Be=>Be.flow.target)),ve=new Map;for(const Be of C.nodes){if(Ee.has(Be.node.id))continue;const Ne=W(Be.node,Be.band),oe=he(Be),_e=Be.node.lane?`${Be.node.lane}|${oe??""}`:oe!==void 0?`band:${oe}`:"",ge=te(Be.node),$e=pe(ge,Ne,Be.node.lane,oe,ve.get(_e)??I,j);n.createShape(Ne,$e,ge),ve.set(_e,$e.x+Ne.width+V),!Be.node.lane&&oe===void 0&&(j+=160)}const Ze=new Set,ft=new Map,Rt=new Map,Yt=new Map;if(E&&ze.has(`pool:${E}`)){const Be=new Map;for(const ne of C.flows)Be.set(ne.flow.target,(Be.get(ne.flow.target)??0)+1);const Ne=ne=>J(ne.node.lane,le(ne),Number.NaN),oe=new Set,_e=ne=>{var ke;const Ke=(ke=S.get(ne))==null?void 0:ke.node.participant;if(Ke)return l(Ke);const Me=l(ne);if(Me)return Me.type==="bpmn:Participant"?Me:p(Me)},ge=ne=>{const Ke=[],Me=new Set([ne]),ke=[ne];for(;ke.length;){const dt=ke.shift(),et=S.get(dt);et&&Ke.push(et);for(const Re of C.flows)Re.flow.source!==dt||Me.has(Re.flow.target)||(Be.get(Re.flow.target)??0)!==1||(Me.add(Re.flow.target),ke.push(Re.flow.target))}return Ke},$e=ne=>{if(!A)return;const Ke=new Set(ne.map(dt=>dt.node.id));let Me=!1,ke=!1;for(const dt of g){if(!Ke.has(dt.flow.source))continue;const et=_e(dt.flow.target);!et||et.id===A.id||(et.y<A.y?Me=!0:ke=!0)}return Me&&!ke?"up":ke&&!Me?"down":void 0};for(const ne of C.nodes){if(!Te(ne.node.type))continue;const Ke=J(ne.node.lane,he(ne),Number.NaN);if(Number.isNaN(Ke))continue;const Me=[];for(const Re of C.flows){if(Re.flow.source!==ne.node.id)continue;const Ve=S.get(Re.flow.target);if(!Ve||Ve.node.lane!==ne.node.lane||(Be.get(Ve.node.id)??0)!==1)continue;const tt=he(Ve);if(tt===void 0)continue;const vn=J(Ve.node.lane,tt,Number.NaN);if(Number.isNaN(vn))continue;const Kr=ge(Ve.node.id),Xt=$e(Kr);Xt&&Me.push({subtree:Kr,band:tt,row:vn,dir:Xt})}if(!Me.some(Re=>Re.dir==="up")||!Me.some(Re=>Re.dir==="down")||!Me.some(Re=>Re.dir==="up"&&Me.some(Ve=>Ve.dir==="down"&&Ve.row<Re.row)))continue;const dt=[...Me].sort((Re,Ve)=>Re.row-Ve.row);[...Me.filter(Re=>Re.dir==="up"),...Me.filter(Re=>Re.dir==="down")].sort((Re,Ve)=>Re.dir===Ve.dir?Re.row-Ve.row:Re.dir==="up"?-1:1).forEach((Re,Ve)=>{const tt=dt[Ve].band;if(tt!==Re.band){oe.add(ne.node.id);for(const vn of Re.subtree)he(vn)===Re.band&&ue.set(vn.node.id,tt)}})}const Qe=ne=>{if(!A)return;const Ke=new Set(ne.map(dt=>dt.node.id));let Me=!1,ke=!1;for(const dt of g){if(!Ke.has(dt.flow.target))continue;const et=_e(dt.flow.source);!et||et.id===A.id||(et.y<A.y?Me=!0:ke=!0)}return Me&&!ke?"up":ke&&!Me?"down":void 0};for(const ne of C.nodes){if(!Te(ne.node.type))continue;const Ke=ne.node.lane??`pool:${E}`,Me=q.get(Ke);if(!Me||Me.size<2)continue;const ke=Me.get(0);if(ke===void 0)continue;const dt=Math.max(...Me.values()),et=ke===dt&&ke!==0?"down":void 0;if(!et)continue;const Re=[];for(const Xt of C.flows){if(Xt.flow.source!==ne.node.id)continue;const ni=S.get(Xt.flow.target);if(!ni||ni.node.lane!==ne.node.lane||(Be.get(ni.node.id)??0)!==1)continue;const $x=le(ni);$x!==void 0&&Re.push({t:ni,subtree:ge(ni.node.id),band:$x})}const Ve=Re.find(Xt=>(Me.get(Xt.band)??Xt.band)===ke);if(!Ve||Qe(Ve.subtree)===et||$e(Ve.subtree)===et)continue;const tt=Re.find(Xt=>Xt!==Ve&&Qe(Xt.subtree)===et);if(!tt)continue;const vn=Ve.band,Kr=tt.band;for(const Xt of Ve.subtree)le(Xt)===vn&&ue.set(Xt.node.id,Kr);for(const Xt of tt.subtree)le(Xt)===Kr&&ue.set(Xt.node.id,vn);oe.add(ne.node.id)}for(const ne of C.nodes){if(!Te(ne.node.type))continue;const Ke=Ne(ne);if(Number.isNaN(Ke)||b.some(Re=>{var Ve,tt;return(((Ve=Re.placement)==null?void 0:Ve.anchor)??(Re.association?Re.association.source===Re.annotation.id?Re.association.target:Re.association.source:void 0))===ne.node.id&&((tt=Re.placement)==null?void 0:tt.side.startsWith("bottom"))}))continue;let ke,dt=!1,et;for(const Re of C.flows){if(Re.flow.source!==ne.node.id)continue;const Ve=S.get(Re.flow.target);if(!Ve||!Ve.node.lane&&he(Ve)===void 0)continue;const tt=Ne(Ve);Number.isNaN(tt)||(Math.abs(tt-Ke)<.5&&(dt=!0),tt>Ke?!ke||tt>ke.row?ke={id:Ve.node.id,row:tt,count:1}:tt===ke.row&&ke.count++:tt<Ke&&Ve.node.lane===ne.node.lane&&(!et||tt>et.row?et={op:Ve,row:tt,count:1}:tt===et.row&&et.count++))}ke&&ke.count===1&&(Be.get(ke.id)??0)===1&&!oe.has(ne.node.id)&&Ze.add(ke.id),!dt&&et&&et.count===1&&(Be.get(et.op.node.id)??0)===1&&!ie.has(ne.node.id)&&ft.set(et.op.node.id,{lane:ne.node.lane,band:le(ne)})}const Kt=new Map;for(const ne of g)Kt.set(ne.flow.target,[...Kt.get(ne.flow.target)??[],ne]);for(const ne of C.nodes){const Ke=Kt.get(ne.node.id);if(!Ke||Ke.length!==1||!Be.get(ne.node.id)||!ne.node.lane&&he(ne)===void 0||z.has(ne.node.id))continue;const Me=(Ox=S.get(Ke[0].flow.source))==null?void 0:Ox.node.participant,ke=Me?l(Me):void 0;if(!ke||!A||ke.id===A.id)continue;const dt=ne.node.lane??`pool:${E}`,et=q.get(dt);if(!et)continue;const Re=et.get(0)??0,Ve=(et.get(le(ne)??0)??Re)-Re;if(Ve===0)continue;const tt=ke.y<A.y;if(tt&&Ve<0||!tt&&Ve>0)continue;let vn;for(const[Kr,Xt]of et){const ni=Xt-Re;(tt&&ni<0&&(!vn||ni<vn.row)||!tt&&ni>0&&(!vn||ni>vn.row))&&(vn={band:Kr,row:ni})}vn&&Rt.set(ne.node.id,{lane:ne.node.lane,band:vn.band})}}const Bt=new Set;let Bn=0;for(;Bn++<C.nodes.length+2;){for(let oe=0;oe<C.nodes.length+C.flows.length+2;oe++){let _e=!1;for(const ge of C.flows){const $e=ge.flow;if(Bt.has($e.id))continue;const Qe=l($e.source);if(!Qe)continue;const Kt=l($e.target),ne=S.get($e.target);if(!Kt&&ne){const Ke=W(ne.node,ne.band),Me=le(ne);if(ne.node.lane||Me!==void 0){const ke=te(ne.node),dt=Qe,et=dt.x+(Yt.get($e.source)??0)+dt.width+V,Re=ft.get($e.target)??Rt.get($e.target),Ve=pe(ke,Ke,Re?Re.lane:ne.node.lane,Re?Re.band:Me,Ze.has($e.target)?dt.x+dt.width/2:et,Number.NaN),tt=n.createShape(Ke,Ve,ke);Ze.has($e.target)&&Yt.set($e.target,et-(tt.x+tt.width/2)),n.connect(Qe,tt,{type:"bpmn:SequenceFlow",businessObject:B($e)})}else s.append(Qe,Ke,{connection:{type:"bpmn:SequenceFlow",businessObject:B($e)}})}else if(Kt)n.connect(Qe,Kt,{type:"bpmn:SequenceFlow",businessObject:B($e)});else continue;Bt.add($e.id),_e=!0}if(!_e)break}const Be=C.nodes.filter(oe=>!l(oe.node.id));if(!Be.length)break;const Ne=Be[0];{const oe=W(Ne.node,Ne.band),_e=te(Ne.node),ge=he(Ne);n.createShape(oe,pe(_e,oe,Ne.node.lane,ge,I,j),_e),!Ne.node.lane&&ge===void 0&&(j+=160)}}}const Ye=40,pt=(E,C=()=>!0)=>{const A=l(E);if(!A)return[];const I=[A],j=new Set([E]);for(let O=0;O<I.length;O++){const Y=I[O].id;for(const J of m){const Q=J.flow.target;if(J.flow.source!==Y||j.has(Q)||!S.has(Q))continue;j.add(Q);const te=l(Q);te&&C(te)&&I.push(te)}}return I},it=(E,C=()=>!0)=>{const A=l(E);if(!A)return[];const I=[A],j=new Set([E]);for(let O=0;O<I.length;O++){const Y=I[O].id;for(const J of m){const Q=J.flow.source;if(J.flow.target!==Y||j.has(Q)||!S.has(Q))continue;j.add(Q);const te=l(Q);te&&C(te)&&I.push(te)}}return I};for(const E of Zt(e,"sequenceFlow.update")){if(E.target===void 0)continue;const C=S.get(E.target);if(!C)continue;const A=l(E.target),I=l(E.id);if(!A||!I)continue;const j=E.source!==void 0?l(E.source):I.source,O=I.target;if(!j||!O||O.id===A.id)continue;const Y=pt(E.target),J=new Set(Y.map(Ee=>Ee.id)),Q=Math.min(...Y.map(Ee=>Ee.x)),te=Math.max(...Y.map(Ee=>Ee.x+Ee.width)),Ue=j.x+j.width,Xe=te-Q+Ye*2-(O.x-Ue);if(Xe>0){const Ee=p(A),ve=(Ee==null?void 0:Ee.children)??[],Ze=Yt=>Yt.type==="bpmn:Lane",ft=ve.filter(Yt=>!("waypoints"in Yt&&Yt.waypoints)&&!Ze(Yt)&&!J.has(Yt.id)&&Yt.x>=O.x),Rt=Ee?[Ee,...ve.filter(Yt=>Ze(Yt))]:[];ft.length&&n.createSpace(ft,Rt,{x:Xe,y:0},"e",O.x-1)}const pe=C.node.lane||C.band!==void 0?A.y+A.height/2:j.y+j.height/2;n.moveElements(Y,{x:Ue+Ye-Q,y:pe-(A.y+A.height/2)})}const It=(E,C)=>{const A=C.target===E,I=f(C.source),j=f(C.target),O=A?"bpmn:DataOutputAssociation":"bpmn:DataInputAssociation";n.connect(I,j,C.id?{type:O,businessObject:i.create(O,{id:C.id})}:{type:O})},ln=100,pn=E=>{for(const C of d){if(!C.participant.blackBox)continue;const A=l(C.participant.id);if(!A)continue;const I=[];for(const O of g){const Y=O.flow.source===C.participant.id?O.flow.target:O.flow.target===C.participant.id?O.flow.source:void 0,J=Y?l(Y):void 0;J&&typeof J.x=="number"&&J.type!=="bpmn:Participant"&&I.push(J)}if(!I.length)continue;const j=Math.max(...I.map(O=>O.x+O.width/2))+ln;if(j>A.x+A.width&&n.resizeShape(A,{x:A.x,y:A.y,width:j-A.x,height:A.height}),!!E)for(const O of g){const Y=l(O.flow.id),J=O.flow.source===C.participant.id?O.flow.target:O.flow.target===C.participant.id?O.flow.source:void 0,Q=J?l(J):void 0;if(!Y||!Q||Q.type==="bpmn:Participant")continue;const te=Q.x+Q.width/2;if(te<A.x+10||te>A.x+A.width-10)continue;const Ue=A.y>Q.y,Xe=Ue?Q.y+Q.height:Q.y,pe=Ue?A.y:A.y+A.height,Ee=O.flow.source===C.participant.id?[{x:te,y:pe},{x:te,y:Xe}]:[{x:te,y:Xe},{x:te,y:pe}],ve=jt(o),Ze={...ve.edges.find(ft=>ft.id===O.flow.id),waypoints:Ee};Vn(Ze,Pi(ve)).length||n.updateWaypoints(Y,Ee)}}};pn(!1);for(const E of g){const C=E.flow;n.connect(f(C.source),f(C.target),{type:"bpmn:MessageFlow",businessObject:i.create("bpmn:MessageFlow",{id:C.id,name:C.name})})}const st=20,Nt=30,fn=4,Fo=E=>!("waypoints"in E&&E.waypoints)&&E.type!=="bpmn:Lane"&&E.type!=="label"&&typeof E.x=="number",dn=()=>{const E=jt(o);return{bad:Xi(E).filter(C=>C.kind==="edge-crosses-shape"||C.kind==="edge-overlap-opposite"||C.kind==="edge-overlap-mixed").length,crossings:Td(E),straight:E.edges.filter(C=>C.type==="bpmn:MessageFlow"&&C.waypoints.length===2).length}},Ln=E=>{const C=jt(o),A=C.edges.find(I=>I.id===E);return A?Vn(A,Pi(C)).length:0},In=E=>Ln(E)>0,Et=E=>jt(o).edges.filter(C=>C.type==="bpmn:MessageFlow"&&C.id!==E&&C.waypoints.length===2).length,Gi=(E,C)=>{const A=new Set(E.flatMap(O=>O.subtree.map(Y=>Y.id)));for(const O of E){const Y=(O.pool.children??[]).filter(Fo).filter(Q=>!A.has(Q.id));if(O.subtree.some(Q=>Y.some(te=>Q.x+C<te.x+te.width+Nt&&Q.x+C+Q.width+Nt>te.x&&Q.y<te.y+te.height&&Q.y+Q.height>te.y)))return null}const I=E.map(O=>O.pool.width);n.moveElements(E.flatMap(O=>O.subtree),{x:C,y:0});const j=E.map(O=>{const J=Math.max(...O.subtree.map(Q=>Q.x+Q.width))+150-(O.pool.x+O.pool.width);return J>0&&n.resizeShape(O.pool,{x:O.pool.x,y:O.pool.y,width:O.pool.width+J,height:O.pool.height}),J});return()=>{n.moveElements(E.flatMap(O=>O.subtree),{x:-C,y:0}),E.forEach((O,Y)=>{j[Y]>0&&n.resizeShape(O.pool,{x:O.pool.x,y:O.pool.y,width:I[Y],height:O.pool.height})})}},_u=(E,C,A)=>Gi([{subtree:E,pool:C}],A),Nn=(E,C)=>C.bad>E.bad||C.crossings>E.crossings&&C.straight<=E.straight&&C.bad>=E.bad,qe=(E,C)=>Nn(E,C)||C.straight<E.straight,Je=(E,C,A=()=>!0,I=Nn)=>{const j=dn(),O=Gi(E,C);if(!O)return!1;const Y=dn();return I(j,Y)||!A()?(O(),!1):!0},vx=(E,C,A,I=()=>!0)=>Je([{subtree:E,pool:C}],A,I),bu=E=>{var C;return!!((C=S.get(E))!=null&&C.node.participant)},qa=new Map;for(const E of g){if(!bu(E.flow.target))continue;const C=qa.get(E.flow.target)??[];C.push(E),qa.set(E.flow.target,C)}const jf=[...qa.keys()],_x=new Set(m.map(E=>E.flow.target)),bx=E=>Lt.findIndex(({op:C})=>C.participant.id===E);jf.sort((E,C)=>{var j,O;const A=_x.has(E)?1:0,I=_x.has(C)?1:0;return A!==I?A-I:bx((j=S.get(E))==null?void 0:j.node.participant)-bx((O=S.get(C))==null?void 0:O.node.participant)});const xu=E=>E.x+E.width/2,eO=E=>{const C=new Map;for(const j of o.getAll()){const O=j;if(!O.waypoints||!O.source||!O.target)continue;(C.get(O.source.id)??C.set(O.source.id,[]).get(O.source.id)).push(O.target.id)}const A=new Set([E]),I=[E];for(let j=0;j<I.length;j++)for(const O of C.get(I[j])??[])A.has(O)||(A.add(O),I.push(O));return A},tO=(E,C)=>{const A=eO(C);let I;for(const j of o.getAll()){const O=j;if(O.type!=="bpmn:MessageFlow"||!O.source||!O.target||O.target.id!==E||A.has(O.source.id))continue;const Y=O.source;if(typeof Y.x!="number"||Y.type==="bpmn:Participant")continue;const J=xu(Y);(I===void 0||J>I)&&(I=J)}return I},Ff=(E,C)=>{const A=l(E.flow.source);if(A)return A.type==="bpmn:Participant"?tO(A.id,C):xu(A)},xx=E=>{let C;for(const A of qa.get(E)??[]){const I=Ff(A,E);I!==void 0&&(!C||I>C.cx)&&(C={op:A,cx:I})}return C==null?void 0:C.op},nO=E=>{const C=xx(E),A=l(E),I=C?Ff(C,E):void 0;return A&&I!==void 0?I-xu(A):void 0},iO=E=>{const C=nO(E);return C!==void 0&&Math.abs(C)<st},wx=(E,C,A,I,j)=>{var J;const O=new Map([[C,[...E]]]),Y=new Set(E.map(Q=>Q.id));for(let Q=!0;Q;){Q=!1;for(const te of g){if(te.flow.id===I)continue;const Ue=Y.has(te.flow.source),Xe=Y.has(te.flow.target);if(Ue===Xe||(Ue?te.flow.source:te.flow.target)===A)continue;const pe=Ue?te.flow.target:te.flow.source;if(pe===j||!bu(pe))continue;const Ee=l(te.flow.id);if(!(Ee!=null&&Ee.waypoints)||Ee.waypoints.length!==2)continue;const ve=l(pe),Ze=(J=S.get(pe))==null?void 0:J.node.participant;if(!ve||!Ze)continue;const ft=pt(pe,Rt=>Rt.x>=ve.x).filter(Rt=>!Y.has(Rt.id));if(!(!ft.length||ft.some(Rt=>Rt.id===j))){for(const Rt of ft)Y.add(Rt.id);O.set(Ze,[...O.get(Ze)??[],...ft]),Q=!0}}}return[...O].map(([Q,te])=>({subtree:te,pool:f(Q)}))},Hf=E=>{const C=xx(E);if(!C)return null;const A=l(E),I=l(C.flow.source),j=Ff(C,E);if(!A||!I||j===void 0)return null;const O=j-xu(A);if(O>=st){const Y=S.get(E).node.participant,J=pt(E,Q=>Q.x>=A.x);return{groups:wx(J,Y,E,C.flow.id,C.flow.source),dx:O}}if(-O>=st&&bu(C.flow.source)){const Y=S.get(C.flow.source).node.participant,J=pt(C.flow.source,Q=>Q.x>=I.x&&!iO(Q.id));return{groups:wx(J,Y,C.flow.source,C.flow.id,E),dx:-O}}return null},Ex=()=>jf.map(E=>({id:E,plan:Hf(E)})).filter(E=>!!E.plan).sort((E,C)=>Math.min(...E.plan.groups.flatMap(A=>A.subtree.map(I=>I.x)))-Math.min(...C.plan.groups.flatMap(A=>A.subtree.map(I=>I.x)))).map(E=>E.id);for(let E=0;E<3;E++){const C=dn(),A=[];for(const j of Ex()){const O=Hf(j);if(!O)continue;const Y=Gi(O.groups,O.dx);Y&&A.push(Y)}if(!A.length)break;if(!qe(C,dn()))continue;for(const j of A.reverse())j();let I=!1;for(const j of Ex()){const O=Hf(j);O&&Je(O.groups,O.dx,()=>!0,qe)&&(I=!0)}if(!I)break}for(const E of jf.flatMap(C=>qa.get(C)??[])){if(!In(E.flow.id))continue;const C=l(E.flow.target);if(!C)continue;const A=f(S.get(E.flow.target).node.participant),I=pt(E.flow.target,J=>J.x>=C.x),j=C.width+V,O=Ln(E.flow.id),Y=Et(E.flow.id);for(let J=1;J<=fn;J++){const Q=()=>Ln(E.flow.id)<O&&Et(E.flow.id)>=Y;if(vx(I,A,j*J,Q))break}}for(const E of g){if(!In(E.flow.id))continue;const C=l(E.flow.source),A=l(E.flow.target);if(!C||!A||C.type==="bpmn:Participant"||A.type==="bpmn:Participant")continue;const I=C.x+C.width/2;if(Math.abs(I-(A.x+A.width/2))>15)continue;const[j,O]=C.y<A.y?[C.y+C.height,A.y]:[A.y+A.height,C.y],Y=[...S.values()].map(J=>l(J.node.id)).filter(J=>!!J&&J.id!==C.id&&J.id!==A.id).filter(J=>J.x<=I&&I<=J.x+J.width&&J.y+J.height>j&&J.y<O).sort((J,Q)=>J.x-Q.x);for(const J of Y){const Q=(Lx=S.get(J.id))==null?void 0:Lx.node.participant,te=Q?l(Q):void 0;if(!te)continue;const Ue=[...S.values()].filter(Bt=>Bt.node.participant===Q).map(Bt=>Bt.node.id),Xe=Bt=>Bt.map(Bn=>l(Bn)).filter(Bn=>!!Bn),Ee=[it(J.id,Bt=>{var Bn;return((Bn=S.get(Bt.id))==null?void 0:Bn.node.participant)===Q}),Xe(Ue)].filter(Bt=>Bt.length),ve=J.width+V,Ze=Ln(E.flow.id),ft=Et(E.flow.id),Rt=()=>Ln(E.flow.id)<Ze&&Et(E.flow.id)>=ft;let Yt=!1;for(const Bt of Ee){for(let Bn=1;Bn<=fn;Bn++)if(vx(Bt,te,ve*Bn,Rt)){Yt=!0;break}if(Yt)break}if(!In(E.flow.id))break}}{const E=A=>A.y+A.height/2,C=[];for(const A of S.keys()){if(!bu(A))continue;const I=m.filter(Y=>Y.flow.target===A);if(I.length!==1)continue;const j=l(I[0].flow.source),O=l(A);!j||!O||!S.has(j.id)||Math.abs(E(j)-E(O))>1||O.x-(j.x+j.width)<=V+1||C.push({id:A,pred:j,node:O})}C.sort((A,I)=>A.node.x-I.node.x);for(const{id:A}of C){const I=S.get(A),j=l(A),O=l(m.find(pe=>pe.flow.target===A).flow.source);if(!j||!O)continue;const Y=j.x-(O.x+O.width);if(Y<=V+1)continue;const J=f(I.node.participant),Q=pt(A,pe=>pe.x>=j.x),te=dn(),Ue=_u(Q,J,-(Y-V));if(!Ue)continue;const Xe=dn();(Xe.bad>te.bad||Xe.crossings>=te.crossings||Xe.straight<te.straight)&&Ue()}}pn(!0);for(const E of R){const C=E.associations??[],A=C.map(O=>O.source===E.dataStore.id?O.target:O.source).map(l).find(Boolean),I=A?p(A)??u():u(),j=A?{x:A.x+A.width/2,y:A.y+A.height+110}:{x:200,y:P+60};n.createShape({type:"bpmn:DataStoreReference",businessObject:i.create("bpmn:DataStoreReference",{id:E.dataStore.id,name:E.dataStore.name})},j,I);for(const O of C)It(E.dataStore.id,O)}for(const E of w){const A=f(E.association.target).type==="bpmn:DataStoreReference"?E.association.target:E.association.source;It(A,E.association)}let Sx=0;const Rx=10,Cx=(E,C)=>{for(const A of C.map(I=>p(I)).filter(I=>!!I)){const I=Rx,j=A.y,O=A.y+A.height,Y=A.x,J=A.x+A.width;if(Math.abs(E.y-j)<I){const Q=j+I-E.y;E.y+=Q,E.height-=Q}if(Math.abs(E.y+E.height-O)<I&&(E.height=O-I-E.y),Math.abs(E.x-Y)<I){const Q=Y+I-E.x;E.x+=Q,E.width-=Q}Math.abs(E.x+E.width-J)<I&&(E.width=J-I-E.x)}},Px=(E,C)=>{const A=Rx,I=30,j=o.filter(O=>O.type==="bpmn:Group"&&O.id!==C);for(const O of j){const Y=O.x,J=O.x+O.width,Q=O.y,te=O.y+O.height,Ue=E.y<te&&Q<E.y+E.height,Xe=E.x<J&&Y<E.x+E.width;if(Ue){if(Math.abs(E.x-J)<A){const pe=Math.min(J+A-E.x,I);pe>0&&E.width-pe>0&&(E.x+=pe,E.width-=pe)}if(Math.abs(E.x+E.width-Y)<A){const pe=Math.min(E.x+E.width-(Y-A),I);pe>0&&E.width-pe>0&&(E.width-=pe)}}if(Xe){if(Math.abs(E.y-te)<A){const pe=Math.min(te+A-E.y,I);pe>0&&E.height-pe>0&&(E.y+=pe,E.height-=pe)}if(Math.abs(E.y+E.height-Q)<A){const pe=Math.min(E.y+E.height-(Q-A),I);pe>0&&E.height-pe>0&&(E.height-=pe)}}}};for(const E of x){const C=(E.group.members??[]).map(l).filter(O=>!!O),A=40;let I;if(C.length){const O=Math.min(...C.map(te=>te.x))-A,Y=Math.min(...C.map(te=>te.y))-A,J=Math.max(...C.map(te=>te.x+te.width))+A,Q=Math.max(...C.map(te=>te.y+te.height))+A;I={x:O,y:Y,width:J-O,height:Q-Y},Cx(I,C),Px(I,E.group.id)}else I={x:300+Sx*350,y:40,width:300,height:200},Sx++;const j=n.createShape({type:"bpmn:Group",businessObject:i.create("bpmn:Group",{id:E.group.id}),width:I.width,height:I.height},{x:I.x+I.width/2,y:I.y+I.height/2},u());E.group.name&&n.updateLabel(j,E.group.name),(Ix=E.group.members)!=null&&Ix.length&&M(j,"bwl:Members",{refs:E.group.members.join(" ")})}const Ax=E=>{const C=E.waypoints;if(C!=null&&C.length){const I=C[Math.floor((C.length-1)/2)];return{x:I.x,y:I.y,width:0,height:0}}const A=E;return{x:A.x,y:A.y,width:A.width,height:A.height}},Tx=(E,C,A,I)=>{const j=C,O=(oe,_e)=>{const[ge,$e]=qu[oe];let Qe={x:E.x+E.width/2+ge*(E.width/2+j.width/2+_e),y:E.y+E.height/2+$e*(E.height/2+j.height/2+_e)};const Kt=A.x+nn+j.width/2,ne=A.x+A.width-nn-j.width/2,Ke=A.y+nn+j.height/2,Me=A.y+A.height-nn-j.height/2,ke={x:Math.min(ne,Math.max(Kt,Qe.x)),y:Math.min(Me,Math.max(Ke,Qe.y))};return(ke.x!==Qe.x||ke.y!==Qe.y)&&(Qe=Math.abs(ke.x-(E.x+E.width/2))<(E.width+j.width)/2+nn&&Math.abs(ke.y-(E.y+E.height/2))<(E.height+j.height)/2+nn?{x:E.x+E.width+nn+j.width/2,y:ke.y}:ke),Qe},Y=(A.children??[]).filter(oe=>!("waypoints"in oe&&oe.waypoints)&&oe.type!=="bpmn:Lane"&&oe.type!=="label"&&typeof oe.x=="number"&&oe.id!==I.selfId),J=jt(o),Q=oe=>{var ge,$e;if(!I.selfId)return!1;const _e=o.get(oe);return!!_e&&(((ge=_e.source)==null?void 0:ge.id)===I.selfId||(($e=_e.target)==null?void 0:$e.id)===I.selfId)},te=J.edges.filter(oe=>!Q(oe.id)).flatMap(mn),Ue=Uo(J).filter(oe=>oe.owner!==I.selfId).map(oe=>oe.rect),Xe=oe=>({x0:oe.x-j.width/2-nn,x1:oe.x+j.width/2+nn,y0:oe.y-j.height/2-nn,y1:oe.y+j.height/2+nn}),pe=oe=>{const _e=Xe(oe);return Y.some(ge=>_e.x0<ge.x+ge.width&&_e.x1>ge.x&&_e.y0<ge.y+ge.height&&_e.y1>ge.y)},Ee=oe=>{const _e=Xe(oe);return te.some(ge=>ge.axis==="h"?ge.at>_e.y0&&ge.at<_e.y1&&ge.lo<_e.x1&&ge.hi>_e.x0:ge.at>_e.x0&&ge.at<_e.x1&&ge.lo<_e.y1&&ge.hi>_e.y0)},ve=oe=>{const _e=Xe(oe);return Ue.some(ge=>_e.x0<ge.x+ge.width&&_e.x1>ge.x&&_e.y0<ge.y+ge.height&&_e.y1>ge.y)},Ze=oe=>pe(oe)||Ee(oe)||ve(oe),ft=oe=>oe.x-j.width/2>=A.x&&oe.x+j.width/2<=A.x+A.width&&oe.y-j.height/2>=A.y&&oe.y+j.height/2<=A.y+A.height;if(I.placement){const oe=ne=>ne.startsWith("top")?ne.replace(/^top/,"bottom"):ne.replace(/^bottom/,"top"),_e=ne=>ne.endsWith("left")?ne.replace(/left$/,"right"):ne.replace(/right$/,"left"),ge=I.placement.side,$e=[ge,oe(ge),_e(ge),oe(_e(ge)),"top","bottom","left","right","top-left","top-right","bottom-left","bottom-right"],Qe=I.placement.offset??50;let Kt=O(ge,Qe);if(Ze(Kt)){const ne=new Set;for(const Ke of $e){if(ne.has(Ke))continue;ne.add(Ke);const Me=O(Ke,Qe);if(ft(Me)&&!Ze(Me)){Kt=Me;break}}}return Kt}const Rt=I.from,Yt=A.x+nn+j.width/2,Bt=A.x+A.width-nn-j.width/2,Bn=A.y+nn+j.height/2,Be=A.y+A.height-nn-j.height/2;let Ne={x:Math.min(Bt,Math.max(Yt,Rt.x)),y:Math.min(Be,Math.max(Bn,Rt.y))};if(Ze(Ne)){const oe=(E.width+j.width)/2+nn,ge=[{x:Ne.x+oe,y:Ne.y},{x:Ne.x-oe,y:Ne.y},{x:Ne.x,y:Ne.y-j.height-nn},{x:Ne.x,y:Ne.y+j.height+nn}].filter(ft).find($e=>!Ze($e));ge&&(Ne=ge)}return Ne};let Ka=0;const Mx=12,kx=14,rO=15,oO=300,aO=E=>{const C=E.split(`
|
|
7
|
+
`),A=Math.max(...C.map(O=>ro(O,Mx))),I=Math.max(100,Math.min(oO,Math.ceil(A)+kx)),j=C.reduce((O,Y)=>O+Math.max(1,Math.ceil((ro(Y,Mx)+kx)/I)),0);return{width:I,height:Math.max(30,j*rO+10)}},nn=10;for(const E of b){const C=E.association,A=((Nx=E.placement)==null?void 0:Nx.anchor)??(C?C.source===E.annotation.id?C.target:C.source:void 0),I=A?l(A):void 0,j=I?Ax(I):void 0,O=aO(E.annotation.text??"");let Y;if(j&&E.placement){const[Ue,Xe]=qu[E.placement.side],pe=E.placement.offset??50;Y={x:j.x+j.width/2+Ue*(j.width/2+O.width/2+pe),y:j.y+j.height/2+Xe*(j.height/2+O.height/2+pe)}}else j?(Y={x:j.x+j.width/2+180+Ka%3*260,y:j.y-110-Ka%2*95},Ka++):(Y={x:300+Ka*260,y:60},Ka++);const J=I?p(I)??u():u(),Q=J;j&&typeof Q.x=="number"&&typeof Q.width=="number"&&Q.type==="bpmn:Participant"&&(Y=Tx(j,O,Q,E.placement?{placement:E.placement}:{from:Y}));const te=n.createShape({type:"bpmn:TextAnnotation",width:O.width,height:O.height,businessObject:i.create("bpmn:TextAnnotation",{id:E.annotation.id,text:E.annotation.text})},Y,J);if(C){const Ue=Xe=>Xe===E.annotation.id?te:f(Xe);n.connect(Ue(C.source),Ue(C.target),C.id?{type:"bpmn:Association",businessObject:i.create("bpmn:Association",{id:C.id})}:{type:"bpmn:Association"})}E.placement&&M(te,"bwl:Placement",N(E.placement))}for(const E of Zt(e,"association.add")){const C=E.association;n.connect(f(C.source),f(C.target),C.id?{type:"bpmn:Association",businessObject:i.create("bpmn:Association",{id:C.id})}:{type:"bpmn:Association"})}for(const E of Zt(e,"node.update")){let C=f(E.id);if(E.type&&hs(E.type)!==C.type&&(C=c.replaceElement(C,{type:hs(E.type)})),E.name!==void 0&&n.updateProperties(C,{name:E.name??void 0}),E.lane){const A=f(E.lane),I=A.y+A.height/2-(C.y+C.height/2);I!==0&&n.moveElements([C],{x:0,y:I})}}for(const E of Zt(e,"sequenceFlow.update")){const C=f(E.id);if(E.source!==void 0||E.target!==void 0){const A=C,I=E.source!==void 0?f(E.source):A.source,j=E.target!==void 0?f(E.target):A.target,O=Y=>({x:Y.x+Y.width/2,y:Y.y+Y.height/2});n.reconnect(A,I,j,[O(I),O(j)])}E.name!==void 0&&n.updateProperties(C,{name:E.name??void 0}),E.condition!==void 0&&n.updateProperties(C,{name:((Bx=E.condition)==null?void 0:Bx.label)??void 0})}for(const E of Zt(e,"messageFlow.update"))E.name!==void 0&&n.updateProperties(f(E.id),{name:E.name??void 0});for(const E of Zt(e,"dataStore.update"))E.name!==void 0&&n.updateProperties(f(E.id),{name:E.name??void 0});for(const E of Zt(e,"annotation.update")){const C=f(E.id);if(E.text!==void 0&&n.updateProperties(C,{text:E.text}),E.placement===null)M(C,"bwl:Placement",null);else if(E.placement){const A=f(E.placement.anchor),I=Ax(A),j=p(A)??u(),O=typeof j.x=="number"&&typeof j.width=="number"&&j.type==="bpmn:Participant",[Y,J]=qu[E.placement.side],Q=E.placement.offset??50,te={x:I.x+I.width/2+Y*(I.width/2+C.width/2+Q),y:I.y+I.height/2+J*(I.height/2+C.height/2+Q)},Ue=O?Tx(I,{width:C.width,height:C.height},j,{placement:E.placement,selfId:E.id}):te;n.moveElements([C],{x:Ue.x-(C.x+C.width/2),y:Ue.y-(C.y+C.height/2)}),M(C,"bwl:Placement",N(E.placement))}}for(const E of Zt(e,"group.update")){const C=f(E.id);if(E.name!==void 0&&n.updateLabel(C,E.name??""),E.members){const A=E.members.map(l).filter(I=>!!I);if(A.length){const j=Math.min(...A.map(te=>te.x))-40,O=Math.min(...A.map(te=>te.y))-40,Y=Math.max(...A.map(te=>te.x+te.width))+40,J=Math.max(...A.map(te=>te.y+te.height))+40,Q={x:j,y:O,width:Y-j,height:J-O};Cx(Q,A),Px(Q,E.id),n.resizeShape(C,Q)}M(C,"bwl:Members",{refs:E.members.join(" ")})}}}function uh(e,t,n=ch){const i=sh(e),r=ah(t,Nd(i.elementRegistry)),o={edgeCrossings:{before:0,after:0,pairs:[]}};if(r.length)return{ok:!1,issues:r,findings:[],stats:o};const a=jt(i.elementRegistry),s=new Set(Xi(a).map(Ki)),c=new Set(a.edges.map(m=>m.id)),u=new Set(a.shapes.map(m=>m.id)),l=Wu(a).length,f=e.get("commandStack");try{Uf(f,()=>{n(t,i),Wd(i,c),zd(i,s),Zd(i,s,c),Kd(i,c),cE(i,c),th(i,s,c),eh(i,c),ih(i,u)})}catch(m){return{ok:!1,issues:[{kind:"lower-failed",message:m instanceof Error?m.message:String(m)}],findings:[],stats:o}}const p=jt(i.elementRegistry),d=Xi(p).filter(m=>!s.has(Ki(m))),h=Wu(p);return{ok:!0,issues:[],findings:d,stats:{edgeCrossings:{before:l,after:h.length,pairs:h}}}}function hE(e){const t=e.slice(e.indexOf(":")+1);return t.charAt(0).toLowerCase()+t.slice(1)}function mE(e,t){return typeof e.get=="function"?e.get(t):e[t]}function lh(e,t){const n=mE(e,t);return typeof n=="number"&&Number.isFinite(n)?n:void 0}function ph(e,t){var i;return(((i=e.extensionElements)==null?void 0:i.values)??[]).find(r=>(r==null?void 0:r.$type)===t)}function gE(e){return typeof e=="string"&&Eu.includes(e)}function ui(e){if(typeof e=="string")return e;const t=e==null?void 0:e.id;return typeof t=="string"?t:void 0}function 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=[],R=new Set,w=new Set,b=q=>{q&&R.add(q)},x=q=>{R.add(q),w.add(q)},S=q=>{const de=ph(q,"bwl:Placement");if(!de)return;const he=typeof de.anchor=="string"?de.anchor:void 0;if(!he||!gE(de.side))return;const ue=typeof de.offset=="number"?de.offset:void 0;m.push({owner:q.id,anchor:he,side:de.side,...ue!==void 0?{offset:ue}:{}})},M=q=>{const de=ph(q,"bwl:Members"),he=typeof(de==null?void 0:de.refs)=="string"?de.refs.split(/\s+/).filter(Boolean):[];he.length&&g.push({owner:q.id,refs:he})},N=q=>{var de;for(const he of q)switch(b(he.id),he.$type){case"bpmn:TextAnnotation":x(he.id),s.push({id:he.id,text:typeof he.text=="string"?he.text:""}),S(he);break;case"bpmn:Association":d.push({id:he.id,type:he.$type,source:ui(he.sourceRef),target:ui(he.targetRef)});break;case"bpmn:Group":{x(he.id);const ue=(de=he.categoryValueRef)==null?void 0:de.value;c.push({id:he.id,...typeof ue=="string"&&ue?{name:ue}:{}}),M(he);break}default:u.push({id:he.id,type:he.$type,reason:"type-outside-mvp"})}},T=(q,de)=>{const he=q.flowElements??[],ue=(q.laneSets??[]).flatMap(ie=>ie.lanes??[]),le=new Map;for(const ie of ue){b(ie.id);for(const z of ie.flowNodeRef??[]){const F=ui(z);F&&le.set(F,ie.id)}}for(const ie of he){if(b(ie.id),ie.$type==="bpmn:SequenceFlow"){f.push({id:ie.id,source:ui(ie.sourceRef),target:ui(ie.targetRef),...typeof ie.name=="string"&&ie.name?{name:ie.name}:{}});continue}if(ie.$type==="bpmn:DataStoreReference"){x(ie.id),a.push({id:ie.id,...ie.name?{name:ie.name}:{}});continue}const z=hE(ie.$type);if(!zf(z)){u.push({id:ie.id,type:ie.$type,reason:"type-outside-mvp"});continue}x(ie.id),o.push({id:ie.id,type:z,...ie.name?{name:ie.name}:{},...de?{participant:de}:{},...le.has(ie.id)?{lane:le.get(ie.id)}:{}});const F=lh(ie,"bwl:band");F!==void 0&&(l.bands[ie.id]=F);for(const U of ie.dataOutputAssociations??[])b(U.id),h.push({id:U.id,type:U.$type,source:ie.id,target:ui(U.targetRef)});for(const U of ie.dataInputAssociations??[])b(U.id),h.push({id:U.id,type:U.$type,source:ui((U.sourceRef??[])[0]),target:ie.id})}N(q.artifacts??[])};if(n){const q=new Set;for(const de of n.participants??[]){x(de.id);const he=ui(de.processRef);he&&q.add(he);const ue=he?i.get(he):void 0,le=((ue==null?void 0:ue.laneSets)??[]).flatMap(U=>U.lanes??[]),ie=le.map(U=>({id:U.id,...U.name?{name:U.name}:{}}));for(const U of ie)x(U.id);const z=!ue||(ue.flowElements??[]).length===0&&le.length===0&&(ue.artifacts??[]).length===0;r.push({id:de.id,...de.name?{name:de.name}:{},...z?{blackBox:!0}:{},...ie.length?{lanes:ie}:{}});const F=lh(de,"bwl:poolOrder");F!==void 0&&(l.poolOrders[de.id]=F),ue&&T(ue,de.id)}for(const de of n.messageFlows??[])b(de.id),p.push({id:de.id,source:ui(de.sourceRef),target:ui(de.targetRef),...typeof de.name=="string"&&de.name?{name:de.name}:{}});N(n.artifacts??[]);for(const[de,he]of i)!q.has(de)&&(he.flowElements??[]).length>0&&u.push({id:de,type:he.$type,reason:"unreachable-process"})}else for(const q of i.values())T(q);const H=[],V=[],$=[],G=[],fe=(q,de)=>!!q&&!!de&&w.has(q)&&w.has(de);for(const q of f){if(!fe(q.source,q.target)){u.push({id:q.id,type:"bpmn:SequenceFlow",reason:"endpoint-outside-mvp"});continue}H.push({id:q.id,source:q.source,target:q.target,...q.name?{name:q.name}:{}}),w.add(q.id)}for(const q of p){if(!fe(q.source,q.target)){u.push({id:q.id,type:"bpmn:MessageFlow",reason:"endpoint-outside-mvp"});continue}V.push({id:q.id,source:q.source,target:q.target,...q.name?{name:q.name}:{}}),w.add(q.id)}for(const q of h){if(!fe(q.source,q.target)){u.push({id:q.id??"",type:q.type,reason:"endpoint-outside-mvp"});continue}G.push({...q.id?{id:q.id}:{},source:q.source,target:q.target}),q.id&&w.add(q.id)}for(const q of d){if(!fe(q.source,q.target)){u.push({id:q.id??"",type:q.type,reason:"endpoint-outside-mvp"});continue}$.push({...q.id?{id:q.id}:{},source:q.source,target:q.target})}const ze=new Map(c.map(q=>[q.id,q]));for(const{owner:q,refs:de}of g){const he=de.filter(le=>R.has(le)),ue=ze.get(q);ue&&he.length&&(ue.members=he)}for(const q of m)R.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:H,...V.length?{messageFlows:V}:{},...a.length?{dataStores:a}:{},...G.length?{dataAssociations:G}:{},...s.length?{annotations:s}:{},...$.length?{associations:$}:{},...c.length?{groups:c}:{}},hints:l,omitted:u}}async function yE(e){const{definitions:t,warnings:n}=await Fu(e);return{...fh(t),warnings:n}}function vE(e,t,n,i={}){return{documentId:e,baseVersion:t,ops:[...n],origin:i.origin??"agent",clientOpId:(i.mkClientOpId??(()=>crypto.randomUUID()))()}}async function dh(e,t,{currentVersion:n}){if(t.baseVersion!==n)return{status:"conflict",baseVersion:t.baseVersion,currentVersion:n};const i=uh(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 _E=Symbol("bpmn-editor");function bE(){const e=Ct.ref(!1),t=Ct.ref(!0),n=Ct.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 dh(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:Hu(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 ae(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}function xE(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Ku={exports:{}},hh;function wE(){if(hh)return Ku.exports;hh=1;var e=Ku.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},Ku.exports}var EE=wE(),SE=xE(EE);function li(e){if(!(this instanceof li))return new li(e);e=e||[128,36,1],this._seed=e.length?SE.rack(e[0],e[1],e[2]):e}li.prototype.next=function(e){return this._seed(e||!0)},li.prototype.nextPrefixed=function(e,t){var n;do n=e+this.next(!0);while(this.assigned(n));return this.claim(n,t),n},li.prototype.claim=function(e,t){this._seed.set(e,t||!0)},li.prototype.assigned=function(e){return this._seed.get(e)||!1},li.prototype.unclaim=function(e){delete this._seed.hats[e]},li.prototype.clear=function(){var e=this._seed.hats,t;for(t in e)this.unclaim(t)};const Ft={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:[0,"",""]};Ft.td=Ft.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],Ft.option=Ft.optgroup=[1,'<select multiple="multiple">',"</select>"],Ft.thead=Ft.tbody=Ft.colgroup=Ft.caption=Ft.tfoot=[1,"<table>","</table>"],Ft.polyline=Ft.ellipse=Ft.polygon=Ft.circle=Ft.text=Ft.line=Ft.path=Ft.rect=Ft.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];function ut(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(Ft,i)?Ft[i]:Ft._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 RE(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 gn(e,...t){const n=e.style;return k(t,function(i){i&&k(i,function(r,o){n[o]=r})}),e}function sn(e,t,n){return arguments.length==2?e.getAttribute(t):n===null?e.removeAttribute(t):(e.setAttribute(t,n),e)}const CE=Object.prototype.toString;function gt(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 CE.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 ms(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function Dr(e,t,n){var i=n?e:e.parentNode;return i&&typeof i.closest=="function"&&i.closest(t)||null}function PE(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var gs={},mh;function AE(){if(mh)return gs;mh=1;var e,t,n;function i(){e=window.addEventListener?"addEventListener":"attachEvent",t=window.removeEventListener?"removeEventListener":"detachEvent",n=e!=="addEventListener"?"on":""}return gs.bind=function(r,o,a,s){return e||i(),r[e](n+o,a,s||!1),a},gs.unbind=function(r,o,a,s){return t||i(),r[t](n+o,a,s||!1),a},gs}var gh=AE(),TE=PE(gh),Ce=RE({__proto__:null,default:TE},[gh]),yh=["focus","blur"];function ME(e,t,n,i,r){return yh.indexOf(n)!==-1&&(r=!0),Ce.bind(e,n,function(o){var a=o.target||o.srcElement;o.delegateTarget=Dr(a,t,!0),o.delegateTarget&&i.call(e,o)},r)}function kE(e,t,n,i){return yh.indexOf(t)!==-1&&(i=!0),Ce.unbind(e,t,n,i)}var Cn={bind:ME,unbind:kE};function Xu(e,t){return e&&typeof e.matches=="function"&&e.matches(t)||!1}function nt(e,t){return t=t||document,t.querySelector(e)}function ys(e,t){return t=t||document,t.querySelectorAll(e)}function pi(e){e.parentNode&&e.parentNode.removeChild(e)}function DE(e,t){if(e.ownerDocument!==t.ownerDocument)try{return t.ownerDocument.importNode(e,!0)}catch{}return e}function OE(e,t){return t.appendChild(DE(e,t))}function Pe(e,t){return OE(t,e),e}var Zu=2,vh={"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":Zu,"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":Zu,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function LE(e,t){return vh[t]?e.style[t]:e.getAttributeNS(null,t)}function _h(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=vh[i];r?(r===Zu&&typeof n=="number"&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function IE(e,t){var n=Object.keys(t),i,r;for(i=0,r;r=n[i];i++)_h(e,r,t[r])}function se(e,t,n){if(typeof t=="string")if(n!==void 0)_h(e,t,n);else return LE(e,t);else IE(e,t);return e}const NE=Object.prototype.toString;function He(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 NE.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 vs(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function bh(e){return e.cloneNode(!0)}var Qu={svg:"http://www.w3.org/2000/svg"},xh='<svg xmlns="'+Qu.svg+'"';function BE(e){var t=!1;e.substring(0,4)==="<svg"?e.indexOf(Qu.svg)===-1&&(e=xh+e.substring(4)):(e=xh+">"+e+"</svg>",t=!0);var n=$E(e);if(!t)return n;for(var i=document.createDocumentFragment(),r=n.firstChild;r.firstChild;)i.appendChild(r.firstChild);return i}function $E(e){var t;return t=new DOMParser,t.async=!1,t.parseFromString(e,"text/xml")}function me(e,t){var n;return e=e.trim(),e.charAt(0)==="<"?(n=BE(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(Qu.svg,e),t&&se(n,t),n}var Ju=null;function wh(){return Ju===null&&(Ju=me("svg")),Ju}function Eh(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}function jE(e,t,n,i,r,o){var a=wh().createSVGMatrix();switch(arguments.length){case 0:return a;case 1:return Eh(a,e);case 6:return Eh(a,{a:e,b:t,c:n,d:i,e:r,f:o})}}function Yo(e){return wh().createSVGTransform()}var Sh=/([&<>]{1})/g,FE=/([&<>\n\r"]{1})/g,HE={"&":"&","<":"<",">":">",'"':"'"};function el(e,t){function n(i,r){return HE[r]||r}return e.replace(t,n)}function Rh(e,t){var n,i,r,o,a;switch(e.nodeType){case 3:t.push(el(e.textContent,Sh));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,'="',el(o.value,FE),'"');if(e.hasChildNodes()){for(t.push(">"),a=e.childNodes,n=0,i=a.length;n<i;++n)Rh(a.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("<!--",el(e.nodeValue,Sh),"-->");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function zE(e){for(var t=e.firstChild,n=[];t;)Rh(t,n),t=t.nextSibling;return n.join("")}function Ch(e,t){return zE(e)}function Ht(e){var t=e.parentNode;return t&&t.removeChild(e),e}function VE(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function GE(e,t){var n,i;for(e.clear(),n=0;i=t[n];n++)e.appendItem(VE(e,i))}function qo(e,t){var n=e.transform.baseVal;return t&&(Array.isArray(t)||(t=[t]),GE(n,t)),n.consolidate()}const WE=/^class[ {]/;function UE(e){return WE.test(e.toString())}function tl(e){return Array.isArray(e)}function nl(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function _s(...e){e.length===1&&tl(e[0])&&(e=e[0]),e=[...e];const t=e.pop();return t.$inject=e,t}const YE=/constructor\s*[^(]*\(\s*([^)]*)\)/m,qE=/^(?:async\s+)?(?:function\s*[^(]*)?(?:\(\s*([^)]*)\)|(\w+))/m,KE=/\/\*([^*]*)\*\//m;function XE(e){if(typeof e!="function")throw new Error(`Cannot annotate "${e}". Expected a function!`);const t=e.toString().match(UE(e)?YE:qE);if(!t)return[];const n=t[1]||t[2];return n&&n.split(",").map(i=>{const r=i.match(KE);return(r&&r[1]||i).trim()})||[]}function Ph(e,t){const n=t||{get:function(b,x){if(i.push(b),x===!1)return null;throw s(`No provider for "${b}"!`)}},i=[],r=this._providers=Object.create(n._providers||null),o=this._instances=Object.create(null),a=o.injector=this,s=function(b){const x=i.join(" -> ");return i.length=0,new Error(x?`${b} (Resolving: ${x})`:b)};function c(b,x){if(!r[b]&&b.includes(".")){const S=b.split(".");let M=c(S.shift());for(;S.length;)M=M[S.shift()];return M}if(nl(o,b))return o[b];if(nl(r,b)){if(i.indexOf(b)!==-1)throw i.push(b),s("Cannot resolve circular dependency!");return i.push(b),o[b]=r[b][0](r[b][1]),i.pop(),o[b]}return n.get(b,x)}function u(b,x){if(typeof x>"u"&&(x={}),typeof b!="function")if(tl(b))b=_s(b.slice());else throw s(`Cannot invoke "${b}". Expected a function!`);const M=(b.$inject||XE(b)).map(N=>nl(x,N)?x[N]:c(N));return{fn:b,dependencies:M}}function l(b){const{fn:x,dependencies:S}=u(b),M=Function.prototype.bind.call(x,null,...S);return new M}function f(b,x,S){const{fn:M,dependencies:N}=u(b,S);return M.apply(x,N)}function p(b){return _s(x=>b.get(x))}function d(b,x){if(x&&x.length){const S=Object.create(null),M=Object.create(null),N=[],T=[],H=[];let V,$,G,fe;for(let ze in r)V=r[ze],x.indexOf(ze)!==-1&&(V[2]==="private"?($=N.indexOf(V[3]),$===-1?(G=V[3].createChild([],x),fe=p(G),N.push(V[3]),T.push(G),H.push(fe),S[ze]=[fe,ze,"private",G]):S[ze]=[H[$],ze,"private",T[$]]):S[ze]=[V[2],V[1]],M[ze]=!0),(V[2]==="factory"||V[2]==="type")&&V[1].$scope&&x.forEach(lt=>{V[1].$scope.indexOf(lt)!==-1&&(S[ze]=[V[2],V[1]],M[lt]=!0)});x.forEach(ze=>{if(!M[ze])throw new Error('No provider for "'+ze+'". Cannot use provider from the parent!')}),b.unshift(S)}return new Ph(b,a)}const h={factory:f,type:l,value:function(b){return b}};function m(b,x){const S=b.__init__||[];return function(){S.forEach(M=>{typeof M=="string"?x.get(M):x.invoke(M)})}}function g(b){const x=b.__exports__;if(x){const S=b.__modules__,M=Object.keys(b).reduce(($,G)=>(G!=="__exports__"&&G!=="__modules__"&&G!=="__init__"&&G!=="__depends__"&&($[G]=b[G]),$),Object.create(null)),N=(S||[]).concat(M),T=d(N),H=_s(function($){return T.get($)});x.forEach(function($){r[$]=[H,$,"private",T]});const V=(b.__init__||[]).slice();return V.unshift(function(){T.init()}),b=Object.assign({},b,{__init__:V}),m(b,T)}return Object.keys(b).forEach(function(S){if(S==="__init__"||S==="__depends__")return;const M=b[S];if(M[2]==="private"){r[S]=M;return}const N=M[0],T=M[1];r[S]=[h[N],ZE(N,T),N]}),m(b,a)}function R(b,x){return b.indexOf(x)!==-1||(b=(x.__depends__||[]).reduce(R,b),b.indexOf(x)!==-1)?b:b.concat(x)}function w(b){const x=b.reduce(R,[]).map(g);let S=!1;return function(){S||(S=!0,x.forEach(M=>M()))}}this.get=c,this.invoke=f,this.instantiate=l,this.createChild=d,this.init=w(e)}function ZE(e,t){return e!=="value"&&tl(t)&&(t=_s(t.slice())),t}var QE=1e3;function Ai(e,t){var n=this;t=t||QE,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)})}Ai.prototype.canRender=function(e){},Ai.prototype.drawShape=function(e,t){},Ai.prototype.drawConnection=function(e,t){},Ai.prototype.getShapePath=function(e){},Ai.prototype.getConnectionPath=function(e){};function Or(e){return e.flat().join(",").replace(/,?([A-Za-z]),?/g,"$1")}function JE(e){return["M",e.x,e.y]}function il(e){return["L",e.x,e.y]}function e1(e,t,n){return["C",e.x,e.y,t.x,t.y,n.x,n.y]}function t1(e,t){const n=e.length,i=[JE(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(il(a));continue}const c=Math.min(t,rl(a.x-o.x,a.y-o.y),rl(s.x-a.x,s.y-a.y));if(!c){i.push(il(a));continue}const u=bs(a,o,c),l=bs(a,o,c*.5),f=bs(a,s,c),p=bs(a,s,c*.5);i.push(il(u)),i.push(e1(l,p,f))}return i}function bs(e,t,n){const i=t.x-e.x,r=t.y-e.y,o=rl(i,r),a=n/o;return{x:e.x+i*a,y:e.y+r*a}}function rl(e,t){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2))}function Ko(e,t,n){Se(t)&&(n=t,t=null),t||(t={});const i=me("path",t);return Se(n)&&(i.dataset.cornerRadius=String(n)),ol(i,e)}function ol(e,t){const n=parseInt(e.dataset.cornerRadius,10)||0;return se(e,{d:Or(t1(t,n))}),e}function xs(e){var t=new Set(e);return Ie(e,function(n){for(var i=n.parent;i;){if(t.has(i))return!1;i=i.parent}return!0})}function Lr(e,t,n){n=n||0,be(e)||(e=[e]),k(e,function(i,r){var o=t(i,r,n);be(o)&&o.length&&Lr(o,t,n+1)})}function al(e,t,n){var i=new Set,r=new Set;return Lr(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 Xo(e,t){return al(e)}function n1(e,t,n){Rr(t)&&(t=!0),Gt(t)&&(n=t,t=!0),n=n||{};var i=Zo(n.allShapes),r=Zo(n.allConnections),o=Zo(n.enclosedElements),a=Zo(n.enclosedConnections),s=Zo(n.topLevel,t&&Jr(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,k(l.incoming,c),k(l.outgoing,c),l.children}return Lr(e,u),{allShapes:i,allConnections:r,topLevel:s,enclosedConnections:a,enclosedElements:o}}function At(e,t){t=!!t,be(e)||(e=[e]);var n,i,r,o;return k(e,function(a){var s=a;a.waypoints&&!t&&(s=At(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 so(e,t){var n={};return k(e,function(i){var r=i;r.waypoints&&(r=At(r)),!Se(t.y)&&r.x>t.x&&(n[i.id]=i),!Se(t.x)&&r.y>t.y&&(n[i.id]=i),r.x>t.x&&r.y>t.y&&(Se(t.width)&&Se(t.height)&&r.width+r.x<t.width+t.x&&r.height+r.y<t.height+t.y||!Se(t.width)||!Se(t.height))&&(n[i.id]=i)}),n}function Ah(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function Th(e){return!!(e&&e.isFrame)}function Zo(e,t){return L({},e||{},t||{})}var i1=1;function Ji(e,t){Ai.call(this,e,i1),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})}ae(Ji,Ai),Ji.prototype.canRender=function(){return!0},Ji.prototype.drawShape=function(t,n,i){var r=me("rect");return se(r,{x:0,y:0,width:n.width||0,height:n.height||0}),Th(n)?se(r,L({},this.FRAME_STYLE,i||{})):se(r,L({},this.SHAPE_STYLE,i||{})),Pe(t,r),r},Ji.prototype.drawConnection=function(t,n,i){var r=Ko(n.waypoints,L({},this.CONNECTION_STYLE,i||{}));return Pe(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 r1(){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 L(o,{class:n})},this.style=function(n,i){!be(n)&&!i&&(i=n,n=[]);var r=Sn(n,function(o,a){return L(o,e[a]||{})},{});return i?L(r,i):r},this.computeStyle=function(n,i,r){return be(i)||(r=i,i=[]),t.style(i||[],L({},r,n||{}))}}const o1={__init__:["defaultRenderer"],defaultRenderer:["type",Ji],styles:["type",r1]};function wt(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return n!==-1&&e.splice(n,1),n}function St(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 Qo(e,t){return!e||!t?-1:Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function cl(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=Qo(e,t);return Math.abs(r/o)<=i}var a1=2;function Ti(e,t){var n=Array.from(arguments).flat();const i={x:"v",y:"h"};for(const[r,o]of Object.entries(i))if(s1(r,n))return o;return!1}function s1(e,t){const n=t[0];return Cr(t,function(i){return Math.abs(n[e]-i[e])<=a1})}function Mh(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 ul(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}var c1=/,?([a-z]),?/gi,kh=parseFloat,Tt=Math,er=Tt.PI,fi=Tt.min,di=Tt.max,Dh=Tt.pow,tr=Tt.abs,u1=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/ig,l1=/(-?\d*\.?\d*(?:e[-+]?\d+)?)[\s]*,?[\s]*/ig,Oh=Array.isArray||function(e){return e instanceof Array};function p1(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function f1(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 d1(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 p1(r,i)?(f1(o,i),r[i]):(o.length>=1e3&&delete r[o.shift()],o.push(i),r[i]=e(...arguments),r[i])}return t}function h1(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(u1,function(i,r,o){var a=[],s=r.toLowerCase();for(o.replace(l1,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=pl,n}function m1(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 g1(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 ll(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 pl(){return this.join(",").replace(c1,"$1")}function y1(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=pl,t}function Lh(e,t,n,i,r,o,a,s,c){var u=1-c,l=Dh(u,3),f=Dh(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:ws(h),y:ws(m)}}function Ih(e){var t=E1(...e);return ll(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 v1(e,t){return e=ll(e),t=ll(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 Nh(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 Bh(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=Nh(m,e,n,r,a),R=Nh(m,t,i,o,s),w=g*g+R*R;d+=p[h]*Tt.sqrt(w)}return u*d}function _1(e,t,n,i,r,o,a,s){if(!(di(e,n)<fi(r,a)||fi(e,n)>di(r,a)||di(t,i)<fi(o,s)||fi(t,i)>di(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=ws(c/l),p=ws(u/l),d=+f.toFixed(2),h=+p.toFixed(2);if(!(d<+fi(e,n).toFixed(2)||d>+di(e,n).toFixed(2)||d<+fi(r,a).toFixed(2)||d>+di(r,a).toFixed(2)||h<+fi(t,i).toFixed(2)||h>+di(t,i).toFixed(2)||h<+fi(o,s).toFixed(2)||h>+di(o,s).toFixed(2)))return{x:f,y:p}}}}function ws(e){return Math.round(e*1e11)/1e11}function b1(e,t,n){var i=Ih(e),r=Ih(t);if(!v1(i,r))return[];var o=Bh(...e),a=Bh(...t),s=jh(e)?1:~~(o/5)||1,c=jh(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=Lh(...e,d/s);u[d]={x:m.x,y:m.y,t:d/s}}for(d=0;d<c+1;d++)m=Lh(...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],R=u[d+1],w=l[h],b=l[h+1],x=tr(R.x-g.x)<.01?"y":"x",S=tr(b.x-w.x)<.01?"y":"x",M=_1(g.x,g.y,R.x,R.y,w.x,w.y,b.x,b.y),N;if(M){if(N=M.x.toFixed(9)+"#"+M.y.toFixed(9),f[N])continue;f[N]=!0;var T=g.t+tr((M[x]-g[x])/(R[x]-g[x]))*(R.t-g.t),H=w.t+tr((M[S]-w[S])/(b[S]-w[S]))*(b.t-w.t);T>=0&&T<=1&&H>=0&&H<=1&&p.push({x:M.x,y:M.y,t1:T,t2:H})}}return p}function $h(e,t,n){e=zh(e),t=zh(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 R=0,w=t.length;R<w;R++){var b=t[R];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 x=b1(f,p);{for(var S=0,M=x.length;S<M;S++)x[S].segment1=h,x[S].segment2=R,x[S].bez1=f,x[S].bez2=p;d=d.concat(x)}}}}}return d}function x1(e){return Oh(e)&&Oh(e[0])}function w1(e){if(m1(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=pl,t}function jh(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function Es(e,t,n,i){return[e,t,n,i,n,i]}function Fh(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 Hh(e,t,n,i,r,o,a,s,c,u){var l=er*120/180,f=er/180*(+r||0),p=[],d,h=d1(function(P,_,y){var D=P*Tt.cos(y)-_*Tt.sin(y),B=P*Tt.sin(y)+_*Tt.cos(y);return{x:D,y:B}});if(u)N=u[0],T=u[1],S=u[2],M=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,R=m*m/(n*n)+g*g/(i*i);R>1&&(R=Tt.sqrt(R),n=R*n,i=R*i);var w=n*n,b=i*i,x=(o==a?-1:1)*Tt.sqrt(tr((w*b-w*g*g-b*m*m)/(w*g*g+b*m*m))),S=x*n*g/i+(e+s)/2,M=x*-i*m/n+(t+c)/2,N=Tt.asin(((t-M)/i).toFixed(9)),T=Tt.asin(((c-M)/i).toFixed(9));N=e<S?er-N:N,T=s<S?er-T:T,N<0&&(N=er*2+N),T<0&&(T=er*2+T),a&&N>T&&(N=N-er*2),!a&&T>N&&(T=T-er*2)}var H=T-N;if(tr(H)>l){var V=T,$=s,G=c;T=N+l*(a&&T>N?1:-1),s=S+n*Tt.cos(T),c=M+i*Tt.sin(T),p=Hh(s,c,n,i,r,0,a,$,G,[T,V,S,M])}H=T-N;var fe=Tt.cos(N),ze=Tt.sin(N),lt=Tt.cos(T),q=Tt.sin(T),de=Tt.tan(H/4),he=4/3*n*de,ue=4/3*i*de,le=[e,t],ie=[e+he*ze,t-ue*fe],z=[s+he*q,c-ue*lt],F=[s,c];if(ie[0]=2*le[0]-ie[0],ie[1]=2*le[1]-ie[1],u)return[ie,z,F].concat(p);p=[ie,z,F].concat(p).join().split(",");for(var U=[],Oe=0,Lt=p.length;Oe<Lt;Oe++)U[Oe]=Oe%2?h(p[Oe-1],p[Oe],f).y:h(p[Oe],p[Oe+1],f).x;return U}function E1(e,t,n,i,r,o,a,s){for(var c=[],u=[[],[]],l,f,p,d,h,m,g,R,w=0;w<2;++w){if(w==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,R=Tt.sqrt(g),!(g<0)&&(h=(-f+R)/(2*l),0<h&&h<1&&c.push(h),m=(-f-R)/(2*l),0<m&&m<1&&c.push(m))}for(var b=c.length,x=b,S;b--;)d=c[b],S=1-d,u[0][b]=S*S*S*e+3*S*S*d*n+3*S*d*d*r+d*d*d*a,u[1][b]=S*S*S*t+3*S*S*d*i+3*S*d*d*o+d*d*d*s;return u[0][x]=e,u[1][x]=t,u[0][x+1]=a,u[1][x+1]=s,u[0].length=u[1].length=x+2,{x0:fi(...u[0]),y0:fi(...u[1]),x1:di(...u[0]),y1:di(...u[1])}}function zh(e){if(x1(e)||(e=h1(e)),g1(e))return e;for(var t=y1(w1(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",...Hh(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",...Fh(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",...Fh(d.x,d.y,p[1],p[2],p[3],p[4])];break;case"L":p=["C",...Es(d.x,d.y,p[1],p[2])];break;case"H":p=["C",...Es(d.x,d.y,p[1],d.y)];break;case"V":p=["C",...Es(d.x,d.y,d.x,p[1])];break;case"Z":p=["C",...Es(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=kh(l[f-4])||n.x,n.by=kh(l[f-3])||n.y}return t}function rt(e){return Gt(e)&&En(e,"waypoints")}function De(e){return Gt(e)&&En(e,"labelTarget")}function S1(e){return Gt(e)&&Zr(e.parent)}function Vh(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function Mi(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function ye(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function Ss(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function R1(e){return Mi({x:e.x+(e.width||0)/2,y:e.y+(e.height||0)/2})}function C1(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=T1(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 xe(e){return rt(e)?C1(e):R1(e)}function Qt(e,t,n){n=n||0,Gt(n)||(n={x:n,y:n});var i=ye(e),r=ye(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 Jo(e,t,n){var i=P1(e,t);return i.length===1||i.length===2&&Qo(i[0],i[1])<1?Mi(i[0]):i.length>1?(i=ai(i,function(r){var o=Math.floor(r.t2*100)||1;return o=100-o,o=(o<10?"0":"")+o,r.segment2+"#"+o}),Mi(i[n?0:i.length-1])):null}function P1(e,t){return $h(e,t)}function A1(e){e=e.slice();for(var t=0,n,i,r;e[t];)n=e[t],i=e[t-1],r=e[t+1],Qo(n,r)===0||cl(i,r,n)?e.splice(t,1):t++;return e}function T1(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Rs(e,t){return Math.round(e*t)/t}function Gh(e){return Se(e)?e+"px":e}function M1(e){for(;e.parent;)e=e.parent;return e}function k1(e){e=L({},{width:"100%",height:"100%"},e);const t=e.container||document.body,n=document.createElement("div");return n.setAttribute("class","djs-container djs-parent"),gn(n,{position:"relative",overflow:"hidden",width:Gh(e.width),height:Gh(e.height)}),t.appendChild(n),n}function Wh(e,t,n){const i=me("g");He(i).add(t);const r=n!==void 0?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}const D1="base",Uh=0,O1=1,L1={shape:["x","y","width","height"],connection:["waypoints"]};function we(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||{})}we.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],we.prototype._init=function(e){const t=this._eventBus,n=this._container=k1(e),i=this._svg=me("svg");se(i,{width:"100%",height:"100%"}),sn(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")}),Pe(n,i);const r=this._viewport=Wh(i,"viewport");e.deferUpdate&&(this._viewboxChanged=Pu(this._viewboxChanged,300)),this._restoreFocus=Pu(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)},we.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},we.prototype._setFocused=function(e){e!=this._focused&&(this._focused=e,this._eventBus.fire("canvas.focus.changed",{focused:e}))},we.prototype._clear=function(){this._elementRegistry.getAll().forEach(t=>{const n=Ah(t);n==="root"?this.removeRootElement(t):this._removeElement(t,n)}),this._planes=[],this._rootElement=null,delete this._cachedViewbox},we.prototype.focus=function(){this._svg.focus({preventScroll:!0}),this._setFocused(!0)},we.prototype.restoreFocus=function(){this._restoreFocus()},we.prototype._restoreFocus=function(){document.activeElement===document.body&&this.focus()},we.prototype.isFocused=function(){return this._focused},we.prototype.getDefaultLayer=function(){return this.getLayer(D1,Uh)},we.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},we.prototype._getChildIndex=function(e){return Sn(this._layers,function(t,n){return n.visible&&e>=n.index&&t++,t},0)},we.prototype._createLayer=function(e,t){typeof t>"u"&&(t=O1);const n=this._getChildIndex(t);return{group:Wh(this._viewport,"layer-"+e,n),index:t,visible:!0}},we.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},we.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},we.prototype._removeLayer=function(e){const t=this._layers[e];t&&(delete this._layers[e],Ht(t.group))},we.prototype.getActiveLayer=function(){const e=this._findPlaneForRoot(this.getRootElement());return e?e.layer:null},we.prototype.findRoot=function(e){const t=this._resolveElements(e);let n;for(const i of t){const r=this._findPlaneForRoot(M1(i));if(!r||n&&r.rootElement!==n)return;n=r.rootElement}return n},we.prototype.getRootElements=function(){return this._planes.map(function(e){return e.rootElement})},we.prototype._findPlaneForRoot=function(e){return ct(this._planes,function(t){return t.rootElement===e})},we.prototype._resolveElement=function(e){return typeof e=="string"?this._elementRegistry.get(e):e},we.prototype._resolveElements=function(e){return be(e)||(e=[e]),e.map(t=>this._resolveElement(t)).filter(Boolean)},we.prototype.getContainer=function(){return this._container},we.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&&(k([i.gfx,i.secondaryGfx],function(r){r&&(n?(e.markers.add(t),He(r).add(t)):(e.markers.delete(t),He(r).remove(t)))}),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},we.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},we.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},we.prototype.hasMarker=function(e,t){return e=this._resolveElement(e),e.markers?e.markers.has(t):!1},we.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},we.prototype.getRootElement=function(){const e=this._rootElement;return e||this._planes.length?e:this.setRootElement(this.addRootElement(null))},we.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,Uh);return this.hideLayer(n),this._addRoot(e,i),this._planes.push({rootElement:e,layer:i}),e},we.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},we.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},we.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)},we.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})},we.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})},we.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=L1[e];if(!Cr(n,function(r){return typeof t[r]<"u"}))throw new Error("must supply { "+n.join(", ")+" } with "+e)},we.prototype._setParent=function(e,t,n){St(t.children,e,n),e.parent=t},we.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},we.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},we.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},we.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),wt(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},we.prototype.removeShape=function(e){return this._removeElement(e,"shape")},we.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},we.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},we.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},we.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},we.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);qo(t,l)});else return o=this._rootElement?this.getActiveLayer():null,i=o&&o.getBBox()||{},a=qo(t),r=a?a.matrix:jE(),s=Rs(r.a,1e3),c=Rs(-r.e||0,1e3),u=Rs(-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},we.prototype.scroll=function(e){const t=this._viewport;let n=t.getCTM();return e&&this._changeViewbox(function(){e=L({dx:0,dy:0},e||{}),n=this._svg.createSVGMatrix().translate(e.dx,e.dy).multiply(n),Yh(t,n)}),{x:n.e,y:n.f}},we.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=At(o),s=ye(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=ye(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),R=Math.min(0,s.top-p.top);l=h||m,f=g||R}this.scroll({dx:-l*u,dy:-f*u})},we.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)}),Rs(i.a,1e3)};function Yh(e,t){const n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}we.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},we.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=L(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),Yh(this._viewport,l),l},we.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},we.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}},we.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var co="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),se(t,co,i),n&&se(n,co,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&&(se(i.gfx,co,""),i.secondaryGfx&&se(i.secondaryGfx,co,""),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&&se(t,co,i),t},jn.prototype.get=function(e){var t;typeof e=="string"?t=e:t=e&&se(e,co);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 I1(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 N1(e){return e.__refs_collection===!0}function B1(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)}function qh(e,t,n){var i=I1(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 $1(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 Gn(e,t){if(!(this instanceof Gn))return new Gn(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Gn.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?qh(this,t,e):$1(this,t,e)},Gn.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return N1(n)||qh(this,t,e),n},Gn.prototype.ensureBound=function(e,t){B1(e,t)||this.bind(e,t)},Gn.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},Gn.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var fl=new Gn({name:"children",enumerable:!0,collection:!0},{name:"parent"}),Kh=new Gn({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),Xh=new Gn({name:"attachers",collection:!0},{name:"host"}),Zh=new Gn({name:"outgoing",collection:!0},{name:"source"}),Qh=new Gn({name:"incoming",collection:!0},{name:"target"});function uo(){Object.defineProperty(this,"businessObject",{writable:!0}),Object.defineProperty(this,"label",{get:function(){return this.labels[0]},set:function(e){var t=this.label,n=this.labels;!e&&t?n.remove(t):n.add(e,0)}}),fl.bind(this,"parent"),Kh.bind(this,"labels"),Zh.bind(this,"outgoing"),Qh.bind(this,"incoming")}function ea(){uo.call(this),fl.bind(this,"children"),Xh.bind(this,"host"),Xh.bind(this,"attachers")}ae(ea,uo);function Jh(){uo.call(this),fl.bind(this,"children")}ae(Jh,ea);function em(){ea.call(this),Kh.bind(this,"labelTarget")}ae(em,ea);function tm(){uo.call(this),Zh.bind(this,"source"),Qh.bind(this,"target")}ae(tm,uo);var j1={connection:tm,shape:ea,label:em,root:Jh};function F1(e,t){var n=j1[e];if(!n)throw new Error("unknown type: <"+e+">");return L(new n,t)}function H1(e){return e instanceof uo}function ki(){this._uid=12}ki.prototype.createRoot=function(e){return this.create("root",e)},ki.prototype.createLabel=function(e){return this.create("label",e)},ki.prototype.createShape=function(e){return this.create("shape",e)},ki.prototype.createConnection=function(e){return this.create("connection",e)},ki.prototype.create=function(e,t){return t=L({},t||{}),t.id||(t.id=e+"_"+this._uid++),F1(e,t)};var Cs="__fn",nm=1e3,z1=Array.prototype.slice;function Pn(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}Pn.prototype.on=function(e,t,n,i){if(e=be(e)?e:[e],Wt(t)&&(i=n,n=t,t=nm),!Se(t))throw new Error("priority must be a number");var r=n;i&&(r=_n(n,i),r[Cs]=n[Cs]||n);var o=this;e.forEach(function(a){o._addListener(a,{priority:t,callback:r,next:null})})},Pn.prototype.once=function(e,t,n,i){var r=this;if(Wt(t)&&(i=n,n=t,t=nm),!Se(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[Cs]=n,this.on(e,t,o)},Pn.prototype.off=function(e,t){e=be(e)?e:[e];var n=this;e.forEach(function(i){n._removeListener(i,t)})},Pn.prototype.createEvent=function(e){var t=new ta;return t.init(e),t},Pn.prototype.fire=function(e,t){var n,i,r,o;if(o=z1.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 ta?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}},Pn.prototype.handleError=function(e){return this.fire("error",{error:e})===!1},Pn.prototype._destroy=function(){this._listeners={}},Pn.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},Pn.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return i;try{i=V1(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},Pn.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},Pn.prototype._getListeners=function(e){return this._listeners[e]},Pn.prototype._setListeners=function(e,t){this._listeners[e]=t},Pn.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[Cs]===t)&&(r?r.next=i:this._setListeners(e,i)),r=n,n=i};function ta(){}ta.prototype.stopPropagation=function(){this.cancelBubble=!0},ta.prototype.preventDefault=function(){this.defaultPrevented=!0},ta.prototype.init=function(e){L(this,e||{})};function V1(e,t){return e.apply(null,t)}function Ir(e){return e.childNodes[0]}function G1(e){return e.parentNode.childNodes[1]}function Ps(e,t,n,i,r){var o=Yo();o.setTranslate(t,n);var a=Yo();a.setRotate(i||0,0,0);var s=Yo();s.setScale(1,1),qo(e,[o,a,s])}function Jt(e,t,n){var i=Yo();i.setTranslate(t,n),qo(e,i)}function im(e,t){var n=Yo();n.setRotate(t,0,0),qo(e,n)}function Fn(e,t){this._eventBus=e,this._elementRegistry=t}Fn.$inject=["eventBus","elementRegistry"],Fn.prototype._getChildrenContainer=function(e){var t=this._elementRegistry.getGraphics(e),n;return e.parent?(n=G1(t),n||(n=me("g"),He(n).add("djs-children"),Pe(t.parentNode,n))):n=t,n},Fn.prototype._clear=function(e){var t=Ir(e);return ms(t),t},Fn.prototype._createContainer=function(e,t,n,i){var r=me("g");He(r).add("djs-group"),typeof n<"u"?W1(r,t,t.childNodes[n]):Pe(t,r);var o=me("g");He(o).add("djs-element"),He(o).add("djs-"+e),i&&He(o).add("djs-frame"),Pe(r,o);var a=me("g");return He(a).add("djs-visual"),Pe(o,a),o},Fn.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,Th(t))},Fn.prototype.updateContainments=function(e){var t=this,n=this._elementRegistry,i;i=Sn(e,function(r,o){return o.parent&&(r[o.parent.id]=o.parent),r},{}),k(i,function(r){var o=r.children;if(o){var a=t._getChildrenContainer(r),s=a.firstChild;k(o,function(c){var u=n.getGraphics(c).parentNode;u===s?s=s.nextSibling:a.insertBefore(u,s)})}})},Fn.prototype.drawShape=function(e,t,n={}){var i=this._eventBus;return i.fire("render.shape",{gfx:e,element:t,attrs:n})},Fn.prototype.getShapePath=function(e){var t=this._eventBus;return t.fire("render.getShapePath",e)},Fn.prototype.drawConnection=function(e,t,n={}){var i=this._eventBus;return i.fire("render.connection",{gfx:e,element:t,attrs:n})},Fn.prototype.getConnectionPath=function(e){var t=this._eventBus;return t.fire("render.getConnectionPath",e)},Fn.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if(e==="shape")this.drawShape(i,t),Jt(n,t.x,t.y);else if(e==="connection")this.drawConnection(i,t);else throw new Error("unknown type: "+e);t.hidden?se(n,"display","none"):se(n,"display","block")}},Fn.prototype.remove=function(e){var t=this._elementRegistry.getGraphics(e);Ht(t.parentNode)};function W1(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}const U1={__depends__:[o1],__init__:["canvas"],canvas:["type",we],elementRegistry:["type",jn],elementFactory:["type",ki],eventBus:["type",Pn],graphicsFactory:["type",Fn]};function Y1(e){var t=new Ph(e);return t.init(),t}function q1(e){e=e||{};var t={config:["value",e]},n=[t,U1].concat(e.modules||[]);return Y1(n)}function ir(e,t){this._injector=t||q1(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 cn(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}function bn(e,t){return e.$instanceOf(t)}function K1(e){return ct(e.rootElements,function(t){return bn(t,"bpmn:Process")||bn(t,"bpmn:Collaboration")})}function X1(e){var t={},n=[],i={};function r(z,F){return function(U){z(U,F)}}function o(z){t[z.id]=z}function a(z){return t[z.id]}function s(z,F){var U=z.gfx;if(U)throw new Error(`already rendered ${cn(z)}`);return e.element(z,i[z.id],F)}function c(z,F){return e.root(z,i[z.id],F)}function u(z,F){try{var U=i[z.id]&&s(z,F);return o(z),U}catch(Oe){l(Oe.message,{element:z,error:Oe}),console.error(`failed to import ${cn(z)}`,Oe)}}function l(z,F){e.error(z,F)}var f=this.registerDi=function(F){var U=F.bpmnElement;U?i[U.id]?l(`multiple DI elements defined for ${cn(U)}`,{element:U}):i[U.id]=F:l(`no bpmnElement referenced in ${cn(F)}`,{element:F})};function p(z){d(z.plane)}function d(z){f(z),k(z.planeElement,h)}function h(z){f(z)}this.handleDefinitions=function(F,U){var Oe=F.diagrams;if(U&&Oe.indexOf(U)===-1)throw new Error("diagram not part of <bpmn:Definitions />");if(!U&&Oe&&Oe.length&&(U=Oe[0]),!U)throw new Error("no diagram to display");i={},p(U);var Lt=U.plane;if(!Lt)throw new Error(`no plane for ${cn(U)}`);var P=Lt.bpmnElement;if(!P)if(P=K1(F),P)l(`correcting missing bpmnElement on ${cn(Lt)} to ${cn(P)}`),Lt.bpmnElement=P,f(Lt);else throw new Error("no process or collaboration to display");var _=c(P,Lt);if(bn(P,"bpmn:Process")||bn(P,"bpmn:SubProcess"))g(P,_);else if(bn(P,"bpmn:Collaboration"))le(P,_),R(F.rootElements,_);else throw new Error(`unsupported bpmnElement for ${cn(Lt)}: ${cn(P)}`);m(n)};var m=this.handleDeferred=function(){for(var F;n.length;)F=n.shift(),F()};function g(z,F){de(z,F),H(z.ioSpecification,F),T(z.artifacts,F),o(z)}function R(z,F){var U=Ie(z,function(Oe){return!a(Oe)&&bn(Oe,"bpmn:Process")&&Oe.laneSets});U.forEach(r(g,F))}function w(z,F){u(z,F)}function b(z,F){k(z,r(w,F))}function x(z,F){u(z,F)}function S(z,F){u(z,F)}function M(z,F){u(z,F)}function N(z,F){u(z,F)}function T(z,F){k(z,function(U){bn(U,"bpmn:Association")?n.push(function(){N(U,F)}):N(U,F)})}function H(z,F){z&&(k(z.dataInputs,r(S,F)),k(z.dataOutputs,r(M,F)))}var V=this.handleSubProcess=function(F,U){de(F,U),T(F.artifacts,U)};function $(z,F){var U=u(z,F);bn(z,"bpmn:SubProcess")&&V(z,U||F),bn(z,"bpmn:Activity")&&H(z.ioSpecification,F),n.push(function(){k(z.dataInputAssociations,r(x,F)),k(z.dataOutputAssociations,r(x,F))})}function G(z,F){u(z,F)}function fe(z,F){u(z,F)}function ze(z,F){n.push(function(){var U=u(z,F);z.childLaneSet&<(z.childLaneSet,U||F),ie(z)})}function lt(z,F){k(z.lanes,r(ze,F))}function q(z,F){k(z,r(lt,F))}function de(z,F){he(z.flowElements,F),z.laneSets&&q(z.laneSets,F)}function he(z,F){k(z,function(U){bn(U,"bpmn:SequenceFlow")?n.push(function(){G(U,F)}):bn(U,"bpmn:BoundaryEvent")?n.unshift(function(){$(U,F)}):bn(U,"bpmn:FlowNode")?$(U,F):bn(U,"bpmn:DataObject")||(bn(U,"bpmn:DataStoreReference")||bn(U,"bpmn:DataObjectReference")?fe(U,F):l(`unrecognized flowElement ${cn(U)} in context ${cn(F&&F.businessObject)}`,{element:U,context:F}))})}function ue(z,F){var U=u(z,F),Oe=z.processRef;Oe&&g(Oe,U||F)}function le(z,F){k(z.participants,r(ue,F)),n.push(function(){b(z.messageFlows,F)}),T(z.artifacts,F)}function ie(z){k(z.flowNodeRef,function(F){var U=F.get("lanes");U&&U.push(z)})}}function v(e,t){var n=Z(e);return n&&typeof n.$instanceOf=="function"&&n.$instanceOf(t)}function Le(e,t){return Wi(t,function(n){return v(e,n)})}function Z(e){return e&&e.businessObject||e}function Ge(e){return e&&e.di}function Z1(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,R){return i.add(m,g,R)},error:function(m,g){s.push({message:m,context:g})}},p=new X1(f);l=l||u.diagrams&&u.diagrams[0];var d=Q1(u,l);if(!d)throw new Error("no diagram to display");k(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 Q1(e,t){if(!(!t||!t.plane)){var n=t.plane.bpmnElement,i=n;!v(n,"bpmn:Process")&&!v(n,"bpmn:Collaboration")&&(i=J1(n));var r;v(i,"bpmn:Collaboration")?r=i:r=ct(e.rootElements,function(u){if(v(u,"bpmn:Collaboration"))return ct(u.participants,function(l){return l.processRef===i})});var o=[i];r&&(o=on(r.participants,function(u){return u.processRef}),o.push(r));var a=rm(o),s=[t],c=[n];return k(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 rm(e){var t=[];return k(e,function(n){n&&(t.push(n),t=t.concat(rm(n.flowElements)))}),t}function J1(e){for(var t=e;t;){if(v(t,"bpmn:Process"))return t;t=t.$parent}}var eS='<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=eS,am={verticalAlign:"middle"},sm={color:"#404040"},tS={zIndex:"1001",position:"fixed",top:"0",left:"0",right:"0",bottom:"0"},nS={width:"100%",height:"100%",background:"rgba(40,40,40,0.2)"},iS={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"},rS='<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>',hi;function oS(){hi=ut(rS),gn(hi,tS),gn(nt("svg",hi),am),gn(nt(".backdrop",hi),nS),gn(nt(".notice",hi),iS),gn(nt(".link",hi),sm,{margin:"15px 20px 15px 10px",alignSelf:"center"})}function aS(){hi||(oS(),Cn.bind(hi,".backdrop","click",function(e){document.body.removeChild(hi)})),document.body.appendChild(hi)}const As=5,cm="djs-outline-hidden";function yt(e){e=L({},cS,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),this._init(this._container,this._moddle,e),lS(this._container)}ae(yt,ir),yt.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||[]),Ts(s,o),s=sS(s),this._emit("import.done",{error:s,warnings:s.warnings}),s}},yt.prototype.importDefinitions=async function(t,n){return this._setDefinitions(t),{warnings:(await this.open(n)).warnings}},yt.prototype.open=async function(t){const n=this._definitions;let i=t;if(!n){const o=new Error("no XML imported");throw Ts(o,[]),o}if(typeof t=="string"&&(i=uS(n,t),!i)){const o=new Error("BPMNDiagram <"+t+"> not found");throw Ts(o,[]),o}try{this.clear()}catch(o){throw Ts(o,[]),o}const{warnings:r}=await Z1(this,n,i);return{warnings:r}},yt.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},yt.prototype.saveSVG=async function(){this._emit("saveSVG.start");let t,n;try{const i=this.get("canvas"),r=i.getActiveLayer(),o=nt(":scope > defs",i._svg),a=Ch(r),s=o?"<defs>"+Ch(o)+"</defs>":"",c=i.getContainer();gt(c).add(cm);let u;try{u=r.getBBox()}finally{gt(c).remove(cm)}const l=u.x-As,f=u.y-As,p=u.width+As*2,d=u.height+As*2;t=`<?xml version="1.0" encoding="utf-8"?>
|
|
8
8
|
<!-- created with bpmn-js / http://bpmn.io -->
|
|
9
9
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
10
|
-
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="`+f+'" height="'+d+'" viewBox="'+l+" "+p+" "+f+" "+d+'" version="1.1">'+s+a+"</svg>"}catch(i){n=i}if(this._emit("saveSVG.done",{error:n,svg:t}),n)throw n;return{svg:t}},gt.prototype._setDefinitions=function(e){this._definitions=e},gt.prototype.getModules=function(){return this._modules},gt.prototype.clear=function(){this.getDefinitions()&&ir.prototype.clear.call(this)},gt.prototype.destroy=function(){ir.prototype.destroy.call(this),pi(this._container)},gt.prototype.on=function(e,t,n,i){return this.get("eventBus").on(e,t,n,i)},gt.prototype.off=function(e,t){this.get("eventBus").off(e,t)},gt.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=nt(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},gt.prototype.getDefinitions=function(){return this._definitions},gt.prototype.detach=function(){const e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))},gt.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=D(si(n,["additionalModules"]),{canvas:D({},n.canvas,{container:e}),modules:a});ir.call(this,s),n&&n.container&&this.attachTo(n.container)},gt.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)},gt.prototype._createContainer=function(e){const t=ut('<div class="bjs-container"></div>');return mn(t,{width:am(e.width),height:am(e.height),position:e.position}),t},gt.prototype._createModdle=function(e){const t=D({},this._moddleExtensions,e.moddleExtensions);return new fd(t)},gt.prototype._modules=[];function Ts(e,t){return e.warnings=t,e}function tS(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 nS={width:"100%",height:"100%",position:"relative"};function am(e){return e+(we(e)?"px":"")}function iS(e,t){return t&&ct(e.diagrams,function(n){return n.id===t})||null}function rS(e){const n='<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" >'+nm+"</a>",i=ut(n);mn(nt("svg",i),im),mn(i,rm,{position:"absolute",bottom:"15px",right:"15px",zIndex:"100"}),e.appendChild(i),Se.bind(i,"click",function(r){eS(),r.preventDefault()})}function lo(e){gt.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)}oe(lo,gt),lo.prototype._createModdle=function(e){var t=gt.prototype._createModdle.call(this,e);return t.ids=new li([32,36,1]),t},lo.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 je(e,t){return v(e,"bpmn:CallActivity")?!1:v(e,"bpmn:SubProcess")?(t=t||We(e),t&&v(t,"bpmndi:BPMNPlane")?!0:t&&!!t.isExpanded):v(e,"bpmn:Participant")?!!X(e).processRef:!0}function Wt(e){if(!(!v(e,"bpmn:Participant")&&!v(e,"bpmn:Lane"))){var t=We(e).isHorizontal;return t===void 0?!0:t}}function oS(e){return e&&X(e).isInterrupting!==!1}function cn(e){return e&&!!X(e).triggeredByEvent}function po(e,t){var n=X(e).eventDefinitions;return Wi(n,function(i){return v(i,t)})}function aS(e){return po(e,"bpmn:ErrorEventDefinition")}function sS(e){return po(e,"bpmn:EscalationEventDefinition")}function cS(e){return po(e,"bpmn:CompensateEventDefinition")}var Nr={width:90,height:20},sm=15;function rr(e){return v(e,"bpmn:Event")||v(e,"bpmn:Gateway")||v(e,"bpmn:DataStoreReference")||v(e,"bpmn:DataObjectReference")||v(e,"bpmn:DataInput")||v(e,"bpmn:DataOutput")||v(e,"bpmn:SequenceFlow")||v(e,"bpmn:MessageFlow")||v(e,"bpmn:Group")}function Ms(e){return ke(e.label)}function uS(e){var t=e.length/2-1,n=e[Math.floor(t)],i=e[Math.ceil(t+.01)],r=lS(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-=sm:a+=sm,{x:a,y:s}}function lS(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 pl(e){return e.waypoints?uS(e.waypoints):v(e,"bpmn:Group")?{x:e.x+e.width/2,y:e.y+Nr.height/2}:{x:e.x+e.width/2,y:e.y+e.height+Nr.height/2}}function pS(e,t){var n,i,r,o=e.label;return o&&o.bounds?(r=o.bounds,i={width:Math.max(Nr.width,r.width),height:r.height},n={x:r.x+r.width/2,y:r.y+r.height/2}):(n=pl(t),i=Nr),D({x:n.x-i.width/2,y:n.y-i.height/2},i)}function cm(e){if(v(e,"bpmn:FlowElement")||v(e,"bpmn:Participant")||v(e,"bpmn:Lane")||v(e,"bpmn:SequenceFlow")||v(e,"bpmn:MessageFlow")||v(e,"bpmn:DataInput")||v(e,"bpmn:DataOutput"))return"name";if(v(e,"bpmn:TextAnnotation"))return"text";if(v(e,"bpmn:Group"))return"categoryValueRef"}function fS(e){var t=e.categoryValueRef;return t&&t.value||""}function Hn(e){var t=e.businessObject,n=cm(t);if(n)return n==="categoryValueRef"?fS(t):t[n]||""}function dS(e,t){var n=e.businessObject,i=cm(n);if(i)if(i==="categoryValueRef"){if(!n[i])return e;n[i].value=t}else n[i]=t;return e}function hS(e){return ke(e)&&rr(e.labelTarget)}var fo=7;function um(e){let t=[];return k(e.incoming,n=>{v(n,"bpmn:Association")&&v(n.source,"bpmn:TextAnnotation")&&t.push({annotation:n.source,association:n})}),k(e.outgoing,n=>{v(n,"bpmn:Association")&&v(n.target,"bpmn:TextAnnotation")&&t.push({annotation:n.target,association:n})}),t}function na(e){const t=new Map;return k(rl(e),n=>{k(um(n),i=>{t.has(i.annotation)||t.set(i.annotation,{annotation:i.annotation,associations:[]}),t.get(i.annotation).associations.push(i.association)})}),[...t.values()]}var fl="hsl(225, 10%, 15%)",mS="white";function mi(e,t){return Wi(e.eventDefinitions,function(n){return n.$type===t})}function gS(e){return e.$type==="bpmn:IntermediateThrowEvent"||e.$type==="bpmn:EndEvent"}function yS(e){var t=e.dataObjectRef;return e.isCollection||t&&t.isCollection}function $e(e,t,n){var i=We(e);return n||i.get("color:background-color")||i.get("bioc:fill")||t||mS}function ie(e,t,n){var i=We(e);return n||i.get("color:border-color")||i.get("bioc:stroke")||t||fl}function ia(e,t,n,i){var r=We(e),o=r.get("label");return i||o&&o.get("color:color")||t||ie(e,n)}function lm(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 Dr(r)}function dl(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 Dr(a)}function vS(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 Dr(s)}function _S(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 Dr(o)}function ra(e,t={}){return{width:Wn(e,t),height:Tn(e,t)}}function Wn(e,t={}){return Sn(t,"width")?t.width:e.width}function Tn(e,t={}){return Sn(t,"height")?t.height:e.height}var bS=new li,xS=10,ks=3,wS=1.5,Os=10,ES=4,ho=.95,SS=1,RS=.25;function Br(e,t,n,i,r,o,a){Ai.call(this,t,a);var s=e&&e.defaultFillColor,c=e&&e.defaultStrokeColor,u=e&&e.defaultLabelColor;function l(P){return n.computeStyle(P,{strokeLinecap:"round",strokeLinejoin:"round",stroke:fl,strokeWidth:2,fill:"white"})}function p(P){return n.computeStyle(P,["no-fill"],{strokeLinecap:"round",strokeLinejoin:"round",stroke:fl,strokeWidth:2})}function f(P,_){var{ref:y={x:0,y:0},scale:O=1,element:I,parentGfx:W=r._svg}=_,ce=he("marker",{id:P,viewBox:"0 0 20 20",refX:y.x,refY:y.y,markerWidth:20*O,markerHeight:20*O,orient:"auto"});Re(ce,I);var Pe=nt(":scope > defs",W);Pe||(Pe=he("defs"),Re(W,Pe)),Re(Pe,ce)}function d(P,_,y,O){var I=bS.nextPrefixed("marker-");return h(P,I,_,y,O),"url(#"+I+")"}function h(P,_,y,O,I){if(y==="sequenceflow-end"){var W=he("path",{d:"M 1 5 L 11 10 L 1 15 Z",...l({fill:I,stroke:I,strokeWidth:1})});f(_,{element:W,ref:{x:11,y:10},scale:.5,parentGfx:P})}if(y==="messageflow-start"){var ce=he("circle",{cx:6,cy:6,r:3.5,...l({fill:O,stroke:I,strokeWidth:1,strokeDasharray:[1e4,1]})});f(_,{element:ce,ref:{x:6,y:6},parentGfx:P})}if(y==="messageflow-end"){var Pe=he("path",{d:"m 1 5 l 0 -3 l 7 3 l -7 3 z",...l({fill:O,stroke:I,strokeWidth:1,strokeDasharray:[1e4,1]})});f(_,{element:Pe,ref:{x:8.5,y:5},parentGfx:P})}if(y==="association-start"){var qe=he("path",{d:"M 11 5 L 1 10 L 11 15",...p({fill:"none",stroke:I,strokeWidth:1.5,strokeDasharray:[1e4,1]})});f(_,{element:qe,ref:{x:1,y:10},scale:.5,parentGfx:P})}if(y==="association-end"){var pt=he("path",{d:"M 1 5 L 11 10 L 1 15",...p({fill:"none",stroke:I,strokeWidth:1.5,strokeDasharray:[1e4,1]})});f(_,{element:pt,ref:{x:11,y:10},scale:.5,parentGfx:P})}if(y==="conditional-flow-marker"){var it=he("path",{d:"M 0 10 L 8 6 L 16 10 L 8 14 Z",...l({fill:O,stroke:I})});f(_,{element:it,ref:{x:-1,y:10},scale:.5,parentGfx:P})}if(y==="conditional-default-flow-marker"){var Dt=he("path",{d:"M 6 4 L 10 16",...l({stroke:I,fill:"none"})});f(_,{element:Dt,ref:{x:0,y:10},scale:.5,parentGfx:P})}}function m(P,_,y,O,I={}){Vt(O)&&(I=O,O=0),O=O||0,I=l(I);var W=_/2,ce=y/2,Pe=he("circle",{cx:W,cy:ce,r:Math.round((_+y)/4-O),...I});return Re(P,Pe),Pe}function g(P,_,y,O,I,W){Vt(I)&&(W=I,I=0),I=I||0,W=l(W);var ce=he("rect",{x:I,y:I,width:_-I*2,height:y-I*2,rx:O,ry:O,...W});return Re(P,ce),ce}function R(P,_,y,O){var I=_/2,W=y/2,ce=[{x:I,y:0},{x:_,y:W},{x:I,y},{x:0,y:W}],Pe=ce.map(function(pt){return pt.x+","+pt.y}).join(" ");O=l(O);var qe=he("polygon",{...O,points:Pe});return Re(P,qe),qe}function w(P,_,y,O){y=p(y);var I=Ko(_,y,O);return Re(P,I),I}function b(P,_,y){return w(P,_,y,5)}function x(P,_,y){y=p(y);var O=he("path",{...y,d:_});return Re(P,O),O}function S(P,_,y,O){return x(_,y,D({"data-marker":P},O))}function M(P){return Ot[P]}function L(P){return function(_,y,O){return M(P)(_,y,O)}}var A={"bpmn:MessageEventDefinition":function(P,_,y={},O){var I=i.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.235,my:.315}}),W=O?ie(_,c,y.stroke):$e(_,s,y.fill),ce=O?$e(_,s,y.fill):ie(_,c,y.stroke),Pe=x(P,I,{fill:W,stroke:ce,strokeWidth:1});return Pe},"bpmn:TimerEventDefinition":function(P,_,y={}){var O=y.width||_.width,I=y.height||_.height,W=y.width?1:2,ce=m(P,O,I,.2*I,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke),strokeWidth:W}),Pe=i.getScaledPath("EVENT_TIMER_WH",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:O,containerHeight:I,position:{mx:.5,my:.5}});x(P,Pe,{stroke:ie(_,c,y.stroke),strokeWidth:W});for(var qe=0;qe<12;qe++){var pt=i.getScaledPath("EVENT_TIMER_LINE",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:O,containerHeight:I,position:{mx:.5,my:.5}}),it=O/2,Dt=I/2;x(P,pt,{strokeWidth:1,stroke:ie(_,c,y.stroke),transform:"rotate("+qe*30+","+Dt+","+it+")"})}return ce},"bpmn:EscalationEventDefinition":function(P,_,y={},O){var I=i.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.5,my:.2}}),W=O?ie(_,c,y.stroke):$e(_,s,y.fill);return x(P,I,{fill:W,stroke:ie(_,c,y.stroke),strokeWidth:1})},"bpmn:ConditionalEventDefinition":function(P,_,y={}){var O=i.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.5,my:.222}});return x(P,O,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke),strokeWidth:1})},"bpmn:LinkEventDefinition":function(P,_,y={},O){var I=i.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:.57,my:.263}}),W=O?ie(_,c,y.stroke):$e(_,s,y.fill);return x(P,I,{fill:W,stroke:ie(_,c,y.stroke),strokeWidth:1})},"bpmn:ErrorEventDefinition":function(P,_,y={},O){var I=i.getScaledPath("EVENT_ERROR",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.2,my:.722}}),W=O?ie(_,c,y.stroke):$e(_,s,y.fill);return x(P,I,{fill:W,stroke:ie(_,c,y.stroke),strokeWidth:1})},"bpmn:CancelEventDefinition":function(P,_,y={},O){var I=i.getScaledPath("EVENT_CANCEL_45",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:.638,my:-.055}}),W=O?ie(_,c,y.stroke):"none",ce=x(P,I,{fill:W,stroke:ie(_,c,y.stroke),strokeWidth:1});return em(ce,45),ce},"bpmn:CompensateEventDefinition":function(P,_,y={},O){var I=i.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.22,my:.5}}),W=O?ie(_,c,y.stroke):$e(_,s,y.fill);return x(P,I,{fill:W,stroke:ie(_,c,y.stroke),strokeWidth:1})},"bpmn:SignalEventDefinition":function(P,_,y={},O){var I=i.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.5,my:.2}}),W=O?ie(_,c,y.stroke):$e(_,s,y.fill);return x(P,I,{strokeWidth:1,fill:W,stroke:ie(_,c,y.stroke)})},"bpmn:MultipleEventDefinition":function(P,_,y={},O){var I=i.getScaledPath("EVENT_MULTIPLE",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.211,my:.36}}),W=O?ie(_,c,y.stroke):$e(_,s,y.fill);return x(P,I,{fill:W,stroke:ie(_,c,y.stroke),strokeWidth:1})},"bpmn:ParallelMultipleEventDefinition":function(P,_,y={}){var O=i.getScaledPath("EVENT_PARALLEL_MULTIPLE",{xScaleFactor:1.2,yScaleFactor:1.2,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.458,my:.194}});return x(P,O,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke),strokeWidth:1})},"bpmn:TerminateEventDefinition":function(P,_,y={}){var O=m(P,_.width,_.height,8,{fill:ie(_,c,y.stroke),stroke:ie(_,c,y.stroke),strokeWidth:4});return O}};function H(P,_,y={},O){var I=X(P),W=gS(I),ce=O||P;return I.get("eventDefinitions")&&I.get("eventDefinitions").length>1?I.get("parallelMultiple")?A["bpmn:ParallelMultipleEventDefinition"](_,ce,y,W):A["bpmn:MultipleEventDefinition"](_,ce,y,W):mi(I,"bpmn:MessageEventDefinition")?A["bpmn:MessageEventDefinition"](_,ce,y,W):mi(I,"bpmn:TimerEventDefinition")?A["bpmn:TimerEventDefinition"](_,ce,y,W):mi(I,"bpmn:ConditionalEventDefinition")?A["bpmn:ConditionalEventDefinition"](_,ce,y,W):mi(I,"bpmn:SignalEventDefinition")?A["bpmn:SignalEventDefinition"](_,ce,y,W):mi(I,"bpmn:EscalationEventDefinition")?A["bpmn:EscalationEventDefinition"](_,ce,y,W):mi(I,"bpmn:LinkEventDefinition")?A["bpmn:LinkEventDefinition"](_,ce,y,W):mi(I,"bpmn:ErrorEventDefinition")?A["bpmn:ErrorEventDefinition"](_,ce,y,W):mi(I,"bpmn:CancelEventDefinition")?A["bpmn:CancelEventDefinition"](_,ce,y,W):mi(I,"bpmn:CompensateEventDefinition")?A["bpmn:CompensateEventDefinition"](_,ce,y,W):mi(I,"bpmn:TerminateEventDefinition")?A["bpmn:TerminateEventDefinition"](_,ce,y,W):null}var V={ParticipantMultiplicityMarker:function(P,_,y={}){var O=Wn(_,y),I=Tn(_,y),W=i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:O,containerHeight:I,position:{mx:(O/2-6)/O,my:(I-15)/I}});S("participant-multiplicity",P,W,{strokeWidth:2,fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke)})},SubProcessMarker:function(P,_,y={}){var O=g(P,14,14,0,{strokeWidth:1,fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke)});Qt(O,_.width/2-7.5,_.height-20);var I=i.getScaledPath("MARKER_SUB_PROCESS",{xScaleFactor:1.5,yScaleFactor:1.5,containerWidth:_.width,containerHeight:_.height,position:{mx:(_.width/2-7.5)/_.width,my:(_.height-20)/_.height}});S("sub-process",P,I,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke)})},ParallelMarker:function(P,_,y){var O=Wn(_,y),I=Tn(_,y),W=i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:O,containerHeight:I,position:{mx:(O/2+y.parallel)/O,my:(I-20)/I}});S("parallel",P,W,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke)})},SequentialMarker:function(P,_,y){var O=i.getScaledPath("MARKER_SEQUENTIAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:(_.width/2+y.seq)/_.width,my:(_.height-19)/_.height}});S("sequential",P,O,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke)})},CompensationMarker:function(P,_,y){var O=i.getScaledPath("MARKER_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:(_.width/2+y.compensation)/_.width,my:(_.height-13)/_.height}});S("compensation",P,O,{strokeWidth:1,fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke)})},LoopMarker:function(P,_,y){var O=Wn(_,y),I=Tn(_,y),W=i.getScaledPath("MARKER_LOOP",{xScaleFactor:1,yScaleFactor:1,containerWidth:O,containerHeight:I,position:{mx:(O/2+y.loop)/O,my:(I-7)/I}});S("loop",P,W,{strokeWidth:1.5,fill:"none",stroke:ie(_,c,y.stroke),strokeMiterlimit:.5})},AdhocMarker:function(P,_,y){var O=Wn(_,y),I=Tn(_,y),W=i.getScaledPath("MARKER_ADHOC",{xScaleFactor:1,yScaleFactor:1,containerWidth:O,containerHeight:I,position:{mx:(O/2+y.adhoc)/O,my:(I-15)/I}});S("adhoc",P,W,{strokeWidth:1,fill:ie(_,c,y.stroke),stroke:ie(_,c,y.stroke)})}};function N(P,_,y,O){V[P](_,y,O)}function G(P,_,y=[],O={}){O={fill:O.fill,stroke:O.stroke,width:Wn(_,O),height:Tn(_,O)};var I=X(_),W=y.includes("SubProcessMarker");W?O={...O,seq:-21,parallel:-22,compensation:-25,loop:-18,adhoc:10}:O={...O,seq:-5,parallel:-6,compensation:-7,loop:0,adhoc:-8},I.get("isForCompensation")&&y.push("CompensationMarker"),v(I,"bpmn:AdHocSubProcess")&&(y.push("AdhocMarker"),W||D(O,{compensation:O.compensation-18}));var ce=I.get("loopCharacteristics"),Pe=ce&&ce.get("isSequential");ce&&(D(O,{compensation:O.compensation-18}),y.includes("AdhocMarker")&&D(O,{seq:-23,loop:-18,parallel:-24}),Pe===void 0&&y.push("LoopMarker"),Pe===!1&&y.push("ParallelMarker"),Pe===!0&&y.push("SequentialMarker")),y.includes("CompensationMarker")&&y.length===1&&D(O,{compensation:-8}),k(y,function(qe){N(qe,P,_,O)})}function pe(P,_,y={}){y=D({size:{width:100}},y);var O=o.createText(_||"",y);return He(O).add("djs-label"),Re(P,O),O}function ze(P,_,y,O={}){var I=X(_),W=ra({x:_.x,y:_.y,width:_.width,height:_.height},O);return pe(P,I.name,{align:y,box:W,padding:7,style:{fill:ia(_,u,c,O.stroke)}})}function lt(P,_,y={}){var O={width:_.width,height:_.height,x:_.width/2+_.x,y:_.height/2+_.y};return pe(P,Hn(_),{box:O,style:D({},o.getExternalStyle(),{fill:ia(_,u,c,y.stroke)})})}function Y(P,_,y,O={}){var I=Wt(y),W=pe(P,_,{box:{height:30,width:I?Tn(y,O):Wn(y,O)},align:"center-middle",style:{fill:ia(y,u,c,O.stroke)}});if(I){var ce=-1*Tn(y,O);Ps(W,0,-ce,270)}}function fe(P,_,y={}){var{width:O,height:I}=ra(_,y);return g(P,O,I,Os,{...y,fill:$e(_,s,y.fill),fillOpacity:ho,stroke:ie(_,c,y.stroke)})}function de(P,_,y={}){var O=X(_),I=$e(_,s,y.fill),W=ie(_,c,y.stroke);return(O.get("associationDirection")==="One"||O.get("associationDirection")==="Both")&&(y.markerEnd=d(P,"association-end",I,W)),O.get("associationDirection")==="Both"&&(y.markerStart=d(P,"association-start",I,W)),y=Ue(y,["markerStart","markerEnd"]),b(P,_.waypoints,{...y,stroke:W,strokeDasharray:"0, 5"})}function ue(P,_,y={}){var O=$e(_,s,y.fill),I=ie(_,c,y.stroke),W=i.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:.474,my:.296}}),ce=x(P,W,{fill:O,fillOpacity:ho,stroke:I}),Pe=X(_);if(yS(Pe)){var qe=i.getScaledPath("DATA_OBJECT_COLLECTION_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:.33,my:(_.height-18)/_.height}});x(P,qe,{strokeWidth:2,fill:O,stroke:I})}return ce}function le(P,_,y={}){return m(P,_.width,_.height,{fillOpacity:ho,...y,fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke)})}function te(P,_,y={}){return R(P,_.width,_.height,{fill:$e(_,s,y.fill),fillOpacity:ho,stroke:ie(_,c,y.stroke)})}function z(P,_,y={}){var O=g(P,Wn(_,y),Tn(_,y),0,{fill:$e(_,s,y.fill),fillOpacity:y.fillOpacity||ho,stroke:ie(_,c,y.stroke),strokeWidth:1.5}),I=X(_);if(v(I,"bpmn:Lane")){var W=I.get("name");Y(P,W,_,y)}return O}function F(P,_,y={}){var O=fe(P,_,y),I=je(_);if(cn(_)&&(ae(O,{strokeDasharray:"0, 5.5",strokeWidth:2.5}),!I)){var W=X(_).flowElements||[],ce=W.filter(Pe=>v(Pe,"bpmn:StartEvent"));ce.length===1&&U(ce[0],P,y,_)}return ze(P,_,I?"center-top":"center-middle",y),I?G(P,_,void 0,y):G(P,_,["SubProcessMarker"],y),O}function U(P,_,y,O){var I=22,W={fill:$e(O,s,y.fill),stroke:ie(O,c,y.stroke),width:I,height:I},ce=X(P).isInterrupting,Pe=ce?0:3,qe=ce?1:1.2,pt=20,it=(I-pt)/2,Dt="translate("+it+","+it+")";m(_,pt,pt,{fill:W.fill,stroke:W.stroke,strokeWidth:qe,strokeDasharray:Pe,transform:Dt}),H(P,_,W,O)}function Oe(P,_,y={}){var O=fe(P,_,y);return ze(P,_,"center-middle",y),G(P,_,void 0,y),O}var Ot=this.handlers={"bpmn:AdHocSubProcess":function(P,_,y={}){return je(_)?y=Ue(y,["fill","stroke","width","height"]):y=Ue(y,["fill","stroke"]),F(P,_,y)},"bpmn:Association":function(P,_,y={}){return y=Ue(y,["fill","stroke"]),de(P,_,y)},"bpmn:BoundaryEvent":function(P,_,y={}){var{renderIcon:O=!0}=y;y=Ue(y,["fill","stroke"]);var I=X(_),W=I.get("cancelActivity");y={strokeWidth:1.5,fill:$e(_,s,y.fill),fillOpacity:SS,stroke:ie(_,c,y.stroke)},W||(y.strokeDasharray="6");var ce=le(P,_,y);return m(P,_.width,_.height,ks,{...y,fill:"none"}),O&&H(_,P,y),ce},"bpmn:BusinessRuleTask":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=Oe(P,_,y),I=i.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}}),W=x(P,I);ae(W,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke),strokeWidth:1});var ce=i.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}}),Pe=x(P,ce);return ae(Pe,{fill:ie(_,c,y.stroke),stroke:ie(_,c,y.stroke),strokeWidth:1}),O},"bpmn:CallActivity":function(P,_,y={}){return y=Ue(y,["fill","stroke"]),F(P,_,{strokeWidth:5,...y})},"bpmn:ComplexGateway":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=te(P,_,y),I=i.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:_.width,containerHeight:_.height,position:{mx:.46,my:.26}});return x(P,I,{fill:ie(_,c,y.stroke),stroke:ie(_,c,y.stroke),strokeWidth:1}),O},"bpmn:DataInput":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=i.getRawPath("DATA_ARROW"),I=ue(P,_,y);return x(P,O,{fill:"none",stroke:ie(_,c,y.stroke),strokeWidth:1}),I},"bpmn:DataInputAssociation":function(P,_,y={}){return y=Ue(y,["fill","stroke"]),de(P,_,{...y,markerEnd:d(P,"association-end",$e(_,s,y.fill),ie(_,c,y.stroke))})},"bpmn:DataObject":function(P,_,y={}){return y=Ue(y,["fill","stroke"]),ue(P,_,y)},"bpmn:DataObjectReference":L("bpmn:DataObject"),"bpmn:DataOutput":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=i.getRawPath("DATA_ARROW"),I=ue(P,_,y);return x(P,O,{strokeWidth:1,fill:ie(_,c,y.stroke),stroke:ie(_,c,y.stroke)}),I},"bpmn:DataOutputAssociation":function(P,_,y={}){return y=Ue(y,["fill","stroke"]),de(P,_,{...y,markerEnd:d(P,"association-end",$e(_,s,y.fill),ie(_,c,y.stroke))})},"bpmn:DataStoreReference":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=i.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:0,my:.133}});return x(P,O,{fill:$e(_,s,y.fill),fillOpacity:ho,stroke:ie(_,c,y.stroke),strokeWidth:2})},"bpmn:EndEvent":function(P,_,y={}){var{renderIcon:O=!0}=y;y=Ue(y,["fill","stroke"]);var I=le(P,_,{...y,strokeWidth:4});return O&&H(_,P,y),I},"bpmn:EventBasedGateway":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=X(_),I=te(P,_,y);m(P,_.width,_.height,_.height*.2,{fill:$e(_,"none",y.fill),stroke:ie(_,c,y.stroke),strokeWidth:1});var W=O.get("eventGatewayType"),ce=!!O.get("instantiate");function Pe(){var pt=i.getScaledPath("GATEWAY_EVENT_BASED",{xScaleFactor:.18,yScaleFactor:.18,containerWidth:_.width,containerHeight:_.height,position:{mx:.36,my:.44}});x(P,pt,{fill:"none",stroke:ie(_,c,y.stroke),strokeWidth:2})}if(W==="Parallel"){var qe=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:_.width,containerHeight:_.height,position:{mx:.474,my:.296}});x(P,qe,{fill:"none",stroke:ie(_,c,y.stroke),strokeWidth:1})}else W==="Exclusive"&&(ce||m(P,_.width,_.height,_.height*.26,{fill:"none",stroke:ie(_,c,y.stroke),strokeWidth:1}),Pe());return I},"bpmn:ExclusiveGateway":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=te(P,_,y),I=i.getScaledPath("GATEWAY_EXCLUSIVE",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:_.width,containerHeight:_.height,position:{mx:.32,my:.3}}),W=We(_);return W.get("isMarkerVisible")&&x(P,I,{fill:ie(_,c,y.stroke),stroke:ie(_,c,y.stroke),strokeWidth:1}),O},"bpmn:Gateway":function(P,_,y={}){return y=Ue(y,["fill","stroke"]),te(P,_,y)},"bpmn:Group":function(P,_,y={}){return y=Ue(y,["fill","stroke","width","height"]),g(P,_.width,_.height,Os,{stroke:ie(_,c,y.stroke),strokeWidth:1.5,strokeDasharray:"10, 6, 0, 6",fill:"none",pointerEvents:"none",width:Wn(_,y),height:Tn(_,y)})},"bpmn:InclusiveGateway":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=te(P,_,y);return m(P,_.width,_.height,_.height*.24,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke),strokeWidth:2.5}),O},"bpmn:IntermediateEvent":function(P,_,y={}){var{renderIcon:O=!0}=y;y=Ue(y,["fill","stroke"]);var I=le(P,_,{...y,strokeWidth:1.5});return m(P,_.width,_.height,ks,{fill:"none",stroke:ie(_,c,y.stroke),strokeWidth:1.5}),O&&H(_,P,y),I},"bpmn:IntermediateCatchEvent":L("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":L("bpmn:IntermediateEvent"),"bpmn:Lane":function(P,_,y={}){return y=Ue(y,["fill","stroke","width","height"]),z(P,_,{...y,fillOpacity:RS})},"bpmn:ManualTask":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=Oe(P,_,y),I=i.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}});return x(P,I,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke),strokeWidth:.5}),O},"bpmn:MessageFlow":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=X(_),I=We(_),W=$e(_,s,y.fill),ce=ie(_,c,y.stroke),Pe=b(P,_.waypoints,{markerEnd:d(P,"messageflow-end",W,ce),markerStart:d(P,"messageflow-start",W,ce),stroke:ce,strokeDasharray:"10, 11",strokeWidth:1.5});if(O.get("messageRef")){var qe=Pe.getPointAtLength(Pe.getTotalLength()/2),pt=i.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:qe.x,y:qe.y}}),it={strokeWidth:1};I.get("messageVisibleKind")==="initiating"?(it.fill=W,it.stroke=ce):(it.fill=ce,it.stroke=W);var Dt=x(P,pt,it),un=O.get("messageRef"),ln=un.get("name"),st=pe(P,ln,{align:"center-top",fitBox:!0,style:{fill:ce}}),Lt=Dt.getBBox(),pn=st.getBBox(),Fo=qe.x-pn.width/2,fn=qe.y+Lt.height/2+xS;Ps(st,Fo,fn,0)}return Pe},"bpmn:ParallelGateway":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=te(P,_,y),I=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:_.width,containerHeight:_.height,position:{mx:.46,my:.2}});return x(P,I,{fill:ie(_,c,y.stroke),stroke:ie(_,c,y.stroke),strokeWidth:1}),O},"bpmn:Participant":function(P,_,y={}){y=Ue(y,["fill","stroke","width","height"]);var O=z(P,_,y),I=je(_),W=Wt(_),ce=X(_),Pe=ce.get("name");if(I){var qe=W?[{x:30,y:0},{x:30,y:Tn(_,y)}]:[{x:0,y:30},{x:Wn(_,y),y:30}];w(P,qe,{stroke:ie(_,c,y.stroke),strokeWidth:wS}),Y(P,Pe,_,y)}else{var pt=ra(_,y);W||(pt.height=Wn(_,y),pt.width=Tn(_,y));var it=pe(P,Pe,{box:pt,align:"center-middle",style:{fill:ia(_,u,c,y.stroke)}});if(!W){var Dt=-1*Tn(_,y);Ps(it,0,-Dt,270)}}return ce.get("participantMultiplicity")&&N("ParticipantMultiplicityMarker",P,_,y),O},"bpmn:ReceiveTask":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=X(_),I=Oe(P,_,y),W;return O.get("instantiate")?(m(P,28,28,20*.22,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke),strokeWidth:1}),W=i.getScaledPath("TASK_TYPE_INSTANTIATING_SEND",{abspos:{x:7.77,y:9.52}})):W=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:21,containerHeight:14,position:{mx:.3,my:.4}}),x(P,W,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke),strokeWidth:1}),I},"bpmn:ScriptTask":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=Oe(P,_,y),I=i.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}});return x(P,I,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke),strokeWidth:1}),O},"bpmn:SendTask":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=Oe(P,_,y),I=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}});return x(P,I,{fill:ie(_,c,y.stroke),stroke:$e(_,s,y.fill),strokeWidth:1}),O},"bpmn:SequenceFlow":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=$e(_,s,y.fill),I=ie(_,c,y.stroke),W=b(P,_.waypoints,{markerEnd:d(P,"sequenceflow-end",O,I),stroke:I}),ce=X(_),{source:Pe}=_;if(Pe){var qe=X(Pe);ce.get("conditionExpression")&&v(qe,"bpmn:Activity")&&ae(W,{markerStart:d(P,"conditional-flow-marker",O,I)}),qe.get("default")&&(v(qe,"bpmn:Gateway")||v(qe,"bpmn:Activity"))&&qe.get("default")===ce&&ae(W,{markerStart:d(P,"conditional-default-flow-marker",O,I)})}return W},"bpmn:ServiceTask":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=Oe(P,_,y);m(P,10,10,{fill:$e(_,s,y.fill),stroke:"none",transform:"translate(6, 6)"});var I=i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}});x(P,I,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke),strokeWidth:1}),m(P,10,10,{fill:$e(_,s,y.fill),stroke:"none",transform:"translate(11, 10)"});var W=i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}});return x(P,W,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke),strokeWidth:1}),O},"bpmn:StartEvent":function(P,_,y={}){var{renderIcon:O=!0}=y;y=Ue(y,["fill","stroke"]);var I=X(_);I.get("isInterrupting")||(y={...y,strokeDasharray:"6"});var W=le(P,_,y);return O&&H(_,P,y),W},"bpmn:SubProcess":function(P,_,y={}){return je(_)?y=Ue(y,["fill","stroke","width","height"]):y=Ue(y,["fill","stroke"]),F(P,_,y)},"bpmn:Task":function(P,_,y={}){return y=Ue(y,["fill","stroke"]),Oe(P,_,y)},"bpmn:TextAnnotation":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var{width:O,height:I}=ra(_,y),W=g(P,O,I,0,0,{fill:"none",stroke:"none"}),ce=i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:O,containerHeight:I,position:{mx:0,my:0}});x(P,ce,{stroke:ie(_,c,y.stroke)});var Pe=X(_),qe=Pe.get("text")||"";return pe(P,qe,{align:"left-top",box:ra(_,y),padding:fo,style:{fill:ia(_,u,c,y.stroke)}}),W},"bpmn:Transaction":function(P,_,y={}){je(_)?y=Ue(y,["fill","stroke","width","height"]):y=Ue(y,["fill","stroke"]);var O=F(P,_,{strokeWidth:1.5,...y}),I=n.style(["no-fill","no-events"],{stroke:ie(_,c,y.stroke),strokeWidth:1.5}),W=je(_);return W||(y={}),g(P,Wn(_,y),Tn(_,y),Os-ks,ks,I),O},"bpmn:UserTask":function(P,_,y={}){y=Ue(y,["fill","stroke"]);var O=Oe(P,_,y),I=15,W=12,ce=i.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:I,y:W}});x(P,ce,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke),strokeWidth:.5});var Pe=i.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:I,y:W}});x(P,Pe,{fill:$e(_,s,y.fill),stroke:ie(_,c,y.stroke),strokeWidth:.5});var qe=i.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:I,y:W}});return x(P,qe,{fill:ie(_,c,y.stroke),stroke:ie(_,c,y.stroke),strokeWidth:.5}),O},label:function(P,_,y={}){return lt(P,_,y)}};this._drawPath=x,this._renderer=M}oe(Br,Ai),Br.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],Br.prototype.canRender=function(e){return v(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 ke(e)?dl(e,ES):v(e,"bpmn:Event")?lm(e):v(e,"bpmn:Activity")?dl(e,Os):v(e,"bpmn:Gateway")?vS(e):_S(e)};function Ue(e,t=[]){return t.reduce((n,i)=>(e[i]&&(n[i]=e[i]),n),{})}var CS=0,PS={width:150,height:50};function AS(e){var t=e.split("-");return{horizontal:t[0]||"center",vertical:t[1]||"top"}}function TS(e){return Vt(e)?D({top:0,left:0,right:0,bottom:0},e):{top:e,left:e,right:e,bottom:e}}var hl=null;function MS(){return hl||(hl=document.createElement("canvas").getContext("2d")),hl}function kS(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(pm(e.fontSize)||"12px"),t.push(e.fontFamily||"sans-serif"),t.join(" ")}function pm(e){if(e!=null)return typeof e=="number"||/^-?\d+(\.\d+)?$/.test(e)?e+"px":e}function OS(e,t){var n=MS();if(!n)return{width:0,height:0};n.font=kS(t),"letterSpacing"in n&&(n.letterSpacing=pm(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 DS(e,t,n){for(var i=e.shift(),r=i,o;;){if(o=OS(r,n),o.width=r?o.width:0,r===" "||r===""||o.width<Math.round(t)||r.length<2)return LS(e,r,i,o);r=NS(r,o.width,t)}}function LS(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 fm="";function IS(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===fm)&&r.pop();break}var a=r[r.length-1];return a&&a===fm&&(r[r.length-1]="-"),r.join("")}function NS(e,t,n){var i=Math.max(e.length*(n/t),1),r=IS(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function Ds(e){this._config=D({},{size:PS,padding:CS,style:{},align:"center-top"},e||{})}Ds.prototype.createText=function(e,t){return this.layoutText(e,t).element},Ds.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},Ds.prototype.layoutText=function(e,t){for(var n=D({},this._config.size,t.box),i=D({},this._config.style,t.style),r=AS(t.align||this._config.align),o=TS(t.padding!==void 0?t.padding:this._config.padding),a=t.fitBox||!1,s=BS(i),c=e.split(/\u00AD?\r?\n/),u=[],l=n.width-o.left-o.right;c.length;)u.push(DS(c,l,i));r.vertical==="middle"&&(o.top=o.bottom=0);var p=Rn(u,function(g,R,w){return g+(s||R.height)},0)+o.top+o.bottom,f=Rn(u,function(g,R,w){return R.width>g?R.width:g},0),d=o.top;r.vertical==="middle"&&(d+=(n.height-p)/2),d-=(s||u[0].height)/4;var h=he("text");ae(h,i),k(u,function(g){var R;switch(d+=s||g.height,r.horizontal){case"left":R=o.left;break;case"right":R=(a?f:l)-o.right-g.width;break;default:R=Math.max(((a?f:l)-g.width)/2+o.left,0)}var w=he("tspan");ae(w,{x:R,y:d}),w.textContent=g.text,Re(h,w)});var m={width:f,height:p};return{dimensions:m,element:h}};function BS(e){if("fontSize"in e&&"lineHeight"in e)return e.lineHeight*parseInt(e.fontSize,10)}var $S=12,jS=1.2,FS=40;function dm(e){var t=D({fontFamily:"Arial, sans-serif",fontSize:$S,fontWeight:"normal",lineHeight:jS},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=D({},t,{fontSize:n},e&&e.externalStyle||{}),r=new Ds({style:t});this.getExternalLabelBounds=function(a,s){var c={width:Math.max(a.width,Nr.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:fo});return{x:a.x,y:a.y,width:a.width,height:Math.max(FS,Math.round(c.height))}},this.getDimensions=function(a,s){return r.getDimensions(a,s||{})};function o(a,s,c){return r.getDimensions(a,D({box:s},c))}this.createText=function(a,s){return r.createText(a,s||{})},this.getDefaultStyle=function(){return t},this.getExternalStyle=function(){return i}}dm.$inject=["config.textRenderer"];function HS(){this.pathMap={EVENT_MESSAGE:{d:"m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",height:36,width:36,heightElements:[6,14],widthElements:[10.5,21]},EVENT_SIGNAL:{d:"M {mx},{my} l {e.x0},{e.y0} l -{e.x1},0 Z",height:36,width:36,heightElements:[18],widthElements:[10,20]},EVENT_ESCALATION:{d:"M {mx},{my} l {e.x0},{e.y0} l -{e.x0},-{e.y1} l -{e.x0},{e.y1} Z",height:36,width:36,heightElements:[20,7],widthElements:[8]},EVENT_CONDITIONAL:{d:"M {e.x0},{e.y0} l {e.x1},0 l 0,{e.y2} l -{e.x1},0 Z M {e.x2},{e.y3} l {e.x0},0 M {e.x2},{e.y4} l {e.x0},0 M {e.x2},{e.y5} l {e.x0},0 M {e.x2},{e.y6} l {e.x0},0 M {e.x2},{e.y7} l {e.x0},0 M {e.x2},{e.y8} l {e.x0},0 ",height:36,width:36,heightElements:[8.5,14.5,18,11.5,14.5,17.5,20.5,23.5,26.5],widthElements:[10.5,14.5,12.5]},EVENT_LINK:{d:"m {mx},{my} 0,{e.y0} -{e.x1},0 0,{e.y1} {e.x1},0 0,{e.y0} {e.x0},-{e.y2} -{e.x0},-{e.y2} z",height:36,width:36,heightElements:[4.4375,6.75,7.8125],widthElements:[9.84375,13.5]},EVENT_ERROR:{d:"m {mx},{my} {e.x0},-{e.y0} {e.x1},-{e.y1} {e.x2},{e.y2} {e.x3},-{e.y3} -{e.x4},{e.y4} -{e.x5},-{e.y5} z",height:36,width:36,heightElements:[.023,8.737,8.151,16.564,10.591,8.714],widthElements:[.085,6.672,6.97,4.273,5.337,6.636]},EVENT_CANCEL_45:{d:"m {mx},{my} -{e.x1},0 0,{e.x0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",height:36,width:36,heightElements:[4.75,8.5],widthElements:[4.75,8.5]},EVENT_COMPENSATION:{d:"m {mx},{my} {e.x0},-{e.y0} 0,{e.y1} z m {e.x1},-{e.y2} {e.x2},-{e.y3} 0,{e.y1} -{e.x2},-{e.y3} z",height:36,width:36,heightElements:[6.5,13,.4,6.1],widthElements:[9,9.3,8.7]},EVENT_TIMER_WH:{d:"M {mx},{my} l {e.x0},-{e.y0} m -{e.x0},{e.y0} l {e.x1},{e.y1} ",height:36,width:36,heightElements:[10,2],widthElements:[3,7]},EVENT_TIMER_LINE:{d:"M {mx},{my} m {e.x0},{e.y0} l -{e.x1},{e.y1} ",height:36,width:36,heightElements:[10,3],widthElements:[0,0]},EVENT_MULTIPLE:{d:"m {mx},{my} {e.x1},-{e.y0} {e.x1},{e.y0} -{e.x0},{e.y1} -{e.x2},0 z",height:36,width:36,heightElements:[6.28099,12.56199],widthElements:[3.1405,9.42149,12.56198]},EVENT_PARALLEL_MULTIPLE:{d:"m {mx},{my} {e.x0},0 0,{e.y1} {e.x1},0 0,{e.y0} -{e.x1},0 0,{e.y1} -{e.x0},0 0,-{e.y1} -{e.x1},0 0,-{e.y0} {e.x1},0 z",height:36,width:36,heightElements:[2.56228,7.68683],widthElements:[2.56228,7.68683]},GATEWAY_EXCLUSIVE:{d:"m {mx},{my} {e.x0},{e.y0} {e.x1},{e.y0} {e.x2},0 {e.x4},{e.y2} {e.x4},{e.y1} {e.x2},0 {e.x1},{e.y3} {e.x0},{e.y3} {e.x3},0 {e.x5},{e.y1} {e.x5},{e.y2} {e.x3},0 z",height:17.5,width:17.5,heightElements:[8.5,6.5312,-6.5312,-8.5],widthElements:[6.5,-6.5,3,-3,5,-5]},GATEWAY_PARALLEL:{d:"m {mx},{my} 0,{e.y1} -{e.x1},0 0,{e.y0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",height:30,width:30,heightElements:[5,12.5],widthElements:[5,12.5]},GATEWAY_EVENT_BASED:{d:"m {mx},{my} {e.x0},{e.y0} {e.x0},{e.y1} {e.x1},{e.y2} {e.x2},0 z",height:11,width:11,heightElements:[-6,6,12,-12],widthElements:[9,-3,-12]},GATEWAY_COMPLEX:{d:"m {mx},{my} 0,{e.y0} -{e.x0},-{e.y1} -{e.x1},{e.y2} {e.x0},{e.y1} -{e.x2},0 0,{e.y3} {e.x2},0 -{e.x0},{e.y1} l {e.x1},{e.y2} {e.x0},-{e.y1} 0,{e.y0} {e.x3},0 0,-{e.y0} {e.x0},{e.y1} {e.x1},-{e.y2} -{e.x0},-{e.y1} {e.x2},0 0,-{e.y3} -{e.x2},0 {e.x0},-{e.y1} -{e.x1},-{e.y2} -{e.x0},{e.y1} 0,-{e.y0} -{e.x3},0 z",height:17.125,width:17.125,heightElements:[4.875,3.4375,2.125,3],widthElements:[3.4375,2.125,4.875,3]},DATA_OBJECT_PATH:{d:"m 0,0 {e.x1},0 {e.x0},{e.y0} 0,{e.y1} -{e.x2},0 0,-{e.y2} {e.x1},0 0,{e.y0} {e.x0},0",height:61,width:51,heightElements:[10,50,60],widthElements:[10,40,50,60]},DATA_OBJECT_COLLECTION_PATH:{d:"m{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",height:10,width:10,heightElements:[],widthElements:[]},DATA_ARROW:{d:"m 5,9 9,0 0,-3 5,5 -5,5 0,-3 -9,0 z",height:61,width:51,heightElements:[],widthElements:[]},DATA_STORE:{d:"m {mx},{my} l 0,{e.y2} c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 l 0,-{e.y2} c -{e.x0},-{e.y1} -{e.x1},-{e.y1} -{e.x2},0c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 m -{e.x2},{e.y0}c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0m -{e.x2},{e.y0}c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0",height:61,width:61,heightElements:[7,10,45],widthElements:[2,58,60]},TEXT_ANNOTATION:{d:"m {mx}, {my} m 10,0 l -10,0 l 0,{e.y0} l 10,0",height:30,width:10,heightElements:[30],widthElements:[10]},MARKER_SUB_PROCESS:{d:"m{mx},{my} m 7,2 l 0,10 m -5,-5 l 10,0",height:10,width:10,heightElements:[],widthElements:[]},MARKER_PARALLEL:{d:"m{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",height:10,width:10,heightElements:[],widthElements:[]},MARKER_SEQUENTIAL:{d:"m{mx},{my} m 0,3 l 10,0 m -10,3 l 10,0 m -10,3 l 10,0",height:10,width:10,heightElements:[],widthElements:[]},MARKER_COMPENSATION:{d:"m {mx},{my} 7,-5 0,10 z m 7.1,-0.3 6.9,-4.7 0,10 -6.9,-4.7 z",height:10,width:21,heightElements:[],widthElements:[]},MARKER_LOOP:{d:"m {mx},{my} c 3.526979,0 6.386161,-2.829858 6.386161,-6.320661 0,-3.490806 -2.859182,-6.320661 -6.386161,-6.320661 -3.526978,0 -6.38616,2.829855 -6.38616,6.320661 0,1.745402 0.714797,3.325567 1.870463,4.469381 0.577834,0.571908 1.265885,1.034728 2.029916,1.35457 l -0.718163,-3.909793 m 0.718163,3.909793 -3.885211,0.802902",height:13.9,width:13.7,heightElements:[],widthElements:[]},MARKER_ADHOC:{d:"m {mx},{my} m 0.84461,2.64411 c 1.05533,-1.23780996 2.64337,-2.07882 4.29653,-1.97997996 2.05163,0.0805 3.85579,1.15803 5.76082,1.79107 1.06385,0.34139996 2.24454,0.1438 3.18759,-0.43767 0.61743,-0.33642 1.2775,-0.64078 1.7542,-1.17511 0,0.56023 0,1.12046 0,1.6807 -0.98706,0.96237996 -2.29792,1.62393996 -3.6918,1.66181996 -1.24459,0.0927 -2.46671,-0.2491 -3.59505,-0.74812 -1.35789,-0.55965 -2.75133,-1.33436996 -4.27027,-1.18121996 -1.37741,0.14601 -2.41842,1.13685996 -3.44288,1.96782996 z",height:4,width:15,heightElements:[],widthElements:[]},TASK_TYPE_SEND:{d:"m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",height:14,width:21,heightElements:[6,14],widthElements:[10.5,21]},TASK_TYPE_SCRIPT:{d:"m {mx},{my} c 9.966553,-6.27276 -8.000926,-7.91932 2.968968,-14.938 l -8.802728,0 c -10.969894,7.01868 6.997585,8.66524 -2.968967,14.938 z m -7,-12 l 5,0 m -4.5,3 l 4.5,0 m -3,3 l 5,0m -4,3 l 5,0",height:15,width:12.6,heightElements:[6,14],widthElements:[10.5,21]},TASK_TYPE_USER_1:{d:"m {mx},{my} c 0.909,-0.845 1.594,-2.049 1.594,-3.385 0,-2.554 -1.805,-4.62199999 -4.357,-4.62199999 -2.55199998,0 -4.28799998,2.06799999 -4.28799998,4.62199999 0,1.348 0.974,2.562 1.89599998,3.405 -0.52899998,0.187 -5.669,2.097 -5.794,4.7560005 v 6.718 h 17 v -6.718 c 0,-2.2980005 -5.5279996,-4.5950005 -6.0509996,-4.7760005 zm -8,6 l 0,5.5 m 11,0 l 0,-5"},TASK_TYPE_USER_2:{d:"m {mx},{my} m 2.162,1.009 c 0,2.4470005 -2.158,4.4310005 -4.821,4.4310005 -2.66499998,0 -4.822,-1.981 -4.822,-4.4310005 "},TASK_TYPE_USER_3:{d:"m {mx},{my} m -6.9,-3.80 c 0,0 2.25099998,-2.358 4.27399998,-1.177 2.024,1.181 4.221,1.537 4.124,0.965 -0.098,-0.57 -0.117,-3.79099999 -4.191,-4.13599999 -3.57499998,0.001 -4.20799998,3.36699999 -4.20699998,4.34799999 z"},TASK_TYPE_MANUAL:{d:"m {mx},{my} c 0.234,-0.01 5.604,0.008 8.029,0.004 0.808,0 1.271,-0.172 1.417,-0.752 0.227,-0.898 -0.334,-1.314 -1.338,-1.316 -2.467,-0.01 -7.886,-0.004 -8.108,-0.004 -0.014,-0.079 0.016,-0.533 0,-0.61 0.195,-0.042 8.507,0.006 9.616,0.002 0.877,-0.007 1.35,-0.438 1.353,-1.208 0.003,-0.768 -0.479,-1.09 -1.35,-1.091 -2.968,-0.002 -9.619,-0.013 -9.619,-0.013 v -0.591 c 0,0 5.052,-0.016 7.225,-0.016 0.888,-0.002 1.354,-0.416 1.351,-1.193 -0.006,-0.761 -0.492,-1.196 -1.361,-1.196 -3.473,-0.005 -10.86,-0.003 -11.0829995,-0.003 -0.022,-0.047 -0.045,-0.094 -0.069,-0.139 0.3939995,-0.319 2.0409995,-1.626 2.4149995,-2.017 0.469,-0.4870005 0.519,-1.1650005 0.162,-1.6040005 -0.414,-0.511 -0.973,-0.5 -1.48,-0.236 -1.4609995,0.764 -6.5999995,3.6430005 -7.7329995,4.2710005 -0.9,0.499 -1.516,1.253 -1.882,2.19 -0.37000002,0.95 -0.17,2.01 -0.166,2.979 0.004,0.718 -0.27300002,1.345 -0.055,2.063 0.629,2.087 2.425,3.312 4.859,3.318 4.6179995,0.014 9.2379995,-0.139 13.8569995,-0.158 0.755,-0.004 1.171,-0.301 1.182,-1.033 0.012,-0.754 -0.423,-0.969 -1.183,-0.973 -1.778,-0.01 -5.824,-0.004 -6.04,-0.004 10e-4,-0.084 0.003,-0.586 10e-4,-0.67 z"},TASK_TYPE_INSTANTIATING_SEND:{d:"m {mx},{my} l 0,8.4 l 12.6,0 l 0,-8.4 z l 6.3,3.6 l 6.3,-3.6"},TASK_TYPE_SERVICE:{d:"m {mx},{my} v -1.71335 c 0.352326,-0.0705 0.703932,-0.17838 1.047628,-0.32133 0.344416,-0.14465 0.665822,-0.32133 0.966377,-0.52145 l 1.19431,1.18005 1.567487,-1.57688 -1.195028,-1.18014 c 0.403376,-0.61394 0.683079,-1.29908 0.825447,-2.01824 l 1.622133,-0.01 v -2.2196 l -1.636514,0.01 c -0.07333,-0.35153 -0.178319,-0.70024 -0.323564,-1.04372 -0.145244,-0.34406 -0.321407,-0.6644 -0.522735,-0.96217 l 1.131035,-1.13631 -1.583305,-1.56293 -1.129598,1.13589 c -0.614052,-0.40108 -1.302883,-0.68093 -2.022633,-0.82247 l 0.0093,-1.61852 h -2.241173 l 0.0042,1.63124 c -0.353763,0.0736 -0.705369,0.17977 -1.049785,0.32371 -0.344415,0.14437 -0.665102,0.32092 -0.9635006,0.52046 l -1.1698628,-1.15823 -1.5667691,1.5792 1.1684265,1.15669 c -0.4026573,0.61283 -0.68308,1.29797 -0.8247287,2.01713 l -1.6588041,0.003 v 2.22174 l 1.6724648,-0.006 c 0.073327,0.35077 0.1797598,0.70243 0.3242851,1.04472 0.1452428,0.34448 0.3214064,0.6644 0.5227339,0.96066 l -1.1993431,1.19723 1.5840256,1.56011 1.1964668,-1.19348 c 0.6140517,0.40346 1.3028827,0.68232 2.0233517,0.82331 l 7.19e-4,1.69892 h 2.226848 z m 0.221462,-3.9957 c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"},TASK_TYPE_SERVICE_FILL:{d:"m {mx},{my} c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"},TASK_TYPE_BUSINESS_RULE_HEADER:{d:"m {mx},{my} 0,4 20,0 0,-4 z"},TASK_TYPE_BUSINESS_RULE_MAIN:{d:"m {mx},{my} 0,12 20,0 0,-12 zm 0,8 l 20,0 m -13,-4 l 0,8"},MESSAGE_FLOW_MARKER:{d:"m {mx},{my} m -10.5 ,-7 l 0,14 l 21,0 l 0,-14 z l 10.5,6 l 10.5,-6"}},this.getRawPath=function(t){return this.pathMap[t].d},this.getScaledPath=function(t,n){var i=this.pathMap[t],r,o;n.abspos?(r=n.abspos.x,o=n.abspos.y):(r=n.containerWidth*n.position.mx,o=n.containerHeight*n.position.my);var a={};if(n.position){for(var s=n.containerHeight/i.height*n.yScaleFactor,c=n.containerWidth/i.width*n.xScaleFactor,u=0;u<i.heightElements.length;u++)a["y"+u]=i.heightElements[u]*s;for(var l=0;l<i.widthElements.length;l++)a["x"+l]=i.widthElements[l]*c}var p=WS(i.d,{mx:r,my:o,e:a});return p}}var zS=/\{([^{}]+)\}/g,VS=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;function GS(e,t,n){var i=n;return t.replace(VS,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 WS(e,t){return String(e).replace(zS,function(n,i){return GS(n,i,t)})}const US={__init__:["bpmnRenderer"],bpmnRenderer:["type",Br],textRenderer:["type",dm],pathMap:["type",HS]};function YS(e,t){return t=t||{},e.replace(/{([^}]+)}/g,function(n,i){return t[i]||"{"+i+"}"})}const oa={translate:["value",YS]};function Ls(e,t,n){return D({id:e.id,type:e.$type,businessObject:e,di:t},n)}function qS(e,t,n){var i=e.waypoint;return!i||i.length<2?[be(t),be(n)]:i.map(function(r){return{x:r.x,y:r.y}})}function hm(e,t,n){return new Error(`element ${sn(t)} referenced by ${sn(e)}#${n} not yet drawn`)}function Oi(e,t,n,i,r){this._eventBus=e,this._canvas=t,this._elementFactory=n,this._elementRegistry=i,this._textRenderer=r}Oi.$inject=["eventBus","canvas","elementFactory","elementRegistry","textRenderer"],Oi.prototype.add=function(e,t,n){var i,r,o;if(v(t,"bpmndi:BPMNPlane")){var a=v(e,"bpmn:SubProcess")?{id:e.id+"_plane"}:{};i=this._elementFactory.createRoot(Ls(e,t,a)),this._canvas.addRootElement(i)}else if(v(t,"bpmndi:BPMNShape")){var s=!je(e,t),c=XS(e);r=n&&(n.hidden||n.collapsed);var u=t.bounds;i=this._elementFactory.createShape(Ls(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})),v(e,"bpmn:BoundaryEvent")&&this._attachBoundary(e,i),v(e,"bpmn:Lane")&&(o=0),v(e,"bpmn:DataStoreReference")&&(KS(n,be(u))||(n=this._canvas.findRoot(n))),this._canvas.addShape(i,n,o)}else if(v(t,"bpmndi:BPMNEdge")){var l=this._getSource(e),p=this._getTarget(e);r=n&&(n.hidden||n.collapsed),i=this._elementFactory.createConnection(Ls(e,t,{hidden:r,source:l,target:p,waypoints:qS(t,l,p)})),v(e,"bpmn:DataAssociation")&&(n=this._canvas.findRoot(n)),this._canvas.addConnection(i,n,o)}else throw new Error(`unknown di ${sn(t)} for element ${sn(e)}`);return rr(e)&&Hn(i)&&this.addLabel(e,t,i),this._eventBus.fire("bpmnElement.added",{element:i}),i},Oi.prototype._attachBoundary=function(e,t){var n=e.attachedToRef;if(!n)throw new Error(`missing ${sn(e)}#attachedToRef`);var i=this._elementRegistry.get(n.id),r=i&&i.attachers;if(!i)throw hm(e,n,"attachedToRef");t.host=i,r||(i.attachers=r=[]),r.indexOf(t)===-1&&r.push(t)},Oi.prototype.addLabel=function(e,t,n){var i,r,o;return i=pS(t,n),r=Hn(n),r&&(i=this._textRenderer.getExternalLabelBounds(i,r)),o=this._elementFactory.createLabel(Ls(e,t,{id:e.id+"_label",labelTarget:n,type:"label",hidden:n.hidden||!Hn(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)},Oi.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?hm(e,i,t+"Ref"):new Error(`${sn(e)}#${t} Ref not specified`)},Oi.prototype._getSource=function(e){return this._getConnectedElement(e,"source")},Oi.prototype._getTarget=function(e){return this._getConnectedElement(e,"target")},Oi.prototype._getElement=function(e){return this._elementRegistry.get(e.id)};function KS(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 XS(e){return v(e,"bpmn:Group")}const mm={__depends__:[US,{__depends__:[oa],bpmnImporter:["type",Oi]}]};function aa(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function ri(e,t){return{x:e.x-t.x,y:e.y-t.y}}function ml(e){return Math.log(e)/Math.log(10)}var ZS=1e3;function K(e){this._eventBus=e}K.$inject=["eventBus"];function QS(e,t){return function(n){return e.call(t||null,n.context,n.command,n)}}K.prototype.on=function(e,t,n,i,r,o){if((Gt(t)||we(t))&&(o=r,r=i,i=n,n=t,t=null),Gt(n)&&(o=r,r=i,i=n,n=ZS),Vt(r)&&(o=r,r=!1),!Gt(i))throw new Error("handlerFn must be a function");_e(e)||(e=[e]);var a=this._eventBus;k(e,function(s){var c=["commandStack",s,t].filter(function(u){return u}).join(".");a.on(c,n,r?QS(i,o):i,o)})},K.prototype.canExecute=Di("canExecute"),K.prototype.preExecute=Di("preExecute"),K.prototype.preExecuted=Di("preExecuted"),K.prototype.execute=Di("execute"),K.prototype.executed=Di("executed"),K.prototype.postExecute=Di("postExecute"),K.prototype.postExecuted=Di("postExecuted"),K.prototype.revert=Di("revert"),K.prototype.reverted=Di("reverted");function Di(e){return function(n,i,r,o,a){(Gt(n)||we(n))&&(a=o,o=r,r=i,i=n,n=null),this.on(n,e,i,r,o,a)}}var gl=["top","bottom","left","right"],Is=10;function yl(e,t){K.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(Ms(r)&&!rt(r)){var o=tR(r);o&&i(r,o)}}function i(r,o){var a=be(r),s=r.label,c=be(s);if(s.parent){var u=ge(r),l;switch(o){case"top":l={x:a.x,y:u.top-Is-s.height/2};break;case"left":l={x:u.left-Is-s.width/2,y:a.y};break;case"bottom":l={x:a.x,y:u.bottom+Is+s.height/2};break;case"right":l={x:u.right+Is+s.width/2,y:a.y};break}var p=ri(l,c);t.moveShape(s,p)}}}oe(yl,K),yl.$inject=["eventBus","modeling"];function JS(e){var t=e.host,n=be(e),i=Zt(n,t),r;i.indexOf("-")>=0?r=i.split("-"):r=[i];var o=gl.filter(function(a){return r.indexOf(a)===-1});return o}function eR(e){var t=be(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 gm(t,i)});return n}function tR(e){var t=be(e.label),n=be(e),i=gm(n,t);if(nR(i)){var r=eR(e);if(e.host){var o=JS(e);r=r.concat(o)}var a=gl.filter(function(s){return r.indexOf(s)===-1});return a.indexOf(i)!==-1?Zt(e.label,e)!=="intersect"?void 0:i:a[0]}}function gm(e,t){return Zt(t,e,5)}function nR(e){return gl.indexOf(e)!==-1}function vl(e){K.call(this,e),this.preExecute("shape.append",function(t){var n=t.source,i=t.shape;t.position||(v(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)}oe(vl,K),vl.$inject=["eventBus"];var iR=1500;function _l(e,t,n){e.invoke(K,this),this.preExecute("elements.delete",iR,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=Le(r,u=>v(u,"bpmn:Participant")||v(u,"bpmn:SubProcess"));if(!o.length)return[];var a=n.getRootElement(),s=new Set(a.children.filter(u=>v(u,"bpmn:Artifact"))),c=new Set;return k(o,u=>{const l=new Set(Qr(so(Array.from(s),Ct(u))));c=c.union(l),s=s.difference(l)}),Array.from(c)}}oe(_l,K),_l.$inject=["injector","eventBus","canvas"];function bl(e,t){e.invoke(K,this),this.postExecute("shape.move",function(n){var i=n.newParent,r=n.shape,o=Le(r.incoming.concat(r.outgoing),function(a){return v(a,"bpmn:Association")});k(o,function(a){t.moveConnection(a,{x:0,y:0},i)})},!0)}oe(bl,K),bl.$inject=["injector","modeling"];function mo(e,t){for(En(t)&&(t=[t]);e=e.parent;)if(De(e,t))return e;return null}function ym(e,t){var n=mo(e,"bpmn:Process");if(n)return!0;var i=["bpmn:Participant","bpmn:Lane"];if(n=mo(e,i),n)return Wt(n);if(De(e,i))return Wt(e);var r;for(r=X(e);r&&!v(r,"bpmn:Process");r=r.$parent);if(!t)return!0;var o=t.find(function(a){var s=X(a);return s&&s.get("processRef")===r});return o?Wt(o):!0}var vm=500;function Ns(e,t){t.invoke(K,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",vm,function(i){var r=i.elements;r=r.filter(function(o){var a=o.host;return _m(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",vm,function(i){var r=i.shapes,o=i.newHost;if(r.length===1){var a=r[0];_m(a,o)&&(i.shapes=[n._replaceShape(a,o)])}},!0)}Ns.$inject=["bpmnReplace","injector"],oe(Ns,K),Ns.prototype._replaceShape=function(e,t){var n=rR(e),i={type:"bpmn:BoundaryEvent",host:t};return n&&(i.eventDefinitionType=n.$type),this._bpmnReplace.replaceElement(e,i,{layoutConnection:!1})};function rR(e){var t=X(e),n=t.eventDefinitions;return n&&n[0]}function _m(e,t){return!ke(e)&&De(e,["bpmn:IntermediateThrowEvent","bpmn:IntermediateCatchEvent"])&&!!t}function xl(e,t){K.call(this,e);function n(i){return Le(i.attachers,function(r){return v(r,"bpmn:BoundaryEvent")})}this.postExecute("connection.create",function(i){var r=i.context.source,o=i.context.target,a=n(o);v(r,"bpmn:EventBasedGateway")&&v(o,"bpmn:ReceiveTask")&&a.length>0&&t.removeElements(a)}),this.postExecute("connection.reconnect",function(i){var r=i.context.oldSource,o=i.context.newSource;v(r,"bpmn:Gateway")&&v(o,"bpmn:EventBasedGateway")&&k(o.outgoing,function(a){var s=a.target,c=n(s);v(s,"bpmn:ReceiveTask")&&c.length>0&&t.removeElements(c)})})}xl.$inject=["eventBus","modeling"],oe(xl,K);function bm(e){return e.create("bpmn:Category")}function oR(e){return e.create("bpmn:CategoryValue")}function xm(e,t){var n=t.get("categoryValueRef");return n||(n=t.categoryValueRef=oR(e)),n.$parent||(n.$parent=bm(e)),n}function aR(e,t,n){return Et(t.get("categoryValue"),e),e.$parent=t,Et(n.get("rootElements"),t),t.$parent=n,e}function sR(e){var t=e.$parent;return t&&(xt(t.get("categoryValue"),e),e.$parent=null),e}function cR(e){var t=e.$parent;return t&&(xt(t.get("rootElements"),e),e.$parent=null),e}var uR=500;function wl(e,t,n){n.invoke(K,this);function i(c){return t.filter(function(u){return v(u,"bpmn:Group")&&!u.labelTarget}).map(X).filter(function(u){return u!==c})}function r(c,u){return i(u).some(function(l){return l.get("categoryValueRef")===c})}function o(c,u){return i(u).some(function(l){var p=l.get("categoryValueRef");return p&&p.$parent===c})}function a(c,u){c&&u&&aR(c,u,e.getDefinitions())}function s(c,u,l){u&&!o(u,l)&&cR(u),c&&!r(c,l)&&sR(c)}this.executed(["shape.create","label.create"],function(c){var u=c.labelTarget||c.shape;!v(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;!v(u,"bpmn:Group")||u.labelTarget||s(c.categoryValue,c.category,X(u))},!0),this.executed(["shape.move","shape.resize"],uR,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,X(u))},!0),this.executed("group.updateRefs",function(c){wm(c).forEach(function(u){a(u.categoryValue,u.category)})},!0),this.reverted("group.updateRefs",function(c){wm(c).forEach(function(u){s(u.categoryValue,u.category,X(u.groupShape))})},!0),this.executed("shape.delete",function(c){var u=c.shape;!v(u,"bpmn:Group")||u.labelTarget||s(c.categoryValue,c.category,X(u))},!0),this.reverted("shape.delete",function(c){var u=c.shape;!v(u,"bpmn:Group")||u.labelTarget||a(c.categoryValue,c.category)},!0)}wl.$inject=["bpmnjs","elementRegistry","injector"],oe(wl,K);function wm(e){var t;return((t=e.updates)==null?void 0:t.groups)||[]}function El(e,t,n){K.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 R=g.source,w=g.target;go(R)&&sa(w)&&l(w)}function r(g){const R=g.connection,w=g.source,b=g.target;go(w)&&Bs(b)&&(u(b),f(w,[R]))}function o(g){const R=g.newTarget,w=g.oldSource,b=g.oldTarget;if(b!==R){const x=w;sa(b)&&l(b),go(x)&&Bs(R)&&u(R)}}function a(g){const{element:R}=g;sa(R)?(p(R),d(R)):Bs(R)&&h(R)}function s(g){const{newData:R,oldShape:w}=g;if(go(g.oldShape)&&R.eventDefinitionType!=="bpmn:CompensateEventDefinition"||R.type!=="bpmn:BoundaryEvent"){const b=w.outgoing.find(({target:x})=>sa(x));b&&b.target&&(g._connectionTarget=b.target)}else if(!go(g.oldShape)&&R.eventDefinitionType==="bpmn:CompensateEventDefinition"&&R.type==="bpmn:BoundaryEvent"){const b=w.outgoing.find(({target:x})=>Bs(x));b&&b.target&&(g._connectionTarget=b.target),m(w)}}function c(g){const{_connectionTarget:R,newShape:w}=g;R&&t.connect(w,R)}function u(g){t.updateProperties(g,{isForCompensation:!0})}function l(g){t.updateProperties(g,{isForCompensation:void 0})}function p(g){for(const R of g.incoming)n.canConnect(R.source,g)||t.removeConnection(R);for(const R of g.outgoing)n.canConnect(g,R.target)||t.removeConnection(R)}function f(g,R){g.outgoing.filter(x=>v(x,"bpmn:Association")).filter(x=>sa(x.target)&&!R.includes(x)).forEach(x=>t.removeConnection(x))}function d(g){const R=g.attachers.slice();R.length&&t.removeElements(R)}function h(g){const R=g.incoming.filter(w=>go(w.source));t.removeElements(R)}function m(g){const R=g.outgoing.filter(w=>v(w,"bpmn:SequenceFlow"));t.removeElements(R)}}oe(El,K),El.$inject=["eventBus","modeling","bpmnRules"];function sa(e){const t=X(e);return t&&t.get("isForCompensation")}function go(e){return e&&v(e,"bpmn:BoundaryEvent")&&po(e,"bpmn:CompensateEventDefinition")}function Bs(e){return e&&v(e,"bpmn:Activity")&&!cn(e)}function Sl(e){e.invoke(K,this),this.preExecute("shape.create",1500,function(t){var n=t.context,i=n.parent,r=n.shape;v(i,"bpmn:Lane")&&!v(r,"bpmn:Lane")&&(n.parent=mo(i,"bpmn:Participant"))})}Sl.$inject=["injector"],oe(Sl,K);function Rl(e,t){K.call(this,e),this.preExecute("shape.create",function(n){var a;var i=n.context,r=i.shape;if(v(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}})}Rl.$inject=["eventBus","bpmnFactory"],oe(Rl,K);var Cl=20,Pl=20,Em=30,$s=2e3;function Al(e,t,n){K.call(this,t),t.on(["create.start","shape.move.start"],$s,function(r){var o=r.context,a=o.shape,s=e.getRootElement();if(!(!v(a,"bpmn:Participant")||!v(s,"bpmn:Process")||!s.children.length)){var c=s.children.filter(function(p){return!v(p,"bpmn:Group")&&!ke(p)&&!rt(p)});if(c.length){var u=Ct(c),l=lR(a,u);D(a,l),o.createConstraints=pR(a,u)}}}),t.on("create.start",$s,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}v(a,"bpmn:Participant")&&v(s,"bpmn:Process")&&(t.on("element.hover",$s,u),t.once("create.cleanup",function(){t.off("element.hover",u)}))});function i(){var r=e.getRootElement();return v(r,"bpmn:Collaboration")?r:n.makeCollaboration()}this.preExecute("elements.create",$s,function(r){var o=r.elements,a=r.parent,s=fR(o),c;s&&v(a,"bpmn:Process")&&(r.parent=i(),c=r.hints=r.hints||{},c.participant=s,c.process=a,c.processRef=X(s).get("processRef"))},!0),this.preExecute("shape.create",function(r){var o=r.parent,a=r.shape;v(a,"bpmn:Participant")&&v(o,"bpmn:Process")&&(r.parent=i(),r.process=o,r.processRef=X(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)&&X(s).set("processRef",X(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)&&X(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)}Al.$inject=["canvas","eventBus","modeling"],oe(Al,K);function lR(e,t){t={width:t.width+Cl*2+Em,height:t.height+Pl*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 pR(e,t){return t=ge(t),{bottom:t.top+e.height/2-Pl,left:t.right-e.width/2+Cl,top:t.bottom-e.height/2+Pl,right:t.left+e.width/2-Cl-Em}}function fR(e){return ct(e,function(t){return v(t,"bpmn:Participant")})}var Sm="__targetRef_placeholder";function Tl(e,t){K.call(this,e),this.executed(["connection.create","connection.delete","connection.move","connection.reconnect"],Rm(o)),this.reverted(["connection.create","connection.delete","connection.move","connection.reconnect"],Rm(o));function n(a,s,c){var u=a.get("dataInputAssociations");return ct(u,function(l){return l!==c&&l.targetRef===s})}function i(a,s){var c=a.get("properties"),u=ct(c,function(l){return l.name===Sm});return!u&&s&&(u=t.create("bpmn:Property",{name:Sm}),Et(c,u)),u}function r(a,s){var c=i(a);c&&(n(a,c,s)||xt(a.get("properties"),c))}function o(a){var s=a.context,c=s.connection,u=c.businessObject,l=c.target,p=l&&l.businessObject,f=s.newTarget,d=f&&f.businessObject,h=s.oldTarget||s.target,m=h&&h.businessObject,g=c.businessObject,R;m&&m!==p&&r(m,u),d&&d!==p&&r(d,u),p?(R=i(p,!0),g.targetRef=R):g.targetRef=null}}Tl.$inject=["eventBus","bpmnFactory"],oe(Tl,K);function Rm(e){return function(t){var n=t.context,i=n.connection;if(v(i,"bpmn:DataInputAssociation"))return e(t)}}function js(e){this._bpmnUpdater=e}js.$inject=["bpmnUpdater"],js.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),[]},js.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 Ml(e,t,n,i){K.call(this,i),t.registerHandler("dataStore.updateContainment",js);function r(){return n.filter(function(s){return v(s,"bpmn:Participant")&&X(s).processRef})[0]}function o(s){return s.children.filter(function(c){return v(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:We(s),newSemanticParent:l.processRef||l,newDiParent:We(c)})}}this.preExecute("shape.create",function(s){var c=s.context,u=c.shape;v(u,"bpmn:DataStoreReference")&&u.type!=="label"&&(c.hints||(c.hints={}),c.hints.autoResize=!1)}),this.preExecute("elements.move",function(s){var c=s.context,u=c.shapes,l=u.filter(function(p){return v(p,"bpmn:DataStoreReference")});l.length&&(c.hints||(c.hints={}),c.hints.autoResize=u.filter(function(p){return!v(p,"bpmn:DataStoreReference")}))}),this.postExecute("shape.create",function(s){var c=s.context,u=c.shape,l=u.parent;v(u,"bpmn:DataStoreReference")&&u.type!=="label"&&v(l,"bpmn:Collaboration")&&a(u)}),this.postExecute("shape.move",function(s){var c=s.context,u=c.shape,l=c.oldParent,p=u.parent;if(!v(l,"bpmn:Collaboration")&&v(u,"bpmn:DataStoreReference")&&u.type!=="label"&&v(p,"bpmn:Collaboration")){var f=v(l,"bpmn:Participant")?l:hR(l,"bpmn:Participant");a(u,f)}}),this.postExecute("shape.delete",function(s){var c=s.context,u=c.shape,l=e.getRootElement();De(u,["bpmn:Participant","bpmn:SubProcess"])&&v(l,"bpmn:Collaboration")&&o(l).filter(function(p){return dR(p,u)}).forEach(function(p){a(p)})}),this.postExecute("canvas.updateRoot",function(s){var c=s.context,u=c.oldRoot,l=c.newRoot,p=o(u);p.forEach(function(f){v(l,"bpmn:Process")&&a(f,l)})})}Ml.$inject=["canvas","commandStack","elementRegistry","eventBus"],oe(Ml,K);function dR(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 hR(e,t){for(;e.parent;){if(v(e.parent,t))return e.parent;e=e.parent}}var Fs=Math.max,Hs=Math.min,mR=20;function Cm(e,t){return{top:e.top-t.top,right:e.right-t.right,bottom:e.bottom-t.bottom,left:e.left-t.left}}function gR(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 yR(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 zs(e,t,n){var i=t[e],r=n.min&&n.min[e],o=n.max&&n.max[e];return we(r)&&(i=(/top|left/.test(e)?Hs:Fs)(i,r)),we(o)&&(i=(/top|left/.test(e)?Fs:Hs)(i,o)),i}function vR(e,t){if(!t)return e;var n=ge(e);return Ss({top:zs("top",n,t),right:zs("right",n,t),bottom:zs("bottom",n,t),left:zs("left",n,t)})}function _R(e,t,n,i){var r=ge(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?ge(i):o,s={top:Hs(o.top,a.top),left:Hs(o.left,a.left),bottom:Fs(o.bottom,a.bottom),right:Fs(o.right,a.right)};return Ss(s)}function ca(e,t){return typeof e<"u"?e:mR}function bR(e,t){var n,i,r,o;return typeof t=="object"?(n=ca(t.left),i=ca(t.right),r=ca(t.top),o=ca(t.bottom)):n=i=r=o=ca(t),{x:e.x-n,y:e.y-r,width:e.width+n+i,height:e.height+r+o}}function xR(e){return!(e.waypoints||e.type==="label")}function Pm(e,t){var n;if(e.length===void 0?n=Le(e.children,xR):n=e,n.length)return bR(Ct(n),t)}var or=Math.abs;function wR(e,t){return Cm(ge(t),ge(e))}var ER=["bpmn:Participant","bpmn:Process","bpmn:SubProcess"],Un=30;function Vs(e,t){return t=t||[],e.children.filter(function(n){v(n,"bpmn:Lane")&&(Vs(n,t),t.push(n))}),t}function ar(e){return e.children.filter(function(t){return v(t,"bpmn:Lane")})}function Yn(e){return mo(e,ER)||e}function SR(e,t){var n=Yn(e),i=v(n,"bpmn:Process")?[]:[n],r=Vs(n,i),o=ge(e),a=ge(t),s=wR(e,t),c=[],u=Wt(e);return r.forEach(function(l){if(l!==e){var p=u?0:s.top,f=u?s.right:0,d=u?0:s.bottom,h=u?s.left:0,m=ge(l);s.top&&(or(m.bottom-o.top)<10&&(d=a.top-m.bottom),or(m.top-o.top)<5&&(p=a.top-m.top)),s.left&&(or(m.right-o.left)<10&&(f=a.left-m.right),or(m.left-o.left)<5&&(h=a.left-m.left)),s.bottom&&(or(m.top-o.bottom)<10&&(p=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&&(f=a.right-m.right)),(p||f||d||h)&&c.push({shape:l,newBounds:yR(l,{top:p,right:f,bottom:d,left:h})})}}),c}var RR=500;function kl(e,t){K.call(this,e);function n(i,r){var o=Wt(i),a=ar(r),s=[],c=[],u=[],l=[];if(Lr(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 p;o?c.length&&s.length?p=i.height/2:p=i.height:l.length&&u.length?p=i.width/2:p=i.width;var f,d,h,m;s.length&&(f=t.calculateAdjustments(s,"y",p,i.y-10),t.makeSpace(f.movingShapes,f.resizingShapes,{x:0,y:p},"s")),c.length&&(d=t.calculateAdjustments(c,"y",-p,i.y+i.height+10),t.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:-p},"n")),u.length&&(h=t.calculateAdjustments(u,"x",p,i.x-10),t.makeSpace(h.movingShapes,h.resizingShapes,{x:p,y:0},"e")),l.length&&(m=t.calculateAdjustments(l,"x",-p,i.x+i.width+10),t.makeSpace(m.movingShapes,m.resizingShapes,{x:-p,y:0},"w"))}}this.postExecuted("shape.delete",RR,function(i){var r=i.context,o=r.hints,a=r.shape,s=r.oldParent;v(a,"bpmn:Lane")&&(o&&o.nested||n(a,s))})}kl.$inject=["eventBus","spaceTool"],oe(kl,K);var Am=500;function Gs(e,t){t.invoke(K,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",Am,function(i){var r=i.elements;r.filter(function(o){var a=o.host;return Tm(o,a)}).map(function(o){return r.indexOf(o)}).forEach(function(o){i.elements[o]=n._replaceShape(r[o])})},!0),this.preExecute("elements.move",Am,function(i){var r=i.shapes,o=i.newHost;r.forEach(function(a,s){var c=a.host;Tm(a,PR(r,c)?c:o)&&(r[s]=n._replaceShape(a))})},!0)}Gs.$inject=["bpmnReplace","injector"],oe(Gs,K),Gs.prototype._replaceShape=function(e){var t=CR(e),n;return t?n={type:"bpmn:IntermediateCatchEvent",eventDefinitionType:t.$type}:n={type:"bpmn:IntermediateThrowEvent"},this._bpmnReplace.replaceElement(e,n,{layoutConnection:!1})};function CR(e){var t=X(e),n=t.eventDefinitions;return n&&n[0]}function Tm(e,t){return!ke(e)&&v(e,"bpmn:BoundaryEvent")&&!t}function PR(e,t){return e.indexOf(t)!==-1}var Ws=Math.round,AR=Math.max;function TR(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 MR(e){var t=[];return e.forEach(function(n,i){t.push([i===0?"M":"L",n.x,n.y])}),t}var Mm=10;function kR(e,t){var n,i;for(n=0;i=e[n];n++)if(Qo(i,t)<=Mm)return{point:e[n],bendpoint:!0,index:n};return null}function OR(e,t){var n=Ih(TR(t,Mm),MR(e)),i=n[0],r=n[n.length-1],o;return i?i!==r?i.segment2!==r.segment2?(o=AR(i.segment2,r.segment2)-1,{point:e[o],bendpoint:!0,index:o}):{point:{x:Ws(i.x+r.x)/2,y:Ws(i.y+r.y)/2},index:i.segment2}:{point:{x:Ws(i.x),y:Ws(i.y)},index:i.segment2}:null}function Ol(e,t){return kR(e,t)||OR(e,t)}function Dl(e,t,n){K.call(this,e);function i(r,o,a){var s=o.waypoints,c,u,l,p,f,d,h,m=r.outgoing.slice(),g=r.incoming.slice(),R;we(a.width)?R=be(a):R=a;var w=Ol(s,R);if(w){if(c=s.slice(0,w.index),u=s.slice(w.index+(w.bendpoint?1:0)),!c.length||!u.length)return;l=w.bendpoint?s[w.index]:R,(c.length===1||!km(r,c[c.length-1]))&&c.push(Om(l)),(u.length===1||!km(r,u[0]))&&u.unshift(Om(l))}p=o.source,f=o.target,t.canConnect(p,r,o)&&(n.reconnectEnd(o,r,c||R),d=o),t.canConnect(r,f,o)&&(d?h=n.connect(r,f,{type:o.type,waypoints:u}):(n.reconnectStart(o,r,u||R),h=o));var b=[].concat(d&&Le(g,function(x){return x.source===d.source})||[],h&&Le(m,function(x){return x.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=be(c),l={x:u.x+s.x,y:u.y+s.y},p=ct(o.children,function(f){var d=t.canInsert(a,f);return d&&Ol(f.waypoints,l)});p&&(r.targetFlow=p,r.position=l)}},!0),this.postExecuted("elements.move",function(r){var o=r.shapes,a=r.targetFlow,s=r.position;a&&i(o[0],a,s)},!0),this.preExecute("shape.create",function(r){var o=r.parent,a=r.shape;t.canInsert(a,o)&&(r.targetFlow=o,r.parent=o.parent)},!0),this.postExecuted("shape.create",function(r){var o=r.shape,a=r.targetFlow,s=r.position;a&&i(o,a,s)},!0)}oe(Dl,K),Dl.$inject=["eventBus","bpmnRules","modeling"];function km(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 Om(e){return D({},e)}function Ll(e,t){K.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)&&yo(r)){var c=[];v(o,"bpmn:EventBasedGateway")?c=a.incoming.filter(u=>u!==r&&yo(u)):c=a.incoming.filter(u=>u!==r&&yo(u)&&v(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(v(r,"bpmn:EventBasedGateway")){var o=r.outgoing.filter(yo).reduce(function(a,s){return a.includes(s.target)?a:a.concat(s.target)},[]);o.forEach(function(a){a.incoming.filter(yo).forEach(function(s){const c=a.incoming.filter(yo).filter(function(u){return u.source===r});(s.source!==r||c.length>1)&&t.removeConnection(s)})})}})}Ll.$inject=["eventBus","modeling"],oe(Ll,K);function yo(e){return v(e,"bpmn:SequenceFlow")}var Us=1500,Dm=2e3;function Lm(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"],Us,function(i){var r=i.context,o=r.shape||i.shape,a=i.hover;v(a,"bpmn:Lane")&&!De(o,["bpmn:Lane","bpmn:Participant"])&&(i.hover=Yn(a),i.hoverGfx=e.getGraphics(i.hover));var s=n.getRootElement();a&&a!==s&&(o.labelTarget||De(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"],Us,function(i){var r=i.hover;v(r,"bpmn:Lane")&&(i.hover=Yn(r)||r,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["bendpoint.move.hover"],Us,function(i){var r=i.context,o=i.hover,a=r.type;v(o,"bpmn:Lane")&&/reconnect/.test(a)&&(i.hover=Yn(o)||o,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["connect.start"],Us,function(i){var r=i.context,o=r.start;v(o,"bpmn:Lane")&&(r.start=Yn(o)||o)}),t.on("shape.move.start",Dm,function(i){var r=i.shape;v(r,"bpmn:Lane")&&(i.shape=Yn(r)||r)}),t.on("spaceTool.move",Dm,function(i){var r=i.hover;r&&v(r,"bpmn:Lane")&&(i.hover=Yn(r))})}Lm.$inject=["elementRegistry","eventBus","canvas"];var Im=770;function Il(e,t,n,i){n.invoke(K,this);function r(s,c){var u=X(s),l=c.categoryValue||u.categoryValueRef;l||(l=xm(e,u));var p=c.category||l.$parent||bm(e);u.categoryValueRef=l,l.$parent=p,c.categoryValue=l,c.category=p}function o(s,c){var u=X(s),l=c.categoryValue||u.categoryValueRef,p=c.category||l&&l.$parent;l&&(c.categoryValue=l,c.category=p,u.categoryValueRef=null)}this.execute("label.create",function(s){var c=s.context,u=c.labelTarget;v(u,"bpmn:Group")&&r(u,c)}),this.revert("label.create",function(s){var c=s.context,u=c.labelTarget;v(u,"bpmn:Group")&&o(u,c)}),this.execute("shape.delete",function(s){var c=s.context,u=c.shape,l=X(u);if(!(!v(u,"bpmn:Group")||u.labelTarget)){var p=c.categoryValue=l.categoryValueRef;p&&(c.category=p.$parent,l.categoryValueRef=null)}}),this.reverted("shape.delete",function(s){var c=s.context,u=c.shape;if(!(!v(u,"bpmn:Group")||u.labelTarget)){var l=c.category,p=c.categoryValue,f=X(u);p&&(f.categoryValueRef=p,p.$parent=l)}}),this.execute("shape.create",function(s){var c=s.context,u=c.shape,l=c.hints||{};!v(u,"bpmn:Group")||u.labelTarget||l.createElementsBehavior===!1&&!X(u).categoryValueRef&&!c.categoryValue||r(u,c)}),this.reverted("shape.create",function(s){var c=s.context,u=c.shape,l=c.hints||{};!v(u,"bpmn:Group")||u.labelTarget||l.createElementsBehavior===!1&&!X(u).categoryValueRef&&!c.categoryValue||o(u,c)}),this.executed(["shape.move","shape.resize"],function(s){var c=s.context,u=c.shape;!v(u,"bpmn:Group")||u.labelTarget||X(u).categoryValueRef||r(u,c)}),this.reverted(["shape.move","shape.resize"],function(s){var c=s.context,u=c.shape;!v(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",Im,function(s){var c=s.descriptor,u=s.element;if(!(!v(u,"bpmn:Group")||u.labelTarget)){var l=X(u);if(l.categoryValueRef){var p=l.categoryValueRef;c.categoryValue=a(p,!0),p.$parent&&(c.category=a(p.$parent,!0))}}}),t.on("copyPaste.pasteElement",Im,function(s){var c=s.descriptor,u=c.businessObject,l=c.categoryValue,p=c.category;l&&(l=u.categoryValueRef=a(l)),p&&(l.$parent=a(p)),delete c.category,delete c.categoryValue})}Il.$inject=["bpmnFactory","eventBus","injector","moddleCopy"],oe(Il,K);function Nl(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 Nm(e){function t(i,r,o){var a={x:o.x,y:o.y-50},s={x:o.x-50,y:o.y},c=Nl(i,r,o,a),u=Nl(i,r,o,s),l;c&&u?Bm(c,o)>Bm(u,o)?l=u:l=c:l=c||u,i.original=l}function n(i){var r=i.waypoints;t(r[0],r[1],be(i.source)),t(r[r.length-1],r[r.length-2],be(i.target))}e.on("bpmnElement.added",function(i){var r=i.element;r.waypoints&&n(r)})}Nm.$inject=["eventBus"];function Bm(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Bl(e){K.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=X(i),o=We(i);if(De(r,t)){var a=o.get("isHorizontal");a===void 0&&(a=!0),o.set("isHorizontal",a)}})}Bl.$inject=["eventBus"],oe(Bl,K);function $m(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function jm(e){return Math.atan((e[1].y-e[0].y)/(e[1].x-e[0].x))}function DR(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 LR(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 $l(e,t){var n=t[0],i=t[1],r={x:i.x-n.x,y:i.y-n.y},o=LR([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 Fm(e,t){var n=$l(e,t),i={x:n.x-e.x,y:n.y-e.y};return $m(i)}function ua(e,t){return $m({x:e.x-t.x,y:e.y-t.y})}var Hm=Math.sqrt,zm=Math.min,IR=Math.max,Vm=Math.abs;function Gm(e){return Math.pow(e,2)}function la(e,t){return Hm(Gm(e.x-t.x)+Gm(e.y-t.y))}function NR(e,t){var n=0,i,r,o,a,s,c,u,l,p,f,d;for(n=0;n<t.length-1;n++){if(i=t[n],r=t[n+1],Um(i,r)?u=[i]:(o=la(e,i),a=la(e,r),c=zm(o,a),u=BR(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:Um(i,u[0])?n:n+1}),u.length===2&&(s=jR(u[0],u[1]),l={type:"segment",position:s,segmentIndex:n,relativeLocation:la(i,s)/la(i,r)}),p=la(l.position,e),(!d||f>p)&&(d=l,f=p)}return d}function BR(e,t,n,i){var r=t.x-e.x,o=t.y-e.y,a=n.x-e.x,s=n.y-e.y,c=r*r+o*o,u=r*a+o*s,l=a*a+s*s-i*i,p=u/c,f=l/c,d=p*p-f;if(d<0&&d>-1e-6&&(d=0),d<0)return[];var h=Hm(d),m=-p+h,g=-p-h,R={x:e.x-r*m,y:e.y-o*m};if(d===0)return[R];var w={x:e.x-r*g,y:e.y-o*g};return[R,w].filter(function(b){return $R(b,e,t)})}function $R(e,t,n){return Wm(e.x,t.x,n.x)&&Wm(e.y,t.y,n.y)}function Wm(e,t,n){return e>=zm(t,n)-Ys&&e<=IR(t,n)+Ys}function jR(e,t){return{x:(e.x+t.x)/2,y:(e.y+t.y)/2}}var Ys=.1;function Um(e,t){return Vm(e.x-t.x)<=Ys&&Vm(e.y-t.y)<=Ys}function FR(e,t,n,i){var r=n.segmentIndex,o=t.length-e.length;if(i.segmentMove){var a=i.segmentMove.segmentStartIndex,s=i.segmentMove.newSegmentStartIndex;return r===a?s:r>=s?r+o<s?s:r+o:r}if(i.bendpointMove){var c=i.bendpointMove.insert,u=i.bendpointMove.bendpointIndex,l;if(o===0)return r;if(r>=u&&(l=c?r+1:r-1),r<u&&(l=r,c&&n.type!=="bendpoint"&&u-1===r)){var p=qm(t,u);p<n.relativeLocation&&l++}return l}return o===0?r:i.connectionStart&&r===0?0:i.connectionEnd&&r===e.length-2?t.length-2:Math.floor((t.length-2)/2)}function Ym(e,t,n,i){var r=0,o=0,a={point:e,delta:{x:0,y:0}},s=NR(e,n),c=s.segmentIndex,u=FR(n,t,s,i);if(u<0||u>t.length-2||u===null)return a;var l=Km(n,c),p=Km(t,u),f=s.position,d=zR(l,f),h=HR(l,p);if(s.type==="bendpoint"){var m=t.length-n.length,g=s.bendpointIndex,R=n[g];if(t.indexOf(R)!==-1)return a;if(m===0){var w=t[g];return r=w.x-s.position.x,o=w.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=qm(n,g))}var b={x:(p[1].x-p[0].x)*d+p[0].x,y:(p[1].y-p[0].y)*d+p[0].y},x=DR({x:e.x-f.x,y:e.y-f.y},h);return r=b.x+x.x-e.x,o=b.y+x.y-e.y,{point:Mi(b),delta:Mi({x:r,y:o})}}function qm(e,t){var n=ua(e[t-1],e[t]),i=ua(e[t],e[t+1]),r=n/(n+i);return r}function HR(e,t){var n=jm(e),i=jm(t);return i-n}function Km(e,t){return[e[t],e[t+1]]}function zR(e,t){var n=ua(e[0],e[1]),i=ua(e[0],t);return n===0?0:i/n}function VR(e,t,n,i){var r=be(e);return Ym(r,t,n,i).delta}function pa(e,t,n){var i=aa(t),r=aa(n),o=ri(e,i),a={x:o.x*(n.width/t.width),y:o.y*(n.height/t.height)};return Mi({x:r.x+a.x,y:r.y+a.y})}function Xm(e,t,n){var i=aa(e),r=aa(t),o=aa(n),a=ri(e,i),s=ri(i,r),c=GR(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 Mi({x:l.x+a.x-e.x,y:l.y+a.y-e.y})}function GR(e,t,n){var i=ge(t),r=ge(n);if(WR(i,r))return null;var o=Zt(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=Zt(n,s),c!==o?null:a}function WR(e,t){return UR(e,t)||YR(e,t)}function UR(e,t){return e.right!==t.right&&e.left!==t.left}function YR(e,t){return e.top!==t.top&&e.bottom!==t.bottom}var Zm="name",Qm="text";function jl(e,t,n,i){K.call(this,e),this.postExecute("element.updateProperties",r),this.postExecute("element.updateModdleProperties",a=>{X(a.context.element)===a.context.moddleElement&&r(a)});function r(a){var s=a.context,c=s.element,u=s.properties;if(Zm in u&&t.updateLabel(c,u[Zm]),Qm in u&&v(c,"bpmn:TextAnnotation")){var l=i.getTextAnnotationBounds({x:c.x,y:c.y,width:c.width,height:c.height},u[Qm]||"");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;ke(u)||!rr(u)||Hn(u)&&t.updateLabel(u,Hn(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=D({},s.hints),p=s.newWaypoints||c.waypoints,f=s.oldWaypoints;return typeof l.startChanged>"u"&&(l.startChanged=!!l.connectionStart),typeof l.endChanged>"u"&&(l.endChanged=!!l.connectionEnd),VR(u,p,f,l)}this.postExecute(["connection.layout","connection.updateWaypoints"],function(a){var s=a.context,c=s.hints||{};if(c.labelBehavior!==!1){var u=s.connection,l=u.label,p;!l||!l.parent||(p=o(a),t.moveShape(l,p))}}),this.postExecute(["shape.replace"],function(a){var s=a.context,c=s.newShape,u=s.oldShape,l=X(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(!(!ke(c)||u.autoResize)){var l=s.newBounds,p=i.getDimensions(Hn(c)||"",{box:l,style:i.getExternalStyle()}),f=Math.ceil(p.height),d=l.y!==c.y,h=c.y+c.height;s.newBounds={width:l.width,height:f,x:l.x,y:d?h-f:l.y}}}),this.postExecute("shape.resize",function(a){var s=a.context,c=s.shape,u=s.newBounds,l=s.oldBounds;if(Ms(c)){var p=c.label,f=be(p),d=XR(l),h=KR(f,d),m=qR(h,l,u);t.moveShape(p,m)}})}oe(jl,K),jl.$inject=["eventBus","modeling","bpmnFactory","textRenderer"];function qR(e,t,n){var i=pa(e,t,n);return Mi(ri(i,e))}function KR(e,t){if(t.length){var n=ZR(e,t);return $l(e,n)}}function XR(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 ZR(e,t){var n=t.map(function(r){return{line:r,distance:Fm(e,r)}}),i=ai(n,"distance");return i[0].line}function QR(e,t,n,i){return Ym(e,t,n,i).point}function Fl(e,t){K.call(this,e);function n(i,r){var o=i.context,a=o.connection,s=D({},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),QR(r,c,u,s)}this.postExecute(["connection.layout","connection.updateWaypoints"],function(i){var r=i.context,o=r.connection,a=o.outgoing,s=o.incoming;s.forEach(function(c){var u=c.waypoints[c.waypoints.length-1],l=n(i,u),p=[].concat(c.waypoints.slice(0,-1),[l]);t.updateWaypoints(c,p)}),a.forEach(function(c){var u=c.waypoints[0],l=n(i,u),p=[].concat([l],c.waypoints.slice(1));t.updateWaypoints(c,p)})}),this.postExecute(["connection.move"],function(i){var r=i.context,o=r.connection,a=o.outgoing,s=o.incoming,c=r.delta;s.forEach(function(u){var l=u.waypoints[u.waypoints.length-1],p={x:l.x+c.x,y:l.y+c.y},f=[].concat(u.waypoints.slice(0,-1),[p]);t.updateWaypoints(u,f)}),a.forEach(function(u){var l=u.waypoints[0],p={x:l.x+c.x,y:l.y+c.y},f=[].concat([p],u.waypoints.slice(1));t.updateWaypoints(u,f)})})}oe(Fl,K),Fl.$inject=["eventBus","modeling"];function qs(e,t,n){var i=Xs(e),r=eg(i,t),o=i[0];return r.length?r[r.length-1]:pa(o.original||o,n,t)}function Ks(e,t,n){var i=Xs(e),r=eg(i,t),o=i[i.length-1];return r.length?r[0]:pa(o.original||o,n,t)}function Hl(e,t,n){var i=Xs(e),r=Jm(t,n),o=i[0];return pa(o.original||o,r,t)}function zl(e,t,n){var i=Xs(e),r=Jm(t,n),o=i[i.length-1];return pa(o.original||o,r,t)}function Jm(e,t){return{x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}function Xs(e){var t=e.waypoints;if(!t.length)throw new Error("connection#"+e.id+": no waypoints");return t}function eg(e,t){var n=rn(e,eC);return Le(n,function(i){return JR(i,t)})}function JR(e,t){return Zt(t,e,1)==="intersect"}function eC(e){return e.original||e}function Vl(e,t){K.call(this,e),this.postExecute("shape.replace",function(n){var i=n.oldShape,r=n.newShape;if(tC(i,r)){var o=nC(i);o.incoming.forEach(function(a){var s=Ks(a,r,i);t.reconnectEnd(a,r,s)}),o.outgoing.forEach(function(a){var s=qs(a,r,i);t.reconnectStart(a,r,s)})}},!0)}Vl.$inject=["eventBus","modeling"],oe(Vl,K);function tC(e,t){return v(e,"bpmn:Participant")&&je(e)&&v(t,"bpmn:Participant")&&!je(t)}function nC(e){var t=Xo([e]),n=[],i=[];return t.forEach(function(r){r!==e&&(r.incoming.forEach(function(o){v(o,"bpmn:MessageFlow")&&n.push(o)}),r.outgoing.forEach(function(o){v(o,"bpmn:MessageFlow")&&i.push(o)}))},[]),{incoming:n,outgoing:i}}const iC=["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:EscalationEventDefinition","bpmn:ConditionalEventDefinition","bpmn:SignalEventDefinition"];function tg(e){const t=X(e);if(!v(t,"bpmn:BoundaryEvent")&&!(v(t,"bpmn:StartEvent")&&cn(t.$parent)))return!1;const n=t.get("eventDefinitions");return!n||!n.length?!1:iC.some(i=>v(n[0],i))}function ng(e){return v(e,"bpmn:BoundaryEvent")?"cancelActivity":"isInterrupting"}function Gl(e,t){e.invoke(K,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=ng(r);if(o.targetElement&&o.targetElement[a]!==void 0)return;const c=X(i).get(a),u=X(r).get(a);c!==u&&t.updateProperties(r,{[a]:c})})}Gl.$inject=["injector","modeling"],oe(Gl,K);function Wl(e,t){K.call(this,e),this.preExecute("shape.resize",function(n){var i=n.shape,r=We(i),o=r&&r.get("label"),a=o&&o.get("bounds");a&&t.updateModdleProperties(i,o,{bounds:void 0})},!0)}oe(Wl,K),Wl.$inject=["eventBus","modeling"];function Ul(e,t,n){K.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(!(!v(o,"bpmn:SequenceFlow")||!v(a,"bpmn:SequenceFlow"))&&t.canConnect(o.source,a.target,o)){var s=rC(o.waypoints,a.waypoints);n.reconnectEnd(o,a.target,s)}}})}oe(Ul,K),Ul.$inject=["eventBus","bpmnRules","modeling"];function vo(e){return e.original||e}function rC(e,t){var n=Nl(vo(e[e.length-2]),vo(e[e.length-1]),vo(t[1]),vo(t[0]));return n?[].concat(e.slice(0,e.length-1),[n],t.slice(1)):[vo(e[0]),vo(t[t.length-1])]}function Yl(e,t){K.call(this,e),this.preExecute("shape.delete",function(n){var i=n.shape,r=i.parent;v(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)}Yl.$inject=["eventBus","modeling"],oe(Yl,K);function ql(e,t,n,i){K.call(this,e);var r=i.get("dragging",!1);function o(c){var u=c.source,l=c.target,p=c.parent;if(p){var f,d;v(c,"bpmn:SequenceFlow")&&(n.canConnectSequenceFlow(u,l)||(d=!0),n.canConnectMessageFlow(u,l)&&(f="bpmn:MessageFlow")),v(c,"bpmn:MessageFlow")&&(n.canConnectMessageFlow(u,l)||(d=!0),n.canConnectSequenceFlow(u,l)&&(f="bpmn:SequenceFlow")),d&&t.removeConnection(c),f&&t.connect(u,l,{type:f,waypoints:c.waypoints.slice()})}}function a(c){var u=c.context,l=u.connection,p=u.newSource||l.source,f=u.newTarget||l.target,d,h;d=n.canConnect(p,f),!(!d||d.type===l.type)&&(h=t.connect(p,f,{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(),p=l&&l.payload.previousSelection,f;!p||!p.length||(f=p.indexOf(c),f!==-1&&p.splice(f,1,u))}this.postExecuted("elements.move",function(c){var u=c.closure,l=u.allConnections;k(l,o)},!0),this.preExecute("connection.reconnect",a),this.postExecuted("element.updateProperties",function(c){var u=c.context,l=u.properties,p=u.element,f=p.businessObject,d;l.default&&(d=ct(p.outgoing,eo({id:p.businessObject.default.id})),d&&t.updateProperties(d,{conditionExpression:void 0})),l.conditionExpression&&f.sourceRef.default===f&&t.updateProperties(p.source,{default:void 0})})}oe(ql,K),ql.$inject=["eventBus","modeling","bpmnRules","injector"];function Zs(e,t,n,i,r,o){i.invoke(K,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=Rn(u,function(p,f){var d=t.canReplace([f],f.host||f.parent||c);return d?p.concat(d.replacements):p},[]);l.length&&this._replaceElements(u,l)},this),this.postExecuted(["elements.move"],500,function(a){var s=a.context,c=s.newParent,u=s.newHost,l=[];k(s.closure.topLevel,function(f){cn(f)?l=l.concat(f.children):l=l.concat(f)}),l.length===1&&u&&(c=u);var p=t.canReplace(l,c);p&&this._replaceElements(l,p.replacements,u)},this),this.postExecute(["shape.replace"],1500,function(a){var s=a.context,c=s.oldShape,u=s.newShape,l=c.attachers,p;l&&l.length&&(p=t.canReplace(l,u),this._replaceElements(l,p.replacements))},this),this.postExecuted(["shape.replace"],1500,function(a){var s=a.context,c=s.oldShape,u=s.newShape;r.unclaimId(c.businessObject.id,c.businessObject),r.updateProperties(u,{id:c.id})})}oe(Zs,K),Zs.prototype._replaceElements=function(e,t){var n=this._elementRegistry,i=this._bpmnReplace,r=this._selection;k(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)},Zs.$inject=["bpmnReplace","bpmnRules","elementRegistry","injector","modeling","selection"];var oC=1500,aC={width:140,height:120},Kl={width:300,height:60},Xl={width:60,height:300},Qs={width:300,height:150},Js={width:150,height:300},ig={width:140,height:120},rg={width:100,height:40};function og(e){e.on("resize.start",oC,function(t){var n=t.context,i=n.shape,r=n.direction,o=n.balanced;(v(i,"bpmn:Lane")||v(i,"bpmn:Participant"))&&(n.resizeConstraints=pC(i,r,o)),v(i,"bpmn:SubProcess")&&je(i)&&(n.minDimensions=ig),v(i,"bpmn:TextAnnotation")&&(n.minDimensions=rg)})}og.$inject=["eventBus"];var sr=Math.abs,sC=Math.min,cC=Math.max;function ag(e,t,n,i){var r=e[t];e[t]=r===void 0?n:i(n,r)}function _o(e,t,n){return ag(e,t,n,sC)}function bo(e,t,n){return ag(e,t,n,cC)}var uC={top:20,left:50,right:20,bottom:20},lC={top:50,left:20,right:20,bottom:20};function pC(e,t,n){var i=Yn(e),r=!0,o=!0,a=Vs(i,[i]),s=ge(e),c={},u={},l=Wt(e),p=l?Kl:Xl;/n/.test(t)?u.top=s.bottom-p.height:/e/.test(t)?u.right=s.left+p.width:/s/.test(t)?u.bottom=s.top+p.height:/w/.test(t)&&(u.left=s.right-p.width),a.forEach(function(h){var m=ge(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&&bo(c,"top",m.top+p.height),sr(s.top-m.top)<5&&_o(u,"top",m.bottom-p.height)),/e/.test(t)&&(n&&sr(s.right-m.left)<10&&_o(c,"right",m.right-p.width),sr(s.right-m.right)<5&&bo(u,"right",m.left+p.width)),/s/.test(t)&&(n&&sr(s.bottom-m.top)<10&&_o(c,"bottom",m.bottom-p.height),sr(s.bottom-m.bottom)<5&&bo(u,"bottom",m.top+p.height)),/w/.test(t)&&(n&&sr(s.left-m.right)<10&&bo(c,"left",m.left+p.width),sr(s.left-m.left)<5&&_o(u,"left",m.right-p.width))});var f=i.children.filter(function(h){return!h.hidden&&!h.waypoints&&(v(h,"bpmn:FlowElement")||v(h,"bpmn:Artifact"))}),d=l?uC:lC;return f.forEach(function(h){var m=ge(h);/n/.test(t)&&(!l||r)&&_o(u,"top",m.top-d.top),/e/.test(t)&&(l||o)&&bo(u,"right",m.right+d.right),/s/.test(t)&&(!l||o)&&bo(u,"bottom",m.bottom+d.bottom),/w/.test(t)&&(l||r)&&_o(u,"left",m.left-d.left)}),{min:u,max:c}}function sg(e){!e||typeof e.stopPropagation!="function"||e.stopPropagation()}function xo(e){return e.originalEvent||e.srcEvent}function Zl(e){sg(e),sg(xo(e))}function $r(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 cg(){return/mac/i.test(navigator.platform)}function ug(e,t){return(xo(e)||e).button===t}function cr(e){return ug(e,0)}function fC(e){return ug(e,1)}function fa(e){var t=xo(e)||e;return cr(e)?cg()?t.metaKey:t.ctrlKey:!1}function ec(e){var t=xo(e)||e;return cr(e)&&t.shiftKey}var lg=1001;function pg(e,t){e.on("resize.start",lg+500,function(n){var i=n.context,r=i.shape;(v(r,"bpmn:Lane")||v(r,"bpmn:Participant"))&&(i.balanced=!fa(n))}),e.on("resize.end",lg,function(n){var i=n.context,r=i.shape,o=i.canExecute,a=i.newBounds;if(v(r,"bpmn:Lane")||v(r,"bpmn:Participant"))return o&&(a=Fh(a),t.resizeLane(r,a,i.balanced)),!1})}pg.$inject=["eventBus","modeling"];var dC=500;function Ql(e,t,n,i,r){n.invoke(K,this);function o(l){return De(l,["bpmn:ReceiveTask","bpmn:SendTask"])||hC(l,["bpmn:ErrorEventDefinition","bpmn:EscalationEventDefinition","bpmn:MessageEventDefinition","bpmn:SignalEventDefinition"])}function a(l){var p=e.getDefinitions(),f=p.get("rootElements");return!!ct(f,eo({id:l.id}))}function s(l){if(v(l,"bpmn:ErrorEventDefinition"))return"errorRef";if(v(l,"bpmn:EscalationEventDefinition"))return"escalationRef";if(v(l,"bpmn:MessageEventDefinition"))return"messageRef";if(v(l,"bpmn:SignalEventDefinition"))return"signalRef"}function c(l){if(De(l,["bpmn:ReceiveTask","bpmn:SendTask"]))return l.get("messageRef");var p=l.get("eventDefinitions"),f=p[0];return f.get(s(f))}function u(l,p){if(De(l,["bpmn:ReceiveTask","bpmn:SendTask"]))return l.set("messageRef",p);var f=l.get("eventDefinitions"),d=f[0];return d.set(s(d),p)}this.executed(["shape.create","element.updateProperties","element.updateModdleProperties"],function(l){var p=l.shape||l.element;if(o(p)){var f=X(p),d=c(f),h;d&&!a(d)&&(h=e.getDefinitions().get("rootElements"),Et(h,d),l.addedRootElement=d)}},!0),this.reverted(["shape.create","element.updateProperties","element.updateModdleProperties"],function(l){var p=l.addedRootElement;if(p){var f=e.getDefinitions().get("rootElements");xt(f,p)}},!0),t.on("copyPaste.copyElement",function(l){var p=l.descriptor,f=l.element;if(!(f.labelTarget||!o(f))){var d=X(f),h=c(d);h&&(p.referencedRootElement=h)}}),t.on("copyPaste.pasteElement",dC,function(l){var p=l.descriptor,f=p.businessObject,d=p.referencedRootElement;d&&(a(d)||(d=i.copyElement(d,r.create(d.$type))),u(f,d),delete p.referencedRootElement)})}Ql.$inject=["bpmnjs","eventBus","injector","moddleCopy","bpmnFactory"],oe(Ql,K);function hC(e,t){return _e(t)||(t=[t]),Wi(t,function(n){return po(e,n)})}var fg=Math.max;function dg(e){e.on("spaceTool.getMinDimensions",function(t){var n=t.shapes,i=t.axis,r=t.start,o={};return k(n,function(a){var s=a.id;v(a,"bpmn:Participant")&&(o[s]=gC(a,i,r)),v(a,"bpmn:Lane")&&(o[s]=Wt(a)?Kl:Xl),v(a,"bpmn:SubProcess")&&je(a)&&(o[s]=ig),v(a,"bpmn:TextAnnotation")&&(o[s]=rg),v(a,"bpmn:Group")&&(o[s]=aC)}),o})}dg.$inject=["eventBus"];function mC(e){return e==="x"}function gC(e,t,n){var i=Wt(e);if(!_C(e))return i?Qs:Js;var r=mC(t),o={};return r?i?o=Qs:o={width:vC(e,n,r),height:Js.height}:i?o={width:Qs.width,height:yC(e,n,r)}:o=Js,o}function yC(e,t,n){var i;return i=bC(e,t,n),fg(Qs.height,i)}function vC(e,t,n){var i;return i=xC(e,t,n),fg(Js.width,i)}function _C(e){return!!ar(e).length}function bC(e,t,n){var i=ar(e),r;return r=Jl(i,t,n),e.height-r.height+Kl.height}function xC(e,t,n){var i=ar(e),r;return r=Jl(i,t,n),e.width-r.width+Xl.width}function Jl(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?Jl(o,t,n):r}var hg="_plane";function mg(e){var t=e.id;return wC(t)}function gi(e){var t=e.id;return v(e,"bpmn:SubProcess")?gg(t):t}function jr(e){return gg(e)}function tc(e){var t=We(e);return v(t,"bpmndi:BPMNPlane")}function gg(e){return e+hg}function wC(e){return e.replace(new RegExp(hg+"$"),"")}var yg=400,EC=600,vg={x:180,y:160};function Li(e,t,n,i,r,o,a){K.call(this,t),this._canvas=e,this._eventBus=t,this._modeling=n,this._elementFactory=i,this._bpmnFactory=r,this._bpmnjs=o,this._elementRegistry=a;var s=this;function c(p){return v(p,"bpmn:SubProcess")&&!je(p)}function u(p){var f=p.shape,d=p.newRootElement,h=X(f);d=s._addDiagram(d||h),p.newRootElement=e.addRootElement(d)}function l(p){var f=p.shape,d=X(f);s._removeDiagram(d);var h=p.newRootElement=a.get(gi(d));e.removeRootElement(h)}this.executed("shape.create",function(p){var f=p.shape;c(f)&&u(p)},!0),this.postExecuted("elements.create",function(p){var f=p.elements;k(f,function(d){if(c(d)){var h=a.get(gi(d));if(!(!h||!d.children||!d.children.length)){var m=_g(d);s._showRecursively(m),s._moveChildrenToShape(m,h)}}})},!0),this.reverted("shape.create",function(p){var f=p.shape;c(f)&&l(p)},!0),this.preExecute("shape.delete",function(p){var f=p.shape;!v(f,"bpmn:SubProcess")||!je(f)||k(na([f]),d=>{n.removeShape(d.annotation)})},!0),this.preExecuted("shape.delete",function(p){var f=p.shape;if(c(f)){var d=a.get(gi(f));d&&n.removeElements(d.children.slice())}},!0),this.executed("shape.delete",function(p){var f=p.shape;c(f)&&l(p)},!0),this.reverted("shape.delete",function(p){var f=p.shape;c(f)&&u(p)},!0),this.preExecuted("shape.replace",function(p){var f=p.oldShape,d=p.newShape;!c(f)||!c(d)||(p.oldRoot=e.removeRootElement(gi(f)))},!0),this.postExecuted("shape.replace",function(p){var f=p.newShape,d=p.oldRoot,h=e.findRoot(gi(f));if(!(!d||!h)){var m=d.children;n.moveElements(m,{x:0,y:0},h)}},!0),this.executed("element.updateProperties",function(p){var f=p.element;if(v(f,"bpmn:SubProcess")){var d=p.properties,h=p.oldProperties,m=h.id,g=d.id;if(m!==g){if(tc(f)){a.updateId(f,jr(g)),a.updateId(m,g);return}var R=a.get(jr(m));R&&a.updateId(jr(m),jr(g))}}},!0),this.reverted("element.updateProperties",function(p){var f=p.element;if(v(f,"bpmn:SubProcess")){var d=p.properties,h=p.oldProperties,m=h.id,g=d.id;if(m!==g){if(tc(f)){a.updateId(f,jr(m)),a.updateId(g,m);return}var R=a.get(jr(g));R&&a.updateId(R,jr(m))}}},!0),t.on("element.changed",function(p){var f=p.element;if(tc(f)){var d=f,h=a.get(mg(d));!h||h===d||t.fire("element.changed",{element:h})}}),this.executed("shape.toggleCollapse",yg,function(p){var f=p.shape;v(f,"bpmn:SubProcess")&&(je(f)?l(p):(u(p),s._showRecursively(f.children)))},!0),this.reverted("shape.toggleCollapse",yg,function(p){var f=p.shape;v(f,"bpmn:SubProcess")&&(je(f)?l(p):(u(p),s._showRecursively(f.children)))},!0),this.postExecuted("shape.toggleCollapse",EC,function(p){var f=p.shape;if(v(f,"bpmn:SubProcess")){var d=p.newRootElement;if(d)if(je(f))s._moveChildrenToShape(d.children.slice(),f),k(na(f.children),m=>{n.moveShape(m.annotation,{x:0,y:0},f.parent),k(m.associations,g=>{n.moveConnection(g,{x:0,y:0},f.parent)})});else{s._disconnectSharedAnnotations(f);var h=_g(f);s._moveChildrenToShape(h,d)}}},!0),t.on("copyPaste.createTree",function(p){var f=p.element,d=p.children;if(c(f)){var h=gi(f),m=a.get(h);m&&d.push.apply(d,m.children)}}),t.on("copyPaste.copyElement",function(p){var f=p.descriptor,d=p.element,h=p.elements,m=d.parent,g=v(We(m),"bpmndi:BPMNPlane");if(g){var R=mg(m),w=ct(h,function(b){return b.id===R});w&&(f.parent=w.id)}}),t.on("copyPaste.pasteElement",function(p){var f=p.descriptor;f.parent&&(c(f.parent)||f.parent.hidden)&&(f.hidden=!0)})}oe(Li,K),Li.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=Ct(i),o;if(!t.x)o={x:vg.x-r.x,y:vg.y-r.y};else{var a=be(t),s=be(r);o={x:a.x-s.x,y:a.y-s.y}}n.moveElements(e,o,t,{autoResize:!1})}},Li.prototype._disconnectSharedAnnotations=function(e){var t=this._modeling,n=new Set(um(e).map(i=>i.annotation));n.size&&k(na(e.children),i=>{n.has(i.annotation)&&k(i.associations,r=>{t.removeConnection(r)})})},Li.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},Li.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},Li.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:gi(e),type:e.$type,di:i,businessObject:e,collapsed:!0});return o},Li.prototype._removeDiagram=function(e){var t=this._bpmnjs,n=t.getDefinitions().diagrams,i=ct(n,function(r){return r.plane.bpmnElement.id===e.id});return n.splice(n.indexOf(i),1),i},Li.$inject=["canvas","eventBus","modeling","elementFactory","bpmnFactory","bpmnjs","elementRegistry"];function SC(e){var t=[];return k(na(e),n=>{t.push(n.annotation),t.push.apply(t,n.associations)}),t}function _g(e){return e.children.slice().concat(SC(e.children)).concat(RC(e))}function RC(e){return rl(e.children||[]).reduce(function(t,n){return n.label&&n.label.parent!==e&&t.push(n.label),t},[])}function ep(e,t){e.invoke(K,this),this.postExecuted("shape.replace",function(n){var i=n.context.oldShape,r=n.context.newShape;if(!(!v(r,"bpmn:SubProcess")||v(r,"bpmn:AdHocSubProcess")||!(v(i,"bpmn:Task")||v(i,"bpmn:CallActivity"))||!je(r))){var o=CC(r);t.createShape({type:"bpmn:StartEvent"},o,r)}})}ep.$inject=["injector","modeling"],oe(ep,K);function CC(e){return{x:e.x+e.width/6,y:e.y+e.height/2}}function tp(e,t){K.call(this,e),this.preExecute("connection.create",function(n){const{target:i}=n;v(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&&v(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(!(!v(r,"bpmn:TextAnnotation")||o.autoResize)){var a=i.newBounds,s=t.getTextAnnotationBounds(a,Hn(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}}})}oe(tp,K),tp.$inject=["eventBus","textRenderer"];function np(e,t){K.call(this,e),this.postExecuted("shape.toggleCollapse",1500,function(n){var i=n.shape;if(je(i))return;var r=Xo(i);r.forEach(function(a){var s=a.incoming.slice(),c=a.outgoing.slice();k(s,function(u){o(u,!0)}),k(c,function(u){o(u,!1)})});function o(a,s){r.indexOf(a.source)!==-1&&r.indexOf(a.target)!==-1||v(a,"bpmn:Association")&&(v(a.source,"bpmn:TextAnnotation")||v(a.target,"bpmn:TextAnnotation"))||(s?t.reconnectEnd(a,i,be(i)):t.reconnectStart(a,i,be(i)))}},!0)}oe(np,K),np.$inject=["eventBus","modeling"];var ip=500;function rp(e,t,n){K.call(this,e);function i(a){a.length&&a.forEach(function(s){s.type==="label"&&!s.businessObject.name&&(s.hidden=!0)})}function r(a,s){var c=a.children,u=s,l,p;return l=PC(c).concat([a]),p=Pm(l),p?(u.width=Math.max(p.width,u.width),u.height=Math.max(p.height,u.height),u.x=p.x+(p.width-u.width)/2,u.y=p.y+(p.height-u.height)/2):(u.x=a.x+(a.width-u.width)/2,u.y=a.y+(a.height-u.height)/2),u}function o(a,s){return{x:a.x+(a.width-s.width)/2,y:a.y+(a.height-s.height)/2,width:s.width,height:s.height}}this.executed(["shape.toggleCollapse"],ip,function(a){var s=a.context,c=s.shape;v(c,"bpmn:SubProcess")&&(c.collapsed?We(c).isExpanded=!1:(i(c.children),We(c).isExpanded=!0))}),this.reverted(["shape.toggleCollapse"],ip,function(a){var s=a.context,c=s.shape;c.collapsed?We(c).isExpanded=!1:We(c).isExpanded=!0}),this.postExecuted(["shape.toggleCollapse"],ip,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"})})}oe(rp,K),rp.$inject=["eventBus","elementFactory","modeling"];function PC(e){return e.filter(function(t){return!t.hidden})}function op(e,t,n,i){t.invoke(K,this),this.preExecute("shape.delete",function(r){var o=r.context,a=o.shape,s=a.businessObject;ke(a)||(v(a,"bpmn:Participant")&&je(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;v(r,"bpmn:Collaboration")&&n.ids.unclaim(o.id)})}oe(op,K),op.$inject=["canvas","injector","moddle","modeling"];function ap(e,t){K.call(this,e),this.preExecute("connection.delete",function(n){var i=n.context,r=i.connection,o=r.source;AC(r,o)&&t.updateProperties(o,{default:null})})}oe(ap,K),ap.$inject=["eventBus","modeling"];function AC(e,t){if(!v(e,"bpmn:SequenceFlow"))return!1;var n=X(t),i=X(e);return n.get("default")===i}var TC=500,MC=5e3,bg=["shape.create","shape.delete","shape.move","shape.resize"],xg=[...bg,"spaceTool","lane.add","lane.resize","lane.split","elements.create","elements.delete","elements.move"];function sp(e,t){K.call(this,e);var n;function i(){return n=n||new kC,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(xg,MC,function(){i()}),this.postExecuted(xg,TC,function(){o()}),this.preExecute(bg,function(a){var s=a.context,c=s.shape,u=r();!c||c.labelTarget||(v(c,"bpmn:Lane")&&u.addLane(c),v(c,"bpmn:FlowNode")&&u.addFlowNode(c))})}sp.$inject=["eventBus","modeling"],oe(sp,K);function kC(){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 OC=500,DC=5e3,wg=["connection.create","connection.delete","connection.layout","connection.move","connection.reconnect","connection.updateWaypoints","shape.create","shape.delete","shape.move","shape.resize"],Eg=[...wg,"elements.create","elements.delete","elements.move","label.create","spaceTool"];function cp(e,t){K.call(this,e);var n;function i(){return n=n||new LC,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(Eg,DC,function(){i()}),this.postExecuted(Eg,OC,function(){o()}),this.preExecute(wg,function(a){var s=a.context.connection||a.context.shape,c=r();!s||s.labelTarget||(v(s,"bpmn:FlowElement")&&c.addFlowElement(s),v(s,"bpmn:Group")&&c.addGroup(s))}),this.preExecute("label.create",function(a){var s=a.context.labelTarget;v(s,"bpmn:Group")&&r().addGroup(s)})}cp.$inject=["eventBus","modeling"],oe(cp,K);function LC(){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 up(e,t){K.call(this,e),this.postExecuted("elements.create",function(n){const i=n.context,r=i.elements;for(const o of r)IC(o)&&!BC(o)&&t.updateProperties(o,{isForCompensation:void 0})})}oe(up,K),up.$inject=["eventBus","modeling"];function IC(e){const t=X(e);return t&&t.isForCompensation}function NC(e){return e&&v(e,"bpmn:BoundaryEvent")&&po(e,"bpmn:CompensateEventDefinition")}function BC(e){return e.incoming.filter(n=>NC(n.source)).length>0}const $C={__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",yl],appendBehavior:["type",vl],associationBehavior:["type",bl],attachEventBehavior:["type",Ns],artifactBehavior:["type",_l],boundaryEventBehavior:["type",xl],categoryRootElementReferenceBehavior:["type",wl],compensateBoundaryEventBehaviour:["type",El],createBehavior:["type",Sl],createDataObjectBehavior:["type",Rl],createParticipantBehavior:["type",Al],dataInputAssociationBehavior:["type",Tl],dataStoreBehavior:["type",Ml],deleteLaneBehavior:["type",kl],detachEventBehavior:["type",Gs],dropOnFlowBehavior:["type",Dl],eventBasedGatewayBehavior:["type",Ll],fixHoverBehavior:["type",Lm],groupBehavior:["type",Il],importDockingFix:["type",Nm],isHorizontalFix:["type",Bl],labelBehavior:["type",jl],layoutConnectionBehavior:["type",Fl],messageFlowBehavior:["type",Vl],nonInterruptingBehavior:["type",Gl],removeElementBehavior:["type",Ul],removeEmbeddedLabelBoundsBehavior:["type",Wl],removeParticipantBehavior:["type",Yl],replaceConnectionBehavior:["type",ql],replaceElementBehaviour:["type",Zs],resizeBehavior:["type",og],resizeLaneBehavior:["type",pg],rootElementReferenceBehavior:["type",Ql],spaceToolBehavior:["type",dg],subProcessPlaneBehavior:["type",Li],subProcessStartEventBehavior:["type",ep],textAnnotationBehavior:["type",tp],toggleCollapseConnectionBehaviour:["type",np],toggleElementCollapseBehaviour:["type",rp],unclaimIdBehavior:["type",op],unsetDefaultFlowBehavior:["type",ap],updateFlowNodeRefsBehavior:["type",sp],updateCategoryValueRefsBehavior:["type",cp],setCompensationActivityAfterPasteBehavior:["type",up]};function lp(e){this._commandStack=e.get("commandStack",!1)}lp.$inject=["injector"],lp.prototype.allowed=function(e,t){var n=!0,i=this._commandStack;return i&&(n=i.canExecute(e,t)),n===void 0?!0:n};const yi={__init__:["rules"],rules:["type",lp]};function qn(e){K.call(this,e),this.init()}qn.$inject=["eventBus"],oe(qn,K),qn.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)})},qn.prototype.init=function(){};function Sg(e,t){var n=Zt(e,t,-15);return n!=="intersect"?n:null}function Jt(e){qn.call(this,e)}oe(Jt,qn),Jt.$inject=["eventBus"],Jt.prototype.init=function(){this.addRule("connection.start",function(e){var t=e.source;return jC(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 ic(t,n)}finally{r&&(n.parent=null)}}),this.addRule("connection.reconnect",function(e){var t=e.connection,n=e.source,i=e.target;return ic(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 Bg(t,n,i)}),this.addRule("elements.create",function(e){var t=e.elements,n=e.position,i=e.target;return rt(i)&&!rc(t,i)?!1:Cr(t,function(r){return rt(r)?ic(r.source,r.target,r):r.host?da(r,r.host,null,n):hp(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 kg(a)&&!n.includes(a.host)})?!1:da(n,t,null,i)||Ig(n,t,i)||Ng(n,t)||rc(n,t)}),this.addRule("shape.create",function(e){return hp(e.shape,e.target,e.source,e.position)}),this.addRule("shape.attach",function(e){return da(e.shape,e.target,null,e.position)}),this.addRule("element.copy",function(e){var t=e.element,n=e.elements;return zg(n,t)})},Jt.prototype.canConnectMessageFlow=Fg,Jt.prototype.canConnectSequenceFlow=Hg,Jt.prototype.canConnectDataAssociation=mp,Jt.prototype.canConnectAssociation=$g,Jt.prototype.canConnectCompensationAssociation=jg,Jt.prototype.canMove=Ng,Jt.prototype.canAttach=da,Jt.prototype.canReplace=Ig,Jt.prototype.canDrop=wo,Jt.prototype.canInsert=rc,Jt.prototype.canCreate=hp,Jt.prototype.canConnect=ic,Jt.prototype.canResize=Bg,Jt.prototype.canCopy=zg;function jC(e){return pp(e)?null:De(e,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference","bpmn:Group","bpmn:TextAnnotation"])}function pp(e){return!e||ke(e)}function Rg(e){do{if(v(e,"bpmn:Process"))return X(e);if(v(e,"bpmn:Participant"))return X(e).processRef||X(e)}while(e=e.parent)}function fp(e){return v(e,"bpmn:TextAnnotation")}function dp(e){return v(e,"bpmn:Group")&&!e.labelTarget}function Cg(e){return v(e,"bpmn:BoundaryEvent")&&vi(e,"bpmn:CompensateEventDefinition")}function nc(e){return X(e).isForCompensation}function FC(e,t){var n=Rg(e),i=Rg(t);return n===i}function HC(e){return v(e,"bpmn:InteractionNode")&&!v(e,"bpmn:BoundaryEvent")&&(!v(e,"bpmn:Event")||v(e,"bpmn:ThrowEvent")&&Tg(e,"bpmn:MessageEventDefinition"))}function zC(e){return v(e,"bpmn:InteractionNode")&&!nc(e)&&(!v(e,"bpmn:Event")||v(e,"bpmn:CatchEvent")&&Tg(e,"bpmn:MessageEventDefinition"))&&!(v(e,"bpmn:BoundaryEvent")&&!vi(e,"bpmn:MessageEventDefinition"))}function Pg(e){for(var t=e;t=t.parent;){if(v(t,"bpmn:FlowElementsContainer"))return X(t);if(v(t,"bpmn:Participant"))return X(t).processRef}return null}function Ag(e,t){var n=Pg(e),i=Pg(t);return n===i}function vi(e,t){var n=X(e);return!!ct(n.eventDefinitions||[],function(i){return v(i,t)})}function Tg(e,t){var n=X(e);return(n.eventDefinitions||[]).every(function(i){return v(i,t)})}function VC(e){return v(e,"bpmn:FlowNode")&&!v(e,"bpmn:EndEvent")&&!cn(e)&&!(v(e,"bpmn:IntermediateThrowEvent")&&vi(e,"bpmn:LinkEventDefinition"))&&!Cg(e)&&!nc(e)}function GC(e){return v(e,"bpmn:FlowNode")&&!v(e,"bpmn:StartEvent")&&!v(e,"bpmn:BoundaryEvent")&&!cn(e)&&!(v(e,"bpmn:IntermediateCatchEvent")&&vi(e,"bpmn:LinkEventDefinition"))&&!nc(e)}function WC(e){return v(e,"bpmn:ReceiveTask")||v(e,"bpmn:IntermediateCatchEvent")&&(vi(e,"bpmn:MessageEventDefinition")||vi(e,"bpmn:TimerEventDefinition")||vi(e,"bpmn:ConditionalEventDefinition")||vi(e,"bpmn:SignalEventDefinition"))}function UC(e){for(var t=[];e;)e=e.parent,e&&t.push(e);return t}function Mg(e,t){var n=UC(t);return n.indexOf(e)!==-1}function ic(e,t,n){if(pp(e)||pp(t))return null;if(!v(n,"bpmn:DataAssociation")){if(Fg(e,t))return{type:"bpmn:MessageFlow"};if(Hg(e,t))return{type:"bpmn:SequenceFlow"}}var i=mp(e,t);return i||(jg(e,t)?{type:"bpmn:Association",associationDirection:"One"}:$g(e,t)?{type:"bpmn:Association",associationDirection:"None"}:!1)}function wo(e,t){return ke(e)||dp(e)?!0:v(t,"bpmn:Participant")&&!je(t)?!1:v(e,"bpmn:Participant")?v(t,"bpmn:Process")||v(t,"bpmn:Collaboration"):De(e,["bpmn:DataInput","bpmn:DataOutput"])&&e.parent?t===e.parent:v(e,"bpmn:Lane")?v(t,"bpmn:Participant")||v(t,"bpmn:Lane"):v(e,"bpmn:BoundaryEvent")&&!YC(e)?!1:v(e,"bpmn:FlowElement")&&!v(e,"bpmn:DataStoreReference")?v(t,"bpmn:FlowElementsContainer")?je(t):De(t,["bpmn:Participant","bpmn:Lane"]):v(e,"bpmn:DataStoreReference")&&v(t,"bpmn:Collaboration")?Wi(X(t).get("participants"),function(n){return!!n.get("processRef")}):De(e,["bpmn:Artifact","bpmn:DataAssociation","bpmn:DataStoreReference"])?De(t,["bpmn:Collaboration","bpmn:Lane","bpmn:Participant","bpmn:Process","bpmn:SubProcess"]):v(e,"bpmn:MessageFlow")?v(t,"bpmn:Collaboration")||e.source.parent==t||e.target.parent==t:!1}function YC(e){return X(e).cancelActivity&&(Og(e)||Dg(e))}function kg(e){return!ke(e)&&v(e,"bpmn:BoundaryEvent")}function qC(e){return v(e,"bpmn:Lane")}function KC(e){return kg(e)||v(e,"bpmn:IntermediateThrowEvent")&&Og(e)?!0:v(e,"bpmn:IntermediateCatchEvent")&&Dg(e)}function Og(e){var t=X(e);return t&&!(t.eventDefinitions&&t.eventDefinitions.length)}function Dg(e){return Lg(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])}function Lg(e,t){return t.some(function(n){return vi(e,n)})}function XC(e){return v(e,"bpmn:ReceiveTask")&&ct(e.incoming,function(t){return v(t.source,"bpmn:EventBasedGateway")})}function da(e,t,n,i){if(Array.isArray(e)||(e=[e]),e.length!==1)return!1;var r=e[0];return ke(r)||!KC(r)||cn(t)||!v(t,"bpmn:Activity")||nc(t)||i&&!Sg(i,t)||XC(t)?!1:"attach"}function Ig(e,t,n){if(!t)return!1;var i={replacements:[]};return k(e,function(r){cn(t)||v(r,"bpmn:StartEvent")&&r.type!=="label"&&wo(r,t)&&(oS(r)||i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"}),(aS(r)||sS(r)||cS(r))&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"}),Lg(r,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])&&v(t,"bpmn:SubProcess")&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"})),v(t,"bpmn:Transaction")||vi(r,"bpmn:CancelEventDefinition")&&r.type!=="label"&&(v(r,"bpmn:EndEvent")&&wo(r,t)&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:EndEvent"}),v(r,"bpmn:BoundaryEvent")&&da(r,t,null,n)&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:BoundaryEvent"}))}),i.replacements.length?i:!1}function Ng(e,t){return Wi(e,qC)?!1:t===void 0?!0:t===null?!1:e.every(function(n){return wo(n,t)})}function hp(e,t,n,i){return t?ke(e)||dp(e)?!0:wo(e,t)||rc(e,t):!1}function Bg(e,t,n){return v(e,"bpmn:SubProcess")?je(e)&&(!t||t.width>=100&&t.height>=80):v(e,"bpmn:Lane")||v(e,"bpmn:Participant")?!0:fp(e)?n?n==="e"||n==="w":!0:dp(e)?!0:ke(e)?n?n==="e"||n==="w":!0:!1}function ZC(e,t){var n=fp(e),i=fp(t);return(n||i)&&n!==i}function $g(e,t){return Mg(t,e)||Mg(e,t)?!1:ZC(e,t)?!0:!!mp(e,t)}function jg(e,t){return Ag(e,t)&&Cg(e)&&v(t,"bpmn:Activity")&&!JC(t,e)&&!cn(t)}function Fg(e,t){return Gg(e)&&!Gg(t)?!1:HC(e)&&zC(t)&&!FC(e,t)}function Hg(e,t){return VC(e)&&GC(t)&&Ag(e,t)&&!(v(e,"bpmn:EventBasedGateway")&&!WC(t))}function mp(e,t){return De(e,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&De(t,["bpmn:Activity","bpmn:ThrowEvent"])?{type:"bpmn:DataInputAssociation"}:De(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&De(e,["bpmn:Activity","bpmn:CatchEvent"])?{type:"bpmn:DataOutputAssociation"}:!1}function rc(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:De(t,["bpmn:SequenceFlow","bpmn:MessageFlow"])&&!ke(t)&&v(e,"bpmn:FlowNode")&&!v(e,"bpmn:BoundaryEvent")&&wo(e,t.parent)}function gp(e,t){return e&&t&&e.indexOf(t)!==-1}function zg(e,t){return ke(t)?!0:!(v(t,"bpmn:Lane")&&!gp(e,t.parent)||v(t,"bpmn:MessageFlow")&&!QC(e,t))}function QC(e,t){var n=Vg(t.source),i=Vg(t.target);return gp(e,n)&&gp(e,i)}function Vg(e){for(;e;e=e.parent)if(v(e,"bpmn:Participant"))return e;return null}function Gg(e){return mo(e,"bpmn:Process")||mo(e,"bpmn:Collaboration")}function JC(e,t){return e.attachers.includes(t)}const eP={__depends__:[yi],__init__:["bpmnRules"],bpmnRules:["type",Jt]};var tP=2e3;function Wg(e,t){e.on("saveXML.start",tP,n);function n(){var i=t.getRootElements();k(i,function(r){var o=We(r),a,s;a=Xo([r]),a=Le(a,function(c){return c!==r&&!c.labelTarget}),s=rn(a,We),o.set("planeElement",s)})}}Wg.$inject=["eventBus","canvas"];const nP={__init__:["bpmnDiOrdering"],bpmnDiOrdering:["type",Wg]};function oc(e){K.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)})}oc.prototype.getOrdering=function(e,t){return null},oe(oc,K);function yp(e,t){oc.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=ct(n,function(c){return De(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&&!De(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||v(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=Yf(s.children,function(p){return!a.labelTarget&&p.labelTarget?!1:c.level<r(p).level});return l!==-1&&u!==-1&&u<l&&(l-=1),{index:l,parent:s}}}yp.$inject=["eventBus","canvas"],oe(yp,oc);const iP={__init__:["bpmnOrderingProvider"],bpmnOrderingProvider:["type",yp]};function ha(){}ha.prototype.get=function(){return this._data},ha.prototype.set=function(e){this._data=e},ha.prototype.clear=function(){var e=this._data;return delete this._data,e},ha.prototype.isEmpty=function(){return!this._data};const rP={clipboard:["type",ha]};var Ug=1500;function Yg(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",Ug,function(s){o(s)})}),(function(){var a,s;t.on("element.hover",function(c){a=c.gfx,s=c.element}),t.on("element.hover",Ug,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=$r(a),c=document.elementFromPoint(s.x,s.y),oP(c)}}Yg.$inject=["elementRegistry","eventBus","injector"];function oP(e){return Or(e,"svg, .djs-element",!0)}const aP={__init__:["hoverFix"],hoverFix:["type",Yg]};function sP(e){return!0}function ac(e){return cr(e)||fC(e)}var qg=500;function Kg(e,t,n){var i=this;function r(A,H,V){if(!s(A,H)){var N,G,pe;V?G=t.getGraphics(V):(N=H.delegateTarget||H.target,N&&(G=N,V=t.get(G))),!(!G||!V)&&(pe=e.fire(A,{element:V,gfx:G,originalEvent:H}),pe===!1&&(H.stopPropagation(),H.preventDefault()))}}var o={};function a(A){return o[A]}function s(A,H){var V=u[A]||cr;return!V(H)}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":sP,"element.mousedown":ac,"element.mouseup":ac,"element.click":ac,"element.dblclick":ac};function l(A,H,V){var N=c[A];if(!N)throw new Error("unmapped DOM event name <"+A+">");return r(N,H,V)}var p="svg, .djs-element";function f(A,H,V,N){var G=o[V]=function(pe){r(V,pe)};N&&(u[V]=N),G.$delegate=Pn.bind(A,p,H,G)}function d(A,H,V){var N=a(V);N&&Pn.unbind(A,H,N.$delegate)}function h(A){k(c,function(H,V){f(A,V,H)})}function m(A){k(c,function(H,V){d(A,V,H)})}e.on("canvas.destroy",function(A){m(A.svg)}),e.on("canvas.init",function(A){h(A.svg)}),e.on(["shape.added","connection.added"],function(A){var H=A.element,V=A.gfx;e.fire("interactionEvents.createHit",{element:H,gfx:V})}),e.on(["shape.changed","connection.changed"],qg,function(A){var H=A.element,V=A.gfx;e.fire("interactionEvents.updateHit",{element:H,gfx:V})}),e.on("interactionEvents.createHit",qg,function(A){var H=A.element,V=A.gfx;i.createDefaultHit(H,V)}),e.on("interactionEvents.updateHit",function(A){var H=A.element,V=A.gfx;i.updateDefaultHit(H,V)});var g=S("djs-hit djs-hit-stroke"),R=S("djs-hit djs-hit-click-stroke"),w=S("djs-hit djs-hit-all"),b=S("djs-hit djs-hit-no-move"),x={all:w,"click-stroke":R,stroke:g,"no-move":b};function S(A,H){return H=D({stroke:"white",strokeWidth:15},H||{}),n.cls(A,["no-fill","no-border"],H)}function M(A,H){var V=x[H];if(!V)throw new Error("invalid hit type <"+H+">");return ae(A,V),A}function L(A,H){Re(A,H)}this.removeHits=function(A){var H=ys(".djs-hit",A);k(H,Ft)},this.createDefaultHit=function(A,H){var V=A.waypoints,N=A.isFrame,G;return V?this.createWaypointsHit(H,V):(G=N?"stroke":"all",this.createBoxHit(H,G,{width:A.width,height:A.height}))},this.createWaypointsHit=function(A,H){var V=Ko(H);return M(V,"stroke"),L(A,V),V},this.createBoxHit=function(A,H,V){V=D({x:0,y:0},V);var N=he("rect");return M(N,H),ae(N,V),L(A,N),N},this.updateDefaultHit=function(A,H){var V=nt(".djs-hit",H);if(V)return A.waypoints?il(V,A.waypoints):ae(V,{width:A.width,height:A.height}),V},this.fire=r,this.triggerMouseEvent=l,this.mouseHandler=a,this.registerEvent=f,this.unregisterEvent=d}Kg.$inject=["eventBus","elementRegistry","styles"];const sc={__init__:["interactionEvents"],interactionEvents:["type",Kg]};function Eo(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)})}Eo.$inject=["eventBus","canvas"],Eo.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()})}},Eo.prototype.get=function(){return Array.from(this._selectedElements)},Eo.prototype.isSelected=function(e){return this._selectedElements.has(e)},Eo.prototype.select=function(e,t){var n=this.get();_e(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?k(e,o=>{this._selectedElements.add(o)}):this._selectedElements=new Set(e),this._eventBus.fire("selection.changed",{oldSelection:n,newSelection:this.get()})};var Xg="hover",Zg="selected";function Qg(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,Xg)}),t.on("element.out",function(r){i(r.element,Xg)}),t.on("selection.changed",function(r){function o(u){i(u,Zg)}function a(u){n(u,Zg)}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)})}Qg.$inject=["canvas","eventBus"];function Jg(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;_e(u)?t.select(u):t.select(s.filter(cP))}}),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=ct(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=ec(r);if(a&&s)return c?t.deselect(o):t.select(o);a?t.deselect(o):t.select(o,c)}})}Jg.$inject=["eventBus","selection","canvas","elementRegistry"];function cP(e){return!e.hidden}const Kn={__init__:["selectionVisuals","selectionBehavior"],__depends__:[sc],selection:["type",Eo],selectionVisuals:["type",Qg],selectionBehavior:["type",Jg]};var uP=/^djs-cursor-.*$/;function cc(e){var t=mt(document.body);t.removeMatching(uP),e&&t.add("djs-cursor-"+e)}function ey(){cc(null)}var lP=5e3;function ty(e,t){t=t||"element.click";function n(){return!1}return e.once(t,lP,n),function(){e.off(t,n)}}var pP=["c","C"],fP=["v","V"],dP=["d","D"],hP=["x","X"],mP=["y","Y"],ny=["z","Z"];function gP(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Mn(e){return e.altKey?!1:e.ctrlKey||e.metaKey}function Ht(e,t){return e=_e(e)?e:[e],e.indexOf(t.key)!==-1||e.indexOf(t.code)!==-1}function vp(e){return e.shiftKey}function yP(e){return Mn(e)&&Ht(pP,e)}function vP(e){return Mn(e)&&Ht(fP,e)}function _P(e){return Mn(e)&&Ht(dP,e)}function bP(e){return Mn(e)&&Ht(hP,e)}function xP(e){return Mn(e)&&!vp(e)&&Ht(ny,e)}function wP(e){return Mn(e)&&(Ht(mP,e)||Ht(ny,e)&&vp(e))}var So=Math.round,iy="djs-drag-active";function Fr(e){e.preventDefault()}function EP(e){return typeof TouchEvent<"u"&&e instanceof TouchEvent}function SP(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function ry(e,t,n,i){var r={threshold:5,trapClick:!0},o;function a(b){var x=t.viewbox(),S=t._container.getBoundingClientRect();return{x:x.x+(b.x-S.left)/x.scale,y:x.y+(b.y-S.top)/x.scale}}function s(b,x){x=x||o;var S=e.createEvent(D({},x.payload,x.data,{isTouch:x.isTouch}));return e.fire("drag."+b,S)===!1?!1:e.fire(x.prefix+"."+b,S)}function c(b){var x=b.filter(function(S){return i.get(S.id)});x.length&&n.select(x)}function u(b,x){var S=o.payload,M=o.displacement,L=o.globalStart,A=$r(b),H=ri(A,L),V=o.localStart,N=a(A),G=ri(N,V);if(!o.active&&(x||SP(H)>o.threshold)){if(D(S,{x:So(V.x+M.x),y:So(V.y+M.y),dx:0,dy:0},{originalEvent:b}),s("start")===!1)return g();o.active=!0,o.keepSelection||(S.previousSelection=n.get(),n.select(null)),o.cursor&&cc(o.cursor),t.addMarker(t.getRootElement(),iy)}Zl(b),o.active&&(D(S,{x:So(N.x+M.x),y:So(N.y+M.y),dx:So(G.x),dy:So(G.y)},{originalEvent:b}),s("move"))}function l(b){var x,S=!0;o.active&&(b&&(o.payload.originalEvent=b,Zl(b)),S=s("end")),S===!1&&s("rejected"),x=R(S!==!0),s("ended",x)}function p(b){Ht("Escape",b)&&(Fr(b),g())}function f(b){var x;o.active&&(x=ty(e),setTimeout(x,400),Fr(b)),l(b)}function d(b){u(b)}function h(b){var x=o.payload;x.hoverGfx=b.gfx,x.hover=b.element,s("hover")}function m(b){s("out");var x=o.payload;x.hoverGfx=null,x.hover=null}function g(b){var x;if(o){var S=o.active;S&&s("cancel"),x=R(b),S&&s("canceled",x)}}function R(b){var x,S;s("cleanup"),ey(),o.trapClick?S=f:S=l,Se.unbind(document,"mousemove",u),Se.unbind(document,"dragstart",Fr),Se.unbind(document,"selectstart",Fr),Se.unbind(document,"mousedown",S,!0),Se.unbind(document,"mouseup",S,!0),Se.unbind(document,"keyup",p),Se.unbind(document,"touchstart",d,!0),Se.unbind(document,"touchcancel",g,!0),Se.unbind(document,"touchmove",u,!0),Se.unbind(document,"touchend",l,!0),e.off("element.hover",h),e.off("element.out",m),t.removeMarker(t.getRootElement(),iy);var M=o.payload.previousSelection;return b!==!1&&M&&!n.get().length&&c(M),x=o,o=null,x}function w(b,x,S,M){o&&g(!1),typeof x=="string"&&(M=S,S=x,x=null),M=D({},r,M||{});var L=M.data||{},A,H,V,N,G;if(M.trapClick?N=f:N=l,b?(A=xo(b)||b,H=$r(b),Zl(b),A.type==="dragstart"&&Fr(A)):(A=null,H={x:0,y:0}),V=a(H),x||(x=V),G=EP(A),o=D({prefix:S,data:L,payload:{},globalStart:H,displacement:ri(x,V),localStart:V,isTouch:G},M),M.manual||(G?(Se.bind(document,"touchstart",d,!0),Se.bind(document,"touchcancel",g,!0),Se.bind(document,"touchmove",u,!0),Se.bind(document,"touchend",l,!0)):(Se.bind(document,"mousemove",u),Se.bind(document,"dragstart",Fr),Se.bind(document,"selectstart",Fr),Se.bind(document,"mousedown",N,!0),Se.bind(document,"mouseup",N,!0)),Se.bind(document,"keyup",p),e.on("element.hover",h),e.on("element.out",m)),s("init")===!1)return g(),!1;M.autoActivate&&u(b,!0)}e.on("diagram.destroy",g),this.init=w,this.move=u,this.hover=h,this.out=m,this.end=l,this.cancel=g,this.context=function(){return o},this.setOptions=function(b){D(r,b)}}ry.$inject=["eventBus","canvas","selection","elementRegistry"];const Ii={__depends__:[aP,Kn],dragging:["type",ry]};function Ro(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(Math.random()*1e9)+"-"}Ro.prototype.next=function(){return this._prefix+ ++this._counter};const RP=new Ro("ps");var CP=["marker-start","marker-mid","marker-end"],PP=["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(Ir(r),i),ae(r,this._styles.cls(i,[])),Re(t,r),ae(r,"data-preview-support-element-id",e.id),r},ur.prototype.addFrame=function(e,t){var n=he("rect",{class:"djs-resize-overlay",width:e.width,height:e.height,x:e.x,y:e.y});return Re(t,n),ae(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)}),kP(e)&&CP.forEach(function(r){if(ae(e,r)){var o=AP(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,RP.next()].join("-"),a=nt("marker#"+n.id,e);e=e||this._canvas._svg;var s=a||yh(n);s.id=o,He(s).add(r);var c=nt(":scope > defs",e);c||(c=he("defs"),Re(e,c)),Re(c,s);var u=MP(s.id);ae(t,i,u)};function AP(e,t,n){var i=TP(ae(e,t));return nt("marker#"+i,n||document)}function TP(e){return e.match(/url\(['"]?#([^'"]*)['"]?\)/)[1]}function MP(e){return"url(#"+e+")"}function kP(e){return PP.indexOf(e.nodeName)!==-1}const Co={__init__:["previewSupport"],previewSupport:["type",ur]};var OP="drop-ok",oy="drop-not-ok",ay="attach-ok",sy="new-parent",cy="create",DP=2e3;function uy(e,t,n,i,r){function o(c,u,l,p,f){if(!u)return!1;c=Le(c,function(w){var b=w.labelTarget;return!w.parent&&!(ke(w)&&c.indexOf(b)!==-1)});var d=ct(c,function(w){return!rt(w)}),h=!1,m=!1,g=!1;py(c)&&(h=r.allowed("shape.attach",{position:l,shape:d,target:u})),h||(py(c)?g=r.allowed("shape.create",{position:l,shape:d,source:p,target:u}):g=r.allowed("elements.create",{elements:c,position:l,target:u}));var R=f.connectionTarget;return g||h?(d&&p&&(m=r.allowed("connection.create",{source:R===p?d:p,target:R===p?p:d,hints:{targetParent:u,targetAttach:h}})),{attach:h,connect:m}):g===null||h===null?null:!1}function a(c,u){[ay,OP,oy,sy].forEach(function(l){l===u?e.addMarker(c,l):e.removeMarker(c,l)})}n.on(["create.move","create.hover"],function(c){var u=c.context,l=u.elements,p=c.hover,f=u.source,d=u.hints||{};if(!p){u.canExecute=!1,u.target=null;return}ly(c);var h={x:c.x,y:c.y},m=u.canExecute=p&&o(l,p,h,f,d);p&&m!==null&&(u.target=p,m&&m.attach?a(p,ay):a(p,m?sy:oy))}),n.on(["create.end","create.out","create.cleanup"],function(c){var u=c.hover;u&&a(u,null)}),n.on("create.end",function(c){var u=c.context,l=u.source,p=u.shape,f=u.elements,d=u.target,h=u.canExecute,m=h&&h.attach,g=h&&h.connect,R=u.hints||{};if(h===!1||!d)return!1;ly(c);var w={x:c.x,y:c.y};g?p=i.appendShape(l,p,w,d,{attach:m,connection:g===!0?{}:g,connectionTarget:R.connectionTarget}):(f=i.createElements(f,w,d,D({},R,{attach:m})),p=ct(f,function(b){return!rt(b)})),D(u,{elements:f,shape:p}),D(c,{elements:f,shape:p})});function s(){var c=t.context();c&&c.prefix===cy&&t.cancel()}n.on("create.init",function(){n.on("elements.changed",s),n.once(["create.cancel","create.end"],DP,function(){n.off("elements.changed",s)})}),this.start=function(c,u,l){_e(u)||(u=[u]);var p=ct(u,function(h){return!rt(h)});if(p){l=D({elements:u,hints:{},shape:p},l||{}),k(u,function(h){we(h.x)||(h.x=0),we(h.y)||(h.y=0)});var f=Le(u,function(h){return!h.hidden}),d=Ct(f);k(u,function(h){rt(h)&&(h.waypoints=rn(h.waypoints,function(m){return{x:m.x-d.x-d.width/2,y:m.y-d.y-d.height/2}})),D(h,{x:h.x-d.x-d.width/2,y:h.y-d.y-d.height/2})}),t.init(c,cy,{cursor:"grabbing",autoActivate:!0,data:{shape:p,elements:u,context:l}})}}}uy.$inject=["canvas","dragging","eventBus","modeling","rules"];function ly(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 py(e){return e&&e.length===1&&!rt(e[0])}var LP=750;function fy(e,t,n,i,r){function o(a){var s=he("g");ae(s,r.cls("djs-drag-group",["no-events"]));var c=he("g");return a.forEach(function(u){var l;u.hidden||(u.waypoints?(l=n._createContainer("connection",c),n.drawConnection(Ir(l),u)):(l=n._createContainer("shape",c),n.drawShape(Ir(l),u),Qt(l,u.x,u.y)),i.addDragger(u,s,l))}),s}t.on("create.move",LP,function(a){var s=a.hover,c=a.context,u=c.elements,l=c.dragGroup;l||(l=c.dragGroup=o(u));var p;s?(l.parentNode||(p=e.getActiveLayer(),Re(p,l)),Qt(l,a.x,a.y)):Ft(l)}),t.on("create.cleanup",function(a){var s=a.context,c=s.dragGroup;c&&Ft(c)})}fy.$inject=["canvas","eventBus","graphicsFactory","previewSupport","styles"];const uc={__depends__:[Ii,Co,yi,Kn],__init__:["create","createPreview"],create:["type",uy],createPreview:["type",fy]};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||IP(0,0)};function IP(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 ma={__init__:["mouse"],mouse:["type",_p]};var dy=2e3;function kn(e,t,n,i,r,o,a,s){this._canvas=e,this._create=t,this._elementFactory=i,this._eventBus=r,this._modeling=o,this._mouse=a,this._rules=s,r.on("copyPaste.copyElement",function(c){var u=c.descriptor,l=c.element,p=c.elementsSet;u.priority=1,u.id=l.id,p.has(l.parent)&&(u.parent=l.parent.id),NP(l)&&(u.priority=2,u.host=l.host.id),rt(l)&&(u.priority=3,u.source=l.source.id,u.target=l.target.id,u.waypoints=BP(l)),ke(l)&&(u.priority=4,u.labelTarget=l.labelTarget.id),k(["x","y","width","height"],function(f){we(l[f])&&(u[f]=l[f])}),u.hidden=l.hidden,u.collapsed=l.collapsed}),r.on("copyPaste.elementsCopied",dy,function(c){var u;((u=c.hints)==null?void 0:u.clip)!==!1&&n.set(c.tree)}),r.on("copyPaste.pasteElements",dy,function(c){c.tree||(c.tree=n.get())}),r.on("copyPaste.pasteElements",function(c){var u=c.hints;D(u,{createElementsBehavior:!1})})}kn.$inject=["canvas","create","clipboard","elementFactory","eventBus","modeling","mouse","rules"],kn.prototype.copy=function(e,t={}){var n,i;return _e(e)||(e=e?[e]:[]),n=this._eventBus.fire("copyPaste.canCopyElements",{elements:e}),n===!1?i={}:i=this.createTree(_e(n)?n:e),this._eventBus.fire("copyPaste.elementsCopied",{elements:e,tree:i,hints:t}),i},kn.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})}}},kn.prototype.duplicate=function(e,t={}){var n=this.copy(e,{clip:!1});return this.paste({...t,tree:n})},kn.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},kn.prototype._getElementIdsFromTree=function(e){var t={};return k(e,function(n){k(n,function(i){i.id&&(t[i.id]=!0)})}),t},kn.prototype._paste=function(e,t,n,i){k(e,function(o){we(o.x)||(o.x=0),we(o.y)||(o.y=0)});var r=Ct(e);return k(e,function(o){rt(o)&&(o.waypoints=rn(o.waypoints,function(a){return{x:a.x-r.x-r.width/2,y:a.y-r.y-r.height/2}})),D(o,{x:o.x-r.x-r.width/2,y:o.y-r.y-r.height/2})}),this._modeling.createElements(e,n,t,D({},i))},kn.prototype._createElements=function(e){var t=this,n=this._eventBus,i={},r=[];return k(e,function(o,a){o=ai(o,"priority"),k(o,function(s){var c=D({},si(s,["priority"]));i[s.parent]?c.parent=i[s.parent]:delete c.parent,n.fire("copyPaste.pasteElement",{cache:i,descriptor:c});var u;if(rt(c)){c.source=i[s.source],c.target=i[s.target],u=i[s.id]=t.createConnection(c),r.push(u);return}if(ke(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},kn.prototype.createConnection=function(e){var t=this._elementFactory.createConnection(si(e,["id"]));return t},kn.prototype.createLabel=function(e){var t=this._elementFactory.createLabel(si(e,["id"]));return t},kn.prototype.createShape=function(e){var t=this._elementFactory.createShape(si(e,["id"]));return t},kn.prototype.hasRelations=function(e,t,n){return n||(n=new Set(t)),!(rt(e)&&(!n.has(e.source)||!n.has(e.target))||ke(e)&&!n.has(e.labelTarget))},kn.prototype.createTree=function(e){var t=this._rules,n=this,i={},r=[],o=new Map,a=xs(e);function s(p,f){return t.allowed("element.copy",{element:p,elements:f})}function c(p,f){var d=o.get(p);if(!d){var h={element:p,depth:f};r.push(h),o.set(p,h);return}if(d.depth<f){r=u(d,r);var m={element:d.element,depth:f};r.push(m),o.set(p,m)}}function u(p,f){var d=f.indexOf(p);return d!==-1&&f.splice(d,1),f}Lr(a,function(p,f,d){if(ke(p))return;k(p.labels,function(g){c(g,d)});function h(g){g&&g.length&&k(g,function(R){k(R.labels,function(w){c(w,d)}),c(R,d)})}k([p.attachers,p.incoming,p.outgoing],h),c(p,d);var m=[];return p.children&&(m=p.children.slice()),n._eventBus.fire("copyPaste.createTree",{element:p,children:m}),m}),e=rn(r,function(p){return p.element});var l=new Set(e);return r=rn(r,function(p){return p.descriptor={},n._eventBus.fire("copyPaste.copyElement",{descriptor:p.descriptor,element:p.element,elements:e,elementsSet:l}),p}),r=ai(r,function(p){return p.descriptor.priority}),e=rn(r,function(p){return p.element}),k(r,function(p){var f=p.depth;if(!n.hasRelations(p.element,e,l)){my(p.element,e),l.delete(p.element);return}if(!s(p.element,e)){my(p.element,e),l.delete(p.element);return}i[f]||(i[f]=[]),i[f].push(p.descriptor)}),i};function NP(e){return!!e.host}function BP(e){return rn(e.waypoints,function(t){return t=hy(t),t.original&&(t.original=hy(t.original)),t})}function hy(e){return D({},e)}function my(e,t){var n=t.indexOf(e);return n===-1?t:t.splice(n,1)}const $P={__depends__:[rP,uc,ma,yi],__init__:["copyPaste"],copyPaste:["type",kn]};function bp(e,t,n){_e(n)||(n=[n]),k(n,function(i){Rr(e[i])||(t[i]=e[i])})}var xp=750;function gy(e,t,n){function i(c,u){var l=e.create(c.$type);return n.copyElement(c,l,null,u)}t.on("copyPaste.copyElement",xp,function(c){var u=c.descriptor,l=c.element,p=X(l);if(ke(l))return u;var f=u.businessObject=i(p,!0),d=u.di=i(We(l),!0);d.bpmnElement=f,bp(f,u,"name"),bp(d,u,"isExpanded"),p.default&&(u.default=p.default.id)});var r="-bpmn-js-refs";function o(c){return c[r]=c[r]||{}}function a(c,u){c[r]=u}function s(c,u,l){var p=X(c);return c.default&&(l[c.default]={element:p,property:"default"}),c.host&&(X(c).attachedToRef=X(u[c.host])),si(l,Rn(l,function(f,d,h){var m=d.element,g=d.property;return h===c.id&&(m.set(g,p),f.push(c.id)),f},[]))}t.on("copyPaste.pasteElement",function(c){var u=c.cache,l=c.descriptor,p=l.businessObject,f=l.di;if(ke(l)){l.businessObject=X(u[l.labelTarget]),l.di=We(u[l.labelTarget]);return}p=l.businessObject=i(p),f=l.di=i(f),f.bpmnElement=p,bp(l,p,["isExpanded","name"]),l.type=p.$type}),t.on("copyPaste.copyElement",xp,function(c){var u=c.descriptor,l=c.element;if(v(l,"bpmn:Participant")){var p=X(l);p.processRef&&(u.processRef=i(p.processRef,!0))}}),t.on("copyPaste.pasteElement",function(c){var u=c.descriptor,l=u.processRef;l&&(u.processRef=i(l))}),t.on("copyPaste.createTree",function(c){var u=c.element,l=c.children;v(u,"bpmn:SubProcess")&&k(na(l),p=>{l.push(p.annotation)})}),t.on("copyPaste.pasteElement",xp,function(c){var u=c.cache,l=c.descriptor;a(u,s(l,u,o(u)))})}gy.$inject=["bpmnFactory","eventBus","moddleCopy"];const jP=["artifacts","dataInputAssociations","dataOutputAssociations","default","flowElements","lanes","incoming","outgoing","categoryValue"],FP=["errorRef","escalationRef","messageRef","signalRef","dataObjectRef"];function ga(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 ai(r,o=>o==="extensionElements")}),e.on("moddleCopy.canCopyProperty",i=>{const{parent:r,property:o,propertyName:a}=i,s=Vt(r)&&r.$descriptor;if(a&&FP.includes(a))return o;if(a&&jP.includes(a)||a&&s&&!ct(s.properties,eo({name:a})))return!1}),e.on("moddleCopy.canSetCopiedProperty",i=>{const{property:r}=i;if(v(r,"bpmn:ExtensionElements")&&(!r.values||!r.values.length))return!1})}ga.$inject=["eventBus","bpmnFactory","moddle"],ga.prototype.copyElement=function(e,t,n,i=!1){n&&!_e(n)&&(n=[n]),n=n||wp(e.$descriptor);const r=this._eventBus.fire("moddleCopy.canCopyProperties",{propertyNames:n,sourceElement:e,targetElement:t,clone:i});return r===!1||(_e(r)&&(n=r),k(n,o=>{let a;Sn(e,o)&&(a=e.get(o));const s=this.copyProperty(a,t,o,i);!Bt(s)||this._eventBus.fire("moddleCopy.canSetCopiedProperty",{parent:t,property:s,propertyName:o})===!1||t.set(o,s)})),t},ga.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 Vt(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):_e(e)?Rn(e,(a,s)=>{const c=this.copyProperty(s,t,n,i);return c?a.concat(c):a},[]):Vt(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},ga.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 wp(e,t){return Rn(e.properties,(n,i)=>t&&i.default?n:n.concat(i.name),[])}const yy={__depends__:[$P],__init__:["bpmnCopyPaste","moddleCopy"],bpmnCopyPaste:["type",gy],moddleCopy:["type",ga]};var vy=Math.round;function Ep(e,t){this._modeling=e,this._eventBus=t}Ep.$inject=["modeling","eventBus"],Ep.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=vy(s+o/2),l=vy(c+a/2),p=i.replaceShape(e,D({},t,{x:u,y:l,width:o,height:a}),n);return r.fire("replace.end",{element:e,newElement:p,hints:n}),p};function _y(e,t){t.on("replace.end",500,function(n){const{newElement:i,hints:r={}}=n;r.select!==!1&&e.select(i)})}_y.$inject=["selection","eventBus"];const HP={__init__:["replace","replaceSelectionBehavior"],replaceSelectionBehavior:["type",_y],replace:["type",Ep]};function zP(e,t,n){_e(n)||(n=[n]),k(n,function(i){Rr(e[i])||(t[i]=e[i])})}var VP=["cancelActivity","instantiate","eventGatewayType","triggeredByEvent","isInterrupting"];function GP(e,t){var n=e&&Sn(e,"collapsed")?e.collapsed:!je(e),i;return t&&(Sn(t,"collapsed")||Sn(t,"isExpanded"))?i=Sn(t,"collapsed")?t.collapsed:!t.isExpanded:i=n,n!==i}function by(e,t,n,i,r,o){function a(s,c,u){u=u||{};var l=c.type,p=s.businessObject;if(lc(p)&&(l==="bpmn:SubProcess"||l==="bpmn:AdHocSubProcess")&&GP(s,c))return i.toggleCollapse(s),s;var f=e.create(l),d={type:l,businessObject:f};d.di={},l==="bpmn:ExclusiveGateway"&&(d.di.isMarkerVisible=!0),zP(s.di,d.di,["fill","stroke","background-color","border-color","color"]);var h=wp(p.$descriptor),m=wp(f.$descriptor,!0),g=WP(h,m);D(f,ii(c,VP));var R=Le(g,function(x){return x==="eventDefinitions"?xy(s,c.eventDefinitionType):x==="loopCharacteristics"?!cn(f):Sn(f,x)||x==="processRef"&&c.isExpanded===!1||x==="triggeredByEvent"?!1:x==="isForCompensation"?!cn(f):!0});if(f=n.copyElement(p,f,R),c.eventDefinitionType&&(xy(f,c.eventDefinitionType)||(d.eventDefinitionType=c.eventDefinitionType,d.eventDefinitionAttrs=c.eventDefinitionAttrs)),v(p,"bpmn:Activity")){if(lc(p))d.isExpanded=je(s);else if(c&&Sn(c,"isExpanded")){d.isExpanded=c.isExpanded;var w=t.getDefaultSize(f,{isExpanded:d.isExpanded});d.width=w.width,d.height=w.height,d.x=s.x-(d.width-s.width)/2,d.y=s.y-(d.height-s.height)/2}je(s)&&!v(p,"bpmn:Task")&&d.isExpanded&&(d.width=s.width,d.height=s.height)}if(lc(p)&&!lc(f)&&(u.moveChildren=!1),v(p,"bpmn:Participant")){c.isExpanded===!0?f.processRef=e.create("bpmn:Process"):u.moveChildren=!1;var b=Wt(s);We(s).isHorizontal||(We(d).isHorizontal=b),d.width=b?s.width:t.getDefaultSize(d).width,d.height=b?t.getDefaultSize(d).height:s.height}return o.allowed("shape.resize",{shape:f})||(d.height=t.getDefaultSize(d).height,d.width=t.getDefaultSize(d).width),f.name=p.name,De(p,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&De(f,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&(f.default=p.default),c.host&&!v(p,"bpmn:BoundaryEvent")&&v(f,"bpmn:BoundaryEvent")&&(d.host=c.host),(d.type==="bpmn:DataStoreReference"||d.type==="bpmn:DataObjectReference")&&(d.x=s.x+(s.width-d.width)/2),r.replaceElement(s,d,{...u,targetElement:c})}this.replaceElement=a}by.$inject=["bpmnFactory","elementFactory","moddleCopy","modeling","replace","rules"];function lc(e){return v(e,"bpmn:SubProcess")}function xy(e,t){var n=X(e);return t&&n.get("eventDefinitions").some(function(i){return v(i,t)})}function WP(e,t){return e.filter(function(n){return t.includes(n)})}const wy={__depends__:[yy,HP,Kn],bpmnReplace:["type",by]};var UP=250;function Hr(e){this._eventBus=e,this._tools=[],this._active=null}Hr.$inject=["eventBus"],Hr.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)},Hr.prototype.isActive=function(e){return e&&this._active===e},Hr.prototype.length=function(e){return this._tools.length},Hr.prototype.setActive=function(e){var t=this._eventBus;this._active!==e&&(this._active=e,t.fire("tool-manager.update",{tool:e}))},Hr.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),k(t,function(r){i.push(r+".ended"),i.push(r+".canceled")}),n.on(i,UP,function(r){this._active&&(YP(r)||this.setActive(null))},this)};function YP(e){var t=e.originalEvent&&e.originalEvent.target;return t&&Or(t,'.group[data-group="tools"]')}const pc={__depends__:[Ii],__init__:["toolManager"],toolManager:["type",Hr]};function qP(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 KP(e,t){var n=[],i=new Set(e);k(t,function(o){i.add(o)});var r=new Set;return i.forEach(function(o){var a=o.incoming,s=o.outgoing;k(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 XP(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 Sp=Math.abs,ZP=Math.round,Ni={x:"width",y:"height"},Ey="crosshair",lr={n:"top",w:"left",s:"bottom",e:"right"},QP=1500,fc={n:"s",w:"e",s:"n",e:"w"},dc=20;function Xn(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",QP,function(c){var u=c.context,l=u.initialized;l||(l=u.initialized=s.init(c,u)),l&&Ry(c)}),n.on("spaceTool.end",function(c){var u=c.context,l=u.axis,p=u.direction,f=u.movingShapes,d=u.resizingShapes,h=u.start;if(u.initialized){Ry(c);var m={x:0,y:0};m[l]=ZP(c["d"+l]),s.makeSpace(f,d,m,p,h),n.once("spaceTool.ended",function(g){s.activateSelection(g.originalEvent,!0,!0)})}})}Xn.$inject=["canvas","dragging","eventBus","modeling","rules","toolManager","mouse"],Xn.prototype.activateSelection=function(e,t,n){this._dragging.init(e,"spaceTool.selection",{autoActivate:t,cursor:Ey,data:{context:{reactivate:n}},trapClick:!1})},Xn.prototype.activateMakeSpace=function(e){this._dragging.init(e,"spaceTool",{autoActivate:!0,cursor:Ey,data:{context:{}}})},Xn.prototype.makeSpace=function(e,t,n,i,r){return this._modeling.createSpace(e,t,n,i,r)},Xn.prototype.init=function(e,t){var n=Sp(e.dx)>Sp(e.dy)?"x":"y",i=e["d"+n],r=e[n]-i;if(Sp(i)<5)return!1;i<0&&(i*=-1),fa(e)&&(i*=-1);var o=qP(n,i),a=this._canvas.getRootElement();!ec(e)&&e.hover&&(a=e.hover);var s=[...Xo(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=JP(c,n,o,r,u);return D(t,c,{axis:n,direction:o,spaceToolConstraints:l,start:r}),cc("resize-"+(n==="x"?"ew":"ns")),!0},Xn.prototype.calculateAdjustments=function(e,t,n,i){var r=this._rules,o=[],a=[],s=new Set,c=new Set,u=[],l=[];function p(d){s.has(d)||(s.add(d),o.push(d));var h=d.label;h&&!s.has(h)&&(s.add(h),o.push(h))}function f(d){c.has(d)||(c.add(d),a.push(d))}return k(e,function(d){if(!(!d.parent||ke(d))){if(rt(d)){l.push(d);return}var h=d[t],m=h+d[Ni[t]];if(eA(d)&&(n>0&&be(d)[t]>i||n<0&&be(d)[t]<i)){u.push(d);return}if(n>0&&h>i||n<0&&m<i){p(d);return}if(h<i&&m>i&&r.allowed("shape.resize",{shape:d})){f(d);return}}}),k(o,function(d){var h=d.attachers;h&&k(h,function(m){p(m)})}),k(u,function(d){var h=d.host;(s.has(h)||c.has(h))&&p(d)}),k(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&&p(g)}),{movingShapes:o,resizingShapes:a}},Xn.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},Xn.prototype.isActive=function(){var e=this._dragging.context();return e?/^spaceTool/.test(e.prefix):!1};function Sy(e){return{top:e.top-dc,right:e.right+dc,bottom:e.bottom+dc,left:e.left-dc}}function Ry(e){var t=e.context,n=t.spaceToolConstraints;if(n){var i,r;we(n.left)&&(i=Math.max(e.x,n.left),e.dx=e.dx+i-e.x,e.x=i),we(n.right)&&(i=Math.min(e.x,n.right),e.dx=e.dx+i-e.x,e.x=i),we(n.top)&&(r=Math.max(e.y,n.top),e.dy=e.dy+r-e.y,e.y=r),we(n.bottom)&&(r=Math.min(e.y,n.bottom),e.dy=e.dy+r-e.y,e.y=r)}}function JP(e,t,n,i,r){var o=e.movingShapes,a=e.resizingShapes;if(a.length){var s={},c,u,l=new Set(o),p=new Set(a);return k(a,function(f){var d=f.attachers,h=f.children,m=ge(f),g=Le(h,function(G){return!rt(G)&&!ke(G)&&!l.has(G)&&!p.has(G)}),R=Le(h,function(G){return!rt(G)&&!ke(G)&&l.has(G)}),w,b,x,S=[],M=[],L,A,H,V;g.length&&(b=Sy(ge(Ct(g))),w=i-m[lr[n]]+b[lr[n]],n==="n"?s.bottom=u=we(u)?Math.min(u,w):w:n==="w"?s.right=u=we(u)?Math.min(u,w):w:n==="s"?s.top=c=we(c)?Math.max(c,w):w:n==="e"&&(s.left=c=we(c)?Math.max(c,w):w)),R.length&&(x=Sy(ge(Ct(R))),w=i-x[lr[fc[n]]]+m[lr[fc[n]]],n==="n"?s.bottom=u=we(u)?Math.min(u,w):w:n==="w"?s.right=u=we(u)?Math.min(u,w):w:n==="s"?s.top=c=we(c)?Math.max(c,w):w:n==="e"&&(s.left=c=we(c)?Math.max(c,w):w)),d&&d.length&&(d.forEach(function(G){l.has(G)?S.push(G):M.push(G)}),S.length&&(L=ge(Ct(S.map(be))),A=m[lr[fc[n]]]-(L[lr[fc[n]]]-i)),M.length&&(H=ge(Ct(M.map(be))),V=H[lr[n]]-(m[lr[n]]-i)),n==="n"?(w=Math.min(A||1/0,V||1/0),s.bottom=u=we(u)?Math.min(u,w):w):n==="w"?(w=Math.min(A||1/0,V||1/0),s.right=u=we(u)?Math.min(u,w):w):n==="s"?(w=Math.max(A||-1/0,V||-1/0),s.top=c=we(c)?Math.max(c,w):w):n==="e"&&(w=Math.max(A||-1/0,V||-1/0),s.left=c=we(c)?Math.max(c,w):w));var N=r&&r[f.id];N&&(n==="n"?(w=i+f[Ni[t]]-N[Ni[t]],s.bottom=u=we(u)?Math.min(u,w):w):n==="w"?(w=i+f[Ni[t]]-N[Ni[t]],s.right=u=we(u)?Math.min(u,w):w):n==="s"?(w=i-f[Ni[t]]+N[Ni[t]],s.top=c=we(c)?Math.max(c,w):w):n==="e"&&(w=i-f[Ni[t]]+N[Ni[t]],s.left=c=we(c)?Math.max(c,w):w))}),s}}function eA(e){return!!e.host}var Rp="djs-dragging",Cy="djs-resizing",tA=250,hc=Math.max;function Py(e,t,n,i,r){function o(a,s){k(a,function(c){r.addDragger(c,s),n.addMarker(c,Rp)})}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=he("g");ae(l,i.cls("djs-crosshair-group",["no-events"])),Re(s,l);var p=he("path");ae(p,"d",u.x),He(p).add("djs-crosshair"),Re(l,p);var f=he("path");ae(f,"d",u.y),He(f).add("djs-crosshair"),Re(l,f),c.crosshairGroup=l}),e.on("spaceTool.selection.move",function(a){var s=a.context.crosshairGroup;Qt(s,a.x,a.y)}),e.on("spaceTool.selection.cleanup",function(a){var s=a.context,c=s.crosshairGroup;c&&Ft(c)}),e.on("spaceTool.move",tA,function(a){var s=a.context,c=s.line,u=s.axis,l=s.movingShapes,p=s.resizingShapes;if(s.initialized){if(!s.dragGroup){var f=n.getLayer("space");c=he("path"),ae(c,"d","M0,0 L0,0"),He(c).add("djs-crosshair"),Re(f,c),s.line=c;var d=he("g");ae(d,i.cls("djs-drag-group",["no-events"])),Re(n.getActiveLayer(),d),o(l,d);var h=new Set(l);k(p,function(M){h.add(M)});var m=new Set,g=s.movingConnections=[];h.forEach(function(M){k(M.outgoing,function(L){m.has(L)||!rt(L)||!h.has(L.target)||(m.add(L),g.push(L))})}),o(g,d),s.dragGroup=d}if(!s.frameGroup){var R=he("g");ae(R,i.cls("djs-frame-group",["no-events"])),Re(n.getActiveLayer(),R);var w=[];k(p,function(M){var L=r.addFrame(M,R),A=L.getBBox();w.push({element:L,initialBounds:A}),n.addMarker(M,Cy)}),s.frameGroup=R,s.frames=w}var b={x:"M"+a.x+", -10000 L"+a.x+", 10000",y:"M -10000, "+a.y+" L 10000, "+a.y};ae(c,{d:b[u]});var x={x:"y",y:"x"},S={x:a.dx,y:a.dy};S[x[s.axis]]=0,Qt(s.dragGroup,S.x,S.y),k(s.frames,function(M){var L=M.element,A=M.initialBounds,H,V;s.direction==="e"?ae(L,{width:hc(A.width+S.x,5)}):(H=hc(A.width-S.x,5),ae(L,{width:H,x:A.x+A.width-H})),s.direction==="s"?ae(L,{height:hc(A.height+S.y,5)}):(V=hc(A.height-S.y,5),ae(L,{height:V,y:A.y+A.height-V}))})}}),e.on("spaceTool.cleanup",function(a){var s=a.context,c=s.movingShapes,u=s.movingConnections,l=s.resizingShapes,p=s.line,f=s.dragGroup,d=s.frameGroup;k(c,function(h){n.removeMarker(h,Rp)}),k(u,function(h){n.removeMarker(h,Rp)}),f&&(Ft(p),Ft(f)),k(l,function(h){n.removeMarker(h,Cy)}),d&&Ft(d)})}Py.$inject=["eventBus","elementRegistry","canvas","styles","previewSupport"];const nA={__init__:["spaceToolPreview"],__depends__:[Ii,yi,pc,Co,ma],spaceTool:["type",Xn],spaceToolPreview:["type",Py]};function mc(e,t){e.invoke(Xn,this),this._canvas=t}mc.$inject=["injector","canvas"],oe(mc,Xn),mc.prototype.calculateAdjustments=function(e,t,n,i){var r=this._canvas.getRootElement(),o=e[0]===r?null:e[0],a=[];o&&(a=Qr(so(r.children.filter(u=>v(u,"bpmn:Artifact")),Ct(o))));const s=[...e,...a];var c=Xn.prototype.calculateAdjustments.call(this,s,t,n,i);return c.resizingShapes=c.resizingShapes.filter(function(u){return!(v(u,"bpmn:TextAnnotation")||iA(u)&&(t==="y"&&Wt(u)||t==="x"&&!Wt(u)))}),c};function iA(e){return v(e,"bpmn:Participant")&&!X(e).processRef}const Ay={__depends__:[nA],spaceTool:["type",mc]};function yt(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)}yt.$inject=["eventBus","injector"],yt.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()},yt.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},yt.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,e!==!1&&this._fire("changed",{trigger:"clear"})},yt.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()}},yt.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()}},yt.prototype.register=function(e,t){this._setHandler(e,t)},yt.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)},yt.prototype.canUndo=function(){return!!this._getUndoAction()},yt.prototype.canRedo=function(){return!!this._getRedoAction()},yt.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},yt.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},yt.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)})},yt.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},yt.prototype._createId=function(){return this._uid++},yt.prototype._atomicDo=function(e){const t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},yt.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()},yt.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)},yt.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:qf("id",i.reverse())}),i.length=0,this._fire("changed",{trigger:t}),e.trigger=null)},yt.prototype._markDirty=function(e){const t=this._currentExecution;e&&(e=_e(e)?e:[e],t.dirty=t.dirty.concat(e))},yt.prototype._executedAction=function(e,t){const n=++this._stackIdx;t||this._stack.splice(n,this._stack.length,e)},yt.prototype._revertedAction=function(e){this._stackIdx--},yt.prototype._getHandler=function(e){return this._handlerMap[e]},yt.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 rA={commandStack:["type",yt]};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 oA=250,Ty=1400;function Cp(e,t,n){K.call(this,t);var i=e.get("movePreview",!1);t.on("shape.move.start",Ty,function(r){var o=r.context,a=o.shapes,s=o.validatedShapes;o.shapes=My(a),o.validatedShapes=My(s)}),i&&t.on("shape.move.start",oA,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",Ty,function(r){var o=r.context,a=o.closure,s=a.enclosedElements,c=[];k(s,function(u){k(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=ol(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&&(Et(s.labels,a,c),a.labelTarget=s)})}oe(Cp,K),Cp.$inject=["injector","eventBus","modeling"];function My(e){var t=new Set(e);return Le(e,function(n){return!t.has(n.labelTarget)})}const aA={__init__:["labelSupport"],labelSupport:["type",Cp]};var sA=251,ky=1401,Oy="attach-ok";function Pp(e,t,n,i,r){K.call(this,t);var o=e.get("movePreview",!1);t.on("shape.move.start",ky,function(a){var s=a.context,c=s.shapes,u=s.validatedShapes;s.shapes=cA(c),s.validatedShapes=uA(u)}),o&&t.on("shape.move.start",sA,function(a){var s=a.context,c=s.shapes,u=Ap(c);k(u,function(l){o.makeDraggable(s,l,!0),k(l.labels,function(p){o.makeDraggable(s,p,!0)})})}),o&&t.on("shape.move.start",function(a){var s=a.context,c=s.shapes;if(c.length===1){var u=c[0],l=u.host;l&&(n.addMarker(l,Oy),t.once(["shape.move.out","shape.move.cleanup"],function(){n.removeMarker(l,Oy)}))}}),this.preExecuted("elements.move",ky,function(a){var s=a.context,c=s.closure,u=s.shapes,l=Ap(u);k(l,function(p){c.add(p,c.topLevel[p.host.id])})}),this.postExecuted("elements.move",function(a){var s=a.context,c=s.shapes,u=s.newHost,l;u&&c.length!==1||(u?l=c:l=Le(c,function(p){var f=p.host;return lA(p)&&!pA(c,f)}),k(l,function(p){r.updateAttachment(p,u)}))}),this.postExecuted("elements.move",function(a){var s=a.context.shapes;k(s,function(c){k(c.attachers,function(u){k(u.outgoing.slice(),function(l){var p=i.allowed("connection.reconnect",{connection:l,source:l.source,target:l.target});p||r.removeConnection(l)}),k(u.incoming.slice(),function(l){var p=i.allowed("connection.reconnect",{connection:l,source:l.source,target:l.target});p||r.removeConnection(l)})})})}),this.postExecute("shape.create",function(a){var s=a.context,c=s.shape,u=s.host;u&&r.updateAttachment(c,u)}),this.postExecute("shape.replace",function(a){var s=a.context,c=s.oldShape,u=s.newShape;pr(c.attachers,function(l){var p=i.allowed("elements.move",{target:u,shapes:[l]});p==="attach"?r.updateAttachment(l,u):r.removeShape(l)}),u.attachers.length&&k(u.attachers,function(l){var p=Xm(l,c,u);r.moveShape(l,p,l.parent)})}),this.postExecute("shape.resize",function(a){var s=a.context,c=s.shape,u=s.oldBounds,l=s.newBounds,p=c.attachers,f=s.hints||{};f.attachSupport!==!1&&k(p,function(d){var h=Xm(d,u,l);r.moveShape(d,h,d.parent),k(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)})}oe(Pp,K),Pp.$inject=["injector","eventBus","canvas","rules","modeling"];function Ap(e){return Eu(rn(e,function(t){return t.attachers||[]}))}function cA(e){var t=Ap(e);return Qx("id",e,t)}function uA(e){var t=Jr(e,"id");return Le(e,function(n){for(;n;){if(n.host&&t[n.host.id])return!1;n=n.parent}return!0})}function lA(e){return!!e.host}function pA(e,t){return e.indexOf(t)!==-1}const fA={__depends__:[yi],__init__:["attachSupport"],attachSupport:["type",Pp]};function Dy(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(Rh(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)})}Dy.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];const Tp={__init__:["changeSupport"],changeSupport:["type",Dy]};function Zn(e){this._model=e}Zn.$inject=["moddle"],Zn.prototype._needsId=function(e){return De(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"])},Zn.prototype._ensureId=function(e){if(e.id){this._model.ids.claim(e.id,e);return}var t;v(e,"bpmn:Activity")?t="Activity":v(e,"bpmn:Event")?t="Event":v(e,"bpmn:Gateway")?t="Gateway":De(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))},Zn.prototype.create=function(e,t){var n=this._model.create(e,t||{});return this._ensureId(n),n},Zn.prototype.createDiLabel=function(){return this.create("bpmndi:BPMNLabel",{bounds:this.createDiBounds()})},Zn.prototype.createDiShape=function(e,t){return this.create("bpmndi:BPMNShape",D({bpmnElement:e,bounds:this.createDiBounds()},t))},Zn.prototype.createDiBounds=function(e){return this.create("dc:Bounds",e)},Zn.prototype.createDiWaypoints=function(e){var t=this;return rn(e,function(n){return t.createDiWaypoint(n)})},Zn.prototype.createDiWaypoint=function(e){return this.create("dc:Point",ii(e,["x","y"]))},Zn.prototype.createDiEdge=function(e,t){return this.create("bpmndi:BPMNEdge",D({bpmnElement:e,waypoint:this.createDiWaypoints([])},t))},Zn.prototype.createDiPlane=function(e,t){return this.create("bpmndi:BPMNPlane",D({bpmnElement:e},t))};function On(e,t,n){K.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"],Dn(o)),this.reverted(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],Dn(a));function s(d){var h=d.context,m=h.oldRoot,g=m.children;k(g,function(R){v(R,"bpmn:BaseElement")&&i.updateParent(R)})}this.executed(["canvas.updateRoot"],s),this.reverted(["canvas.updateRoot"],s);function c(d){var h=d.context.shape;v(h,"bpmn:BaseElement")&&i.updateBounds(h)}this.executed(["shape.move","shape.create","shape.resize"],Dn(function(d){d.context.shape.type!=="label"&&c(d)})),this.reverted(["shape.move","shape.create","shape.resize"],Dn(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"],Dn(u)),this.reverted(["connection.create","connection.move","connection.delete","connection.reconnect"],Dn(u));function l(d){i.updateConnectionWaypoints(d.context.connection)}this.executed(["connection.layout","connection.move","connection.updateWaypoints"],Dn(l)),this.reverted(["connection.layout","connection.move","connection.updateWaypoints"],Dn(l)),this.executed("connection.reconnect",Dn(function(d){var h=d.context,m=h.connection,g=h.oldSource,R=h.newSource,w=X(m),b=X(g),x=X(R);w.conditionExpression&&!De(x,["bpmn:Activity","bpmn:ExclusiveGateway","bpmn:InclusiveGateway"])&&(h.oldConditionExpression=w.conditionExpression,delete w.conditionExpression),g!==R&&b.default===w&&(h.oldDefault=b.default,delete b.default)})),this.reverted("connection.reconnect",Dn(function(d){var h=d.context,m=h.connection,g=h.oldSource,R=h.newSource,w=X(m),b=X(g),x=X(R);h.oldConditionExpression&&(w.conditionExpression=h.oldConditionExpression),h.oldDefault&&(b.default=h.oldDefault,delete x.default)}));function p(d){i.updateAttachment(d.context)}this.executed(["element.updateAttachment"],Dn(p)),this.reverted(["element.updateAttachment"],Dn(p)),this.executed("element.updateLabel",Dn(f)),this.reverted("element.updateLabel",Dn(f));function f(d){const{element:h}=d.context,m=Hn(h),g=We(h),R=g&&g.get("label");rr(h)||tc(h)||(m&&!R?g.set("label",t.create("bpmndi:BPMNLabel")):!m&&R&&g.set("label",void 0))}}oe(On,K),On.$inject=["eventBus","bpmnFactory","connectionDocking"],On.prototype.updateAttachment=function(e){var t=e.shape,n=t.businessObject,i=t.host;n.attachedToRef=i&&i.businessObject},On.prototype.updateParent=function(e,t){if(!ke(e)&&!(v(e,"bpmn:DataStoreReference")&&e.parent&&v(e.parent,"bpmn:Collaboration"))){var n=e.parent,i=e.businessObject,r=We(e),o=n&&n.businessObject,a=We(n);v(e,"bpmn:FlowNode")&&this.updateFlowNodeRefs(i,o,t&&t.businessObject),v(e,"bpmn:DataOutputAssociation")&&(e.source?o=e.source.businessObject:o=null),v(e,"bpmn:DataInputAssociation")&&(e.target?o=e.target.businessObject:o=null),this.updateSemanticParent(i,o),v(e,"bpmn:DataObjectReference")&&i.dataObjectRef&&this.updateSemanticParent(i.dataObjectRef,o),this.updateDiParent(r,a)}},On.prototype.updateBounds=function(e){var t=We(e),n=hA(e);if(n){var i=ri(n,t.get("bounds"));D(n,{x:e.x+i.x,y:e.y+i.y})}var r=ke(e)?this._getLabel(t):t,o=r.bounds;o||(o=this._bpmnFactory.createDiBounds(),r.set("bounds",o)),D(o,{x:e.x,y:e.y,width:e.width,height:e.height})},On.prototype.updateFlowNodeRefs=function(e,t,n){if(n!==t){var i,r;v(n,"bpmn:Lane")&&(i=n.get("flowNodeRef"),xt(i,e)),v(t,"bpmn:Lane")&&(r=t.get("flowNodeRef"),Et(r,e))}},On.prototype.updateDiConnection=function(e,t,n){var i=We(e),r=We(t),o=We(n);i.sourceElement&&i.sourceElement.bpmnElement!==X(t)&&(i.sourceElement=t&&r),i.targetElement&&i.targetElement.bpmnElement!==X(n)&&(i.targetElement=n&&o)},On.prototype.updateDiParent=function(e,t){if(t&&!v(t,"bpmndi:BPMNPlane")&&(t=t.$parent),e.$parent!==t){var n=(t||e.$parent).get("planeElement");t?(n.push(e),e.$parent=t):(xt(n,e),e.$parent=null)}};function dA(e){for(;e&&!v(e,"bpmn:Definitions");)e=e.$parent;return e}On.prototype.getLaneSet=function(e){var t,n;return v(e,"bpmn:Lane")?(t=e.childLaneSet,t||(t=this._bpmnFactory.create("bpmn:LaneSet"),e.childLaneSet=t,t.$parent=e),t):(v(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)},On.prototype.updateSemanticParent=function(e,t,n){var i;if(e.$parent!==t&&!((v(e,"bpmn:DataInput")||v(e,"bpmn:DataOutput"))&&(v(t,"bpmn:Participant")&&"processRef"in t&&(t=t.processRef),"ioSpecification"in t&&t.ioSpecification===e.$parent))){if(v(e,"bpmn:Lane"))t&&(t=this.getLaneSet(t)),i="lanes";else if(v(e,"bpmn:FlowElement")){if(t){if(v(t,"bpmn:Participant"))t=t.processRef;else if(v(t,"bpmn:Lane"))do t=t.$parent.$parent;while(v(t,"bpmn:Lane"))}i="flowElements"}else if(v(e,"bpmn:Artifact")){for(;t&&!v(t,"bpmn:Process")&&!v(t,"bpmn:SubProcess")&&!v(t,"bpmn:Collaboration");)if(v(t,"bpmn:Participant")){t=t.processRef;break}else t=t.$parent;i="artifacts"}else if(v(e,"bpmn:MessageFlow"))i="messageFlows";else if(v(e,"bpmn:Participant")){i="participants";var r=e.processRef,o;r&&(o=dA(e.$parent||t),e.$parent&&(xt(o.get("rootElements"),r),r.$parent=null),t&&(Et(o.get("rootElements"),r),r.$parent=o))}else v(e,"bpmn:DataOutputAssociation")?i="dataOutputAssociations":v(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),xt(a,e)),t?(a=t.get(i),a.push(e),e.$parent=t):e.$parent=null,n){var s=n.get(i);xt(a,e),t&&(s||(s=[],t.set(i,s)),s.push(e))}}},On.prototype.updateConnectionWaypoints=function(e){var t=We(e);t.set("waypoint",this._bpmnFactory.createDiWaypoints(e.waypoints))},On.prototype.updateConnection=function(e){var t=e.connection,n=X(t),i=t.source,r=X(i),o=t.target,a=X(t.target),s;if(v(n,"bpmn:DataAssociation"))v(n,"bpmn:DataInputAssociation")?(n.get("sourceRef")[0]=r,s=e.parent||e.newParent||a,this.updateSemanticParent(n,a,s)):v(n,"bpmn:DataOutputAssociation")&&(s=e.parent||e.newParent||r,this.updateSemanticParent(n,r,s),n.targetRef=a);else{var c=v(n,"bpmn:SequenceFlow");n.sourceRef!==r&&(c&&(xt(n.sourceRef&&n.sourceRef.get("outgoing"),n),r&&r.get("outgoing")&&r.get("outgoing").push(n)),n.sourceRef=r),n.targetRef!==a&&(c&&(xt(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)},On.prototype._getLabel=function(e){return e.label||(e.label=this._bpmnFactory.createDiLabel()),e.label};function Dn(e){return function(t){var n=t.context,i=n.shape||n.connection||n.element;v(i,"bpmn:BaseElement")&&e(t)}}function hA(e){if(v(e,"bpmn:Activity")){var t=We(e);if(t){var n=t.get("label");if(n)return n.get("bounds")}}}function fr(e,t){ki.call(this),this._bpmnFactory=e,this._moddle=t}oe(fr,ki),fr.$inject=["bpmnFactory","moddle"],fr.prototype._baseCreate=ki.prototype.create,fr.prototype.create=function(e,t){if(e==="label"){var n=t.di||this._bpmnFactory.createDiLabel();return this._baseCreate(e,D({type:"label",di:n},Nr,t))}return this.createElement(e,t)},fr.prototype.createElement=function(e,t){t=D({},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(!gA(r)){var o=D({},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)}v(i,"bpmn:Group")&&(t=D({isFrame:!0},t)),t=mA(i,t,["processRef","isInterrupting","associationDirection","isForCompensation"]),t.isExpanded&&(t=Mp(r,t,"isExpanded")),De(i,["bpmn:Lane","bpmn:Participant"])&&(t=Mp(r,t,"isHorizontal")),v(i,"bpmn:SubProcess")&&(t.collapsed=!je(i,r)),v(i,"bpmn:ExclusiveGateway")&&(Sn(r,"isMarkerVisible")?r.isMarkerVisible===void 0&&(r.isMarkerVisible=!1):r.isMarkerVisible=!0),Bt(t.triggeredByEvent)&&(i.triggeredByEvent=t.triggeredByEvent,delete t.triggeredByEvent),Bt(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=D({id:i.id},n,t,{businessObject:i,di:r}),this._baseCreate(e,t)},fr.prototype.getDefaultSize=function(e,t){var n=X(e);if(t=t||We(e),v(n,"bpmn:SubProcess"))return je(n,t)?{width:350,height:200}:{width:100,height:80};if(v(n,"bpmn:Task"))return{width:100,height:80};if(v(n,"bpmn:Gateway"))return{width:50,height:50};if(v(n,"bpmn:Event"))return{width:36,height:36};if(v(n,"bpmn:Participant")){var i=t.isHorizontal===void 0||t.isHorizontal===!0;return je(n,t)?i?{width:600,height:250}:{width:250,height:600}:i?{width:400,height:60}:{width:60,height:400}}return v(n,"bpmn:Lane")?{width:400,height:100}:v(n,"bpmn:DataObjectReference")?{width:36,height:50}:v(n,"bpmn:DataStoreReference")?{width:50,height:50}:v(n,"bpmn:TextAnnotation")?{width:100,height:40}:v(n,"bpmn:Group")?{width:300,height:300}:{width:100,height:80}},fr.prototype.createParticipantShape=function(e){return Vt(e)||(e={isExpanded:e}),e=D({type:"bpmn:Participant"},e||{}),e.isExpanded!==!1&&(e.processRef=this._bpmnFactory.create("bpmn:Process")),this.createShape(e)};function mA(e,t,n){return k(n,function(i){t=Mp(e,t,i)}),t}function Mp(e,t,n){return t[n]===void 0?t:(e[n]=t[n],si(t,[n]))}function gA(e){return De(e,["bpmndi:BPMNShape","bpmndi:BPMNEdge","bpmndi:BPMNDiagram","bpmndi:BPMNPlane"])}function gc(e,t){this._modeling=e,this._canvas=t}gc.$inject=["modeling","canvas"],gc.prototype.preExecute=function(e){var t=this._modeling,n=e.elements,i=e.alignment;k(n,function(r){var o={x:0,y:0};Bt(i.left)?o.x=i.left-r.x:Bt(i.right)?o.x=i.right-r.width-r.x:Bt(i.center)?o.x=i.center-Math.round(r.width/2)-r.x:Bt(i.top)?o.y=i.top-r.y:Bt(i.bottom)?o.y=i.bottom-r.height-r.y:Bt(i.middle)&&(o.y=i.middle-Math.round(r.height/2)-r.y),t.moveElements([r],o,r.parent)})},gc.prototype.postExecute=function(e){};function yc(e){this._modeling=e}yc.$inject=["modeling"],yc.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},yc.prototype.postExecute=function(e){var t=e.hints||{};yA(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 yA(e,t){return Wi(e.outgoing,function(n){return n.target===t})}function vc(e,t){this._canvas=e,this._layouter=t}vc.$inject=["canvas","layouter"],vc.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},vc.prototype.revert=function(e){var t=e.connection;return this._canvas.removeConnection(t),t.source=null,t.target=null,t};var _c=Math.round;function kp(e){this._modeling=e}kp.$inject=["modeling"],kp.prototype.preExecute=function(e){var t=e.elements,n=e.parent,i=e.parentIndex,r=e.position,o=e.hints,a=this._modeling;k(t,function(p){we(p.x)||(p.x=0),we(p.y)||(p.y=0)});var s=Le(t,function(p){return!p.hidden}),c=Ct(s);k(t,function(p){rt(p)&&(p.waypoints=rn(p.waypoints,function(f){return{x:_c(f.x-c.x-c.width/2+r.x),y:_c(f.y-c.y-c.height/2+r.y)}})),D(p,{x:_c(p.x-c.x-c.width/2+r.x),y:_c(p.y-c.y-c.height/2+r.y)})});var u=new Set(xs(t)),l={};k(t,function(p){if(rt(p)){l[p.id]=we(i)?a.createConnection(l[p.source.id],l[p.target.id],i,p,p.parent||n,o):a.createConnection(l[p.source.id],l[p.target.id],p,p.parent||n,o);return}var f=D({},o);u.has(p)||(f.autoResize=!1),ke(p)&&(f=si(f,["attach"])),l[p.id]=we(i)?a.createShape(p,ii(p,["x","y","width","height"]),p.parent||n,i,f):a.createShape(p,ii(p,["x","y","width","height"]),p.parent||n,f)}),e.elements=Qr(l)};var Ly=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?D(t,n):D(t,{x:n.x-Ly(t.width/2),y:n.y-Ly(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 ya(e){dr.call(this,e)}oe(ya,dr),ya.$inject=["canvas"];var vA=dr.prototype.execute;ya.prototype.execute=function(e){var t=e.shape;return bA(t),t.labelTarget=e.labelTarget,vA.call(this,e)};var _A=dr.prototype.revert;ya.prototype.revert=function(e){return e.shape.labelTarget=null,_A.call(this,e)};function bA(e){["width","height"].forEach(function(t){typeof e[t]>"u"&&(e[t]=0)})}function va(e,t){this._canvas=e,this._modeling=t}va.$inject=["canvas","modeling"],va.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})})},va.prototype.execute=function(e){var t=e.connection,n=t.parent;return e.parent=n,e.parentIndex=ol(n.children,t),e.source=t.source,e.target=t.target,this._canvas.removeConnection(t),t.source=null,t.target=null,t},va.prototype.revert=function(e){var t=e.connection,n=e.parent,i=e.parentIndex;return t.source=e.source,t.target=e.target,Et(n.children,t,i),this._canvas.addConnection(t,n),t};function Op(e,t){this._modeling=e,this._elementRegistry=t}Op.$inject=["modeling","elementRegistry"],Op.prototype.postExecute=function(e){var t=this._modeling,n=this._elementRegistry,i=e.elements;k(i,function(r){n.get(r.id)&&(r.waypoints?t.removeConnection(r):t.removeShape(r))})};function _a(e,t){this._canvas=e,this._modeling=t}_a.$inject=["canvas","modeling"],_a.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){rt(i)?t.removeConnection(i,{nested:!0}):t.removeShape(i,{nested:!0})})},_a.prototype.execute=function(e){var t=this._canvas,n=e.shape,i=n.parent;return e.oldParent=i,e.oldParentIndex=ol(i.children,n),t.removeShape(n),n},_a.prototype.revert=function(e){var t=this._canvas,n=e.shape,i=e.oldParent,r=e.oldParentIndex;return Et(i.children,n,r),t.addShape(n,i),n};function bc(e){this._modeling=e}bc.$inject=["modeling"];var Iy={x:"y",y:"x"};bc.prototype.preExecute=function(e){var t=this._modeling,n=e.groups,i=e.axis,r=e.dimension;function o(g,R){g.range.min=Math.min(R[i],g.range.min),g.range.max=Math.max(R[i]+R[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,R){var w={y:0};w[i]=g-a(R),w[i]&&(w[Iy[i]]=0,t.moveElements([R],w,R.parent))}var l=n[0],p=s(n),f=n[p],d,h,m=0;k(n,function(g,R){var w,b,x;if(g.elements.length<2){R&&R!==n.length-1&&(o(g,g.elements[0]),m+=c(g.range));return}w=ai(g.elements,i),b=w[0],R===p&&(b=w[s(w)]),x=a(b),g.range=null,k(w,function(S){if(u(x,S),g.range===null){g.range={min:S[i],max:S[i]+S[r]};return}o(g,S)}),R&&R!==n.length-1&&(m+=c(g.range))}),h=Math.abs(f.range.min-l.range.max),d=Math.round((h-m)/(n.length-1)),!(d<n.length-1)&&k(n,function(g,R){var w={},b;g===l||g===f||(b=n[R-1],g.range.max=0,k(g.elements,function(x,S){w[Iy[i]]=0,w[i]=b.range.max-x[i]+d,g.range.min!==x[i]&&(w[i]+=x[i]-g.range.min),w[i]&&t.moveElements([x],w,x.parent),g.range.max=Math.max(x[i]+x[r],S?g.range.max:0)}))})},bc.prototype.postExecute=function(e){};function xc(e,t){this._layouter=e,this._canvas=t}xc.$inject=["layouter","canvas"],xc.prototype.execute=function(e){var t=e.connection,n=t.waypoints;return D(e,{oldWaypoints:n}),t.waypoints=this._layouter.layoutConnection(t,e.hints),t},xc.prototype.revert=function(e){var t=e.connection;return t.waypoints=e.oldWaypoints,t};function Dp(){}Dp.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=xt(o.children,t),Et(i.children,t,r),t.parent=i,k(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},Dp.prototype.revert=function(e){var t=e.connection,n=t.parent,i=e.oldParent,r=e.oldParentIndex,o=e.delta;return xt(n.children,t),Et(i.children,t,r),t.parent=i,k(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 Lp(){this.allShapes={},this.allConnections={},this.enclosedElements={},this.enclosedConnections={},this.topLevel={}}Lp.prototype.add=function(e,t){return this.addAll([e],t)},Lp.prototype.addAll=function(e,t){var n=XE(e,!!t,this);return D(this,n),this};function ba(e){this._modeling=e}ba.prototype.moveRecursive=function(e,t,n){return e?this.moveClosure(this.getClosure(e),t,n):[]},ba.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),k(a,function(p){o.moveShape(p,t,u[p.id]&&!l&&n,{recurse:!1,layout:!1})}),k(s,function(p){var f=!!a[p.source.id],d=!!a[p.target.id];c[p.id]&&f&&d?o.moveConnection(p,t,u[p.id]&&!l&&n):o.layoutConnection(p,{connectionStart:f&&Hl(p,p.source,t),connectionEnd:d&&zl(p,p.target,t)})})},ba.prototype.getClosure=function(e){return new Lp().addAll(e,!0)};function wc(e){this._helper=new ba(e)}wc.$inject=["modeling"],wc.prototype.preExecute=function(e){e.closure=this._helper.getClosure(e.shapes)},wc.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 zr(e){this._modeling=e,this._helper=new ba(e)}zr.$inject=["modeling"],zr.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=ii(t,["x","y","width","height"]),e.oldParent=o,e.oldParentIndex=xt(o.children,t),Et(i.children,t,r),D(t,{parent:i,x:t.x+n.x,y:t.y+n.y}),t},zr.prototype.postExecute=function(e){var t=e.shape,n=e.delta,i=e.hints,r=this._modeling;i.layout!==!1&&(k(t.incoming,function(o){r.layoutConnection(o,{connectionEnd:zl(o,t,n)})}),k(t.outgoing,function(o){r.layoutConnection(o,{connectionStart:Hl(o,t,n)})})),i.recurse!==!1&&this.moveChildren(e)},zr.prototype.revert=function(e){var t=e.shape,n=e.oldParent,i=e.oldParentIndex,r=e.delta;return Et(n.children,t,i),D(t,{parent:n,x:t.x-r.x,y:t.y-r.y}),t},zr.prototype.moveChildren=function(e){var t=e.delta,n=e.shape;this._helper.moveRecursive(n.children,t,null)},zr.prototype.getNewParent=function(e){return e.newParent||e.shape.parent};function xa(e){this._modeling=e}xa.$inject=["modeling"],xa.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 _e(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},xa.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||Ny(_e(r)?r[0]:r)),i&&(!n||o.docking==="target")&&(a.connectionEnd=a.connectionEnd||Ny(_e(r)?r[r.length-1]:r)),o.newWaypoints&&(a.waypoints=o.newWaypoints),this._modeling.layoutConnection(t,a))},xa.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 Ny(e){return e.original||e}function Bi(e,t){this._modeling=e,this._rules=t}Bi.$inject=["modeling","rules"],Bi.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 p;a.moveChildren!==!1&&(p=r.children.slice(),n.moveElements(p,{x:0,y:0},s,a));var f=r.incoming.slice(),d=r.outgoing.slice();k(f,function(h){var m=h.source,g=c(m,s,h);g&&t.reconnectEnd(h,s,Ks(h,s,l),a)}),k(d,function(h){var m=h.target,g=c(s,m,h);g&&t.reconnectStart(h,s,qs(h,s,l),a)})},Bi.prototype.postExecute=function(e){var t=e.oldShape;this._modeling.removeShape(t)},Bi.prototype.execute=function(e){},Bi.prototype.revert=function(e){},Bi.prototype.createShape=function(e,t,n,i){return this._modeling.createShape(e,t,n,i)},Bi.prototype.reconnectStart=function(e,t,n,i){this._modeling.reconnectStart(e,t,n,i)},Bi.prototype.reconnectEnd=function(e,t,n,i){this._modeling.reconnectEnd(e,t,n,i)};function wa(e){this._modeling=e}wa.$inject=["modeling"],wa.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},D(t,{width:n.width,height:n.height,x:n.x,y:n.y}),t},wa.prototype.postExecute=function(e){var t=this._modeling,n=e.shape,i=e.oldBounds,r=e.hints||{};r.layout!==!1&&(k(n.incoming,function(o){t.layoutConnection(o,{connectionEnd:Ks(o,n,i)})}),k(n.outgoing,function(o){t.layoutConnection(o,{connectionStart:qs(o,n,i)})}))},wa.prototype.revert=function(e){var t=e.shape,n=e.oldBounds;return D(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),k(r,function(s){a[s.id]=wA(s)}),this.resizeShapes(r,t,n),this.updateConnectionWaypoints(KP(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;k(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;k(e,function(r){var o=XP(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);k(e,function(l){var p=l.source,f=l.target,d=xA(l),h=$y(n),m={},g=c.has(p)||u.has(p),R=c.has(f)||u.has(f);g&&R?(d=rn(d,function(w){return jy(w,i,n)&&(w[h]=w[h]+t[h]),w.original&&jy(w.original,i,n)&&(w.original[h]=w.original[h]+t[h]),w}),s._modeling.updateWaypoints(l,d,{labelBehavior:!1})):(g||R)&&(c.has(p)?m.connectionStart=Hl(l,p,t):c.has(f)?m.connectionEnd=zl(l,f,t):u.has(p)?m.connectionStart=qs(l,p,a[p.id]):u.has(f)&&(m.connectionEnd=Ks(l,f,a[f.id])),s._modeling.layoutConnection(l,m))})};function By(e){return D({},e)}function xA(e){return rn(e.waypoints,function(t){return t=By(t),t.original&&(t.original=By(t.original)),t})}function $y(e){switch(e){case"n":return"y";case"w":return"x";case"s":return"y";case"e":return"x"}}function jy(e,t,n){var i=$y(n);if(/e|s/.test(n))return e[i]>t;if(/n|w/.test(n))return e[i]<t}function wA(e){return{x:e.x,y:e.y,height:e.height,width:e.width}}function Ec(e){this._modeling=e}Ec.$inject=["modeling"],Ec.prototype.execute=function(e){var t=e.shape,n=t.children;e.oldChildrenVisibility=Fy(n),t.collapsed=!t.collapsed;var i=Hy(n,t.collapsed);return[t].concat(i)},Ec.prototype.revert=function(e){var t=e.shape,n=e.oldChildrenVisibility,i=t.children,r=zy(i,n);return t.collapsed=!t.collapsed,[t].concat(r)};function Fy(e){var t={};return k(e,function(n){t[n.id]=n.hidden,n.children&&(t=D({},t,Fy(n.children)))}),t}function Hy(e,t){var n=[];return k(e,function(i){i.hidden=t,n=n.concat(i),i.children&&(n=n.concat(Hy(i.children,i.collapsed||t)))}),n}function zy(e,t){var n=[];return k(e,function(i){i.hidden=t[i.id],n=n.concat(i),i.children&&(n=n.concat(zy(i.children,t)))}),n}function Sc(e){this._modeling=e}Sc.$inject=["modeling"],Sc.prototype.execute=function(e){var t=e.shape,n=e.newHost,i=t.host;return e.oldHost=i,e.attacherIdx=Vy(i,t),Gy(n,t),t.host=n,t},Sc.prototype.revert=function(e){var t=e.shape,n=e.newHost,i=e.oldHost,r=e.attacherIdx;return t.host=i,Vy(n,t),Gy(i,t,r),t};function Vy(e,t){return xt(e&&e.attachers,t)}function Gy(e,t,n){if(e){var i=e.attachers;i||(e.attachers=i=[]),Et(i,t,n)}}function Ip(){}Ip.prototype.execute=function(e){var t=e.connection,n=e.newWaypoints;return e.oldWaypoints=t.waypoints,t.waypoints=n,t},Ip.prototype.revert=function(e){var t=e.connection,n=e.oldWaypoints;return t.waypoints=n,t};function ot(e,t,n){this._eventBus=e,this._elementFactory=t,this._commandStack=n;var i=this;e.on("diagram.init",function(){i.registerHandlers(n)})}ot.$inject=["eventBus","elementFactory","commandStack"],ot.prototype.getHandlers=function(){return{"shape.append":yc,"shape.create":dr,"shape.delete":_a,"shape.move":zr,"shape.resize":wa,"shape.replace":Bi,"shape.toggleCollapse":Ec,spaceTool:hr,"label.create":ya,"connection.create":vc,"connection.delete":va,"connection.move":Dp,"connection.layout":xc,"connection.updateWaypoints":Ip,"connection.reconnect":xa,"elements.create":kp,"elements.move":wc,"elements.delete":Op,"elements.distribute":bc,"elements.align":gc,"element.updateAttachment":Sc}},ot.prototype.registerHandlers=function(e){k(this.getHandlers(),function(t,n){e.registerHandler(n,t)})},ot.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)},ot.prototype.updateAttachment=function(e,t){var n={shape:e,newHost:t};this._commandStack.execute("element.updateAttachment",n)},ot.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)},ot.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)},ot.prototype.layoutConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.layout",n)},ot.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},ot.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},ot.prototype.createElements=function(e,t,n,i,r){_e(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},ot.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},ot.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},ot.prototype.removeElements=function(e){var t={elements:e};this._commandStack.execute("elements.delete",t)},ot.prototype.distributeElements=function(e,t,n){var i={groups:e,axis:t,dimension:n};this._commandStack.execute("elements.distribute",i)},ot.prototype.removeShape=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.delete",n)},ot.prototype.removeConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.delete",n)},ot.prototype.replaceShape=function(e,t,n){var i={oldShape:e,newData:t,hints:n||{}};return this._commandStack.execute("shape.replace",i),i.newShape},ot.prototype.alignElements=function(e,t){var n={elements:e,alignment:t};this._commandStack.execute("elements.align",n)},ot.prototype.resizeShape=function(e,t,n,i){var r={shape:e,newBounds:t,minBounds:n,hints:i};this._commandStack.execute("shape.resize",r)},ot.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)},ot.prototype.updateWaypoints=function(e,t,n){var i={connection:e,newWaypoints:t,hints:n||{}};this._commandStack.execute("connection.updateWaypoints",i)},ot.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)},ot.prototype.reconnectStart=function(e,t,n,i){i||(i={}),this.reconnect(e,t,e.target,n,D(i,{docking:"source"}))},ot.prototype.reconnectEnd=function(e,t,n,i){i||(i={}),this.reconnect(e,e.source,t,n,D(i,{docking:"target"}))},ot.prototype.connect=function(e,t,n,i){return this.createConnection(e,t,n||{},e.parent,i)},ot.prototype._create=function(e,t){return I1(t)?t:this._elementFactory.create(e,t)},ot.prototype.toggleCollapse=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.toggleCollapse",n)};function Ea(e){this._elementRegistry=e}Ea.$inject=["elementRegistry"],Ea.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||EA(n,Xa(i));return Wy(n,i),e.oldProperties=o,e.changed=r,r},Ea.prototype.revert=function(e){var t=e.oldProperties,n=e.moddleElement,i=e.changed;return Wy(n,t),i},Ea.prototype._getVisualReferences=function(e){var t=this._elementRegistry;return v(e,"bpmn:DataObject")?SA(e,t):[]};function EA(e,t){return Rn(t,function(n,i){return n[i]=e.get(i),n},{})}function Wy(e,t){k(t,function(n,i){e.set(i,n)})}function SA(e,t){return t.filter(function(n){return v(n,"bpmn:DataObjectReference")&&X(n).dataObjectRef===e})}var Sa="default",$i="id",Uy="di",RA={width:0,height:0};function Ra(e,t,n,i){this._elementRegistry=e,this._moddle=t,this._modeling=n,this._textRenderer=i}Ra.$inject=["elementRegistry","moddle","modeling","textRenderer"],Ra.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=MA(e.properties),s=e.oldProperties||CA(t,a);return Yy(a,o)&&(r.unclaim(o[$i]),i.updateId(t,a[$i]),r.claim(a[$i],o)),Sa in a&&(a[Sa]&&n.push(i.get(a[Sa].id)),o[Sa]&&n.push(i.get(o[Sa].id))),qy(t,a),e.oldProperties=s,e.changed=n,n},Ra.prototype.postExecute=function(e){var t=e.element,n=t.label,i=n&&X(n).name;if(i){var r=this._textRenderer.getExternalLabelBounds(n,i);this._modeling.resizeShape(n,r,RA)}},Ra.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 qy(t,i),Yy(n,r)&&(a.unclaim(n[$i]),o.updateId(t,i[$i]),a.claim(i[$i],r)),e.changed};function Yy(e,t){return $i in e&&e[$i]!==t[$i]}function CA(e,t){var n=Xa(t),i=e.businessObject,r=We(e);return Rn(n,function(o,a){return a!==Uy?o[a]=i.get(a):o[a]=PA(r,Xa(t.di)),o},{})}function PA(e,t){return Rn(t,function(n,i){return n[i]=e&&e.get(i),n},{})}function qy(e,t){var n=e.businessObject,i=We(e);k(t,function(r,o){o!==Uy?n.set(o,r):i&&AA(i,r)})}function AA(e,t){k(t,function(n,i){e.set(i,n)})}var TA=["default"];function MA(e){var t=D({},e);return TA.forEach(function(n){n in e&&(t[n]=X(t[n]))}),t}function Rc(e,t){this._canvas=e,this._modeling=t}Rc.$inject=["canvas","modeling"],Rc.prototype.execute=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=t.getRootElement(),o=r.businessObject,a=o.$parent,s=We(r);return t.setRootElement(n),t.removeRootElement(r),Et(a.rootElements,i),i.$parent=a,xt(a.rootElements,o),o.$parent=null,r.di=null,s.bpmnElement=i,n.di=s,e.oldRoot=r,[]},Rc.prototype.revert=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=e.oldRoot,o=r.businessObject,a=i.$parent,s=We(n);return t.setRootElement(r),t.removeRootElement(n),xt(a.rootElements,i),i.$parent=null,Et(a.rootElements,o),o.$parent=a,n.di=null,s.bpmnElement=o,r.di=s,[]};function Np(e,t){this._modeling=e,this._spaceTool=t}Np.$inject=["modeling","spaceTool"],Np.prototype.preExecute=function(e){var t=this._spaceTool,n=this._modeling,i=e.shape,r=e.location,o=Yn(i),a=o===i,s=a?i:i.parent,c=ar(s),u=Wt(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+Un,y:i.y,width:i.width-Un,height:i.height}:{x:i.x,y:i.y+Un,width:i.width,height:i.height-Un};n.createShape({type:"bpmn:Lane",isHorizontal:u},l,s)}var p=[];Lr(o,function(x){return p.push(x),x.label&&p.push(x.label),x===i?[]:Le(x.children,function(S){return S!==i})});var f,d,h,m,g;r==="top"?(f=-120,d=i.y,h=d+10,m="n",g="y"):r==="left"?(f=-120,d=i.x,h=d+10,m="w",g="x"):r==="bottom"?(f=120,d=i.y+i.height,h=d-10,m="s",g="y"):r==="right"&&(f=120,d=i.x+i.width,h=d-10,m="e",g="x");var R=t.calculateAdjustments(p,g,f,h),w=u?{x:0,y:f}:{x:f,y:0};t.makeSpace(R.movingShapes,R.resizingShapes,w,m,h);var b=u?{x:i.x+(a?Un:0),y:d-(r==="top"?120:0),width:i.width-(a?Un:0),height:120}:{x:d-(r==="left"?120:0),y:i.y+(a?Un:0),width:120,height:i.height-(a?Un:0)};e.newLane=n.createShape({type:"bpmn:Lane",isHorizontal:u},b,s)};function Bp(e){this._modeling=e}Bp.$inject=["modeling"],Bp.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=Wt(n),s=a?n.height:n.width,c=Math.round(s/i),u,l,p,f;for(f=0;f<i;f++)f===i-1?u=s-c*f:u=c,l=a?{x:n.x+Un,y:n.y+f*c,width:n.width-Un,height:u}:{x:n.x+f*c,y:n.y+Un,width:u,height:n.height-Un},f<o?t.resizeShape(r[f],l):(p={type:"bpmn:Lane",isHorizontal:a},t.createShape(p,l,n))};function Ca(e,t){this._modeling=e,this._spaceTool=t}Ca.$inject=["modeling","spaceTool"],Ca.prototype.preExecute=function(e){var t=e.shape,n=e.newBounds,i=e.balanced;i!==!1?this.resizeBalanced(t,n):this.resizeSpace(t,n)},Ca.prototype.resizeBalanced=function(e,t){var n=this._modeling,i=SR(e,t);n.resizeShape(e,t),i.forEach(function(r){n.resizeShape(r.shape,r.newBounds)})},Ca.prototype.resizeSpace=function(e,t){var n=this._spaceTool,i=ge(e),r=ge(t),o=Cm(r,i),a=Yn(e),s=[],c=[];Lr(a,function(h){return s.push(h),(v(h,"bpmn:Lane")||v(h,"bpmn:Participant"))&&c.push(h),h.children});var u,l,p,f,d;(o.bottom||o.top)&&(u=o.bottom||o.top,l=e.y+(o.bottom?e.height:0)+(o.bottom?-10:10),p=o.bottom?"s":"n",f=o.top>0||o.bottom<0?-u:u,d=n.calculateAdjustments(s,"y",f,l),n.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:u},p)),(o.left||o.right)&&(u=o.right||o.left,l=e.x+(o.right?e.width:0)+(o.right?-10:100),p=o.right?"e":"w",f=o.left>0||o.right<0?-u:u,d=n.calculateAdjustments(c,"x",f,l),n.makeSpace(d.movingShapes,d.resizingShapes,{x:u,y:0},p))};var Pa="flowNodeRef",$p="lanes";function Cc(){}Cc.prototype._computeUpdates=function(e,t){var n=[],i=[],r={},o=[];function a(l,p){var f=ge(p),d={x:l.x+l.width/2,y:l.y+l.height/2};return d.x>f.left&&d.x<f.right&&d.y>f.top&&d.y<f.bottom}function s(l){n.indexOf(l)===-1&&(o.push(l),n.push(l))}function c(l){var p=Yn(l);return r[p.id]||(r[p.id]=Vs(p)),r[p.id]}function u(l){if(!l.parent)return[];var p=c(l);return p.filter(function(f){return a(l,f)}).map(function(f){return f.businessObject})}return t.forEach(function(l){var p=Yn(l);if(!(!p||n.indexOf(p)!==-1)){var f=p.children.filter(function(d){return v(d,"bpmn:FlowNode")});f.forEach(s),n.push(p)}}),e.forEach(s),o.forEach(function(l){var p=l.businessObject,f=p.get($p),d=f.slice(),h=u(l);i.push({flowNode:p,remove:d,add:h})}),t.forEach(function(l){var p=l.businessObject;l.parent||p.get(Pa).forEach(function(f){i.push({flowNode:f,remove:[p],add:[]})})}),i},Cc.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($p);n.remove.forEach(function(o){xt(r,o),xt(o.get(Pa),i)}),n.add.forEach(function(o){Et(r,o),Et(o.get(Pa),i)})}),[]},Cc.prototype.revert=function(e){var t=e.updates;return t.forEach(function(n){var i=n.flowNode,r=i.get($p);n.add.forEach(function(o){xt(r,o),xt(o.get(Pa),i)}),n.remove.forEach(function(o){Et(r,o),Et(o.get(Pa),i)})}),[]};var jp="categoryValueRef";function Aa(e,t){this._bpmnFactory=e,this._elementRegistry=t}Aa.$inject=["bpmnFactory","elementRegistry"],Aa.prototype._computeUpdates=function(e,t){var n=this._elementRegistry,i=this._bpmnFactory,r=new Map,o=[],a=new Map;function s(w,b,x){if(b){var S=a.get(w);S||(S={},a.set(w,S)),!(x&&S.present)&&(!x&&S.past||(x?S.present={categoryValue:b,root:Fp(w)}:S.past={categoryValue:b}))}}function c(w){r.set(w,X(w))}function u(){n.filter(function(w){return v(w,"bpmn:FlowElement")&&!ke(w)&&w.parent}).forEach(c)}function l(w){var b=X(w),x=b.get("categoryValueRef");return x||(x=xm(i,b),o.push(kA(w,x))),x}function p(w){return w.reduce(function(b,x){var S=Fp(x),M=b.get(S);return M||(M=[],b.set(S,M)),M.push(x),b},new Map)}e=Array.from(e||[]);var f=p(e);t.length&&u(),e.forEach(c),n.filter(function(w){return v(w,"bpmn:Group")&&!ke(w)&&w.parent}).forEach(function(w){var b=X(w).get("categoryValueRef");if(!b){var x=Fp(w),S=f.get(x)||[],M=so(S,w),L=Object.keys(M).length>0;L&&(b=l(w))}s(w,b,!0)}),t.forEach(function(w){s(w.groupShape,w.categoryValue,!1)}),o.length&&u();var d=Array.from(r.keys()),h=Array.from(a.values()).reduce(function(w,b){return b.present&&w.add(b.present.categoryValue),b.past&&w.add(b.past.categoryValue),w},new Set),m=new Map,g=p(d);a.forEach(function(w,b){var x=w.present;if(x){var S=g.get(x.root)||[],M=so(S,b);S.forEach(function(L){if(M[L.id]){var A=m.get(L);A||(A=new Set,m.set(L,A)),A.add(x.categoryValue)}})}});var R=d.reduce(function(w,b){var x=r.get(b),S=x.get(jp),M=new Set(S),L=m.get(b)||new Set,A=Array.from(L).filter(function(V){return!M.has(V)}),H=S.filter(function(V){return h.has(V)&&!L.has(V)});return(A.length||H.length)&&w.push({businessObject:x,categoryValuesToAdd:A,categoryValuesToRemove:H}),w},[]);return{flowElements:R,groups:o}},Aa.prototype.execute=function(e){var t=e.updates;return t||(t=e.updates=this._computeUpdates(e.affectedFlowElements,e.affectedGroupEntries)),OA(t.groups),LA(t.flowElements),[]},Aa.prototype.revert=function(e){var t=e.updates;return IA(t.flowElements),DA(t.groups),[]};function kA(e,t){return{groupShape:e,categoryValue:t,category:t.$parent}}function OA(e){e.forEach(function(t){X(t.groupShape).categoryValueRef=t.categoryValue,t.categoryValue.$parent=t.category})}function DA(e){e.forEach(function(t){X(t.groupShape).categoryValueRef=null})}function LA(e){e.forEach(function(t){var n=t.businessObject,i=n.get(jp);t.categoryValuesToRemove.forEach(function(r){xt(i,r)}),t.categoryValuesToAdd.forEach(function(r){Et(i,r,!0)})})}function IA(e){e.forEach(function(t){var n=t.businessObject,i=n.get(jp);t.categoryValuesToAdd.forEach(function(r){xt(i,r)}),t.categoryValuesToRemove.forEach(function(r){Et(i,r,!0)})})}function Fp(e){for(;e.parent;)e=e.parent;return e}function Pc(e){this._moddle=e}Pc.$inject=["moddle"],Pc.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),[]},Pc.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 NA={fill:void 0,stroke:void 0};function Hp(e){this._commandStack=e,this._normalizeColor=function(t){if(t){if(En(t)){var n=BA(t);if(n)return n}throw new Error(`invalid color value: ${t}`)}}}Hp.$inject=["commandStack"],Hp.prototype.postExecute=function(e){var t=e.elements,n=e.colors||NA,i=this,r={};"fill"in n&&D(r,{"background-color":this._normalizeColor(n.fill)}),"stroke"in n&&D(r,{"border-color":this._normalizeColor(n.stroke)}),k(t,function(o){var a=rt(o)?ii(r,["border-color"]):r,s=We(o);if($A(a),ke(o)){if(!s||!v(s.label,"bpmndi:BPMNLabel"))return;i._commandStack.execute("element.updateModdleProperties",{element:o,moddleElement:s.label,properties:{color:r["border-color"]}})}else{if(!De(s,["bpmndi:BPMNEdge","bpmndi:BPMNShape"]))return;i._commandStack.execute("element.updateProperties",{element:o,properties:{di:a}})}})};function BA(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 $A(e){"border-color"in e&&(e.stroke=e["border-color"]),"background-color"in e&&(e.fill=e["background-color"])}var jA={width:0,height:0};function Ky(e,t,n){function i(c,u){var l=c.label||c,p=c.labelTarget||c;return dS(l,u),[l,p]}function r(c){var u=c.element,l=u.businessObject,p=c.newLabel;if(!ke(u)&&rr(u)&&!Ms(u)&&!Xy(p)){var f=7,d=pl(u);d={x:d.x,y:d.y+f},e.createLabel(u,d,{id:l.id+"_label",businessObject:l,di:u.di})}}function o(c){return c.oldLabel=Hn(c.element),i(c.element,c.newLabel)}function a(c){return i(c.element,c.oldLabel)}function s(c){var u=c.element,l=u.label||u,p=c.newLabel,f=c.newBounds,d=c.hints||{};if(!(!ke(l)&&!v(l,"bpmn:TextAnnotation"))){if(ke(l)&&Xy(p)){d.removeShape!==!1&&e.removeShape(l,{unsetLabel:!1});return}var h=Hn(u);typeof f>"u"&&(f=t.getExternalLabelBounds(l,h)),f&&e.resizeShape(l,f,jA)}}this.preExecute=r,this.execute=o,this.revert=a,this.postExecute=s}Ky.$inject=["modeling","textRenderer","bpmnFactory"];function Xy(e){return!e||!e.trim()}function en(e,t,n,i){ot.call(this,e,t,n),this._bpmnRules=i}oe(en,ot),en.$inject=["eventBus","elementFactory","commandStack","bpmnRules"],en.prototype.getHandlers=function(){var e=ot.prototype.getHandlers.call(this);return e["element.updateModdleProperties"]=Ea,e["element.updateProperties"]=Ra,e["canvas.updateRoot"]=Rc,e["lane.add"]=Np,e["lane.resize"]=Ca,e["lane.split"]=Bp,e["lane.updateRefs"]=Cc,e["group.updateRefs"]=Aa,e["id.updateClaim"]=Pc,e["element.setColor"]=Hp,e["element.updateLabel"]=Ky,e},en.prototype.updateLabel=function(e,t,n,i){this._commandStack.execute("element.updateLabel",{element:e,newLabel:t,newBounds:n,hints:i||{}})},en.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)},en.prototype.updateModdleProperties=function(e,t,n){this._commandStack.execute("element.updateModdleProperties",{element:e,moddleElement:t,properties:n})},en.prototype.updateProperties=function(e,t){this._commandStack.execute("element.updateProperties",{element:e,properties:t})},en.prototype.resizeLane=function(e,t,n){this._commandStack.execute("lane.resize",{shape:e,newBounds:t,balanced:n})},en.prototype.addLane=function(e,t){var n={shape:e,location:t};return this._commandStack.execute("lane.add",n),n.newLane},en.prototype.splitLane=function(e,t){this._commandStack.execute("lane.split",{shape:e,count:t})},en.prototype.makeCollaboration=function(){var e=this._create("root",{type:"bpmn:Collaboration"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},en.prototype.makeProcess=function(){var e=this._create("root",{type:"bpmn:Process"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},en.prototype.updateLaneRefs=function(e,t){this._commandStack.execute("lane.updateRefs",{flowNodeShapes:e,laneShapes:t})},en.prototype.updateCategoryValueRefs=function(e,t){this._commandStack.execute("group.updateRefs",{affectedFlowElements:e,affectedGroupEntries:t})},en.prototype.claimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t,claiming:!0})},en.prototype.unclaimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t})},en.prototype.setColor=function(e,t){e.length||(e=[e]),this._commandStack.execute("element.setColor",{elements:e,colors:t})};function Zy(){}Zy.prototype.layoutConnection=function(e,t){return t=t||{},[t.connectionStart||be(t.source||e.source),t.connectionEnd||be(t.target||e.target)]};var Ac=20,FA=5,Tc=Math.round,Qy=20,HA={"h:h":20,"v:v":20,"h:v":-10,"v:h":-10};function zA(e,t){return!{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/./,v:/./}[t].test(e)}function VA(e,t){return{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/left|right/,v:/top|bottom/}[e].test(t)}function Jy(e,t,n){var i=Zt(t,e,FA),r=n.split(":")[0],o=Tc((t.x-e.x)/2+e.x),a=Tc((t.y-e.y)/2+e.y),s,c,u=VA(r,i),l=/h|r|l/.test(r),p=!1,f=!1;return u?(s=l?{x:o,y:e.y}:{x:e.x,y:a},c=l?"h:h":"v:v"):(p=zA(i,r),c=l?"h:v":"v:h",p?l?(f=a===e.y,s={x:e.x+Ac*(/l/.test(r)?-1:1),y:f?a+Ac:a}):(f=o===e.x,s={x:f?o+Ac:o,y:e.y+Ac*(/t/.test(r)?-1:1)}):s={x:o,y:a}),{waypoints:zp(e,s,c).concat(s),directions:c,turnNextDirections:f}}function GA(e,t,n){return Jy(e,t,n)}function WA(e,t,n){var i=Jy(t,e,ev(n));return{waypoints:i.waypoints.slice().reverse(),directions:ev(i.directions),turnNextDirections:i.turnNextDirections}}function UA(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=zp(e.waypoints[e.waypoints.length-1],t.waypoints[0],r);return{waypoints:o,directions:r}}function ev(e){return e.split(":").reverse().join(":")}function YA(e,t,n){var i=Tc((t.x-e.x)/2+e.x),r=Tc((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 zp(e,t,n){if(n=n||"h:h",!nT(n))throw new Error("unknown directions: <"+n+">: must be specified as <start>:<end> with start/end in { h,v,t,r,b,l }");if(nv(n)){var i=GA(e,t,n),r=WA(e,t,n),o=UA(i,r);return[].concat(i.waypoints,o.waypoints,r.waypoints)}return YA(e,t,n)}function qA(e,t,n){var i=zp(e,t,n);return i.unshift(e),i.push(t),rv(i)}function KA(e,t,n,i,r){var o=r&&r.preferredLayouts||[],a=Xx(o,"straight")[0]||"h:h",s=HA[a]||0,c=Zt(e,t,s),u=tT(c,a);n=n||be(e),i=i||be(t);var l=u.split(":"),p=iv(n,e,l[0],iT(c)),f=iv(i,t,l[1],c);return qA(p,f,u)}function XA(e,t,n,i,r,o){_e(n)&&(r=n,o=i,n=be(e),i=be(t)),o=D({preferredLayouts:[]},o),r=r||[];var a=o.preferredLayouts,s=a.indexOf("straight")!==-1,c;return c=s&&QA(e,t,n,i,o),c||(c=o.connectionEnd&&eT(t,e,i,r),c)||(c=o.connectionStart&&JA(e,t,n,r),c)?c:!o.connectionStart&&!o.connectionEnd&&r&&r.length?r:KA(e,t,n,i,o)}function ZA(e,t,n){return e>=t&&e<=n}function tv(e,t,n){var i={x:"width",y:"height"};return ZA(t[e],n[e],n[e]+n[i[e]])}function QA(e,t,n,i,r){var o={},a,s;return s=Zt(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 JA(e,t,n,i){return Vp(e,t,n,i)}function eT(e,t,n,i){var r=i.slice().reverse();return r=Vp(e,t,n,r),r?r.reverse():null}function Vp(e,t,n,i){function r(l){return l.length<3?!0:l.length>4?!1:!!ct(l,function(p,f){var d=l[f-1];return d&&Qo(p,d)<3})}function o(l,p,f){var d=Ti(p,l);switch(d){case"v":return{x:f.x,y:l.y};case"h":return{x:l.x,y:f.y}}return{x:l.x,y:l.y}}function a(l,p,f){var d;for(d=l.length-2;d!==0;d--)if(Ph(l[d],p,Qy)||Ph(l[d],f,Qy))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=Vp(e,t,n,u)),c&&Ti(c)?null:c}function tT(e,t){if(nv(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 nT(e){return e&&/^h|v|t|r|b|l:h|v|t|r|b|l$/.test(e)}function nv(e){return e&&/t|r|b|l/.test(e)}function iT(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 iv(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 rv(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 rT=-10,oT=40,aT={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},sT={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},Gp={top:"bottom","top-right":"bottom-left","top-left":"bottom-right",right:"left",bottom:"top","bottom-right":"top-left","bottom-left":"top-right",left:"right"},Ta={top:"t",right:"r",bottom:"b",left:"l"};function Mc(e){this._elementRegistry=e}oe(Mc,Zy),Mc.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=ov(r&&r[0],n)),a||(a=ov(r&&r[r.length-1],i)),(v(e,"bpmn:Association")||v(e,"bpmn:DataAssociation"))&&r&&!av(n,i))return[].concat([o],r.slice(1,-1),[a]);var l=ym(n,s)?aT:sT;return v(e,"bpmn:MessageFlow")?c=uT(n,i,l):(v(e,"bpmn:SequenceFlow")||av(n,i))&&(n===i?c={preferredLayouts:mT(n,e,l)}:v(n,"bpmn:BoundaryEvent")?c={preferredLayouts:gT(n,i,a,l)}:Ma(n)||Ma(i)?c={preferredLayouts:l.subProcess,preserveDocking:pT(n)}:v(n,"bpmn:Gateway")?c={preferredLayouts:l.fromGateway}:v(i,"bpmn:Gateway")?c={preferredLayouts:l.toGateway}:c={preferredLayouts:l.default}),c&&(c=D(c,t),u=rv(XA(n,i,o,a,r,c))),u||[o,a]};function cT(e){var t=e.host;return Zt(be(e),t,rT)}function uT(e,t,n){return{preferredLayouts:n.messageFlow,preserveDocking:lT(e,t)}}function lT(e,t){return v(t,"bpmn:Participant")?"source":v(e,"bpmn:Participant")?"target":Ma(t)?"source":Ma(e)||v(t,"bpmn:Event")?"target":v(e,"bpmn:Event")?"source":null}function pT(e){return Ma(e)?"target":"source"}function ov(e,t){return e?e.original||e:be(t)}function av(e,t){return v(t,"bpmn:Activity")&&v(e,"bpmn:BoundaryEvent")&&t.businessObject.isForCompensation}function Ma(e){return v(e,"bpmn:SubProcess")&&je(e)}function Vr(e,t){return e===t}function fT(e,t){return t.indexOf(e)!==-1}function Po(e){var t=/right|left/.exec(e);return t&&t[0]}function Ao(e){var t=/top|bottom/.exec(e);return t&&t[0]}function sv(e,t){return Gp[e]===t}function dT(e,t){var n=Po(e),i=Gp[n];return t.indexOf(i)!==-1}function hT(e,t){var n=Ao(e),i=Gp[n];return t.indexOf(i)!==-1}function cv(e){return e==="right"||e==="left"}function mT(e,t,n){var i=t.waypoints,r=i&&i.length&&Zt(i[0],e);return r==="top"?n.loop.fromTop:r==="right"?n.loop.fromRight:r==="left"?n.loop.fromLeft:n.loop.fromBottom}function gT(e,t,n,i){var r=be(e),o=be(t),a=cT(e),s,c,u=Vr(e.host,t),l=fT(a,["top","right","bottom","left"]),p=Zt(o,r,{x:e.width/2+t.width/2,y:e.height/2+t.height/2});return u?yT(a,l,e,t,n,i):(s=vT(a,p,l,i.isHorizontal),c=_T(a,p,l,i.isHorizontal),[s+":"+c])}function yT(e,t,n,i,r,o){var a=t?e:o.isHorizontal?Ao(e):Po(e),s=Ta[a],c;return t?cv(e)?c=uv("y",n,i,r)?"h":o.boundaryLoop.alternateHorizontalSide:c=uv("x",n,i,r)?"v":o.boundaryLoop.alternateVerticalSide:c=o.boundaryLoop.default,[s+":"+c]}function uv(e,t,n,i){var r=oT;return!(Wp(e,i,n,r)||Wp(e,i,{x:n.x+n.width,y:n.y+n.height},r)||Wp(e,i,be(t),r))}function Wp(e,t,n,i){return Math.abs(t[e]-n[e])<i}function vT(e,t,n,i){if(n)return Ta[e];var r=Ao(e),o=Po(e),a=Ao(t),s=Po(t);if(i){if(Vr(r,a)||sv(o,s))return Ta[r]}else if(Vr(o,s)||sv(r,a))return Ta[o];return Ta[i?o:r]}function _T(e,t,n,i){if(n)return cv(e)?dT(e,t)||Vr(e,t)?"h":"v":hT(e,t)||Vr(e,t)?"v":"h";var r=Ao(e),o=Po(e),a=Ao(t),s=Po(t);return a&&!s?"v":s&&!a?"h":i?Vr(r,a)?"h":"v":Vr(o,s)?"v":"h"}Mc.$inject=["elementRegistry"];function lv(e){return D({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(lv(i)),o.push(lv(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 Jo(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 Up={__init__:["modeling","bpmnUpdater"],__depends__:[$C,eP,nP,iP,wy,rA,aA,fA,Kn,Tp,Ay],bpmnFactory:["type",Zn],bpmnUpdater:["type",On],elementFactory:["type",fr],modeling:["type",en],layouter:["type",Mc],connectionDocking:["type",mr]};var bT=10,pv=50,xT=250;function Yp(e,t,n,i){for(var r;r=wT(e,n,t);)n=i(t,n,r);return n}function qp(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 wT(e,t,n){var i={x:t.x-n.width/2,y:t.y-n.height/2,width:n.width,height:n.height},r=ST(e);return ct(r,function(o){if(o===n)return!1;var a=Zt(o,i,bT);return a==="intersect"})}function ET(e,t){t||(t={});function n(h){return h.source===e?1:-1}var i=t.defaultDistance||pv,r=t.direction||"e",o=t.filter,a=t.getWeight||n,s=t.maxDistance||xT,c=t.reference||"start";o||(o=PT);function u(h,m){return r==="n"?c==="start"?ge(h).top-ge(m).bottom:c==="center"?ge(h).top-be(m).y:ge(h).top-ge(m).top:r==="w"?c==="start"?ge(h).left-ge(m).right:c==="center"?ge(h).left-be(m).x:ge(h).left-ge(m).left:r==="s"?c==="start"?ge(m).top-ge(h).bottom:c==="center"?be(m).y-ge(h).bottom:ge(m).bottom-ge(h).bottom:c==="start"?ge(m).left-ge(h).right:c==="center"?be(m).x-ge(h).right:ge(m).right-ge(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}}),p=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}}),f=l.concat(p).reduce(function(h,m){return h[m.id+"__weight_"+m.weight]=m,h},{}),d=Rn(f,function(h,m){var g=m.distance,R=m.weight;return g<0||g>s||(h[String(g)]||(h[String(g)]=0),h[String(g)]+=1*R,(!h.distance||h[h.distance]<h[String(g)])&&(h.distance=g)),h},{});return d.distance||i}function ST(e){var t=Kp(e);return e.host&&(t=t.concat(Kp(e.host))),e.attachers&&(t=t.concat(e.attachers.reduce(function(n,i){return n.concat(Kp(i))},[]))),t}function Kp(e){return CT(e).concat(RT(e))}function RT(e){return e.incoming.map(function(t){return t.source})}function CT(e){return e.outgoing.map(function(t){return t.target})}function PT(){return!0}var AT=100;function fv(e,t,n){e.on("autoPlace",AT,function(i){var r=i.shape,o=i.source;return TT(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}}fv.$inject=["eventBus","modeling","canvas"];function TT(e,t,n){n||(n={});var i=n.defaultDistance||pv,r=be(e),o=ge(e);return{x:o.right+i+t.width/2,y:r.y}}function dv(e,t){e.on("autoPlace.end",500,function(n){t.select(n.shape)})}dv.$inject=["eventBus","selection"];const MT={__init__:["autoPlaceSelectionBehavior"],autoPlace:["type",fv],autoPlaceSelectionBehavior:["type",dv]};function hv(e,t,n){var i=ym(e,n);if(v(t,"bpmn:TextAnnotation"))return OT(e,t,i);if(De(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"]))return DT(e,t,i);if(v(t,"bpmn:FlowNode"))return kT(e,t,i)}function kT(e,t,n){var i=ge(e),r=be(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=ET(e,{filter:function(d){return v(d,"bpmn:SequenceFlow")},direction:o.directionHint}),s=30,c=o.minDistance,u=o.baseOrientation;v(e,"bpmn:BoundaryEvent")&&(u=Zt(e,e.host,-25),u.indexOf(o.boundaryOrientation)!==-1&&(s*=-1));var l=n?{x:i.right+a+t.width/2,y:r.y+mv(u,c,o)}:{x:r.x+mv(u,c,o),y:i.bottom+a+t.height/2},p={margin:s,minDistance:c},f=n?{y:p}:{x:p};return Yp(e,t,l,qp(f))}function mv(e,t,n){return e.includes(n.start)?-1*t:e.includes(n.end)?t:0}function OT(e,t,n){var i=ge(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};rt(e)&&(r=be(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 Yp(e,t,r,qp(a))}function DT(e,t,n){var i=ge(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 Yp(e,t,r,qp(a))}function gv(e,t){e.on("autoPlace",function(n){var i=n.shape,r=n.source;return hv(r,i,t)})}gv.$inject=["eventBus","elementRegistry"];const kc={__depends__:[MT],__init__:["bpmnAutoPlace"],bpmnAutoPlace:["type",gv]},yv=[mm,oa,Up,kc];function LT(e={}){gd(globalThis,e.dom);const t=document.createElement("div");return document.body.appendChild(t),new lo({container:t,moddleExtensions:e.moddleExtensions??is,additionalModules:[...yv,...e.additionalModules??[]]})}var IT=new Ro("ov"),NT=500;function Yt(e,t,n,i){this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=IT,this._overlayDefaults=D({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=BT(n.getContainer()),this._init()}Yt.$inject=["config.overlays","eventBus","canvas","elementRegistry"],Yt.prototype.get=function(e){if(En(e)&&(e={id:e}),En(e.element)&&(e.element=this._elementRegistry.get(e.element)),e.element){var t=this._getOverlayContainer(e.element,!0);return t?e.type?Le(t.overlays,eo({type:e.type})):t.overlays.slice():[]}else return e.type?Le(this._overlays,eo({type:e.type})):e.id?this._overlays[e.id]:null},Yt.prototype.add=function(e,t,n){if(Vt(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=D({},this._overlayDefaults,n,{id:i,type:t,element:e,html:n.html}),this._addOverlay(n),i},Yt.prototype.remove=function(e){var t=this.get(e)||[];_e(t)||(t=[t]);var n=this;k(t,function(i){var r=n._getOverlayContainer(i.element,!0);if(i&&(pi(i.html),pi(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)}})},Yt.prototype.isShown=function(){return this._overlayRoot.style.display!=="none"},Yt.prototype.show=function(){Oc(this._overlayRoot)},Yt.prototype.hide=function(){Oc(this._overlayRoot,!1)},Yt.prototype.clear=function(){this._overlays={},this._overlayContainers=[],ms(this._overlayRoot)},Yt.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=Ct(t);i=o.x,r=o.y}vv(n,i,r),an(e.html,"data-container-id",t.id)},Yt.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=Ct(i).width:a=i.width,r=t.right*-1+a}if(t.bottom!==void 0){var s;i.waypoints?s=Ct(i).height:s=i.height,o=t.bottom*-1+s}vv(n,r||0,o||0),this._updateOverlayVisibilty(e,this._canvas.viewbox())},Yt.prototype._createOverlayContainer=function(e){var t=ut('<div class="djs-overlays" />');mn(t,{position:"absolute"}),this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},Yt.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";_v(this._overlayRoot,n)},Yt.prototype._getOverlayContainer=function(e,t){var n=ct(this._overlayContainers,function(i){return i.element===e});return!n&&!t?this._createOverlayContainer(e):n},Yt.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)),En(i)&&(i=ut(i)),o=this._getOverlayContainer(n),r=ut('<div class="djs-overlay" data-overlay-id="'+t+'">'),mn(r,{position:"absolute"}),r.appendChild(i),e.type&&mt(r).add("djs-overlay-"+e.type);var a=this._canvas.findRoot(n),s=this._canvas.getRootElement();Oc(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())},Yt.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&&(Bt(r)&&r>t.scale||Bt(o)&&o<t.scale))&&(c=!1),Oc(a,c),this._updateOverlayScale(e,t)},Yt.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),Bt(i)&&t.scale<i&&(a=(1/t.scale||1)*i),Bt(r)&&t.scale>r&&(a=(1/t.scale||1)*r)),Bt(a)&&(s="scale("+a+","+a+")"),_v(o,s)},Yt.prototype._updateOverlaysVisibilty=function(e){var t=this;k(this._overlays,function(n){t._updateOverlayVisibilty(n,e)})},Yt.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});k(o,function(c){t.remove(c.id)});var a=t._getOverlayContainer(r);if(a){pi(a.html);var s=t._overlayContainers.indexOf(a);s!==-1&&t._overlayContainers.splice(s,1)}}),e.on("element.changed",NT,function(i){var r=i.element,o=t._getOverlayContainer(r,!0);o&&(k(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&&mt(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 BT(e){var t=ut('<div class="djs-overlay-container" />');return mn(t,{position:"absolute",width:0,height:0}),e.insertBefore(t,e.firstChild),t}function vv(e,t,n){mn(e,{left:t+"px",top:n+"px"})}function Oc(e,t){e.style.display=t===!1?"none":""}function _v(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach(function(n){e.style[n+"transform"]=t})}const Dc={__init__:["overlays"],overlays:["type",Yt]};function Xp(e,t){t.invoke(K,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)})}oe(Xp,K),Xp.$inject=["canvas","injector"];const $T={__init__:["rootElementsBehavior"],rootElementsBehavior:["type",Xp]};function ka(e){return CSS.escape(e)}var jT={"&":"&","<":"<",">":">",'"':""","'":"'"};function bv(e){return e=""+e,e&&e.replace(/[&<>"']/g,function(t){return jT[t]})}var FT="bjs-breadcrumbs-shown";function xv(e,t,n){var i=ut('<ul class="bjs-breadcrumbs"></ul>'),r=n.getContainer(),o=mt(r);r.appendChild(i);var a=[];e.on("element.changed",function(c){var u=c.element,l=X(u),p=ct(a,function(f){return f===l});p&&s()});function s(c){c&&(a=HT(c));var u=a.flatMap(function(p){var f=n.findRoot(gi(p))||n.findRoot(p.id);if(!f&&v(p,"bpmn:Process")){var d=t.find(function(g){var R=X(g);return R&&R.get("processRef")===p});f=d&&n.findRoot(d.id)}if(!f)return[];var h=bv(p.name||p.id),m=ut('<li><span class="bjs-crumb"><a title="'+h+'">'+h+"</a></span></li>");return m.addEventListener("click",function(){n.setRootElement(f)}),m});i.innerHTML="";var l=u.length>1;o.toggle(FT,l),u.forEach(function(p){i.appendChild(p)})}e.on("root.set",function(c){s(c.element)})}xv.$inject=["eventBus","elementRegistry","canvas"];function HT(e){for(var t=X(e),n=[],i=t;i;i=i.$parent)(v(i,"bpmn:SubProcess")||v(i,"bpmn:Process"))&&n.push(i);return n.reverse()}function wv(e,t){var n=null,i=new zT;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,!(!v(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})}wv.$inject=["eventBus","canvas"];function zT(){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 Ev={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;v(a,"bpmn:SubProcess")&&!o.isExpanded&&n.push(a),GT(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=VT(e),i={x:n.x-Ev.x,y:n.y-Ev.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=Sv(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 Sv(e){return v(e,"bpmndi:BPMNDiagram")?e:Sv(e.$parent)}function VT(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=ge(n.bounds);t.top=Math.min(i.top,t.top),t.left=Math.min(i.left,t.left)}}),Ss(t)}function GT(e,t){var n=e.$parent;return!(!v(n,"bpmn:SubProcess")||n===t.bpmnElement||De(e,["bpmn:DataInputAssociation","bpmn:DataOutputAssociation"]))}var Lc=250,WT='<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>',UT="bjs-drilldown-empty";function gr(e,t,n,i,r){K.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",Lc,function(a){var s=a.shape;o._canDrillDown(s)?o._addOverlay(s):o._removeOverlay(s)},!0),this.reverted("shape.toggleCollapse",Lc,function(a){var s=a.shape;o._canDrillDown(s)?o._addOverlay(s):o._removeOverlay(s)},!0),this.executed(["shape.create","shape.move","shape.delete"],Lc,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"],Lc,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)})})}oe(gr,K),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 v(e,"bpmn:SubProcess")&&t.findRoot(gi(e))},gr.prototype._updateOverlayVisibility=function(e){var t=this._overlays,n=X(e),i=t.get({element:n.id,type:"drilldown"})[0];if(i){var r=n&&n.get("flowElements")&&n.get("flowElements").length;mt(i.html).toggle(UT,!r)}},gr.prototype._addOverlay=function(e){var t=this._canvas,n=this._overlays,i=X(e),r=n.get({element:e,type:"drilldown"});r.length&&this._removeOverlay(e);var o=ut('<button type="button" class="bjs-drilldown">'+WT+"</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(gi(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 YT={__depends__:[Dc,Tp,$T],__init__:["drilldownBreadcrumbs","drilldownOverlayBehavior","drilldownCentering","subprocessCompatibility"],drilldownBreadcrumbs:["type",xv],drilldownCentering:["type",wv],drilldownOverlayBehavior:["type",gr],subprocessCompatibility:["type",Gr]};function yr(e){gt.call(this,e)}oe(yr,gt),yr.prototype._modules=[mm,YT,Dc,Kn,oa],yr.prototype._moddleExtensions={};var Ic="keyboard.keydown",qT="keyboard.keyup",KT=1e3,Rv="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 gn(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(Rv));var i=e&&e.bind!==!1;t.on("canvas.init",function(r){n._target=r.svg,i&&n.bind(),n._fire("init")})}gn.$inject=["config.keyboard","eventBus"],gn.prototype._keydownHandler=function(e){this._keyHandler(e,Ic)},gn.prototype._keyupHandler=function(e){this._keyHandler(e,qT)},gn.prototype._keyHandler=function(e,t){var n;if(!this._isEventIgnored(e)){var i={keyEvent:e};n=this._eventBus.fire(t||Ic,i),n&&e.preventDefault()}},gn.prototype._isEventIgnored=function(e){return!1},gn.prototype.bind=function(e){e&&console.error("unsupported argument <node>",new Error(Rv)),this.unbind(),e=this._node=this._target,Se.bind(e,"keydown",this._keydownHandler),Se.bind(e,"keyup",this._keyupHandler),this._fire("bind")},gn.prototype.getBinding=function(){return this._node},gn.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),Se.unbind(e,"keydown",this._keydownHandler),Se.unbind(e,"keyup",this._keyupHandler)),this._node=null},gn.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},gn.prototype.addListener=function(e,t,n){Gt(e)&&(n=t,t=e,e=KT),this._eventBus.on(n||Ic,e,t)},gn.prototype.removeListener=function(e,t){this._eventBus.off(t||Ic,e)},gn.prototype.hasModifier=gP,gn.prototype.isCmd=Mn,gn.prototype.isShift=vp,gn.prototype.isKey=Ht;var XT=500;function To(e,t){var n=this;e.on("editorActions.init",XT,function(i){var r=i.editorActions;n.registerBindings(t,r)})}To.$inject=["eventBus","keyboard"],To.prototype.registerBindings=function(e,t){function n(i,r){t.isRegistered(i)&&e.addListener(r)}n("undo",function(i){var r=i.keyEvent;if(xP(r))return t.trigger("undo"),!0}),n("redo",function(i){var r=i.keyEvent;if(wP(r))return t.trigger("redo"),!0}),n("copy",function(i){var r=i.keyEvent;if(yP(r))return t.trigger("copy"),!0}),n("paste",function(i){var r=i.keyEvent;if(vP(r))return t.trigger("paste"),!0}),n("duplicate",function(i){var r=i.keyEvent;if(_P(r))return t.trigger("duplicate"),!0}),n("cut",function(i){var r=i.keyEvent;if(bP(r))return t.trigger("cut"),!0}),n("stepZoom",function(i){var r=i.keyEvent;if(Ht(["+","Add","="],r)&&Mn(r))return t.trigger("stepZoom",{value:1}),!0}),n("stepZoom",function(i){var r=i.keyEvent;if(Ht(["-","Subtract"],r)&&Mn(r))return t.trigger("stepZoom",{value:-1}),!0}),n("zoom",function(i){var r=i.keyEvent;if(Ht("0",r)&&Mn(r))return t.trigger("zoom",{value:1}),!0}),n("removeSelection",function(i){var r=i.keyEvent;if(Ht(["Backspace","Delete","Del"],r))return t.trigger("removeSelection"),!0})};const Zp={__init__:["keyboard","keyboardBindings"],keyboard:["type",gn],keyboardBindings:["type",To]};var ZT={moveSpeed:50,moveSpeedAccelerated:200};function Cv(e,t,n){var i=this;this._config=D({},ZT,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})}}Cv.$inject=["config.keyboardMove","keyboard","canvas"];const Pv={__depends__:[Zp],__init__:["keyboardMove"],keyboardMove:["type",Cv]};var QT=15;function Av(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=$r(s),p=ri(l,c);if(!n.dragging&&JT(p)>QT&&(n.dragging=!0,u===0&&ty(e),cc("grab")),n.dragging){var f=n.last||n.start;p=ri(l,f),t.scroll({dx:p.x,dy:p.y}),n.last=l}s.preventDefault()}function o(s){Se.unbind(document,"mousemove",r),Se.unbind(document,"mouseup",o),n=null,ey()}function a(s){if(!Or(s.target,".djs-draggable")){var c=s.button;if(!(c>=2||s.ctrlKey||s.shiftKey||s.altKey))return n={button:c,start:$r(s)},Se.bind(document,"mousemove",r),Se.bind(document,"mouseup",o),!0}}this.isActive=function(){return!!n}}Av.$inject=["eventBus","canvas"];function JT(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}const Tv={__init__:["moveCanvas"],moveCanvas:["type",Av]};function Mv(e,t){var n=ml(e.min),i=ml(e.max),r=Math.abs(n)+Math.abs(i);return r/t}function eM(e,t){return Math.max(e.min,Math.min(e.max,t))}var tM=Math.sign||function(e){return e>=0?1:-1},Qp={min:.2,max:4},kv=10,nM=.1,iM=.75;function _i(e,t,n){e=e||{},this._enabled=!1,this._canvas=n,this._container=n._container,this._handleWheel=vn(this._handleWheel,this),this._totalDelta=0,this._scale=e.scale||iM;var i=this;t.on("canvas.mouseover",function(){i._init(e.enabled!==!1)}),t.on("canvas.mouseout",function(){i._init(!1)})}_i.$inject=["config.zoomScroll","eventBus","canvas"],_i.prototype.scroll=function(t){this._canvas.scroll(t)},_i.prototype.reset=function(){this._canvas.zoom("fit-viewport")},_i.prototype.zoom=function(t,n){var i=Mv(Qp,kv*2);this._totalDelta+=t,Math.abs(this._totalDelta)>nM&&(this._zoom(t,n,i),this._totalDelta=0)},_i.prototype._handleWheel=function(t){if(this._enabled){var n=this._container;t.preventDefault();var i=t.ctrlKey||cg()&&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))*tM(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)}},_i.prototype.stepZoom=function(t,n){var i=Mv(Qp,kv);this._zoom(t,n,i)},_i.prototype._zoom=function(e,t,n){var i=this._canvas,r=e>0?1:-1,o=ml(i.zoom()),a=Math.round(o/n)*n;a+=n*r;var s=Math.pow(10,a);i.zoom(eM(Qp,s),t)},_i.prototype.toggle=function(t){var n=this._container,i=this._handleWheel,r=this._enabled;return typeof t>"u"&&(t=!r),r!==t&&Se[t?"bind":"unbind"](n,"wheel",i,!1),this._enabled=t,t},_i.prototype._init=function(e){this.toggle(e)};const Ov={__init__:["zoomScroll"],zoomScroll:["type",_i]};function Oa(e){yr.call(this,e)}oe(Oa,yr),Oa.prototype._navigationModules=[Pv,Tv,Ov],Oa.prototype._modules=[].concat(yr.prototype._modules,Oa.prototype._navigationModules);function Jp(e){return e&&e[e.length-1]}function Dv(e){return e.y}function Lv(e){return e.x}var rM={left:Lv,center:Lv,right:function(e){return e.x+e.width},top:Dv,middle:Dv,bottom:function(e){return e.y+e.height}};function Mo(e,t){this._modeling=e,this._rules=t}Mo.$inject=["modeling","rules"],Mo.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}},Mo.prototype._isType=function(e,t){return t.indexOf(e)!==-1},Mo.prototype._alignmentPosition=function(e,t){var n=this._getOrientationDetails(e),i=n.axis,r=n.dimension,o={},a={},s=!1,c,u,l;function p(f,d){return Math.round((f[i]+d[i]+d[r])/2)}if(this._isType(e,["left","top"]))o[e]=t[0][i];else if(this._isType(e,["right","bottom"]))l=Jp(t),o[e]=l[i]+l[r];else if(this._isType(e,["center","middle"])){if(k(t,function(f){var d=f[i]+Math.round(f[r]/2);a[d]?a[d].elements.push(f):a[d]={elements:[f],center:d}}),c=ai(a,function(f){return f.elements.length>1&&(s=!0),f.elements.length}),s)return o[e]=Jp(c).center,o;u=t[0],t=ai(t,function(f){return f[i]+f[r]}),l=Jp(t),o[e]=p(u,l)}return o},Mo.prototype.trigger=function(e,t){var n=this._modeling,i,r=Le(e,function(c){return!(c.waypoints||c.host||c.labelTarget)});if(i=this._rules.allowed("elements.align",{elements:r}),_e(i)&&(r=i),!(r.length<2||!i)){var o=rM[t],a=ai(r,o),s=this._alignmentPosition(t,a);n.alignElements(a,s)}};const oM={__init__:["alignElements"],alignElements:["type",Mo]},aM=new Ro;function ko(e){this._scheduled={},e.on("diagram.destroy",()=>{Object.keys(this._scheduled).forEach(t=>{this.cancel(t)})})}ko.$inject=["eventBus"],ko.prototype.schedule=function(e,t=aM.next()){this.cancel(t);const n=this._schedule(e,t);return this._scheduled[t]=n,n.promise},ko.prototype._schedule=function(e,t){const n=sM();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}},ko.prototype.cancel=function(e){const t=this._scheduled[e];t&&(this._cancel(t),this._scheduled[e]=null)},ko.prototype._cancel=function(e){clearTimeout(e.executionId)};function sM(){const e={};return e.promise=new Promise((t,n)=>{e.resolve=t,e.reject=n}),e}const cM={scheduler:["type",ko]};var uM="djs-element-hidden",Nc=".entry",lM=1e3,Iv=8,pM=300;function At(e,t,n,i){this._canvas=e,this._elementRegistry=t,this._eventBus=n,this._scheduler=i,this._current=null,this._init()}At.$inject=["canvas","elementRegistry","eventBus","scheduler"],At.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=_e(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=_e(i.target)?i.target:[i.target];r.includes(n)&&e._updateVisibility()}}),this._container=this._createContainer()},At.prototype._createContainer=function(){var e=ut('<div class="djs-context-pad-parent"></div>');return this._canvas.getContainer().appendChild(e),e},At.prototype.registerProvider=function(e,t){t||(t=e,e=lM),this._eventBus.on("contextPad.getProviders",e,function(n){n.providers.push(t)})},At.prototype.getEntries=function(e){var t=this._getProviders(),n=_e(e)?"getMultiElementContextPadEntries":"getContextPadEntries",i={};return k(t,function(r){if(Gt(r[n])){var o=r[n](e);Gt(o)?i=o(i):k(o,function(a,s){i[s]=a})}}),i},At.prototype.trigger=function(e,t,n){var i=this,r,o,a=t.delegateTarget||t.target;if(!a)return t.preventDefault();if(r=an(a,"data-action"),o=t.originalEvent||t,e==="mouseover"){this._timeout=setTimeout(function(){i._mouseout=i.triggerEntry(r,"hover",o,n)},pM);return}else if(e==="mouseout"){clearTimeout(this._timeout),this._mouseout&&(this._mouseout(),this._mouseout=null);return}return this.triggerEntry(r,e,o,n)},At.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(Gt(s)){if(t==="click")return s(n,r,i)}else if(s[t])return s[t](n,r,i);n.preventDefault()}}}},At.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))}},At.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"contextPad.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},At.prototype._updateAndOpen=function(e){var t=this.getEntries(e),n=this._createHtml(e),i;k(t,function(r,o){var a=r.group||"default",s=ut(r.html||'<div class="entry" draggable="true"></div>'),c;an(s,"data-action",o),c=nt("[data-group="+ka(a)+"]",n),c||(c=ut('<div class="group"></div>'),an(c,"data-group",a),n.appendChild(c)),c.appendChild(s),r.className&&fM(s,r.className),r.title&&an(s,"title",r.title),r.imageUrl&&(i=ut("<img>"),an(i,"src",r.imageUrl),i.style.width="100%",i.style.height="100%",s.appendChild(i))}),mt(n).add("open"),this._current={entries:t,html:n,target:e},this._updatePosition(),this._updateVisibility(),this._eventBus.fire("contextPad.open",{current:this._current})},At.prototype._createHtml=function(e){var t=this,n=ut('<div class="djs-context-pad"></div>');return Pn.bind(n,Nc,"click",function(i){t.trigger("click",i)}),Pn.bind(n,Nc,"dragstart",function(i){t.trigger("dragstart",i)}),Pn.bind(n,Nc,"mouseover",function(i){t.trigger("mouseover",i)}),Pn.bind(n,Nc,"mouseout",function(i){t.trigger("mouseout",i)}),Se.bind(n,"mousedown",function(i){i.stopPropagation()}),this._container.appendChild(n),this._eventBus.fire("contextPad.create",{target:e,pad:n}),n},At.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()&&hM(this._current.target,e)?t=this._current.html:t=this._createHtml(e),{html:t}},At.prototype.close=function(){this.isOpen()&&(clearTimeout(this._timeout),this._container.innerHTML="",this._eventBus.fire("contextPad.close",{current:this._current}),this._current=null)},At.prototype.isOpen=function(e){var t=this._current;if(!t)return!1;if(!e)return!0;var n=t.target;return _e(e)!==_e(n)?!1:_e(e)?e.length===n.length&&Cr(e,function(i){return n.includes(i)}):n===e},At.prototype.isShown=function(){return this.isOpen()&&mt(this._current.html).has("open")},At.prototype.show=function(){this.isOpen()&&(mt(this._current.html).add("open"),this._updatePosition(),this._eventBus.fire("contextPad.show",{current:this._current}))},At.prototype.hide=function(){this.isOpen()&&(mt(this._current.html).remove("open"),this._eventBus.fire("contextPad.hide",{current:this._current}))},At.prototype._getPosition=function(e){if(!_e(e)&&rt(e)){var t=this._canvas.viewbox(),n=dM(e),i=n.x*t.scale-t.x*t.scale,r=n.y*t.scale-t.y*t.scale;return{left:i+Iv*this._canvas.zoom(),top:r}}var o=this._canvas.getContainer(),a=o.getBoundingClientRect(),s=this._getTargetBounds(e);return{left:s.right-a.left+Iv*this._canvas.zoom(),top:s.top-a.top}},At.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")},At.prototype._updateVisibility=function(){const e=()=>{if(this.isOpen()){var t=this,n=this._current.target,i=_e(n)?n:[n],r=i.some(function(o){return t._canvas.hasMarker(o,uM)});r?t.hide():t.show()}};this._scheduler.schedule(e,"ContextPad#_updateVisibility")},At.prototype._getTargetBounds=function(e){var t=this,n=_e(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 fM(e,t){var n=mt(e);t=_e(t)?t:t.split(/\s+/g),t.forEach(function(i){n.add(i)})}function dM(e){return e.waypoints[e.waypoints.length-1]}function hM(e,t){return e=_e(e)?e:[e],t=_e(t)?t:[t],e.length===t.length&&Cr(e,function(n){return t.includes(n)})}const Nv={__depends__:[sc,cM,Dc],contextPad:["type",At]};var Bc,vt,Bv,vr,$v,jv,Fv,ef,$c,Da,Hv,tf,nf,rf,jc={},Fc=[],mM=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,Hc=Array.isArray;function ji(e,t){for(var n in t)e[n]=t[n];return e}function of(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function zv(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?Bc.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 zc(e,a,i,r,null)}function zc(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??++Bv,__i:-1,__u:0};return r==null&&vt.vnode!=null&&vt.vnode(o),o}function Vc(e){return e.children}function Gc(e,t){this.props=e,this.context=t}function Wr(e,t){if(t==null)return e.__?Wr(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"?Wr(e):null}function gM(e){if(e.__P&&e.__d){var t=e.__v,n=t.__e,i=[],r=[],o=ji({},t);o.__v=t.__v+1,vt.vnode&&vt.vnode(o),af(e.__P,o,t,e.__n,e.__P.namespaceURI,32&t.__u?[n]:null,i,n??Wr(t),!!(32&t.__u),r),o.__v=t.__v,o.__.__k[o.__i]=o,Xv(i,o,r),t.__e=t.__=null,o.__e!=n&&Vv(o)}}function Vv(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}),Vv(e)}function Gv(e){(!e.__d&&(e.__d=!0)&&vr.push(e)&&!Wc.__r++||$v!=vt.debounceRendering)&&(($v=vt.debounceRendering)||jv)(Wc)}function Wc(){try{for(var e,t=1;vr.length;)vr.length>t&&vr.sort(Fv),e=vr.shift(),t=vr.length,gM(e)}finally{vr.length=Wc.__r=0}}function Wv(e,t,n,i,r,o,a,s,c,u,l){var p,f,d,h,m,g,R=i&&i.__k||Fc,w=t.length;for(c=yM(n,t,R,c,w),p=0;p<w;p++)(d=n.__k[p])!=null&&(f=d.__i!=-1&&R[d.__i]||jc,d.__i=p,g=af(e,d,f,r,o,a,s,c,u,l),h=d.__e,d.ref&&f.ref!=d.ref&&(f.ref&&sf(f.ref,null,d),l.push(d.ref,d.__c||h,d)),m==null&&h!=null&&(m=h),4&d.__u?(c=Uv(d,c,e),f.__e&&(f.__e=null)):typeof d.type=="function"&&g!==void 0?c=g:h&&(c=h.nextSibling),d.__u&=-7);return n.__e=m,c}function yM(e,t,n,i,r){var o,a,s,c,u,l=n.length,p=l,f=0;for(e.__k=new Array(r),o=0;o<r;o++)(a=t[o])!=null&&typeof a!="boolean"&&typeof a!="function"?(typeof a=="string"||typeof a=="number"||typeof a=="bigint"||a.constructor==String?a=e.__k[o]=zc(null,a,null,null,null):Hc(a)?a=e.__k[o]=zc(Vc,{children:a},null,null,null):a.constructor===void 0&&a.__b>0?a=e.__k[o]=zc(a.type,a.props,a.key,a.ref?a.ref:null,a.__v):e.__k[o]=a,c=o+f,a.__=e,a.__b=e.__b+1,s=null,(u=a.__i=vM(a,n,c,p))!=-1&&(p--,(s=n[u])&&(s.__u|=2)),s==null||s.__v==null?(u==-1&&(r>l?f--:r<l&&f++),typeof a.type!="function"&&(a.__u|=4)):u!=c&&(u==c-1?f--:u==c+1?f++:(u>c?f--:f++,a.__u|=4))):e.__k[o]=null;if(p)for(o=0;o<l;o++)(s=n[o])!=null&&(2&s.__u)==0&&(s.__e==i&&(i=Wr(s)),Qv(s,s));return i}function Uv(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=Uv(i[r],t,n));return t}e.__e!=t&&(t&&e.type&&!t.parentNode&&(t=Wr(e)),t=n.insertBefore(e.__e,t||null));do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function vM(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 Yv(e,t,n){t[0]=="-"?e.setProperty(t,n??""):e[t]=n==null?"":typeof n!="number"||mM.test(t)?n:n+"px"}function Uc(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||Yv(e.style,t,"");if(n)for(t in n)i&&n[t]==i[t]||Yv(e.style,t,n[t])}else if(t[0]=="o"&&t[1]=="n")o=t!=(t=t.replace(Hv,"$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[Da]=i[Da]:(n[Da]=tf,e.addEventListener(t,o?rf:nf,o)):e.removeEventListener(t,o?rf:nf,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 qv(e){return function(t){if(this.l){var n=this.l[t.type+e];if(t[$c]==null)t[$c]=tf++;else if(t[$c]<n[Da])return;return n(vt.event?vt.event(t):t)}}}function af(e,t,n,i,r,o,a,s,c,u){var l,p,f,d,h,m,g,R,w,b,x,S,M,L,A,H,V=t.type;if(t.constructor!==void 0)return null;128&n.__u&&(c=!!(32&n.__u),o=[s=t.__e=n.__e]),(l=vt.__b)&&l(t);e:if(typeof V=="function"){p=a.length;try{if(w=t.props,b=V.prototype&&V.prototype.render,x=(l=V.contextType)&&i[l.__c],S=l?x?x.props.value:l.__:i,n.__c?R=(f=t.__c=n.__c).__=f.__E:(b?t.__c=f=new V(w,S):(t.__c=f=new Gc(w,S),f.constructor=V,f.render=bM),x&&x.sub(f),f.state||(f.state={}),f.__n=i,d=f.__d=!0,f.__h=[],f._sb=[]),b&&f.__s==null&&(f.__s=f.state),b&&V.getDerivedStateFromProps!=null&&(f.__s==f.state&&(f.__s=ji({},f.__s)),ji(f.__s,V.getDerivedStateFromProps(w,f.__s))),h=f.props,m=f.state,f.__v=t,d)b&&V.getDerivedStateFromProps==null&&f.componentWillMount!=null&&f.componentWillMount(),b&&f.componentDidMount!=null&&f.__h.push(f.componentDidMount);else{if(b&&V.getDerivedStateFromProps==null&&w!==h&&f.componentWillReceiveProps!=null&&f.componentWillReceiveProps(w,S),t.__v==n.__v||!f.__e&&f.shouldComponentUpdate!=null&&f.shouldComponentUpdate(w,f.__s,S)===!1){t.__v!=n.__v&&(f.props=w,f.state=f.__s,f.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(N){N&&(N.__=t)}),Fc.push.apply(f.__h,f._sb),f._sb=[],f.__h.length&&a.push(f),s=Wr(n);break e}f.componentWillUpdate!=null&&f.componentWillUpdate(w,f.__s,S),b&&f.componentDidUpdate!=null&&f.__h.push(function(){f.componentDidUpdate(h,m,g)})}if(f.context=S,f.props=w,f.__P=e,f.__e=!1,M=vt.__r,L=0,b)f.state=f.__s,f.__d=!1,M&&M(t),l=f.render(f.props,f.state,f.context),Fc.push.apply(f.__h,f._sb),f._sb=[];else do f.__d=!1,M&&M(t),l=f.render(f.props,f.state,f.context),f.state=f.__s;while(f.__d&&++L<25);f.state=f.__s,f.getChildContext!=null&&(i=ji(ji({},i),f.getChildContext())),b&&!d&&f.getSnapshotBeforeUpdate!=null&&(g=f.getSnapshotBeforeUpdate(h,m)),A=l!=null&&l.type===Vc&&l.key==null?Zv(l.props.children):l,s=Wv(e,Hc(A)?A:[A],t,n,i,r,o,a,s,c,u),f.base=t.__e,t.__u&=-161,f.__h.length&&a.push(f),R&&(f.__E=f.__=null)}catch(N){if(a.length=p,t.__v=null,c||o!=null){if(N.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(H=o.length;H--;)of(o[H])}else t.__e=n.__e;t.__k==null&&(t.__k=n.__k||[]),N.then||Kv(t),vt.__e(N,t,n)}}else o==null&&t.__v==n.__v?(t.__k=n.__k,t.__e=n.__e):s=t.__e=_M(n.__e,t,n,i,r,o,a,c,u);return(l=vt.diffed)&&l(t),128&t.__u?void 0:s}function Kv(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some(Kv))}function Xv(e,t,n){for(var i=0;i<n.length;i++)sf(n[i],n[++i],n[++i]);vt.__c&&vt.__c(t,e),e.some(function(r){try{e=r.__h,r.__h=[],e.some(function(o){o.call(r)})}catch(o){vt.__e(o,r.__v)}})}function Zv(e){return typeof e!="object"||e==null||e.__b>0?e:Hc(e)?e.map(Zv):e.constructor!==void 0?null:ji({},e)}function _M(e,t,n,i,r,o,a,s,c){var u,l,p,f,d,h,m,g=n.props||jc,R=t.props,w=t.type;if(w=="svg"?r="http://www.w3.org/2000/svg":w=="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==!!w&&(w?d.localName==w:d.nodeType==3)){e=d,o[u]=null;break}}if(e==null){if(w==null)return document.createTextNode(R);e=document.createElementNS(r,w,R.is&&R),s&&(vt.__m&&vt.__m(t,o),s=!1),o=null}if(w==null)g===R||s&&e.data==R||(e.data=R);else{if(o=w=="textarea"&&R.defaultValue!=null?null:o&&Bc.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"?p=d:u=="children"||u in R||u=="value"&&"defaultValue"in R||u=="checked"&&"defaultChecked"in R||Uc(e,u,null,d,r);for(u in R)d=R[u],u=="children"?f=d:u=="dangerouslySetInnerHTML"?l=d:u=="value"?h=d:u=="checked"?m=d:s&&typeof d!="function"||g[u]===d||Uc(e,u,d,g[u],r);if(l)s||p&&(l.__html==p.__html||l.__html==e.innerHTML)||(e.innerHTML=l.__html),t.__k=[];else if(p&&(e.innerHTML=""),Wv(t.type=="template"?e.content:e,Hc(f)?f:[f],t,n,i,w=="foreignObject"?"http://www.w3.org/1999/xhtml":r,o,a,o?o[0]:n.__k&&Wr(n,0),s,c),o!=null)for(u=o.length;u--;)of(o[u]);s&&w!="textarea"||(u="value",w=="progress"&&h==null?e.removeAttribute("value"):h!=null&&(h!==e[u]||w=="progress"&&!h||w=="option"&&h!=g[u])&&Uc(e,u,h,g[u],r),u="checked",m!=null&&m!=e[u]&&Uc(e,u,m,g[u],r))}return e}function sf(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){vt.__e(r,n)}}function Qv(e,t,n){var i,r;if(vt.unmount&&vt.unmount(e),(i=e.ref)&&(i.current&&i.current!=e.__e||sf(i,null,t)),(i=e.__c)!=null){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(o){vt.__e(o,t)}i.base=i.__P=i.__n=null}if(i=e.__k)for(r=0;r<i.length;r++)i[r]&&Qv(i[r],t,n||typeof e.type!="function");n||of(e.__e),e.__c=e.__=e.__e=void 0}function bM(e,t,n){return this.constructor(e,n)}function Jv(e,t,n){var i,r,o,a;t==document&&(t=document.documentElement),vt.__&&vt.__(e,t),r=(i=!1)?null:t.__k,o=[],a=[],af(t,e=t.__k=zv(Vc,null,[e]),r||jc,jc,t.namespaceURI,r?null:t.firstChild?Bc.call(t.childNodes):null,o,r?r.__e:t.firstChild,i,a),Xv(o,e,a),e.props.children=null}Bc=Fc.slice,vt={__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}},Bv=0,Gc.prototype.setState=function(e,t){var n;n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=ji({},this.state),typeof e=="function"&&(e=e(ji({},n),this.props)),e&&ji(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),Gv(this))},Gc.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),Gv(this))},Gc.prototype.render=Vc,vr=[],jv=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Fv=function(e,t){return e.__v.__b-t.__v.__b},Wc.__r=0,ef=Math.random().toString(8),$c="__d"+ef,Da="__a"+ef,Hv=/(PointerCapture)$|Capture$/i,tf=0,nf=qv(!1),rf=qv(!0);var e_=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,e_(e,s,n,["",null])),i.push(r),s[0]?t[0]|=2:(t[o-2]=0,t[o]=r)):i.push(s)}return i},t_=new Map;function xM(e){var t=t_.get(this);return t||(t=new Map,t_.set(this,t)),(t=e_(this,t.get(e)||(t.set(e,t=(function(n){for(var i,r,o=1,a="",s="",c=[0],u=function(f){o===1&&(f||(a=a.replace(/^\s*\n\s*|\s*\n\s*$/g,"")))?c.push(0,f,a):o===3&&(f||a)?(c.push(3,f,a),o=2):o===2&&a==="..."&&f?c.push(4,f,0):o===2&&a&&!f?c.push(5,0,!0,a):o>=5&&((a||!f&&o===5)&&(c.push(o,0,a,r),o=6),f&&(c.push(o,f,0,r),o=6)),a=""},l=0;l<n.length;l++){l&&(o===1&&u(),u(l));for(var p=0;p<n[l].length;p++)i=n[l][p],o===1?i==="<"?(u(),c=[c],o=3):a+=i:o===4?a==="--"&&i===">"?(o=1,a=""):a=i+a[0]:s?i===s?s="":a+=i:i==='"'||i==="'"?s=i:i===">"?(u(),o=1):o&&(i==="="?(o=5,r=a,a=""):i==="/"&&(o<5||n[l][p+1]===">")?(u(),o===3&&(c=c[0]),o=c,(c=c[0]).push(2,0,o),o=0):i===" "||i===" "||i===`
|
|
11
|
-
`||i==="\r"?(u(),o=2):a+=i),o===3&&a==="!--"&&(o=4,c=c[0])}return u(),c})(e)),t),arguments,[])).length>1?t:t[0]}var at=
|
|
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}},yt.prototype._setDefinitions=function(e){this._definitions=e},yt.prototype.getModules=function(){return this._modules},yt.prototype.clear=function(){this.getDefinitions()&&ir.prototype.clear.call(this)},yt.prototype.destroy=function(){ir.prototype.destroy.call(this),pi(this._container)},yt.prototype.on=function(e,t,n,i){return this.get("eventBus").on(e,t,n,i)},yt.prototype.off=function(e,t){this.get("eventBus").off(e,t)},yt.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=nt(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},yt.prototype.getDefinitions=function(){return this._definitions},yt.prototype.detach=function(){const e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))},yt.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=L(si(n,["additionalModules"]),{canvas:L({},n.canvas,{container:e}),modules:a});ir.call(this,s),n&&n.container&&this.attachTo(n.container)},yt.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)},yt.prototype._createContainer=function(e){const t=ut('<div class="bjs-container"></div>');return gn(t,{width:um(e.width),height:um(e.height),position:e.position}),t},yt.prototype._createModdle=function(e){const t=L({},this._moddleExtensions,e.moddleExtensions);return new hd(t)},yt.prototype._modules=[];function Ts(e,t){return e.warnings=t,e}function sS(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 cS={width:"100%",height:"100%",position:"relative"};function um(e){return e+(Se(e)?"px":"")}function uS(e,t){return t&&ct(e.diagrams,function(n){return n.id===t})||null}function lS(e){const n='<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" >'+om+"</a>",i=ut(n);gn(nt("svg",i),am),gn(i,sm,{position:"absolute",bottom:"15px",right:"15px",zIndex:"100"}),e.appendChild(i),Ce.bind(i,"click",function(r){aS(),r.preventDefault()})}function lo(e){yt.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)}ae(lo,yt),lo.prototype._createModdle=function(e){var t=yt.prototype._createModdle.call(this,e);return t.ids=new li([32,36,1]),t},lo.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 Fe(e,t){return v(e,"bpmn:CallActivity")?!1:v(e,"bpmn:SubProcess")?(t=t||Ge(e),t&&v(t,"bpmndi:BPMNPlane")?!0:t&&!!t.isExpanded):v(e,"bpmn:Participant")?!!Z(e).processRef:!0}function Ut(e){if(!(!v(e,"bpmn:Participant")&&!v(e,"bpmn:Lane"))){var t=Ge(e).isHorizontal;return t===void 0?!0:t}}function pS(e){return e&&Z(e).isInterrupting!==!1}function un(e){return e&&!!Z(e).triggeredByEvent}function po(e,t){var n=Z(e).eventDefinitions;return Wi(n,function(i){return v(i,t)})}function fS(e){return po(e,"bpmn:ErrorEventDefinition")}function dS(e){return po(e,"bpmn:EscalationEventDefinition")}function hS(e){return po(e,"bpmn:CompensateEventDefinition")}var Nr={width:90,height:20},lm=15;function rr(e){return v(e,"bpmn:Event")||v(e,"bpmn:Gateway")||v(e,"bpmn:DataStoreReference")||v(e,"bpmn:DataObjectReference")||v(e,"bpmn:DataInput")||v(e,"bpmn:DataOutput")||v(e,"bpmn:SequenceFlow")||v(e,"bpmn:MessageFlow")||v(e,"bpmn:Group")}function Ms(e){return De(e.label)}function mS(e){var t=e.length/2-1,n=e[Math.floor(t)],i=e[Math.ceil(t+.01)],r=gS(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-=lm:a+=lm,{x:a,y:s}}function gS(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?mS(e.waypoints):v(e,"bpmn:Group")?{x:e.x+e.width/2,y:e.y+Nr.height/2}:{x:e.x+e.width/2,y:e.y+e.height+Nr.height/2}}function yS(e,t){var n,i,r,o=e.label;return o&&o.bounds?(r=o.bounds,i={width:Math.max(Nr.width,r.width),height:r.height},n={x:r.x+r.width/2,y:r.y+r.height/2}):(n=dl(t),i=Nr),L({x:n.x-i.width/2,y:n.y-i.height/2},i)}function pm(e){if(v(e,"bpmn:FlowElement")||v(e,"bpmn:Participant")||v(e,"bpmn:Lane")||v(e,"bpmn:SequenceFlow")||v(e,"bpmn:MessageFlow")||v(e,"bpmn:DataInput")||v(e,"bpmn:DataOutput"))return"name";if(v(e,"bpmn:TextAnnotation"))return"text";if(v(e,"bpmn:Group"))return"categoryValueRef"}function vS(e){var t=e.categoryValueRef;return t&&t.value||""}function Hn(e){var t=e.businessObject,n=pm(t);if(n)return n==="categoryValueRef"?vS(t):t[n]||""}function _S(e,t){var n=e.businessObject,i=pm(n);if(i)if(i==="categoryValueRef"){if(!n[i])return e;n[i].value=t}else n[i]=t;return e}function bS(e){return De(e)&&rr(e.labelTarget)}var fo=7;function fm(e){let t=[];return k(e.incoming,n=>{v(n,"bpmn:Association")&&v(n.source,"bpmn:TextAnnotation")&&t.push({annotation:n.source,association:n})}),k(e.outgoing,n=>{v(n,"bpmn:Association")&&v(n.target,"bpmn:TextAnnotation")&&t.push({annotation:n.target,association:n})}),t}function na(e){const t=new Map;return k(al(e),n=>{k(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 hl="hsl(225, 10%, 15%)",xS="white";function mi(e,t){return Wi(e.eventDefinitions,function(n){return n.$type===t})}function wS(e){return e.$type==="bpmn:IntermediateThrowEvent"||e.$type==="bpmn:EndEvent"}function ES(e){var t=e.dataObjectRef;return e.isCollection||t&&t.isCollection}function je(e,t,n){var i=Ge(e);return n||i.get("color:background-color")||i.get("bioc:fill")||t||xS}function re(e,t,n){var i=Ge(e);return n||i.get("color:border-color")||i.get("bioc:stroke")||t||hl}function ia(e,t,n,i){var r=Ge(e),o=r.get("label");return i||o&&o.get("color:color")||t||re(e,n)}function dm(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 ml(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 SS(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 RS(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 ra(e,t={}){return{width:Wn(e,t),height:An(e,t)}}function Wn(e,t={}){return En(t,"width")?t.width:e.width}function An(e,t={}){return En(t,"height")?t.height:e.height}var CS=new li,PS=10,ks=3,AS=1.5,Ds=10,TS=4,ho=.95,MS=1,kS=.25;function Br(e,t,n,i,r,o,a){Ai.call(this,t,a);var s=e&&e.defaultFillColor,c=e&&e.defaultStrokeColor,u=e&&e.defaultLabelColor;function l(P){return n.computeStyle(P,{strokeLinecap:"round",strokeLinejoin:"round",stroke:hl,strokeWidth:2,fill:"white"})}function f(P){return n.computeStyle(P,["no-fill"],{strokeLinecap:"round",strokeLinejoin:"round",stroke:hl,strokeWidth:2})}function p(P,_){var{ref:y={x:0,y:0},scale:D=1,element:B,parentGfx:W=r._svg}=_,ce=me("marker",{id:P,viewBox:"0 0 20 20",refX:y.x,refY:y.y,markerWidth:20*D,markerHeight:20*D,orient:"auto"});Pe(ce,B);var Te=nt(":scope > defs",W);Te||(Te=me("defs"),Pe(W,Te)),Pe(Te,ce)}function d(P,_,y,D){var B=CS.nextPrefixed("marker-");return h(P,B,_,y,D),"url(#"+B+")"}function h(P,_,y,D,B){if(y==="sequenceflow-end"){var W=me("path",{d:"M 1 5 L 11 10 L 1 15 Z",...l({fill:B,stroke:B,strokeWidth:1})});p(_,{element:W,ref:{x:11,y:10},scale:.5,parentGfx:P})}if(y==="messageflow-start"){var ce=me("circle",{cx:6,cy:6,r:3.5,...l({fill:D,stroke:B,strokeWidth:1,strokeDasharray:[1e4,1]})});p(_,{element:ce,ref:{x:6,y:6},parentGfx:P})}if(y==="messageflow-end"){var Te=me("path",{d:"m 1 5 l 0 -3 l 7 3 l -7 3 z",...l({fill:D,stroke:B,strokeWidth:1,strokeDasharray:[1e4,1]})});p(_,{element:Te,ref:{x:8.5,y:5},parentGfx:P})}if(y==="association-start"){var Ye=me("path",{d:"M 11 5 L 1 10 L 11 15",...f({fill:"none",stroke:B,strokeWidth:1.5,strokeDasharray:[1e4,1]})});p(_,{element:Ye,ref:{x:1,y:10},scale:.5,parentGfx:P})}if(y==="association-end"){var pt=me("path",{d:"M 1 5 L 11 10 L 1 15",...f({fill:"none",stroke:B,strokeWidth:1.5,strokeDasharray:[1e4,1]})});p(_,{element:pt,ref:{x:11,y:10},scale:.5,parentGfx:P})}if(y==="conditional-flow-marker"){var it=me("path",{d:"M 0 10 L 8 6 L 16 10 L 8 14 Z",...l({fill:D,stroke:B})});p(_,{element:it,ref:{x:-1,y:10},scale:.5,parentGfx:P})}if(y==="conditional-default-flow-marker"){var It=me("path",{d:"M 6 4 L 10 16",...l({stroke:B,fill:"none"})});p(_,{element:It,ref:{x:0,y:10},scale:.5,parentGfx:P})}}function m(P,_,y,D,B={}){Gt(D)&&(B=D,D=0),D=D||0,B=l(B);var W=_/2,ce=y/2,Te=me("circle",{cx:W,cy:ce,r:Math.round((_+y)/4-D),...B});return Pe(P,Te),Te}function g(P,_,y,D,B,W){Gt(B)&&(W=B,B=0),B=B||0,W=l(W);var ce=me("rect",{x:B,y:B,width:_-B*2,height:y-B*2,rx:D,ry:D,...W});return Pe(P,ce),ce}function R(P,_,y,D){var B=_/2,W=y/2,ce=[{x:B,y:0},{x:_,y:W},{x:B,y},{x:0,y:W}],Te=ce.map(function(pt){return pt.x+","+pt.y}).join(" ");D=l(D);var Ye=me("polygon",{...D,points:Te});return Pe(P,Ye),Ye}function w(P,_,y,D){y=f(y);var B=Ko(_,y,D);return Pe(P,B),B}function b(P,_,y){return w(P,_,y,5)}function x(P,_,y){y=f(y);var D=me("path",{...y,d:_});return Pe(P,D),D}function S(P,_,y,D){return x(_,y,L({"data-marker":P},D))}function M(P){return Lt[P]}function N(P){return function(_,y,D){return M(P)(_,y,D)}}var T={"bpmn:MessageEventDefinition":function(P,_,y={},D){var B=i.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.235,my:.315}}),W=D?re(_,c,y.stroke):je(_,s,y.fill),ce=D?je(_,s,y.fill):re(_,c,y.stroke),Te=x(P,B,{fill:W,stroke:ce,strokeWidth:1});return Te},"bpmn:TimerEventDefinition":function(P,_,y={}){var D=y.width||_.width,B=y.height||_.height,W=y.width?1:2,ce=m(P,D,B,.2*B,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke),strokeWidth:W}),Te=i.getScaledPath("EVENT_TIMER_WH",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:D,containerHeight:B,position:{mx:.5,my:.5}});x(P,Te,{stroke:re(_,c,y.stroke),strokeWidth:W});for(var Ye=0;Ye<12;Ye++){var pt=i.getScaledPath("EVENT_TIMER_LINE",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:D,containerHeight:B,position:{mx:.5,my:.5}}),it=D/2,It=B/2;x(P,pt,{strokeWidth:1,stroke:re(_,c,y.stroke),transform:"rotate("+Ye*30+","+It+","+it+")"})}return ce},"bpmn:EscalationEventDefinition":function(P,_,y={},D){var B=i.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.5,my:.2}}),W=D?re(_,c,y.stroke):je(_,s,y.fill);return x(P,B,{fill:W,stroke:re(_,c,y.stroke),strokeWidth:1})},"bpmn:ConditionalEventDefinition":function(P,_,y={}){var D=i.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.5,my:.222}});return x(P,D,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke),strokeWidth:1})},"bpmn:LinkEventDefinition":function(P,_,y={},D){var B=i.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:.57,my:.263}}),W=D?re(_,c,y.stroke):je(_,s,y.fill);return x(P,B,{fill:W,stroke:re(_,c,y.stroke),strokeWidth:1})},"bpmn:ErrorEventDefinition":function(P,_,y={},D){var B=i.getScaledPath("EVENT_ERROR",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.2,my:.722}}),W=D?re(_,c,y.stroke):je(_,s,y.fill);return x(P,B,{fill:W,stroke:re(_,c,y.stroke),strokeWidth:1})},"bpmn:CancelEventDefinition":function(P,_,y={},D){var B=i.getScaledPath("EVENT_CANCEL_45",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:.638,my:-.055}}),W=D?re(_,c,y.stroke):"none",ce=x(P,B,{fill:W,stroke:re(_,c,y.stroke),strokeWidth:1});return im(ce,45),ce},"bpmn:CompensateEventDefinition":function(P,_,y={},D){var B=i.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.22,my:.5}}),W=D?re(_,c,y.stroke):je(_,s,y.fill);return x(P,B,{fill:W,stroke:re(_,c,y.stroke),strokeWidth:1})},"bpmn:SignalEventDefinition":function(P,_,y={},D){var B=i.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.5,my:.2}}),W=D?re(_,c,y.stroke):je(_,s,y.fill);return x(P,B,{strokeWidth:1,fill:W,stroke:re(_,c,y.stroke)})},"bpmn:MultipleEventDefinition":function(P,_,y={},D){var B=i.getScaledPath("EVENT_MULTIPLE",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.211,my:.36}}),W=D?re(_,c,y.stroke):je(_,s,y.fill);return x(P,B,{fill:W,stroke:re(_,c,y.stroke),strokeWidth:1})},"bpmn:ParallelMultipleEventDefinition":function(P,_,y={}){var D=i.getScaledPath("EVENT_PARALLEL_MULTIPLE",{xScaleFactor:1.2,yScaleFactor:1.2,containerWidth:y.width||_.width,containerHeight:y.height||_.height,position:{mx:.458,my:.194}});return x(P,D,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke),strokeWidth:1})},"bpmn:TerminateEventDefinition":function(P,_,y={}){var D=m(P,_.width,_.height,8,{fill:re(_,c,y.stroke),stroke:re(_,c,y.stroke),strokeWidth:4});return D}};function H(P,_,y={},D){var B=Z(P),W=wS(B),ce=D||P;return B.get("eventDefinitions")&&B.get("eventDefinitions").length>1?B.get("parallelMultiple")?T["bpmn:ParallelMultipleEventDefinition"](_,ce,y,W):T["bpmn:MultipleEventDefinition"](_,ce,y,W):mi(B,"bpmn:MessageEventDefinition")?T["bpmn:MessageEventDefinition"](_,ce,y,W):mi(B,"bpmn:TimerEventDefinition")?T["bpmn:TimerEventDefinition"](_,ce,y,W):mi(B,"bpmn:ConditionalEventDefinition")?T["bpmn:ConditionalEventDefinition"](_,ce,y,W):mi(B,"bpmn:SignalEventDefinition")?T["bpmn:SignalEventDefinition"](_,ce,y,W):mi(B,"bpmn:EscalationEventDefinition")?T["bpmn:EscalationEventDefinition"](_,ce,y,W):mi(B,"bpmn:LinkEventDefinition")?T["bpmn:LinkEventDefinition"](_,ce,y,W):mi(B,"bpmn:ErrorEventDefinition")?T["bpmn:ErrorEventDefinition"](_,ce,y,W):mi(B,"bpmn:CancelEventDefinition")?T["bpmn:CancelEventDefinition"](_,ce,y,W):mi(B,"bpmn:CompensateEventDefinition")?T["bpmn:CompensateEventDefinition"](_,ce,y,W):mi(B,"bpmn:TerminateEventDefinition")?T["bpmn:TerminateEventDefinition"](_,ce,y,W):null}var V={ParticipantMultiplicityMarker:function(P,_,y={}){var D=Wn(_,y),B=An(_,y),W=i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:D,containerHeight:B,position:{mx:(D/2-6)/D,my:(B-15)/B}});S("participant-multiplicity",P,W,{strokeWidth:2,fill:je(_,s,y.fill),stroke:re(_,c,y.stroke)})},SubProcessMarker:function(P,_,y={}){var D=g(P,14,14,0,{strokeWidth:1,fill:je(_,s,y.fill),stroke:re(_,c,y.stroke)});Jt(D,_.width/2-7.5,_.height-20);var B=i.getScaledPath("MARKER_SUB_PROCESS",{xScaleFactor:1.5,yScaleFactor:1.5,containerWidth:_.width,containerHeight:_.height,position:{mx:(_.width/2-7.5)/_.width,my:(_.height-20)/_.height}});S("sub-process",P,B,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke)})},ParallelMarker:function(P,_,y){var D=Wn(_,y),B=An(_,y),W=i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:D,containerHeight:B,position:{mx:(D/2+y.parallel)/D,my:(B-20)/B}});S("parallel",P,W,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke)})},SequentialMarker:function(P,_,y){var D=i.getScaledPath("MARKER_SEQUENTIAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:(_.width/2+y.seq)/_.width,my:(_.height-19)/_.height}});S("sequential",P,D,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke)})},CompensationMarker:function(P,_,y){var D=i.getScaledPath("MARKER_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:(_.width/2+y.compensation)/_.width,my:(_.height-13)/_.height}});S("compensation",P,D,{strokeWidth:1,fill:je(_,s,y.fill),stroke:re(_,c,y.stroke)})},LoopMarker:function(P,_,y){var D=Wn(_,y),B=An(_,y),W=i.getScaledPath("MARKER_LOOP",{xScaleFactor:1,yScaleFactor:1,containerWidth:D,containerHeight:B,position:{mx:(D/2+y.loop)/D,my:(B-7)/B}});S("loop",P,W,{strokeWidth:1.5,fill:"none",stroke:re(_,c,y.stroke),strokeMiterlimit:.5})},AdhocMarker:function(P,_,y){var D=Wn(_,y),B=An(_,y),W=i.getScaledPath("MARKER_ADHOC",{xScaleFactor:1,yScaleFactor:1,containerWidth:D,containerHeight:B,position:{mx:(D/2+y.adhoc)/D,my:(B-15)/B}});S("adhoc",P,W,{strokeWidth:1,fill:re(_,c,y.stroke),stroke:re(_,c,y.stroke)})}};function $(P,_,y,D){V[P](_,y,D)}function G(P,_,y=[],D={}){D={fill:D.fill,stroke:D.stroke,width:Wn(_,D),height:An(_,D)};var B=Z(_),W=y.includes("SubProcessMarker");W?D={...D,seq:-21,parallel:-22,compensation:-25,loop:-18,adhoc:10}:D={...D,seq:-5,parallel:-6,compensation:-7,loop:0,adhoc:-8},B.get("isForCompensation")&&y.push("CompensationMarker"),v(B,"bpmn:AdHocSubProcess")&&(y.push("AdhocMarker"),W||L(D,{compensation:D.compensation-18}));var ce=B.get("loopCharacteristics"),Te=ce&&ce.get("isSequential");ce&&(L(D,{compensation:D.compensation-18}),y.includes("AdhocMarker")&&L(D,{seq:-23,loop:-18,parallel:-24}),Te===void 0&&y.push("LoopMarker"),Te===!1&&y.push("ParallelMarker"),Te===!0&&y.push("SequentialMarker")),y.includes("CompensationMarker")&&y.length===1&&L(D,{compensation:-8}),k(y,function(Ye){$(Ye,P,_,D)})}function fe(P,_,y={}){y=L({size:{width:100}},y);var D=o.createText(_||"",y);return He(D).add("djs-label"),Pe(P,D),D}function ze(P,_,y,D={}){var B=Z(_),W=ra({x:_.x,y:_.y,width:_.width,height:_.height},D);return fe(P,B.name,{align:y,box:W,padding:7,style:{fill:ia(_,u,c,D.stroke)}})}function lt(P,_,y={}){var D={width:_.width,height:_.height,x:_.width/2+_.x,y:_.height/2+_.y};return fe(P,Hn(_),{box:D,style:L({},o.getExternalStyle(),{fill:ia(_,u,c,y.stroke)})})}function q(P,_,y,D={}){var B=Ut(y),W=fe(P,_,{box:{height:30,width:B?An(y,D):Wn(y,D)},align:"center-middle",style:{fill:ia(y,u,c,D.stroke)}});if(B){var ce=-1*An(y,D);Ps(W,0,-ce,270)}}function de(P,_,y={}){var{width:D,height:B}=ra(_,y);return g(P,D,B,Ds,{...y,fill:je(_,s,y.fill),fillOpacity:ho,stroke:re(_,c,y.stroke)})}function he(P,_,y={}){var D=Z(_),B=je(_,s,y.fill),W=re(_,c,y.stroke);return(D.get("associationDirection")==="One"||D.get("associationDirection")==="Both")&&(y.markerEnd=d(P,"association-end",B,W)),D.get("associationDirection")==="Both"&&(y.markerStart=d(P,"association-start",B,W)),y=We(y,["markerStart","markerEnd"]),b(P,_.waypoints,{...y,stroke:W,strokeDasharray:"0, 5"})}function ue(P,_,y={}){var D=je(_,s,y.fill),B=re(_,c,y.stroke),W=i.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:.474,my:.296}}),ce=x(P,W,{fill:D,fillOpacity:ho,stroke:B}),Te=Z(_);if(ES(Te)){var Ye=i.getScaledPath("DATA_OBJECT_COLLECTION_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:.33,my:(_.height-18)/_.height}});x(P,Ye,{strokeWidth:2,fill:D,stroke:B})}return ce}function le(P,_,y={}){return m(P,_.width,_.height,{fillOpacity:ho,...y,fill:je(_,s,y.fill),stroke:re(_,c,y.stroke)})}function ie(P,_,y={}){return R(P,_.width,_.height,{fill:je(_,s,y.fill),fillOpacity:ho,stroke:re(_,c,y.stroke)})}function z(P,_,y={}){var D=g(P,Wn(_,y),An(_,y),0,{fill:je(_,s,y.fill),fillOpacity:y.fillOpacity||ho,stroke:re(_,c,y.stroke),strokeWidth:1.5}),B=Z(_);if(v(B,"bpmn:Lane")){var W=B.get("name");q(P,W,_,y)}return D}function F(P,_,y={}){var D=de(P,_,y),B=Fe(_);if(un(_)&&(se(D,{strokeDasharray:"0, 5.5",strokeWidth:2.5}),!B)){var W=Z(_).flowElements||[],ce=W.filter(Te=>v(Te,"bpmn:StartEvent"));ce.length===1&&U(ce[0],P,y,_)}return ze(P,_,B?"center-top":"center-middle",y),B?G(P,_,void 0,y):G(P,_,["SubProcessMarker"],y),D}function U(P,_,y,D){var B=22,W={fill:je(D,s,y.fill),stroke:re(D,c,y.stroke),width:B,height:B},ce=Z(P).isInterrupting,Te=ce?0:3,Ye=ce?1:1.2,pt=20,it=(B-pt)/2,It="translate("+it+","+it+")";m(_,pt,pt,{fill:W.fill,stroke:W.stroke,strokeWidth:Ye,strokeDasharray:Te,transform:It}),H(P,_,W,D)}function Oe(P,_,y={}){var D=de(P,_,y);return ze(P,_,"center-middle",y),G(P,_,void 0,y),D}var Lt=this.handlers={"bpmn:AdHocSubProcess":function(P,_,y={}){return Fe(_)?y=We(y,["fill","stroke","width","height"]):y=We(y,["fill","stroke"]),F(P,_,y)},"bpmn:Association":function(P,_,y={}){return y=We(y,["fill","stroke"]),he(P,_,y)},"bpmn:BoundaryEvent":function(P,_,y={}){var{renderIcon:D=!0}=y;y=We(y,["fill","stroke"]);var B=Z(_),W=B.get("cancelActivity");y={strokeWidth:1.5,fill:je(_,s,y.fill),fillOpacity:MS,stroke:re(_,c,y.stroke)},W||(y.strokeDasharray="6");var ce=le(P,_,y);return m(P,_.width,_.height,ks,{...y,fill:"none"}),D&&H(_,P,y),ce},"bpmn:BusinessRuleTask":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=Oe(P,_,y),B=i.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}}),W=x(P,B);se(W,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke),strokeWidth:1});var ce=i.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}}),Te=x(P,ce);return se(Te,{fill:re(_,c,y.stroke),stroke:re(_,c,y.stroke),strokeWidth:1}),D},"bpmn:CallActivity":function(P,_,y={}){return y=We(y,["fill","stroke"]),F(P,_,{strokeWidth:5,...y})},"bpmn:ComplexGateway":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=ie(P,_,y),B=i.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:_.width,containerHeight:_.height,position:{mx:.46,my:.26}});return x(P,B,{fill:re(_,c,y.stroke),stroke:re(_,c,y.stroke),strokeWidth:1}),D},"bpmn:DataInput":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=i.getRawPath("DATA_ARROW"),B=ue(P,_,y);return x(P,D,{fill:"none",stroke:re(_,c,y.stroke),strokeWidth:1}),B},"bpmn:DataInputAssociation":function(P,_,y={}){return y=We(y,["fill","stroke"]),he(P,_,{...y,markerEnd:d(P,"association-end",je(_,s,y.fill),re(_,c,y.stroke))})},"bpmn:DataObject":function(P,_,y={}){return y=We(y,["fill","stroke"]),ue(P,_,y)},"bpmn:DataObjectReference":N("bpmn:DataObject"),"bpmn:DataOutput":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=i.getRawPath("DATA_ARROW"),B=ue(P,_,y);return x(P,D,{strokeWidth:1,fill:re(_,c,y.stroke),stroke:re(_,c,y.stroke)}),B},"bpmn:DataOutputAssociation":function(P,_,y={}){return y=We(y,["fill","stroke"]),he(P,_,{...y,markerEnd:d(P,"association-end",je(_,s,y.fill),re(_,c,y.stroke))})},"bpmn:DataStoreReference":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=i.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:_.width,containerHeight:_.height,position:{mx:0,my:.133}});return x(P,D,{fill:je(_,s,y.fill),fillOpacity:ho,stroke:re(_,c,y.stroke),strokeWidth:2})},"bpmn:EndEvent":function(P,_,y={}){var{renderIcon:D=!0}=y;y=We(y,["fill","stroke"]);var B=le(P,_,{...y,strokeWidth:4});return D&&H(_,P,y),B},"bpmn:EventBasedGateway":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=Z(_),B=ie(P,_,y);m(P,_.width,_.height,_.height*.2,{fill:je(_,"none",y.fill),stroke:re(_,c,y.stroke),strokeWidth:1});var W=D.get("eventGatewayType"),ce=!!D.get("instantiate");function Te(){var pt=i.getScaledPath("GATEWAY_EVENT_BASED",{xScaleFactor:.18,yScaleFactor:.18,containerWidth:_.width,containerHeight:_.height,position:{mx:.36,my:.44}});x(P,pt,{fill:"none",stroke:re(_,c,y.stroke),strokeWidth:2})}if(W==="Parallel"){var Ye=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:_.width,containerHeight:_.height,position:{mx:.474,my:.296}});x(P,Ye,{fill:"none",stroke:re(_,c,y.stroke),strokeWidth:1})}else W==="Exclusive"&&(ce||m(P,_.width,_.height,_.height*.26,{fill:"none",stroke:re(_,c,y.stroke),strokeWidth:1}),Te());return B},"bpmn:ExclusiveGateway":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=ie(P,_,y),B=i.getScaledPath("GATEWAY_EXCLUSIVE",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:_.width,containerHeight:_.height,position:{mx:.32,my:.3}}),W=Ge(_);return W.get("isMarkerVisible")&&x(P,B,{fill:re(_,c,y.stroke),stroke:re(_,c,y.stroke),strokeWidth:1}),D},"bpmn:Gateway":function(P,_,y={}){return y=We(y,["fill","stroke"]),ie(P,_,y)},"bpmn:Group":function(P,_,y={}){return y=We(y,["fill","stroke","width","height"]),g(P,_.width,_.height,Ds,{stroke:re(_,c,y.stroke),strokeWidth:1.5,strokeDasharray:"10, 6, 0, 6",fill:"none",pointerEvents:"none",width:Wn(_,y),height:An(_,y)})},"bpmn:InclusiveGateway":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=ie(P,_,y);return m(P,_.width,_.height,_.height*.24,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke),strokeWidth:2.5}),D},"bpmn:IntermediateEvent":function(P,_,y={}){var{renderIcon:D=!0}=y;y=We(y,["fill","stroke"]);var B=le(P,_,{...y,strokeWidth:1.5});return m(P,_.width,_.height,ks,{fill:"none",stroke:re(_,c,y.stroke),strokeWidth:1.5}),D&&H(_,P,y),B},"bpmn:IntermediateCatchEvent":N("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":N("bpmn:IntermediateEvent"),"bpmn:Lane":function(P,_,y={}){return y=We(y,["fill","stroke","width","height"]),z(P,_,{...y,fillOpacity:kS})},"bpmn:ManualTask":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=Oe(P,_,y),B=i.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}});return x(P,B,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke),strokeWidth:.5}),D},"bpmn:MessageFlow":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=Z(_),B=Ge(_),W=je(_,s,y.fill),ce=re(_,c,y.stroke),Te=b(P,_.waypoints,{markerEnd:d(P,"messageflow-end",W,ce),markerStart:d(P,"messageflow-start",W,ce),stroke:ce,strokeDasharray:"10, 11",strokeWidth:1.5});if(D.get("messageRef")){var Ye=Te.getPointAtLength(Te.getTotalLength()/2),pt=i.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:Ye.x,y:Ye.y}}),it={strokeWidth:1};B.get("messageVisibleKind")==="initiating"?(it.fill=W,it.stroke=ce):(it.fill=ce,it.stroke=W);var It=x(P,pt,it),ln=D.get("messageRef"),pn=ln.get("name"),st=fe(P,pn,{align:"center-top",fitBox:!0,style:{fill:ce}}),Nt=It.getBBox(),fn=st.getBBox(),Fo=Ye.x-fn.width/2,dn=Ye.y+Nt.height/2+PS;Ps(st,Fo,dn,0)}return Te},"bpmn:ParallelGateway":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=ie(P,_,y),B=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:_.width,containerHeight:_.height,position:{mx:.46,my:.2}});return x(P,B,{fill:re(_,c,y.stroke),stroke:re(_,c,y.stroke),strokeWidth:1}),D},"bpmn:Participant":function(P,_,y={}){y=We(y,["fill","stroke","width","height"]);var D=z(P,_,y),B=Fe(_),W=Ut(_),ce=Z(_),Te=ce.get("name");if(B){var Ye=W?[{x:30,y:0},{x:30,y:An(_,y)}]:[{x:0,y:30},{x:Wn(_,y),y:30}];w(P,Ye,{stroke:re(_,c,y.stroke),strokeWidth:AS}),q(P,Te,_,y)}else{var pt=ra(_,y);W||(pt.height=Wn(_,y),pt.width=An(_,y));var it=fe(P,Te,{box:pt,align:"center-middle",style:{fill:ia(_,u,c,y.stroke)}});if(!W){var It=-1*An(_,y);Ps(it,0,-It,270)}}return ce.get("participantMultiplicity")&&$("ParticipantMultiplicityMarker",P,_,y),D},"bpmn:ReceiveTask":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=Z(_),B=Oe(P,_,y),W;return D.get("instantiate")?(m(P,28,28,20*.22,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke),strokeWidth:1}),W=i.getScaledPath("TASK_TYPE_INSTANTIATING_SEND",{abspos:{x:7.77,y:9.52}})):W=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:21,containerHeight:14,position:{mx:.3,my:.4}}),x(P,W,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke),strokeWidth:1}),B},"bpmn:ScriptTask":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=Oe(P,_,y),B=i.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}});return x(P,B,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke),strokeWidth:1}),D},"bpmn:SendTask":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=Oe(P,_,y),B=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}});return x(P,B,{fill:re(_,c,y.stroke),stroke:je(_,s,y.fill),strokeWidth:1}),D},"bpmn:SequenceFlow":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=je(_,s,y.fill),B=re(_,c,y.stroke),W=b(P,_.waypoints,{markerEnd:d(P,"sequenceflow-end",D,B),stroke:B}),ce=Z(_),{source:Te}=_;if(Te){var Ye=Z(Te);ce.get("conditionExpression")&&v(Ye,"bpmn:Activity")&&se(W,{markerStart:d(P,"conditional-flow-marker",D,B)}),Ye.get("default")&&(v(Ye,"bpmn:Gateway")||v(Ye,"bpmn:Activity"))&&Ye.get("default")===ce&&se(W,{markerStart:d(P,"conditional-default-flow-marker",D,B)})}return W},"bpmn:ServiceTask":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=Oe(P,_,y);m(P,10,10,{fill:je(_,s,y.fill),stroke:"none",transform:"translate(6, 6)"});var B=i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}});x(P,B,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke),strokeWidth:1}),m(P,10,10,{fill:je(_,s,y.fill),stroke:"none",transform:"translate(11, 10)"});var W=i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}});return x(P,W,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke),strokeWidth:1}),D},"bpmn:StartEvent":function(P,_,y={}){var{renderIcon:D=!0}=y;y=We(y,["fill","stroke"]);var B=Z(_);B.get("isInterrupting")||(y={...y,strokeDasharray:"6"});var W=le(P,_,y);return D&&H(_,P,y),W},"bpmn:SubProcess":function(P,_,y={}){return Fe(_)?y=We(y,["fill","stroke","width","height"]):y=We(y,["fill","stroke"]),F(P,_,y)},"bpmn:Task":function(P,_,y={}){return y=We(y,["fill","stroke"]),Oe(P,_,y)},"bpmn:TextAnnotation":function(P,_,y={}){y=We(y,["fill","stroke"]);var{width:D,height:B}=ra(_,y),W=g(P,D,B,0,0,{fill:"none",stroke:"none"}),ce=i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:D,containerHeight:B,position:{mx:0,my:0}});x(P,ce,{stroke:re(_,c,y.stroke)});var Te=Z(_),Ye=Te.get("text")||"";return fe(P,Ye,{align:"left-top",box:ra(_,y),padding:fo,style:{fill:ia(_,u,c,y.stroke)}}),W},"bpmn:Transaction":function(P,_,y={}){Fe(_)?y=We(y,["fill","stroke","width","height"]):y=We(y,["fill","stroke"]);var D=F(P,_,{strokeWidth:1.5,...y}),B=n.style(["no-fill","no-events"],{stroke:re(_,c,y.stroke),strokeWidth:1.5}),W=Fe(_);return W||(y={}),g(P,Wn(_,y),An(_,y),Ds-ks,ks,B),D},"bpmn:UserTask":function(P,_,y={}){y=We(y,["fill","stroke"]);var D=Oe(P,_,y),B=15,W=12,ce=i.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:B,y:W}});x(P,ce,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke),strokeWidth:.5});var Te=i.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:B,y:W}});x(P,Te,{fill:je(_,s,y.fill),stroke:re(_,c,y.stroke),strokeWidth:.5});var Ye=i.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:B,y:W}});return x(P,Ye,{fill:re(_,c,y.stroke),stroke:re(_,c,y.stroke),strokeWidth:.5}),D},label:function(P,_,y={}){return lt(P,_,y)}};this._drawPath=x,this._renderer=M}ae(Br,Ai),Br.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],Br.prototype.canRender=function(e){return v(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 De(e)?ml(e,TS):v(e,"bpmn:Event")?dm(e):v(e,"bpmn:Activity")?ml(e,Ds):v(e,"bpmn:Gateway")?SS(e):RS(e)};function We(e,t=[]){return t.reduce((n,i)=>(e[i]&&(n[i]=e[i]),n),{})}var DS=0,OS={width:150,height:50};function LS(e){var t=e.split("-");return{horizontal:t[0]||"center",vertical:t[1]||"top"}}function IS(e){return Gt(e)?L({top:0,left:0,right:0,bottom:0},e):{top:e,left:e,right:e,bottom:e}}var gl=null;function NS(){return gl||(gl=document.createElement("canvas").getContext("2d")),gl}function BS(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 $S(e,t){var n=NS();if(!n)return{width:0,height:0};n.font=BS(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 jS(e,t,n){for(var i=e.shift(),r=i,o;;){if(o=$S(r,n),o.width=r?o.width:0,r===" "||r===""||o.width<Math.round(t)||r.length<2)return FS(e,r,i,o);r=zS(r,o.width,t)}}function FS(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 mm="";function HS(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===mm)&&r.pop();break}var a=r[r.length-1];return a&&a===mm&&(r[r.length-1]="-"),r.join("")}function zS(e,t,n){var i=Math.max(e.length*(n/t),1),r=HS(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function Os(e){this._config=L({},{size:OS,padding:DS,style:{},align:"center-top"},e||{})}Os.prototype.createText=function(e,t){return this.layoutText(e,t).element},Os.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},Os.prototype.layoutText=function(e,t){for(var n=L({},this._config.size,t.box),i=L({},this._config.style,t.style),r=LS(t.align||this._config.align),o=IS(t.padding!==void 0?t.padding:this._config.padding),a=t.fitBox||!1,s=VS(i),c=e.split(/\u00AD?\r?\n/),u=[],l=n.width-o.left-o.right;c.length;)u.push(jS(c,l,i));r.vertical==="middle"&&(o.top=o.bottom=0);var f=Sn(u,function(g,R,w){return g+(s||R.height)},0)+o.top+o.bottom,p=Sn(u,function(g,R,w){return R.width>g?R.width:g},0),d=o.top;r.vertical==="middle"&&(d+=(n.height-f)/2),d-=(s||u[0].height)/4;var h=me("text");se(h,i),k(u,function(g){var R;switch(d+=s||g.height,r.horizontal){case"left":R=o.left;break;case"right":R=(a?p:l)-o.right-g.width;break;default:R=Math.max(((a?p:l)-g.width)/2+o.left,0)}var w=me("tspan");se(w,{x:R,y:d}),w.textContent=g.text,Pe(h,w)});var m={width:p,height:f};return{dimensions:m,element:h}};function VS(e){if("fontSize"in e&&"lineHeight"in e)return e.lineHeight*parseInt(e.fontSize,10)}var GS=12,WS=1.2,US=40;function gm(e){var t=L({fontFamily:"Arial, sans-serif",fontSize:GS,fontWeight:"normal",lineHeight:WS},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=L({},t,{fontSize:n},e&&e.externalStyle||{}),r=new Os({style:t});this.getExternalLabelBounds=function(a,s){var c={width:Math.max(a.width,Nr.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:fo});return{x:a.x,y:a.y,width:a.width,height:Math.max(US,Math.round(c.height))}},this.getDimensions=function(a,s){return r.getDimensions(a,s||{})};function o(a,s,c){return r.getDimensions(a,L({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 YS(){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=ZS(i.d,{mx:r,my:o,e:a});return f}}var qS=/\{([^{}]+)\}/g,KS=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;function XS(e,t,n){var i=n;return t.replace(KS,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 ZS(e,t){return String(e).replace(qS,function(n,i){return XS(n,i,t)})}const QS={__init__:["bpmnRenderer"],bpmnRenderer:["type",Br],textRenderer:["type",gm],pathMap:["type",YS]};function JS(e,t){return t=t||{},e.replace(/{([^}]+)}/g,function(n,i){return t[i]||"{"+i+"}"})}const oa={translate:["value",JS]};function Ls(e,t,n){return L({id:e.id,type:e.$type,businessObject:e,di:t},n)}function eR(e,t,n){var i=e.waypoint;return!i||i.length<2?[xe(t),xe(n)]:i.map(function(r){return{x:r.x,y:r.y}})}function ym(e,t,n){return new Error(`element ${cn(t)} referenced by ${cn(e)}#${n} not yet drawn`)}function Di(e,t,n,i,r){this._eventBus=e,this._canvas=t,this._elementFactory=n,this._elementRegistry=i,this._textRenderer=r}Di.$inject=["eventBus","canvas","elementFactory","elementRegistry","textRenderer"],Di.prototype.add=function(e,t,n){var i,r,o;if(v(t,"bpmndi:BPMNPlane")){var a=v(e,"bpmn:SubProcess")?{id:e.id+"_plane"}:{};i=this._elementFactory.createRoot(Ls(e,t,a)),this._canvas.addRootElement(i)}else if(v(t,"bpmndi:BPMNShape")){var s=!Fe(e,t),c=nR(e);r=n&&(n.hidden||n.collapsed);var u=t.bounds;i=this._elementFactory.createShape(Ls(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})),v(e,"bpmn:BoundaryEvent")&&this._attachBoundary(e,i),v(e,"bpmn:Lane")&&(o=0),v(e,"bpmn:DataStoreReference")&&(tR(n,xe(u))||(n=this._canvas.findRoot(n))),this._canvas.addShape(i,n,o)}else if(v(t,"bpmndi:BPMNEdge")){var l=this._getSource(e),f=this._getTarget(e);r=n&&(n.hidden||n.collapsed),i=this._elementFactory.createConnection(Ls(e,t,{hidden:r,source:l,target:f,waypoints:eR(t,l,f)})),v(e,"bpmn:DataAssociation")&&(n=this._canvas.findRoot(n)),this._canvas.addConnection(i,n,o)}else throw new Error(`unknown di ${cn(t)} for element ${cn(e)}`);return rr(e)&&Hn(i)&&this.addLabel(e,t,i),this._eventBus.fire("bpmnElement.added",{element:i}),i},Di.prototype._attachBoundary=function(e,t){var n=e.attachedToRef;if(!n)throw new Error(`missing ${cn(e)}#attachedToRef`);var i=this._elementRegistry.get(n.id),r=i&&i.attachers;if(!i)throw ym(e,n,"attachedToRef");t.host=i,r||(i.attachers=r=[]),r.indexOf(t)===-1&&r.push(t)},Di.prototype.addLabel=function(e,t,n){var i,r,o;return i=yS(t,n),r=Hn(n),r&&(i=this._textRenderer.getExternalLabelBounds(i,r)),o=this._elementFactory.createLabel(Ls(e,t,{id:e.id+"_label",labelTarget:n,type:"label",hidden:n.hidden||!Hn(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)},Di.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?ym(e,i,t+"Ref"):new Error(`${cn(e)}#${t} Ref not specified`)},Di.prototype._getSource=function(e){return this._getConnectedElement(e,"source")},Di.prototype._getTarget=function(e){return this._getConnectedElement(e,"target")},Di.prototype._getElement=function(e){return this._elementRegistry.get(e.id)};function tR(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 nR(e){return v(e,"bpmn:Group")}const vm={__depends__:[QS,{__depends__:[oa],bpmnImporter:["type",Di]}]};function aa(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function ri(e,t){return{x:e.x-t.x,y:e.y-t.y}}function yl(e){return Math.log(e)/Math.log(10)}var iR=1e3;function X(e){this._eventBus=e}X.$inject=["eventBus"];function rR(e,t){return function(n){return e.call(t||null,n.context,n.command,n)}}X.prototype.on=function(e,t,n,i,r,o){if((Wt(t)||Se(t))&&(o=r,r=i,i=n,n=t,t=null),Wt(n)&&(o=r,r=i,i=n,n=iR),Gt(r)&&(o=r,r=!1),!Wt(i))throw new Error("handlerFn must be a function");be(e)||(e=[e]);var a=this._eventBus;k(e,function(s){var c=["commandStack",s,t].filter(function(u){return u}).join(".");a.on(c,n,r?rR(i,o):i,o)})},X.prototype.canExecute=Oi("canExecute"),X.prototype.preExecute=Oi("preExecute"),X.prototype.preExecuted=Oi("preExecuted"),X.prototype.execute=Oi("execute"),X.prototype.executed=Oi("executed"),X.prototype.postExecute=Oi("postExecute"),X.prototype.postExecuted=Oi("postExecuted"),X.prototype.revert=Oi("revert"),X.prototype.reverted=Oi("reverted");function Oi(e){return function(n,i,r,o,a){(Wt(n)||Se(n))&&(a=o,o=r,r=i,i=n,n=null),this.on(n,e,i,r,o,a)}}var vl=["top","bottom","left","right"],Is=10;function _l(e,t){X.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(Ms(r)&&!rt(r)){var o=sR(r);o&&i(r,o)}}function i(r,o){var a=xe(r),s=r.label,c=xe(s);if(s.parent){var u=ye(r),l;switch(o){case"top":l={x:a.x,y:u.top-Is-s.height/2};break;case"left":l={x:u.left-Is-s.width/2,y:a.y};break;case"bottom":l={x:a.x,y:u.bottom+Is+s.height/2};break;case"right":l={x:u.right+Is+s.width/2,y:a.y};break}var f=ri(l,c);t.moveShape(s,f)}}}ae(_l,X),_l.$inject=["eventBus","modeling"];function oR(e){var t=e.host,n=xe(e),i=Qt(n,t),r;i.indexOf("-")>=0?r=i.split("-"):r=[i];var o=vl.filter(function(a){return r.indexOf(a)===-1});return o}function aR(e){var t=xe(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 _m(t,i)});return n}function sR(e){var t=xe(e.label),n=xe(e),i=_m(n,t);if(cR(i)){var r=aR(e);if(e.host){var o=oR(e);r=r.concat(o)}var a=vl.filter(function(s){return r.indexOf(s)===-1});return a.indexOf(i)!==-1?Qt(e.label,e)!=="intersect"?void 0:i:a[0]}}function _m(e,t){return Qt(t,e,5)}function cR(e){return vl.indexOf(e)!==-1}function bl(e){X.call(this,e),this.preExecute("shape.append",function(t){var n=t.source,i=t.shape;t.position||(v(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)}ae(bl,X),bl.$inject=["eventBus"];var uR=1500;function xl(e,t,n){e.invoke(X,this),this.preExecute("elements.delete",uR,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=Ie(r,u=>v(u,"bpmn:Participant")||v(u,"bpmn:SubProcess"));if(!o.length)return[];var a=n.getRootElement(),s=new Set(a.children.filter(u=>v(u,"bpmn:Artifact"))),c=new Set;return k(o,u=>{const l=new Set(Qr(so(Array.from(s),At(u))));c=c.union(l),s=s.difference(l)}),Array.from(c)}}ae(xl,X),xl.$inject=["injector","eventBus","canvas"];function wl(e,t){e.invoke(X,this),this.postExecute("shape.move",function(n){var i=n.newParent,r=n.shape,o=Ie(r.incoming.concat(r.outgoing),function(a){return v(a,"bpmn:Association")});k(o,function(a){t.moveConnection(a,{x:0,y:0},i)})},!0)}ae(wl,X),wl.$inject=["injector","modeling"];function mo(e,t){for(wn(t)&&(t=[t]);e=e.parent;)if(Le(e,t))return e;return null}function bm(e,t){var n=mo(e,"bpmn:Process");if(n)return!0;var i=["bpmn:Participant","bpmn:Lane"];if(n=mo(e,i),n)return Ut(n);if(Le(e,i))return Ut(e);var r;for(r=Z(e);r&&!v(r,"bpmn:Process");r=r.$parent);if(!t)return!0;var o=t.find(function(a){var s=Z(a);return s&&s.get("processRef")===r});return o?Ut(o):!0}var xm=500;function Ns(e,t){t.invoke(X,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",xm,function(i){var r=i.elements;r=r.filter(function(o){var a=o.host;return wm(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",xm,function(i){var r=i.shapes,o=i.newHost;if(r.length===1){var a=r[0];wm(a,o)&&(i.shapes=[n._replaceShape(a,o)])}},!0)}Ns.$inject=["bpmnReplace","injector"],ae(Ns,X),Ns.prototype._replaceShape=function(e,t){var n=lR(e),i={type:"bpmn:BoundaryEvent",host:t};return n&&(i.eventDefinitionType=n.$type),this._bpmnReplace.replaceElement(e,i,{layoutConnection:!1})};function lR(e){var t=Z(e),n=t.eventDefinitions;return n&&n[0]}function wm(e,t){return!De(e)&&Le(e,["bpmn:IntermediateThrowEvent","bpmn:IntermediateCatchEvent"])&&!!t}function El(e,t){X.call(this,e);function n(i){return Ie(i.attachers,function(r){return v(r,"bpmn:BoundaryEvent")})}this.postExecute("connection.create",function(i){var r=i.context.source,o=i.context.target,a=n(o);v(r,"bpmn:EventBasedGateway")&&v(o,"bpmn:ReceiveTask")&&a.length>0&&t.removeElements(a)}),this.postExecute("connection.reconnect",function(i){var r=i.context.oldSource,o=i.context.newSource;v(r,"bpmn:Gateway")&&v(o,"bpmn:EventBasedGateway")&&k(o.outgoing,function(a){var s=a.target,c=n(s);v(s,"bpmn:ReceiveTask")&&c.length>0&&t.removeElements(c)})})}El.$inject=["eventBus","modeling"],ae(El,X);function Em(e){return e.create("bpmn:Category")}function pR(e){return e.create("bpmn:CategoryValue")}function Sm(e,t){var n=t.get("categoryValueRef");return n||(n=t.categoryValueRef=pR(e)),n.$parent||(n.$parent=Em(e)),n}function fR(e,t,n){return St(t.get("categoryValue"),e),e.$parent=t,St(n.get("rootElements"),t),t.$parent=n,e}function dR(e){var t=e.$parent;return t&&(wt(t.get("categoryValue"),e),e.$parent=null),e}function hR(e){var t=e.$parent;return t&&(wt(t.get("rootElements"),e),e.$parent=null),e}var mR=500;function Sl(e,t,n){n.invoke(X,this);function i(c){return t.filter(function(u){return v(u,"bpmn:Group")&&!u.labelTarget}).map(Z).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&&fR(c,u,e.getDefinitions())}function s(c,u,l){u&&!o(u,l)&&hR(u),c&&!r(c,l)&&dR(c)}this.executed(["shape.create","label.create"],function(c){var u=c.labelTarget||c.shape;!v(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;!v(u,"bpmn:Group")||u.labelTarget||s(c.categoryValue,c.category,Z(u))},!0),this.executed(["shape.move","shape.resize"],mR,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,Z(u))},!0),this.executed("group.updateRefs",function(c){Rm(c).forEach(function(u){a(u.categoryValue,u.category)})},!0),this.reverted("group.updateRefs",function(c){Rm(c).forEach(function(u){s(u.categoryValue,u.category,Z(u.groupShape))})},!0),this.executed("shape.delete",function(c){var u=c.shape;!v(u,"bpmn:Group")||u.labelTarget||s(c.categoryValue,c.category,Z(u))},!0),this.reverted("shape.delete",function(c){var u=c.shape;!v(u,"bpmn:Group")||u.labelTarget||a(c.categoryValue,c.category)},!0)}Sl.$inject=["bpmnjs","elementRegistry","injector"],ae(Sl,X);function Rm(e){var t;return((t=e.updates)==null?void 0:t.groups)||[]}function Rl(e,t,n){X.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 R=g.source,w=g.target;go(R)&&sa(w)&&l(w)}function r(g){const R=g.connection,w=g.source,b=g.target;go(w)&&Bs(b)&&(u(b),p(w,[R]))}function o(g){const R=g.newTarget,w=g.oldSource,b=g.oldTarget;if(b!==R){const x=w;sa(b)&&l(b),go(x)&&Bs(R)&&u(R)}}function a(g){const{element:R}=g;sa(R)?(f(R),d(R)):Bs(R)&&h(R)}function s(g){const{newData:R,oldShape:w}=g;if(go(g.oldShape)&&R.eventDefinitionType!=="bpmn:CompensateEventDefinition"||R.type!=="bpmn:BoundaryEvent"){const b=w.outgoing.find(({target:x})=>sa(x));b&&b.target&&(g._connectionTarget=b.target)}else if(!go(g.oldShape)&&R.eventDefinitionType==="bpmn:CompensateEventDefinition"&&R.type==="bpmn:BoundaryEvent"){const b=w.outgoing.find(({target:x})=>Bs(x));b&&b.target&&(g._connectionTarget=b.target),m(w)}}function c(g){const{_connectionTarget:R,newShape:w}=g;R&&t.connect(w,R)}function u(g){t.updateProperties(g,{isForCompensation:!0})}function l(g){t.updateProperties(g,{isForCompensation:void 0})}function f(g){for(const R of g.incoming)n.canConnect(R.source,g)||t.removeConnection(R);for(const R of g.outgoing)n.canConnect(g,R.target)||t.removeConnection(R)}function p(g,R){g.outgoing.filter(x=>v(x,"bpmn:Association")).filter(x=>sa(x.target)&&!R.includes(x)).forEach(x=>t.removeConnection(x))}function d(g){const R=g.attachers.slice();R.length&&t.removeElements(R)}function h(g){const R=g.incoming.filter(w=>go(w.source));t.removeElements(R)}function m(g){const R=g.outgoing.filter(w=>v(w,"bpmn:SequenceFlow"));t.removeElements(R)}}ae(Rl,X),Rl.$inject=["eventBus","modeling","bpmnRules"];function sa(e){const t=Z(e);return t&&t.get("isForCompensation")}function go(e){return e&&v(e,"bpmn:BoundaryEvent")&&po(e,"bpmn:CompensateEventDefinition")}function Bs(e){return e&&v(e,"bpmn:Activity")&&!un(e)}function Cl(e){e.invoke(X,this),this.preExecute("shape.create",1500,function(t){var n=t.context,i=n.parent,r=n.shape;v(i,"bpmn:Lane")&&!v(r,"bpmn:Lane")&&(n.parent=mo(i,"bpmn:Participant"))})}Cl.$inject=["injector"],ae(Cl,X);function Pl(e,t){X.call(this,e),this.preExecute("shape.create",function(n){var a;var i=n.context,r=i.shape;if(v(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}})}Pl.$inject=["eventBus","bpmnFactory"],ae(Pl,X);var Al=20,Tl=20,Cm=30,$s=2e3;function Ml(e,t,n){X.call(this,t),t.on(["create.start","shape.move.start"],$s,function(r){var o=r.context,a=o.shape,s=e.getRootElement();if(!(!v(a,"bpmn:Participant")||!v(s,"bpmn:Process")||!s.children.length)){var c=s.children.filter(function(f){return!v(f,"bpmn:Group")&&!De(f)&&!rt(f)});if(c.length){var u=At(c),l=gR(a,u);L(a,l),o.createConstraints=yR(a,u)}}}),t.on("create.start",$s,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}v(a,"bpmn:Participant")&&v(s,"bpmn:Process")&&(t.on("element.hover",$s,u),t.once("create.cleanup",function(){t.off("element.hover",u)}))});function i(){var r=e.getRootElement();return v(r,"bpmn:Collaboration")?r:n.makeCollaboration()}this.preExecute("elements.create",$s,function(r){var o=r.elements,a=r.parent,s=vR(o),c;s&&v(a,"bpmn:Process")&&(r.parent=i(),c=r.hints=r.hints||{},c.participant=s,c.process=a,c.processRef=Z(s).get("processRef"))},!0),this.preExecute("shape.create",function(r){var o=r.parent,a=r.shape;v(a,"bpmn:Participant")&&v(o,"bpmn:Process")&&(r.parent=i(),r.process=o,r.processRef=Z(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)&&Z(s).set("processRef",Z(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)&&Z(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)}Ml.$inject=["canvas","eventBus","modeling"],ae(Ml,X);function gR(e,t){t={width:t.width+Al*2+Cm,height:t.height+Tl*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 yR(e,t){return t=ye(t),{bottom:t.top+e.height/2-Tl,left:t.right-e.width/2+Al,top:t.bottom-e.height/2+Tl,right:t.left+e.width/2-Al-Cm}}function vR(e){return ct(e,function(t){return v(t,"bpmn:Participant")})}var Pm="__targetRef_placeholder";function kl(e,t){X.call(this,e),this.executed(["connection.create","connection.delete","connection.move","connection.reconnect"],Am(o)),this.reverted(["connection.create","connection.delete","connection.move","connection.reconnect"],Am(o));function n(a,s,c){var u=a.get("dataInputAssociations");return ct(u,function(l){return l!==c&&l.targetRef===s})}function i(a,s){var c=a.get("properties"),u=ct(c,function(l){return l.name===Pm});return!u&&s&&(u=t.create("bpmn:Property",{name:Pm}),St(c,u)),u}function r(a,s){var c=i(a);c&&(n(a,c,s)||wt(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,R;m&&m!==f&&r(m,u),d&&d!==f&&r(d,u),f?(R=i(f,!0),g.targetRef=R):g.targetRef=null}}kl.$inject=["eventBus","bpmnFactory"],ae(kl,X);function Am(e){return function(t){var n=t.context,i=n.connection;if(v(i,"bpmn:DataInputAssociation"))return e(t)}}function js(e){this._bpmnUpdater=e}js.$inject=["bpmnUpdater"],js.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),[]},js.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 Dl(e,t,n,i){X.call(this,i),t.registerHandler("dataStore.updateContainment",js);function r(){return n.filter(function(s){return v(s,"bpmn:Participant")&&Z(s).processRef})[0]}function o(s){return s.children.filter(function(c){return v(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:Ge(s),newSemanticParent:l.processRef||l,newDiParent:Ge(c)})}}this.preExecute("shape.create",function(s){var c=s.context,u=c.shape;v(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 v(f,"bpmn:DataStoreReference")});l.length&&(c.hints||(c.hints={}),c.hints.autoResize=u.filter(function(f){return!v(f,"bpmn:DataStoreReference")}))}),this.postExecute("shape.create",function(s){var c=s.context,u=c.shape,l=u.parent;v(u,"bpmn:DataStoreReference")&&u.type!=="label"&&v(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(!v(l,"bpmn:Collaboration")&&v(u,"bpmn:DataStoreReference")&&u.type!=="label"&&v(f,"bpmn:Collaboration")){var p=v(l,"bpmn:Participant")?l:bR(l,"bpmn:Participant");a(u,p)}}),this.postExecute("shape.delete",function(s){var c=s.context,u=c.shape,l=e.getRootElement();Le(u,["bpmn:Participant","bpmn:SubProcess"])&&v(l,"bpmn:Collaboration")&&o(l).filter(function(f){return _R(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){v(l,"bpmn:Process")&&a(p,l)})})}Dl.$inject=["canvas","commandStack","elementRegistry","eventBus"],ae(Dl,X);function _R(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 bR(e,t){for(;e.parent;){if(v(e.parent,t))return e.parent;e=e.parent}}var Fs=Math.max,Hs=Math.min,xR=20;function Tm(e,t){return{top:e.top-t.top,right:e.right-t.right,bottom:e.bottom-t.bottom,left:e.left-t.left}}function wR(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 ER(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 zs(e,t,n){var i=t[e],r=n.min&&n.min[e],o=n.max&&n.max[e];return Se(r)&&(i=(/top|left/.test(e)?Hs:Fs)(i,r)),Se(o)&&(i=(/top|left/.test(e)?Fs:Hs)(i,o)),i}function SR(e,t){if(!t)return e;var n=ye(e);return Ss({top:zs("top",n,t),right:zs("right",n,t),bottom:zs("bottom",n,t),left:zs("left",n,t)})}function RR(e,t,n,i){var r=ye(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?ye(i):o,s={top:Hs(o.top,a.top),left:Hs(o.left,a.left),bottom:Fs(o.bottom,a.bottom),right:Fs(o.right,a.right)};return Ss(s)}function ca(e,t){return typeof e<"u"?e:xR}function CR(e,t){var n,i,r,o;return typeof t=="object"?(n=ca(t.left),i=ca(t.right),r=ca(t.top),o=ca(t.bottom)):n=i=r=o=ca(t),{x:e.x-n,y:e.y-r,width:e.width+n+i,height:e.height+r+o}}function PR(e){return!(e.waypoints||e.type==="label")}function Mm(e,t){var n;if(e.length===void 0?n=Ie(e.children,PR):n=e,n.length)return CR(At(n),t)}var or=Math.abs;function AR(e,t){return Tm(ye(t),ye(e))}var TR=["bpmn:Participant","bpmn:Process","bpmn:SubProcess"],Un=30;function Vs(e,t){return t=t||[],e.children.filter(function(n){v(n,"bpmn:Lane")&&(Vs(n,t),t.push(n))}),t}function ar(e){return e.children.filter(function(t){return v(t,"bpmn:Lane")})}function Yn(e){return mo(e,TR)||e}function MR(e,t){var n=Yn(e),i=v(n,"bpmn:Process")?[]:[n],r=Vs(n,i),o=ye(e),a=ye(t),s=AR(e,t),c=[],u=Ut(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=ye(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:ER(l,{top:f,right:p,bottom:d,left:h})})}}),c}var kR=500;function Ol(e,t){X.call(this,e);function n(i,r){var o=Ut(i),a=ar(r),s=[],c=[],u=[],l=[];if(Lr(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",kR,function(i){var r=i.context,o=r.hints,a=r.shape,s=r.oldParent;v(a,"bpmn:Lane")&&(o&&o.nested||n(a,s))})}Ol.$inject=["eventBus","spaceTool"],ae(Ol,X);var km=500;function Gs(e,t){t.invoke(X,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",km,function(i){var r=i.elements;r.filter(function(o){var a=o.host;return Dm(o,a)}).map(function(o){return r.indexOf(o)}).forEach(function(o){i.elements[o]=n._replaceShape(r[o])})},!0),this.preExecute("elements.move",km,function(i){var r=i.shapes,o=i.newHost;r.forEach(function(a,s){var c=a.host;Dm(a,OR(r,c)?c:o)&&(r[s]=n._replaceShape(a))})},!0)}Gs.$inject=["bpmnReplace","injector"],ae(Gs,X),Gs.prototype._replaceShape=function(e){var t=DR(e),n;return t?n={type:"bpmn:IntermediateCatchEvent",eventDefinitionType:t.$type}:n={type:"bpmn:IntermediateThrowEvent"},this._bpmnReplace.replaceElement(e,n,{layoutConnection:!1})};function DR(e){var t=Z(e),n=t.eventDefinitions;return n&&n[0]}function Dm(e,t){return!De(e)&&v(e,"bpmn:BoundaryEvent")&&!t}function OR(e,t){return e.indexOf(t)!==-1}var Ws=Math.round,LR=Math.max;function IR(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 NR(e){var t=[];return e.forEach(function(n,i){t.push([i===0?"M":"L",n.x,n.y])}),t}var Om=10;function BR(e,t){var n,i;for(n=0;i=e[n];n++)if(Qo(i,t)<=Om)return{point:e[n],bendpoint:!0,index:n};return null}function $R(e,t){var n=$h(IR(t,Om),NR(e)),i=n[0],r=n[n.length-1],o;return i?i!==r?i.segment2!==r.segment2?(o=LR(i.segment2,r.segment2)-1,{point:e[o],bendpoint:!0,index:o}):{point:{x:Ws(i.x+r.x)/2,y:Ws(i.y+r.y)/2},index:i.segment2}:{point:{x:Ws(i.x),y:Ws(i.y)},index:i.segment2}:null}function Ll(e,t){return BR(e,t)||$R(e,t)}function Il(e,t,n){X.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(),R;Se(a.width)?R=xe(a):R=a;var w=Ll(s,R);if(w){if(c=s.slice(0,w.index),u=s.slice(w.index+(w.bendpoint?1:0)),!c.length||!u.length)return;l=w.bendpoint?s[w.index]:R,(c.length===1||!Lm(r,c[c.length-1]))&&c.push(Im(l)),(u.length===1||!Lm(r,u[0]))&&u.unshift(Im(l))}f=o.source,p=o.target,t.canConnect(f,r,o)&&(n.reconnectEnd(o,r,c||R),d=o),t.canConnect(r,p,o)&&(d?h=n.connect(r,p,{type:o.type,waypoints:u}):(n.reconnectStart(o,r,u||R),h=o));var b=[].concat(d&&Ie(g,function(x){return x.source===d.source})||[],h&&Ie(m,function(x){return x.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=xe(c),l={x:u.x+s.x,y:u.y+s.y},f=ct(o.children,function(p){var d=t.canInsert(a,p);return d&&Ll(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)}ae(Il,X),Il.$inject=["eventBus","bpmnRules","modeling"];function Lm(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 Im(e){return L({},e)}function Nl(e,t){X.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)&&yo(r)){var c=[];v(o,"bpmn:EventBasedGateway")?c=a.incoming.filter(u=>u!==r&&yo(u)):c=a.incoming.filter(u=>u!==r&&yo(u)&&v(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(v(r,"bpmn:EventBasedGateway")){var o=r.outgoing.filter(yo).reduce(function(a,s){return a.includes(s.target)?a:a.concat(s.target)},[]);o.forEach(function(a){a.incoming.filter(yo).forEach(function(s){const c=a.incoming.filter(yo).filter(function(u){return u.source===r});(s.source!==r||c.length>1)&&t.removeConnection(s)})})}})}Nl.$inject=["eventBus","modeling"],ae(Nl,X);function yo(e){return v(e,"bpmn:SequenceFlow")}var Us=1500,Nm=2e3;function Bm(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"],Us,function(i){var r=i.context,o=r.shape||i.shape,a=i.hover;v(a,"bpmn:Lane")&&!Le(o,["bpmn:Lane","bpmn:Participant"])&&(i.hover=Yn(a),i.hoverGfx=e.getGraphics(i.hover));var s=n.getRootElement();a&&a!==s&&(o.labelTarget||Le(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"],Us,function(i){var r=i.hover;v(r,"bpmn:Lane")&&(i.hover=Yn(r)||r,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["bendpoint.move.hover"],Us,function(i){var r=i.context,o=i.hover,a=r.type;v(o,"bpmn:Lane")&&/reconnect/.test(a)&&(i.hover=Yn(o)||o,i.hoverGfx=e.getGraphics(i.hover))}),t.on(["connect.start"],Us,function(i){var r=i.context,o=r.start;v(o,"bpmn:Lane")&&(r.start=Yn(o)||o)}),t.on("shape.move.start",Nm,function(i){var r=i.shape;v(r,"bpmn:Lane")&&(i.shape=Yn(r)||r)}),t.on("spaceTool.move",Nm,function(i){var r=i.hover;r&&v(r,"bpmn:Lane")&&(i.hover=Yn(r))})}Bm.$inject=["elementRegistry","eventBus","canvas"];var $m=770;function Bl(e,t,n,i){n.invoke(X,this);function r(s,c){var u=Z(s),l=c.categoryValue||u.categoryValueRef;l||(l=Sm(e,u));var f=c.category||l.$parent||Em(e);u.categoryValueRef=l,l.$parent=f,c.categoryValue=l,c.category=f}function o(s,c){var u=Z(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;v(u,"bpmn:Group")&&r(u,c)}),this.revert("label.create",function(s){var c=s.context,u=c.labelTarget;v(u,"bpmn:Group")&&o(u,c)}),this.execute("shape.delete",function(s){var c=s.context,u=c.shape,l=Z(u);if(!(!v(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(!(!v(u,"bpmn:Group")||u.labelTarget)){var l=c.category,f=c.categoryValue,p=Z(u);f&&(p.categoryValueRef=f,f.$parent=l)}}),this.execute("shape.create",function(s){var c=s.context,u=c.shape,l=c.hints||{};!v(u,"bpmn:Group")||u.labelTarget||l.createElementsBehavior===!1&&!Z(u).categoryValueRef&&!c.categoryValue||r(u,c)}),this.reverted("shape.create",function(s){var c=s.context,u=c.shape,l=c.hints||{};!v(u,"bpmn:Group")||u.labelTarget||l.createElementsBehavior===!1&&!Z(u).categoryValueRef&&!c.categoryValue||o(u,c)}),this.executed(["shape.move","shape.resize"],function(s){var c=s.context,u=c.shape;!v(u,"bpmn:Group")||u.labelTarget||Z(u).categoryValueRef||r(u,c)}),this.reverted(["shape.move","shape.resize"],function(s){var c=s.context,u=c.shape;!v(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",$m,function(s){var c=s.descriptor,u=s.element;if(!(!v(u,"bpmn:Group")||u.labelTarget)){var l=Z(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",$m,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})}Bl.$inject=["bpmnFactory","eventBus","injector","moddleCopy"],ae(Bl,X);function $l(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 jm(e){function t(i,r,o){var a={x:o.x,y:o.y-50},s={x:o.x-50,y:o.y},c=$l(i,r,o,a),u=$l(i,r,o,s),l;c&&u?Fm(c,o)>Fm(u,o)?l=u:l=c:l=c||u,i.original=l}function n(i){var r=i.waypoints;t(r[0],r[1],xe(i.source)),t(r[r.length-1],r[r.length-2],xe(i.target))}e.on("bpmnElement.added",function(i){var r=i.element;r.waypoints&&n(r)})}jm.$inject=["eventBus"];function Fm(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function jl(e){X.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=Z(i),o=Ge(i);if(Le(r,t)){var a=o.get("isHorizontal");a===void 0&&(a=!0),o.set("isHorizontal",a)}})}jl.$inject=["eventBus"],ae(jl,X);function Hm(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function zm(e){return Math.atan((e[1].y-e[0].y)/(e[1].x-e[0].x))}function jR(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 FR(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 Fl(e,t){var n=t[0],i=t[1],r={x:i.x-n.x,y:i.y-n.y},o=FR([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 Vm(e,t){var n=Fl(e,t),i={x:n.x-e.x,y:n.y-e.y};return Hm(i)}function ua(e,t){return Hm({x:e.x-t.x,y:e.y-t.y})}var Gm=Math.sqrt,Wm=Math.min,HR=Math.max,Um=Math.abs;function Ym(e){return Math.pow(e,2)}function la(e,t){return Gm(Ym(e.x-t.x)+Ym(e.y-t.y))}function zR(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],Km(i,r)?u=[i]:(o=la(e,i),a=la(e,r),c=Wm(o,a),u=VR(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:Km(i,u[0])?n:n+1}),u.length===2&&(s=WR(u[0],u[1]),l={type:"segment",position:s,segmentIndex:n,relativeLocation:la(i,s)/la(i,r)}),f=la(l.position,e),(!d||p>f)&&(d=l,p=f)}return d}function VR(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=Gm(d),m=-f+h,g=-f-h,R={x:e.x-r*m,y:e.y-o*m};if(d===0)return[R];var w={x:e.x-r*g,y:e.y-o*g};return[R,w].filter(function(b){return GR(b,e,t)})}function GR(e,t,n){return qm(e.x,t.x,n.x)&&qm(e.y,t.y,n.y)}function qm(e,t,n){return e>=Wm(t,n)-Ys&&e<=HR(t,n)+Ys}function WR(e,t){return{x:(e.x+t.x)/2,y:(e.y+t.y)/2}}var Ys=.1;function Km(e,t){return Um(e.x-t.x)<=Ys&&Um(e.y-t.y)<=Ys}function UR(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=Zm(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 Xm(e,t,n,i){var r=0,o=0,a={point:e,delta:{x:0,y:0}},s=zR(e,n),c=s.segmentIndex,u=UR(n,t,s,i);if(u<0||u>t.length-2||u===null)return a;var l=Qm(n,c),f=Qm(t,u),p=s.position,d=qR(l,p),h=YR(l,f);if(s.type==="bendpoint"){var m=t.length-n.length,g=s.bendpointIndex,R=n[g];if(t.indexOf(R)!==-1)return a;if(m===0){var w=t[g];return r=w.x-s.position.x,o=w.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=Zm(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},x=jR({x:e.x-p.x,y:e.y-p.y},h);return r=b.x+x.x-e.x,o=b.y+x.y-e.y,{point:Mi(b),delta:Mi({x:r,y:o})}}function Zm(e,t){var n=ua(e[t-1],e[t]),i=ua(e[t],e[t+1]),r=n/(n+i);return r}function YR(e,t){var n=zm(e),i=zm(t);return i-n}function Qm(e,t){return[e[t],e[t+1]]}function qR(e,t){var n=ua(e[0],e[1]),i=ua(e[0],t);return n===0?0:i/n}function KR(e,t,n,i){var r=xe(e);return Xm(r,t,n,i).delta}function pa(e,t,n){var i=aa(t),r=aa(n),o=ri(e,i),a={x:o.x*(n.width/t.width),y:o.y*(n.height/t.height)};return Mi({x:r.x+a.x,y:r.y+a.y})}function Jm(e,t,n){var i=aa(e),r=aa(t),o=aa(n),a=ri(e,i),s=ri(i,r),c=XR(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 Mi({x:l.x+a.x-e.x,y:l.y+a.y-e.y})}function XR(e,t,n){var i=ye(t),r=ye(n);if(ZR(i,r))return null;var o=Qt(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=Qt(n,s),c!==o?null:a}function ZR(e,t){return QR(e,t)||JR(e,t)}function QR(e,t){return e.right!==t.right&&e.left!==t.left}function JR(e,t){return e.top!==t.top&&e.bottom!==t.bottom}var eg="name",tg="text";function Hl(e,t,n,i){X.call(this,e),this.postExecute("element.updateProperties",r),this.postExecute("element.updateModdleProperties",a=>{Z(a.context.element)===a.context.moddleElement&&r(a)});function r(a){var s=a.context,c=s.element,u=s.properties;if(eg in u&&t.updateLabel(c,u[eg]),tg in u&&v(c,"bpmn:TextAnnotation")){var l=i.getTextAnnotationBounds({x:c.x,y:c.y,width:c.width,height:c.height},u[tg]||"");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;De(u)||!rr(u)||Hn(u)&&t.updateLabel(u,Hn(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=L({},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),KR(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=Z(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(!(!De(c)||u.autoResize)){var l=s.newBounds,f=i.getDimensions(Hn(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(Ms(c)){var f=c.label,p=xe(f),d=nC(l),h=tC(p,d),m=eC(h,l,u);t.moveShape(f,m)}})}ae(Hl,X),Hl.$inject=["eventBus","modeling","bpmnFactory","textRenderer"];function eC(e,t,n){var i=pa(e,t,n);return Mi(ri(i,e))}function tC(e,t){if(t.length){var n=iC(e,t);return Fl(e,n)}}function nC(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 iC(e,t){var n=t.map(function(r){return{line:r,distance:Vm(e,r)}}),i=ai(n,"distance");return i[0].line}function rC(e,t,n,i){return Xm(e,t,n,i).point}function zl(e,t){X.call(this,e);function n(i,r){var o=i.context,a=o.connection,s=L({},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),rC(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)})})}ae(zl,X),zl.$inject=["eventBus","modeling"];function qs(e,t,n){var i=Xs(e),r=ig(i,t),o=i[0];return r.length?r[r.length-1]:pa(o.original||o,n,t)}function Ks(e,t,n){var i=Xs(e),r=ig(i,t),o=i[i.length-1];return r.length?r[0]:pa(o.original||o,n,t)}function Vl(e,t,n){var i=Xs(e),r=ng(t,n),o=i[0];return pa(o.original||o,r,t)}function Gl(e,t,n){var i=Xs(e),r=ng(t,n),o=i[i.length-1];return pa(o.original||o,r,t)}function ng(e,t){return{x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}function Xs(e){var t=e.waypoints;if(!t.length)throw new Error("connection#"+e.id+": no waypoints");return t}function ig(e,t){var n=on(e,aC);return Ie(n,function(i){return oC(i,t)})}function oC(e,t){return Qt(t,e,1)==="intersect"}function aC(e){return e.original||e}function Wl(e,t){X.call(this,e),this.postExecute("shape.replace",function(n){var i=n.oldShape,r=n.newShape;if(sC(i,r)){var o=cC(i);o.incoming.forEach(function(a){var s=Ks(a,r,i);t.reconnectEnd(a,r,s)}),o.outgoing.forEach(function(a){var s=qs(a,r,i);t.reconnectStart(a,r,s)})}},!0)}Wl.$inject=["eventBus","modeling"],ae(Wl,X);function sC(e,t){return v(e,"bpmn:Participant")&&Fe(e)&&v(t,"bpmn:Participant")&&!Fe(t)}function cC(e){var t=Xo([e]),n=[],i=[];return t.forEach(function(r){r!==e&&(r.incoming.forEach(function(o){v(o,"bpmn:MessageFlow")&&n.push(o)}),r.outgoing.forEach(function(o){v(o,"bpmn:MessageFlow")&&i.push(o)}))},[]),{incoming:n,outgoing:i}}const uC=["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:EscalationEventDefinition","bpmn:ConditionalEventDefinition","bpmn:SignalEventDefinition"];function rg(e){const t=Z(e);if(!v(t,"bpmn:BoundaryEvent")&&!(v(t,"bpmn:StartEvent")&&un(t.$parent)))return!1;const n=t.get("eventDefinitions");return!n||!n.length?!1:uC.some(i=>v(n[0],i))}function og(e){return v(e,"bpmn:BoundaryEvent")?"cancelActivity":"isInterrupting"}function Ul(e,t){e.invoke(X,this),this.postExecuted("shape.replace",function(n){const i=n.context.oldShape,r=n.context.newShape,o=n.context.hints;if(!rg(r))return;const a=og(r);if(o.targetElement&&o.targetElement[a]!==void 0)return;const c=Z(i).get(a),u=Z(r).get(a);c!==u&&t.updateProperties(r,{[a]:c})})}Ul.$inject=["injector","modeling"],ae(Ul,X);function Yl(e,t){X.call(this,e),this.preExecute("shape.resize",function(n){var i=n.shape,r=Ge(i),o=r&&r.get("label"),a=o&&o.get("bounds");a&&t.updateModdleProperties(i,o,{bounds:void 0})},!0)}ae(Yl,X),Yl.$inject=["eventBus","modeling"];function ql(e,t,n){X.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(!(!v(o,"bpmn:SequenceFlow")||!v(a,"bpmn:SequenceFlow"))&&t.canConnect(o.source,a.target,o)){var s=lC(o.waypoints,a.waypoints);n.reconnectEnd(o,a.target,s)}}})}ae(ql,X),ql.$inject=["eventBus","bpmnRules","modeling"];function vo(e){return e.original||e}function lC(e,t){var n=$l(vo(e[e.length-2]),vo(e[e.length-1]),vo(t[1]),vo(t[0]));return n?[].concat(e.slice(0,e.length-1),[n],t.slice(1)):[vo(e[0]),vo(t[t.length-1])]}function Kl(e,t){X.call(this,e),this.preExecute("shape.delete",function(n){var i=n.shape,r=i.parent;v(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)}Kl.$inject=["eventBus","modeling"],ae(Kl,X);function Xl(e,t,n,i){X.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;v(c,"bpmn:SequenceFlow")&&(n.canConnectSequenceFlow(u,l)||(d=!0),n.canConnectMessageFlow(u,l)&&(p="bpmn:MessageFlow")),v(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;k(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=ct(f.outgoing,eo({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})})}ae(Xl,X),Xl.$inject=["eventBus","modeling","bpmnRules","injector"];function Zs(e,t,n,i,r,o){i.invoke(X,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=Sn(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=[];k(s.closure.topLevel,function(p){un(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})})}ae(Zs,X),Zs.prototype._replaceElements=function(e,t){var n=this._elementRegistry,i=this._bpmnReplace,r=this._selection;k(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)},Zs.$inject=["bpmnReplace","bpmnRules","elementRegistry","injector","modeling","selection"];var pC=1500,fC={width:140,height:120},Zl={width:300,height:60},Ql={width:60,height:300},Qs={width:300,height:150},Js={width:150,height:300},ag={width:140,height:120},sg={width:100,height:40};function cg(e){e.on("resize.start",pC,function(t){var n=t.context,i=n.shape,r=n.direction,o=n.balanced;(v(i,"bpmn:Lane")||v(i,"bpmn:Participant"))&&(n.resizeConstraints=yC(i,r,o)),v(i,"bpmn:SubProcess")&&Fe(i)&&(n.minDimensions=ag),v(i,"bpmn:TextAnnotation")&&(n.minDimensions=sg)})}cg.$inject=["eventBus"];var sr=Math.abs,dC=Math.min,hC=Math.max;function ug(e,t,n,i){var r=e[t];e[t]=r===void 0?n:i(n,r)}function _o(e,t,n){return ug(e,t,n,dC)}function bo(e,t,n){return ug(e,t,n,hC)}var mC={top:20,left:50,right:20,bottom:20},gC={top:50,left:20,right:20,bottom:20};function yC(e,t,n){var i=Yn(e),r=!0,o=!0,a=Vs(i,[i]),s=ye(e),c={},u={},l=Ut(e),f=l?Zl:Ql;/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=ye(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&&bo(c,"top",m.top+f.height),sr(s.top-m.top)<5&&_o(u,"top",m.bottom-f.height)),/e/.test(t)&&(n&&sr(s.right-m.left)<10&&_o(c,"right",m.right-f.width),sr(s.right-m.right)<5&&bo(u,"right",m.left+f.width)),/s/.test(t)&&(n&&sr(s.bottom-m.top)<10&&_o(c,"bottom",m.bottom-f.height),sr(s.bottom-m.bottom)<5&&bo(u,"bottom",m.top+f.height)),/w/.test(t)&&(n&&sr(s.left-m.right)<10&&bo(c,"left",m.left+f.width),sr(s.left-m.left)<5&&_o(u,"left",m.right-f.width))});var p=i.children.filter(function(h){return!h.hidden&&!h.waypoints&&(v(h,"bpmn:FlowElement")||v(h,"bpmn:Artifact"))}),d=l?mC:gC;return p.forEach(function(h){var m=ye(h);/n/.test(t)&&(!l||r)&&_o(u,"top",m.top-d.top),/e/.test(t)&&(l||o)&&bo(u,"right",m.right+d.right),/s/.test(t)&&(!l||o)&&bo(u,"bottom",m.bottom+d.bottom),/w/.test(t)&&(l||r)&&_o(u,"left",m.left-d.left)}),{min:u,max:c}}function lg(e){!e||typeof e.stopPropagation!="function"||e.stopPropagation()}function xo(e){return e.originalEvent||e.srcEvent}function Jl(e){lg(e),lg(xo(e))}function $r(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 pg(){return/mac/i.test(navigator.platform)}function fg(e,t){return(xo(e)||e).button===t}function cr(e){return fg(e,0)}function vC(e){return fg(e,1)}function fa(e){var t=xo(e)||e;return cr(e)?pg()?t.metaKey:t.ctrlKey:!1}function ec(e){var t=xo(e)||e;return cr(e)&&t.shiftKey}var dg=1001;function hg(e,t){e.on("resize.start",dg+500,function(n){var i=n.context,r=i.shape;(v(r,"bpmn:Lane")||v(r,"bpmn:Participant"))&&(i.balanced=!fa(n))}),e.on("resize.end",dg,function(n){var i=n.context,r=i.shape,o=i.canExecute,a=i.newBounds;if(v(r,"bpmn:Lane")||v(r,"bpmn:Participant"))return o&&(a=Vh(a),t.resizeLane(r,a,i.balanced)),!1})}hg.$inject=["eventBus","modeling"];var _C=500;function ep(e,t,n,i,r){n.invoke(X,this);function o(l){return Le(l,["bpmn:ReceiveTask","bpmn:SendTask"])||bC(l,["bpmn:ErrorEventDefinition","bpmn:EscalationEventDefinition","bpmn:MessageEventDefinition","bpmn:SignalEventDefinition"])}function a(l){var f=e.getDefinitions(),p=f.get("rootElements");return!!ct(p,eo({id:l.id}))}function s(l){if(v(l,"bpmn:ErrorEventDefinition"))return"errorRef";if(v(l,"bpmn:EscalationEventDefinition"))return"escalationRef";if(v(l,"bpmn:MessageEventDefinition"))return"messageRef";if(v(l,"bpmn:SignalEventDefinition"))return"signalRef"}function c(l){if(Le(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(Le(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=Z(f),d=c(p),h;d&&!a(d)&&(h=e.getDefinitions().get("rootElements"),St(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");wt(p,f)}},!0),t.on("copyPaste.copyElement",function(l){var f=l.descriptor,p=l.element;if(!(p.labelTarget||!o(p))){var d=Z(p),h=c(d);h&&(f.referencedRootElement=h)}}),t.on("copyPaste.pasteElement",_C,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)})}ep.$inject=["bpmnjs","eventBus","injector","moddleCopy","bpmnFactory"],ae(ep,X);function bC(e,t){return be(t)||(t=[t]),Wi(t,function(n){return po(e,n)})}var mg=Math.max;function gg(e){e.on("spaceTool.getMinDimensions",function(t){var n=t.shapes,i=t.axis,r=t.start,o={};return k(n,function(a){var s=a.id;v(a,"bpmn:Participant")&&(o[s]=wC(a,i,r)),v(a,"bpmn:Lane")&&(o[s]=Ut(a)?Zl:Ql),v(a,"bpmn:SubProcess")&&Fe(a)&&(o[s]=ag),v(a,"bpmn:TextAnnotation")&&(o[s]=sg),v(a,"bpmn:Group")&&(o[s]=fC)}),o})}gg.$inject=["eventBus"];function xC(e){return e==="x"}function wC(e,t,n){var i=Ut(e);if(!RC(e))return i?Qs:Js;var r=xC(t),o={};return r?i?o=Qs:o={width:SC(e,n,r),height:Js.height}:i?o={width:Qs.width,height:EC(e,n,r)}:o=Js,o}function EC(e,t,n){var i;return i=CC(e,t,n),mg(Qs.height,i)}function SC(e,t,n){var i;return i=PC(e,t,n),mg(Js.width,i)}function RC(e){return!!ar(e).length}function CC(e,t,n){var i=ar(e),r;return r=tp(i,t,n),e.height-r.height+Zl.height}function PC(e,t,n){var i=ar(e),r;return r=tp(i,t,n),e.width-r.width+Ql.width}function tp(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?tp(o,t,n):r}var yg="_plane";function vg(e){var t=e.id;return AC(t)}function gi(e){var t=e.id;return v(e,"bpmn:SubProcess")?_g(t):t}function jr(e){return _g(e)}function tc(e){var t=Ge(e);return v(t,"bpmndi:BPMNPlane")}function _g(e){return e+yg}function AC(e){return e.replace(new RegExp(yg+"$"),"")}var bg=400,TC=600,xg={x:180,y:160};function Li(e,t,n,i,r,o,a){X.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 v(f,"bpmn:SubProcess")&&!Fe(f)}function u(f){var p=f.shape,d=f.newRootElement,h=Z(p);d=s._addDiagram(d||h),f.newRootElement=e.addRootElement(d)}function l(f){var p=f.shape,d=Z(p);s._removeDiagram(d);var h=f.newRootElement=a.get(gi(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;k(p,function(d){if(c(d)){var h=a.get(gi(d));if(!(!h||!d.children||!d.children.length)){var m=wg(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;!v(p,"bpmn:SubProcess")||!Fe(p)||k(na([p]),d=>{n.removeShape(d.annotation)})},!0),this.preExecuted("shape.delete",function(f){var p=f.shape;if(c(p)){var d=a.get(gi(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(gi(p)))},!0),this.postExecuted("shape.replace",function(f){var p=f.newShape,d=f.oldRoot,h=e.findRoot(gi(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(v(p,"bpmn:SubProcess")){var d=f.properties,h=f.oldProperties,m=h.id,g=d.id;if(m!==g){if(tc(p)){a.updateId(p,jr(g)),a.updateId(m,g);return}var R=a.get(jr(m));R&&a.updateId(jr(m),jr(g))}}},!0),this.reverted("element.updateProperties",function(f){var p=f.element;if(v(p,"bpmn:SubProcess")){var d=f.properties,h=f.oldProperties,m=h.id,g=d.id;if(m!==g){if(tc(p)){a.updateId(p,jr(m)),a.updateId(g,m);return}var R=a.get(jr(g));R&&a.updateId(R,jr(m))}}},!0),t.on("element.changed",function(f){var p=f.element;if(tc(p)){var d=p,h=a.get(vg(d));!h||h===d||t.fire("element.changed",{element:h})}}),this.executed("shape.toggleCollapse",bg,function(f){var p=f.shape;v(p,"bpmn:SubProcess")&&(Fe(p)?l(f):(u(f),s._showRecursively(p.children)))},!0),this.reverted("shape.toggleCollapse",bg,function(f){var p=f.shape;v(p,"bpmn:SubProcess")&&(Fe(p)?l(f):(u(f),s._showRecursively(p.children)))},!0),this.postExecuted("shape.toggleCollapse",TC,function(f){var p=f.shape;if(v(p,"bpmn:SubProcess")){var d=f.newRootElement;if(d)if(Fe(p))s._moveChildrenToShape(d.children.slice(),p),k(na(p.children),m=>{n.moveShape(m.annotation,{x:0,y:0},p.parent),k(m.associations,g=>{n.moveConnection(g,{x:0,y:0},p.parent)})});else{s._disconnectSharedAnnotations(p);var h=wg(p);s._moveChildrenToShape(h,d)}}},!0),t.on("copyPaste.createTree",function(f){var p=f.element,d=f.children;if(c(p)){var h=gi(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=v(Ge(m),"bpmndi:BPMNPlane");if(g){var R=vg(m),w=ct(h,function(b){return b.id===R});w&&(p.parent=w.id)}}),t.on("copyPaste.pasteElement",function(f){var p=f.descriptor;p.parent&&(c(p.parent)||p.parent.hidden)&&(p.hidden=!0)})}ae(Li,X),Li.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=At(i),o;if(!t.x)o={x:xg.x-r.x,y:xg.y-r.y};else{var a=xe(t),s=xe(r);o={x:a.x-s.x,y:a.y-s.y}}n.moveElements(e,o,t,{autoResize:!1})}},Li.prototype._disconnectSharedAnnotations=function(e){var t=this._modeling,n=new Set(fm(e).map(i=>i.annotation));n.size&&k(na(e.children),i=>{n.has(i.annotation)&&k(i.associations,r=>{t.removeConnection(r)})})},Li.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},Li.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},Li.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:gi(e),type:e.$type,di:i,businessObject:e,collapsed:!0});return o},Li.prototype._removeDiagram=function(e){var t=this._bpmnjs,n=t.getDefinitions().diagrams,i=ct(n,function(r){return r.plane.bpmnElement.id===e.id});return n.splice(n.indexOf(i),1),i},Li.$inject=["canvas","eventBus","modeling","elementFactory","bpmnFactory","bpmnjs","elementRegistry"];function MC(e){var t=[];return k(na(e),n=>{t.push(n.annotation),t.push.apply(t,n.associations)}),t}function wg(e){return e.children.slice().concat(MC(e.children)).concat(kC(e))}function kC(e){return al(e.children||[]).reduce(function(t,n){return n.label&&n.label.parent!==e&&t.push(n.label),t},[])}function np(e,t){e.invoke(X,this),this.postExecuted("shape.replace",function(n){var i=n.context.oldShape,r=n.context.newShape;if(!(!v(r,"bpmn:SubProcess")||v(r,"bpmn:AdHocSubProcess")||!(v(i,"bpmn:Task")||v(i,"bpmn:CallActivity"))||!Fe(r))){var o=DC(r);t.createShape({type:"bpmn:StartEvent"},o,r)}})}np.$inject=["injector","modeling"],ae(np,X);function DC(e){return{x:e.x+e.width/6,y:e.y+e.height/2}}function ip(e,t){X.call(this,e),this.preExecute("connection.create",function(n){const{target:i}=n;v(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&&v(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(!(!v(r,"bpmn:TextAnnotation")||o.autoResize)){var a=i.newBounds,s=t.getTextAnnotationBounds(a,Hn(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}}})}ae(ip,X),ip.$inject=["eventBus","textRenderer"];function rp(e,t){X.call(this,e),this.postExecuted("shape.toggleCollapse",1500,function(n){var i=n.shape;if(Fe(i))return;var r=Xo(i);r.forEach(function(a){var s=a.incoming.slice(),c=a.outgoing.slice();k(s,function(u){o(u,!0)}),k(c,function(u){o(u,!1)})});function o(a,s){r.indexOf(a.source)!==-1&&r.indexOf(a.target)!==-1||v(a,"bpmn:Association")&&(v(a.source,"bpmn:TextAnnotation")||v(a.target,"bpmn:TextAnnotation"))||(s?t.reconnectEnd(a,i,xe(i)):t.reconnectStart(a,i,xe(i)))}},!0)}ae(rp,X),rp.$inject=["eventBus","modeling"];var op=500;function ap(e,t,n){X.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=OC(c).concat([a]),f=Mm(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"],op,function(a){var s=a.context,c=s.shape;v(c,"bpmn:SubProcess")&&(c.collapsed?Ge(c).isExpanded=!1:(i(c.children),Ge(c).isExpanded=!0))}),this.reverted(["shape.toggleCollapse"],op,function(a){var s=a.context,c=s.shape;c.collapsed?Ge(c).isExpanded=!1:Ge(c).isExpanded=!0}),this.postExecuted(["shape.toggleCollapse"],op,function(a){var s=a.context.shape,c=t.getDefaultSize(s),u;s.collapsed?u=o(s,c):u=r(s,c),n.resizeShape(s,u,null,{autoResize:s.collapsed?!1:"nwse"})})}ae(ap,X),ap.$inject=["eventBus","elementFactory","modeling"];function OC(e){return e.filter(function(t){return!t.hidden})}function sp(e,t,n,i){t.invoke(X,this),this.preExecute("shape.delete",function(r){var o=r.context,a=o.shape,s=a.businessObject;De(a)||(v(a,"bpmn:Participant")&&Fe(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;v(r,"bpmn:Collaboration")&&n.ids.unclaim(o.id)})}ae(sp,X),sp.$inject=["canvas","injector","moddle","modeling"];function cp(e,t){X.call(this,e),this.preExecute("connection.delete",function(n){var i=n.context,r=i.connection,o=r.source;LC(r,o)&&t.updateProperties(o,{default:null})})}ae(cp,X),cp.$inject=["eventBus","modeling"];function LC(e,t){if(!v(e,"bpmn:SequenceFlow"))return!1;var n=Z(t),i=Z(e);return n.get("default")===i}var IC=500,NC=5e3,Eg=["shape.create","shape.delete","shape.move","shape.resize"],Sg=[...Eg,"spaceTool","lane.add","lane.resize","lane.split","elements.create","elements.delete","elements.move"];function up(e,t){X.call(this,e);var n;function i(){return n=n||new BC,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(Sg,NC,function(){i()}),this.postExecuted(Sg,IC,function(){o()}),this.preExecute(Eg,function(a){var s=a.context,c=s.shape,u=r();!c||c.labelTarget||(v(c,"bpmn:Lane")&&u.addLane(c),v(c,"bpmn:FlowNode")&&u.addFlowNode(c))})}up.$inject=["eventBus","modeling"],ae(up,X);function BC(){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 $C=500,jC=5e3,Rg=["connection.create","connection.delete","connection.layout","connection.move","connection.reconnect","connection.updateWaypoints","shape.create","shape.delete","shape.move","shape.resize"],Cg=[...Rg,"elements.create","elements.delete","elements.move","label.create","spaceTool"];function lp(e,t){X.call(this,e);var n;function i(){return n=n||new FC,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(Cg,jC,function(){i()}),this.postExecuted(Cg,$C,function(){o()}),this.preExecute(Rg,function(a){var s=a.context.connection||a.context.shape,c=r();!s||s.labelTarget||(v(s,"bpmn:FlowElement")&&c.addFlowElement(s),v(s,"bpmn:Group")&&c.addGroup(s))}),this.preExecute("label.create",function(a){var s=a.context.labelTarget;v(s,"bpmn:Group")&&r().addGroup(s)})}lp.$inject=["eventBus","modeling"],ae(lp,X);function FC(){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 pp(e,t){X.call(this,e),this.postExecuted("elements.create",function(n){const i=n.context,r=i.elements;for(const o of r)HC(o)&&!VC(o)&&t.updateProperties(o,{isForCompensation:void 0})})}ae(pp,X),pp.$inject=["eventBus","modeling"];function HC(e){const t=Z(e);return t&&t.isForCompensation}function zC(e){return e&&v(e,"bpmn:BoundaryEvent")&&po(e,"bpmn:CompensateEventDefinition")}function VC(e){return e.incoming.filter(n=>zC(n.source)).length>0}const GC={__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",_l],appendBehavior:["type",bl],associationBehavior:["type",wl],attachEventBehavior:["type",Ns],artifactBehavior:["type",xl],boundaryEventBehavior:["type",El],categoryRootElementReferenceBehavior:["type",Sl],compensateBoundaryEventBehaviour:["type",Rl],createBehavior:["type",Cl],createDataObjectBehavior:["type",Pl],createParticipantBehavior:["type",Ml],dataInputAssociationBehavior:["type",kl],dataStoreBehavior:["type",Dl],deleteLaneBehavior:["type",Ol],detachEventBehavior:["type",Gs],dropOnFlowBehavior:["type",Il],eventBasedGatewayBehavior:["type",Nl],fixHoverBehavior:["type",Bm],groupBehavior:["type",Bl],importDockingFix:["type",jm],isHorizontalFix:["type",jl],labelBehavior:["type",Hl],layoutConnectionBehavior:["type",zl],messageFlowBehavior:["type",Wl],nonInterruptingBehavior:["type",Ul],removeElementBehavior:["type",ql],removeEmbeddedLabelBoundsBehavior:["type",Yl],removeParticipantBehavior:["type",Kl],replaceConnectionBehavior:["type",Xl],replaceElementBehaviour:["type",Zs],resizeBehavior:["type",cg],resizeLaneBehavior:["type",hg],rootElementReferenceBehavior:["type",ep],spaceToolBehavior:["type",gg],subProcessPlaneBehavior:["type",Li],subProcessStartEventBehavior:["type",np],textAnnotationBehavior:["type",ip],toggleCollapseConnectionBehaviour:["type",rp],toggleElementCollapseBehaviour:["type",ap],unclaimIdBehavior:["type",sp],unsetDefaultFlowBehavior:["type",cp],updateFlowNodeRefsBehavior:["type",up],updateCategoryValueRefsBehavior:["type",lp],setCompensationActivityAfterPasteBehavior:["type",pp]};function fp(e){this._commandStack=e.get("commandStack",!1)}fp.$inject=["injector"],fp.prototype.allowed=function(e,t){var n=!0,i=this._commandStack;return i&&(n=i.canExecute(e,t)),n===void 0?!0:n};const yi={__init__:["rules"],rules:["type",fp]};function qn(e){X.call(this,e),this.init()}qn.$inject=["eventBus"],ae(qn,X),qn.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)})},qn.prototype.init=function(){};function Pg(e,t){var n=Qt(e,t,-15);return n!=="intersect"?n:null}function en(e){qn.call(this,e)}ae(en,qn),en.$inject=["eventBus"],en.prototype.init=function(){this.addRule("connection.start",function(e){var t=e.source;return WC(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 ic(t,n)}finally{r&&(n.parent=null)}}),this.addRule("connection.reconnect",function(e){var t=e.connection,n=e.source,i=e.target;return ic(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 Fg(t,n,i)}),this.addRule("elements.create",function(e){var t=e.elements,n=e.position,i=e.target;return rt(i)&&!rc(t,i)?!1:Cr(t,function(r){return rt(r)?ic(r.source,r.target,r):r.host?da(r,r.host,null,n):gp(r,i)})}),this.addRule("elements.move",function(e){var t=e.target,n=e.shapes,i=e.position,r=e.hints;return r!=null&&r.keyboardMove&&n.some(function(a){return Lg(a)&&!n.includes(a.host)})?!1:da(n,t,null,i)||$g(n,t,i)||jg(n,t)||rc(n,t)}),this.addRule("shape.create",function(e){return gp(e.shape,e.target,e.source,e.position)}),this.addRule("shape.attach",function(e){return da(e.shape,e.target,null,e.position)}),this.addRule("element.copy",function(e){var t=e.element,n=e.elements;return Wg(n,t)})},en.prototype.canConnectMessageFlow=Vg,en.prototype.canConnectSequenceFlow=Gg,en.prototype.canConnectDataAssociation=yp,en.prototype.canConnectAssociation=Hg,en.prototype.canConnectCompensationAssociation=zg,en.prototype.canMove=jg,en.prototype.canAttach=da,en.prototype.canReplace=$g,en.prototype.canDrop=wo,en.prototype.canInsert=rc,en.prototype.canCreate=gp,en.prototype.canConnect=ic,en.prototype.canResize=Fg,en.prototype.canCopy=Wg;function WC(e){return dp(e)?null:Le(e,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference","bpmn:Group","bpmn:TextAnnotation"])}function dp(e){return!e||De(e)}function Ag(e){do{if(v(e,"bpmn:Process"))return Z(e);if(v(e,"bpmn:Participant"))return Z(e).processRef||Z(e)}while(e=e.parent)}function hp(e){return v(e,"bpmn:TextAnnotation")}function mp(e){return v(e,"bpmn:Group")&&!e.labelTarget}function Tg(e){return v(e,"bpmn:BoundaryEvent")&&vi(e,"bpmn:CompensateEventDefinition")}function nc(e){return Z(e).isForCompensation}function UC(e,t){var n=Ag(e),i=Ag(t);return n===i}function YC(e){return v(e,"bpmn:InteractionNode")&&!v(e,"bpmn:BoundaryEvent")&&(!v(e,"bpmn:Event")||v(e,"bpmn:ThrowEvent")&&Dg(e,"bpmn:MessageEventDefinition"))}function qC(e){return v(e,"bpmn:InteractionNode")&&!nc(e)&&(!v(e,"bpmn:Event")||v(e,"bpmn:CatchEvent")&&Dg(e,"bpmn:MessageEventDefinition"))&&!(v(e,"bpmn:BoundaryEvent")&&!vi(e,"bpmn:MessageEventDefinition"))}function Mg(e){for(var t=e;t=t.parent;){if(v(t,"bpmn:FlowElementsContainer"))return Z(t);if(v(t,"bpmn:Participant"))return Z(t).processRef}return null}function kg(e,t){var n=Mg(e),i=Mg(t);return n===i}function vi(e,t){var n=Z(e);return!!ct(n.eventDefinitions||[],function(i){return v(i,t)})}function Dg(e,t){var n=Z(e);return(n.eventDefinitions||[]).every(function(i){return v(i,t)})}function KC(e){return v(e,"bpmn:FlowNode")&&!v(e,"bpmn:EndEvent")&&!un(e)&&!(v(e,"bpmn:IntermediateThrowEvent")&&vi(e,"bpmn:LinkEventDefinition"))&&!Tg(e)&&!nc(e)}function XC(e){return v(e,"bpmn:FlowNode")&&!v(e,"bpmn:StartEvent")&&!v(e,"bpmn:BoundaryEvent")&&!un(e)&&!(v(e,"bpmn:IntermediateCatchEvent")&&vi(e,"bpmn:LinkEventDefinition"))&&!nc(e)}function ZC(e){return v(e,"bpmn:ReceiveTask")||v(e,"bpmn:IntermediateCatchEvent")&&(vi(e,"bpmn:MessageEventDefinition")||vi(e,"bpmn:TimerEventDefinition")||vi(e,"bpmn:ConditionalEventDefinition")||vi(e,"bpmn:SignalEventDefinition"))}function QC(e){for(var t=[];e;)e=e.parent,e&&t.push(e);return t}function Og(e,t){var n=QC(t);return n.indexOf(e)!==-1}function ic(e,t,n){if(dp(e)||dp(t))return null;if(!v(n,"bpmn:DataAssociation")){if(Vg(e,t))return{type:"bpmn:MessageFlow"};if(Gg(e,t))return{type:"bpmn:SequenceFlow"}}var i=yp(e,t);return i||(zg(e,t)?{type:"bpmn:Association",associationDirection:"One"}:Hg(e,t)?{type:"bpmn:Association",associationDirection:"None"}:!1)}function wo(e,t){return De(e)||mp(e)?!0:v(t,"bpmn:Participant")&&!Fe(t)?!1:v(e,"bpmn:Participant")?v(t,"bpmn:Process")||v(t,"bpmn:Collaboration"):Le(e,["bpmn:DataInput","bpmn:DataOutput"])&&e.parent?t===e.parent:v(e,"bpmn:Lane")?v(t,"bpmn:Participant")||v(t,"bpmn:Lane"):v(e,"bpmn:BoundaryEvent")&&!JC(e)?!1:v(e,"bpmn:FlowElement")&&!v(e,"bpmn:DataStoreReference")?v(t,"bpmn:FlowElementsContainer")?Fe(t):Le(t,["bpmn:Participant","bpmn:Lane"]):v(e,"bpmn:DataStoreReference")&&v(t,"bpmn:Collaboration")?Wi(Z(t).get("participants"),function(n){return!!n.get("processRef")}):Le(e,["bpmn:Artifact","bpmn:DataAssociation","bpmn:DataStoreReference"])?Le(t,["bpmn:Collaboration","bpmn:Lane","bpmn:Participant","bpmn:Process","bpmn:SubProcess"]):v(e,"bpmn:MessageFlow")?v(t,"bpmn:Collaboration")||e.source.parent==t||e.target.parent==t:!1}function JC(e){return Z(e).cancelActivity&&(Ig(e)||Ng(e))}function Lg(e){return!De(e)&&v(e,"bpmn:BoundaryEvent")}function eP(e){return v(e,"bpmn:Lane")}function tP(e){return Lg(e)||v(e,"bpmn:IntermediateThrowEvent")&&Ig(e)?!0:v(e,"bpmn:IntermediateCatchEvent")&&Ng(e)}function Ig(e){var t=Z(e);return t&&!(t.eventDefinitions&&t.eventDefinitions.length)}function Ng(e){return Bg(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])}function Bg(e,t){return t.some(function(n){return vi(e,n)})}function nP(e){return v(e,"bpmn:ReceiveTask")&&ct(e.incoming,function(t){return v(t.source,"bpmn:EventBasedGateway")})}function da(e,t,n,i){if(Array.isArray(e)||(e=[e]),e.length!==1)return!1;var r=e[0];return De(r)||!tP(r)||un(t)||!v(t,"bpmn:Activity")||nc(t)||i&&!Pg(i,t)||nP(t)?!1:"attach"}function $g(e,t,n){if(!t)return!1;var i={replacements:[]};return k(e,function(r){un(t)||v(r,"bpmn:StartEvent")&&r.type!=="label"&&wo(r,t)&&(pS(r)||i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"}),(fS(r)||dS(r)||hS(r))&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"}),Bg(r,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])&&v(t,"bpmn:SubProcess")&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:StartEvent"})),v(t,"bpmn:Transaction")||vi(r,"bpmn:CancelEventDefinition")&&r.type!=="label"&&(v(r,"bpmn:EndEvent")&&wo(r,t)&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:EndEvent"}),v(r,"bpmn:BoundaryEvent")&&da(r,t,null,n)&&i.replacements.push({oldElementId:r.id,newElementType:"bpmn:BoundaryEvent"}))}),i.replacements.length?i:!1}function jg(e,t){return Wi(e,eP)?!1:t===void 0?!0:t===null?!1:e.every(function(n){return wo(n,t)})}function gp(e,t,n,i){return t?De(e)||mp(e)?!0:wo(e,t)||rc(e,t):!1}function Fg(e,t,n){return v(e,"bpmn:SubProcess")?Fe(e)&&(!t||t.width>=100&&t.height>=80):v(e,"bpmn:Lane")||v(e,"bpmn:Participant")?!0:hp(e)?n?n==="e"||n==="w":!0:mp(e)?!0:De(e)?n?n==="e"||n==="w":!0:!1}function iP(e,t){var n=hp(e),i=hp(t);return(n||i)&&n!==i}function Hg(e,t){return Og(t,e)||Og(e,t)?!1:iP(e,t)?!0:!!yp(e,t)}function zg(e,t){return kg(e,t)&&Tg(e)&&v(t,"bpmn:Activity")&&!oP(t,e)&&!un(t)}function Vg(e,t){return Yg(e)&&!Yg(t)?!1:YC(e)&&qC(t)&&!UC(e,t)}function Gg(e,t){return KC(e)&&XC(t)&&kg(e,t)&&!(v(e,"bpmn:EventBasedGateway")&&!ZC(t))}function yp(e,t){return Le(e,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&Le(t,["bpmn:Activity","bpmn:ThrowEvent"])?{type:"bpmn:DataInputAssociation"}:Le(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&Le(e,["bpmn:Activity","bpmn:CatchEvent"])?{type:"bpmn:DataOutputAssociation"}:!1}function rc(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:Le(t,["bpmn:SequenceFlow","bpmn:MessageFlow"])&&!De(t)&&v(e,"bpmn:FlowNode")&&!v(e,"bpmn:BoundaryEvent")&&wo(e,t.parent)}function vp(e,t){return e&&t&&e.indexOf(t)!==-1}function Wg(e,t){return De(t)?!0:!(v(t,"bpmn:Lane")&&!vp(e,t.parent)||v(t,"bpmn:MessageFlow")&&!rP(e,t))}function rP(e,t){var n=Ug(t.source),i=Ug(t.target);return vp(e,n)&&vp(e,i)}function Ug(e){for(;e;e=e.parent)if(v(e,"bpmn:Participant"))return e;return null}function Yg(e){return mo(e,"bpmn:Process")||mo(e,"bpmn:Collaboration")}function oP(e,t){return e.attachers.includes(t)}const aP={__depends__:[yi],__init__:["bpmnRules"],bpmnRules:["type",en]};var sP=2e3;function qg(e,t){e.on("saveXML.start",sP,n);function n(){var i=t.getRootElements();k(i,function(r){var o=Ge(r),a,s;a=Xo([r]),a=Ie(a,function(c){return c!==r&&!c.labelTarget}),s=on(a,Ge),o.set("planeElement",s)})}}qg.$inject=["eventBus","canvas"];const cP={__init__:["bpmnDiOrdering"],bpmnDiOrdering:["type",qg]};function oc(e){X.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)})}oc.prototype.getOrdering=function(e,t){return null},ae(oc,X);function _p(e,t){oc.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=ct(n,function(c){return Le(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&&!Le(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||v(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=Kf(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}}}_p.$inject=["eventBus","canvas"],ae(_p,oc);const uP={__init__:["bpmnOrderingProvider"],bpmnOrderingProvider:["type",_p]};function ha(){}ha.prototype.get=function(){return this._data},ha.prototype.set=function(e){this._data=e},ha.prototype.clear=function(){var e=this._data;return delete this._data,e},ha.prototype.isEmpty=function(){return!this._data};const lP={clipboard:["type",ha]};var Kg=1500;function Xg(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",Kg,function(s){o(s)})}),(function(){var a,s;t.on("element.hover",function(c){a=c.gfx,s=c.element}),t.on("element.hover",Kg,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=$r(a),c=document.elementFromPoint(s.x,s.y),pP(c)}}Xg.$inject=["elementRegistry","eventBus","injector"];function pP(e){return Dr(e,"svg, .djs-element",!0)}const fP={__init__:["hoverFix"],hoverFix:["type",Xg]};function dP(e){return!0}function ac(e){return cr(e)||vC(e)}var Zg=500;function Qg(e,t,n){var i=this;function r(T,H,V){if(!s(T,H)){var $,G,fe;V?G=t.getGraphics(V):($=H.delegateTarget||H.target,$&&(G=$,V=t.get(G))),!(!G||!V)&&(fe=e.fire(T,{element:V,gfx:G,originalEvent:H}),fe===!1&&(H.stopPropagation(),H.preventDefault()))}}var o={};function a(T){return o[T]}function s(T,H){var V=u[T]||cr;return!V(H)}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":dP,"element.mousedown":ac,"element.mouseup":ac,"element.click":ac,"element.dblclick":ac};function l(T,H,V){var $=c[T];if(!$)throw new Error("unmapped DOM event name <"+T+">");return r($,H,V)}var f="svg, .djs-element";function p(T,H,V,$){var G=o[V]=function(fe){r(V,fe)};$&&(u[V]=$),G.$delegate=Cn.bind(T,f,H,G)}function d(T,H,V){var $=a(V);$&&Cn.unbind(T,H,$.$delegate)}function h(T){k(c,function(H,V){p(T,V,H)})}function m(T){k(c,function(H,V){d(T,V,H)})}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 H=T.element,V=T.gfx;e.fire("interactionEvents.createHit",{element:H,gfx:V})}),e.on(["shape.changed","connection.changed"],Zg,function(T){var H=T.element,V=T.gfx;e.fire("interactionEvents.updateHit",{element:H,gfx:V})}),e.on("interactionEvents.createHit",Zg,function(T){var H=T.element,V=T.gfx;i.createDefaultHit(H,V)}),e.on("interactionEvents.updateHit",function(T){var H=T.element,V=T.gfx;i.updateDefaultHit(H,V)});var g=S("djs-hit djs-hit-stroke"),R=S("djs-hit djs-hit-click-stroke"),w=S("djs-hit djs-hit-all"),b=S("djs-hit djs-hit-no-move"),x={all:w,"click-stroke":R,stroke:g,"no-move":b};function S(T,H){return H=L({stroke:"white",strokeWidth:15},H||{}),n.cls(T,["no-fill","no-border"],H)}function M(T,H){var V=x[H];if(!V)throw new Error("invalid hit type <"+H+">");return se(T,V),T}function N(T,H){Pe(T,H)}this.removeHits=function(T){var H=ys(".djs-hit",T);k(H,Ht)},this.createDefaultHit=function(T,H){var V=T.waypoints,$=T.isFrame,G;return V?this.createWaypointsHit(H,V):(G=$?"stroke":"all",this.createBoxHit(H,G,{width:T.width,height:T.height}))},this.createWaypointsHit=function(T,H){var V=Ko(H);return M(V,"stroke"),N(T,V),V},this.createBoxHit=function(T,H,V){V=L({x:0,y:0},V);var $=me("rect");return M($,H),se($,V),N(T,$),$},this.updateDefaultHit=function(T,H){var V=nt(".djs-hit",H);if(V)return T.waypoints?ol(V,T.waypoints):se(V,{width:T.width,height:T.height}),V},this.fire=r,this.triggerMouseEvent=l,this.mouseHandler=a,this.registerEvent=p,this.unregisterEvent=d}Qg.$inject=["eventBus","elementRegistry","styles"];const sc={__init__:["interactionEvents"],interactionEvents:["type",Qg]};function Eo(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)})}Eo.$inject=["eventBus","canvas"],Eo.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()})}},Eo.prototype.get=function(){return Array.from(this._selectedElements)},Eo.prototype.isSelected=function(e){return this._selectedElements.has(e)},Eo.prototype.select=function(e,t){var n=this.get();be(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?k(e,o=>{this._selectedElements.add(o)}):this._selectedElements=new Set(e),this._eventBus.fire("selection.changed",{oldSelection:n,newSelection:this.get()})};var Jg="hover",ey="selected";function ty(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,Jg)}),t.on("element.out",function(r){i(r.element,Jg)}),t.on("selection.changed",function(r){function o(u){i(u,ey)}function a(u){n(u,ey)}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)})}ty.$inject=["canvas","eventBus"];function ny(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;be(u)?t.select(u):t.select(s.filter(hP))}}),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=ct(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=ec(r);if(a&&s)return c?t.deselect(o):t.select(o);a?t.deselect(o):t.select(o,c)}})}ny.$inject=["eventBus","selection","canvas","elementRegistry"];function hP(e){return!e.hidden}const Kn={__init__:["selectionVisuals","selectionBehavior"],__depends__:[sc],selection:["type",Eo],selectionVisuals:["type",ty],selectionBehavior:["type",ny]};var mP=/^djs-cursor-.*$/;function cc(e){var t=gt(document.body);t.removeMatching(mP),e&&t.add("djs-cursor-"+e)}function iy(){cc(null)}var gP=5e3;function ry(e,t){t=t||"element.click";function n(){return!1}return e.once(t,gP,n),function(){e.off(t,n)}}var yP=["c","C"],vP=["v","V"],_P=["d","D"],bP=["x","X"],xP=["y","Y"],oy=["z","Z"];function wP(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Tn(e){return e.altKey?!1:e.ctrlKey||e.metaKey}function zt(e,t){return e=be(e)?e:[e],e.indexOf(t.key)!==-1||e.indexOf(t.code)!==-1}function bp(e){return e.shiftKey}function EP(e){return Tn(e)&&zt(yP,e)}function SP(e){return Tn(e)&&zt(vP,e)}function RP(e){return Tn(e)&&zt(_P,e)}function CP(e){return Tn(e)&&zt(bP,e)}function PP(e){return Tn(e)&&!bp(e)&&zt(oy,e)}function AP(e){return Tn(e)&&(zt(xP,e)||zt(oy,e)&&bp(e))}var So=Math.round,ay="djs-drag-active";function Fr(e){e.preventDefault()}function TP(e){return typeof TouchEvent<"u"&&e instanceof TouchEvent}function MP(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function sy(e,t,n,i){var r={threshold:5,trapClick:!0},o;function a(b){var x=t.viewbox(),S=t._container.getBoundingClientRect();return{x:x.x+(b.x-S.left)/x.scale,y:x.y+(b.y-S.top)/x.scale}}function s(b,x){x=x||o;var S=e.createEvent(L({},x.payload,x.data,{isTouch:x.isTouch}));return e.fire("drag."+b,S)===!1?!1:e.fire(x.prefix+"."+b,S)}function c(b){var x=b.filter(function(S){return i.get(S.id)});x.length&&n.select(x)}function u(b,x){var S=o.payload,M=o.displacement,N=o.globalStart,T=$r(b),H=ri(T,N),V=o.localStart,$=a(T),G=ri($,V);if(!o.active&&(x||MP(H)>o.threshold)){if(L(S,{x:So(V.x+M.x),y:So(V.y+M.y),dx:0,dy:0},{originalEvent:b}),s("start")===!1)return g();o.active=!0,o.keepSelection||(S.previousSelection=n.get(),n.select(null)),o.cursor&&cc(o.cursor),t.addMarker(t.getRootElement(),ay)}Jl(b),o.active&&(L(S,{x:So($.x+M.x),y:So($.y+M.y),dx:So(G.x),dy:So(G.y)},{originalEvent:b}),s("move"))}function l(b){var x,S=!0;o.active&&(b&&(o.payload.originalEvent=b,Jl(b)),S=s("end")),S===!1&&s("rejected"),x=R(S!==!0),s("ended",x)}function f(b){zt("Escape",b)&&(Fr(b),g())}function p(b){var x;o.active&&(x=ry(e),setTimeout(x,400),Fr(b)),l(b)}function d(b){u(b)}function h(b){var x=o.payload;x.hoverGfx=b.gfx,x.hover=b.element,s("hover")}function m(b){s("out");var x=o.payload;x.hoverGfx=null,x.hover=null}function g(b){var x;if(o){var S=o.active;S&&s("cancel"),x=R(b),S&&s("canceled",x)}}function R(b){var x,S;s("cleanup"),iy(),o.trapClick?S=p:S=l,Ce.unbind(document,"mousemove",u),Ce.unbind(document,"dragstart",Fr),Ce.unbind(document,"selectstart",Fr),Ce.unbind(document,"mousedown",S,!0),Ce.unbind(document,"mouseup",S,!0),Ce.unbind(document,"keyup",f),Ce.unbind(document,"touchstart",d,!0),Ce.unbind(document,"touchcancel",g,!0),Ce.unbind(document,"touchmove",u,!0),Ce.unbind(document,"touchend",l,!0),e.off("element.hover",h),e.off("element.out",m),t.removeMarker(t.getRootElement(),ay);var M=o.payload.previousSelection;return b!==!1&&M&&!n.get().length&&c(M),x=o,o=null,x}function w(b,x,S,M){o&&g(!1),typeof x=="string"&&(M=S,S=x,x=null),M=L({},r,M||{});var N=M.data||{},T,H,V,$,G;if(M.trapClick?$=p:$=l,b?(T=xo(b)||b,H=$r(b),Jl(b),T.type==="dragstart"&&Fr(T)):(T=null,H={x:0,y:0}),V=a(H),x||(x=V),G=TP(T),o=L({prefix:S,data:N,payload:{},globalStart:H,displacement:ri(x,V),localStart:V,isTouch:G},M),M.manual||(G?(Ce.bind(document,"touchstart",d,!0),Ce.bind(document,"touchcancel",g,!0),Ce.bind(document,"touchmove",u,!0),Ce.bind(document,"touchend",l,!0)):(Ce.bind(document,"mousemove",u),Ce.bind(document,"dragstart",Fr),Ce.bind(document,"selectstart",Fr),Ce.bind(document,"mousedown",$,!0),Ce.bind(document,"mouseup",$,!0)),Ce.bind(document,"keyup",f),e.on("element.hover",h),e.on("element.out",m)),s("init")===!1)return g(),!1;M.autoActivate&&u(b,!0)}e.on("diagram.destroy",g),this.init=w,this.move=u,this.hover=h,this.out=m,this.end=l,this.cancel=g,this.context=function(){return o},this.setOptions=function(b){L(r,b)}}sy.$inject=["eventBus","canvas","selection","elementRegistry"];const Ii={__depends__:[fP,Kn],dragging:["type",sy]};function Ro(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(Math.random()*1e9)+"-"}Ro.prototype.next=function(){return this._prefix+ ++this._counter};const kP=new Ro("ps");var DP=["marker-start","marker-mid","marker-end"],OP=["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=bh(n);return this._cloneMarkers(Ir(r),i),se(r,this._styles.cls(i,[])),Pe(t,r),se(r,"data-preview-support-element-id",e.id),r},ur.prototype.addFrame=function(e,t){var n=me("rect",{class:"djs-resize-overlay",width:e.width,height:e.height,x:e.x,y:e.y});return Pe(t,n),se(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)}),BP(e)&&DP.forEach(function(r){if(se(e,r)){var o=LP(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,kP.next()].join("-"),a=nt("marker#"+n.id,e);e=e||this._canvas._svg;var s=a||bh(n);s.id=o,He(s).add(r);var c=nt(":scope > defs",e);c||(c=me("defs"),Pe(e,c)),Pe(c,s);var u=NP(s.id);se(t,i,u)};function LP(e,t,n){var i=IP(se(e,t));return nt("marker#"+i,n||document)}function IP(e){return e.match(/url\(['"]?#([^'"]*)['"]?\)/)[1]}function NP(e){return"url(#"+e+")"}function BP(e){return OP.indexOf(e.nodeName)!==-1}const Co={__init__:["previewSupport"],previewSupport:["type",ur]};var $P="drop-ok",cy="drop-not-ok",uy="attach-ok",ly="new-parent",py="create",jP=2e3;function fy(e,t,n,i,r){function o(c,u,l,f,p){if(!u)return!1;c=Ie(c,function(w){var b=w.labelTarget;return!w.parent&&!(De(w)&&c.indexOf(b)!==-1)});var d=ct(c,function(w){return!rt(w)}),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 R=p.connectionTarget;return g||h?(d&&f&&(m=r.allowed("connection.create",{source:R===f?d:f,target:R===f?f:d,hints:{targetParent:u,targetAttach:h}})),{attach:h,connect:m}):g===null||h===null?null:!1}function a(c,u){[uy,$P,cy,ly].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}dy(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,uy):a(f,m?ly:cy))}),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,R=u.hints||{};if(h===!1||!d)return!1;dy(c);var w={x:c.x,y:c.y};g?f=i.appendShape(l,f,w,d,{attach:m,connection:g===!0?{}:g,connectionTarget:R.connectionTarget}):(p=i.createElements(p,w,d,L({},R,{attach:m})),f=ct(p,function(b){return!rt(b)})),L(u,{elements:p,shape:f}),L(c,{elements:p,shape:f})});function s(){var c=t.context();c&&c.prefix===py&&t.cancel()}n.on("create.init",function(){n.on("elements.changed",s),n.once(["create.cancel","create.end"],jP,function(){n.off("elements.changed",s)})}),this.start=function(c,u,l){be(u)||(u=[u]);var f=ct(u,function(h){return!rt(h)});if(f){l=L({elements:u,hints:{},shape:f},l||{}),k(u,function(h){Se(h.x)||(h.x=0),Se(h.y)||(h.y=0)});var p=Ie(u,function(h){return!h.hidden}),d=At(p);k(u,function(h){rt(h)&&(h.waypoints=on(h.waypoints,function(m){return{x:m.x-d.x-d.width/2,y:m.y-d.y-d.height/2}})),L(h,{x:h.x-d.x-d.width/2,y:h.y-d.y-d.height/2})}),t.init(c,py,{cursor:"grabbing",autoActivate:!0,data:{shape:f,elements:u,context:l}})}}}fy.$inject=["canvas","dragging","eventBus","modeling","rules"];function dy(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&&!rt(e[0])}var FP=750;function my(e,t,n,i,r){function o(a){var s=me("g");se(s,r.cls("djs-drag-group",["no-events"]));var c=me("g");return a.forEach(function(u){var l;u.hidden||(u.waypoints?(l=n._createContainer("connection",c),n.drawConnection(Ir(l),u)):(l=n._createContainer("shape",c),n.drawShape(Ir(l),u),Jt(l,u.x,u.y)),i.addDragger(u,s,l))}),s}t.on("create.move",FP,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(),Pe(f,l)),Jt(l,a.x,a.y)):Ht(l)}),t.on("create.cleanup",function(a){var s=a.context,c=s.dragGroup;c&&Ht(c)})}my.$inject=["canvas","eventBus","graphicsFactory","previewSupport","styles"];const uc={__depends__:[Ii,Co,yi,Kn],__init__:["create","createPreview"],create:["type",fy],createPreview:["type",my]};function xp(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)})}xp.$inject=["eventBus"],xp.prototype.getLastMoveEvent=function(){return this._lastMoveEvent||HP(0,0)};function HP(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 ma={__init__:["mouse"],mouse:["type",xp]};var gy=2e3;function Mn(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),zP(l)&&(u.priority=2,u.host=l.host.id),rt(l)&&(u.priority=3,u.source=l.source.id,u.target=l.target.id,u.waypoints=VP(l)),De(l)&&(u.priority=4,u.labelTarget=l.labelTarget.id),k(["x","y","width","height"],function(p){Se(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;L(u,{createElementsBehavior:!1})})}Mn.$inject=["canvas","create","clipboard","elementFactory","eventBus","modeling","mouse","rules"],Mn.prototype.copy=function(e,t={}){var n,i;return be(e)||(e=e?[e]:[]),n=this._eventBus.fire("copyPaste.canCopyElements",{elements:e}),n===!1?i={}:i=this.createTree(be(n)?n:e),this._eventBus.fire("copyPaste.elementsCopied",{elements:e,tree:i,hints:t}),i},Mn.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})}}},Mn.prototype.duplicate=function(e,t={}){var n=this.copy(e,{clip:!1});return this.paste({...t,tree:n})},Mn.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},Mn.prototype._getElementIdsFromTree=function(e){var t={};return k(e,function(n){k(n,function(i){i.id&&(t[i.id]=!0)})}),t},Mn.prototype._paste=function(e,t,n,i){k(e,function(o){Se(o.x)||(o.x=0),Se(o.y)||(o.y=0)});var r=At(e);return k(e,function(o){rt(o)&&(o.waypoints=on(o.waypoints,function(a){return{x:a.x-r.x-r.width/2,y:a.y-r.y-r.height/2}})),L(o,{x:o.x-r.x-r.width/2,y:o.y-r.y-r.height/2})}),this._modeling.createElements(e,n,t,L({},i))},Mn.prototype._createElements=function(e){var t=this,n=this._eventBus,i={},r=[];return k(e,function(o,a){o=ai(o,"priority"),k(o,function(s){var c=L({},si(s,["priority"]));i[s.parent]?c.parent=i[s.parent]:delete c.parent,n.fire("copyPaste.pasteElement",{cache:i,descriptor:c});var u;if(rt(c)){c.source=i[s.source],c.target=i[s.target],u=i[s.id]=t.createConnection(c),r.push(u);return}if(De(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},Mn.prototype.createConnection=function(e){var t=this._elementFactory.createConnection(si(e,["id"]));return t},Mn.prototype.createLabel=function(e){var t=this._elementFactory.createLabel(si(e,["id"]));return t},Mn.prototype.createShape=function(e){var t=this._elementFactory.createShape(si(e,["id"]));return t},Mn.prototype.hasRelations=function(e,t,n){return n||(n=new Set(t)),!(rt(e)&&(!n.has(e.source)||!n.has(e.target))||De(e)&&!n.has(e.labelTarget))},Mn.prototype.createTree=function(e){var t=this._rules,n=this,i={},r=[],o=new Map,a=xs(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}Lr(a,function(f,p,d){if(De(f))return;k(f.labels,function(g){c(g,d)});function h(g){g&&g.length&&k(g,function(R){k(R.labels,function(w){c(w,d)}),c(R,d)})}k([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=on(r,function(f){return f.element});var l=new Set(e);return r=on(r,function(f){return f.descriptor={},n._eventBus.fire("copyPaste.copyElement",{descriptor:f.descriptor,element:f.element,elements:e,elementsSet:l}),f}),r=ai(r,function(f){return f.descriptor.priority}),e=on(r,function(f){return f.element}),k(r,function(f){var p=f.depth;if(!n.hasRelations(f.element,e,l)){vy(f.element,e),l.delete(f.element);return}if(!s(f.element,e)){vy(f.element,e),l.delete(f.element);return}i[p]||(i[p]=[]),i[p].push(f.descriptor)}),i};function zP(e){return!!e.host}function VP(e){return on(e.waypoints,function(t){return t=yy(t),t.original&&(t.original=yy(t.original)),t})}function yy(e){return L({},e)}function vy(e,t){var n=t.indexOf(e);return n===-1?t:t.splice(n,1)}const GP={__depends__:[lP,uc,ma,yi],__init__:["copyPaste"],copyPaste:["type",Mn]};function wp(e,t,n){be(n)||(n=[n]),k(n,function(i){Rr(e[i])||(t[i]=e[i])})}var Ep=750;function _y(e,t,n){function i(c,u){var l=e.create(c.$type);return n.copyElement(c,l,null,u)}t.on("copyPaste.copyElement",Ep,function(c){var u=c.descriptor,l=c.element,f=Z(l);if(De(l))return u;var p=u.businessObject=i(f,!0),d=u.di=i(Ge(l),!0);d.bpmnElement=p,wp(p,u,"name"),wp(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=Z(c);return c.default&&(l[c.default]={element:f,property:"default"}),c.host&&(Z(c).attachedToRef=Z(u[c.host])),si(l,Sn(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(De(l)){l.businessObject=Z(u[l.labelTarget]),l.di=Ge(u[l.labelTarget]);return}f=l.businessObject=i(f),p=l.di=i(p),p.bpmnElement=f,wp(l,f,["isExpanded","name"]),l.type=f.$type}),t.on("copyPaste.copyElement",Ep,function(c){var u=c.descriptor,l=c.element;if(v(l,"bpmn:Participant")){var f=Z(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;v(u,"bpmn:SubProcess")&&k(na(l),f=>{l.push(f.annotation)})}),t.on("copyPaste.pasteElement",Ep,function(c){var u=c.cache,l=c.descriptor;a(u,s(l,u,o(u)))})}_y.$inject=["bpmnFactory","eventBus","moddleCopy"];const WP=["artifacts","dataInputAssociations","dataOutputAssociations","default","flowElements","lanes","incoming","outgoing","categoryValue"],UP=["errorRef","escalationRef","messageRef","signalRef","dataObjectRef"];function ga(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 ai(r,o=>o==="extensionElements")}),e.on("moddleCopy.canCopyProperty",i=>{const{parent:r,property:o,propertyName:a}=i,s=Gt(r)&&r.$descriptor;if(a&&UP.includes(a))return o;if(a&&WP.includes(a)||a&&s&&!ct(s.properties,eo({name:a})))return!1}),e.on("moddleCopy.canSetCopiedProperty",i=>{const{property:r}=i;if(v(r,"bpmn:ExtensionElements")&&(!r.values||!r.values.length))return!1})}ga.$inject=["eventBus","bpmnFactory","moddle"],ga.prototype.copyElement=function(e,t,n,i=!1){n&&!be(n)&&(n=[n]),n=n||Sp(e.$descriptor);const r=this._eventBus.fire("moddleCopy.canCopyProperties",{propertyNames:n,sourceElement:e,targetElement:t,clone:i});return r===!1||(be(r)&&(n=r),k(n,o=>{let a;En(e,o)&&(a=e.get(o));const s=this.copyProperty(a,t,o,i);!$t(s)||this._eventBus.fire("moddleCopy.canSetCopiedProperty",{parent:t,property:s,propertyName:o})===!1||t.set(o,s)})),t},ga.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 Gt(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):be(e)?Sn(e,(a,s)=>{const c=this.copyProperty(s,t,n,i);return c?a.concat(c):a},[]):Gt(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},ga.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 Sp(e,t){return Sn(e.properties,(n,i)=>t&&i.default?n:n.concat(i.name),[])}const by={__depends__:[GP],__init__:["bpmnCopyPaste","moddleCopy"],bpmnCopyPaste:["type",_y],moddleCopy:["type",ga]};var xy=Math.round;function Rp(e,t){this._modeling=e,this._eventBus=t}Rp.$inject=["modeling","eventBus"],Rp.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=xy(s+o/2),l=xy(c+a/2),f=i.replaceShape(e,L({},t,{x:u,y:l,width:o,height:a}),n);return r.fire("replace.end",{element:e,newElement:f,hints:n}),f};function wy(e,t){t.on("replace.end",500,function(n){const{newElement:i,hints:r={}}=n;r.select!==!1&&e.select(i)})}wy.$inject=["selection","eventBus"];const YP={__init__:["replace","replaceSelectionBehavior"],replaceSelectionBehavior:["type",wy],replace:["type",Rp]};function qP(e,t,n){be(n)||(n=[n]),k(n,function(i){Rr(e[i])||(t[i]=e[i])})}var KP=["cancelActivity","instantiate","eventGatewayType","triggeredByEvent","isInterrupting"];function XP(e,t){var n=e&&En(e,"collapsed")?e.collapsed:!Fe(e),i;return t&&(En(t,"collapsed")||En(t,"isExpanded"))?i=En(t,"collapsed")?t.collapsed:!t.isExpanded:i=n,n!==i}function Ey(e,t,n,i,r,o){function a(s,c,u){u=u||{};var l=c.type,f=s.businessObject;if(lc(f)&&(l==="bpmn:SubProcess"||l==="bpmn:AdHocSubProcess")&&XP(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),qP(s.di,d.di,["fill","stroke","background-color","border-color","color"]);var h=Sp(f.$descriptor),m=Sp(p.$descriptor,!0),g=ZP(h,m);L(p,ii(c,KP));var R=Ie(g,function(x){return x==="eventDefinitions"?Sy(s,c.eventDefinitionType):x==="loopCharacteristics"?!un(p):En(p,x)||x==="processRef"&&c.isExpanded===!1||x==="triggeredByEvent"?!1:x==="isForCompensation"?!un(p):!0});if(p=n.copyElement(f,p,R),c.eventDefinitionType&&(Sy(p,c.eventDefinitionType)||(d.eventDefinitionType=c.eventDefinitionType,d.eventDefinitionAttrs=c.eventDefinitionAttrs)),v(f,"bpmn:Activity")){if(lc(f))d.isExpanded=Fe(s);else if(c&&En(c,"isExpanded")){d.isExpanded=c.isExpanded;var w=t.getDefaultSize(p,{isExpanded:d.isExpanded});d.width=w.width,d.height=w.height,d.x=s.x-(d.width-s.width)/2,d.y=s.y-(d.height-s.height)/2}Fe(s)&&!v(f,"bpmn:Task")&&d.isExpanded&&(d.width=s.width,d.height=s.height)}if(lc(f)&&!lc(p)&&(u.moveChildren=!1),v(f,"bpmn:Participant")){c.isExpanded===!0?p.processRef=e.create("bpmn:Process"):u.moveChildren=!1;var b=Ut(s);Ge(s).isHorizontal||(Ge(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,Le(f,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&Le(p,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&(p.default=f.default),c.host&&!v(f,"bpmn:BoundaryEvent")&&v(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}Ey.$inject=["bpmnFactory","elementFactory","moddleCopy","modeling","replace","rules"];function lc(e){return v(e,"bpmn:SubProcess")}function Sy(e,t){var n=Z(e);return t&&n.get("eventDefinitions").some(function(i){return v(i,t)})}function ZP(e,t){return e.filter(function(n){return t.includes(n)})}const Ry={__depends__:[by,YP,Kn],bpmnReplace:["type",Ey]};var QP=250;function Hr(e){this._eventBus=e,this._tools=[],this._active=null}Hr.$inject=["eventBus"],Hr.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)},Hr.prototype.isActive=function(e){return e&&this._active===e},Hr.prototype.length=function(e){return this._tools.length},Hr.prototype.setActive=function(e){var t=this._eventBus;this._active!==e&&(this._active=e,t.fire("tool-manager.update",{tool:e}))},Hr.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),k(t,function(r){i.push(r+".ended"),i.push(r+".canceled")}),n.on(i,QP,function(r){this._active&&(JP(r)||this.setActive(null))},this)};function JP(e){var t=e.originalEvent&&e.originalEvent.target;return t&&Dr(t,'.group[data-group="tools"]')}const pc={__depends__:[Ii],__init__:["toolManager"],toolManager:["type",Hr]};function eA(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 tA(e,t){var n=[],i=new Set(e);k(t,function(o){i.add(o)});var r=new Set;return i.forEach(function(o){var a=o.incoming,s=o.outgoing;k(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 nA(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 Cp=Math.abs,iA=Math.round,Ni={x:"width",y:"height"},Cy="crosshair",lr={n:"top",w:"left",s:"bottom",e:"right"},rA=1500,fc={n:"s",w:"e",s:"n",e:"w"},dc=20;function Xn(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",rA,function(c){var u=c.context,l=u.initialized;l||(l=u.initialized=s.init(c,u)),l&&Ay(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){Ay(c);var m={x:0,y:0};m[l]=iA(c["d"+l]),s.makeSpace(p,d,m,f,h),n.once("spaceTool.ended",function(g){s.activateSelection(g.originalEvent,!0,!0)})}})}Xn.$inject=["canvas","dragging","eventBus","modeling","rules","toolManager","mouse"],Xn.prototype.activateSelection=function(e,t,n){this._dragging.init(e,"spaceTool.selection",{autoActivate:t,cursor:Cy,data:{context:{reactivate:n}},trapClick:!1})},Xn.prototype.activateMakeSpace=function(e){this._dragging.init(e,"spaceTool",{autoActivate:!0,cursor:Cy,data:{context:{}}})},Xn.prototype.makeSpace=function(e,t,n,i,r){return this._modeling.createSpace(e,t,n,i,r)},Xn.prototype.init=function(e,t){var n=Cp(e.dx)>Cp(e.dy)?"x":"y",i=e["d"+n],r=e[n]-i;if(Cp(i)<5)return!1;i<0&&(i*=-1),fa(e)&&(i*=-1);var o=eA(n,i),a=this._canvas.getRootElement();!ec(e)&&e.hover&&(a=e.hover);var s=[...Xo(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=oA(c,n,o,r,u);return L(t,c,{axis:n,direction:o,spaceToolConstraints:l,start:r}),cc("resize-"+(n==="x"?"ew":"ns")),!0},Xn.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 k(e,function(d){if(!(!d.parent||De(d))){if(rt(d)){l.push(d);return}var h=d[t],m=h+d[Ni[t]];if(aA(d)&&(n>0&&xe(d)[t]>i||n<0&&xe(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}}}),k(o,function(d){var h=d.attachers;h&&k(h,function(m){f(m)})}),k(u,function(d){var h=d.host;(s.has(h)||c.has(h))&&f(d)}),k(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}},Xn.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},Xn.prototype.isActive=function(){var e=this._dragging.context();return e?/^spaceTool/.test(e.prefix):!1};function Py(e){return{top:e.top-dc,right:e.right+dc,bottom:e.bottom+dc,left:e.left-dc}}function Ay(e){var t=e.context,n=t.spaceToolConstraints;if(n){var i,r;Se(n.left)&&(i=Math.max(e.x,n.left),e.dx=e.dx+i-e.x,e.x=i),Se(n.right)&&(i=Math.min(e.x,n.right),e.dx=e.dx+i-e.x,e.x=i),Se(n.top)&&(r=Math.max(e.y,n.top),e.dy=e.dy+r-e.y,e.y=r),Se(n.bottom)&&(r=Math.min(e.y,n.bottom),e.dy=e.dy+r-e.y,e.y=r)}}function oA(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 k(a,function(p){var d=p.attachers,h=p.children,m=ye(p),g=Ie(h,function(G){return!rt(G)&&!De(G)&&!l.has(G)&&!f.has(G)}),R=Ie(h,function(G){return!rt(G)&&!De(G)&&l.has(G)}),w,b,x,S=[],M=[],N,T,H,V;g.length&&(b=Py(ye(At(g))),w=i-m[lr[n]]+b[lr[n]],n==="n"?s.bottom=u=Se(u)?Math.min(u,w):w:n==="w"?s.right=u=Se(u)?Math.min(u,w):w:n==="s"?s.top=c=Se(c)?Math.max(c,w):w:n==="e"&&(s.left=c=Se(c)?Math.max(c,w):w)),R.length&&(x=Py(ye(At(R))),w=i-x[lr[fc[n]]]+m[lr[fc[n]]],n==="n"?s.bottom=u=Se(u)?Math.min(u,w):w:n==="w"?s.right=u=Se(u)?Math.min(u,w):w:n==="s"?s.top=c=Se(c)?Math.max(c,w):w:n==="e"&&(s.left=c=Se(c)?Math.max(c,w):w)),d&&d.length&&(d.forEach(function(G){l.has(G)?S.push(G):M.push(G)}),S.length&&(N=ye(At(S.map(xe))),T=m[lr[fc[n]]]-(N[lr[fc[n]]]-i)),M.length&&(H=ye(At(M.map(xe))),V=H[lr[n]]-(m[lr[n]]-i)),n==="n"?(w=Math.min(T||1/0,V||1/0),s.bottom=u=Se(u)?Math.min(u,w):w):n==="w"?(w=Math.min(T||1/0,V||1/0),s.right=u=Se(u)?Math.min(u,w):w):n==="s"?(w=Math.max(T||-1/0,V||-1/0),s.top=c=Se(c)?Math.max(c,w):w):n==="e"&&(w=Math.max(T||-1/0,V||-1/0),s.left=c=Se(c)?Math.max(c,w):w));var $=r&&r[p.id];$&&(n==="n"?(w=i+p[Ni[t]]-$[Ni[t]],s.bottom=u=Se(u)?Math.min(u,w):w):n==="w"?(w=i+p[Ni[t]]-$[Ni[t]],s.right=u=Se(u)?Math.min(u,w):w):n==="s"?(w=i-p[Ni[t]]+$[Ni[t]],s.top=c=Se(c)?Math.max(c,w):w):n==="e"&&(w=i-p[Ni[t]]+$[Ni[t]],s.left=c=Se(c)?Math.max(c,w):w))}),s}}function aA(e){return!!e.host}var Pp="djs-dragging",Ty="djs-resizing",sA=250,hc=Math.max;function My(e,t,n,i,r){function o(a,s){k(a,function(c){r.addDragger(c,s),n.addMarker(c,Pp)})}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=me("g");se(l,i.cls("djs-crosshair-group",["no-events"])),Pe(s,l);var f=me("path");se(f,"d",u.x),He(f).add("djs-crosshair"),Pe(l,f);var p=me("path");se(p,"d",u.y),He(p).add("djs-crosshair"),Pe(l,p),c.crosshairGroup=l}),e.on("spaceTool.selection.move",function(a){var s=a.context.crosshairGroup;Jt(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",sA,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=me("path"),se(c,"d","M0,0 L0,0"),He(c).add("djs-crosshair"),Pe(p,c),s.line=c;var d=me("g");se(d,i.cls("djs-drag-group",["no-events"])),Pe(n.getActiveLayer(),d),o(l,d);var h=new Set(l);k(f,function(M){h.add(M)});var m=new Set,g=s.movingConnections=[];h.forEach(function(M){k(M.outgoing,function(N){m.has(N)||!rt(N)||!h.has(N.target)||(m.add(N),g.push(N))})}),o(g,d),s.dragGroup=d}if(!s.frameGroup){var R=me("g");se(R,i.cls("djs-frame-group",["no-events"])),Pe(n.getActiveLayer(),R);var w=[];k(f,function(M){var N=r.addFrame(M,R),T=N.getBBox();w.push({element:N,initialBounds:T}),n.addMarker(M,Ty)}),s.frameGroup=R,s.frames=w}var b={x:"M"+a.x+", -10000 L"+a.x+", 10000",y:"M -10000, "+a.y+" L 10000, "+a.y};se(c,{d:b[u]});var x={x:"y",y:"x"},S={x:a.dx,y:a.dy};S[x[s.axis]]=0,Jt(s.dragGroup,S.x,S.y),k(s.frames,function(M){var N=M.element,T=M.initialBounds,H,V;s.direction==="e"?se(N,{width:hc(T.width+S.x,5)}):(H=hc(T.width-S.x,5),se(N,{width:H,x:T.x+T.width-H})),s.direction==="s"?se(N,{height:hc(T.height+S.y,5)}):(V=hc(T.height-S.y,5),se(N,{height:V,y:T.y+T.height-V}))})}}),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;k(c,function(h){n.removeMarker(h,Pp)}),k(u,function(h){n.removeMarker(h,Pp)}),p&&(Ht(f),Ht(p)),k(l,function(h){n.removeMarker(h,Ty)}),d&&Ht(d)})}My.$inject=["eventBus","elementRegistry","canvas","styles","previewSupport"];const cA={__init__:["spaceToolPreview"],__depends__:[Ii,yi,pc,Co,ma],spaceTool:["type",Xn],spaceToolPreview:["type",My]};function mc(e,t){e.invoke(Xn,this),this._canvas=t}mc.$inject=["injector","canvas"],ae(mc,Xn),mc.prototype.calculateAdjustments=function(e,t,n,i){var r=this._canvas.getRootElement(),o=e[0]===r?null:e[0],a=[];o&&(a=Qr(so(r.children.filter(u=>v(u,"bpmn:Artifact")),At(o))));const s=[...e,...a];var c=Xn.prototype.calculateAdjustments.call(this,s,t,n,i);return c.resizingShapes=c.resizingShapes.filter(function(u){return!(v(u,"bpmn:TextAnnotation")||uA(u)&&(t==="y"&&Ut(u)||t==="x"&&!Ut(u)))}),c};function uA(e){return v(e,"bpmn:Participant")&&!Z(e).processRef}const ky={__depends__:[cA],spaceTool:["type",mc]};function vt(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)}vt.$inject=["eventBus","injector"],vt.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()},vt.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},vt.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,e!==!1&&this._fire("changed",{trigger:"clear"})},vt.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()}},vt.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()}},vt.prototype.register=function(e,t){this._setHandler(e,t)},vt.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)},vt.prototype.canUndo=function(){return!!this._getUndoAction()},vt.prototype.canRedo=function(){return!!this._getRedoAction()},vt.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},vt.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},vt.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)})},vt.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},vt.prototype._createId=function(){return this._uid++},vt.prototype._atomicDo=function(e){const t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},vt.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()},vt.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)},vt.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:Xf("id",i.reverse())}),i.length=0,this._fire("changed",{trigger:t}),e.trigger=null)},vt.prototype._markDirty=function(e){const t=this._currentExecution;e&&(e=be(e)?e:[e],t.dirty=t.dirty.concat(e))},vt.prototype._executedAction=function(e,t){const n=++this._stackIdx;t||this._stack.splice(n,this._stack.length,e)},vt.prototype._revertedAction=function(e){this._stackIdx--},vt.prototype._getHandler=function(e){return this._handlerMap[e]},vt.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 lA={commandStack:["type",vt]};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 pA=250,Dy=1400;function Ap(e,t,n){X.call(this,t);var i=e.get("movePreview",!1);t.on("shape.move.start",Dy,function(r){var o=r.context,a=o.shapes,s=o.validatedShapes;o.shapes=Oy(a),o.validatedShapes=Oy(s)}),i&&t.on("shape.move.start",pA,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",Dy,function(r){var o=r.context,a=o.closure,s=a.enclosedElements,c=[];k(s,function(u){k(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&&(St(s.labels,a,c),a.labelTarget=s)})}ae(Ap,X),Ap.$inject=["injector","eventBus","modeling"];function Oy(e){var t=new Set(e);return Ie(e,function(n){return!t.has(n.labelTarget)})}const fA={__init__:["labelSupport"],labelSupport:["type",Ap]};var dA=251,Ly=1401,Iy="attach-ok";function Tp(e,t,n,i,r){X.call(this,t);var o=e.get("movePreview",!1);t.on("shape.move.start",Ly,function(a){var s=a.context,c=s.shapes,u=s.validatedShapes;s.shapes=hA(c),s.validatedShapes=mA(u)}),o&&t.on("shape.move.start",dA,function(a){var s=a.context,c=s.shapes,u=Mp(c);k(u,function(l){o.makeDraggable(s,l,!0),k(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,Iy),t.once(["shape.move.out","shape.move.cleanup"],function(){n.removeMarker(l,Iy)}))}}),this.preExecuted("elements.move",Ly,function(a){var s=a.context,c=s.closure,u=s.shapes,l=Mp(u);k(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=Ie(c,function(f){var p=f.host;return gA(f)&&!yA(c,p)}),k(l,function(f){r.updateAttachment(f,u)}))}),this.postExecuted("elements.move",function(a){var s=a.context.shapes;k(s,function(c){k(c.attachers,function(u){k(u.outgoing.slice(),function(l){var f=i.allowed("connection.reconnect",{connection:l,source:l.source,target:l.target});f||r.removeConnection(l)}),k(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&&k(u.attachers,function(l){var f=Jm(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&&k(f,function(d){var h=Jm(d,u,l);r.moveShape(d,h,d.parent),k(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)})}ae(Tp,X),Tp.$inject=["injector","eventBus","canvas","rules","modeling"];function Mp(e){return Ru(on(e,function(t){return t.attachers||[]}))}function hA(e){var t=Mp(e);return o0("id",e,t)}function mA(e){var t=Jr(e,"id");return Ie(e,function(n){for(;n;){if(n.host&&t[n.host.id])return!1;n=n.parent}return!0})}function gA(e){return!!e.host}function yA(e,t){return e.indexOf(t)!==-1}const vA={__depends__:[yi],__init__:["attachSupport"],attachSupport:["type",Tp]};function Ny(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(Ah(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)})}Ny.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];const kp={__init__:["changeSupport"],changeSupport:["type",Ny]};function Zn(e){this._model=e}Zn.$inject=["moddle"],Zn.prototype._needsId=function(e){return Le(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"])},Zn.prototype._ensureId=function(e){if(e.id){this._model.ids.claim(e.id,e);return}var t;v(e,"bpmn:Activity")?t="Activity":v(e,"bpmn:Event")?t="Event":v(e,"bpmn:Gateway")?t="Gateway":Le(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))},Zn.prototype.create=function(e,t){var n=this._model.create(e,t||{});return this._ensureId(n),n},Zn.prototype.createDiLabel=function(){return this.create("bpmndi:BPMNLabel",{bounds:this.createDiBounds()})},Zn.prototype.createDiShape=function(e,t){return this.create("bpmndi:BPMNShape",L({bpmnElement:e,bounds:this.createDiBounds()},t))},Zn.prototype.createDiBounds=function(e){return this.create("dc:Bounds",e)},Zn.prototype.createDiWaypoints=function(e){var t=this;return on(e,function(n){return t.createDiWaypoint(n)})},Zn.prototype.createDiWaypoint=function(e){return this.create("dc:Point",ii(e,["x","y"]))},Zn.prototype.createDiEdge=function(e,t){return this.create("bpmndi:BPMNEdge",L({bpmnElement:e,waypoint:this.createDiWaypoints([])},t))},Zn.prototype.createDiPlane=function(e,t){return this.create("bpmndi:BPMNPlane",L({bpmnElement:e},t))};function kn(e,t,n){X.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"],Dn(o)),this.reverted(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],Dn(a));function s(d){var h=d.context,m=h.oldRoot,g=m.children;k(g,function(R){v(R,"bpmn:BaseElement")&&i.updateParent(R)})}this.executed(["canvas.updateRoot"],s),this.reverted(["canvas.updateRoot"],s);function c(d){var h=d.context.shape;v(h,"bpmn:BaseElement")&&i.updateBounds(h)}this.executed(["shape.move","shape.create","shape.resize"],Dn(function(d){d.context.shape.type!=="label"&&c(d)})),this.reverted(["shape.move","shape.create","shape.resize"],Dn(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"],Dn(u)),this.reverted(["connection.create","connection.move","connection.delete","connection.reconnect"],Dn(u));function l(d){i.updateConnectionWaypoints(d.context.connection)}this.executed(["connection.layout","connection.move","connection.updateWaypoints"],Dn(l)),this.reverted(["connection.layout","connection.move","connection.updateWaypoints"],Dn(l)),this.executed("connection.reconnect",Dn(function(d){var h=d.context,m=h.connection,g=h.oldSource,R=h.newSource,w=Z(m),b=Z(g),x=Z(R);w.conditionExpression&&!Le(x,["bpmn:Activity","bpmn:ExclusiveGateway","bpmn:InclusiveGateway"])&&(h.oldConditionExpression=w.conditionExpression,delete w.conditionExpression),g!==R&&b.default===w&&(h.oldDefault=b.default,delete b.default)})),this.reverted("connection.reconnect",Dn(function(d){var h=d.context,m=h.connection,g=h.oldSource,R=h.newSource,w=Z(m),b=Z(g),x=Z(R);h.oldConditionExpression&&(w.conditionExpression=h.oldConditionExpression),h.oldDefault&&(b.default=h.oldDefault,delete x.default)}));function f(d){i.updateAttachment(d.context)}this.executed(["element.updateAttachment"],Dn(f)),this.reverted(["element.updateAttachment"],Dn(f)),this.executed("element.updateLabel",Dn(p)),this.reverted("element.updateLabel",Dn(p));function p(d){const{element:h}=d.context,m=Hn(h),g=Ge(h),R=g&&g.get("label");rr(h)||tc(h)||(m&&!R?g.set("label",t.create("bpmndi:BPMNLabel")):!m&&R&&g.set("label",void 0))}}ae(kn,X),kn.$inject=["eventBus","bpmnFactory","connectionDocking"],kn.prototype.updateAttachment=function(e){var t=e.shape,n=t.businessObject,i=t.host;n.attachedToRef=i&&i.businessObject},kn.prototype.updateParent=function(e,t){if(!De(e)&&!(v(e,"bpmn:DataStoreReference")&&e.parent&&v(e.parent,"bpmn:Collaboration"))){var n=e.parent,i=e.businessObject,r=Ge(e),o=n&&n.businessObject,a=Ge(n);v(e,"bpmn:FlowNode")&&this.updateFlowNodeRefs(i,o,t&&t.businessObject),v(e,"bpmn:DataOutputAssociation")&&(e.source?o=e.source.businessObject:o=null),v(e,"bpmn:DataInputAssociation")&&(e.target?o=e.target.businessObject:o=null),this.updateSemanticParent(i,o),v(e,"bpmn:DataObjectReference")&&i.dataObjectRef&&this.updateSemanticParent(i.dataObjectRef,o),this.updateDiParent(r,a)}},kn.prototype.updateBounds=function(e){var t=Ge(e),n=bA(e);if(n){var i=ri(n,t.get("bounds"));L(n,{x:e.x+i.x,y:e.y+i.y})}var r=De(e)?this._getLabel(t):t,o=r.bounds;o||(o=this._bpmnFactory.createDiBounds(),r.set("bounds",o)),L(o,{x:e.x,y:e.y,width:e.width,height:e.height})},kn.prototype.updateFlowNodeRefs=function(e,t,n){if(n!==t){var i,r;v(n,"bpmn:Lane")&&(i=n.get("flowNodeRef"),wt(i,e)),v(t,"bpmn:Lane")&&(r=t.get("flowNodeRef"),St(r,e))}},kn.prototype.updateDiConnection=function(e,t,n){var i=Ge(e),r=Ge(t),o=Ge(n);i.sourceElement&&i.sourceElement.bpmnElement!==Z(t)&&(i.sourceElement=t&&r),i.targetElement&&i.targetElement.bpmnElement!==Z(n)&&(i.targetElement=n&&o)},kn.prototype.updateDiParent=function(e,t){if(t&&!v(t,"bpmndi:BPMNPlane")&&(t=t.$parent),e.$parent!==t){var n=(t||e.$parent).get("planeElement");t?(n.push(e),e.$parent=t):(wt(n,e),e.$parent=null)}};function _A(e){for(;e&&!v(e,"bpmn:Definitions");)e=e.$parent;return e}kn.prototype.getLaneSet=function(e){var t,n;return v(e,"bpmn:Lane")?(t=e.childLaneSet,t||(t=this._bpmnFactory.create("bpmn:LaneSet"),e.childLaneSet=t,t.$parent=e),t):(v(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)},kn.prototype.updateSemanticParent=function(e,t,n){var i;if(e.$parent!==t&&!((v(e,"bpmn:DataInput")||v(e,"bpmn:DataOutput"))&&(v(t,"bpmn:Participant")&&"processRef"in t&&(t=t.processRef),"ioSpecification"in t&&t.ioSpecification===e.$parent))){if(v(e,"bpmn:Lane"))t&&(t=this.getLaneSet(t)),i="lanes";else if(v(e,"bpmn:FlowElement")){if(t){if(v(t,"bpmn:Participant"))t=t.processRef;else if(v(t,"bpmn:Lane"))do t=t.$parent.$parent;while(v(t,"bpmn:Lane"))}i="flowElements"}else if(v(e,"bpmn:Artifact")){for(;t&&!v(t,"bpmn:Process")&&!v(t,"bpmn:SubProcess")&&!v(t,"bpmn:Collaboration");)if(v(t,"bpmn:Participant")){t=t.processRef;break}else t=t.$parent;i="artifacts"}else if(v(e,"bpmn:MessageFlow"))i="messageFlows";else if(v(e,"bpmn:Participant")){i="participants";var r=e.processRef,o;r&&(o=_A(e.$parent||t),e.$parent&&(wt(o.get("rootElements"),r),r.$parent=null),t&&(St(o.get("rootElements"),r),r.$parent=o))}else v(e,"bpmn:DataOutputAssociation")?i="dataOutputAssociations":v(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),wt(a,e)),t?(a=t.get(i),a.push(e),e.$parent=t):e.$parent=null,n){var s=n.get(i);wt(a,e),t&&(s||(s=[],t.set(i,s)),s.push(e))}}},kn.prototype.updateConnectionWaypoints=function(e){var t=Ge(e);t.set("waypoint",this._bpmnFactory.createDiWaypoints(e.waypoints))},kn.prototype.updateConnection=function(e){var t=e.connection,n=Z(t),i=t.source,r=Z(i),o=t.target,a=Z(t.target),s;if(v(n,"bpmn:DataAssociation"))v(n,"bpmn:DataInputAssociation")?(n.get("sourceRef")[0]=r,s=e.parent||e.newParent||a,this.updateSemanticParent(n,a,s)):v(n,"bpmn:DataOutputAssociation")&&(s=e.parent||e.newParent||r,this.updateSemanticParent(n,r,s),n.targetRef=a);else{var c=v(n,"bpmn:SequenceFlow");n.sourceRef!==r&&(c&&(wt(n.sourceRef&&n.sourceRef.get("outgoing"),n),r&&r.get("outgoing")&&r.get("outgoing").push(n)),n.sourceRef=r),n.targetRef!==a&&(c&&(wt(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)},kn.prototype._getLabel=function(e){return e.label||(e.label=this._bpmnFactory.createDiLabel()),e.label};function Dn(e){return function(t){var n=t.context,i=n.shape||n.connection||n.element;v(i,"bpmn:BaseElement")&&e(t)}}function bA(e){if(v(e,"bpmn:Activity")){var t=Ge(e);if(t){var n=t.get("label");if(n)return n.get("bounds")}}}function fr(e,t){ki.call(this),this._bpmnFactory=e,this._moddle=t}ae(fr,ki),fr.$inject=["bpmnFactory","moddle"],fr.prototype._baseCreate=ki.prototype.create,fr.prototype.create=function(e,t){if(e==="label"){var n=t.di||this._bpmnFactory.createDiLabel();return this._baseCreate(e,L({type:"label",di:n},Nr,t))}return this.createElement(e,t)},fr.prototype.createElement=function(e,t){t=L({},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(!wA(r)){var o=L({},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)}v(i,"bpmn:Group")&&(t=L({isFrame:!0},t)),t=xA(i,t,["processRef","isInterrupting","associationDirection","isForCompensation"]),t.isExpanded&&(t=Dp(r,t,"isExpanded")),Le(i,["bpmn:Lane","bpmn:Participant"])&&(t=Dp(r,t,"isHorizontal")),v(i,"bpmn:SubProcess")&&(t.collapsed=!Fe(i,r)),v(i,"bpmn:ExclusiveGateway")&&(En(r,"isMarkerVisible")?r.isMarkerVisible===void 0&&(r.isMarkerVisible=!1):r.isMarkerVisible=!0),$t(t.triggeredByEvent)&&(i.triggeredByEvent=t.triggeredByEvent,delete t.triggeredByEvent),$t(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=L({id:i.id},n,t,{businessObject:i,di:r}),this._baseCreate(e,t)},fr.prototype.getDefaultSize=function(e,t){var n=Z(e);if(t=t||Ge(e),v(n,"bpmn:SubProcess"))return Fe(n,t)?{width:350,height:200}:{width:100,height:80};if(v(n,"bpmn:Task"))return{width:100,height:80};if(v(n,"bpmn:Gateway"))return{width:50,height:50};if(v(n,"bpmn:Event"))return{width:36,height:36};if(v(n,"bpmn:Participant")){var i=t.isHorizontal===void 0||t.isHorizontal===!0;return Fe(n,t)?i?{width:600,height:250}:{width:250,height:600}:i?{width:400,height:60}:{width:60,height:400}}return v(n,"bpmn:Lane")?{width:400,height:100}:v(n,"bpmn:DataObjectReference")?{width:36,height:50}:v(n,"bpmn:DataStoreReference")?{width:50,height:50}:v(n,"bpmn:TextAnnotation")?{width:100,height:40}:v(n,"bpmn:Group")?{width:300,height:300}:{width:100,height:80}},fr.prototype.createParticipantShape=function(e){return Gt(e)||(e={isExpanded:e}),e=L({type:"bpmn:Participant"},e||{}),e.isExpanded!==!1&&(e.processRef=this._bpmnFactory.create("bpmn:Process")),this.createShape(e)};function xA(e,t,n){return k(n,function(i){t=Dp(e,t,i)}),t}function Dp(e,t,n){return t[n]===void 0?t:(e[n]=t[n],si(t,[n]))}function wA(e){return Le(e,["bpmndi:BPMNShape","bpmndi:BPMNEdge","bpmndi:BPMNDiagram","bpmndi:BPMNPlane"])}function gc(e,t){this._modeling=e,this._canvas=t}gc.$inject=["modeling","canvas"],gc.prototype.preExecute=function(e){var t=this._modeling,n=e.elements,i=e.alignment;k(n,function(r){var o={x:0,y:0};$t(i.left)?o.x=i.left-r.x:$t(i.right)?o.x=i.right-r.width-r.x:$t(i.center)?o.x=i.center-Math.round(r.width/2)-r.x:$t(i.top)?o.y=i.top-r.y:$t(i.bottom)?o.y=i.bottom-r.height-r.y:$t(i.middle)&&(o.y=i.middle-Math.round(r.height/2)-r.y),t.moveElements([r],o,r.parent)})},gc.prototype.postExecute=function(e){};function yc(e){this._modeling=e}yc.$inject=["modeling"],yc.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},yc.prototype.postExecute=function(e){var t=e.hints||{};EA(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 EA(e,t){return Wi(e.outgoing,function(n){return n.target===t})}function vc(e,t){this._canvas=e,this._layouter=t}vc.$inject=["canvas","layouter"],vc.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},vc.prototype.revert=function(e){var t=e.connection;return this._canvas.removeConnection(t),t.source=null,t.target=null,t};var _c=Math.round;function Op(e){this._modeling=e}Op.$inject=["modeling"],Op.prototype.preExecute=function(e){var t=e.elements,n=e.parent,i=e.parentIndex,r=e.position,o=e.hints,a=this._modeling;k(t,function(f){Se(f.x)||(f.x=0),Se(f.y)||(f.y=0)});var s=Ie(t,function(f){return!f.hidden}),c=At(s);k(t,function(f){rt(f)&&(f.waypoints=on(f.waypoints,function(p){return{x:_c(p.x-c.x-c.width/2+r.x),y:_c(p.y-c.y-c.height/2+r.y)}})),L(f,{x:_c(f.x-c.x-c.width/2+r.x),y:_c(f.y-c.y-c.height/2+r.y)})});var u=new Set(xs(t)),l={};k(t,function(f){if(rt(f)){l[f.id]=Se(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=L({},o);u.has(f)||(p.autoResize=!1),De(f)&&(p=si(p,["attach"])),l[f.id]=Se(i)?a.createShape(f,ii(f,["x","y","width","height"]),f.parent||n,i,p):a.createShape(f,ii(f,["x","y","width","height"]),f.parent||n,p)}),e.elements=Qr(l)};var By=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?L(t,n):L(t,{x:n.x-By(t.width/2),y:n.y-By(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 ya(e){dr.call(this,e)}ae(ya,dr),ya.$inject=["canvas"];var SA=dr.prototype.execute;ya.prototype.execute=function(e){var t=e.shape;return CA(t),t.labelTarget=e.labelTarget,SA.call(this,e)};var RA=dr.prototype.revert;ya.prototype.revert=function(e){return e.shape.labelTarget=null,RA.call(this,e)};function CA(e){["width","height"].forEach(function(t){typeof e[t]>"u"&&(e[t]=0)})}function va(e,t){this._canvas=e,this._modeling=t}va.$inject=["canvas","modeling"],va.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})})},va.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},va.prototype.revert=function(e){var t=e.connection,n=e.parent,i=e.parentIndex;return t.source=e.source,t.target=e.target,St(n.children,t,i),this._canvas.addConnection(t,n),t};function Lp(e,t){this._modeling=e,this._elementRegistry=t}Lp.$inject=["modeling","elementRegistry"],Lp.prototype.postExecute=function(e){var t=this._modeling,n=this._elementRegistry,i=e.elements;k(i,function(r){n.get(r.id)&&(r.waypoints?t.removeConnection(r):t.removeShape(r))})};function _a(e,t){this._canvas=e,this._modeling=t}_a.$inject=["canvas","modeling"],_a.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){rt(i)?t.removeConnection(i,{nested:!0}):t.removeShape(i,{nested:!0})})},_a.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},_a.prototype.revert=function(e){var t=this._canvas,n=e.shape,i=e.oldParent,r=e.oldParentIndex;return St(i.children,n,r),t.addShape(n,i),n};function bc(e){this._modeling=e}bc.$inject=["modeling"];var $y={x:"y",y:"x"};bc.prototype.preExecute=function(e){var t=this._modeling,n=e.groups,i=e.axis,r=e.dimension;function o(g,R){g.range.min=Math.min(R[i],g.range.min),g.range.max=Math.max(R[i]+R[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,R){var w={y:0};w[i]=g-a(R),w[i]&&(w[$y[i]]=0,t.moveElements([R],w,R.parent))}var l=n[0],f=s(n),p=n[f],d,h,m=0;k(n,function(g,R){var w,b,x;if(g.elements.length<2){R&&R!==n.length-1&&(o(g,g.elements[0]),m+=c(g.range));return}w=ai(g.elements,i),b=w[0],R===f&&(b=w[s(w)]),x=a(b),g.range=null,k(w,function(S){if(u(x,S),g.range===null){g.range={min:S[i],max:S[i]+S[r]};return}o(g,S)}),R&&R!==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)&&k(n,function(g,R){var w={},b;g===l||g===p||(b=n[R-1],g.range.max=0,k(g.elements,function(x,S){w[$y[i]]=0,w[i]=b.range.max-x[i]+d,g.range.min!==x[i]&&(w[i]+=x[i]-g.range.min),w[i]&&t.moveElements([x],w,x.parent),g.range.max=Math.max(x[i]+x[r],S?g.range.max:0)}))})},bc.prototype.postExecute=function(e){};function xc(e,t){this._layouter=e,this._canvas=t}xc.$inject=["layouter","canvas"],xc.prototype.execute=function(e){var t=e.connection,n=t.waypoints;return L(e,{oldWaypoints:n}),t.waypoints=this._layouter.layoutConnection(t,e.hints),t},xc.prototype.revert=function(e){var t=e.connection;return t.waypoints=e.oldWaypoints,t};function Ip(){}Ip.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=wt(o.children,t),St(i.children,t,r),t.parent=i,k(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},Ip.prototype.revert=function(e){var t=e.connection,n=t.parent,i=e.oldParent,r=e.oldParentIndex,o=e.delta;return wt(n.children,t),St(i.children,t,r),t.parent=i,k(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 Np(){this.allShapes={},this.allConnections={},this.enclosedElements={},this.enclosedConnections={},this.topLevel={}}Np.prototype.add=function(e,t){return this.addAll([e],t)},Np.prototype.addAll=function(e,t){var n=n1(e,!!t,this);return L(this,n),this};function ba(e){this._modeling=e}ba.prototype.moveRecursive=function(e,t,n){return e?this.moveClosure(this.getClosure(e),t,n):[]},ba.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),k(a,function(f){o.moveShape(f,t,u[f.id]&&!l&&n,{recurse:!1,layout:!1})}),k(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&&Vl(f,f.source,t),connectionEnd:d&&Gl(f,f.target,t)})})},ba.prototype.getClosure=function(e){return new Np().addAll(e,!0)};function wc(e){this._helper=new ba(e)}wc.$inject=["modeling"],wc.prototype.preExecute=function(e){e.closure=this._helper.getClosure(e.shapes)},wc.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 zr(e){this._modeling=e,this._helper=new ba(e)}zr.$inject=["modeling"],zr.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=ii(t,["x","y","width","height"]),e.oldParent=o,e.oldParentIndex=wt(o.children,t),St(i.children,t,r),L(t,{parent:i,x:t.x+n.x,y:t.y+n.y}),t},zr.prototype.postExecute=function(e){var t=e.shape,n=e.delta,i=e.hints,r=this._modeling;i.layout!==!1&&(k(t.incoming,function(o){r.layoutConnection(o,{connectionEnd:Gl(o,t,n)})}),k(t.outgoing,function(o){r.layoutConnection(o,{connectionStart:Vl(o,t,n)})})),i.recurse!==!1&&this.moveChildren(e)},zr.prototype.revert=function(e){var t=e.shape,n=e.oldParent,i=e.oldParentIndex,r=e.delta;return St(n.children,t,i),L(t,{parent:n,x:t.x-r.x,y:t.y-r.y}),t},zr.prototype.moveChildren=function(e){var t=e.delta,n=e.shape;this._helper.moveRecursive(n.children,t,null)},zr.prototype.getNewParent=function(e){return e.newParent||e.shape.parent};function xa(e){this._modeling=e}xa.$inject=["modeling"],xa.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 be(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},xa.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||jy(be(r)?r[0]:r)),i&&(!n||o.docking==="target")&&(a.connectionEnd=a.connectionEnd||jy(be(r)?r[r.length-1]:r)),o.newWaypoints&&(a.waypoints=o.newWaypoints),this._modeling.layoutConnection(t,a))},xa.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 jy(e){return e.original||e}function Bi(e,t){this._modeling=e,this._rules=t}Bi.$inject=["modeling","rules"],Bi.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();k(p,function(h){var m=h.source,g=c(m,s,h);g&&t.reconnectEnd(h,s,Ks(h,s,l),a)}),k(d,function(h){var m=h.target,g=c(s,m,h);g&&t.reconnectStart(h,s,qs(h,s,l),a)})},Bi.prototype.postExecute=function(e){var t=e.oldShape;this._modeling.removeShape(t)},Bi.prototype.execute=function(e){},Bi.prototype.revert=function(e){},Bi.prototype.createShape=function(e,t,n,i){return this._modeling.createShape(e,t,n,i)},Bi.prototype.reconnectStart=function(e,t,n,i){this._modeling.reconnectStart(e,t,n,i)},Bi.prototype.reconnectEnd=function(e,t,n,i){this._modeling.reconnectEnd(e,t,n,i)};function wa(e){this._modeling=e}wa.$inject=["modeling"],wa.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},L(t,{width:n.width,height:n.height,x:n.x,y:n.y}),t},wa.prototype.postExecute=function(e){var t=this._modeling,n=e.shape,i=e.oldBounds,r=e.hints||{};r.layout!==!1&&(k(n.incoming,function(o){t.layoutConnection(o,{connectionEnd:Ks(o,n,i)})}),k(n.outgoing,function(o){t.layoutConnection(o,{connectionStart:qs(o,n,i)})}))},wa.prototype.revert=function(e){var t=e.shape,n=e.oldBounds;return L(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),k(r,function(s){a[s.id]=AA(s)}),this.resizeShapes(r,t,n),this.updateConnectionWaypoints(tA(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;k(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;k(e,function(r){var o=nA(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);k(e,function(l){var f=l.source,p=l.target,d=PA(l),h=Hy(n),m={},g=c.has(f)||u.has(f),R=c.has(p)||u.has(p);g&&R?(d=on(d,function(w){return zy(w,i,n)&&(w[h]=w[h]+t[h]),w.original&&zy(w.original,i,n)&&(w.original[h]=w.original[h]+t[h]),w}),s._modeling.updateWaypoints(l,d,{labelBehavior:!1})):(g||R)&&(c.has(f)?m.connectionStart=Vl(l,f,t):c.has(p)?m.connectionEnd=Gl(l,p,t):u.has(f)?m.connectionStart=qs(l,f,a[f.id]):u.has(p)&&(m.connectionEnd=Ks(l,p,a[p.id])),s._modeling.layoutConnection(l,m))})};function Fy(e){return L({},e)}function PA(e){return on(e.waypoints,function(t){return t=Fy(t),t.original&&(t.original=Fy(t.original)),t})}function Hy(e){switch(e){case"n":return"y";case"w":return"x";case"s":return"y";case"e":return"x"}}function zy(e,t,n){var i=Hy(n);if(/e|s/.test(n))return e[i]>t;if(/n|w/.test(n))return e[i]<t}function AA(e){return{x:e.x,y:e.y,height:e.height,width:e.width}}function Ec(e){this._modeling=e}Ec.$inject=["modeling"],Ec.prototype.execute=function(e){var t=e.shape,n=t.children;e.oldChildrenVisibility=Vy(n),t.collapsed=!t.collapsed;var i=Gy(n,t.collapsed);return[t].concat(i)},Ec.prototype.revert=function(e){var t=e.shape,n=e.oldChildrenVisibility,i=t.children,r=Wy(i,n);return t.collapsed=!t.collapsed,[t].concat(r)};function Vy(e){var t={};return k(e,function(n){t[n.id]=n.hidden,n.children&&(t=L({},t,Vy(n.children)))}),t}function Gy(e,t){var n=[];return k(e,function(i){i.hidden=t,n=n.concat(i),i.children&&(n=n.concat(Gy(i.children,i.collapsed||t)))}),n}function Wy(e,t){var n=[];return k(e,function(i){i.hidden=t[i.id],n=n.concat(i),i.children&&(n=n.concat(Wy(i.children,t)))}),n}function Sc(e){this._modeling=e}Sc.$inject=["modeling"],Sc.prototype.execute=function(e){var t=e.shape,n=e.newHost,i=t.host;return e.oldHost=i,e.attacherIdx=Uy(i,t),Yy(n,t),t.host=n,t},Sc.prototype.revert=function(e){var t=e.shape,n=e.newHost,i=e.oldHost,r=e.attacherIdx;return t.host=i,Uy(n,t),Yy(i,t,r),t};function Uy(e,t){return wt(e&&e.attachers,t)}function Yy(e,t,n){if(e){var i=e.attachers;i||(e.attachers=i=[]),St(i,t,n)}}function Bp(){}Bp.prototype.execute=function(e){var t=e.connection,n=e.newWaypoints;return e.oldWaypoints=t.waypoints,t.waypoints=n,t},Bp.prototype.revert=function(e){var t=e.connection,n=e.oldWaypoints;return t.waypoints=n,t};function ot(e,t,n){this._eventBus=e,this._elementFactory=t,this._commandStack=n;var i=this;e.on("diagram.init",function(){i.registerHandlers(n)})}ot.$inject=["eventBus","elementFactory","commandStack"],ot.prototype.getHandlers=function(){return{"shape.append":yc,"shape.create":dr,"shape.delete":_a,"shape.move":zr,"shape.resize":wa,"shape.replace":Bi,"shape.toggleCollapse":Ec,spaceTool:hr,"label.create":ya,"connection.create":vc,"connection.delete":va,"connection.move":Ip,"connection.layout":xc,"connection.updateWaypoints":Bp,"connection.reconnect":xa,"elements.create":Op,"elements.move":wc,"elements.delete":Lp,"elements.distribute":bc,"elements.align":gc,"element.updateAttachment":Sc}},ot.prototype.registerHandlers=function(e){k(this.getHandlers(),function(t,n){e.registerHandler(n,t)})},ot.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)},ot.prototype.updateAttachment=function(e,t){var n={shape:e,newHost:t};this._commandStack.execute("element.updateAttachment",n)},ot.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)},ot.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)},ot.prototype.layoutConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.layout",n)},ot.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},ot.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},ot.prototype.createElements=function(e,t,n,i,r){be(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},ot.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},ot.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},ot.prototype.removeElements=function(e){var t={elements:e};this._commandStack.execute("elements.delete",t)},ot.prototype.distributeElements=function(e,t,n){var i={groups:e,axis:t,dimension:n};this._commandStack.execute("elements.distribute",i)},ot.prototype.removeShape=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.delete",n)},ot.prototype.removeConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.delete",n)},ot.prototype.replaceShape=function(e,t,n){var i={oldShape:e,newData:t,hints:n||{}};return this._commandStack.execute("shape.replace",i),i.newShape},ot.prototype.alignElements=function(e,t){var n={elements:e,alignment:t};this._commandStack.execute("elements.align",n)},ot.prototype.resizeShape=function(e,t,n,i){var r={shape:e,newBounds:t,minBounds:n,hints:i};this._commandStack.execute("shape.resize",r)},ot.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)},ot.prototype.updateWaypoints=function(e,t,n){var i={connection:e,newWaypoints:t,hints:n||{}};this._commandStack.execute("connection.updateWaypoints",i)},ot.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)},ot.prototype.reconnectStart=function(e,t,n,i){i||(i={}),this.reconnect(e,t,e.target,n,L(i,{docking:"source"}))},ot.prototype.reconnectEnd=function(e,t,n,i){i||(i={}),this.reconnect(e,e.source,t,n,L(i,{docking:"target"}))},ot.prototype.connect=function(e,t,n,i){return this.createConnection(e,t,n||{},e.parent,i)},ot.prototype._create=function(e,t){return H1(t)?t:this._elementFactory.create(e,t)},ot.prototype.toggleCollapse=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.toggleCollapse",n)};function Ea(e){this._elementRegistry=e}Ea.$inject=["elementRegistry"],Ea.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||TA(n,Xa(i));return qy(n,i),e.oldProperties=o,e.changed=r,r},Ea.prototype.revert=function(e){var t=e.oldProperties,n=e.moddleElement,i=e.changed;return qy(n,t),i},Ea.prototype._getVisualReferences=function(e){var t=this._elementRegistry;return v(e,"bpmn:DataObject")?MA(e,t):[]};function TA(e,t){return Sn(t,function(n,i){return n[i]=e.get(i),n},{})}function qy(e,t){k(t,function(n,i){e.set(i,n)})}function MA(e,t){return t.filter(function(n){return v(n,"bpmn:DataObjectReference")&&Z(n).dataObjectRef===e})}var Sa="default",$i="id",Ky="di",kA={width:0,height:0};function Ra(e,t,n,i){this._elementRegistry=e,this._moddle=t,this._modeling=n,this._textRenderer=i}Ra.$inject=["elementRegistry","moddle","modeling","textRenderer"],Ra.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=NA(e.properties),s=e.oldProperties||DA(t,a);return Xy(a,o)&&(r.unclaim(o[$i]),i.updateId(t,a[$i]),r.claim(a[$i],o)),Sa in a&&(a[Sa]&&n.push(i.get(a[Sa].id)),o[Sa]&&n.push(i.get(o[Sa].id))),Zy(t,a),e.oldProperties=s,e.changed=n,n},Ra.prototype.postExecute=function(e){var t=e.element,n=t.label,i=n&&Z(n).name;if(i){var r=this._textRenderer.getExternalLabelBounds(n,i);this._modeling.resizeShape(n,r,kA)}},Ra.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 Zy(t,i),Xy(n,r)&&(a.unclaim(n[$i]),o.updateId(t,i[$i]),a.claim(i[$i],r)),e.changed};function Xy(e,t){return $i in e&&e[$i]!==t[$i]}function DA(e,t){var n=Xa(t),i=e.businessObject,r=Ge(e);return Sn(n,function(o,a){return a!==Ky?o[a]=i.get(a):o[a]=OA(r,Xa(t.di)),o},{})}function OA(e,t){return Sn(t,function(n,i){return n[i]=e&&e.get(i),n},{})}function Zy(e,t){var n=e.businessObject,i=Ge(e);k(t,function(r,o){o!==Ky?n.set(o,r):i&&LA(i,r)})}function LA(e,t){k(t,function(n,i){e.set(i,n)})}var IA=["default"];function NA(e){var t=L({},e);return IA.forEach(function(n){n in e&&(t[n]=Z(t[n]))}),t}function Rc(e,t){this._canvas=e,this._modeling=t}Rc.$inject=["canvas","modeling"],Rc.prototype.execute=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=t.getRootElement(),o=r.businessObject,a=o.$parent,s=Ge(r);return t.setRootElement(n),t.removeRootElement(r),St(a.rootElements,i),i.$parent=a,wt(a.rootElements,o),o.$parent=null,r.di=null,s.bpmnElement=i,n.di=s,e.oldRoot=r,[]},Rc.prototype.revert=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=e.oldRoot,o=r.businessObject,a=i.$parent,s=Ge(n);return t.setRootElement(r),t.removeRootElement(n),wt(a.rootElements,i),i.$parent=null,St(a.rootElements,o),o.$parent=a,n.di=null,s.bpmnElement=o,r.di=s,[]};function $p(e,t){this._modeling=e,this._spaceTool=t}$p.$inject=["modeling","spaceTool"],$p.prototype.preExecute=function(e){var t=this._spaceTool,n=this._modeling,i=e.shape,r=e.location,o=Yn(i),a=o===i,s=a?i:i.parent,c=ar(s),u=Ut(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+Un,y:i.y,width:i.width-Un,height:i.height}:{x:i.x,y:i.y+Un,width:i.width,height:i.height-Un};n.createShape({type:"bpmn:Lane",isHorizontal:u},l,s)}var f=[];Lr(o,function(x){return f.push(x),x.label&&f.push(x.label),x===i?[]:Ie(x.children,function(S){return S!==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 R=t.calculateAdjustments(f,g,p,h),w=u?{x:0,y:p}:{x:p,y:0};t.makeSpace(R.movingShapes,R.resizingShapes,w,m,h);var b=u?{x:i.x+(a?Un:0),y:d-(r==="top"?120:0),width:i.width-(a?Un:0),height:120}:{x:d-(r==="left"?120:0),y:i.y+(a?Un:0),width:120,height:i.height-(a?Un:0)};e.newLane=n.createShape({type:"bpmn:Lane",isHorizontal:u},b,s)};function jp(e){this._modeling=e}jp.$inject=["modeling"],jp.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=Ut(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+Un,y:n.y+p*c,width:n.width-Un,height:u}:{x:n.x+p*c,y:n.y+Un,width:u,height:n.height-Un},p<o?t.resizeShape(r[p],l):(f={type:"bpmn:Lane",isHorizontal:a},t.createShape(f,l,n))};function Ca(e,t){this._modeling=e,this._spaceTool=t}Ca.$inject=["modeling","spaceTool"],Ca.prototype.preExecute=function(e){var t=e.shape,n=e.newBounds,i=e.balanced;i!==!1?this.resizeBalanced(t,n):this.resizeSpace(t,n)},Ca.prototype.resizeBalanced=function(e,t){var n=this._modeling,i=MR(e,t);n.resizeShape(e,t),i.forEach(function(r){n.resizeShape(r.shape,r.newBounds)})},Ca.prototype.resizeSpace=function(e,t){var n=this._spaceTool,i=ye(e),r=ye(t),o=Tm(r,i),a=Yn(e),s=[],c=[];Lr(a,function(h){return s.push(h),(v(h,"bpmn:Lane")||v(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 Pa="flowNodeRef",Fp="lanes";function Cc(){}Cc.prototype._computeUpdates=function(e,t){var n=[],i=[],r={},o=[];function a(l,f){var p=ye(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=Yn(l);return r[f.id]||(r[f.id]=Vs(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=Yn(l);if(!(!f||n.indexOf(f)!==-1)){var p=f.children.filter(function(d){return v(d,"bpmn:FlowNode")});p.forEach(s),n.push(f)}}),e.forEach(s),o.forEach(function(l){var f=l.businessObject,p=f.get(Fp),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(Pa).forEach(function(p){i.push({flowNode:p,remove:[f],add:[]})})}),i},Cc.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(Fp);n.remove.forEach(function(o){wt(r,o),wt(o.get(Pa),i)}),n.add.forEach(function(o){St(r,o),St(o.get(Pa),i)})}),[]},Cc.prototype.revert=function(e){var t=e.updates;return t.forEach(function(n){var i=n.flowNode,r=i.get(Fp);n.add.forEach(function(o){wt(r,o),wt(o.get(Pa),i)}),n.remove.forEach(function(o){St(r,o),St(o.get(Pa),i)})}),[]};var Hp="categoryValueRef";function Aa(e,t){this._bpmnFactory=e,this._elementRegistry=t}Aa.$inject=["bpmnFactory","elementRegistry"],Aa.prototype._computeUpdates=function(e,t){var n=this._elementRegistry,i=this._bpmnFactory,r=new Map,o=[],a=new Map;function s(w,b,x){if(b){var S=a.get(w);S||(S={},a.set(w,S)),!(x&&S.present)&&(!x&&S.past||(x?S.present={categoryValue:b,root:zp(w)}:S.past={categoryValue:b}))}}function c(w){r.set(w,Z(w))}function u(){n.filter(function(w){return v(w,"bpmn:FlowElement")&&!De(w)&&w.parent}).forEach(c)}function l(w){var b=Z(w),x=b.get("categoryValueRef");return x||(x=Sm(i,b),o.push(BA(w,x))),x}function f(w){return w.reduce(function(b,x){var S=zp(x),M=b.get(S);return M||(M=[],b.set(S,M)),M.push(x),b},new Map)}e=Array.from(e||[]);var p=f(e);t.length&&u(),e.forEach(c),n.filter(function(w){return v(w,"bpmn:Group")&&!De(w)&&w.parent}).forEach(function(w){var b=Z(w).get("categoryValueRef");if(!b){var x=zp(w),S=p.get(x)||[],M=so(S,w),N=Object.keys(M).length>0;N&&(b=l(w))}s(w,b,!0)}),t.forEach(function(w){s(w.groupShape,w.categoryValue,!1)}),o.length&&u();var d=Array.from(r.keys()),h=Array.from(a.values()).reduce(function(w,b){return b.present&&w.add(b.present.categoryValue),b.past&&w.add(b.past.categoryValue),w},new Set),m=new Map,g=f(d);a.forEach(function(w,b){var x=w.present;if(x){var S=g.get(x.root)||[],M=so(S,b);S.forEach(function(N){if(M[N.id]){var T=m.get(N);T||(T=new Set,m.set(N,T)),T.add(x.categoryValue)}})}});var R=d.reduce(function(w,b){var x=r.get(b),S=x.get(Hp),M=new Set(S),N=m.get(b)||new Set,T=Array.from(N).filter(function(V){return!M.has(V)}),H=S.filter(function(V){return h.has(V)&&!N.has(V)});return(T.length||H.length)&&w.push({businessObject:x,categoryValuesToAdd:T,categoryValuesToRemove:H}),w},[]);return{flowElements:R,groups:o}},Aa.prototype.execute=function(e){var t=e.updates;return t||(t=e.updates=this._computeUpdates(e.affectedFlowElements,e.affectedGroupEntries)),$A(t.groups),FA(t.flowElements),[]},Aa.prototype.revert=function(e){var t=e.updates;return HA(t.flowElements),jA(t.groups),[]};function BA(e,t){return{groupShape:e,categoryValue:t,category:t.$parent}}function $A(e){e.forEach(function(t){Z(t.groupShape).categoryValueRef=t.categoryValue,t.categoryValue.$parent=t.category})}function jA(e){e.forEach(function(t){Z(t.groupShape).categoryValueRef=null})}function FA(e){e.forEach(function(t){var n=t.businessObject,i=n.get(Hp);t.categoryValuesToRemove.forEach(function(r){wt(i,r)}),t.categoryValuesToAdd.forEach(function(r){St(i,r,!0)})})}function HA(e){e.forEach(function(t){var n=t.businessObject,i=n.get(Hp);t.categoryValuesToAdd.forEach(function(r){wt(i,r)}),t.categoryValuesToRemove.forEach(function(r){St(i,r,!0)})})}function zp(e){for(;e.parent;)e=e.parent;return e}function Pc(e){this._moddle=e}Pc.$inject=["moddle"],Pc.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),[]},Pc.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 zA={fill:void 0,stroke:void 0};function Vp(e){this._commandStack=e,this._normalizeColor=function(t){if(t){if(wn(t)){var n=VA(t);if(n)return n}throw new Error(`invalid color value: ${t}`)}}}Vp.$inject=["commandStack"],Vp.prototype.postExecute=function(e){var t=e.elements,n=e.colors||zA,i=this,r={};"fill"in n&&L(r,{"background-color":this._normalizeColor(n.fill)}),"stroke"in n&&L(r,{"border-color":this._normalizeColor(n.stroke)}),k(t,function(o){var a=rt(o)?ii(r,["border-color"]):r,s=Ge(o);if(GA(a),De(o)){if(!s||!v(s.label,"bpmndi:BPMNLabel"))return;i._commandStack.execute("element.updateModdleProperties",{element:o,moddleElement:s.label,properties:{color:r["border-color"]}})}else{if(!Le(s,["bpmndi:BPMNEdge","bpmndi:BPMNShape"]))return;i._commandStack.execute("element.updateProperties",{element:o,properties:{di:a}})}})};function VA(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 GA(e){"border-color"in e&&(e.stroke=e["border-color"]),"background-color"in e&&(e.fill=e["background-color"])}var WA={width:0,height:0};function Qy(e,t,n){function i(c,u){var l=c.label||c,f=c.labelTarget||c;return _S(l,u),[l,f]}function r(c){var u=c.element,l=u.businessObject,f=c.newLabel;if(!De(u)&&rr(u)&&!Ms(u)&&!Jy(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=Hn(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(!(!De(l)&&!v(l,"bpmn:TextAnnotation"))){if(De(l)&&Jy(f)){d.removeShape!==!1&&e.removeShape(l,{unsetLabel:!1});return}var h=Hn(u);typeof p>"u"&&(p=t.getExternalLabelBounds(l,h)),p&&e.resizeShape(l,p,WA)}}this.preExecute=r,this.execute=o,this.revert=a,this.postExecute=s}Qy.$inject=["modeling","textRenderer","bpmnFactory"];function Jy(e){return!e||!e.trim()}function tn(e,t,n,i){ot.call(this,e,t,n),this._bpmnRules=i}ae(tn,ot),tn.$inject=["eventBus","elementFactory","commandStack","bpmnRules"],tn.prototype.getHandlers=function(){var e=ot.prototype.getHandlers.call(this);return e["element.updateModdleProperties"]=Ea,e["element.updateProperties"]=Ra,e["canvas.updateRoot"]=Rc,e["lane.add"]=$p,e["lane.resize"]=Ca,e["lane.split"]=jp,e["lane.updateRefs"]=Cc,e["group.updateRefs"]=Aa,e["id.updateClaim"]=Pc,e["element.setColor"]=Vp,e["element.updateLabel"]=Qy,e},tn.prototype.updateLabel=function(e,t,n,i){this._commandStack.execute("element.updateLabel",{element:e,newLabel:t,newBounds:n,hints:i||{}})},tn.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)},tn.prototype.updateModdleProperties=function(e,t,n){this._commandStack.execute("element.updateModdleProperties",{element:e,moddleElement:t,properties:n})},tn.prototype.updateProperties=function(e,t){this._commandStack.execute("element.updateProperties",{element:e,properties:t})},tn.prototype.resizeLane=function(e,t,n){this._commandStack.execute("lane.resize",{shape:e,newBounds:t,balanced:n})},tn.prototype.addLane=function(e,t){var n={shape:e,location:t};return this._commandStack.execute("lane.add",n),n.newLane},tn.prototype.splitLane=function(e,t){this._commandStack.execute("lane.split",{shape:e,count:t})},tn.prototype.makeCollaboration=function(){var e=this._create("root",{type:"bpmn:Collaboration"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},tn.prototype.makeProcess=function(){var e=this._create("root",{type:"bpmn:Process"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},tn.prototype.updateLaneRefs=function(e,t){this._commandStack.execute("lane.updateRefs",{flowNodeShapes:e,laneShapes:t})},tn.prototype.updateCategoryValueRefs=function(e,t){this._commandStack.execute("group.updateRefs",{affectedFlowElements:e,affectedGroupEntries:t})},tn.prototype.claimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t,claiming:!0})},tn.prototype.unclaimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t})},tn.prototype.setColor=function(e,t){e.length||(e=[e]),this._commandStack.execute("element.setColor",{elements:e,colors:t})};function ev(){}ev.prototype.layoutConnection=function(e,t){return t=t||{},[t.connectionStart||xe(t.source||e.source),t.connectionEnd||xe(t.target||e.target)]};var Ac=20,UA=5,Tc=Math.round,tv=20,YA={"h:h":20,"v:v":20,"h:v":-10,"v:h":-10};function qA(e,t){return!{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/./,v:/./}[t].test(e)}function KA(e,t){return{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/left|right/,v:/top|bottom/}[e].test(t)}function nv(e,t,n){var i=Qt(t,e,UA),r=n.split(":")[0],o=Tc((t.x-e.x)/2+e.x),a=Tc((t.y-e.y)/2+e.y),s,c,u=KA(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=qA(i,r),c=l?"h:v":"v:h",f?l?(p=a===e.y,s={x:e.x+Ac*(/l/.test(r)?-1:1),y:p?a+Ac:a}):(p=o===e.x,s={x:p?o+Ac:o,y:e.y+Ac*(/t/.test(r)?-1:1)}):s={x:o,y:a}),{waypoints:Gp(e,s,c).concat(s),directions:c,turnNextDirections:p}}function XA(e,t,n){return nv(e,t,n)}function ZA(e,t,n){var i=nv(t,e,iv(n));return{waypoints:i.waypoints.slice().reverse(),directions:iv(i.directions),turnNextDirections:i.turnNextDirections}}function QA(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=Gp(e.waypoints[e.waypoints.length-1],t.waypoints[0],r);return{waypoints:o,directions:r}}function iv(e){return e.split(":").reverse().join(":")}function JA(e,t,n){var i=Tc((t.x-e.x)/2+e.x),r=Tc((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 Gp(e,t,n){if(n=n||"h:h",!cT(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=XA(e,t,n),r=ZA(e,t,n),o=QA(i,r);return[].concat(i.waypoints,o.waypoints,r.waypoints)}return JA(e,t,n)}function eT(e,t,n){var i=Gp(e,t,n);return i.unshift(e),i.push(t),sv(i)}function tT(e,t,n,i,r){var o=r&&r.preferredLayouts||[],a=i0(o,"straight")[0]||"h:h",s=YA[a]||0,c=Qt(e,t,s),u=sT(c,a);n=n||xe(e),i=i||xe(t);var l=u.split(":"),f=av(n,e,l[0],uT(c)),p=av(i,t,l[1],c);return eT(f,p,u)}function nT(e,t,n,i,r,o){be(n)&&(r=n,o=i,n=xe(e),i=xe(t)),o=L({preferredLayouts:[]},o),r=r||[];var a=o.preferredLayouts,s=a.indexOf("straight")!==-1,c;return c=s&&rT(e,t,n,i,o),c||(c=o.connectionEnd&&aT(t,e,i,r),c)||(c=o.connectionStart&&oT(e,t,n,r),c)?c:!o.connectionStart&&!o.connectionEnd&&r&&r.length?r:tT(e,t,n,i,o)}function iT(e,t,n){return e>=t&&e<=n}function rv(e,t,n){var i={x:"width",y:"height"};return iT(t[e],n[e],n[e]+n[i[e]])}function rT(e,t,n,i,r){var o={},a,s;return s=Qt(e,t),/^(top|bottom|left|right)$/.test(s)?(/top|bottom/.test(s)&&(a="x"),/left|right/.test(s)&&(a="y"),r.preserveDocking==="target"?rv(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:rv(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 oT(e,t,n,i){return Wp(e,t,n,i)}function aT(e,t,n,i){var r=i.slice().reverse();return r=Wp(e,t,n,r),r?r.reverse():null}function Wp(e,t,n,i){function r(l){return l.length<3?!0:l.length>4?!1:!!ct(l,function(f,p){var d=l[p-1];return d&&Qo(f,d)<3})}function o(l,f,p){var d=Ti(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(Mh(l[d],f,tv)||Mh(l[d],p,tv))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=Wp(e,t,n,u)),c&&Ti(c)?null:c}function sT(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 cT(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 uT(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 av(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 sv(e){return e.reduce(function(t,n,i){var r=t[t.length-1],o=e[i+1];return cl(r,o,n,0)||t.push(n),t},[])}var lT=-10,pT=40,fT={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},dT={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},Up={top:"bottom","top-right":"bottom-left","top-left":"bottom-right",right:"left",bottom:"top","bottom-right":"top-left","bottom-left":"top-right",left:"right"},Ta={top:"t",right:"r",bottom:"b",left:"l"};function Mc(e){this._elementRegistry=e}ae(Mc,ev),Mc.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=cv(r&&r[0],n)),a||(a=cv(r&&r[r.length-1],i)),(v(e,"bpmn:Association")||v(e,"bpmn:DataAssociation"))&&r&&!uv(n,i))return[].concat([o],r.slice(1,-1),[a]);var l=bm(n,s)?fT:dT;return v(e,"bpmn:MessageFlow")?c=mT(n,i,l):(v(e,"bpmn:SequenceFlow")||uv(n,i))&&(n===i?c={preferredLayouts:xT(n,e,l)}:v(n,"bpmn:BoundaryEvent")?c={preferredLayouts:wT(n,i,a,l)}:Ma(n)||Ma(i)?c={preferredLayouts:l.subProcess,preserveDocking:yT(n)}:v(n,"bpmn:Gateway")?c={preferredLayouts:l.fromGateway}:v(i,"bpmn:Gateway")?c={preferredLayouts:l.toGateway}:c={preferredLayouts:l.default}),c&&(c=L(c,t),u=sv(nT(n,i,o,a,r,c))),u||[o,a]};function hT(e){var t=e.host;return Qt(xe(e),t,lT)}function mT(e,t,n){return{preferredLayouts:n.messageFlow,preserveDocking:gT(e,t)}}function gT(e,t){return v(t,"bpmn:Participant")?"source":v(e,"bpmn:Participant")?"target":Ma(t)?"source":Ma(e)||v(t,"bpmn:Event")?"target":v(e,"bpmn:Event")?"source":null}function yT(e){return Ma(e)?"target":"source"}function cv(e,t){return e?e.original||e:xe(t)}function uv(e,t){return v(t,"bpmn:Activity")&&v(e,"bpmn:BoundaryEvent")&&t.businessObject.isForCompensation}function Ma(e){return v(e,"bpmn:SubProcess")&&Fe(e)}function Vr(e,t){return e===t}function vT(e,t){return t.indexOf(e)!==-1}function Po(e){var t=/right|left/.exec(e);return t&&t[0]}function Ao(e){var t=/top|bottom/.exec(e);return t&&t[0]}function lv(e,t){return Up[e]===t}function _T(e,t){var n=Po(e),i=Up[n];return t.indexOf(i)!==-1}function bT(e,t){var n=Ao(e),i=Up[n];return t.indexOf(i)!==-1}function pv(e){return e==="right"||e==="left"}function xT(e,t,n){var i=t.waypoints,r=i&&i.length&&Qt(i[0],e);return r==="top"?n.loop.fromTop:r==="right"?n.loop.fromRight:r==="left"?n.loop.fromLeft:n.loop.fromBottom}function wT(e,t,n,i){var r=xe(e),o=xe(t),a=hT(e),s,c,u=Vr(e.host,t),l=vT(a,["top","right","bottom","left"]),f=Qt(o,r,{x:e.width/2+t.width/2,y:e.height/2+t.height/2});return u?ET(a,l,e,t,n,i):(s=ST(a,f,l,i.isHorizontal),c=RT(a,f,l,i.isHorizontal),[s+":"+c])}function ET(e,t,n,i,r,o){var a=t?e:o.isHorizontal?Ao(e):Po(e),s=Ta[a],c;return t?pv(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=pT;return!(Yp(e,i,n,r)||Yp(e,i,{x:n.x+n.width,y:n.y+n.height},r)||Yp(e,i,xe(t),r))}function Yp(e,t,n,i){return Math.abs(t[e]-n[e])<i}function ST(e,t,n,i){if(n)return Ta[e];var r=Ao(e),o=Po(e),a=Ao(t),s=Po(t);if(i){if(Vr(r,a)||lv(o,s))return Ta[r]}else if(Vr(o,s)||lv(r,a))return Ta[o];return Ta[i?o:r]}function RT(e,t,n,i){if(n)return pv(e)?_T(e,t)||Vr(e,t)?"h":"v":bT(e,t)||Vr(e,t)?"v":"h";var r=Ao(e),o=Po(e),a=Ao(t),s=Po(t);return a&&!s?"v":s&&!a?"h":i?Vr(r,a)?"h":"v":Vr(o,s)?"v":"h"}Mc.$inject=["elementRegistry"];function dv(e){return L({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(dv(i)),o.push(dv(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 Jo(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 qp={__init__:["modeling","bpmnUpdater"],__depends__:[GC,aP,cP,uP,Ry,lA,fA,vA,Kn,kp,ky],bpmnFactory:["type",Zn],bpmnUpdater:["type",kn],elementFactory:["type",fr],modeling:["type",tn],layouter:["type",Mc],connectionDocking:["type",mr]};var CT=10,hv=50,PT=250;function Kp(e,t,n,i){for(var r;r=AT(e,n,t);)n=i(t,n,r);return n}function Xp(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 AT(e,t,n){var i={x:t.x-n.width/2,y:t.y-n.height/2,width:n.width,height:n.height},r=MT(e);return ct(r,function(o){if(o===n)return!1;var a=Qt(o,i,CT);return a==="intersect"})}function TT(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||PT,c=t.reference||"start";o||(o=OT);function u(h,m){return r==="n"?c==="start"?ye(h).top-ye(m).bottom:c==="center"?ye(h).top-xe(m).y:ye(h).top-ye(m).top:r==="w"?c==="start"?ye(h).left-ye(m).right:c==="center"?ye(h).left-xe(m).x:ye(h).left-ye(m).left:r==="s"?c==="start"?ye(m).top-ye(h).bottom:c==="center"?xe(m).y-ye(h).bottom:ye(m).bottom-ye(h).bottom:c==="start"?ye(m).left-ye(h).right:c==="center"?xe(m).x-ye(h).right:ye(m).right-ye(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=Sn(p,function(h,m){var g=m.distance,R=m.weight;return g<0||g>s||(h[String(g)]||(h[String(g)]=0),h[String(g)]+=1*R,(!h.distance||h[h.distance]<h[String(g)])&&(h.distance=g)),h},{});return d.distance||i}function MT(e){var t=Zp(e);return e.host&&(t=t.concat(Zp(e.host))),e.attachers&&(t=t.concat(e.attachers.reduce(function(n,i){return n.concat(Zp(i))},[]))),t}function Zp(e){return DT(e).concat(kT(e))}function kT(e){return e.incoming.map(function(t){return t.source})}function DT(e){return e.outgoing.map(function(t){return t.target})}function OT(){return!0}var LT=100;function mv(e,t,n){e.on("autoPlace",LT,function(i){var r=i.shape,o=i.source;return IT(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}}mv.$inject=["eventBus","modeling","canvas"];function IT(e,t,n){n||(n={});var i=n.defaultDistance||hv,r=xe(e),o=ye(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 NT={__init__:["autoPlaceSelectionBehavior"],autoPlace:["type",mv],autoPlaceSelectionBehavior:["type",gv]};function yv(e,t,n){var i=bm(e,n);if(v(t,"bpmn:TextAnnotation"))return $T(e,t,i);if(Le(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"]))return jT(e,t,i);if(v(t,"bpmn:FlowNode"))return BT(e,t,i)}function BT(e,t,n){var i=ye(e),r=xe(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=TT(e,{filter:function(d){return v(d,"bpmn:SequenceFlow")},direction:o.directionHint}),s=30,c=o.minDistance,u=o.baseOrientation;v(e,"bpmn:BoundaryEvent")&&(u=Qt(e,e.host,-25),u.indexOf(o.boundaryOrientation)!==-1&&(s*=-1));var l=n?{x:i.right+a+t.width/2,y:r.y+vv(u,c,o)}:{x:r.x+vv(u,c,o),y:i.bottom+a+t.height/2},f={margin:s,minDistance:c},p=n?{y:f}:{x:f};return Kp(e,t,l,Xp(p))}function vv(e,t,n){return e.includes(n.start)?-1*t:e.includes(n.end)?t:0}function $T(e,t,n){var i=ye(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};rt(e)&&(r=xe(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 Kp(e,t,r,Xp(a))}function jT(e,t,n){var i=ye(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 Kp(e,t,r,Xp(a))}function _v(e,t){e.on("autoPlace",function(n){var i=n.shape,r=n.source;return yv(r,i,t)})}_v.$inject=["eventBus","elementRegistry"];const kc={__depends__:[NT],__init__:["bpmnAutoPlace"],bpmnAutoPlace:["type",_v]},bv=[vm,oa,qp,kc];function FT(e={}){vd(globalThis,e.dom);const t=document.createElement("div");return document.body.appendChild(t),new lo({container:t,moddleExtensions:e.moddleExtensions??is,additionalModules:[...bv,...e.additionalModules??[]]})}var HT=new Ro("ov"),zT=500;function qt(e,t,n,i){this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=HT,this._overlayDefaults=L({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=VT(n.getContainer()),this._init()}qt.$inject=["config.overlays","eventBus","canvas","elementRegistry"],qt.prototype.get=function(e){if(wn(e)&&(e={id:e}),wn(e.element)&&(e.element=this._elementRegistry.get(e.element)),e.element){var t=this._getOverlayContainer(e.element,!0);return t?e.type?Ie(t.overlays,eo({type:e.type})):t.overlays.slice():[]}else return e.type?Ie(this._overlays,eo({type:e.type})):e.id?this._overlays[e.id]:null},qt.prototype.add=function(e,t,n){if(Gt(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=L({},this._overlayDefaults,n,{id:i,type:t,element:e,html:n.html}),this._addOverlay(n),i},qt.prototype.remove=function(e){var t=this.get(e)||[];be(t)||(t=[t]);var n=this;k(t,function(i){var r=n._getOverlayContainer(i.element,!0);if(i&&(pi(i.html),pi(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)}})},qt.prototype.isShown=function(){return this._overlayRoot.style.display!=="none"},qt.prototype.show=function(){Dc(this._overlayRoot)},qt.prototype.hide=function(){Dc(this._overlayRoot,!1)},qt.prototype.clear=function(){this._overlays={},this._overlayContainers=[],ms(this._overlayRoot)},qt.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=At(t);i=o.x,r=o.y}xv(n,i,r),sn(e.html,"data-container-id",t.id)},qt.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=At(i).width:a=i.width,r=t.right*-1+a}if(t.bottom!==void 0){var s;i.waypoints?s=At(i).height:s=i.height,o=t.bottom*-1+s}xv(n,r||0,o||0),this._updateOverlayVisibilty(e,this._canvas.viewbox())},qt.prototype._createOverlayContainer=function(e){var t=ut('<div class="djs-overlays" />');gn(t,{position:"absolute"}),this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},qt.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";wv(this._overlayRoot,n)},qt.prototype._getOverlayContainer=function(e,t){var n=ct(this._overlayContainers,function(i){return i.element===e});return!n&&!t?this._createOverlayContainer(e):n},qt.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)),wn(i)&&(i=ut(i)),o=this._getOverlayContainer(n),r=ut('<div class="djs-overlay" data-overlay-id="'+t+'">'),gn(r,{position:"absolute"}),r.appendChild(i),e.type&>(r).add("djs-overlay-"+e.type);var a=this._canvas.findRoot(n),s=this._canvas.getRootElement();Dc(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())},qt.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&&($t(r)&&r>t.scale||$t(o)&&o<t.scale))&&(c=!1),Dc(a,c),this._updateOverlayScale(e,t)},qt.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),$t(i)&&t.scale<i&&(a=(1/t.scale||1)*i),$t(r)&&t.scale>r&&(a=(1/t.scale||1)*r)),$t(a)&&(s="scale("+a+","+a+")"),wv(o,s)},qt.prototype._updateOverlaysVisibilty=function(e){var t=this;k(this._overlays,function(n){t._updateOverlayVisibilty(n,e)})},qt.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});k(o,function(c){t.remove(c.id)});var a=t._getOverlayContainer(r);if(a){pi(a.html);var s=t._overlayContainers.indexOf(a);s!==-1&&t._overlayContainers.splice(s,1)}}),e.on("element.changed",zT,function(i){var r=i.element,o=t._getOverlayContainer(r,!0);o&&(k(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&>(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 VT(e){var t=ut('<div class="djs-overlay-container" />');return gn(t,{position:"absolute",width:0,height:0}),e.insertBefore(t,e.firstChild),t}function xv(e,t,n){gn(e,{left:t+"px",top:n+"px"})}function Dc(e,t){e.style.display=t===!1?"none":""}function wv(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach(function(n){e.style[n+"transform"]=t})}const Oc={__init__:["overlays"],overlays:["type",qt]};function Qp(e,t){t.invoke(X,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)})}ae(Qp,X),Qp.$inject=["canvas","injector"];const GT={__init__:["rootElementsBehavior"],rootElementsBehavior:["type",Qp]};function ka(e){return CSS.escape(e)}var WT={"&":"&","<":"<",">":">",'"':""","'":"'"};function Ev(e){return e=""+e,e&&e.replace(/[&<>"']/g,function(t){return WT[t]})}var UT="bjs-breadcrumbs-shown";function Sv(e,t,n){var i=ut('<ul class="bjs-breadcrumbs"></ul>'),r=n.getContainer(),o=gt(r);r.appendChild(i);var a=[];e.on("element.changed",function(c){var u=c.element,l=Z(u),f=ct(a,function(p){return p===l});f&&s()});function s(c){c&&(a=YT(c));var u=a.flatMap(function(f){var p=n.findRoot(gi(f))||n.findRoot(f.id);if(!p&&v(f,"bpmn:Process")){var d=t.find(function(g){var R=Z(g);return R&&R.get("processRef")===f});p=d&&n.findRoot(d.id)}if(!p)return[];var h=Ev(f.name||f.id),m=ut('<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(UT,l),u.forEach(function(f){i.appendChild(f)})}e.on("root.set",function(c){s(c.element)})}Sv.$inject=["eventBus","elementRegistry","canvas"];function YT(e){for(var t=Z(e),n=[],i=t;i;i=i.$parent)(v(i,"bpmn:SubProcess")||v(i,"bpmn:Process"))&&n.push(i);return n.reverse()}function Rv(e,t){var n=null,i=new qT;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,!(!v(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})}Rv.$inject=["eventBus","canvas"];function qT(){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 Cv={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;v(a,"bpmn:SubProcess")&&!o.isExpanded&&n.push(a),XT(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=KT(e),i={x:n.x-Cv.x,y:n.y-Cv.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=Pv(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 Pv(e){return v(e,"bpmndi:BPMNDiagram")?e:Pv(e.$parent)}function KT(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=ye(n.bounds);t.top=Math.min(i.top,t.top),t.left=Math.min(i.left,t.left)}}),Ss(t)}function XT(e,t){var n=e.$parent;return!(!v(n,"bpmn:SubProcess")||n===t.bpmnElement||Le(e,["bpmn:DataInputAssociation","bpmn:DataOutputAssociation"]))}var Lc=250,ZT='<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>',QT="bjs-drilldown-empty";function gr(e,t,n,i,r){X.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",Lc,function(a){var s=a.shape;o._canDrillDown(s)?o._addOverlay(s):o._removeOverlay(s)},!0),this.reverted("shape.toggleCollapse",Lc,function(a){var s=a.shape;o._canDrillDown(s)?o._addOverlay(s):o._removeOverlay(s)},!0),this.executed(["shape.create","shape.move","shape.delete"],Lc,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"],Lc,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)})})}ae(gr,X),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 v(e,"bpmn:SubProcess")&&t.findRoot(gi(e))},gr.prototype._updateOverlayVisibility=function(e){var t=this._overlays,n=Z(e),i=t.get({element:n.id,type:"drilldown"})[0];if(i){var r=n&&n.get("flowElements")&&n.get("flowElements").length;gt(i.html).toggle(QT,!r)}},gr.prototype._addOverlay=function(e){var t=this._canvas,n=this._overlays,i=Z(e),r=n.get({element:e,type:"drilldown"});r.length&&this._removeOverlay(e);var o=ut('<button type="button" class="bjs-drilldown">'+ZT+"</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(gi(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 JT={__depends__:[Oc,kp,GT],__init__:["drilldownBreadcrumbs","drilldownOverlayBehavior","drilldownCentering","subprocessCompatibility"],drilldownBreadcrumbs:["type",Sv],drilldownCentering:["type",Rv],drilldownOverlayBehavior:["type",gr],subprocessCompatibility:["type",Gr]};function yr(e){yt.call(this,e)}ae(yr,yt),yr.prototype._modules=[vm,JT,Oc,Kn,oa],yr.prototype._moddleExtensions={};var Ic="keyboard.keydown",eM="keyboard.keyup",tM=1e3,Av="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 yn(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(Av));var i=e&&e.bind!==!1;t.on("canvas.init",function(r){n._target=r.svg,i&&n.bind(),n._fire("init")})}yn.$inject=["config.keyboard","eventBus"],yn.prototype._keydownHandler=function(e){this._keyHandler(e,Ic)},yn.prototype._keyupHandler=function(e){this._keyHandler(e,eM)},yn.prototype._keyHandler=function(e,t){var n;if(!this._isEventIgnored(e)){var i={keyEvent:e};n=this._eventBus.fire(t||Ic,i),n&&e.preventDefault()}},yn.prototype._isEventIgnored=function(e){return!1},yn.prototype.bind=function(e){e&&console.error("unsupported argument <node>",new Error(Av)),this.unbind(),e=this._node=this._target,Ce.bind(e,"keydown",this._keydownHandler),Ce.bind(e,"keyup",this._keyupHandler),this._fire("bind")},yn.prototype.getBinding=function(){return this._node},yn.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),Ce.unbind(e,"keydown",this._keydownHandler),Ce.unbind(e,"keyup",this._keyupHandler)),this._node=null},yn.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},yn.prototype.addListener=function(e,t,n){Wt(e)&&(n=t,t=e,e=tM),this._eventBus.on(n||Ic,e,t)},yn.prototype.removeListener=function(e,t){this._eventBus.off(t||Ic,e)},yn.prototype.hasModifier=wP,yn.prototype.isCmd=Tn,yn.prototype.isShift=bp,yn.prototype.isKey=zt;var nM=500;function To(e,t){var n=this;e.on("editorActions.init",nM,function(i){var r=i.editorActions;n.registerBindings(t,r)})}To.$inject=["eventBus","keyboard"],To.prototype.registerBindings=function(e,t){function n(i,r){t.isRegistered(i)&&e.addListener(r)}n("undo",function(i){var r=i.keyEvent;if(PP(r))return t.trigger("undo"),!0}),n("redo",function(i){var r=i.keyEvent;if(AP(r))return t.trigger("redo"),!0}),n("copy",function(i){var r=i.keyEvent;if(EP(r))return t.trigger("copy"),!0}),n("paste",function(i){var r=i.keyEvent;if(SP(r))return t.trigger("paste"),!0}),n("duplicate",function(i){var r=i.keyEvent;if(RP(r))return t.trigger("duplicate"),!0}),n("cut",function(i){var r=i.keyEvent;if(CP(r))return t.trigger("cut"),!0}),n("stepZoom",function(i){var r=i.keyEvent;if(zt(["+","Add","="],r)&&Tn(r))return t.trigger("stepZoom",{value:1}),!0}),n("stepZoom",function(i){var r=i.keyEvent;if(zt(["-","Subtract"],r)&&Tn(r))return t.trigger("stepZoom",{value:-1}),!0}),n("zoom",function(i){var r=i.keyEvent;if(zt("0",r)&&Tn(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 Jp={__init__:["keyboard","keyboardBindings"],keyboard:["type",yn],keyboardBindings:["type",To]};var iM={moveSpeed:50,moveSpeedAccelerated:200};function Tv(e,t,n){var i=this;this._config=L({},iM,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})}}Tv.$inject=["config.keyboardMove","keyboard","canvas"];const Mv={__depends__:[Jp],__init__:["keyboardMove"],keyboardMove:["type",Tv]};var rM=15;function kv(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=$r(s),f=ri(l,c);if(!n.dragging&&oM(f)>rM&&(n.dragging=!0,u===0&&ry(e),cc("grab")),n.dragging){var p=n.last||n.start;f=ri(l,p),t.scroll({dx:f.x,dy:f.y}),n.last=l}s.preventDefault()}function o(s){Ce.unbind(document,"mousemove",r),Ce.unbind(document,"mouseup",o),n=null,iy()}function a(s){if(!Dr(s.target,".djs-draggable")){var c=s.button;if(!(c>=2||s.ctrlKey||s.shiftKey||s.altKey))return n={button:c,start:$r(s)},Ce.bind(document,"mousemove",r),Ce.bind(document,"mouseup",o),!0}}this.isActive=function(){return!!n}}kv.$inject=["eventBus","canvas"];function oM(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}const Dv={__init__:["moveCanvas"],moveCanvas:["type",kv]};function Ov(e,t){var n=yl(e.min),i=yl(e.max),r=Math.abs(n)+Math.abs(i);return r/t}function aM(e,t){return Math.max(e.min,Math.min(e.max,t))}var sM=Math.sign||function(e){return e>=0?1:-1},ef={min:.2,max:4},Lv=10,cM=.1,uM=.75;function _i(e,t,n){e=e||{},this._enabled=!1,this._canvas=n,this._container=n._container,this._handleWheel=_n(this._handleWheel,this),this._totalDelta=0,this._scale=e.scale||uM;var i=this;t.on("canvas.mouseover",function(){i._init(e.enabled!==!1)}),t.on("canvas.mouseout",function(){i._init(!1)})}_i.$inject=["config.zoomScroll","eventBus","canvas"],_i.prototype.scroll=function(t){this._canvas.scroll(t)},_i.prototype.reset=function(){this._canvas.zoom("fit-viewport")},_i.prototype.zoom=function(t,n){var i=Ov(ef,Lv*2);this._totalDelta+=t,Math.abs(this._totalDelta)>cM&&(this._zoom(t,n,i),this._totalDelta=0)},_i.prototype._handleWheel=function(t){if(this._enabled){var n=this._container;t.preventDefault();var i=t.ctrlKey||pg()&&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))*sM(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)}},_i.prototype.stepZoom=function(t,n){var i=Ov(ef,Lv);this._zoom(t,n,i)},_i.prototype._zoom=function(e,t,n){var i=this._canvas,r=e>0?1:-1,o=yl(i.zoom()),a=Math.round(o/n)*n;a+=n*r;var s=Math.pow(10,a);i.zoom(aM(ef,s),t)},_i.prototype.toggle=function(t){var n=this._container,i=this._handleWheel,r=this._enabled;return typeof t>"u"&&(t=!r),r!==t&&Ce[t?"bind":"unbind"](n,"wheel",i,!1),this._enabled=t,t},_i.prototype._init=function(e){this.toggle(e)};const Iv={__init__:["zoomScroll"],zoomScroll:["type",_i]};function Da(e){yr.call(this,e)}ae(Da,yr),Da.prototype._navigationModules=[Mv,Dv,Iv],Da.prototype._modules=[].concat(yr.prototype._modules,Da.prototype._navigationModules);function tf(e){return e&&e[e.length-1]}function Nv(e){return e.y}function Bv(e){return e.x}var lM={left:Bv,center:Bv,right:function(e){return e.x+e.width},top:Nv,middle:Nv,bottom:function(e){return e.y+e.height}};function Mo(e,t){this._modeling=e,this._rules=t}Mo.$inject=["modeling","rules"],Mo.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}},Mo.prototype._isType=function(e,t){return t.indexOf(e)!==-1},Mo.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=tf(t),o[e]=l[i]+l[r];else if(this._isType(e,["center","middle"])){if(k(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=ai(a,function(p){return p.elements.length>1&&(s=!0),p.elements.length}),s)return o[e]=tf(c).center,o;u=t[0],t=ai(t,function(p){return p[i]+p[r]}),l=tf(t),o[e]=f(u,l)}return o},Mo.prototype.trigger=function(e,t){var n=this._modeling,i,r=Ie(e,function(c){return!(c.waypoints||c.host||c.labelTarget)});if(i=this._rules.allowed("elements.align",{elements:r}),be(i)&&(r=i),!(r.length<2||!i)){var o=lM[t],a=ai(r,o),s=this._alignmentPosition(t,a);n.alignElements(a,s)}};const pM={__init__:["alignElements"],alignElements:["type",Mo]},fM=new Ro;function ko(e){this._scheduled={},e.on("diagram.destroy",()=>{Object.keys(this._scheduled).forEach(t=>{this.cancel(t)})})}ko.$inject=["eventBus"],ko.prototype.schedule=function(e,t=fM.next()){this.cancel(t);const n=this._schedule(e,t);return this._scheduled[t]=n,n.promise},ko.prototype._schedule=function(e,t){const n=dM();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}},ko.prototype.cancel=function(e){const t=this._scheduled[e];t&&(this._cancel(t),this._scheduled[e]=null)},ko.prototype._cancel=function(e){clearTimeout(e.executionId)};function dM(){const e={};return e.promise=new Promise((t,n)=>{e.resolve=t,e.reject=n}),e}const hM={scheduler:["type",ko]};var mM="djs-element-hidden",Nc=".entry",gM=1e3,$v=8,yM=300;function Mt(e,t,n,i){this._canvas=e,this._elementRegistry=t,this._eventBus=n,this._scheduler=i,this._current=null,this._init()}Mt.$inject=["canvas","elementRegistry","eventBus","scheduler"],Mt.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=be(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=be(i.target)?i.target:[i.target];r.includes(n)&&e._updateVisibility()}}),this._container=this._createContainer()},Mt.prototype._createContainer=function(){var e=ut('<div class="djs-context-pad-parent"></div>');return this._canvas.getContainer().appendChild(e),e},Mt.prototype.registerProvider=function(e,t){t||(t=e,e=gM),this._eventBus.on("contextPad.getProviders",e,function(n){n.providers.push(t)})},Mt.prototype.getEntries=function(e){var t=this._getProviders(),n=be(e)?"getMultiElementContextPadEntries":"getContextPadEntries",i={};return k(t,function(r){if(Wt(r[n])){var o=r[n](e);Wt(o)?i=o(i):k(o,function(a,s){i[s]=a})}}),i},Mt.prototype.trigger=function(e,t,n){var i=this,r,o,a=t.delegateTarget||t.target;if(!a)return t.preventDefault();if(r=sn(a,"data-action"),o=t.originalEvent||t,e==="mouseover"){this._timeout=setTimeout(function(){i._mouseout=i.triggerEntry(r,"hover",o,n)},yM);return}else if(e==="mouseout"){clearTimeout(this._timeout),this._mouseout&&(this._mouseout(),this._mouseout=null);return}return this.triggerEntry(r,e,o,n)},Mt.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(Wt(s)){if(t==="click")return s(n,r,i)}else if(s[t])return s[t](n,r,i);n.preventDefault()}}}},Mt.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))}},Mt.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"contextPad.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},Mt.prototype._updateAndOpen=function(e){var t=this.getEntries(e),n=this._createHtml(e),i;k(t,function(r,o){var a=r.group||"default",s=ut(r.html||'<div class="entry" draggable="true"></div>'),c;sn(s,"data-action",o),c=nt("[data-group="+ka(a)+"]",n),c||(c=ut('<div class="group"></div>'),sn(c,"data-group",a),n.appendChild(c)),c.appendChild(s),r.className&&vM(s,r.className),r.title&&sn(s,"title",r.title),r.imageUrl&&(i=ut("<img>"),sn(i,"src",r.imageUrl),i.style.width="100%",i.style.height="100%",s.appendChild(i))}),gt(n).add("open"),this._current={entries:t,html:n,target:e},this._updatePosition(),this._updateVisibility(),this._eventBus.fire("contextPad.open",{current:this._current})},Mt.prototype._createHtml=function(e){var t=this,n=ut('<div class="djs-context-pad"></div>');return Cn.bind(n,Nc,"click",function(i){t.trigger("click",i)}),Cn.bind(n,Nc,"dragstart",function(i){t.trigger("dragstart",i)}),Cn.bind(n,Nc,"mouseover",function(i){t.trigger("mouseover",i)}),Cn.bind(n,Nc,"mouseout",function(i){t.trigger("mouseout",i)}),Ce.bind(n,"mousedown",function(i){i.stopPropagation()}),this._container.appendChild(n),this._eventBus.fire("contextPad.create",{target:e,pad:n}),n},Mt.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()&&bM(this._current.target,e)?t=this._current.html:t=this._createHtml(e),{html:t}},Mt.prototype.close=function(){this.isOpen()&&(clearTimeout(this._timeout),this._container.innerHTML="",this._eventBus.fire("contextPad.close",{current:this._current}),this._current=null)},Mt.prototype.isOpen=function(e){var t=this._current;if(!t)return!1;if(!e)return!0;var n=t.target;return be(e)!==be(n)?!1:be(e)?e.length===n.length&&Cr(e,function(i){return n.includes(i)}):n===e},Mt.prototype.isShown=function(){return this.isOpen()&>(this._current.html).has("open")},Mt.prototype.show=function(){this.isOpen()&&(gt(this._current.html).add("open"),this._updatePosition(),this._eventBus.fire("contextPad.show",{current:this._current}))},Mt.prototype.hide=function(){this.isOpen()&&(gt(this._current.html).remove("open"),this._eventBus.fire("contextPad.hide",{current:this._current}))},Mt.prototype._getPosition=function(e){if(!be(e)&&rt(e)){var t=this._canvas.viewbox(),n=_M(e),i=n.x*t.scale-t.x*t.scale,r=n.y*t.scale-t.y*t.scale;return{left:i+$v*this._canvas.zoom(),top:r}}var o=this._canvas.getContainer(),a=o.getBoundingClientRect(),s=this._getTargetBounds(e);return{left:s.right-a.left+$v*this._canvas.zoom(),top:s.top-a.top}},Mt.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")},Mt.prototype._updateVisibility=function(){const e=()=>{if(this.isOpen()){var t=this,n=this._current.target,i=be(n)?n:[n],r=i.some(function(o){return t._canvas.hasMarker(o,mM)});r?t.hide():t.show()}};this._scheduler.schedule(e,"ContextPad#_updateVisibility")},Mt.prototype._getTargetBounds=function(e){var t=this,n=be(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 vM(e,t){var n=gt(e);t=be(t)?t:t.split(/\s+/g),t.forEach(function(i){n.add(i)})}function _M(e){return e.waypoints[e.waypoints.length-1]}function bM(e,t){return e=be(e)?e:[e],t=be(t)?t:[t],e.length===t.length&&Cr(e,function(n){return t.includes(n)})}const jv={__depends__:[sc,hM,Oc],contextPad:["type",Mt]};var Bc,_t,Fv,vr,Hv,zv,Vv,nf,$c,Oa,Gv,rf,of,af,jc={},Fc=[],xM=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,Hc=Array.isArray;function ji(e,t){for(var n in t)e[n]=t[n];return e}function sf(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function Wv(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?Bc.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 zc(e,a,i,r,null)}function zc(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??++Fv,__i:-1,__u:0};return r==null&&_t.vnode!=null&&_t.vnode(o),o}function Vc(e){return e.children}function Gc(e,t){this.props=e,this.context=t}function Wr(e,t){if(t==null)return e.__?Wr(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"?Wr(e):null}function wM(e){if(e.__P&&e.__d){var t=e.__v,n=t.__e,i=[],r=[],o=ji({},t);o.__v=t.__v+1,_t.vnode&&_t.vnode(o),cf(e.__P,o,t,e.__n,e.__P.namespaceURI,32&t.__u?[n]:null,i,n??Wr(t),!!(32&t.__u),r),o.__v=t.__v,o.__.__k[o.__i]=o,Jv(i,o,r),t.__e=t.__=null,o.__e!=n&&Uv(o)}}function Uv(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}),Uv(e)}function Yv(e){(!e.__d&&(e.__d=!0)&&vr.push(e)&&!Wc.__r++||Hv!=_t.debounceRendering)&&((Hv=_t.debounceRendering)||zv)(Wc)}function Wc(){try{for(var e,t=1;vr.length;)vr.length>t&&vr.sort(Vv),e=vr.shift(),t=vr.length,wM(e)}finally{vr.length=Wc.__r=0}}function qv(e,t,n,i,r,o,a,s,c,u,l){var f,p,d,h,m,g,R=i&&i.__k||Fc,w=t.length;for(c=EM(n,t,R,c,w),f=0;f<w;f++)(d=n.__k[f])!=null&&(p=d.__i!=-1&&R[d.__i]||jc,d.__i=f,g=cf(e,d,p,r,o,a,s,c,u,l),h=d.__e,d.ref&&p.ref!=d.ref&&(p.ref&&uf(p.ref,null,d),l.push(d.ref,d.__c||h,d)),m==null&&h!=null&&(m=h),4&d.__u?(c=Kv(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 EM(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]=zc(null,a,null,null,null):Hc(a)?a=e.__k[o]=zc(Vc,{children:a},null,null,null):a.constructor===void 0&&a.__b>0?a=e.__k[o]=zc(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=SM(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=Wr(s)),t_(s,s));return i}function Kv(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=Kv(i[r],t,n));return t}e.__e!=t&&(t&&e.type&&!t.parentNode&&(t=Wr(e)),t=n.insertBefore(e.__e,t||null));do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function SM(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 Xv(e,t,n){t[0]=="-"?e.setProperty(t,n??""):e[t]=n==null?"":typeof n!="number"||xM.test(t)?n:n+"px"}function Uc(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||Xv(e.style,t,"");if(n)for(t in n)i&&n[t]==i[t]||Xv(e.style,t,n[t])}else if(t[0]=="o"&&t[1]=="n")o=t!=(t=t.replace(Gv,"$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[Oa]=i[Oa]:(n[Oa]=rf,e.addEventListener(t,o?af:of,o)):e.removeEventListener(t,o?af:of,o);else{if(r=="http://www.w3.org/2000/svg")t=t.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(t!="width"&&t!="height"&&t!="href"&&t!="list"&&t!="form"&&t!="tabIndex"&&t!="download"&&t!="rowSpan"&&t!="colSpan"&&t!="role"&&t!="popover"&&t in e)try{e[t]=n??"";break e}catch{}typeof n=="function"||(n==null||n===!1&&t[4]!="-"?e.removeAttribute(t):e.setAttribute(t,t=="popover"&&n==1?"":n))}}function Zv(e){return function(t){if(this.l){var n=this.l[t.type+e];if(t[$c]==null)t[$c]=rf++;else if(t[$c]<n[Oa])return;return n(_t.event?_t.event(t):t)}}}function cf(e,t,n,i,r,o,a,s,c,u){var l,f,p,d,h,m,g,R,w,b,x,S,M,N,T,H,V=t.type;if(t.constructor!==void 0)return null;128&n.__u&&(c=!!(32&n.__u),o=[s=t.__e=n.__e]),(l=_t.__b)&&l(t);e:if(typeof V=="function"){f=a.length;try{if(w=t.props,b=V.prototype&&V.prototype.render,x=(l=V.contextType)&&i[l.__c],S=l?x?x.props.value:l.__:i,n.__c?R=(p=t.__c=n.__c).__=p.__E:(b?t.__c=p=new V(w,S):(t.__c=p=new Gc(w,S),p.constructor=V,p.render=CM),x&&x.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&&V.getDerivedStateFromProps!=null&&(p.__s==p.state&&(p.__s=ji({},p.__s)),ji(p.__s,V.getDerivedStateFromProps(w,p.__s))),h=p.props,m=p.state,p.__v=t,d)b&&V.getDerivedStateFromProps==null&&p.componentWillMount!=null&&p.componentWillMount(),b&&p.componentDidMount!=null&&p.__h.push(p.componentDidMount);else{if(b&&V.getDerivedStateFromProps==null&&w!==h&&p.componentWillReceiveProps!=null&&p.componentWillReceiveProps(w,S),t.__v==n.__v||!p.__e&&p.shouldComponentUpdate!=null&&p.shouldComponentUpdate(w,p.__s,S)===!1){t.__v!=n.__v&&(p.props=w,p.state=p.__s,p.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.some(function($){$&&($.__=t)}),Fc.push.apply(p.__h,p._sb),p._sb=[],p.__h.length&&a.push(p),s=Wr(n);break e}p.componentWillUpdate!=null&&p.componentWillUpdate(w,p.__s,S),b&&p.componentDidUpdate!=null&&p.__h.push(function(){p.componentDidUpdate(h,m,g)})}if(p.context=S,p.props=w,p.__P=e,p.__e=!1,M=_t.__r,N=0,b)p.state=p.__s,p.__d=!1,M&&M(t),l=p.render(p.props,p.state,p.context),Fc.push.apply(p.__h,p._sb),p._sb=[];else do p.__d=!1,M&&M(t),l=p.render(p.props,p.state,p.context),p.state=p.__s;while(p.__d&&++N<25);p.state=p.__s,p.getChildContext!=null&&(i=ji(ji({},i),p.getChildContext())),b&&!d&&p.getSnapshotBeforeUpdate!=null&&(g=p.getSnapshotBeforeUpdate(h,m)),T=l!=null&&l.type===Vc&&l.key==null?e_(l.props.children):l,s=qv(e,Hc(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),R&&(p.__E=p.__=null)}catch($){if(a.length=f,t.__v=null,c||o!=null){if($.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(H=o.length;H--;)sf(o[H])}else t.__e=n.__e;t.__k==null&&(t.__k=n.__k||[]),$.then||Qv(t),_t.__e($,t,n)}}else o==null&&t.__v==n.__v?(t.__k=n.__k,t.__e=n.__e):s=t.__e=RM(n.__e,t,n,i,r,o,a,c,u);return(l=_t.diffed)&&l(t),128&t.__u?void 0:s}function Qv(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some(Qv))}function Jv(e,t,n){for(var i=0;i<n.length;i++)uf(n[i],n[++i],n[++i]);_t.__c&&_t.__c(t,e),e.some(function(r){try{e=r.__h,r.__h=[],e.some(function(o){o.call(r)})}catch(o){_t.__e(o,r.__v)}})}function e_(e){return typeof e!="object"||e==null||e.__b>0?e:Hc(e)?e.map(e_):e.constructor!==void 0?null:ji({},e)}function RM(e,t,n,i,r,o,a,s,c){var u,l,f,p,d,h,m,g=n.props||jc,R=t.props,w=t.type;if(w=="svg"?r="http://www.w3.org/2000/svg":w=="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==!!w&&(w?d.localName==w:d.nodeType==3)){e=d,o[u]=null;break}}if(e==null){if(w==null)return document.createTextNode(R);e=document.createElementNS(r,w,R.is&&R),s&&(_t.__m&&_t.__m(t,o),s=!1),o=null}if(w==null)g===R||s&&e.data==R||(e.data=R);else{if(o=w=="textarea"&&R.defaultValue!=null?null:o&&Bc.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 R||u=="value"&&"defaultValue"in R||u=="checked"&&"defaultChecked"in R||Uc(e,u,null,d,r);for(u in R)d=R[u],u=="children"?p=d:u=="dangerouslySetInnerHTML"?l=d:u=="value"?h=d:u=="checked"?m=d:s&&typeof d!="function"||g[u]===d||Uc(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=""),qv(t.type=="template"?e.content:e,Hc(p)?p:[p],t,n,i,w=="foreignObject"?"http://www.w3.org/1999/xhtml":r,o,a,o?o[0]:n.__k&&Wr(n,0),s,c),o!=null)for(u=o.length;u--;)sf(o[u]);s&&w!="textarea"||(u="value",w=="progress"&&h==null?e.removeAttribute("value"):h!=null&&(h!==e[u]||w=="progress"&&!h||w=="option"&&h!=g[u])&&Uc(e,u,h,g[u],r),u="checked",m!=null&&m!=e[u]&&Uc(e,u,m,g[u],r))}return e}function uf(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){_t.__e(r,n)}}function t_(e,t,n){var i,r;if(_t.unmount&&_t.unmount(e),(i=e.ref)&&(i.current&&i.current!=e.__e||uf(i,null,t)),(i=e.__c)!=null){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(o){_t.__e(o,t)}i.base=i.__P=i.__n=null}if(i=e.__k)for(r=0;r<i.length;r++)i[r]&&t_(i[r],t,n||typeof e.type!="function");n||sf(e.__e),e.__c=e.__=e.__e=void 0}function CM(e,t,n){return this.constructor(e,n)}function n_(e,t,n){var i,r,o,a;t==document&&(t=document.documentElement),_t.__&&_t.__(e,t),r=(i=!1)?null:t.__k,o=[],a=[],cf(t,e=t.__k=Wv(Vc,null,[e]),r||jc,jc,t.namespaceURI,r?null:t.firstChild?Bc.call(t.childNodes):null,o,r?r.__e:t.firstChild,i,a),Jv(o,e,a),e.props.children=null}Bc=Fc.slice,_t={__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}},Fv=0,Gc.prototype.setState=function(e,t){var n;n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=ji({},this.state),typeof e=="function"&&(e=e(ji({},n),this.props)),e&&ji(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),Yv(this))},Gc.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),Yv(this))},Gc.prototype.render=Vc,vr=[],zv=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Vv=function(e,t){return e.__v.__b-t.__v.__b},Wc.__r=0,nf=Math.random().toString(8),$c="__d"+nf,Oa="__a"+nf,Gv=/(PointerCapture)$|Capture$/i,rf=0,of=Zv(!1),af=Zv(!0);var i_=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,i_(e,s,n,["",null])),i.push(r),s[0]?t[0]|=2:(t[o-2]=0,t[o]=r)):i.push(s)}return i},r_=new Map;function PM(e){var t=r_.get(this);return t||(t=new Map,r_.set(this,t)),(t=i_(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 at=PM.bind(Wv),Do,kt,lf,o_,La=0,a_=[],Vt=_t,s_=Vt.__b,c_=Vt.__r,u_=Vt.diffed,l_=Vt.__c,p_=Vt.unmount,f_=Vt.__;function Yc(e,t){Vt.__h&&Vt.__h(kt,e,La||t),La=0;var n=kt.__H||(kt.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({}),n.__[e]}function pf(e){return La=1,AM(h_,e)}function AM(e,t,n){var i=Yc(Do++,2);if(i.t=e,!i.__c&&(i.__=[h_(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=kt,!kt.__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};kt.__f=!0;var o=kt.shouldComponentUpdate,a=kt.componentWillUpdate;kt.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)},kt.shouldComponentUpdate=r}return i.__N||i.__}function qc(e,t){var n=Yc(Do++,3);!Vt.__s&&hf(n.__H,t)&&(n.__=e,n.u=t,kt.__H.__h.push(n))}function ff(e,t){var n=Yc(Do++,4);!Vt.__s&&hf(n.__H,t)&&(n.__=e,n.u=t,kt.__h.push(n))}function Kc(e){return La=5,Fi(function(){return{current:e}},[])}function Fi(e,t){var n=Yc(Do++,7);return hf(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function Ia(e,t){return La=8,Fi(function(){return e},t)}function TM(){for(var e;e=a_.shift();){var t=e.__H;if(e.__P&&t)try{t.__h.some(Xc),t.__h.some(df),t.__h=[]}catch(n){t.__h=[],Vt.__e(n,e.__v)}}}Vt.__b=function(e){kt=null,s_&&s_(e)},Vt.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),f_&&f_(e,t)},Vt.__r=function(e){c_&&c_(e),Do=0;var t=(kt=e.__c).__H;t&&(lf===kt?(t.__h=[],kt.__h=[],t.__.some(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(t.__h.some(Xc),t.__h.some(df),t.__h=[],Do=0)),lf=kt},Vt.diffed=function(e){u_&&u_(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(a_.push(t)!==1&&o_===Vt.requestAnimationFrame||((o_=Vt.requestAnimationFrame)||MM)(TM)),t.__H.__.some(function(n){n.u&&(n.__H=n.u,n.u=void 0)})),lf=kt=null},Vt.__c=function(e,t){t.some(function(n){try{n.__h.some(Xc),n.__h=n.__h.filter(function(i){return!i.__||df(i)})}catch(i){t.some(function(r){r.__h&&(r.__h=[])}),t=[],Vt.__e(i,n.__v)}}),l_&&l_(e,t)},Vt.unmount=function(e){p_&&p_(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.some(function(i){try{Xc(i)}catch(r){t=r}}),n.__H=void 0,t&&Vt.__e(t,n.__v))};var d_=typeof requestAnimationFrame=="function";function MM(e){var t,n=function(){clearTimeout(i),d_&&cancelAnimationFrame(t),setTimeout(e)},i=setTimeout(n,35);d_&&(t=requestAnimationFrame(n))}function Xc(e){var t=kt,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),kt=t}function df(e){var t=kt;e.__c=e.__(),kt=t}function hf(e,t){return!e||e.length!==t.length||t.some(function(n,i){return n!==e[i]})}function h_(e,t){return typeof t=="function"?t(e):t}function kM(e){const{navigationStack:t,setNavigationStack:n}=e,i=Fi(()=>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 at`
|
|
12
12
|
<div class="djs-popup-breadcrumbs">
|
|
13
13
|
${r&&at`
|
|
14
14
|
<button
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
</span>
|
|
42
42
|
`}
|
|
43
43
|
</div>
|
|
44
|
-
`}function
|
|
44
|
+
`}function m_(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=m_(e[t]))&&(i&&(i+=" "),i+=n)}else for(n in e)e[n]&&(i&&(i+=" "),i+=n);return i}function Zc(){for(var e,t,n=0,i="",r=arguments.length;n<r;n++)(e=arguments[n])&&(t=m_(e))&&(i&&(i+=" "),i+=t);return i}function DM(e){const{headerEntries:t,onSelect:n,selectedEntry:i,setSelectedEntry:r,title:o}=e,a=Fi(()=>OM(t),[t]),s=u=>u.action&&!u.disabled,c=(u,l)=>{if(s(l))return n(u,l)};return at`
|
|
45
45
|
<div class="djs-popup-header">
|
|
46
46
|
<h3 class="djs-popup-title" title=${o}>${o}</h3>
|
|
47
47
|
${a.map(u=>at`
|
|
@@ -50,8 +50,8 @@
|
|
|
50
50
|
${u.entries.map(l=>at`
|
|
51
51
|
<li key=${l.id}>
|
|
52
52
|
<${s(l)?"button":"span"}
|
|
53
|
-
class=${
|
|
54
|
-
onClick=${
|
|
53
|
+
class=${LM(l,l===i)}
|
|
54
|
+
onClick=${f=>c(f,l)}
|
|
55
55
|
title=${l.title||l.label}
|
|
56
56
|
data-id=${l.id}
|
|
57
57
|
aria-disabled=${l.disabled||void 0}
|
|
@@ -70,11 +70,11 @@
|
|
|
70
70
|
</ul>
|
|
71
71
|
`)}
|
|
72
72
|
</div>
|
|
73
|
-
`}function
|
|
73
|
+
`}function OM(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 LM(e,t){return Zc("entry",e.className,e.active?"active":"",e.disabled?"disabled":"",t?"selected":"")}function g_(e,t){return`${e}-entry-${t.id}`}function IM(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 at`
|
|
74
74
|
<li
|
|
75
75
|
class=${Zc("entry",{selected:i,disabled:n.disabled})}
|
|
76
76
|
data-id=${n.id}
|
|
77
|
-
id=${
|
|
77
|
+
id=${g_(t,n)}
|
|
78
78
|
role="option"
|
|
79
79
|
aria-selected=${i||void 0}
|
|
80
80
|
aria-haspopup=${n.entries?"true":void 0}
|
|
@@ -131,20 +131,20 @@
|
|
|
131
131
|
</div>
|
|
132
132
|
`}
|
|
133
133
|
</li>
|
|
134
|
-
`}function
|
|
134
|
+
`}function NM(e){const{selectedEntry:t,setSelectedEntry:n,groupedEntries:i,keyboardSelection:r,idPrefix:o,id:a,ariaLabel:s,tabIndex:c,ariaActivedescendant:u,...l}=e,f=Kc();ff(()=>{if(!r||!r.current)return;const m=f.current;if(!m)return;const g=m.querySelector(".selected");g&&BM(g)},[t]);const p=()=>{r.current=!1},d=m=>{r.current||n(m)},h=()=>{r.current||n(null)};return at`
|
|
135
135
|
<div
|
|
136
136
|
class="djs-popup-results"
|
|
137
|
-
ref=${
|
|
137
|
+
ref=${f}
|
|
138
138
|
id=${a}
|
|
139
139
|
role="listbox"
|
|
140
140
|
aria-label=${s}
|
|
141
141
|
tabIndex=${c}
|
|
142
142
|
aria-activedescendant=${u}
|
|
143
|
-
onMouseMove=${
|
|
143
|
+
onMouseMove=${p}
|
|
144
144
|
>
|
|
145
145
|
${i.map(m=>at`
|
|
146
146
|
${m.name&&at`
|
|
147
|
-
<div key=${m.id} id=${
|
|
147
|
+
<div key=${m.id} id=${y_(o,m)} class="entry-header" title=${m.name}>
|
|
148
148
|
${m.name}
|
|
149
149
|
</div>
|
|
150
150
|
`}
|
|
@@ -152,10 +152,10 @@
|
|
|
152
152
|
class="djs-popup-group"
|
|
153
153
|
data-group=${m.id}
|
|
154
154
|
role="group"
|
|
155
|
-
aria-labelledby=${m.name?
|
|
155
|
+
aria-labelledby=${m.name?y_(o,m):void 0}
|
|
156
156
|
>
|
|
157
157
|
${m.entries.map(g=>at`
|
|
158
|
-
<${
|
|
158
|
+
<${IM}
|
|
159
159
|
key=${g.id}
|
|
160
160
|
idPrefix=${o}
|
|
161
161
|
entry=${g}
|
|
@@ -168,33 +168,33 @@
|
|
|
168
168
|
</ul>
|
|
169
169
|
`)}
|
|
170
170
|
</div>
|
|
171
|
-
`}function
|
|
172
|
-
<${
|
|
171
|
+
`}function y_(e,t){return`${e}-group-${t.id}`}function BM(e){typeof e.scrollIntoViewIfNeeded=="function"?e.scrollIntoViewIfNeeded():e.scrollIntoView({scrollMode:"if-needed",block:"nearest"})}const $M=new Ro("djs-popup");function jM(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]=pf([]);qc(()=>{g([])},[p]);const[R,w]=pf(""),b=R.trim().length>0,x=Fi(()=>zM(p),[p]),S=Fi(()=>$t(u)?x.length>5:!1,[u,x]),M=Fi(()=>{const z=m.length?m[m.length-1].entries:p;return S?b?f(x.filter(({searchable:F})=>F!==!1),R,{keys:["label","search","description"]}).map(({item:F})=>F):z.filter(({rank:F=0})=>F>=0):z},[S,b,x,R,f,m,p]),N=Fi(()=>b?M.length?[{id:"default",entries:M}]:[]:VM(M),[M,b]),[T,H]=pf(M[0]),V=Kc(null),$=Kc(!1),G=Fi(()=>$M.next(),[]),fe=`${G}-results`,ze=T&&g_(G,T);qc(()=>{const z=V.current;z&&M.includes(z)?H(z):H(M[0]),V.current=null},[M]);const lt=Ia(z=>{const F=HM(N);let Oe=F.indexOf(T)+z;Oe<0&&(Oe=F.length-1),Oe>=F.length&&(Oe=0),$.current=!0,H(F[Oe])},[N,T]),q=Ia(z=>{z>0&&T&&T.entries&&($.current=!0,g(F=>[...F,T])),z<0&&m.length>0&&($.current=!0,V.current=m[m.length+z],g(F=>F.slice(0,z)))},[T,m]),de=Ia((z,F,U)=>{if(!(!F||F.disabled))return F.entries?(z.preventDefault(),q(1)):n(z,F,U)},[n,q]),he=Ia(z=>{if(z.key==="Enter"&&T){const F=z.target;return!!Dr(F,"a, button",!0)||T.disabled?void 0:de(z,T)}if(z.key==="Backspace"){const F=z.target;if(!(Xu(F,"input")&&F.value!==""))return q(-1),z.preventDefault()}if(z.key==="ArrowUp")return lt(-1),z.preventDefault();if(z.key==="ArrowDown")return lt(1),z.preventDefault();if(z.key==="ArrowRight")return q(1),z.preventDefault();if(z.key==="ArrowLeft")return q(-1),z.preventDefault()},[T,lt,q,de]),ue=Ia(z=>{Xu(z.target,"input")&&w(()=>z.target.value)},[w]);qc(()=>(d(),()=>{h()}),[]);const le=!b&&m.length>0,ie=(a||r.length>0)&&!le;return at`
|
|
172
|
+
<${v_}
|
|
173
173
|
onClose=${t}
|
|
174
174
|
onKeyup=${ue}
|
|
175
|
-
onKeydown=${
|
|
175
|
+
onKeydown=${he}
|
|
176
176
|
className=${i}
|
|
177
177
|
position=${o}
|
|
178
178
|
width=${s}
|
|
179
179
|
scale=${c}
|
|
180
180
|
navigationStack=${m}
|
|
181
181
|
>
|
|
182
|
-
${
|
|
183
|
-
<${
|
|
182
|
+
${ie&&at`
|
|
183
|
+
<${DM}
|
|
184
184
|
headerEntries=${r}
|
|
185
185
|
onSelect=${n}
|
|
186
|
-
selectedEntry=${
|
|
186
|
+
selectedEntry=${T}
|
|
187
187
|
setSelectedEntry=${H}
|
|
188
188
|
title=${a}
|
|
189
189
|
/>
|
|
190
190
|
`}
|
|
191
191
|
${le&&at`
|
|
192
|
-
<${
|
|
192
|
+
<${kM}
|
|
193
193
|
navigationStack=${m}
|
|
194
194
|
setNavigationStack=${g}
|
|
195
195
|
/>
|
|
196
196
|
`}
|
|
197
|
-
${
|
|
197
|
+
${p.length>0&&at`
|
|
198
198
|
<div class="djs-popup-body">
|
|
199
199
|
|
|
200
200
|
${S&&at`
|
|
@@ -208,7 +208,7 @@
|
|
|
208
208
|
role="combobox"
|
|
209
209
|
aria-label="${a||"Search"}"
|
|
210
210
|
aria-expanded="true"
|
|
211
|
-
aria-controls=${
|
|
211
|
+
aria-controls=${fe}
|
|
212
212
|
aria-activedescendant=${ze||void 0}
|
|
213
213
|
aria-autocomplete="list"
|
|
214
214
|
/>
|
|
@@ -221,26 +221,26 @@
|
|
|
221
221
|
</div>
|
|
222
222
|
`}
|
|
223
223
|
|
|
224
|
-
<${
|
|
225
|
-
groupedEntries=${
|
|
226
|
-
selectedEntry=${
|
|
224
|
+
<${NM}
|
|
225
|
+
groupedEntries=${N}
|
|
226
|
+
selectedEntry=${T}
|
|
227
227
|
setSelectedEntry=${H}
|
|
228
|
-
keyboardSelection=${
|
|
229
|
-
onAction=${
|
|
228
|
+
keyboardSelection=${$}
|
|
229
|
+
onAction=${de}
|
|
230
230
|
idPrefix=${G}
|
|
231
|
-
id=${
|
|
231
|
+
id=${fe}
|
|
232
232
|
ariaLabel=${a||"Results"}
|
|
233
233
|
tabIndex=${S?-1:0}
|
|
234
234
|
ariaActivedescendant=${S?void 0:ze||void 0}
|
|
235
235
|
/>
|
|
236
236
|
|
|
237
|
-
${
|
|
237
|
+
${T&&T.documentationRef&&at`
|
|
238
238
|
<div class="djs-popup-footer">
|
|
239
239
|
<a
|
|
240
240
|
class="djs-popup-footer-docs"
|
|
241
|
-
href=${
|
|
241
|
+
href=${T.documentationRef}
|
|
242
242
|
onClick=${z=>z.stopPropagation()}
|
|
243
|
-
aria-label=${
|
|
243
|
+
aria-label=${T.label?`Open entry documentation for ${T.label}`:"Open entry documentation"}
|
|
244
244
|
target="_blank"
|
|
245
245
|
rel="noopener"
|
|
246
246
|
>
|
|
@@ -255,13 +255,13 @@
|
|
|
255
255
|
</div>
|
|
256
256
|
`}
|
|
257
257
|
${l&&M.length===0&&at`
|
|
258
|
-
<div class="djs-popup-no-results">${
|
|
258
|
+
<div class="djs-popup-no-results">${Wt(l)?l(R):l}</div>
|
|
259
259
|
`}
|
|
260
|
-
</${
|
|
261
|
-
`}function
|
|
260
|
+
</${v_}>
|
|
261
|
+
`}function v_(e){const{onClose:t,onKeydown:n,onKeyup:i,className:r,children:o,navigationStack:a,position:s}=e,c=Kc();return ff(()=>{if(typeof s!="function")return;const u=c.current,l=s(u);u.style.left=`${l.x}px`,u.style.top=`${l.y}px`},[c.current,s]),ff(()=>{const u=c.current;if(!u)return;(u.querySelector("input")||u.querySelector('[role="listbox"]')||u).focus()},[a]),qc(()=>{const u=f=>{if(f.key==="Escape")return f.preventDefault(),t()},l=f=>{if(!Dr(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)}},[]),at`
|
|
262
262
|
<div
|
|
263
263
|
class=${Zc("djs-popup",r)}
|
|
264
|
-
style=${
|
|
264
|
+
style=${FM(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
|
|
273
|
-
<${
|
|
274
|
-
onClose=${
|
|
275
|
-
onSelect=${(
|
|
272
|
+
`}function FM(e){const{width:t}=e,n=typeof t=="number"?`${t}px`:t;return{transform:`scale(${e.scale})`,width:$t(t)?n:void 0,maxWidth:$t(t)?"unset":void 0,"transform-origin":"top left"}}function HM(e){const t=[];return e.forEach(n=>{n.entries.forEach(i=>{t.push(i)})}),t}function zM(e){const t=[];function n(i){i.forEach(r=>{if(r.entries){n(r.entries);return}t.push(r)})}return n(e),t}function VM(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 GM="data-id",__=["contextPad.close","canvas.viewbox.changing","commandStack.changed"],WM=1e3;function bt(e,t,n,i){this._eventBus=t,this._canvas=n,this._search=i,this._current=null;var r=$t(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()})}bt.$inject=["config.popupMenu","eventBus","canvas","search"],bt.prototype._render=function(){const{position:e,providerId:t,entries:n,headerEntries:i,emptyPlaceholder:r,options:o}=this._current,a=b_(n),s=Object.entries(i).map(([p,d])=>({id:p,...d})),c=e&&(p=>this._ensureVisible(p,e)),u=this._updateScale(this._current.container);n_(at`
|
|
273
|
+
<${jM}
|
|
274
|
+
onClose=${p=>this.close(p)}
|
|
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)},
|
|
287
|
+
`,this._current.container)},bt.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()},bt.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()},bt.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)}},bt.prototype.close=function(){this.isOpen()&&(this._emit("close"),this.reset(),this._canvas.restoreFocus(),this._current=null)},bt.prototype.reset=function(){const e=this._current.container;n_(null,e),pi(e)},bt.prototype._emit=function(e,t){this._eventBus.fire(`popupMenu.${e}`,t)},bt.prototype._onOpened=function(){this._emit("opened")},bt.prototype._onClosed=function(){this._emit("closed")},bt.prototype._createContainer=function(e){var t=this._canvas,n=t.getContainer();const i=ut(`<div class="djs-popup-parent djs-scrollable" data-popup=${e.provider}></div>`);return n.appendChild(i),i},bt.prototype._bindAutoClose=function(){this._eventBus.once(__,this.close,this)},bt.prototype._unbindAutoClose=function(){this._eventBus.off(__,this.close,this)},bt.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),$t(n)&&e<n&&(r=n),$t(i)&&e>i&&(r=i)),r},bt.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}},bt.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},bt.prototype.registerProvider=function(e,t,n){n||(n=t,t=WM),this._eventBus.on("popupMenu.getProviders."+e,t,function(i){i.providers.push(n)})},bt.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"popupMenu.getProviders."+e,providers:[]});return this._eventBus.fire(t),t.providers},bt.prototype._getEntries=function(e,t){var n={};return k(t,function(i){if(!i.getPopupMenuEntries){k(i.getEntries(e),function(o){var a=o.id;if(!a)throw new Error("entry ID is missing");n[a]=si(o,["id"])});return}var r=i.getPopupMenuEntries(e);Wt(r)?n=r(n):k(r,function(o,a){n[a]=o})}),n},bt.prototype._getHeaderEntries=function(e,t){var n={};return k(t,function(i){if(!i.getPopupMenuHeaderEntries){if(!i.getHeaderEntries)return;k(i.getHeaderEntries(e),function(o){var a=o.id;if(!a)throw new Error("entry ID is missing");n[a]=si(o,["id"])});return}var r=i.getPopupMenuHeaderEntries(e);Wt(r)?n=r(n):k(r,function(o,a){n[a]=o})}),n},bt.prototype._getEmptyPlaceholder=function(e){const t=e.find(n=>Wt(n.getEmptyPlaceholder));return t&&t.getEmptyPlaceholder()},bt.prototype.isOpen=function(){return!!this._current},bt.prototype.trigger=function(e,t,n="click"){if(e.preventDefault(),!t){let r=Dr(e.delegateTarget||e.target,".entry",!0),o=sn(r,GM);t={id:o,...this._getEntry(o)}}const i=t.action;if(this._emit("trigger",{entry:t,event:e})!==!1){if(Wt(i)){if(n==="click")return i(e,t)}else if(i[n])return i[n](e,t)}},bt.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 b_(e,t=[]){return Object.entries(e).map(([n,i])=>{const r={id:n,...i};return r.entries?r.entries=b_(r.entries,[...t,...x_(r.search)]):t.length&&(r.search=[...t,...x_(r.search)]),r})}function x_(e){return e?be(e)?e:[e]:[]}function UM(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=YM(o,r,i);return a?{item:o,tokens:a}:[]}).sort(qM(i))}function YM(e,t,n){const{matchedWords:i,tokens:r}=n.reduce((o,a)=>{const s=e[a],{tokens:c,matchedWords:u}=be(s)?s.reduce((l,f)=>{const{tokens:p,matchedWords:d}=C_(f,t);return{tokens:[...l.tokens,p],matchedWords:{...l.matchedWords,...d}}},{matchedWords:{},tokens:[]}):C_(s,t);return{tokens:{...o.tokens,[a]:c},matchedWords:{...o.matchedWords,...u}}},{matchedWords:{},tokens:{}});return Object.keys(i).length!==t.length?null:r}function qM(e){return(t,n)=>{let i=0,r=1;for(const o of e){const a=KM(t.tokens[o],n.tokens[o]);if(a!==0){i+=a*r,r*=w_;continue}const s=XM(t.item[o],n.item[o]);if(s!==0){i+=s*r,r*=w_;continue}}return i}}function KM(e,t){return E_(t)-E_(e)}const w_=.5,Oo={FULL:131.9,START_FULL_WORD:8,START_WORD_PART:7.87,WORD_START:2.19,WORD_PART:1,NO_MATCH:-.07};function E_(e){const t=e.reduce((s,c)=>s+S_(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 S_(e){if(be(e))return Math.max(...e.map(S_));const t=Math.log(e.value.length);return e.match?(e.start?e.end?Oo.FULL:e.wordEnd?Oo.START_FULL_WORD:Oo.START_WORD_PART:e.wordStart?Oo.WORD_START:Oo.WORD_PART)*t:Oo.NO_MATCH*t}function R_(e=""){return be(e)?e.join(", "):e}function XM(e,t){return R_(e).localeCompare(R_(t))}function C_(e,t){var u;if(!e)return{tokens:[],matchedWords:{}};const n=[],i={},r=t.map(ZM),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)),R=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:R,start:d,end:h,all:m});const w=m?t:[l];for(const b of w)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 ZM(e){return e.replace(/[/\-\\^$*+?.()|[\]{}]/g,"\\$&")}const P_={search:["value",UM]},mf={__depends__:[P_],__init__:["popupMenu"],popupMenu:["type",bt]};var A_={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>`},UM=900;function Lo(e,t,n,i){e.registerProvider(UM,this),this._contextPad=e,this._popupMenu=t,this._translate=n,this._canvas=i}Lo.$inject=["contextPad","popupMenu","translate","canvas"],Lo.prototype.getMultiElementContextPadEntries=function(e){var t={};return this._isAllowed(e)&&D(t,this._getEntries(e)),t},Lo.prototype._isAllowed=function(e){return!this._popupMenu.isEmpty(e,"align-elements")},Lo.prototype._getEntries=function(){var e=this;return{"align-elements":{group:"align-elements",title:e._translate("Align elements"),html:`<div class="entry">${R_.align}</div>`,action:{click:function(t,n){var i=e._getMenuPosition(n);D(i,{cursor:{x:t.x,y:t.y}}),e._popupMenu.open(n,"align-elements",i)}}}}},Lo.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 YM=["left","center","right","top","middle","bottom"];function Na(e,t,n,i){this._alignElements=t,this._translate=n,this._popupMenu=e,this._rules=i,e.registerProvider("align-elements",this)}Na.$inject=["popupMenu","alignElements","translate","rules"],Na.prototype.getPopupMenuEntries=function(e){var t={};return this._isAllowed(e)&&D(t,this._getEntries(e)),t},Na.prototype._isAllowed=function(e){return this._rules.allowed("elements.align",{elements:e})},Na.prototype._getEntries=function(e){var t=this._alignElements,n=this._translate,i=this._popupMenu,r={};return k(YM,function(o){r["align-elements-"+o]={group:"align",title:n("Align elements "+o),className:"bjs-align-elements-menu-entry",imageHtml:R_[o],action:function(){t.trigger(e,o),i.close()}}}),r};function Qc(e){qn.call(this,e)}Qc.$inject=["eventBus"],oe(Qc,qn),Qc.prototype.init=function(){this.addRule("elements.align",function(e){var t=e.elements,n=Le(t,function(i){return!(i.waypoints||i.host||i.labelTarget)});return n=xs(n),n.length<2?!1:n})};const qM={__depends__:[oM,Nv,df],__init__:["alignElementsContextPadProvider","alignElementsMenuProvider","bpmnAlignElements"],alignElementsContextPadProvider:["type",Lo],alignElementsMenuProvider:["type",Na],bpmnAlignElements:["type",Qc]};function Hi(e,t,n,i){K.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=Eu(Qr(a.closure.topLevel)),c=a.hints,u=c?c.autoResize:!0;if(u!==!1){var l=Jr(s,function(p){return p.parent.id});k(l,function(p,f){_e(u)&&(p=p.filter(function(d){return ct(u,eo({id:d.id}))})),r._expand(p,f)})}}),this.postExecuted(["shape.toggleCollapse"],function(o){var a=o.context,s=a.hints,c=a.shape;s&&s.autoResize===!1||c.collapsed||r._expand(c.children||[],c)}),this.postExecuted(["shape.resize"],function(o){var a=o.context,s=a.hints,c=a.shape,u=c.parent;s&&s.autoResize===!1||u&&r._expand([c],u)})}Hi.$inject=["eventBus","elementRegistry","modeling","rules"],oe(Hi,K),Hi.prototype._getOptimalBounds=function(e,t){var n=this.getOffset(t),i=this.getPadding(t),r=ge(Ct(e)),o=ge(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),Ss(D({},o,a))},Hi.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(KM(i,t)){var r=XM(ii(t,["x","y","width","height"]),i);this.resize(t,i,{autoResize:r});var o=t.parent;o&&this._expand([t],o)}}},Hi.prototype.getOffset=function(e){return{top:60,bottom:60,left:100,right:100}},Hi.prototype.getPadding=function(e){return{top:2,bottom:2,left:15,right:15}},Hi.prototype.resize=function(e,t,n){this._modeling.resizeShape(e,t,null,n)};function KM(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}function XM(e,t){var n="";return e=ge(e),t=ge(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 Jc(e){e.invoke(Hi,this)}Jc.$inject=["injector"],oe(Jc,Hi),Jc.prototype.resize=function(e,t,n){v(e,"bpmn:Participant")?this._modeling.resizeLane(e,t,null,n):this._modeling.resizeShape(e,t,null,n)};function Ba(e){qn.call(this,e);var t=this;this.addRule("element.autoResize",function(n){return t.canResize(n.elements,n.target)})}Ba.$inject=["eventBus"],oe(Ba,qn),Ba.prototype.canResize=function(e,t){return!1};function eu(e,t){Ba.call(this,e),this._modeling=t}oe(eu,Ba),eu.$inject=["eventBus","modeling"],eu.prototype.canResize=function(e,t){if(v(t.di,"bpmndi:BPMNPlane")||!v(t,"bpmn:Participant")&&!v(t,"bpmn:Lane")&&!v(t,"bpmn:SubProcess"))return!1;var n=!0;return k(e,function(i){if(v(i,"bpmn:Lane")||ke(i)){n=!1;return}}),n};const ZM={__init__:["bpmnAutoResize","bpmnAutoResizeProvider"],bpmnAutoResize:["type",Jc],bpmnAutoResizeProvider:["type",eu]};function Io(e,t,n){this._canvas=n,this._opts=D({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()})}Io.$inject=["config.autoScroll","eventBus","canvas"],Io.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++)QM(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 QM(e,t,n){return t<e&&e<n}Io.prototype.stopScroll=function(){clearTimeout(this._scrolling)},Io.prototype.setOptions=function(e){this._opts=D({},this._opts,e)},Io.prototype._toBorderPoint=function(e){var t=this._canvas._container.getBoundingClientRect(),n=$r(e.originalEvent);return{x:n.x-t.left,y:n.y-t.top}};const JM={__depends__:[Ii],__init__:["autoScroll"],autoScroll:["type",Io]};var C_="djs-bendpoint",P_="djs-segment-dragger";function e2(e,t){var n=$r(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 hf(e,t,n){var i=e2(e,n),r=Ol(t,i);return r}function mf(e,t){var n=he("g");He(n).add(C_),Re(e,n);var i=he("circle");ae(i,{cx:0,cy:0,r:4}),He(i).add("djs-visual"),Re(n,i);var r=he("circle");return ae(r,{cx:0,cy:0,r:10}),He(r).add("djs-hit"),Re(n,r),t&&He(n).add(t),n}function t2(e,t,n,i){var r=he("g");Re(e,r);var o=18,a=6,s=11,c=i2(t,n,i),u=a+s,l=he("rect");ae(l,{x:-o/2,y:-a/2,width:o,height:a}),He(l).add("djs-visual"),Re(r,l);var p=he("rect");return ae(p,{x:-c/2,y:-u/2,width:c,height:u}),He(p).add("djs-hit"),Re(r,p),em(r,i==="v"?90:0),r}function A_(e,t,n){var i=he("g"),r=sl(t,n),o=Ti(t,n);return Re(e,i),t2(i,t,n,o),He(i).add(P_),He(i).add(o==="h"?"horizontal":"vertical"),Qt(i,r.x,r.y),i}function gf(e){return Math.abs(Math.round(e*2/3))}function n2(e,t){var n=r2(e,t);return $l(e,n)}function i2(e,t,n){var i=t.x-e.x,r=t.y-e.y;return gf(n==="h"?i:r)}function r2(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=Fm(e,[a,s]);c<i&&(i=c,r=o)}return[n[r],n[r+1]]}function T_(e,t,n,i,r){function o(b,x,S){var M=b.index,L=b.point,A,H,V,N,G,pe;return M<=0||b.bendpoint?!1:(A=x[M-1],H=x[M],V=sl(A,H),N=Ti(A,H),G=Math.abs(L.x-V.x),pe=Math.abs(L.y-V.y),N&&G<=S&&pe<=S)}function a(b,x){var S=b.waypoints,M,L,A,H;return x.index<=0||x.bendpoint||(M={start:S[x.index-1],end:S[x.index]},L=Ti(M.start,M.end),!L)?null:(L==="h"?A=M.end.x-M.start.x:A=M.end.y-M.start.y,H=gf(A)/2,H)}function s(b,x){var S=x.waypoints,M=hf(t,S,b),L;if(M){L=a(x,M);var A;if(o(M,S,L)?A=r.start(b,x,M.index):A=i.start(b,x,M.index,!M.bendpoint),A!==!1)return!0}}function c(b,x,S){Se.bind(b,x,function(M){n.triggerMouseEvent(x,M,S),M.stopPropagation()})}function u(b,x){var S=t.getLayer("overlays"),M=nt('.djs-bendpoints[data-element-id="'+ka(b.id)+'"]',S);return!M&&x&&(M=he("g"),ae(M,{"data-element-id":b.id}),He(M).add("djs-bendpoints"),Re(S,M),c(M,"mousedown",b),c(M,"click",b),c(M,"dblclick",b)),M}function l(b,x){return nt('.djs-segment-dragger[data-segment-idx="'+b+'"]',x)}function p(b,x){x.waypoints.forEach(function(S,M){var L=mf(b);Re(b,L),Qt(L,S.x,S.y)}),mf(b,"floating")}function f(b,x){for(var S=x.waypoints,M,L,A,H=1;H<S.length;H++)M=S[H-1],L=S[H],Ti(M,L)&&(A=A_(b,M,L),ae(A,{"data-segment-idx":H}),c(A,"mousemove",x))}function d(b){k(ys("."+C_,b),function(x){Ft(x)})}function h(b){k(ys("."+P_,b),function(x){Ft(x)})}function m(b){var x=u(b);return x||(x=u(b,!0),p(x,b),f(x,b)),x}function g(b){var x=u(b);x&&(h(x),d(x),f(x,b),p(x,b))}function R(b,x){var S=nt(".floating",b),M=x.point;S&&(Qt(S,M.x,M.y),He(S).add("positioned"))}function w(b,x,S){var M=l(x.index,b),L=S[x.index-1],A=S[x.index],H=x.point,V=sl(L,A),N=Ti(L,A),G,pe;M&&(G=o2(M),pe={x:H.x-V.x,y:H.y-V.y},N==="v"&&(pe={x:pe.y,y:pe.x}),Qt(G,pe.x,pe.y))}e.on("connection.changed",function(b){g(b.element)}),e.on("connection.remove",function(b){var x=u(b.element);x&&Ft(x)}),e.on("element.marker.update",function(b){var x=b.element,S;x.waypoints&&(S=m(x),b.add?He(S).add(b.marker):He(S).remove(b.marker))}),e.on("element.mousemove",function(b){var x=b.element,S=x.waypoints,M,L;if(S){if(M=u(x,!0),L=hf(t,S,b.originalEvent),!L)return;R(M,L),L.bendpoint||w(M,L,S)}}),e.on("element.mousedown",function(b){if(cr(b)){var x=b.originalEvent,S=b.element;if(S.waypoints)return s(x,S)}}),e.on("selection.changed",function(b){var x=b.newSelection,S=x[0];S&&S.waypoints&&m(S)}),e.on("element.hover",function(b){var x=b.element;x.waypoints&&m(x)}),e.on("element.out",function(b){var x=b.element;if(x.waypoints){var S=u(x);if(S){var M=nt(".floating",S);M&&He(M).remove("positioned")}}}),e.on("element.updateId",function(b){var x=b.element,S=b.newId;if(x.waypoints){var M=u(x);M&&ae(M,{"data-element-id":S})}}),this.addHandles=m,this.updateHandles=g,this.getBendpointsContainer=u,this.getSegmentDragger=l}T_.$inject=["eventBus","canvas","interactionEvents","bendpointMove","connectionSegmentMove"];function o2(e){return nt(".djs-visual",e)}var M_=Math.round,Ur="reconnectStart",Yr="reconnectEnd",$a="updateWaypoints";function yf(e,t,n,i,r,o){this._injector=e,this.start=function(a,s,c,u){var l=n.getGraphics(s),p=s.source,f=s.target,d=s.waypoints,h;!u&&c===0?h=Ur:!u&&c===d.length-1?h=Yr:h=$a;var m=h===$a?"connection.updateWaypoints":"connection.reconnect",g=r.allowed(m,{connection:s,source:p,target:f});if(g===!1&&(g=r.allowed(m,{connection:s,source:f,target:p})),g!==!1)return i.init(a,"bendpoint.move",{data:{connection:s,connectionGfx:l,context:{allowed:g,bendpointIndex:c,connection:s,source:p,target:f,insert:u,type:h}}})},t.on("bendpoint.move.hover",function(a){var s=a.context,c=s.connection,u=c.source,l=c.target,p=a.hover,f=s.type;s.hover=p;var d;if(p){var h=f===$a?"connection.updateWaypoints":"connection.reconnect";if(d=s.allowed=r.allowed(h,{connection:c,source:f===Ur?p:u,target:f===Yr?p:l}),d){s.source=f===Ur?p:u,s.target=f===Yr?p:l;return}d===!1&&(d=s.allowed=r.allowed(h,{connection:c,source:f===Yr?p:l,target:f===Ur?p:u})),d&&(s.source=f===Yr?p:l,s.target=f===Ur?p:u)}}),t.on(["bendpoint.move.out","bendpoint.move.cleanup"],function(a){var s=a.context,c=s.type;s.hover=null,s.source=null,s.target=null,c!==$a&&(s.allowed=!1)}),t.on("bendpoint.move.end",function(a){var s=a.context,c=s.allowed,u=s.bendpointIndex,l=s.connection,p=s.insert,f=l.waypoints.slice(),d=s.source,h=s.target,m=s.type,g=s.hints||{},R={x:M_(a.x),y:M_(a.y)};if(!c)return!1;m===$a?(p?f.splice(u,0,R):f[u]=R,g.bendpointMove={insert:p,bendpointIndex:u},f=this.cropWaypoints(l,f),o.updateWaypoints(l,w1(f),g)):(m===Ur?(g.docking="source",tu(s)&&(g.docking="target",g.newWaypoints=f.reverse())):m===Yr&&(g.docking="target",tu(s)&&(g.docking="source",g.newWaypoints=f.reverse())),o.reconnect(l,d,h,R,g))},this)}yf.$inject=["injector","eventBus","canvas","dragging","rules","modeling"],yf.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 tu(e){var t=e.hover,n=e.source,i=e.target,r=e.type;if(r===Ur)return t&&i&&t===i&&n!==i;if(r===Yr)return t&&n&&t===n&&n!==i}var a2="reconnectStart",s2="reconnectEnd",k_="updateWaypoints",ja="connect-ok",nu="connect-not-ok",O_="connect-hover",D_="djs-updating",L_="djs-dragging",I_=1100;function N_(e,t,n,i){this._injector=t;var r=t.get("connectionPreview",!1);n.on("bendpoint.move.start",function(o){var a=o.context,s=a.bendpointIndex,c=a.connection,u=a.insert,l=c.waypoints,p=l.slice();a.waypoints=l,u&&p.splice(s,0,{x:o.x,y:o.y}),c.waypoints=p;var f=a.draggerGfx=mf(i.getLayer("overlays"));He(f).add("djs-dragging"),i.addMarker(c,L_),i.addMarker(c,D_)}),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,O_),u===k_)return;s?(i.removeMarker(c,nu),i.addMarker(c,ja)):s===!1&&(i.removeMarker(c,ja),i.addMarker(c,nu))}}),n.on(["bendpoint.move.out","bendpoint.move.cleanup"],I_,function(o){var a=o.context,s=a.hover,c=a.target;s&&(i.removeMarker(s,O_),i.removeMarker(s,c?ja:nu))}),n.on("bendpoint.move.move",function(o){var a=o.context,s=a.allowed,c=a.bendpointIndex,u=a.draggerGfx,l=a.hover,p=a.type,f=a.connection,d=f.source,h=f.target,m=f.waypoints.slice(),g={x:o.x,y:o.y},R=a.hints||{},w={};r&&(R.connectionStart&&(w.connectionStart=R.connectionStart),R.connectionEnd&&(w.connectionEnd=R.connectionEnd),p===a2?tu(a)?(w.connectionEnd=w.connectionEnd||g,w.source=h,w.target=l||d,m=m.reverse()):(w.connectionStart=w.connectionStart||g,w.source=l||d,w.target=h):p===s2?tu(a)?(w.connectionStart=w.connectionStart||g,w.source=l||h,w.target=d,m=m.reverse()):(w.connectionEnd=w.connectionEnd||g,w.source=d,w.target=l||h):(w.noCropping=!0,w.noLayout=!0,m[c]=g),p===k_&&(m=e.cropWaypoints(f,m)),w.waypoints=m,r.drawPreview(a,s,w)),Qt(u,o.x,o.y)},this),n.on(["bendpoint.move.end","bendpoint.move.cancel"],I_,function(o){var a=o.context,s=a.connection,c=a.draggerGfx,u=a.hover,l=a.target,p=a.waypoints;s.waypoints=p,Ft(c),i.removeMarker(s,D_),i.removeMarker(s,L_),u&&(i.removeMarker(u,ja),i.removeMarker(u,l?ja:nu)),r&&r.cleanUp(a)})}N_.$inject=["bendpointMove","injector","eventBus","canvas"];var B_="connect-hover",$_="djs-updating";function j_(e,t,n){return vf(e,t,e[t]+n)}function vf(e,t,n){return{x:t==="x"?n:e.x,y:t==="y"?n:e.y}}function c2(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 vf(t,i,s)}function F_(e){return e==="x"?"y":"x"}function H_(e,t,n){var i,r;return e.original?e.original:(i=be(t),r=F_(n),vf(e,r,i[r]))}function z_(e,t,n,i,r,o){var a=e.get("connectionDocking",!1);this.start=function(p,f,d){var h,m=n.getGraphics(f),g=d-1,R=d,w=f.waypoints,b=w[g],x=w[R],S=hf(n,w,p),M,L,A;if(M=Ti(b,x),!!M)return L=M==="v"?"x":"y",g===0&&(b=H_(b,f.source,L)),R===w.length-1&&(x=H_(x,f.target,L)),S?A=S.point:A={x:(b.x+x.x)/2,y:(b.y+x.y)/2},h={connection:f,segmentStartIndex:g,segmentEndIndex:R,segmentStart:b,segmentEnd:x,axis:L,dragPosition:A},i.init(p,A,"connectionSegment.move",{cursor:L==="x"?"resize-ew":"resize-ns",data:{connection:f,connectionGfx:m,context:h}})};function s(p,f){if(!a)return f;var d=p.waypoints,h;return p.waypoints=f,h=a.getCroppedWaypoints(p),p.waypoints=d,h}function c(p){r.update("connection",p.connection,p.connectionGfx)}function u(p,f,d){var h=p.newWaypoints,m=p.segmentStartIndex+f,g=h[m],R=p.segmentEndIndex+f,w=h[R],b=F_(p.axis),x=c2(d,g,w,b);Qt(p.draggerGfx,x.x,x.y)}function l(p,f){var d=0,h=p.filter(function(m,g){return al(p[g-1],p[g+1],m)?(d=g<=f?d-1:d,!1):!0});return{waypoints:h,segmentOffset:d}}t.on("connectionSegment.move.start",function(p){var f=p.context,d=p.connection,h=n.getLayer("overlays");f.originalWaypoints=d.waypoints.slice(),f.draggerGfx=A_(h,f.segmentStart,f.segmentEnd),He(f.draggerGfx).add("djs-dragging"),n.addMarker(d,$_)}),t.on("connectionSegment.move.move",function(p){var f=p.context,d=f.connection,h=f.segmentStartIndex,m=f.segmentEndIndex,g=f.segmentStart,R=f.segmentEnd,w=f.axis,b=f.originalWaypoints.slice(),x=j_(g,w,p["d"+w]),S=j_(R,w,p["d"+w]),M=b.length,L=0;b[h]=x,b[m]=S;var A,H;h<2&&(A=Zt(d.source,x),h===1?A==="intersect"&&(b.shift(),b[0]=x,L--):A!=="intersect"&&(b.unshift(g),L++)),m>M-3&&(H=Zt(d.target,S),m===M-2?H==="intersect"&&(b.pop(),b[b.length-1]=S):H!=="intersect"&&b.push(R)),f.newWaypoints=d.waypoints=s(d,b),u(f,L,p),f.newSegmentStartIndex=h+L,c(p)}),t.on("connectionSegment.move.hover",function(p){p.context.hover=p.hover,n.addMarker(p.hover,B_)}),t.on(["connectionSegment.move.out","connectionSegment.move.cleanup"],function(p){var f=p.context.hover;f&&n.removeMarker(f,B_)}),t.on("connectionSegment.move.cleanup",function(p){var f=p.context,d=f.connection;f.draggerGfx&&Ft(f.draggerGfx),n.removeMarker(d,$_)}),t.on(["connectionSegment.move.cancel","connectionSegment.move.end"],function(p){var f=p.context,d=f.connection;d.waypoints=f.originalWaypoints,c(p)}),t.on("connectionSegment.move.end",function(p){var f=p.context,d=f.connection,h=f.newWaypoints,m=f.newSegmentStartIndex;h=h.map(function(S){return{original:S.original,x:Math.round(S.x),y:Math.round(S.y)}});var g=l(h,m),R=g.waypoints,w=s(d,R),b=g.segmentOffset,x={segmentMove:{segmentStartIndex:f.segmentStartIndex,newSegmentStartIndex:m+b}};o.updateWaypoints(d,w,x)})}z_.$inject=["injector","eventBus","canvas","dragging","graphicsFactory","modeling"];var u2=Math.abs,V_=Math.round;function l2(e,t,n){n=n===void 0?10:n;var i,r;for(i=0;i<t.length;i++)if(r=t[i],u2(r-e)<=n)return r}function G_(e){return{x:e.x,y:e.y}}function W_(e){return{x:e.x+e.width,y:e.y+e.height}}function Qn(e,t){return!e||isNaN(e.x)||isNaN(e.y)?t:{x:V_(e.x+e.width/2),y:V_(e.y+e.height/2)}}function No(e,t){var n=e.snapped;return n?typeof t=="string"?n[t]:n.x&&n.y:!1}function Mt(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 U_(e){return e.children||[]}var p2=Math.abs,Y_=Math.round,_f=10;function q_(e){function t(o,a){if(_e(o)){for(var s=o.length;s--;)if(p2(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 n2(a,o);if(o.width)return{x:Y_(o.width/2+o.x),y:Y_(o.height/2+o.y)}}function i(o){var a=o.context,s=a.snapPoints,c=a.connection,u=c.waypoints,l=a.segmentStart,p=a.segmentStartIndex,f=a.segmentEnd,d=a.segmentEndIndex,h=a.axis;if(s)return s;var m=[u[p-1],l,f,u[d+1]];return p<2&&m.unshift(n(c.source,o)),d>u.length-3&&m.unshift(n(c.target,o)),a.snapPoints=s={horizontal:[],vertical:[]},k(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 p=s-u,f=c-l;D(o,{dx:o.dx-p,dy:o.dy-f,x:u,y:l}),(p||a.vertical.indexOf(s)!==-1)&&Mt(o,"x",u),(f||a.horizontal.indexOf(c)!==-1)&&Mt(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:[]},k(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);!rt(s)||!c||!c.x||!c.y||(Mt(o,"x",c.x),Mt(o,"y",c.y))}),e.on(["bendpoint.move.move","bendpoint.move.end"],1500,function(o){var a=o.context,s=r(a),c=a.hover,u=c&&n(c,o),l=o.x,p=o.y,f,d;if(s){f=t(u?s.vertical.concat([u.x]):s.vertical,l),d=t(u?s.horizontal.concat([u.y]):s.horizontal,p);var h=l-f,m=p-d;D(o,{dx:o.dx-h,dy:o.dy-m,x:o.x-h,y:o.y-m}),(h||s.vertical.indexOf(l)!==-1)&&Mt(o,"x",f),(m||s.horizontal.indexOf(p)!==-1)&&Mt(o,"y",d)}})}q_.$inject=["eventBus"];const f2={__depends__:[Ii,yi],__init__:["bendpoints","bendpointSnapping","bendpointMovePreview"],bendpoints:["type",T_],bendpointMove:["type",yf],bendpointMovePreview:["type",N_],connectionSegmentMove:["type",z_],bendpointSnapping:["type",q_]};function K_(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),!Zr(l)){if(l!==!1){s.source=c,s.target=u;return}l=s.canExecute=o(c,u),!Zr(l)&&l!==!1&&(s.source=u,s.target=c)}}),e.on(["connect.out","connect.cleanup"],function(a){var s=a.context;s.hover=null,s.source=null,s.target=null,s.canExecute=!1}),e.on("connect.end",function(a){var s=a.context,c=s.canExecute,u=s.connectionStart,l={x:a.x,y:a.y},p=s.source,f=s.target;if(!c)return!1;var d=null,h={connectionStart:bf(s)?l:u,connectionEnd:bf(s)?u:l};Vt(c)&&(d=c),s.connection=n.connect(p,f,d,h)}),this.start=function(a,s,c,u){Vt(c)||(u=c,c=be(s)),t.init(a,"connect",{autoActivate:u,data:{shape:s,context:{start:s,connectionStart:c}}})}}K_.$inject=["eventBus","dragging","modeling","rules"];function bf(e){var t=e.hover,n=e.source,i=e.target;return t&&n&&t===n&&n!==i}var d2=1100,h2=900,X_="connect-ok",Z_="connect-not-ok";function Q_(e,t,n){var i=e.get("connectionPreview",!1);i&&t.on("connect.move",function(r){var o=r.context,a=o.canExecute,s=o.hover,c=o.source,u=o.start,l=o.startPosition,p=o.target,f=o.connectionStart||l,d=o.connectionEnd||{x:r.x,y:r.y},h=f,m=d;bf(o)&&(h=d,m=f),i.drawPreview(o,a,{source:c||u,target:p||s,connectionStart:h,connectionEnd:m})}),t.on("connect.hover",h2,function(r){var o=r.context,a=r.hover,s=o.canExecute;s!==null&&n.addMarker(a,s?X_:Z_)}),t.on(["connect.out","connect.cleanup"],d2,function(r){var o=r.hover;o&&(n.removeMarker(o,X_),n.removeMarker(o,Z_))}),i&&t.on("connect.cleanup",function(r){i.cleanUp(r.context)})}Q_.$inject=["injector","eventBus","canvas"];const xf={__depends__:[Kn,yi,Ii],__init__:["connectPreview"],connect:["type",K_],connectPreview:["type",Q_]};var m2="djs-dragger";function zi(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)}zi.$inject=["injector","canvas","graphicsFactory","elementFactory"],zi.prototype.drawPreview=function(e,t,n){n=n||{};var i=e.connectionPreviewGfx,r=e.getConnection,o=n.source,a=n.target,s=n.waypoints,c=n.connectionStart,u=n.connectionEnd,l=n.noLayout,p=n.noCropping,f=n.noNoop,d,h=this;if(i||(i=e.connectionPreviewGfx=this.createConnectionPreviewGfx()),vs(i),r||(r=e.getConnection=g2(function(m,g,R){return h.getConnection(m,g,R)})),t&&(d=r(t,o,a)),!d){!f&&this.drawNoopPreview(i,n);return}d.waypoints=s||[],this._layouter&&!l&&(d.waypoints=this._layouter.layoutConnection(d,{source:o,target:a,connectionStart:c,connectionEnd:u,waypoints:n.waypoints||d.waypoints})),(!d.waypoints||!d.waypoints.length)&&(d.waypoints=[o?be(o):c,a?be(a):u]),this._connectionDocking&&(o||a)&&!p&&(d.waypoints=this._connectionDocking.getCroppedWaypoints(d,o,a)),this._graphicsFactory.drawConnection(i,d,{stroke:"var(--element-dragger-color)"})},zi.prototype.drawNoopPreview=function(e,t){var n=t.source,i=t.target,r=t.connectionStart||be(n),o=t.connectionEnd||be(i),a=this.cropWaypoints(r,o,n,i),s=this.createNoopConnection(a[0],a[1]);Re(e,s)},zi.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&&Jo(o,s,!0)||e,t=i&&Jo(a,s,!1)||t,[e,t]},zi.prototype.cleanUp=function(e){e&&e.connectionPreviewGfx&&Ft(e.connectionPreviewGfx)},zi.prototype.getConnection=function(e){var t=y2(e);return this._elementFactory.createConnection(t)},zi.prototype.createConnectionPreviewGfx=function(){var e=he("g");return ae(e,{pointerEvents:"none"}),He(e).add(m2),Re(this._canvas.getActiveLayer(),e),e},zi.prototype.createNoopConnection=function(e,t){return Ko([e,t],{stroke:"#333",strokeDasharray:[1],strokeWidth:2,"pointer-events":"none"})};function g2(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 y2(e){return Vt(e)?e:{}}const v2={__init__:["connectionPreview"],connectionPreview:["type",zi]},iu="complex-preview";class J_{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(iu);n.filter(s=>!_2(s)).forEach(s=>{let c;rt(s)?(c=this._graphicsFactory._createContainer("connection",he("g")),this._graphicsFactory.drawConnection(Ir(c),s)):(c=this._graphicsFactory._createContainer("shape",he("g")),this._graphicsFactory.drawShape(Ir(c),s),Qt(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);rt(s)?Qt(u,c.x,c.y):Qt(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",he("g"));this._graphicsFactory.drawShape(Ir(u),s,{width:c.width,height:c.height}),Qt(u,c.x,c.y),this._previewSupport.addDragger(s,a,u)})}cleanUp(){vs(this._canvas.getLayer(iu)),this._markers.forEach(([t,n])=>this._canvas.removeMarker(t,n)),this._markers=[]}show(){this._canvas.showLayer(iu)}hide(){this._canvas.hideLayer(iu)}}J_.$inject=["canvas","graphicsFactory","previewSupport"];function _2(e){return e.hidden}const b2={__depends__:[Co],__init__:["complexPreview"],complexPreview:["type",J_]},eb=Math.round;function ru(e,t,n,i,r,o){this._complexPreview=e,this._connectionDocking=t,this._elementFactory=n,this._eventBus=i,this._layouter=r,this._rules=o}ru.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(D({type:t},n)),l=a.fire("autoPlace",{source:e,shape:u});if(!l)return;D(u,{x:l.x-eb(u.width/2),y:l.y-eb(u.height/2)});const p=c.allowed("connection.create",{source:e,target:u,hints:{targetParent:e.parent}});let f=null;p&&(f=o.createConnection(p),f.waypoints=s.layoutConnection(f,{source:e,target:u}),f.waypoints=r.getCroppedWaypoints(f,e,u)),i.create({created:[u,f].filter(d=>!Zr(d))})},ru.prototype.cleanUp=function(){this._complexPreview.cleanUp()},ru.$inject=["complexPreview","connectionDocking","elementFactory","eventBus","layouter","rules"];const x2={__depends__:[kc,b2,Up],__init__:["appendPreview"],appendPreview:["type",ru]};var tb=Math.min,nb=Math.max;function wf(e){e.preventDefault()}function Fa(e){e.stopPropagation()}function w2(e){return e.nodeType===Node.TEXT_NODE}function E2(e){return[].slice.call(e)}function oi(e){this.container=e.container,this.parent=ut('<div class="djs-direct-editing-parent"><div class="djs-direct-editing-content" contenteditable="true"></div></div>'),this.content=nt("[contenteditable]",this.parent),this.keyHandler=e.keyHandler||function(){},this.resizeHandler=e.resizeHandler||function(){},this.focusoutHandler=e.focusoutHandler||function(){},this.autoResize=vn(this.autoResize,this),this.handlePaste=vn(this.handlePaste,this)}oi.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=ii(t,["width","height","maxWidth","maxHeight","minWidth","minHeight","left","top","backgroundColor","position","overflow","border","wordWrap","textAlign","outline","transform"]);D(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=ii(t,["fontFamily","fontSize","fontWeight","lineHeight","padding","paddingTop","paddingRight","paddingBottom","paddingLeft"]);return D(a.style,{boxSizing:"border-box",width:"100%",outline:"none",wordWrap:"break-word"},u),i.centerVertically&&D(a.style,{position:"absolute",top:"50%",transform:"translate(0, -50%)"},u),a.innerText=n,Se.bind(a,"keydown",this.keyHandler),Se.bind(a,"mousedown",Fa),Se.bind(a,"paste",r.handlePaste),Se.bind(a,"focusout",this.focusoutHandler),i.autoResize&&Se.bind(a,"input",this.autoResize),i.resizable&&this.resizable(t),s.appendChild(o),this.setSelection(a.lastChild,a.lastChild&&a.lastChild.length),o},oi.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)}},oi.prototype.insertText=function(e){e=S2(e);var t=document.execCommand("insertText",!1,e);t||this._insertTextIE(e)},oi.prototype._insertTextIE=function(e){var t=this.getSelection(),n=t.startContainer,i=t.endContainer,r=t.startOffset,o=t.endOffset,a=t.commonAncestorContainer,s=E2(a.childNodes),c,u;if(w2(a)){var l=n.textContent;n.textContent=l.substring(0,r)+e+l.substring(o),c=n,u=r+e.length}else if(n===this.content&&i===this.content){var p=document.createTextNode(e);this.content.insertBefore(p,s[r]),c=p,u=p.textContent.length}else{var f=s.indexOf(n),d=s.indexOf(i);s.forEach(function(h,m){m===f?h.textContent=n.textContent.substring(0,r)+e+i.textContent.substring(o):m>f&&m<=d&&pi(h)}),c=n,u=r+e.length}c&&u!==void 0&&setTimeout(function(){self.setSelection(c,u)})},oi.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})}},oi.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=ut('<div class="djs-direct-editing-resize-handle"></div>');var s,c,u,l,p=function(h){wf(h),Fa(h),s=h.clientX,c=h.clientY;var m=t.getBoundingClientRect();u=m.width,l=m.height,Se.bind(document,"mousemove",f),Se.bind(document,"mouseup",d)},f=function(h){wf(h),Fa(h);var m=tb(nb(u+h.clientX-s,i),o),g=tb(nb(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){wf(h),Fa(h),Se.unbind(document,"mousemove",f,!1),Se.unbind(document,"mouseup",d,!1)};Se.bind(n,"mousedown",p)}D(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)},oi.prototype.destroy=function(){var e=this.parent,t=this.content,n=this.resizeHandle;t.innerText="",e.removeAttribute("style"),t.removeAttribute("style"),Se.unbind(t,"keydown",this.keyHandler),Se.unbind(t,"mousedown",Fa),Se.unbind(t,"input",this.autoResize),Se.unbind(t,"paste",this.handlePaste),Se.unbind(t,"focusout",this.focusoutHandler),n&&(n.removeAttribute("style"),pi(n)),pi(e)},oi.prototype.getValue=function(){return this.content.innerText.trim()},oi.prototype.getSelection=function(){var e=window.getSelection(),t=e.getRangeAt(0);return t},oi.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 S2(e){return e.replace(/\r\n|\r|\n/g,`
|
|
316
|
-
`)}function Ln(e,t){this._eventBus=e,this._canvas=t,this._providers=[],this._textbox=new oi({container:t.getContainer(),keyHandler:vn(this._handleKey,this),resizeHandler:vn(this._handleResize,this),focusoutHandler:vn(this._handleFocusout,this)}),e.on(["diagram.clear","diagram.destroy"],()=>this._cleanup())}Ln.$inject=["eventBus","canvas"],Ln.prototype.registerProvider=function(e){this._providers.push(e)},Ln.prototype.isActive=function(e){return!!(this._active&&(!e||this._active.element===e))},Ln.prototype.cancel=function(){this._active&&(this._fire("cancel"),this.close())},Ln.prototype._fire=function(e,t){this._eventBus.fire("directEditing."+e,t||{active:this._active})},Ln.prototype.close=function(){this._fire("deactivate"),this._cleanup(),this._canvas.restoreFocus&&this._canvas.restoreFocus()},Ln.prototype._cleanup=function(){this._active&&(this._textbox.destroy(),this._active=null,this.resizable=void 0)},Ln.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()}},Ln.prototype.getValue=function(){return this._textbox.getValue()},Ln.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()},Ln.prototype._handleResize=function(e){this._fire("resize",e)},Ln.prototype._handleFocusout=function(e){e.relatedTarget&&this._textbox.parent.contains(e.relatedTarget)||this.complete()},Ln.prototype.activate=function(e){if(this.isActive()&&this.cancel(),this._eventBus.fire("directEditing.activate.allowed",{element:e})===!1)return!1;var t,n=ct(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 ib={__depends__:[sc],__init__:["directEditing"],directEditing:["type",Ln]};function R2(e){return function(t){var n=t.target,i=X(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===je(e);return!o||!a||!s||!c}}const C2={task:{label:"Task",className:"bpmn-icon-task",target:{type:"bpmn:Task"}},"user-task":{label:"User task",className:"bpmn-icon-user",target:{type:"bpmn:UserTask"}},"service-task":{label:"Service task",className:"bpmn-icon-service",target:{type:"bpmn:ServiceTask"}},"send-task":{label:"Send task",className:"bpmn-icon-send",target:{type:"bpmn:SendTask"}},"receive-task":{label:"Receive task",className:"bpmn-icon-receive",target:{type:"bpmn:ReceiveTask"}},"manual-task":{label:"Manual task",className:"bpmn-icon-manual",target:{type:"bpmn:ManualTask"}},"rule-task":{label:"Business rule task",className:"bpmn-icon-business-rule",target:{type:"bpmn:BusinessRuleTask"}},"script-task":{label:"Script task",className:"bpmn-icon-script",target:{type:"bpmn:ScriptTask"}},"call-activity":{label:"Call activity",className:"bpmn-icon-call-activity",target:{type:"bpmn:CallActivity"}},transaction:{label:"Transaction",className:"bpmn-icon-transaction",target:{type:"bpmn:Transaction",isExpanded:!0}},"event-subprocess":{label:"Event sub-process",className:"bpmn-icon-event-subprocess-expanded",target:{type:"bpmn:SubProcess",triggeredByEvent:!0,isExpanded:!0}},"collapsed-subprocess":{label:"Sub-process (collapsed)",className:"bpmn-icon-subprocess-collapsed",target:{type:"bpmn:SubProcess",isExpanded:!1}},"expanded-subprocess":{label:"Sub-process (expanded)",className:"bpmn-icon-subprocess-expanded",target:{type:"bpmn:SubProcess",isExpanded:!0}},"collapsed-ad-hoc-subprocess":{label:"Ad-hoc sub-process (collapsed)",className:"bpmn-icon-subprocess-collapsed",target:{type:"bpmn:AdHocSubProcess",isExpanded:!1}},"expanded-ad-hoc-subprocess":{label:"Ad-hoc sub-process (expanded)",className:"bpmn-icon-subprocess-expanded",target:{type:"bpmn:AdHocSubProcess",isExpanded:!0}},"exclusive-gateway":{label:"Exclusive gateway",className:"bpmn-icon-gateway-xor",target:{type:"bpmn:ExclusiveGateway"}},"parallel-gateway":{label:"Parallel gateway",className:"bpmn-icon-gateway-parallel",target:{type:"bpmn:ParallelGateway"}},"inclusive-gateway":{label:"Inclusive gateway",className:"bpmn-icon-gateway-or",target:{type:"bpmn:InclusiveGateway"}},"complex-gateway":{label:"Complex gateway",className:"bpmn-icon-gateway-complex",target:{type:"bpmn:ComplexGateway"}},"event-based-gateway":{label:"Event-based gateway",className:"bpmn-icon-gateway-eventbased",target:{type:"bpmn:EventBasedGateway",instantiate:!1,eventGatewayType:"Exclusive"}},"data-store-reference":{label:"Data store reference",className:"bpmn-icon-data-store",target:{type:"bpmn:DataStoreReference"}},"data-object-reference":{label:"Data object reference",className:"bpmn-icon-data-object",target:{type:"bpmn:DataObjectReference"}},"expanded-pool":{label:"Expanded pool/participant",className:"bpmn-icon-participant",target:{type:"bpmn:Participant",isExpanded:!0}},"collapsed-pool":{label:"Empty pool/participant",className:"bpmn-icon-lane",target:{type:"bpmn:Participant",isExpanded:!1}},"none-start-event":{label:"Start event",className:"bpmn-icon-start-event-none",target:{type:"bpmn:StartEvent"}},"none-intermediate-throwing":{label:"Intermediate throw event",className:"bpmn-icon-intermediate-event-none",target:{type:"bpmn:IntermediateThrowEvent"}},"none-boundary-event":{label:"Boundary event",className:"bpmn-icon-intermediate-event-none",target:{type:"bpmn:BoundaryEvent"}},"none-end-event":{label:"End event",className:"bpmn-icon-end-event-none",target:{type:"bpmn:EndEvent"}},"message-start":{label:"Message start event",className:"bpmn-icon-start-event-message",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:MessageEventDefinition",isInterrupting:!0}},"timer-start":{label:"Timer start event",className:"bpmn-icon-start-event-timer",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:TimerEventDefinition",isInterrupting:!0}},"conditional-start":{label:"Conditional start event",className:"bpmn-icon-start-event-condition",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",isInterrupting:!0}},"signal-start":{label:"Signal start event",className:"bpmn-icon-start-event-signal",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:SignalEventDefinition",isInterrupting:!0}},"error-start":{label:"Error start event",className:"bpmn-icon-start-event-error",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ErrorEventDefinition",isInterrupting:!0}},"escalation-start":{label:"Escalation start event",className:"bpmn-icon-start-event-escalation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",isInterrupting:!0}},"compensation-start":{label:"Compensation start event",className:"bpmn-icon-start-event-compensation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:CompensateEventDefinition",isInterrupting:!0}},"non-interrupting-message-start":{label:"Message start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-message",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:MessageEventDefinition",isInterrupting:!1}},"non-interrupting-timer-start":{label:"Timer start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-timer",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:TimerEventDefinition",isInterrupting:!1}},"non-interrupting-conditional-start":{label:"Conditional start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-condition",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",isInterrupting:!1}},"non-interrupting-signal-start":{label:"Signal start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-signal",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:SignalEventDefinition",isInterrupting:!1}},"non-interrupting-escalation-start":{label:"Escalation start event (non-interrupting)",className:"bpmn-icon-start-event-non-interrupting-escalation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",isInterrupting:!1}},"message-intermediate-catch":{label:"Message intermediate catch event",className:"bpmn-icon-intermediate-event-catch-message",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},"message-intermediate-throw":{label:"Message intermediate throw event",className:"bpmn-icon-intermediate-event-throw-message",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},"timer-intermediate-catch":{label:"Timer intermediate catch event",className:"bpmn-icon-intermediate-event-catch-timer",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:TimerEventDefinition"}},"escalation-intermediate-throw":{label:"Escalation intermediate throw event",className:"bpmn-icon-intermediate-event-throw-escalation",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},"conditional-intermediate-catch":{label:"Conditional intermediate catch event",className:"bpmn-icon-intermediate-event-catch-condition",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition"}},"link-intermediate-catch":{label:"Link intermediate catch event",className:"bpmn-icon-intermediate-event-catch-link",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:LinkEventDefinition",eventDefinitionAttrs:{name:""}}},"link-intermediate-throw":{label:"Link intermediate throw event",className:"bpmn-icon-intermediate-event-throw-link",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:LinkEventDefinition",eventDefinitionAttrs:{name:""}}},"compensation-intermediate-throw":{label:"Compensation intermediate throw event",className:"bpmn-icon-intermediate-event-throw-compensation",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},"signal-intermediate-catch":{label:"Signal intermediate catch event",className:"bpmn-icon-intermediate-event-catch-signal",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},"signal-intermediate-throw":{label:"Signal intermediate throw event",className:"bpmn-icon-intermediate-event-throw-signal",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},"message-boundary":{label:"Message boundary event",className:"bpmn-icon-intermediate-event-catch-message",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:MessageEventDefinition",cancelActivity:!0}},"timer-boundary":{label:"Timer boundary event",className:"bpmn-icon-intermediate-event-catch-timer",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:TimerEventDefinition",cancelActivity:!0}},"escalation-boundary":{label:"Escalation boundary event",className:"bpmn-icon-intermediate-event-catch-escalation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",cancelActivity:!0}},"conditional-boundary":{label:"Conditional boundary event",className:"bpmn-icon-intermediate-event-catch-condition",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",cancelActivity:!0}},"error-boundary":{label:"Error boundary event",className:"bpmn-icon-intermediate-event-catch-error",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ErrorEventDefinition",cancelActivity:!0}},"cancel-boundary":{label:"Cancel boundary event",className:"bpmn-icon-intermediate-event-catch-cancel",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:CancelEventDefinition",cancelActivity:!0}},"signal-boundary":{label:"Signal boundary event",className:"bpmn-icon-intermediate-event-catch-signal",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:SignalEventDefinition",cancelActivity:!0}},"compensation-boundary":{label:"Compensation boundary event",className:"bpmn-icon-intermediate-event-catch-compensation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:CompensateEventDefinition",cancelActivity:!0}},"non-interrupting-message-boundary":{label:"Message boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-message",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:MessageEventDefinition",cancelActivity:!1}},"non-interrupting-timer-boundary":{label:"Timer boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-timer",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:TimerEventDefinition",cancelActivity:!1}},"non-interrupting-escalation-boundary":{label:"Escalation boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-escalation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",cancelActivity:!1}},"non-interrupting-conditional-boundary":{label:"Conditional boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-condition",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",cancelActivity:!1}},"non-interrupting-signal-boundary":{label:"Signal boundary event (non-interrupting)",className:"bpmn-icon-intermediate-event-catch-non-interrupting-signal",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:SignalEventDefinition",cancelActivity:!1}},"message-end":{label:"Message end event",className:"bpmn-icon-end-event-message",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},"escalation-end":{label:"Escalation end event",className:"bpmn-icon-end-event-escalation",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},"error-end":{label:"Error end event",className:"bpmn-icon-end-event-error",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:ErrorEventDefinition"}},"cancel-end":{label:"Cancel end event",className:"bpmn-icon-end-event-cancel",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:CancelEventDefinition"}},"compensation-end":{label:"Compensation end event",className:"bpmn-icon-end-event-compensation",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},"signal-end":{label:"Signal end event",className:"bpmn-icon-end-event-signal",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},"terminate-end":{label:"Terminate end event",className:"bpmn-icon-end-event-terminate",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:TerminateEventDefinition"}}};function q(e,t={}){var n=C2[e];if(!n)throw new Error("unknown popup entry <"+e+">");return{...n,actionName:"replace-with-"+e,...t}}var P2=[q("none-start-event",{actionName:"replace-with-none-start"}),q("none-intermediate-throwing"),q("none-end-event",{actionName:"replace-with-none-end"}),q("message-start"),q("timer-start"),q("conditional-start"),q("signal-start")],A2=[q("none-start-event",{actionName:"replace-with-none-start"}),q("none-intermediate-throwing"),q("none-end-event",{actionName:"replace-with-none-end"})],T2=[q("none-start-event",{actionName:"replace-with-none-start"}),q("none-intermediate-throwing",{actionName:"replace-with-none-intermediate-throw"}),q("none-end-event",{actionName:"replace-with-none-end"}),q("message-intermediate-catch"),q("message-intermediate-throw"),q("timer-intermediate-catch"),q("escalation-intermediate-throw"),q("conditional-intermediate-catch"),q("link-intermediate-catch"),q("link-intermediate-throw"),q("compensation-intermediate-throw"),q("signal-intermediate-catch"),q("signal-intermediate-throw")],M2=[q("none-start-event",{actionName:"replace-with-none-start"}),q("none-intermediate-throwing",{actionName:"replace-with-none-intermediate-throw"}),q("none-end-event",{actionName:"replace-with-none-end"}),q("message-end"),q("escalation-end"),q("error-end"),q("cancel-end"),q("compensation-end"),q("signal-end"),q("terminate-end")],k2=[q("exclusive-gateway"),q("parallel-gateway"),q("inclusive-gateway"),q("complex-gateway"),q("event-based-gateway")],O2=[q("transaction"),q("event-subprocess"),q("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess",label:"Ad-hoc sub-process"}),q("collapsed-subprocess")],D2=[q("expanded-subprocess",{actionName:"replace-with-subprocess",label:"Sub-process"}),q("transaction"),q("event-subprocess"),q("collapsed-ad-hoc-subprocess")],rb=[q("transaction"),q("expanded-subprocess",{actionName:"replace-with-subprocess",label:"Sub-process"}),q("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess",label:"Ad-hoc sub-process"}),q("event-subprocess")],L2=rb,ob=[q("task"),q("user-task"),q("service-task"),q("send-task"),q("receive-task"),q("manual-task"),q("rule-task"),q("script-task"),q("call-activity"),q("collapsed-subprocess"),q("expanded-subprocess"),q("collapsed-ad-hoc-subprocess"),q("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess"})],I2=[q("data-store-reference")],N2=[q("data-object-reference")],B2=[q("message-boundary"),q("timer-boundary"),q("escalation-boundary"),q("conditional-boundary"),q("error-boundary"),q("cancel-boundary"),q("signal-boundary"),q("compensation-boundary"),q("non-interrupting-message-boundary"),q("non-interrupting-timer-boundary"),q("non-interrupting-escalation-boundary"),q("non-interrupting-conditional-boundary"),q("non-interrupting-signal-boundary")],$2=[q("message-start"),q("timer-start"),q("conditional-start"),q("signal-start"),q("error-start"),q("escalation-start"),q("compensation-start"),q("non-interrupting-message-start"),q("non-interrupting-timer-start"),q("non-interrupting-conditional-start"),q("non-interrupting-signal-start"),q("non-interrupting-escalation-start")],j2=[{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"}],F2=[q("expanded-pool"),q("collapsed-pool",{label:function(e){var t="Empty pool/participant";return e.children&&e.children.length&&(t+=" (removes content)"),t}})],H2={"bpmn:MessageEventDefinition":[q("message-start"),q("message-intermediate-catch"),q("message-intermediate-throw"),q("message-end")],"bpmn:TimerEventDefinition":[q("timer-start"),q("timer-intermediate-catch")],"bpmn:ConditionalEventDefinition":[q("conditional-start"),q("conditional-intermediate-catch")],"bpmn:SignalEventDefinition":[q("signal-start"),q("signal-intermediate-catch"),q("signal-intermediate-throw"),q("signal-end")],"bpmn:ErrorEventDefinition":[q("error-start"),q("error-end")],"bpmn:EscalationEventDefinition":[q("escalation-start"),q("escalation-intermediate-throw"),q("escalation-end")],"bpmn:CompensateEventDefinition":[q("compensation-start"),q("compensation-intermediate-throw"),q("compensation-end")]};const ab={"start-event-non-interrupting":`
|
|
315
|
+
</svg>`},QM=900;function Lo(e,t,n,i){e.registerProvider(QM,this),this._contextPad=e,this._popupMenu=t,this._translate=n,this._canvas=i}Lo.$inject=["contextPad","popupMenu","translate","canvas"],Lo.prototype.getMultiElementContextPadEntries=function(e){var t={};return this._isAllowed(e)&&L(t,this._getEntries(e)),t},Lo.prototype._isAllowed=function(e){return!this._popupMenu.isEmpty(e,"align-elements")},Lo.prototype._getEntries=function(){var e=this;return{"align-elements":{group:"align-elements",title:e._translate("Align elements"),html:`<div class="entry">${A_.align}</div>`,action:{click:function(t,n){var i=e._getMenuPosition(n);L(i,{cursor:{x:t.x,y:t.y}}),e._popupMenu.open(n,"align-elements",i)}}}}},Lo.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 JM=["left","center","right","top","middle","bottom"];function Na(e,t,n,i){this._alignElements=t,this._translate=n,this._popupMenu=e,this._rules=i,e.registerProvider("align-elements",this)}Na.$inject=["popupMenu","alignElements","translate","rules"],Na.prototype.getPopupMenuEntries=function(e){var t={};return this._isAllowed(e)&&L(t,this._getEntries(e)),t},Na.prototype._isAllowed=function(e){return this._rules.allowed("elements.align",{elements:e})},Na.prototype._getEntries=function(e){var t=this._alignElements,n=this._translate,i=this._popupMenu,r={};return k(JM,function(o){r["align-elements-"+o]={group:"align",title:n("Align elements "+o),className:"bjs-align-elements-menu-entry",imageHtml:A_[o],action:function(){t.trigger(e,o),i.close()}}}),r};function Qc(e){qn.call(this,e)}Qc.$inject=["eventBus"],ae(Qc,qn),Qc.prototype.init=function(){this.addRule("elements.align",function(e){var t=e.elements,n=Ie(t,function(i){return!(i.waypoints||i.host||i.labelTarget)});return n=xs(n),n.length<2?!1:n})};const e2={__depends__:[pM,jv,mf],__init__:["alignElementsContextPadProvider","alignElementsMenuProvider","bpmnAlignElements"],alignElementsContextPadProvider:["type",Lo],alignElementsMenuProvider:["type",Na],bpmnAlignElements:["type",Qc]};function Hi(e,t,n,i){X.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=Ru(Qr(a.closure.topLevel)),c=a.hints,u=c?c.autoResize:!0;if(u!==!1){var l=Jr(s,function(f){return f.parent.id});k(l,function(f,p){be(u)&&(f=f.filter(function(d){return ct(u,eo({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)})}Hi.$inject=["eventBus","elementRegistry","modeling","rules"],ae(Hi,X),Hi.prototype._getOptimalBounds=function(e,t){var n=this.getOffset(t),i=this.getPadding(t),r=ye(At(e)),o=ye(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),Ss(L({},o,a))},Hi.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(t2(i,t)){var r=n2(ii(t,["x","y","width","height"]),i);this.resize(t,i,{autoResize:r});var o=t.parent;o&&this._expand([t],o)}}},Hi.prototype.getOffset=function(e){return{top:60,bottom:60,left:100,right:100}},Hi.prototype.getPadding=function(e){return{top:2,bottom:2,left:15,right:15}},Hi.prototype.resize=function(e,t,n){this._modeling.resizeShape(e,t,null,n)};function t2(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}function n2(e,t){var n="";return e=ye(e),t=ye(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 Jc(e){e.invoke(Hi,this)}Jc.$inject=["injector"],ae(Jc,Hi),Jc.prototype.resize=function(e,t,n){v(e,"bpmn:Participant")?this._modeling.resizeLane(e,t,null,n):this._modeling.resizeShape(e,t,null,n)};function Ba(e){qn.call(this,e);var t=this;this.addRule("element.autoResize",function(n){return t.canResize(n.elements,n.target)})}Ba.$inject=["eventBus"],ae(Ba,qn),Ba.prototype.canResize=function(e,t){return!1};function eu(e,t){Ba.call(this,e),this._modeling=t}ae(eu,Ba),eu.$inject=["eventBus","modeling"],eu.prototype.canResize=function(e,t){if(v(t.di,"bpmndi:BPMNPlane")||!v(t,"bpmn:Participant")&&!v(t,"bpmn:Lane")&&!v(t,"bpmn:SubProcess"))return!1;var n=!0;return k(e,function(i){if(v(i,"bpmn:Lane")||De(i)){n=!1;return}}),n};const i2={__init__:["bpmnAutoResize","bpmnAutoResizeProvider"],bpmnAutoResize:["type",Jc],bpmnAutoResizeProvider:["type",eu]};function Io(e,t,n){this._canvas=n,this._opts=L({scrollThresholdIn:[20,20,20,20],scrollThresholdOut:[0,0,0,0],scrollRepeatTimeout:15,scrollStep:10},e);var i=this;t.on("drag.move",function(r){var o=i._toBorderPoint(r);i.startScroll(o)}),t.on(["drag.cleanup"],function(){i.stopScroll()})}Io.$inject=["config.autoScroll","eventBus","canvas"],Io.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++)r2(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 r2(e,t,n){return t<e&&e<n}Io.prototype.stopScroll=function(){clearTimeout(this._scrolling)},Io.prototype.setOptions=function(e){this._opts=L({},this._opts,e)},Io.prototype._toBorderPoint=function(e){var t=this._canvas._container.getBoundingClientRect(),n=$r(e.originalEvent);return{x:n.x-t.left,y:n.y-t.top}};const o2={__depends__:[Ii],__init__:["autoScroll"],autoScroll:["type",Io]};var T_="djs-bendpoint",M_="djs-segment-dragger";function a2(e,t){var n=$r(t),i=e._container.getBoundingClientRect(),r;r={x:i.left,y:i.top};var o=e.viewbox();return{x:o.x+(n.x-r.x)/o.scale,y:o.y+(n.y-r.y)/o.scale}}function gf(e,t,n){var i=a2(e,n),r=Ll(t,i);return r}function yf(e,t){var n=me("g");He(n).add(T_),Pe(e,n);var i=me("circle");se(i,{cx:0,cy:0,r:4}),He(i).add("djs-visual"),Pe(n,i);var r=me("circle");return se(r,{cx:0,cy:0,r:10}),He(r).add("djs-hit"),Pe(n,r),t&&He(n).add(t),n}function s2(e,t,n,i){var r=me("g");Pe(e,r);var o=18,a=6,s=11,c=u2(t,n,i),u=a+s,l=me("rect");se(l,{x:-o/2,y:-a/2,width:o,height:a}),He(l).add("djs-visual"),Pe(r,l);var f=me("rect");return se(f,{x:-c/2,y:-u/2,width:c,height:u}),He(f).add("djs-hit"),Pe(r,f),im(r,i==="v"?90:0),r}function k_(e,t,n){var i=me("g"),r=ul(t,n),o=Ti(t,n);return Pe(e,i),s2(i,t,n,o),He(i).add(M_),He(i).add(o==="h"?"horizontal":"vertical"),Jt(i,r.x,r.y),i}function vf(e){return Math.abs(Math.round(e*2/3))}function c2(e,t){var n=l2(e,t);return Fl(e,n)}function u2(e,t,n){var i=t.x-e.x,r=t.y-e.y;return vf(n==="h"?i:r)}function l2(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=Vm(e,[a,s]);c<i&&(i=c,r=o)}return[n[r],n[r+1]]}function D_(e,t,n,i,r){function o(b,x,S){var M=b.index,N=b.point,T,H,V,$,G,fe;return M<=0||b.bendpoint?!1:(T=x[M-1],H=x[M],V=ul(T,H),$=Ti(T,H),G=Math.abs(N.x-V.x),fe=Math.abs(N.y-V.y),$&&G<=S&&fe<=S)}function a(b,x){var S=b.waypoints,M,N,T,H;return x.index<=0||x.bendpoint||(M={start:S[x.index-1],end:S[x.index]},N=Ti(M.start,M.end),!N)?null:(N==="h"?T=M.end.x-M.start.x:T=M.end.y-M.start.y,H=vf(T)/2,H)}function s(b,x){var S=x.waypoints,M=gf(t,S,b),N;if(M){N=a(x,M);var T;if(o(M,S,N)?T=r.start(b,x,M.index):T=i.start(b,x,M.index,!M.bendpoint),T!==!1)return!0}}function c(b,x,S){Ce.bind(b,x,function(M){n.triggerMouseEvent(x,M,S),M.stopPropagation()})}function u(b,x){var S=t.getLayer("overlays"),M=nt('.djs-bendpoints[data-element-id="'+ka(b.id)+'"]',S);return!M&&x&&(M=me("g"),se(M,{"data-element-id":b.id}),He(M).add("djs-bendpoints"),Pe(S,M),c(M,"mousedown",b),c(M,"click",b),c(M,"dblclick",b)),M}function l(b,x){return nt('.djs-segment-dragger[data-segment-idx="'+b+'"]',x)}function f(b,x){x.waypoints.forEach(function(S,M){var N=yf(b);Pe(b,N),Jt(N,S.x,S.y)}),yf(b,"floating")}function p(b,x){for(var S=x.waypoints,M,N,T,H=1;H<S.length;H++)M=S[H-1],N=S[H],Ti(M,N)&&(T=k_(b,M,N),se(T,{"data-segment-idx":H}),c(T,"mousemove",x))}function d(b){k(ys("."+T_,b),function(x){Ht(x)})}function h(b){k(ys("."+M_,b),function(x){Ht(x)})}function m(b){var x=u(b);return x||(x=u(b,!0),f(x,b),p(x,b)),x}function g(b){var x=u(b);x&&(h(x),d(x),p(x,b),f(x,b))}function R(b,x){var S=nt(".floating",b),M=x.point;S&&(Jt(S,M.x,M.y),He(S).add("positioned"))}function w(b,x,S){var M=l(x.index,b),N=S[x.index-1],T=S[x.index],H=x.point,V=ul(N,T),$=Ti(N,T),G,fe;M&&(G=p2(M),fe={x:H.x-V.x,y:H.y-V.y},$==="v"&&(fe={x:fe.y,y:fe.x}),Jt(G,fe.x,fe.y))}e.on("connection.changed",function(b){g(b.element)}),e.on("connection.remove",function(b){var x=u(b.element);x&&Ht(x)}),e.on("element.marker.update",function(b){var x=b.element,S;x.waypoints&&(S=m(x),b.add?He(S).add(b.marker):He(S).remove(b.marker))}),e.on("element.mousemove",function(b){var x=b.element,S=x.waypoints,M,N;if(S){if(M=u(x,!0),N=gf(t,S,b.originalEvent),!N)return;R(M,N),N.bendpoint||w(M,N,S)}}),e.on("element.mousedown",function(b){if(cr(b)){var x=b.originalEvent,S=b.element;if(S.waypoints)return s(x,S)}}),e.on("selection.changed",function(b){var x=b.newSelection,S=x[0];S&&S.waypoints&&m(S)}),e.on("element.hover",function(b){var x=b.element;x.waypoints&&m(x)}),e.on("element.out",function(b){var x=b.element;if(x.waypoints){var S=u(x);if(S){var M=nt(".floating",S);M&&He(M).remove("positioned")}}}),e.on("element.updateId",function(b){var x=b.element,S=b.newId;if(x.waypoints){var M=u(x);M&&se(M,{"data-element-id":S})}}),this.addHandles=m,this.updateHandles=g,this.getBendpointsContainer=u,this.getSegmentDragger=l}D_.$inject=["eventBus","canvas","interactionEvents","bendpointMove","connectionSegmentMove"];function p2(e){return nt(".djs-visual",e)}var O_=Math.round,Ur="reconnectStart",Yr="reconnectEnd",$a="updateWaypoints";function _f(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=Ur:!u&&c===d.length-1?h=Yr:h=$a;var m=h===$a?"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===$a?"connection.updateWaypoints":"connection.reconnect";if(d=s.allowed=r.allowed(h,{connection:c,source:p===Ur?f:u,target:p===Yr?f:l}),d){s.source=p===Ur?f:u,s.target=p===Yr?f:l;return}d===!1&&(d=s.allowed=r.allowed(h,{connection:c,source:p===Yr?f:l,target:p===Ur?f:u})),d&&(s.source=p===Yr?f:l,s.target=p===Ur?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!==$a&&(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||{},R={x:O_(a.x),y:O_(a.y)};if(!c)return!1;m===$a?(f?p.splice(u,0,R):p[u]=R,g.bendpointMove={insert:f,bendpointIndex:u},p=this.cropWaypoints(l,p),o.updateWaypoints(l,A1(p),g)):(m===Ur?(g.docking="source",tu(s)&&(g.docking="target",g.newWaypoints=p.reverse())):m===Yr&&(g.docking="target",tu(s)&&(g.docking="source",g.newWaypoints=p.reverse())),o.reconnect(l,d,h,R,g))},this)}_f.$inject=["injector","eventBus","canvas","dragging","rules","modeling"],_f.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 tu(e){var t=e.hover,n=e.source,i=e.target,r=e.type;if(r===Ur)return t&&i&&t===i&&n!==i;if(r===Yr)return t&&n&&t===n&&n!==i}var f2="reconnectStart",d2="reconnectEnd",L_="updateWaypoints",ja="connect-ok",nu="connect-not-ok",I_="connect-hover",N_="djs-updating",B_="djs-dragging",$_=1100;function j_(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=yf(i.getLayer("overlays"));He(p).add("djs-dragging"),i.addMarker(c,B_),i.addMarker(c,N_)}),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,I_),u===L_)return;s?(i.removeMarker(c,nu),i.addMarker(c,ja)):s===!1&&(i.removeMarker(c,ja),i.addMarker(c,nu))}}),n.on(["bendpoint.move.out","bendpoint.move.cleanup"],$_,function(o){var a=o.context,s=a.hover,c=a.target;s&&(i.removeMarker(s,I_),i.removeMarker(s,c?ja:nu))}),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},R=a.hints||{},w={};r&&(R.connectionStart&&(w.connectionStart=R.connectionStart),R.connectionEnd&&(w.connectionEnd=R.connectionEnd),f===f2?tu(a)?(w.connectionEnd=w.connectionEnd||g,w.source=h,w.target=l||d,m=m.reverse()):(w.connectionStart=w.connectionStart||g,w.source=l||d,w.target=h):f===d2?tu(a)?(w.connectionStart=w.connectionStart||g,w.source=l||h,w.target=d,m=m.reverse()):(w.connectionEnd=w.connectionEnd||g,w.source=d,w.target=l||h):(w.noCropping=!0,w.noLayout=!0,m[c]=g),f===L_&&(m=e.cropWaypoints(p,m)),w.waypoints=m,r.drawPreview(a,s,w)),Jt(u,o.x,o.y)},this),n.on(["bendpoint.move.end","bendpoint.move.cancel"],$_,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,N_),i.removeMarker(s,B_),u&&(i.removeMarker(u,ja),i.removeMarker(u,l?ja:nu)),r&&r.cleanUp(a)})}j_.$inject=["bendpointMove","injector","eventBus","canvas"];var F_="connect-hover",H_="djs-updating";function z_(e,t,n){return bf(e,t,e[t]+n)}function bf(e,t,n){return{x:t==="x"?n:e.x,y:t==="y"?n:e.y}}function h2(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 bf(t,i,s)}function V_(e){return e==="x"?"y":"x"}function G_(e,t,n){var i,r;return e.original?e.original:(i=xe(t),r=V_(n),bf(e,r,i[r]))}function W_(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,R=d,w=p.waypoints,b=w[g],x=w[R],S=gf(n,w,f),M,N,T;if(M=Ti(b,x),!!M)return N=M==="v"?"x":"y",g===0&&(b=G_(b,p.source,N)),R===w.length-1&&(x=G_(x,p.target,N)),S?T=S.point:T={x:(b.x+x.x)/2,y:(b.y+x.y)/2},h={connection:p,segmentStartIndex:g,segmentEndIndex:R,segmentStart:b,segmentEnd:x,axis:N,dragPosition:T},i.init(f,T,"connectionSegment.move",{cursor:N==="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],R=f.segmentEndIndex+p,w=h[R],b=V_(f.axis),x=h2(d,g,w,b);Jt(f.draggerGfx,x.x,x.y)}function l(f,p){var d=0,h=f.filter(function(m,g){return cl(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=k_(h,p.segmentStart,p.segmentEnd),He(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,R=p.segmentEnd,w=p.axis,b=p.originalWaypoints.slice(),x=z_(g,w,f["d"+w]),S=z_(R,w,f["d"+w]),M=b.length,N=0;b[h]=x,b[m]=S;var T,H;h<2&&(T=Qt(d.source,x),h===1?T==="intersect"&&(b.shift(),b[0]=x,N--):T!=="intersect"&&(b.unshift(g),N++)),m>M-3&&(H=Qt(d.target,S),m===M-2?H==="intersect"&&(b.pop(),b[b.length-1]=S):H!=="intersect"&&b.push(R)),p.newWaypoints=d.waypoints=s(d,b),u(p,N,f),p.newSegmentStartIndex=h+N,c(f)}),t.on("connectionSegment.move.hover",function(f){f.context.hover=f.hover,n.addMarker(f.hover,F_)}),t.on(["connectionSegment.move.out","connectionSegment.move.cleanup"],function(f){var p=f.context.hover;p&&n.removeMarker(p,F_)}),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(S){return{original:S.original,x:Math.round(S.x),y:Math.round(S.y)}});var g=l(h,m),R=g.waypoints,w=s(d,R),b=g.segmentOffset,x={segmentMove:{segmentStartIndex:p.segmentStartIndex,newSegmentStartIndex:m+b}};o.updateWaypoints(d,w,x)})}W_.$inject=["injector","eventBus","canvas","dragging","graphicsFactory","modeling"];var m2=Math.abs,U_=Math.round;function g2(e,t,n){n=n===void 0?10:n;var i,r;for(i=0;i<t.length;i++)if(r=t[i],m2(r-e)<=n)return r}function Y_(e){return{x:e.x,y:e.y}}function q_(e){return{x:e.x+e.width,y:e.y+e.height}}function Qn(e,t){return!e||isNaN(e.x)||isNaN(e.y)?t:{x:U_(e.x+e.width/2),y:U_(e.y+e.height/2)}}function No(e,t){var n=e.snapped;return n?typeof t=="string"?n[t]:n.x&&n.y:!1}function Dt(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 K_(e){return e.children||[]}var y2=Math.abs,X_=Math.round,xf=10;function Z_(e){function t(o,a){if(be(o)){for(var s=o.length;s--;)if(y2(o[s]-a)<=xf)return o[s]}else{o=+o;var c=a%o;if(c<xf)return a-c;if(c>o-xf)return a-c+o}return a}function n(o,a){if(o.waypoints)return c2(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,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:[]},k(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;L(o,{dx:o.dx-f,dy:o.dy-p,x:u,y:l}),(f||a.vertical.indexOf(s)!==-1)&&Dt(o,"x",u),(p||a.horizontal.indexOf(c)!==-1)&&Dt(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:[]},k(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);!rt(s)||!c||!c.x||!c.y||(Dt(o,"x",c.x),Dt(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;L(o,{dx:o.dx-h,dy:o.dy-m,x:o.x-h,y:o.y-m}),(h||s.vertical.indexOf(l)!==-1)&&Dt(o,"x",p),(m||s.horizontal.indexOf(f)!==-1)&&Dt(o,"y",d)}})}Z_.$inject=["eventBus"];const v2={__depends__:[Ii,yi],__init__:["bendpoints","bendpointSnapping","bendpointMovePreview"],bendpoints:["type",D_],bendpointMove:["type",_f],bendpointMovePreview:["type",j_],connectionSegmentMove:["type",W_],bendpointSnapping:["type",Z_]};function Q_(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),!Zr(l)){if(l!==!1){s.source=c,s.target=u;return}l=s.canExecute=o(c,u),!Zr(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:wf(s)?l:u,connectionEnd:wf(s)?u:l};Gt(c)&&(d=c),s.connection=n.connect(f,p,d,h)}),this.start=function(a,s,c,u){Gt(c)||(u=c,c=xe(s)),t.init(a,"connect",{autoActivate:u,data:{shape:s,context:{start:s,connectionStart:c}}})}}Q_.$inject=["eventBus","dragging","modeling","rules"];function wf(e){var t=e.hover,n=e.source,i=e.target;return t&&n&&t===n&&n!==i}var _2=1100,b2=900,J_="connect-ok",eb="connect-not-ok";function tb(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;wf(o)&&(h=d,m=p),i.drawPreview(o,a,{source:c||u,target:f||s,connectionStart:h,connectionEnd:m})}),t.on("connect.hover",b2,function(r){var o=r.context,a=r.hover,s=o.canExecute;s!==null&&n.addMarker(a,s?J_:eb)}),t.on(["connect.out","connect.cleanup"],_2,function(r){var o=r.hover;o&&(n.removeMarker(o,J_),n.removeMarker(o,eb))}),i&&t.on("connect.cleanup",function(r){i.cleanUp(r.context)})}tb.$inject=["injector","eventBus","canvas"];const Ef={__depends__:[Kn,yi,Ii],__init__:["connectPreview"],connect:["type",Q_],connectPreview:["type",tb]};var x2="djs-dragger";function zi(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)}zi.$inject=["injector","canvas","graphicsFactory","elementFactory"],zi.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()),vs(i),r||(r=e.getConnection=w2(function(m,g,R){return h.getConnection(m,g,R)})),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?xe(o):c,a?xe(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)"})},zi.prototype.drawNoopPreview=function(e,t){var n=t.source,i=t.target,r=t.connectionStart||xe(n),o=t.connectionEnd||xe(i),a=this.cropWaypoints(r,o,n,i),s=this.createNoopConnection(a[0],a[1]);Pe(e,s)},zi.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&&Jo(o,s,!0)||e,t=i&&Jo(a,s,!1)||t,[e,t]},zi.prototype.cleanUp=function(e){e&&e.connectionPreviewGfx&&Ht(e.connectionPreviewGfx)},zi.prototype.getConnection=function(e){var t=E2(e);return this._elementFactory.createConnection(t)},zi.prototype.createConnectionPreviewGfx=function(){var e=me("g");return se(e,{pointerEvents:"none"}),He(e).add(x2),Pe(this._canvas.getActiveLayer(),e),e},zi.prototype.createNoopConnection=function(e,t){return Ko([e,t],{stroke:"#333",strokeDasharray:[1],strokeWidth:2,"pointer-events":"none"})};function w2(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 E2(e){return Gt(e)?e:{}}const S2={__init__:["connectionPreview"],connectionPreview:["type",zi]},iu="complex-preview";class nb{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(iu);n.filter(s=>!R2(s)).forEach(s=>{let c;rt(s)?(c=this._graphicsFactory._createContainer("connection",me("g")),this._graphicsFactory.drawConnection(Ir(c),s)):(c=this._graphicsFactory._createContainer("shape",me("g")),this._graphicsFactory.drawShape(Ir(c),s),Jt(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);rt(s)?Jt(u,c.x,c.y):Jt(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",me("g"));this._graphicsFactory.drawShape(Ir(u),s,{width:c.width,height:c.height}),Jt(u,c.x,c.y),this._previewSupport.addDragger(s,a,u)})}cleanUp(){vs(this._canvas.getLayer(iu)),this._markers.forEach(([t,n])=>this._canvas.removeMarker(t,n)),this._markers=[]}show(){this._canvas.showLayer(iu)}hide(){this._canvas.hideLayer(iu)}}nb.$inject=["canvas","graphicsFactory","previewSupport"];function R2(e){return e.hidden}const C2={__depends__:[Co],__init__:["complexPreview"],complexPreview:["type",nb]},ib=Math.round;function ru(e,t,n,i,r,o){this._complexPreview=e,this._connectionDocking=t,this._elementFactory=n,this._eventBus=i,this._layouter=r,this._rules=o}ru.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(L({type:t},n)),l=a.fire("autoPlace",{source:e,shape:u});if(!l)return;L(u,{x:l.x-ib(u.width/2),y:l.y-ib(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=>!Zr(d))})},ru.prototype.cleanUp=function(){this._complexPreview.cleanUp()},ru.$inject=["complexPreview","connectionDocking","elementFactory","eventBus","layouter","rules"];const P2={__depends__:[kc,C2,qp],__init__:["appendPreview"],appendPreview:["type",ru]};var rb=Math.min,ob=Math.max;function Sf(e){e.preventDefault()}function Fa(e){e.stopPropagation()}function A2(e){return e.nodeType===Node.TEXT_NODE}function T2(e){return[].slice.call(e)}function oi(e){this.container=e.container,this.parent=ut('<div class="djs-direct-editing-parent"><div class="djs-direct-editing-content" contenteditable="true"></div></div>'),this.content=nt("[contenteditable]",this.parent),this.keyHandler=e.keyHandler||function(){},this.resizeHandler=e.resizeHandler||function(){},this.focusoutHandler=e.focusoutHandler||function(){},this.autoResize=_n(this.autoResize,this),this.handlePaste=_n(this.handlePaste,this)}oi.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=ii(t,["width","height","maxWidth","maxHeight","minWidth","minHeight","left","top","backgroundColor","position","overflow","border","wordWrap","textAlign","outline","transform"]);L(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=ii(t,["fontFamily","fontSize","fontWeight","lineHeight","padding","paddingTop","paddingRight","paddingBottom","paddingLeft"]);return L(a.style,{boxSizing:"border-box",width:"100%",outline:"none",wordWrap:"break-word"},u),i.centerVertically&&L(a.style,{position:"absolute",top:"50%",transform:"translate(0, -50%)"},u),a.innerText=n,Ce.bind(a,"keydown",this.keyHandler),Ce.bind(a,"mousedown",Fa),Ce.bind(a,"paste",r.handlePaste),Ce.bind(a,"focusout",this.focusoutHandler),i.autoResize&&Ce.bind(a,"input",this.autoResize),i.resizable&&this.resizable(t),s.appendChild(o),this.setSelection(a.lastChild,a.lastChild&&a.lastChild.length),o},oi.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)}},oi.prototype.insertText=function(e){e=M2(e);var t=document.execCommand("insertText",!1,e);t||this._insertTextIE(e)},oi.prototype._insertTextIE=function(e){var t=this.getSelection(),n=t.startContainer,i=t.endContainer,r=t.startOffset,o=t.endOffset,a=t.commonAncestorContainer,s=T2(a.childNodes),c,u;if(A2(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&&pi(h)}),c=n,u=r+e.length}c&&u!==void 0&&setTimeout(function(){self.setSelection(c,u)})},oi.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})}},oi.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=ut('<div class="djs-direct-editing-resize-handle"></div>');var s,c,u,l,f=function(h){Sf(h),Fa(h),s=h.clientX,c=h.clientY;var m=t.getBoundingClientRect();u=m.width,l=m.height,Ce.bind(document,"mousemove",p),Ce.bind(document,"mouseup",d)},p=function(h){Sf(h),Fa(h);var m=rb(ob(u+h.clientX-s,i),o),g=rb(ob(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){Sf(h),Fa(h),Ce.unbind(document,"mousemove",p,!1),Ce.unbind(document,"mouseup",d,!1)};Ce.bind(n,"mousedown",f)}L(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)},oi.prototype.destroy=function(){var e=this.parent,t=this.content,n=this.resizeHandle;t.innerText="",e.removeAttribute("style"),t.removeAttribute("style"),Ce.unbind(t,"keydown",this.keyHandler),Ce.unbind(t,"mousedown",Fa),Ce.unbind(t,"input",this.autoResize),Ce.unbind(t,"paste",this.handlePaste),Ce.unbind(t,"focusout",this.focusoutHandler),n&&(n.removeAttribute("style"),pi(n)),pi(e)},oi.prototype.getValue=function(){return this.content.innerText.trim()},oi.prototype.getSelection=function(){var e=window.getSelection(),t=e.getRangeAt(0);return t},oi.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 M2(e){return e.replace(/\r\n|\r|\n/g,`
|
|
316
|
+
`)}function On(e,t){this._eventBus=e,this._canvas=t,this._providers=[],this._textbox=new oi({container:t.getContainer(),keyHandler:_n(this._handleKey,this),resizeHandler:_n(this._handleResize,this),focusoutHandler:_n(this._handleFocusout,this)}),e.on(["diagram.clear","diagram.destroy"],()=>this._cleanup())}On.$inject=["eventBus","canvas"],On.prototype.registerProvider=function(e){this._providers.push(e)},On.prototype.isActive=function(e){return!!(this._active&&(!e||this._active.element===e))},On.prototype.cancel=function(){this._active&&(this._fire("cancel"),this.close())},On.prototype._fire=function(e,t){this._eventBus.fire("directEditing."+e,t||{active:this._active})},On.prototype.close=function(){this._fire("deactivate"),this._cleanup(),this._canvas.restoreFocus&&this._canvas.restoreFocus()},On.prototype._cleanup=function(){this._active&&(this._textbox.destroy(),this._active=null,this.resizable=void 0)},On.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()}},On.prototype.getValue=function(){return this._textbox.getValue()},On.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()},On.prototype._handleResize=function(e){this._fire("resize",e)},On.prototype._handleFocusout=function(e){e.relatedTarget&&this._textbox.parent.contains(e.relatedTarget)||this.complete()},On.prototype.activate=function(e){if(this.isActive()&&this.cancel(),this._eventBus.fire("directEditing.activate.allowed",{element:e})===!1)return!1;var t,n=ct(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 ab={__depends__:[sc],__init__:["directEditing"],directEditing:["type",On]};function k2(e){return function(t){var n=t.target,i=Z(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===Fe(e);return!o||!a||!s||!c}}const D2={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 K(e,t={}){var n=D2[e];if(!n)throw new Error("unknown popup entry <"+e+">");return{...n,actionName:"replace-with-"+e,...t}}var O2=[K("none-start-event",{actionName:"replace-with-none-start"}),K("none-intermediate-throwing"),K("none-end-event",{actionName:"replace-with-none-end"}),K("message-start"),K("timer-start"),K("conditional-start"),K("signal-start")],L2=[K("none-start-event",{actionName:"replace-with-none-start"}),K("none-intermediate-throwing"),K("none-end-event",{actionName:"replace-with-none-end"})],I2=[K("none-start-event",{actionName:"replace-with-none-start"}),K("none-intermediate-throwing",{actionName:"replace-with-none-intermediate-throw"}),K("none-end-event",{actionName:"replace-with-none-end"}),K("message-intermediate-catch"),K("message-intermediate-throw"),K("timer-intermediate-catch"),K("escalation-intermediate-throw"),K("conditional-intermediate-catch"),K("link-intermediate-catch"),K("link-intermediate-throw"),K("compensation-intermediate-throw"),K("signal-intermediate-catch"),K("signal-intermediate-throw")],N2=[K("none-start-event",{actionName:"replace-with-none-start"}),K("none-intermediate-throwing",{actionName:"replace-with-none-intermediate-throw"}),K("none-end-event",{actionName:"replace-with-none-end"}),K("message-end"),K("escalation-end"),K("error-end"),K("cancel-end"),K("compensation-end"),K("signal-end"),K("terminate-end")],B2=[K("exclusive-gateway"),K("parallel-gateway"),K("inclusive-gateway"),K("complex-gateway"),K("event-based-gateway")],$2=[K("transaction"),K("event-subprocess"),K("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess",label:"Ad-hoc sub-process"}),K("collapsed-subprocess")],j2=[K("expanded-subprocess",{actionName:"replace-with-subprocess",label:"Sub-process"}),K("transaction"),K("event-subprocess"),K("collapsed-ad-hoc-subprocess")],sb=[K("transaction"),K("expanded-subprocess",{actionName:"replace-with-subprocess",label:"Sub-process"}),K("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess",label:"Ad-hoc sub-process"}),K("event-subprocess")],F2=sb,cb=[K("task"),K("user-task"),K("service-task"),K("send-task"),K("receive-task"),K("manual-task"),K("rule-task"),K("script-task"),K("call-activity"),K("collapsed-subprocess"),K("expanded-subprocess"),K("collapsed-ad-hoc-subprocess"),K("expanded-ad-hoc-subprocess",{actionName:"replace-with-ad-hoc-subprocess"})],H2=[K("data-store-reference")],z2=[K("data-object-reference")],V2=[K("message-boundary"),K("timer-boundary"),K("escalation-boundary"),K("conditional-boundary"),K("error-boundary"),K("cancel-boundary"),K("signal-boundary"),K("compensation-boundary"),K("non-interrupting-message-boundary"),K("non-interrupting-timer-boundary"),K("non-interrupting-escalation-boundary"),K("non-interrupting-conditional-boundary"),K("non-interrupting-signal-boundary")],G2=[K("message-start"),K("timer-start"),K("conditional-start"),K("signal-start"),K("error-start"),K("escalation-start"),K("compensation-start"),K("non-interrupting-message-start"),K("non-interrupting-timer-start"),K("non-interrupting-conditional-start"),K("non-interrupting-signal-start"),K("non-interrupting-escalation-start")],W2=[{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"}],U2=[K("expanded-pool"),K("collapsed-pool",{label:function(e){var t="Empty pool/participant";return e.children&&e.children.length&&(t+=" (removes content)"),t}})],Y2={"bpmn:MessageEventDefinition":[K("message-start"),K("message-intermediate-catch"),K("message-intermediate-throw"),K("message-end")],"bpmn:TimerEventDefinition":[K("timer-start"),K("timer-intermediate-catch")],"bpmn:ConditionalEventDefinition":[K("conditional-start"),K("conditional-intermediate-catch")],"bpmn:SignalEventDefinition":[K("signal-start"),K("signal-intermediate-catch"),K("signal-intermediate-throw"),K("signal-end")],"bpmn:ErrorEventDefinition":[K("error-start"),K("error-end")],"bpmn:EscalationEventDefinition":[K("escalation-start"),K("escalation-intermediate-throw"),K("escalation-end")],"bpmn:CompensateEventDefinition":[K("compensation-start"),K("compensation-intermediate-throw"),K("compensation-end")]};const ub={"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 Jn(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()}Jn.$inject=["bpmnFactory","popupMenu","modeling","moddle","bpmnReplace","rules","translate","moddleCopy"],Jn.prototype._register=function(){this._popupMenu.registerProvider("bpmn-replace",this)},Jn.prototype.getPopupMenuEntries=function(e){var s;var t=e.businessObject,n=this._rules,i=[],r,o=[];if(_e(e)||!n.allowed("shape.replace",{element:e}))return{};var a=R2(e);return v(t,"bpmn:DataObjectReference")?this._createEntries(e,I2):v(t,"bpmn:DataStoreReference")&&!v(e.parent,"bpmn:Collaboration")?this._createEntries(e,N2):(v(t,"bpmn:Event")&&!v(t,"bpmn:BoundaryEvent")&&(r=(s=t.get("eventDefinitions")[0])==null?void 0:s.$type,i=H2[r]||[],!cn(t.$parent)&&v(t.$parent,"bpmn:SubProcess")&&(i=Le(i,function(c){return c.target.type!=="bpmn:StartEvent"}))),v(t,"bpmn:StartEvent")&&!v(t.$parent,"bpmn:SubProcess")?(o=Le(P2.concat(i),a),this._createEntries(e,o)):v(t,"bpmn:Participant")?(o=Le(F2,function(c){return je(e)!==c.target.isExpanded}),this._createEntries(e,o)):v(t,"bpmn:StartEvent")&&cn(t.$parent)?(o=Le($2.concat(i),function(c){var u=c.target,l=u.isInterrupting!==!1,p=t.isInterrupting===l;return a(c)||!a(c)&&!p}),this._createEntries(e,o)):v(t,"bpmn:StartEvent")&&!cn(t.$parent)&&v(t.$parent,"bpmn:SubProcess")?(o=Le(A2.concat(i),a),this._createEntries(e,o)):v(t,"bpmn:EndEvent")?(o=Le(M2.concat(i),function(c){var u=c.target;return u.eventDefinitionType=="bpmn:CancelEventDefinition"&&!v(t.$parent,"bpmn:Transaction")?!1:a(c)}),this._createEntries(e,o)):v(t,"bpmn:BoundaryEvent")?(o=Le(B2,function(c){var u=c.target;if(u.eventDefinitionType=="bpmn:CancelEventDefinition"&&!v(t.attachedToRef,"bpmn:Transaction"))return!1;var l=u.cancelActivity!==!1,p=t.cancelActivity==l;return a(c)||!a(c)&&!p}),this._createEntries(e,o)):v(t,"bpmn:IntermediateCatchEvent")||v(t,"bpmn:IntermediateThrowEvent")?(o=Le(T2.concat(i),a),this._createEntries(e,o)):v(t,"bpmn:Gateway")?(o=Le(k2,a),this._createEntries(e,o)):v(t,"bpmn:Transaction")?(o=Le(rb,a),this._createEntries(e,o)):cn(t)&&je(e)?(o=Le(L2,a),this._createEntries(e,o)):v(t,"bpmn:AdHocSubProcess")&&je(e)?(o=Le(D2,a),this._createEntries(e,o)):v(t,"bpmn:SubProcess")&&je(e)?(o=Le(O2,a),this._createEntries(e,o)):v(t,"bpmn:SubProcess")&&!je(e)?(o=Le(ob,function(c){var u=c.target.type===e.type,l=c.target.isExpanded===!0;return u===l}),this._createEntries(e,o)):v(t,"bpmn:SequenceFlow")?this._createSequenceFlowEntries(e,j2):v(t,"bpmn:FlowNode")?(o=Le(ob,a),this._createEntries(e,o)):{})},Jn.prototype.getPopupMenuHeaderEntries=function(e){var t={};return v(e,"bpmn:Activity")&&!cn(e)&&(t={...t,...this._getLoopCharacteristicsHeaderEntries(e)}),v(e,"bpmn:DataObjectReference")&&(t={...t,...this._getCollectionHeaderEntries(e)}),v(e,"bpmn:Participant")&&(t={...t,...this._getParticipantMultiplicityHeaderEntries(e)}),tg(e)&&(t={...t,...this._getNonInterruptingHeaderEntries(e)}),t},Jn.prototype._createEntries=function(e,t){var n={},i=this;return k(t,function(r){n[r.actionName]=i._createEntry(r,e)}),n},Jn.prototype._createSequenceFlowEntries=function(e,t){var n=X(e),i={},r=this._modeling,o=this._moddle,a=this;return k(t,function(s){switch(s.actionName){case"replace-with-default-flow":n.sourceRef.default!==n&&(v(n.sourceRef,"bpmn:ExclusiveGateway")||v(n.sourceRef,"bpmn:InclusiveGateway")||v(n.sourceRef,"bpmn:ComplexGateway")||v(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&&v(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:v(n.sourceRef,"bpmn:Activity")&&n.conditionExpression&&(i={...i,[s.actionName]:a._createEntry(s,e,function(){r.updateProperties(e,{conditionExpression:void 0})})}),(v(n.sourceRef,"bpmn:ExclusiveGateway")||v(n.sourceRef,"bpmn:InclusiveGateway")||v(n.sourceRef,"bpmn:ComplexGateway")||v(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},Jn.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}},Jn.prototype._getLoopCharacteristicsHeaderEntries=function(e){var t=this,n=this._translate;function i(u,l){if(l.active){t._modeling.updateProperties(e,{loopCharacteristics:void 0});return}var p=e.businessObject.get("loopCharacteristics");p&&v(p,l.options.loopCharacteristics)?t._modeling.updateModdleProperties(e,p,{isSequential:l.options.isSequential}):(p=t._moddle.create(l.options.loopCharacteristics,{isSequential:l.options.isSequential}),t._modeling.updateProperties(e,{loopCharacteristics:p}))}var r=X(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"}}}},Jn.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}}},Jn.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}}},Jn.prototype._getNonInterruptingHeaderEntries=function(e){const t=this._translate,n=X(e),i=this,r=ng(e),o=v(e,"bpmn:BoundaryEvent")?ab["intermediate-event-non-interrupting"]:ab["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 z2={__depends__:[df,wy,kc],__init__:["replaceMenuProvider"],replaceMenuProvider:["type",Jn]};function Ha(e,t,n,i,r,o,a,s,c,u,l,p,f){e=e||{},i.registerProvider(this),this._contextPad=i,this._modeling=r,this._elementFactory=o,this._connect=a,this._create=s,this._popupMenu=c,this._canvas=u,this._rules=l,this._translate=p,this._eventBus=n,this._appendPreview=f,e.autoPlace!==!1&&(this._autoPlace=t.get("autoPlace",!1)),n.on("create.end",250,function(d){var h=d.context,m=h.shape;if(!(!fa(d)||!i.isOpen(m))){var g=i.getEntries(m);g.replace&&g.replace.action.click(d,m)}}),n.on("contextPad.close",function(){f.cleanUp()})}Ha.$inject=["config.contextPad","injector","eventBus","contextPad","modeling","elementFactory","connect","create","popupMenu","canvas","rules","translate","appendPreview"],Ha.prototype.getMultiElementContextPadEntries=function(e){var t=this._modeling,n={};return this._isDeleteAllowed(e)&&D(n,{delete:{group:"edit",className:"bpmn-icon-trash",title:this._translate("Delete"),action:{click:function(i,r){t.removeElements(r.slice())}}}}),n},Ha.prototype._isDeleteAllowed=function(e){var t=this._rules.allowed("elements.delete",{elements:e});return _e(t)?Cr(e,n=>t.includes(n)):t},Ha.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])&&D(l,h()),l;var p=e.businessObject;function f(b,x){r.start(b,x)}function d(b,x){n.removeElements([x])}function h(){return{delete:{group:"edit",className:"bpmn-icon-trash",title:c("Delete"),action:{click:d}}}}function m(b){var x=5,S=t.getPad(b).html,M=S.getBoundingClientRect(),L={x:M.left,y:M.bottom+x};return L}function g(b,x,S,M){function L(V,N){var G=i.createShape(D({type:b},M));o.start(V,G,{source:N})}var A=s?function(V,N){var G=i.createShape(D({type:b},M));s.append(N,G)}:L,H=s?function(V,N){return u.create(N,b,M),()=>{u.cleanUp()}}:null;return{group:"model",className:x,title:S,action:{dragstart:L,click:A,hover:H}}}function R(b){return function(x,S){n.splitLane(S,b),t.open(S,!0)}}if(De(p,["bpmn:Lane","bpmn:Participant"])&&je(e)){var w=ar(e);D(l,{"lane-insert-above":{group:"lane-insert-above",className:"bpmn-icon-lane-insert-above",title:c("Add lane above"),action:{click:function(b,x){n.addLane(x,"top")}}}}),w.length<2&&((Wt(e)?e.height>=120:e.width>=120)&&D(l,{"lane-divide-two":{group:"lane-divide",className:"bpmn-icon-lane-divide-two",title:c("Divide into two lanes"),action:{click:R(2)}}}),(Wt(e)?e.height>=180:e.width>=180)&&D(l,{"lane-divide-three":{group:"lane-divide",className:"bpmn-icon-lane-divide-three",title:c("Divide into three lanes"),action:{click:R(3)}}})),D(l,{"lane-insert-below":{group:"lane-insert-below",className:"bpmn-icon-lane-insert-below",title:c("Add lane below"),action:{click:function(b,x){n.addLane(x,"bottom")}}}})}return v(p,"bpmn:FlowNode")&&(v(p,"bpmn:EventBasedGateway")?D(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"})}):sb(p,"bpmn:BoundaryEvent","bpmn:CompensateEventDefinition")?D(l,{"append.compensation-activity":g("bpmn:Task","bpmn-icon-task",c("Append compensation activity"),{isForCompensation:!0})}):!v(p,"bpmn:EndEvent")&&!p.isForCompensation&&!sb(p,"bpmn:IntermediateThrowEvent","bpmn:LinkEventDefinition")&&!cn(p)&&D(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")||D(l,{replace:{group:"edit",className:"bpmn-icon-screw-wrench",title:c("Change element"),action:{click:function(b,x){var S=D(m(x),{cursor:{x:b.x,y:b.y}});a.open(x,"bpmn-replace",S,{title:c("Change element"),width:"var(--bpmn-replace-popup-width, 300px)",search:!0})}}}}),v(p,"bpmn:SequenceFlow")&&D(l,{"append.text-annotation":g("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),v(p,"bpmn:MessageFlow")&&D(l,{"append.text-annotation":g("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),De(p,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference"])&&D(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:f,dragstart:f}}}),v(p,"bpmn:TextAnnotation")&&D(l,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect using association"),action:{click:f,dragstart:f}}}),De(p,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&D(l,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect using data input association"),action:{click:f,dragstart:f}}}),v(p,"bpmn:Group")&&D(l,{"append.text-annotation":g("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),this._isDeleteAllowed([e])&&D(l,h()),l};function sb(e,t,n){var i=e.$instanceOf(t),r=!1,o=e.eventDefinitions||[];return k(o,function(a){a.$type===n&&(r=!0)}),i&&r}const V2={__depends__:[x2,ib,Nv,Kn,xf,uc,z2],__init__:["contextPadProvider"],contextPadProvider:["type",Ha]};var G2={horizontal:["x","width"],vertical:["y","height"]},cb=5;function Vi(e,t){this._modeling=e,this._filters=[],this.registerFilter(function(n){var i=t.allowed("elements.distribute",{elements:n});return _e(i)?i:i?n:[]})}Vi.$inject=["modeling","rules"],Vi.prototype.registerFilter=function(e){if(typeof e!="function")throw new Error("the filter has to be a function");this._filters.push(e)},Vi.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},Vi.prototype._filterElements=function(e){var t=this._filters,n=this._axis,i=this._dimension,r=[].concat(e);return t.length?(k(t,function(o){r=o(r,n,i)}),r):e},Vi.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=ai(e,i);return k(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},Vi.prototype._setOrientation=function(e){var t=G2[e];this._axis=t[0],this._dimension=t[1]},Vi.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)},Vi.prototype._findRange=function(e){var t=e[this._axis],n=e[this._dimension];return{min:t+cb,max:t+n-cb}};const W2={__init__:["distributeElements"],distributeElements:["type",Vi]};function ou(e){qn.call(this,e)}ou.$inject=["eventBus"],oe(ou,qn),ou.prototype.init=function(){this.addRule("elements.distribute",function(e){var t=e.elements;return t=Le(t,function(n){var i=De(n,["bpmn:Association","bpmn:BoundaryEvent","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:Lane","bpmn:MessageFlow","bpmn:SequenceFlow","bpmn:TextAnnotation"]);return!(n.labelTarget||i)}),t=xs(t),t.length<3?!1:t})};var ub={horizontal:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 1800">
|
|
327
|
+
</svg>`};function Jn(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()}Jn.$inject=["bpmnFactory","popupMenu","modeling","moddle","bpmnReplace","rules","translate","moddleCopy"],Jn.prototype._register=function(){this._popupMenu.registerProvider("bpmn-replace",this)},Jn.prototype.getPopupMenuEntries=function(e){var s;var t=e.businessObject,n=this._rules,i=[],r,o=[];if(be(e)||!n.allowed("shape.replace",{element:e}))return{};var a=k2(e);return v(t,"bpmn:DataObjectReference")?this._createEntries(e,H2):v(t,"bpmn:DataStoreReference")&&!v(e.parent,"bpmn:Collaboration")?this._createEntries(e,z2):(v(t,"bpmn:Event")&&!v(t,"bpmn:BoundaryEvent")&&(r=(s=t.get("eventDefinitions")[0])==null?void 0:s.$type,i=Y2[r]||[],!un(t.$parent)&&v(t.$parent,"bpmn:SubProcess")&&(i=Ie(i,function(c){return c.target.type!=="bpmn:StartEvent"}))),v(t,"bpmn:StartEvent")&&!v(t.$parent,"bpmn:SubProcess")?(o=Ie(O2.concat(i),a),this._createEntries(e,o)):v(t,"bpmn:Participant")?(o=Ie(U2,function(c){return Fe(e)!==c.target.isExpanded}),this._createEntries(e,o)):v(t,"bpmn:StartEvent")&&un(t.$parent)?(o=Ie(G2.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)):v(t,"bpmn:StartEvent")&&!un(t.$parent)&&v(t.$parent,"bpmn:SubProcess")?(o=Ie(L2.concat(i),a),this._createEntries(e,o)):v(t,"bpmn:EndEvent")?(o=Ie(N2.concat(i),function(c){var u=c.target;return u.eventDefinitionType=="bpmn:CancelEventDefinition"&&!v(t.$parent,"bpmn:Transaction")?!1:a(c)}),this._createEntries(e,o)):v(t,"bpmn:BoundaryEvent")?(o=Ie(V2,function(c){var u=c.target;if(u.eventDefinitionType=="bpmn:CancelEventDefinition"&&!v(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)):v(t,"bpmn:IntermediateCatchEvent")||v(t,"bpmn:IntermediateThrowEvent")?(o=Ie(I2.concat(i),a),this._createEntries(e,o)):v(t,"bpmn:Gateway")?(o=Ie(B2,a),this._createEntries(e,o)):v(t,"bpmn:Transaction")?(o=Ie(sb,a),this._createEntries(e,o)):un(t)&&Fe(e)?(o=Ie(F2,a),this._createEntries(e,o)):v(t,"bpmn:AdHocSubProcess")&&Fe(e)?(o=Ie(j2,a),this._createEntries(e,o)):v(t,"bpmn:SubProcess")&&Fe(e)?(o=Ie($2,a),this._createEntries(e,o)):v(t,"bpmn:SubProcess")&&!Fe(e)?(o=Ie(cb,function(c){var u=c.target.type===e.type,l=c.target.isExpanded===!0;return u===l}),this._createEntries(e,o)):v(t,"bpmn:SequenceFlow")?this._createSequenceFlowEntries(e,W2):v(t,"bpmn:FlowNode")?(o=Ie(cb,a),this._createEntries(e,o)):{})},Jn.prototype.getPopupMenuHeaderEntries=function(e){var t={};return v(e,"bpmn:Activity")&&!un(e)&&(t={...t,...this._getLoopCharacteristicsHeaderEntries(e)}),v(e,"bpmn:DataObjectReference")&&(t={...t,...this._getCollectionHeaderEntries(e)}),v(e,"bpmn:Participant")&&(t={...t,...this._getParticipantMultiplicityHeaderEntries(e)}),rg(e)&&(t={...t,...this._getNonInterruptingHeaderEntries(e)}),t},Jn.prototype._createEntries=function(e,t){var n={},i=this;return k(t,function(r){n[r.actionName]=i._createEntry(r,e)}),n},Jn.prototype._createSequenceFlowEntries=function(e,t){var n=Z(e),i={},r=this._modeling,o=this._moddle,a=this;return k(t,function(s){switch(s.actionName){case"replace-with-default-flow":n.sourceRef.default!==n&&(v(n.sourceRef,"bpmn:ExclusiveGateway")||v(n.sourceRef,"bpmn:InclusiveGateway")||v(n.sourceRef,"bpmn:ComplexGateway")||v(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&&v(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:v(n.sourceRef,"bpmn:Activity")&&n.conditionExpression&&(i={...i,[s.actionName]:a._createEntry(s,e,function(){r.updateProperties(e,{conditionExpression:void 0})})}),(v(n.sourceRef,"bpmn:ExclusiveGateway")||v(n.sourceRef,"bpmn:InclusiveGateway")||v(n.sourceRef,"bpmn:ComplexGateway")||v(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},Jn.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}},Jn.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&&v(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=Z(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"}}}},Jn.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}}},Jn.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}}},Jn.prototype._getNonInterruptingHeaderEntries=function(e){const t=this._translate,n=Z(e),i=this,r=og(e),o=v(e,"bpmn:BoundaryEvent")?ub["intermediate-event-non-interrupting"]:ub["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 q2={__depends__:[mf,Ry,kc],__init__:["replaceMenuProvider"],replaceMenuProvider:["type",Jn]};function Ha(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(!(!fa(d)||!i.isOpen(m))){var g=i.getEntries(m);g.replace&&g.replace.action.click(d,m)}}),n.on("contextPad.close",function(){p.cleanUp()})}Ha.$inject=["config.contextPad","injector","eventBus","contextPad","modeling","elementFactory","connect","create","popupMenu","canvas","rules","translate","appendPreview"],Ha.prototype.getMultiElementContextPadEntries=function(e){var t=this._modeling,n={};return this._isDeleteAllowed(e)&&L(n,{delete:{group:"edit",className:"bpmn-icon-trash",title:this._translate("Delete"),action:{click:function(i,r){t.removeElements(r.slice())}}}}),n},Ha.prototype._isDeleteAllowed=function(e){var t=this._rules.allowed("elements.delete",{elements:e});return be(t)?Cr(e,n=>t.includes(n)):t},Ha.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])&&L(l,h()),l;var f=e.businessObject;function p(b,x){r.start(b,x)}function d(b,x){n.removeElements([x])}function h(){return{delete:{group:"edit",className:"bpmn-icon-trash",title:c("Delete"),action:{click:d}}}}function m(b){var x=5,S=t.getPad(b).html,M=S.getBoundingClientRect(),N={x:M.left,y:M.bottom+x};return N}function g(b,x,S,M){function N(V,$){var G=i.createShape(L({type:b},M));o.start(V,G,{source:$})}var T=s?function(V,$){var G=i.createShape(L({type:b},M));s.append($,G)}:N,H=s?function(V,$){return u.create($,b,M),()=>{u.cleanUp()}}:null;return{group:"model",className:x,title:S,action:{dragstart:N,click:T,hover:H}}}function R(b){return function(x,S){n.splitLane(S,b),t.open(S,!0)}}if(Le(f,["bpmn:Lane","bpmn:Participant"])&&Fe(e)){var w=ar(e);L(l,{"lane-insert-above":{group:"lane-insert-above",className:"bpmn-icon-lane-insert-above",title:c("Add lane above"),action:{click:function(b,x){n.addLane(x,"top")}}}}),w.length<2&&((Ut(e)?e.height>=120:e.width>=120)&&L(l,{"lane-divide-two":{group:"lane-divide",className:"bpmn-icon-lane-divide-two",title:c("Divide into two lanes"),action:{click:R(2)}}}),(Ut(e)?e.height>=180:e.width>=180)&&L(l,{"lane-divide-three":{group:"lane-divide",className:"bpmn-icon-lane-divide-three",title:c("Divide into three lanes"),action:{click:R(3)}}})),L(l,{"lane-insert-below":{group:"lane-insert-below",className:"bpmn-icon-lane-insert-below",title:c("Add lane below"),action:{click:function(b,x){n.addLane(x,"bottom")}}}})}return v(f,"bpmn:FlowNode")&&(v(f,"bpmn:EventBasedGateway")?L(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"})}):lb(f,"bpmn:BoundaryEvent","bpmn:CompensateEventDefinition")?L(l,{"append.compensation-activity":g("bpmn:Task","bpmn-icon-task",c("Append compensation activity"),{isForCompensation:!0})}):!v(f,"bpmn:EndEvent")&&!f.isForCompensation&&!lb(f,"bpmn:IntermediateThrowEvent","bpmn:LinkEventDefinition")&&!un(f)&&L(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")||L(l,{replace:{group:"edit",className:"bpmn-icon-screw-wrench",title:c("Change element"),action:{click:function(b,x){var S=L(m(x),{cursor:{x:b.x,y:b.y}});a.open(x,"bpmn-replace",S,{title:c("Change element"),width:"var(--bpmn-replace-popup-width, 300px)",search:!0})}}}}),v(f,"bpmn:SequenceFlow")&&L(l,{"append.text-annotation":g("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),v(f,"bpmn:MessageFlow")&&L(l,{"append.text-annotation":g("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),Le(f,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference"])&&L(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}}}),v(f,"bpmn:TextAnnotation")&&L(l,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect using association"),action:{click:p,dragstart:p}}}),Le(f,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&L(l,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:c("Connect using data input association"),action:{click:p,dragstart:p}}}),v(f,"bpmn:Group")&&L(l,{"append.text-annotation":g("bpmn:TextAnnotation","bpmn-icon-text-annotation",c("Add text annotation"))}),this._isDeleteAllowed([e])&&L(l,h()),l};function lb(e,t,n){var i=e.$instanceOf(t),r=!1,o=e.eventDefinitions||[];return k(o,function(a){a.$type===n&&(r=!0)}),i&&r}const K2={__depends__:[P2,ab,jv,Kn,Ef,uc,q2],__init__:["contextPadProvider"],contextPadProvider:["type",Ha]};var X2={horizontal:["x","width"],vertical:["y","height"]},pb=5;function Vi(e,t){this._modeling=e,this._filters=[],this.registerFilter(function(n){var i=t.allowed("elements.distribute",{elements:n});return be(i)?i:i?n:[]})}Vi.$inject=["modeling","rules"],Vi.prototype.registerFilter=function(e){if(typeof e!="function")throw new Error("the filter has to be a function");this._filters.push(e)},Vi.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},Vi.prototype._filterElements=function(e){var t=this._filters,n=this._axis,i=this._dimension,r=[].concat(e);return t.length?(k(t,function(o){r=o(r,n,i)}),r):e},Vi.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=ai(e,i);return k(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},Vi.prototype._setOrientation=function(e){var t=X2[e];this._axis=t[0],this._dimension=t[1]},Vi.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)},Vi.prototype._findRange=function(e){var t=e[this._axis],n=e[this._dimension];return{min:t+pb,max:t+n-pb}};const Z2={__init__:["distributeElements"],distributeElements:["type",Vi]};function ou(e){qn.call(this,e)}ou.$inject=["eventBus"],ae(ou,qn),ou.prototype.init=function(){this.addRule("elements.distribute",function(e){var t=e.elements;return t=Ie(t,function(n){var i=Le(n,["bpmn:Association","bpmn:BoundaryEvent","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:Lane","bpmn:MessageFlow","bpmn:SequenceFlow","bpmn:TextAnnotation"]);return!(n.labelTarget||i)}),t=xs(t),t.length<3?!1:t})};var fb={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>`},U2=900;function za(e,t,n,i){this._distributeElements=t,this._translate=n,this._popupMenu=e,this._rules=i,e.registerProvider("align-elements",U2,this)}za.$inject=["popupMenu","distributeElements","translate","rules"],za.prototype.getPopupMenuEntries=function(e){var t={};return this._isAllowed(e)&&D(t,this._getEntries(e)),t},za.prototype._isAllowed=function(e){return this._rules.allowed("elements.distribute",{elements:e})},za.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:ub.horizontal,action:function(o,a){t.trigger(e,"horizontal"),i.close()}},"distribute-elements-vertical":{group:"distribute",title:n("Distribute elements vertically"),imageHtml:ub.vertical,action:function(o,a){t.trigger(e,"vertical"),i.close()}}};return r};const Y2={__depends__:[df,W2],__init__:["bpmnDistributeElements","distributeElementsMenuProvider"],bpmnDistributeElements:["type",ou],distributeElementsMenuProvider:["type",za]};var lb="is not a registered action",q2="is already registered";function ei(e,t){this._eventBus=e,this._actions={};var n=this;e.on("diagram.init",function(){n._registerDefaultActions(t),e.fire("editorActions.init",{editorActions:n})})}ei.$inject=["eventBus","injector"],ei.prototype._registerDefaultActions=function(e){var t=e.get("commandStack",!1),n=e.get("modeling",!1),i=e.get("selection",!1),r=e.get("zoomScroll",!1),o=e.get("copyPaste",!1),a=e.get("canvas",!1),s=e.get("rules",!1),c=e.get("keyboardMove",!1),u=e.get("keyboardMoveSelection",!1);t&&(this.register("undo",function(){t.undo()}),this.register("redo",function(){t.redo()})),o&&i&&this.register("copy",function(){var l=i.get();if(l.length)return o.copy(l)}),o&&i&&this.register("duplicate",function(){var l=i.get();if(l.length)return o.duplicate(l)}),o&&this.register("paste",function(){o.paste()}),o&&i&&s&&this.register("cut",function(){var l=i.get();if(l.length){var p=s.allowed("elements.delete",{elements:l});if(p!==!1){var f=_e(p)?p:l;return o.cut(f.slice())}}}),r&&this.register("stepZoom",function(l){r.stepZoom(l.value)}),a&&this.register("zoom",function(l){a.zoom(l.value)}),n&&i&&s&&this.register("removeSelection",function(){var l=i.get();if(l.length){var p=s.allowed("elements.delete",{elements:l}),f;p!==!1&&(_e(p)?f=p:f=l,f.length&&n.removeElements(f.slice()))}}),c&&this.register("moveCanvas",function(l){c.moveCanvas(l)}),u&&this.register("moveSelection",function(l){u.moveSelection(l.direction,l.accelerated)})},ei.prototype.trigger=function(e,t){if(!this._actions[e])throw Ef(e,lb);var n=this._eventBus.fire("editorActions.allowed",{action:e,opts:t});if(n!==!1)return this._actions[e](t)},ei.prototype.register=function(e,t){var n=this;if(typeof e=="string")return this._registerAction(e,t);k(e,function(i,r){n._registerAction(r,i)})},ei.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw Ef(e,q2);this._actions[e]=t},ei.prototype.unregister=function(e){if(!this.isRegistered(e))throw Ef(e,lb);this._actions[e]=void 0},ei.prototype.getActions=function(){return Object.keys(this._actions)},ei.prototype.isRegistered=function(e){return!!this._actions[e]};function Ef(e,t){return new Error(e+" "+t)}const K2={__init__:["editorActions"],editorActions:["type",ei]};function au(e){e.invoke(ei,this)}oe(au,ei),au.$inject=["injector"],au.prototype._registerDefaultActions=function(e){ei.prototype._registerDefaultActions.call(this,e);var t=e.get("canvas",!1),n=e.get("elementRegistry",!1),i=e.get("selection",!1),r=e.get("spaceTool",!1),o=e.get("lassoTool",!1),a=e.get("handTool",!1),s=e.get("globalConnect",!1),c=e.get("distributeElements",!1),u=e.get("alignElements",!1),l=e.get("directEditing",!1),p=e.get("searchPad",!1),f=e.get("modeling",!1),d=e.get("contextPad",!1);t&&n&&i&&this._registerAction("selectElements",function(){var 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=[],R=h.type;m.length&&(g=Le(m,function(w){return!v(w,"bpmn:Lane")}),u.trigger(g,R))}),i&&f&&this._registerAction("setColor",function(h){var m=i.get();m.length&&f.setColor(m,h)}),i&&l&&this._registerAction("directEditing",function(){var h=i.get();h.length&&l.activate(h[0])}),p&&this._registerAction("find",function(){p.toggle()}),t&&f&&this._registerAction("moveToOrigin",function(){var h=t.getRootElement(),m,g;v(h,"bpmn:Collaboration")?g=n.filter(function(R){return v(R.parent,"bpmn:Collaboration")}):g=n.filter(function(R){return R!==h&&!v(R.parent,"bpmn:SubProcess")}),m=Ct(g),f.moveElements(g,{x:-m.x,y:-m.y},h)}),i&&d&&this._registerAction("replaceElement",function(h){d.triggerEntry("replace","click",h)})};const X2={__depends__:[K2],editorActions:["type",au]};function pb(e){e.on(["create.init","shape.move.init"],function(t){var n=t.context,i=t.shape;De(i,["bpmn:Participant","bpmn:SubProcess","bpmn:TextAnnotation"])&&(n.gridSnappingContext||(n.gridSnappingContext={}),n.gridSnappingContext.snapLocation="top-left")})}pb.$inject=["eventBus"];function qr(e,t){K.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;En(a)?r.newBounds=n.snapComplex(c,a):r.newBounds=n.snapSimple(s,c)}})}qr.$inject=["eventBus","gridSnapping","modeling"],oe(qr,K),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),D(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),D(e,o),e};var Z2=2e3;function fb(e,t){e.on(["spaceTool.move","spaceTool.end"],Z2,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)}})}fb.$inject=["eventBus","gridSnapping"];const Q2={__init__:["gridSnappingResizeBehavior","gridSnappingSpaceToolBehavior"],gridSnappingResizeBehavior:["type",qr],gridSnappingSpaceToolBehavior:["type",fb]};var su=10;function Sf(e,t,n){return n||(n="round"),Math[n](e/t)*t}var J2=1200,ek=800;function _r(e,t,n){var i=!n||n.active!==!1;this._eventBus=t;var r=this;t.on("diagram.init",ek,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"],J2,function(o){var a=o.originalEvent;if(!(!r.active||a&&Mn(a))){var s=o.context,c=s.gridSnappingContext;c||(c=s.gridSnappingContext={}),["x","y"].forEach(function(u){var l={},p=nk(o,u,e);p&&(l.offset=p);var f=tk(o,u);f&&D(l,f),No(o,u)||r.snapEvent(o,u,l)})}})}_r.prototype.snapEvent=function(e,t,n){var i=this.snapValue(e[t],n);Mt(e,t,i)},_r.prototype.getGridSpacing=function(){return su},_r.prototype.snapValue=function(e,t){var n=0;t&&t.offset&&(n=t.offset),e+=n,e=Sf(e,su);var i,r;return t&&t.min&&(i=t.min,we(i)&&(i=Sf(i+n,su,"ceil"),e=Math.max(e,i))),t&&t.max&&(r=t.max,we(r)&&(r=Sf(r+n,su,"floor"),e=Math.min(e,r))),e-=n,e},_r.prototype.isActive=function(){return this.active},_r.prototype.setActive=function(e){this.active=e,this._eventBus.fire("gridSnapping.toggle",{active:e})},_r.prototype.toggleActive=function(){this.setActive(!this.active)},_r.$inject=["elementRegistry","eventBus","config.gridSnapping"];function tk(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&&(cu(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&&(cu(t)?hb(s)?a.x.max=c.left:a.x.min=c.right:db(s)?a.y.max=c.top:a.y.min=c.bottom),u&&(cu(t)?hb(s)?a.x.min=u.left:a.x.max=u.right:db(s)?a.y.min=u.top:a.y.max=u.bottom),a[t]}function nk(e,t,n){var i=e.context,r=e.shape,o=i.gridSnappingContext,a=o.snapLocation,s=o.snapOffset;return s&&we(s[t])||(s||(s=o.snapOffset={}),we(s[t])||(s[t]=0),!r)||(n.get(r.id)||(cu(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 cu(e){return e==="x"}function db(e){return e.indexOf("n")!==-1}function hb(e){return e.indexOf("w")!==-1}const ik={__depends__:[Q2],__init__:["gridSnapping"],gridSnapping:["type",_r]};var rk=2e3;function mb(e,t,n){e.on("autoPlace",rk,function(i){var r=i.source,o=be(r),a=i.shape,s=hv(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],v(a,"bpmn:TextAnnotation")&&(ok(c)?u.offset=-a.width/2:u.offset=-a.height/2),s[c]=t.snapValue(s[c],u))}),s})}mb.$inject=["eventBus","gridSnapping","elementRegistry"];function ok(e){return e==="x"}var ak=1750;function gb(e,t,n){t.on(["create.start","shape.move.start"],ak,function(i){var r=i.context,o=r.shape,a=e.getRootElement();if(!(!v(o,"bpmn:Participant")||!v(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}))}})}gb.$inject=["canvas","eventBus","gridSnapping"];var sk=3e3;function uu(e,t,n){K.call(this,e),this._gridSnapping=t;var i=this;this.postExecuted(["connection.create","connection.layout"],sk,function(r){var o=r.context,a=o.connection,s=o.hints||{},c=a.waypoints;s.connectionStart||s.connectionEnd||s.createElementsBehavior===!1||ck(c)&&n.updateWaypoints(a,i.snapMiddleSegments(c))})}uu.$inject=["eventBus","gridSnapping","modeling"],oe(uu,K),uu.prototype.snapMiddleSegments=function(e){var t=this._gridSnapping,n;e=e.slice();for(var i=1;i<e.length-2;i++)n=pk(t,e[i],e[i+1]),e[i]=n[0],e[i+1]=n[1];return e};function ck(e){return e.length>3}function uk(e){return e==="h"}function lk(e){return e==="v"}function pk(e,t,n){var i=Ti(t,n),r={};return uk(i)&&(r.y=e.snapValue(t.y)),lk(i)&&(r.x=e.snapValue(t.x)),("x"in r||"y"in r)&&(t=D({},t,r),n=D({},n,r)),[t,n]}const fk={__depends__:[ik,{__init__:["gridSnappingAutoPlaceBehavior","gridSnappingParticipantBehavior","gridSnappingLayoutConnectionBehavior"],gridSnappingAutoPlaceBehavior:["type",mb],gridSnappingParticipantBehavior:["type",gb],gridSnappingLayoutConnectionBehavior:["type",uu]}],__init__:["bpmnGridSnapping"],bpmnGridSnapping:["type",pb]};var dk=30,yb=30;function Va(e,t){this._interactionEvents=t;var n=this;e.on(["interactionEvents.createHit","interactionEvents.updateHit"],function(i){var r=i.element,o=i.gfx;if(v(r,"bpmn:Lane"))return n._createParticipantHit(r,o);if(v(r,"bpmn:Participant"))return je(r)?n._createParticipantHit(r,o):n._createDefaultHit(r,o);if(v(r,"bpmn:SubProcess"))return je(r)?n._createSubProcessHit(r,o):n._createDefaultHit(r,o)})}Va.$inject=["eventBus","interactionEvents"],Va.prototype._createDefaultHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createDefaultHit(e,t),!0},Va.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=Wt(e)?{width:dk,height:e.height}:{width:e.width,height:yb};return this._interactionEvents.createBoxHit(t,"all",n),!0},Va.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:yb}),!0};const hk={__init__:["bpmnInteractionEvents"],bpmnInteractionEvents:["type",Va]};function lu(e){e.invoke(To,this)}oe(lu,To),lu.$inject=["injector"],lu.prototype.registerBindings=function(e,t){To.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 mk={__depends__:[Zp],__init__:["keyboardBindings"],keyboardBindings:["type",lu]};var gk={moveSpeed:1,moveSpeedAccelerated:10},yk=1500,vb="left",_b="up",bb="right",xb="down",vk={ArrowLeft:vb,Left:vb,ArrowUp:_b,Up:_b,ArrowRight:bb,Right:bb,ArrowDown:xb,Down:xb},_k={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 wb(e,t,n,i,r){var o=this;this._config=D({},gk,e||{}),t.addListener(yk,function(a){var s=a.keyEvent,c=vk[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=_k[a](u),p=i.allowed("elements.move",{shapes:c,hints:{keyboardMove:!0}});p&&n.moveElements(c,l)}}}wb.$inject=["config.keyboardMoveSelection","keyboard","modeling","rules","selection"];const bk={__depends__:[Zp,Kn],__init__:["keyboardMoveSelection"],keyboardMoveSelection:["type",wb]};var Eb=10;function Ga(e,t,n,i){this._dragging=i,this._rules=t;var r=this;function o(c,u){var l=c.shape,p=c.direction,f=c.resizeConstraints,d;c.delta=u,d=gR(l,p,u),c.newBounds=vR(d,f),c.canExecute=r.canResize(c)}function a(c){var u=c.resizeConstraints,l=c.minBounds;u===void 0&&(l===void 0&&(l=r.computeMinResizeBox(c)),c.resizeConstraints={min:ge(l)})}function s(c){var u=c.shape,l=c.canExecute,p=c.newBounds;if(l){if(p=Fh(p),!xk(u,p))return;n.resizeShape(u,p)}}e.on("resize.start",function(c){a(c.context)}),e.on("resize.move",function(c){var u={x:c.dx,y:c.dy};o(c.context,u)}),e.on("resize.end",function(c){s(c.context)})}Ga.prototype.canResize=function(e){var t=this._rules,n=ii(e,["newBounds","shape","delta","direction"]);return t.allowed("shape.resize",n)},Ga.prototype.activate=function(e,t,n){var i=this._dragging,r,o;if(typeof n=="string"&&(n={direction:n}),r=D({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,Sb(t,o),"resize",{autoActivate:!0,cursor:wk(o),data:{shape:t,context:r}})},Ga.prototype.computeMinResizeBox=function(e){var t=e.shape,n=e.direction,i,r;return i=e.minDimensions||{width:Eb,height:Eb},r=Pm(t,e.childrenBoxPadding),_R(n,t,i,r)},Ga.$inject=["eventBus","rules","modeling","dragging"];function xk(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}function Sb(e,t){var n=be(e),i=ge(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 wk(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 Rb="djs-resizing",Cb="resize-not-ok",Ek=500;function Pb(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,Rb)),s.width>5&&ae(c,{x:s.x,width:s.width}),s.height>5&&ae(c,{y:s.y,height:s.height}),o.canExecute?He(c).remove(Cb):He(c).add(Cb)}function r(o){var a=o.shape,s=o.frame;s&&Ft(o.frame),t.removeMarker(a,Rb)}e.on("resize.move",Ek,function(o){i(o.context)}),e.on("resize.cleanup",function(o){r(o.context)})}Pb.$inject=["eventBus","canvas","previewSupport"];var pu=-6,fu=8,du=20,Wa="djs-resizer",Sk=["n","w","s","e","nw","ne","se","sw"];function br(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&&k(a,vn(r.addResizer,r))}),e.on("shape.changed",function(o){var a=o.element;n.isSelected(a)&&(r.removeResizers(),r.addResizer(a))})}br.prototype.makeDraggable=function(e,t,n){var i=this._resize;function r(o){cr(o)&&i.activate(o,e,n)}Se.bind(t,"mousedown",r),Se.bind(t,"touchstart",r)},br.prototype._createResizer=function(e,t,n,i){var r=this._getResizersParent(),o=Rk(i),a=he("g");He(a).add(Wa),He(a).add(Wa+"-"+e.id),He(a).add(Wa+"-"+i),Re(r,a);var s=he("rect");ae(s,{x:-fu/2+o.x,y:-fu/2+o.y,width:fu,height:fu}),He(s).add(Wa+"-visual"),Re(a,s);var c=he("rect");return ae(c,{x:-du/2+o.x,y:-du/2+o.y,width:du,height:du}),He(c).add(Wa+"-hit"),Re(a,c),Ps(a,t,n),a},br.prototype.createResizer=function(e,t){var n=Sb(e,t),i=this._createResizer(e,n.x,n.y,t);this.makeDraggable(e,i,t)},br.prototype.addResizer=function(e){var t=this;rt(e)||k(Sk,function(n){t._resize.canResize({shape:e,direction:n})&&t.createResizer(e,n)})},br.prototype.removeResizers=function(){var e=this._getResizersParent();vs(e)},br.prototype._getResizersParent=function(){return this._canvas.getLayer("resizers")},br.$inject=["eventBus","canvas","selection","resize"];function Rk(e){var t={x:0,y:0};return e.indexOf("e")!==-1?t.x=-pu:e.indexOf("w")!==-1&&(t.x=pu),e.indexOf("s")!==-1?t.y=-pu:e.indexOf("n")!==-1&&(t.y=pu),t}const Ab={__depends__:[yi,Ii,Co],__init__:["resize","resizePreview","resizeHandles"],resize:["type",Ga],resizePreview:["type",Pb],resizeHandles:["type",br]};var Ck=2e3;function Ua(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"],Ck,function(c){i.isActive(c.element)&&i.cancel()}),e.on(["commandStack.changed"],function(c){i.isActive()&&i.cancel()}),e.on("directEditing.activate",function(c){o.removeResizers()}),e.on("create.end",500,function(c){var u=c.context,l=u.shape,p=c.context.canExecute,f=c.isTouch;f||p&&(u.hints&&u.hints.createElementsBehavior===!1||s(l))}),e.on("autoPlace.end",500,function(c){s(c.shape)});function s(c,u){(u||De(c,["bpmn:Activity","bpmn:Event","bpmn:TextAnnotation","bpmn:Participant"]))&&i.activate(c)}}Ua.$inject=["eventBus","bpmnFactory","canvas","directEditing","modeling","resizeHandles","textRenderer"],Ua.prototype.activate=function(e){var t=Hn(e);if(t!==void 0){var n={text:t},i=this.getEditingBBox(e);D(n,i);var r={},o=n.style||{};return D(o,{backgroundColor:null,border:null}),(De(e,["bpmn:Task","bpmn:Participant","bpmn:Lane","bpmn:CallActivity"])||Tb(e))&&D(r,{centerVertically:!0}),rr(e)&&(D(r,{resizable:!0,autoResize:!0}),D(o,{backgroundColor:"#ffffff",border:"1px solid #ccc"})),v(e,"bpmn:TextAnnotation")&&(D(r,{resizable:!0,autoResize:!0}),D(o,{backgroundColor:"#ffffff",border:"1px solid #ccc"})),D(n,{options:r,style:o}),n}},Ua.prototype.getEditingBBox=function(e){var t=this._canvas,n=e.label||e,i=t.getAbsoluteBBox(n),r={x:i.x+i.width/2,y:i.y+i.height/2},o={x:i.x,y:i.y},a=t.zoom(),s=this._textRenderer.getDefaultStyle(),c=this._textRenderer.getExternalStyle(),u=c.fontSize*a,l=c.lineHeight,p=s.fontSize*a,f=s.lineHeight,d={fontFamily:this._textRenderer.getDefaultStyle().fontFamily,fontWeight:this._textRenderer.getDefaultStyle().fontWeight};if(v(e,"bpmn:Lane")||Tk(e)){var h=Wt(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};D(o,m),D(d,{fontSize:p+"px",lineHeight:f,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px",transform:h?"rotate(-90deg)":null})}if(Ak(e)){var g=Wt(e),R=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};D(o,R),D(d,{fontSize:p+"px",lineHeight:f,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px",transform:g?null:"rotate(-90deg)"})}(De(e,["bpmn:Task","bpmn:CallActivity"])||Tb(e))&&(D(o,{width:i.width,height:i.height}),D(d,{fontSize:p+"px",lineHeight:f,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px"})),Pk(e)&&(D(o,{width:i.width,x:i.x}),D(d,{fontSize:p+"px",lineHeight:f,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px"}));var w=1,b=i.width+2*w;if(n.labelTarget&&(D(o,{width:b,height:i.height+2*w,x:i.x-w,y:i.y-w}),D(d,{fontSize:u+"px",lineHeight:l})),rr(n)&&!Ms(n)&&!ke(n)){var x=pl(e),S=t.getAbsoluteBBox({x:x.x,y:x.y,width:0,height:0}),M=u,L=Nr.width*a+2*w;D(o,{width:L,height:M+2*w,x:S.x-L/2,y:S.y-M/2-w}),D(d,{fontSize:u+"px",lineHeight:l})}return v(e,"bpmn:TextAnnotation")&&(D(o,{width:i.width+2*w,height:i.height+2*w,x:i.x-w,y:i.y-w,minWidth:30*a,minHeight:10*a}),D(d,{textAlign:"left",paddingTop:fo*a+"px",paddingBottom:fo*a+"px",paddingLeft:fo*a+"px",paddingRight:fo*a+"px",fontSize:p+"px",lineHeight:f})),{bounds:o,style:d}},Ua.prototype.update=function(e,t,n,i){var r,o;v(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}),Mk(t)&&(t=null),this._modeling.updateLabel(e,t,r)};function Tb(e){return v(e,"bpmn:SubProcess")&&!je(e)}function Pk(e){return v(e,"bpmn:SubProcess")&&je(e)}function Ak(e){return v(e,"bpmn:Participant")&&!je(e)}function Tk(e){return v(e,"bpmn:Participant")&&je(e)}function Mk(e){return!e||!e.trim()}var Mb="djs-element-hidden",kb="djs-label-hidden";function Ob(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,v(o,"bpmn:TextAnnotation")){a=t.getAbsoluteBBox(o),s=he("g");var l=n.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:o.width,containerHeight:o.height,position:{mx:0,my:0}}),p=i.path=he("path");ae(p,{d:l,strokeWidth:2,stroke:kk(o)}),Re(s,p),Re(r,s),Qt(s,o.x,o.y)}v(o,"bpmn:TextAnnotation")||o.labelTarget?t.addMarker(o,Mb):(v(o,"bpmn:Task")||v(o,"bpmn:CallActivity")||v(o,"bpmn:SubProcess")||v(o,"bpmn:Participant")||v(o,"bpmn:Lane"))&&t.addMarker(o,kb)}),e.on("directEditing.resize",function(c){if(v(o,"bpmn:TextAnnotation")){var u=c.height,l=c.dy,p=Math.max(o.height/a.height*(u+l),0),f=n.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:o.width,containerHeight:p,position:{mx:0,my:0}});ae(i.path,{d:f})}}),e.on(["directEditing.complete","directEditing.cancel"],function(c){var u=c.active;u&&(t.removeMarker(u.element.label||u.element,Mb),t.removeMarker(o,kb)),o=void 0,a=void 0,s&&(Ft(s),s=void 0)})}Ob.$inject=["eventBus","canvas","pathMap"];function kk(e,t){var n=We(e);return n.get("stroke")||t||"black"}const Ok={__depends__:[Tp,Ab,ib],__init__:["labelEditingProvider","labelEditingPreview"],labelEditingProvider:["type",Ua],labelEditingPreview:["type",Ob]};var Dk=500,Lk=1e3;function bi(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){v1(o)||i.createOutline(o)}e.on("element.hover",function(o){r(o.element)}),e.on("selection.changed",function(o){k(o.newSelection,r)}),e.on(["shape.changed","connection.changed"],Dk,function(o){var a=o.element,s=o.gfx,c=nt(".djs-outline",s);c&&i.updateOutline(a,c)})}bi.prototype.createOutline=function(e){var t=this._elementRegistry.getGraphics(e);if(!t)throw new Error("cannot create outline for non-rendered element");var n=nt(".djs-outline",t);return n||(n=this.getOutline(e)||this._createOutlineGfx(),Re(t,n),this.updateOutline(e,n)),n},bi.prototype._createOutlineGfx=function(){var e=he("rect");return ae(e,D({x:0,y:0,rx:4,width:100,height:100},this._outlineStyle)),e},bi.prototype.updateOutline=function(e,t){e.waypoints?this.updateConnectionOutline(t,e):this.updateShapeOutline(t,e)},bi.prototype.updateShapeOutline=function(e,t){var n=!1,i=this._getProviders();i.length&&k(i,function(r){n=n||r.updateOutline(t,e)}),n||ae(e,{x:-this._outlineOffset,y:-this._outlineOffset,width:t.width+this._outlineOffset*2,height:t.height+this._outlineOffset*2})},bi.prototype.updateConnectionOutline=function(e,t){var n=Ct(t);ae(e,{x:n.x-this._outlineOffset,y:n.y-this._outlineOffset,width:n.width+this._outlineOffset*2,height:n.height+this._outlineOffset*2})},bi.prototype.registerProvider=function(e,t){t||(t=e,e=Lk),this._eventBus.on("outline.getProviders",e,function(n){n.providers.push(t)})},bi.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"outline.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},bi.prototype.getOutline=function(e){var t,n=this._getProviders();return k(n,function(i){Gt(i.getOutline)&&(t=t||i.getOutline(e))}),t},bi.$inject=["eventBus","styles","elementRegistry"];var hu=6;function Rf(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)})}Rf.prototype._updateMultiSelectionOutline=function(e){var t=this._canvas.getLayer("selectionOutline");vs(t);var n=e.length>1,i=this._canvas.getContainer();if(He(i)[n?"add":"remove"]("djs-multi-select"),!!n){var r=Ik(Ct(e)),o=he("rect");ae(o,D({rx:3},r)),He(o).add("djs-selection-outline"),Re(t,o)}},Rf.$inject=["eventBus","canvas","selection"];function Ik(e){return{x:e.x-hu,y:e.y-hu,width:e.width+hu*2,height:e.height+hu*2}}const Cf={__depends__:[Kn],__init__:["outline","multiSelectionOutline"],outline:["type",bi],multiSelectionOutline:["type",Rf]},Db=["bpmn:Event","bpmn:SequenceFlow","bpmn:Gateway"],Lb={class:"bjs-label-link",stroke:"var(--element-selected-outline-secondary-stroke-color)",strokeDasharray:"5, 5"},Nk=15,mu=2;function Ib(e,t,n,i,r){const o=t.getLayer("overlays");e.on(["selection.changed","shape.changed"],function(){s()}),e.on("selection.changed",function({newSelection:p}){var d;const f=p.filter(h=>De(h,Db));if(f.length===1){const h=f[0];ke(h)?a(h,h.labelTarget):(d=h.labels)!=null&&d.length&&a(h.labels[0],h)}if(f.length===2){const h=f.find(ke),m=f.find(g=>{var R;return(R=g.labels)==null?void 0:R.includes(h)});h&&m&&a(h,m)}}),e.on("shape.changed",function({element:p}){var f;!De(p,Db)||!l(p)||(ke(p)?a(p,p.labelTarget):(f=p.labels)!=null&&f.length&&a(p.labels[0],p))});function a(p,f){const d=Ko([be(f),be(p)],Lb),h=d.getAttribute("d"),g=r.isSelected(p)?c(p):u(p),R=Jo(g,h);if(!R)return;const b=r.isSelected(f)?c(f):u(f),x=Jo(b,h)||be(f);ua(x,R)<Nk||(il(d,[x,R]),Re(o,d))}function s(){ys(`.${Lb.class}`,o).forEach(Ft)}function c(p){const f=i.getOutline(p);if(!f)return u(p);if(f.x){const d={x:p.x+xr(f,"x")-mu,y:p.y+xr(f,"y")-mu,width:xr(f,"width")+mu*2,height:xr(f,"height")+mu*2};return dl(d,xr(f,"rx"))}if(f.cx){const d=xr(f,"r"),h={x:p.x+xr(f,"cx")-d,y:p.y+xr(f,"cy")-d,width:d*2,height:d*2};return lm(h)}}function u(p){return n.getShapePath(p)}function l(p){return r.isSelected(p)}}Ib.$inject=["eventBus","canvas","graphicsFactory","outline","selection"];function xr(e,t){return parseFloat(ae(e,t)||0)}const Bk={__depends__:[Kn,Cf],__init__:["labelLink"],labelLink:["type",Ib]};var $k=new Ro("tt");function jk(e){var t=ut('<div class="djs-tooltip-container" />');return mn(t,{position:"absolute",width:"0",height:"0"}),e.insertBefore(t,e.firstChild),t}function Fk(e,t,n){mn(e,{left:t+"px",top:n+"px"})}function Pf(e,t){e.style.display=t===!1?"none":""}var Nb="djs-tooltip",Af="."+Nb;function bn(e,t){this._eventBus=e,this._canvas=t,this._ids=$k,this._tooltipDefaults={show:{minZoom:.7,maxZoom:5}},this._tooltips={},this._tooltipRoot=jk(t.getContainer());var n=this;Pn.bind(this._tooltipRoot,Af,"mousedown",function(i){i.stopPropagation()}),Pn.bind(this._tooltipRoot,Af,"mouseover",function(i){n.trigger("mouseover",i)}),Pn.bind(this._tooltipRoot,Af,"mouseout",function(i){n.trigger("mouseout",i)}),this._init()}bn.$inject=["eventBus","canvas"],bn.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=D({},this._tooltipDefaults,e,{id:t}),this._addTooltip(e),e.timeout&&this.setTimeout(e),t},bn.prototype.trigger=function(e,t){var n=t.delegateTarget||t.target,i=this.get(an(n,"data-tooltip-id"));i&&(e==="mouseover"&&i.timeout&&this.clearTimeout(i),e==="mouseout"&&i.timeout&&(i.timeout=1e3,this.setTimeout(i)))},bn.prototype.get=function(e){return typeof e!="string"&&(e=e.id),this._tooltips[e]},bn.prototype.clearTimeout=function(e){if(e=this.get(e),!!e){var t=e.removeTimer;t&&(clearTimeout(t),e.removeTimer=null)}},bn.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)}},bn.prototype.remove=function(e){var t=this.get(e);t&&(pi(t.html),pi(t.htmlContainer),delete t.htmlContainer,delete this._tooltips[t.id])},bn.prototype.show=function(){Pf(this._tooltipRoot)},bn.prototype.hide=function(){Pf(this._tooltipRoot,!1)},bn.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},bn.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)),En(n)&&(n=ut(n)),i=ut('<div data-tooltip-id="'+t+'" class="'+Nb+'">'),mn(i,{position:"absolute"}),i.appendChild(n),e.type&&mt(i).add("djs-tooltip-"+e.type),e.className&&mt(i).add(e.className),e.htmlContainer=i,r.appendChild(i),this._tooltips[t]=e,this._updateTooltip(e)},bn.prototype._updateTooltip=function(e){var t=e.position,n=e.htmlContainer;Fk(n,t.x,t.y)},bn.prototype._updateTooltipVisibilty=function(e){k(this._tooltips,function(t){var n=t.show,i=t.htmlContainer,r=!0;n&&((n.minZoom>e.scale||n.maxZoom<e.scale)&&(r=!1),Pf(i,r))})},bn.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 Hk={__init__:["tooltips"],tooltips:["type",bn]};var zk="flow elements must be children of pools/participants",Vk="Data object must be placed within a pool/participant.";function Bb(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;v(s,"bpmn:Collaboration")&&(v(a,"bpmn:FlowNode")?i(r,n(zk)):v(a,"bpmn:DataObjectReference")&&i(r,n(Vk)))})}Bb.$inject=["eventBus","tooltips","translate"];const Gk={__depends__:[Hk],__init__:["modelingFeedback"],modelingFeedback:["type",Bb]};var Wk=500,Uk=1250,Yk=1500,gu=Math.round;function qk(e){return{x:e.x+gu(e.width/2),y:e.y+gu(e.height/2)}}function $b(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",Yk,function(s){var c=s.context,u=s.shape,l=i.get().slice();l.indexOf(u)===-1&&(l=[u]),l=Kk(l),D(c,{shapes:l,validatedShapes:l,shape:u})}),e.on("shape.move.start",Uk,function(s){var c=s.context,u=c.validatedShapes,l;if(l=c.canExecute=o(u),!l)return!1}),e.on("shape.move.move",Wk,function(s){var c=s.context,u=c.validatedShapes,l=s.hover,p={x:s.dx,y:s.dy},f={x:s.x,y:s.y},d;if(d=o(u,p,f,l),c.delta=p,c.canExecute=d,d===null){c.target=null;return}c.target=l}),e.on("shape.move.end",function(s){var c=s.context,u=c.delta,l=c.canExecute,p=l==="attach",f=c.shapes;if(l===!1)return!1;u.x=gu(u.x),u.y=gu(u.y),!(u.x===0&&u.y===0)&&n.moveElements(f,u,c.target,{primaryShape:c.shape,attach:p})}),e.on("element.mousedown",function(s){if(cr(s)){var c=xo(s);if(!c)throw new Error("must supply DOM mousedown event");return a(c,s.element)}});function a(s,c,u,l){if(Vt(u)&&(l=u,u=!1),!(c.waypoints||!c.parent)&&!He(s.target).has("djs-hit-no-move")){var p=qk(c),f=t.init(s,p,"shape.move",{cursor:"grabbing",autoActivate:u,data:{shape:c,context:l||{}}});if(f!==!1)return!0}}this.start=a}$b.$inject=["eventBus","dragging","modeling","selection","rules"];function Kk(e){var t=Jr(e,"id");return Le(e,function(n){for(;n=n.parent;)if(t[n.id])return!1;return!0})}var jb=499,Tf="djs-dragging",Fb="drop-ok",Hb="drop-not-ok",zb="new-parent",Vb="attach-ok";function Gb(e,t,n,i){function r(c){var u=o(c),l=Xk(u);return l}function o(c){var u=Xo(c),l=u.flatMap(d=>(d.incoming||[]).concat(d.outgoing||[])),p=u.concat(l),f=[...new Set(p)];return f}function a(c,u){[Vb,Fb,Hb,zb].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,Tf),c.allDraggedElements?c.allDraggedElements.push(u):c.allDraggedElements=[u]}e.on("shape.move.start",jb,function(c){var u=c.context,l=u.shapes,p=u.allDraggedElements,f=r(l);if(!u.dragGroup){var d=he("g");ae(d,n.cls("djs-drag-group",["no-events"]));var h=t.getActiveLayer();Re(h,d),u.dragGroup=d}f.forEach(function(m){i.addDragger(m,u.dragGroup)}),p?p=Eu([p,o(l)]):p=o(l),k(p,function(m){t.addMarker(m,Tf)}),u.allDraggedElements=p,u.differentParents=Zk(l)}),e.on("shape.move.move",jb,function(c){var u=c.context,l=u.dragGroup,p=u.target,f=u.shape.parent,d=u.canExecute;p&&(d==="attach"?a(p,Vb):u.canExecute&&f&&p.id!==f.id?a(p,zb):a(p,u.canExecute?Fb:Hb)),Qt(l,c.dx,c.dy)}),e.on(["shape.move.out","shape.move.cleanup"],function(c){var u=c.context,l=u.target;l&&a(l,null)}),e.on("shape.move.cleanup",function(c){var u=c.context,l=u.allDraggedElements,p=u.dragGroup;k(l,function(f){t.removeMarker(f,Tf)}),p&&Ft(p)}),this.makeDraggable=s}Gb.$inject=["eventBus","canvas","styles","previewSupport"];function Xk(e){var t=new Set;e.forEach(function(i){t.add(i.id)});var n=Le(e,function(i){return rt(i)?t.has(i.source.id)&&t.has(i.target.id):!0});return n}function Zk(e){return Zx(Jr(e,function(t){return t.parent&&t.parent.id}))!==1}const Qk={__depends__:[sc,Kn,Cf,yi,Ii,Co],__init__:["move","movePreview"],move:["type",$b],movePreview:["type",Gb]};var Wb=".djs-palette-toggle",Ub=".entry",Jk=Wb+", "+Ub,Mf="djs-palette-",eO="shown",kf="open",Yb="two-column",tO=1e3;function kt(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()})}kt.$inject=["eventBus","canvas"],kt.prototype.registerProvider=function(e,t){t||(t=e,e=tO),this._eventBus.on("palette.getProviders",e,function(n){n.providers.push(t)}),this._rebuild()},kt.prototype.getEntries=function(){var e=this._getProviders();return e.reduce(iO,{})},kt.prototype._rebuild=function(){if(this._diagramInitialized){var e=this._getProviders();e.length&&(this._container||this._init(),this._update())}},kt.prototype._init=function(){var e=this,t=this._eventBus,n=this._getParentContainer(),i=this._container=ut(kt.HTML_MARKUP);n.appendChild(i),mt(n).add(Mf+eO),Pn.bind(i,Jk,"click",function(r){var o=r.delegateTarget;if(qu(o,Wb))return e.toggle();e.trigger("click",r)}),Se.bind(i,"mousedown",function(r){r.stopPropagation()}),Pn.bind(i,Ub,"dragstart",function(r){e.trigger("dragstart",r)}),t.on("canvas.resized",this._layoutChanged,this),t.fire("palette.create",{container:i})},kt.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"palette.getProviders",providers:[]});return this._eventBus.fire(t),t.providers},kt.prototype._toggleState=function(e){e=e||{};var t=this._getParentContainer(),n=this._container,i=this._eventBus,r,o=mt(n),a=mt(t);"twoColumn"in e?r=e.twoColumn:r=this._needsCollapse(t.clientHeight,this._entries||{}),o.toggle(Yb,r),a.toggle(Mf+Yb,r),"open"in e&&(o.toggle(kf,e.open),a.toggle(Mf+kf,e.open)),i.fire("palette.changed",{twoColumn:r,open:this.isOpen()})},kt.prototype._update=function(){var e=nt(".djs-palette-entries",this._container),t=this._entries=this.getEntries();ms(e),k(t,function(n,i){var r=n.group||"default",o=nt("[data-group="+ka(r)+"]",e);o||(o=ut('<div class="group"></div>'),an(o,"data-group",r),e.appendChild(o));var a=n.html||(n.separator?'<hr class="separator" />':'<div class="entry" draggable="true"></div>'),s=ut(a);if(o.appendChild(s),!n.separator&&(an(s,"data-action",i),n.title&&an(s,"title",n.title),n.className&&nO(s,n.className),n.imageUrl)){var c=ut("<img>");an(c,"src",n.imageUrl),s.appendChild(c)}}),this.open()},kt.prototype.trigger=function(e,t,n){var i,r,o=t.delegateTarget||t.target;return o?(i=an(o,"data-action"),r=t.originalEvent||t,this.triggerEntry(i,e,r,n)):t.preventDefault()},kt.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(Gt(a)){if(t==="click")return a(n,i)}else if(a[t])return a[t](n,i);n.preventDefault()}},kt.prototype._layoutChanged=function(){this._toggleState({})},kt.prototype._needsCollapse=function(e,t){var n=50,i=Object.keys(t).length*46;return e<i+n},kt.prototype.close=function(){this._toggleState({open:!1,twoColumn:!1})},kt.prototype.open=function(){this._toggleState({open:!0})},kt.prototype.toggle=function(){this.isOpen()?this.close():this.open()},kt.prototype.isActiveTool=function(e){return e&&this._activeTool===e},kt.prototype.updateToolHighlight=function(e){var t,n;this._toolsContainer||(t=nt(".djs-palette-entries",this._container),this._toolsContainer=nt("[data-group=tools]",t)),n=this._toolsContainer,k(n.children,function(i){var r=i.getAttribute("data-action");if(r){var o=mt(i);r=r.replace("-tool",""),o.contains("entry")&&r===e?o.add("highlighted-entry"):o.remove("highlighted-entry")}})},kt.prototype.isOpen=function(){return mt(this._container).has(kf)},kt.prototype._getParentContainer=function(){return this._canvas.getContainer()},kt.HTML_MARKUP='<div class="djs-palette"><div class="djs-palette-entries"></div><div class="djs-palette-toggle"></div></div>';function nO(e,t){var n=mt(e),i=_e(t)?t:t.split(/\s+/g);i.forEach(function(r){n.add(r)})}function iO(e,t){var n=t.getPaletteEntries();return Gt(n)?n(e):(k(n,function(i,r){e[r]=i}),e)}const rO={__init__:["palette"],palette:["type",kt]};var qb="crosshair",Kb="selected",oO="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(p){var f=t.getActiveLayer(),d=p.frame=he("rect");ae(d,{class:"djs-lasso-overlay",width:1,height:1,x:0,y:0}),Re(f,d),u(!0),this.update(p)},update:function(p){var f=p.frame,d=p.bbox;f&&d&&ae(f,{x:d.x,y:d.y,width:d.width,height:d.height});var h=p.marked,m=p.lastMarked;if(h&&m){for(const g of m)h.has(g)||t.removeMarker(g,Kb);for(const g of h)m.has(g)||t.addMarker(g,Kb)}},remove:function(p){this.update(p),p.frame&&Ft(p.frame),u(!1)}};function u(p){He(t.getContainer()).toggle(oO,p)}function l(p){var f=i.getAll();return new Set(Qr(so(f,p)))}o.registerTool("lasso",{tool:"lasso.selection",dragging:"lasso"}),e.on("lasso.selection.end",function(p){var f=p.originalEvent.target;!p.hover&&!(f instanceof SVGElement)||e.once("lasso.selection.ended",function(){s.activateLasso(p.originalEvent,!0)})}),e.on("lasso.end",0,function(p){var f=p.context;s._select(Array.from(f.marked))}),e.on("lasso.start",function(p){var f=p.context;f.bbox=Xb(p),f.add=ec(p),f.lastMarked=new Set(r.get()),f.add?f.marked=f.lastMarked:f.marked=new Set,f.initialMarked=f.marked,c.create(f)}),e.on("lasso.move",function(p){var f=p.context,d=f.bbox=Xb(p),h=l(d),m=f.initialMarked.union(h);f.lastMarked=f.marked,f.marked=m,c.update(f)}),e.on("lasso.cleanup",function(p){var f=p.context;f.lastMarked=f.marked,f.marked=new Set(r.get()),c.remove(p.context)}),e.on("element.mousedown",1500,function(p){if(ec(p))return s.activateLasso(p.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:qb,data:{context:{}},keepSelection:!0})},wr.prototype.activateSelection=function(e,t){this._dragging.init(e,"lasso.selection",{trapClick:!1,autoActivate:t,cursor:qb,data:{context:{}},keepSelection:!0})},wr.prototype._select=function(e){this._selection.select(e)},wr.prototype.select=function(e,t,n=[]){var i=Qr(so(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 Xb(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 aO={__depends__:[pc,ma],__init__:["lassoTool"],lassoTool:["type",wr]};var Of=1500,Zb="grab";function Bo(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",Of,function(c){if(fa(c))return a.activateMove(c.originalEvent,!0),!1}),s&&s.addListener(Of,function(c){if(!(!Qb(c.keyEvent)||a.isActive())){var u=a._mouse.getLastMoveEvent();a.activateMove(u,!!u)}},"keyboard.keydown"),s&&s.addListener(Of,function(c){!Qb(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!fa(c)&&l&&e.once("hand.move.ended",function(p){a.activateHand(p.originalEvent,!0,!0)}),!1})}Bo.$inject=["eventBus","canvas","dragging","injector","toolManager","mouse"],Bo.prototype.activateMove=function(e,t,n){typeof t=="object"&&(n=t,t=!1),this._dragging.init(e,"hand.move",{autoActivate:t,cursor:Zb,data:{context:n||{}}})},Bo.prototype.activateHand=function(e,t,n){this._dragging.init(e,"hand",{trapClick:!1,autoActivate:t,cursor:Zb,data:{context:{reactivate:n}}})},Bo.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateHand(e,!!e)},Bo.prototype.isActive=function(){var e=this._dragging.context();return e?/^(hand|hand\.move)$/.test(e.prefix):!1};function Qb(e){return Ht("Space",e)}const sO={__depends__:[pc,ma],__init__:["handTool"],handTool:["type",Bo]};var Jb="connect-ok",ex="connect-not-ok";function $o(e,t,n,i,r,o,a){var s=this;this._dragging=t,this._rules=o,this._mouse=a,r.registerTool("global-connect",{tool:"global-connect",dragging:"global-connect.drag"}),e.on("global-connect.hover",function(c){var u=c.context,l=c.hover,p=u.canStartConnect=s.canStartConnect(l);p!==null&&(u.startTarget=l,i.addMarker(l,p?Jb:ex))}),e.on(["global-connect.out","global-connect.cleanup"],function(c){var u=c.context.startTarget,l=c.context.canStartConnect;u&&i.removeMarker(u,l?Jb:ex)}),e.on(["global-connect.ended"],function(c){var u=c.context,l=u.startTarget,p={x:c.x,y:c.y},f=s.canStartConnect(l);if(f)return e.once("element.out",function(){e.once(["connect.ended","connect.canceled"],function(){e.fire("global-connect.drag.ended")}),n.start(null,l,p)}),!1})}$o.$inject=["eventBus","dragging","connect","canvas","toolManager","rules","mouse"],$o.prototype.start=function(e,t){this._dragging.init(e,"global-connect",{autoActivate:t,trapClick:!1,data:{context:{}}})},$o.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();return this.start(e,!!e)},$o.prototype.isActive=function(){var e=this._dragging.context();return e&&/^global-connect/.test(e.prefix)},$o.prototype.canStartConnect=function(e){return this._rules.allowed("connection.start",{source:e})};const cO={__depends__:[xf,yi,Ii,pc,ma],globalConnect:["type",$o]};function Df(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)}Df.$inject=["palette","create","elementFactory","spaceTool","lassoTool","handTool","globalConnect","translate"],Df.prototype.getPaletteEntries=function(){var e={},t=this._create,n=this._elementFactory,i=this._spaceTool,r=this._lassoTool,o=this._handTool,a=this._globalConnect,s=this._translate;function c(p,f,d,h,m){function g(R){var w=n.createShape(D({type:p},m));t.start(R,w)}return{group:f,className:d,title:h,action:{dragstart:g,click:g}}}function u(p){var f=n.createShape({type:"bpmn:SubProcess",x:0,y:0,isExpanded:!0}),d=n.createShape({type:"bpmn:StartEvent",x:40,y:82,parent:f});t.start(p,[f,d],{hints:{autoSelect:[f]}})}function l(p){t.start(p,n.createParticipantShape())}return D(e,{"hand-tool":{group:"tools",className:"bpmn-icon-hand-tool",title:s("Activate hand tool"),action:{click:function(p){o.activateHand(p)}}},"lasso-tool":{group:"tools",className:"bpmn-icon-lasso-tool",title:s("Activate lasso tool"),action:{click:function(p){r.activateSelection(p)}}},"space-tool":{group:"tools",className:"bpmn-icon-space-tool",title:s("Activate create/remove space tool"),action:{click:function(p){i.activateSelection(p)}}},"global-connect-tool":{group:"tools",className:"bpmn-icon-connection-multi",title:s("Activate global connect tool"),action:{click:function(p){a.start(p)}}},"tool-separator":{group:"tools",separator:!0},"create.start-event":c("bpmn:StartEvent","event","bpmn-icon-start-event-none",s("Create start event")),"create.intermediate-event":c("bpmn:IntermediateThrowEvent","event","bpmn-icon-intermediate-event-none",s("Create intermediate/boundary event")),"create.end-event":c("bpmn:EndEvent","event","bpmn-icon-end-event-none",s("Create end event")),"create.exclusive-gateway":c("bpmn:ExclusiveGateway","gateway","bpmn-icon-gateway-none",s("Create gateway")),"create.task":c("bpmn:Task","activity","bpmn-icon-task",s("Create task")),"create.data-object":c("bpmn:DataObjectReference","data-object","bpmn-icon-data-object",s("Create data object reference")),"create.data-store":c("bpmn:DataStoreReference","data-store","bpmn-icon-data-store",s("Create data store reference")),"create.subprocess-expanded":{group:"activity",className:"bpmn-icon-subprocess-expanded",title:s("Create expanded sub-process"),action:{dragstart:u,click:u}},"create.participant-expanded":{group:"collaboration",className:"bpmn-icon-participant",title:s("Create pool/participant"),action:{dragstart:l,click:l}},"create.group":c("bpmn:Group","artifact","bpmn-icon-group",s("Create group"))}),e};const uO={__depends__:[rO,uc,Ay,aO,sO,cO,oa],__init__:["paletteProvider"],paletteProvider:["type",Df]};var lO=250;function Lf(e,t,n,i,r){K.call(this,e);function o(s){var c=s.canExecute.replacements;k(c,function(u){var l=u.oldElementId,p={type:u.newElementType};if(!s.visualReplacements[l]){var f=t.get(l);D(p,{x:f.x,y:f.y});var d=n.createShape(p);i.addShape(d,f.parent);var h=nt('[data-element-id="'+ka(f.id)+'"]',s.dragGroup);h&&ae(h,{display:"none"});var m=r.addDragger(d,s.dragGroup);s.visualReplacements[l]=m,i.removeShape(d)}})}function a(s){var c=s.visualReplacements;k(c,function(u,l){var p=nt('[data-element-id="'+ka(l)+'"]',s.dragGroup);p&&ae(p,{display:"inline"}),u.remove(),c[l]&&delete c[l]})}e.on("shape.move.move",lO,function(s){var c=s.context,u=c.canExecute;c.visualReplacements||(c.visualReplacements={}),u&&u.replacements?o(c):a(c)})}Lf.$inject=["eventBus","elementRegistry","elementFactory","canvas","previewSupport"],oe(Lf,K);const pO={__depends__:[Co],__init__:["bpmnReplacePreview"],bpmnReplacePreview:["type",Lf]};var fO=1250,If=40,dO=20,hO=10,tx=20,nx=["x","y"],mO=Math.abs;function ix(e){e.on(["connect.hover","connect.move","connect.end"],fO,function(t){var n=t.context,i=n.canExecute,r=n.start,o=n.hover,a=n.source,s=n.target;t.originalEvent&&Mn(t.originalEvent)||(n.initialConnectionStart||(n.initialConnectionStart=n.connectionStart),i&&o&&gO(t,o,bO(o)),o&&_O(i,["bpmn:Association","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:SequenceFlow"])?(n.connectionStart=Qn(r),De(o,["bpmn:Event","bpmn:Gateway"])&&rx(t,Qn(o)),De(o,["bpmn:Task","bpmn:SubProcess"])&&yO(t,o),v(a,"bpmn:BoundaryEvent")&&s===a.host&&vO(t)):ox(i,"bpmn:MessageFlow")?(v(r,"bpmn:Event")&&(n.connectionStart=Qn(r)),v(o,"bpmn:Event")&&rx(t,Qn(o))):n.connectionStart=n.initialConnectionStart)})}ix.$inject=["eventBus"];function gO(e,t,n){nx.forEach(function(i){var r=ax(i,t);e[i]<t[i]+n?Mt(e,i,t[i]+n):e[i]>t[i]+r-n&&Mt(e,i,t[i]+r-n)})}function yO(e,t){var n=Qn(t);nx.forEach(function(i){xO(e,t,i)&&Mt(e,i,n[i])})}function vO(e){var t=e.context,n=t.source,i=t.target;if(!wO(t)){var r=Qn(n),o=Zt(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;mO(c-r[s])<If&&(c>r[s]?u=r[s]+If:u=r[s]-If,Mt(e,s,u))})}}function rx(e,t){Mt(e,"x",t.x),Mt(e,"y",t.y)}function ox(e,t){return e&&e.type===t}function _O(e,t){return Wi(t,function(n){return ox(e,n)})}function ax(e,t){return e==="x"?t.width:t.height}function bO(e){return v(e,"bpmn:Task")?hO:dO}function xO(e,t,n){return e[n]>t[n]+tx&&e[n]<t[n]+ax(n,t)-tx}function wO(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 yu,n.initDefaults(this._defaultSnaps)),n};function yu(){this._snapValues={}}yu.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)},yu.prototype.snap=function(e,t,n,i){var r=this._snapValues[t];return r&&l2(e[n],r[n],i)},yu.prototype.initDefaults=function(e){var t=this;k(e||{},function(n,i){k(n,function(r){t.add(i,r)})})};var EO=1250;function xi(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"],EO,function(r){var o=r.context,a=o.shape,s=o.snapContext,c=o.target;if(!(r.originalEvent&&Mn(r.originalEvent))&&!(No(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()})}xi.$inject=["elementRegistry","eventBus","snapping"],xi.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=Qn(i,e):o={x:e.x+Qn(i).x,y:e.y+Qn(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}),ke(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},xi.prototype.addSnapTargetPoints=function(e,t,n){var i=this.getSnapTargets(t,n);return k(i,function(r){if(ke(r)){ke(t)&&e.add("mid",Qn(r));return}if(rt(r)){if(r.waypoints.length<3)return;var o=r.waypoints.slice(1,-1);k(o,function(a){e.add("mid",a)});return}e.add("mid",Qn(r))}),!we(t.x)||!we(t.y)||this._elementRegistry.get(t.id)&&e.add("mid",Qn(t)),e},xi.prototype.getSnapTargets=function(e,t){return U_(t).filter(function(n){return!SO(n)})};function SO(e){return!!e.hidden}var sx=1500;function jo(e,t){t.invoke(xi,this),e.on(["create.move","create.end"],sx,AO),e.on(["create.move","create.end","shape.move.move","shape.move.end"],sx,function(n){var i=n.context,r=i.canExecute,o=i.target,a=r&&(r==="attach"||r.attach);a&&!No(n)&&RO(n,o)})}oe(jo,xi),jo.$inject=["eventBus","injector"],jo.prototype.initSnap=function(e){var t=xi.prototype.initSnap.call(this,e),n=e.shape,i=!!this._elementRegistry.get(n.id);return k(n.outgoing,function(r){var o=r.waypoints[0];o=o.original||o,t.setSnapOrigin(r.id+"-docking",ux(o,i,e))}),k(n.incoming,function(r){var o=r.waypoints[r.waypoints.length-1];o=o.original||o,t.setSnapOrigin(r.id+"-docking",ux(o,i,e))}),v(n,"bpmn:Participant")&&t.setSnapLocations(["top-left","bottom-right","mid"]),t},jo.prototype.addSnapTargetPoints=function(e,t,n){xi.prototype.addSnapTargetPoints.call(this,e,t,n);var i=this.getSnapTargets(t,n);k(i,function(o){(PO(o)||CO([t,o],"bpmn:TextAnnotation"))&&(e.add("top-left",G_(o)),e.add("bottom-right",W_(o)))});var r=this._elementRegistry;return k(t.incoming,function(o){if(r.get(t.id)){cx(i,o.source)||e.add("mid",be(o.source));var a=o.waypoints[0];e.add(o.id+"-docking",a.original||a)}}),k(t.outgoing,function(o){if(r.get(t.id)){cx(i,o.target)||e.add("mid",be(o.target));var a=o.waypoints[o.waypoints.length-1];e.add(o.id+"-docking",a.original||a)}}),v(n,"bpmn:SequenceFlow")&&(e=this.addSnapTargetPoints(e,t,n.parent)),e},jo.prototype.getSnapTargets=function(e,t){return xi.prototype.getSnapTargets.call(this,e,t).filter(function(n){return!v(n,"bpmn:Lane")})};function RO(e,t){var n=ge(t),i=Sg(e,t),r=e.context,o=r.shape,a;o.parent?a={x:0,y:0}:a=be(o),/top/.test(i)?Mt(e,"y",n.top-a.y):/bottom/.test(i)&&Mt(e,"y",n.bottom-a.y),/left/.test(i)?Mt(e,"x",n.left-a.x):/right/.test(i)&&Mt(e,"x",n.right-a.x)}function CO(e,t){return e.every(function(n){return v(n,t)})}function PO(e){return v(e,"bpmn:SubProcess")&&je(e)?!0:v(e,"bpmn:Participant")}function AO(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)&&Mt(e,"x",e.x),(i&&i>=e.y||o&&o<=e.y)&&Mt(e,"y",e.y)}}function cx(e,t){return e.indexOf(t)!==-1}function ux(e,t,n){return t?{x:e.x-n.x,y:e.y-n.y}:{x:e.x,y:e.y}}var TO=1250;function Ya(e,t){var n=this;e.on(["resize.start"],function(i){n.initSnap(i)}),e.on(["resize.move","resize.end"],TO,function(i){var r=i.context,o=r.shape,a=o.parent,s=r.direction,c=r.snapContext;if(!(i.originalEvent&&Mn(i.originalEvent))&&!No(i)){var u=c.pointsForTarget(a);u.initialized||(u=n.addSnapTargetPoints(u,o,a,s),u.initialized=!0),OO(s)&&Mt(i,"x",i.x),DO(s)&&Mt(i,"y",i.y),t.snap(i,u)}}),e.on(["resize.cleanup"],function(){t.hide()})}Ya.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=lx(n,i);return r.setSnapOrigin("corner",{x:o.x-e.x,y:o.y-e.y}),r},Ya.prototype.addSnapTargetPoints=function(e,t,n,i){var r=this.getSnapTargets(t,n);return k(r,function(o){e.add("corner",W_(o)),e.add("corner",G_(o))}),e.add("corner",lx(t,i)),e},Ya.$inject=["eventBus","snapping"],Ya.prototype.getSnapTargets=function(e,t){return U_(t).filter(function(n){return!MO(n,e)&&!rt(n)&&!kO(n)&&!ke(n)})};function lx(e,t){var n=be(e),i=ge(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 MO(e,t){return e.host===t}function kO(e){return!!e.hidden}function OO(e){return e==="n"||e==="s"}function DO(e){return e==="e"||e==="w"}var LO=7,IO=1e3;function Sr(e){this._canvas=e,this._asyncHide=Ru(vn(this.hide,this),IO)}Sr.$inject=["canvas"],Sr.prototype.snap=function(e,t){var n=e.context,i=n.snapContext,r=i.getSnapLocations(),o={x:No(e,"x"),y:No(e,"y")};k(r,function(a){var s=i.getSnapOrigin(a),c={x:e.x+s.x,y:e.y+s.y};if(k(["x","y"],function(u){var l;o[u]||(l=t.snap(c,a,u,LO),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),k(["x","y"],function(a){var s=o[a];Vt(s)&&Mt(e,a,s.originValue)})},Sr.prototype._createLine=function(e){var t=this._canvas.getLayer("snap"),n=he("path");return ae(n,{d:"M0,0 L0,0"}),He(n).add("djs-snap-line"),Re(t,n),{update:function(i){we(i)?e==="horizontal"?ae(n,{d:"M-100000,"+i+" L+100000,"+i,display:""}):ae(n,{d:"M "+i+",-100000 L "+i+", +100000",display:""}):ae(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(){k(this._snapLines,function(e){e.update()})};const NO={__depends__:[{__init__:["createMoveSnapping","resizeSnapping","snapping"],createMoveSnapping:["type",xi],resizeSnapping:["type",Ya],snapping:["type",Sr]}],__init__:["connectSnapping","createMoveSnapping"],connectSnapping:["type",ix],createMoveSnapping:["type",jo]};var px=300;function Ce(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=nt(Ce.INPUT_SELECTOR,this._container),this._resultsContainer=nt(Ce.RESULTS_CONTAINER_SELECTOR,this._container),this._canvas.getContainer().appendChild(this._container),t.on(["canvas.destroy","diagram.destroy","drag.init","elements.changed"],this.close,this)}Ce.$inject=["canvas","eventBus","selection","translate"],Ce.prototype._bindEvents=function(){var e=this;function t(n,i,r,o){e._eventMaps.push({el:n,type:r,listener:Pn.bind(n,i,r,o)})}t(document,"html","click",function(n){e.close(!1)}),t(this._container,Ce.INPUT_SELECTOR,"click",function(n){n.stopPropagation(),n.delegateTarget.focus()}),t(this._container,Ce.RESULT_SELECTOR,"mouseover",function(n){n.stopPropagation(),e._scrollToNode(n.delegateTarget),e._preselect(n.delegateTarget)}),t(this._container,Ce.RESULT_SELECTOR,"click",function(n){n.stopPropagation(),e._select(n.delegateTarget)}),t(this._container,Ce.INPUT_SELECTOR,"keydown",function(n){Ht("ArrowUp",n)&&n.preventDefault(),Ht("ArrowDown",n)&&n.preventDefault()}),t(this._container,Ce.INPUT_SELECTOR,"keyup",function(n){if(Ht("Escape",n))return e.close();if(Ht("Enter",n)){var i=e._getCurrentResult();return i?e._select(i):e.close(!1)}if(Ht("ArrowUp",n))return e._scrollToDirection(!0);if(Ht("ArrowDown",n))return e._scrollToDirection();Ht(["ArrowLeft","ArrowRight"],n)||e._search(n.delegateTarget.value)})},Ce.prototype._unbindEvents=function(){this._eventMaps.forEach(function(e){Pn.unbind(e.el,e.type,e.listener)})},Ce.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=nt(Ce.RESULT_SELECTOR,this._resultsContainer);this._scrollToNode(i),this._preselect(i)}},Ce.prototype._scrollToDirection=function(e){var t=this._getCurrentResult();if(t){var n=e?t.previousElementSibling:t.nextElementSibling;n&&(this._scrollToNode(n),this._preselect(n))}},Ce.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)}},Ce.prototype._clearResults=function(){ms(this._resultsContainer),this._results={},this._eventBus.fire("searchPad.cleared")},Ce.prototype._getCurrentResult=function(){return nt(Ce.RESULT_SELECTED_SELECTOR,this._resultsContainer)},Ce.prototype._createResultNode=function(e,t){var n=ut(Ce.RESULT_HTML);return e.primaryTokens.length>0&&fx(n,e.primaryTokens,Ce.RESULT_PRIMARY_HTML),fx(n,e.secondaryTokens,Ce.RESULT_SECONDARY_HTML),an(n,Ce.RESULT_ID_ATTRIBUTE,t),this._resultsContainer.appendChild(n),n},Ce.prototype.registerProvider=function(e){this._searchProvider=e},Ce.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,mt(this._canvas.getContainer()).add("djs-search-open"),mt(this._container).add("open"),this._searchInput.focus(),this._eventBus.fire("searchPad.opened"))},Ce.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,mt(this._canvas.getContainer()).remove("djs-search-open"),mt(this._container).remove("open"),this._clearResults(),this._searchInput.value="",this._searchInput.blur(),this._eventBus.fire("searchPad.closed"),this._canvas.restoreFocus())},Ce.prototype.toggle=function(){this.isOpen()?this.close():this.open()},Ce.prototype.isOpen=function(){return this._open},Ce.prototype._preselect=function(e){var t=this._getCurrentResult();if(e!==t){t&&mt(t).remove(Ce.RESULT_SELECTED_CLASS);var n=an(e,Ce.RESULT_ID_ATTRIBUTE),i=this._results[n].element;mt(e).add(Ce.RESULT_SELECTED_CLASS),this._canvas.scrollToElement(i,{top:px}),this._selection.select(i),this._eventBus.fire("searchPad.preselected",i)}},Ce.prototype._select=function(e){var t=an(e,Ce.RESULT_ID_ATTRIBUTE),n=this._results[t].element;this._cachedSelection=null,this._cachedViewbox=null,this.close(!1),this._canvas.scrollToElement(n,{top:px}),this._selection.select(n),this._eventBus.fire("searchPad.selected",n)},Ce.prototype._getBoxHtml=function(){const e=ut(Ce.BOX_HTML),t=nt(Ce.INPUT_SELECTOR,e);return t&&t.setAttribute("aria-label",this._translate("Search in diagram")),e};function fx(e,t,n){var i=BO(t),r=ut(n);r.innerHTML=i,e.appendChild(r)}function BO(e){var t="";return e.forEach(function(n){var i=bv(n.value||n.matched||n.normal),r=n.match||n.matched;r?t+='<b class="'+Ce.RESULT_HIGHLIGHT_CLASS+'">'+i+"</b>":t+=i}),t!==""?t:null}Ce.CONTAINER_SELECTOR=".djs-search-container",Ce.INPUT_SELECTOR=".djs-search-input input",Ce.RESULTS_CONTAINER_SELECTOR=".djs-search-results",Ce.RESULT_SELECTOR=".djs-search-result",Ce.RESULT_SELECTED_CLASS="djs-search-result-selected",Ce.RESULT_SELECTED_SELECTOR="."+Ce.RESULT_SELECTED_CLASS,Ce.RESULT_ID_ATTRIBUTE="data-result-id",Ce.RESULT_HIGHLIGHT_CLASS="djs-search-highlight",Ce.BOX_HTML=`<div class="djs-search-container djs-scrollable">
|
|
335
|
+
</svg>`},Q2=900;function za(e,t,n,i){this._distributeElements=t,this._translate=n,this._popupMenu=e,this._rules=i,e.registerProvider("align-elements",Q2,this)}za.$inject=["popupMenu","distributeElements","translate","rules"],za.prototype.getPopupMenuEntries=function(e){var t={};return this._isAllowed(e)&&L(t,this._getEntries(e)),t},za.prototype._isAllowed=function(e){return this._rules.allowed("elements.distribute",{elements:e})},za.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:fb.horizontal,action:function(o,a){t.trigger(e,"horizontal"),i.close()}},"distribute-elements-vertical":{group:"distribute",title:n("Distribute elements vertically"),imageHtml:fb.vertical,action:function(o,a){t.trigger(e,"vertical"),i.close()}}};return r};const J2={__depends__:[mf,Z2],__init__:["bpmnDistributeElements","distributeElementsMenuProvider"],bpmnDistributeElements:["type",ou],distributeElementsMenuProvider:["type",za]};var db="is not a registered action",ek="is already registered";function ei(e,t){this._eventBus=e,this._actions={};var n=this;e.on("diagram.init",function(){n._registerDefaultActions(t),e.fire("editorActions.init",{editorActions:n})})}ei.$inject=["eventBus","injector"],ei.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=be(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&&(be(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)})},ei.prototype.trigger=function(e,t){if(!this._actions[e])throw Rf(e,db);var n=this._eventBus.fire("editorActions.allowed",{action:e,opts:t});if(n!==!1)return this._actions[e](t)},ei.prototype.register=function(e,t){var n=this;if(typeof e=="string")return this._registerAction(e,t);k(e,function(i,r){n._registerAction(r,i)})},ei.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw Rf(e,ek);this._actions[e]=t},ei.prototype.unregister=function(e){if(!this.isRegistered(e))throw Rf(e,db);this._actions[e]=void 0},ei.prototype.getActions=function(){return Object.keys(this._actions)},ei.prototype.isRegistered=function(e){return!!this._actions[e]};function Rf(e,t){return new Error(e+" "+t)}const tk={__init__:["editorActions"],editorActions:["type",ei]};function au(e){e.invoke(ei,this)}ae(au,ei),au.$inject=["injector"],au.prototype._registerDefaultActions=function(e){ei.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=[],R=h.type;m.length&&(g=Ie(m,function(w){return!v(w,"bpmn:Lane")}),u.trigger(g,R))}),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;v(h,"bpmn:Collaboration")?g=n.filter(function(R){return v(R.parent,"bpmn:Collaboration")}):g=n.filter(function(R){return R!==h&&!v(R.parent,"bpmn:SubProcess")}),m=At(g),p.moveElements(g,{x:-m.x,y:-m.y},h)}),i&&d&&this._registerAction("replaceElement",function(h){d.triggerEntry("replace","click",h)})};const nk={__depends__:[tk],editorActions:["type",au]};function hb(e){e.on(["create.init","shape.move.init"],function(t){var n=t.context,i=t.shape;Le(i,["bpmn:Participant","bpmn:SubProcess","bpmn:TextAnnotation"])&&(n.gridSnappingContext||(n.gridSnappingContext={}),n.gridSnappingContext.snapLocation="top-left")})}hb.$inject=["eventBus"];function qr(e,t){X.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;wn(a)?r.newBounds=n.snapComplex(c,a):r.newBounds=n.snapSimple(s,c)}})}qr.$inject=["eventBus","gridSnapping","modeling"],ae(qr,X),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),L(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),L(e,o),e};var ik=2e3;function mb(e,t){e.on(["spaceTool.move","spaceTool.end"],ik,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)}})}mb.$inject=["eventBus","gridSnapping"];const rk={__init__:["gridSnappingResizeBehavior","gridSnappingSpaceToolBehavior"],gridSnappingResizeBehavior:["type",qr],gridSnappingSpaceToolBehavior:["type",mb]};var su=10;function Cf(e,t,n){return n||(n="round"),Math[n](e/t)*t}var ok=1200,ak=800;function _r(e,t,n){var i=!n||n.active!==!1;this._eventBus=t;var r=this;t.on("diagram.init",ak,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"],ok,function(o){var a=o.originalEvent;if(!(!r.active||a&&Tn(a))){var s=o.context,c=s.gridSnappingContext;c||(c=s.gridSnappingContext={}),["x","y"].forEach(function(u){var l={},f=ck(o,u,e);f&&(l.offset=f);var p=sk(o,u);p&&L(l,p),No(o,u)||r.snapEvent(o,u,l)})}})}_r.prototype.snapEvent=function(e,t,n){var i=this.snapValue(e[t],n);Dt(e,t,i)},_r.prototype.getGridSpacing=function(){return su},_r.prototype.snapValue=function(e,t){var n=0;t&&t.offset&&(n=t.offset),e+=n,e=Cf(e,su);var i,r;return t&&t.min&&(i=t.min,Se(i)&&(i=Cf(i+n,su,"ceil"),e=Math.max(e,i))),t&&t.max&&(r=t.max,Se(r)&&(r=Cf(r+n,su,"floor"),e=Math.min(e,r))),e-=n,e},_r.prototype.isActive=function(){return this.active},_r.prototype.setActive=function(e){this.active=e,this._eventBus.fire("gridSnapping.toggle",{active:e})},_r.prototype.toggleActive=function(){this.setActive(!this.active)},_r.$inject=["elementRegistry","eventBus","config.gridSnapping"];function sk(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&&(cu(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&&(cu(t)?yb(s)?a.x.max=c.left:a.x.min=c.right:gb(s)?a.y.max=c.top:a.y.min=c.bottom),u&&(cu(t)?yb(s)?a.x.min=u.left:a.x.max=u.right:gb(s)?a.y.min=u.top:a.y.max=u.bottom),a[t]}function ck(e,t,n){var i=e.context,r=e.shape,o=i.gridSnappingContext,a=o.snapLocation,s=o.snapOffset;return s&&Se(s[t])||(s||(s=o.snapOffset={}),Se(s[t])||(s[t]=0),!r)||(n.get(r.id)||(cu(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 cu(e){return e==="x"}function gb(e){return e.indexOf("n")!==-1}function yb(e){return e.indexOf("w")!==-1}const uk={__depends__:[rk],__init__:["gridSnapping"],gridSnapping:["type",_r]};var lk=2e3;function vb(e,t,n){e.on("autoPlace",lk,function(i){var r=i.source,o=xe(r),a=i.shape,s=yv(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],v(a,"bpmn:TextAnnotation")&&(pk(c)?u.offset=-a.width/2:u.offset=-a.height/2),s[c]=t.snapValue(s[c],u))}),s})}vb.$inject=["eventBus","gridSnapping","elementRegistry"];function pk(e){return e==="x"}var fk=1750;function _b(e,t,n){t.on(["create.start","shape.move.start"],fk,function(i){var r=i.context,o=r.shape,a=e.getRootElement();if(!(!v(o,"bpmn:Participant")||!v(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}))}})}_b.$inject=["canvas","eventBus","gridSnapping"];var dk=3e3;function uu(e,t,n){X.call(this,e),this._gridSnapping=t;var i=this;this.postExecuted(["connection.create","connection.layout"],dk,function(r){var o=r.context,a=o.connection,s=o.hints||{},c=a.waypoints;s.connectionStart||s.connectionEnd||s.createElementsBehavior===!1||hk(c)&&n.updateWaypoints(a,i.snapMiddleSegments(c))})}uu.$inject=["eventBus","gridSnapping","modeling"],ae(uu,X),uu.prototype.snapMiddleSegments=function(e){var t=this._gridSnapping,n;e=e.slice();for(var i=1;i<e.length-2;i++)n=yk(t,e[i],e[i+1]),e[i]=n[0],e[i+1]=n[1];return e};function hk(e){return e.length>3}function mk(e){return e==="h"}function gk(e){return e==="v"}function yk(e,t,n){var i=Ti(t,n),r={};return mk(i)&&(r.y=e.snapValue(t.y)),gk(i)&&(r.x=e.snapValue(t.x)),("x"in r||"y"in r)&&(t=L({},t,r),n=L({},n,r)),[t,n]}const vk={__depends__:[uk,{__init__:["gridSnappingAutoPlaceBehavior","gridSnappingParticipantBehavior","gridSnappingLayoutConnectionBehavior"],gridSnappingAutoPlaceBehavior:["type",vb],gridSnappingParticipantBehavior:["type",_b],gridSnappingLayoutConnectionBehavior:["type",uu]}],__init__:["bpmnGridSnapping"],bpmnGridSnapping:["type",hb]};var _k=30,bb=30;function Va(e,t){this._interactionEvents=t;var n=this;e.on(["interactionEvents.createHit","interactionEvents.updateHit"],function(i){var r=i.element,o=i.gfx;if(v(r,"bpmn:Lane"))return n._createParticipantHit(r,o);if(v(r,"bpmn:Participant"))return Fe(r)?n._createParticipantHit(r,o):n._createDefaultHit(r,o);if(v(r,"bpmn:SubProcess"))return Fe(r)?n._createSubProcessHit(r,o):n._createDefaultHit(r,o)})}Va.$inject=["eventBus","interactionEvents"],Va.prototype._createDefaultHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createDefaultHit(e,t),!0},Va.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=Ut(e)?{width:_k,height:e.height}:{width:e.width,height:bb};return this._interactionEvents.createBoxHit(t,"all",n),!0},Va.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:bb}),!0};const bk={__init__:["bpmnInteractionEvents"],bpmnInteractionEvents:["type",Va]};function lu(e){e.invoke(To,this)}ae(lu,To),lu.$inject=["injector"],lu.prototype.registerBindings=function(e,t){To.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 xk={__depends__:[Jp],__init__:["keyboardBindings"],keyboardBindings:["type",lu]};var wk={moveSpeed:1,moveSpeedAccelerated:10},Ek=1500,xb="left",wb="up",Eb="right",Sb="down",Sk={ArrowLeft:xb,Left:xb,ArrowUp:wb,Up:wb,ArrowRight:Eb,Right:Eb,ArrowDown:Sb,Down:Sb},Rk={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 Rb(e,t,n,i,r){var o=this;this._config=L({},wk,e||{}),t.addListener(Ek,function(a){var s=a.keyEvent,c=Sk[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=Rk[a](u),f=i.allowed("elements.move",{shapes:c,hints:{keyboardMove:!0}});f&&n.moveElements(c,l)}}}Rb.$inject=["config.keyboardMoveSelection","keyboard","modeling","rules","selection"];const Ck={__depends__:[Jp,Kn],__init__:["keyboardMoveSelection"],keyboardMoveSelection:["type",Rb]};var Cb=10;function Ga(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=wR(l,f,u),c.newBounds=SR(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:ye(l)})}function s(c){var u=c.shape,l=c.canExecute,f=c.newBounds;if(l){if(f=Vh(f),!Pk(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)})}Ga.prototype.canResize=function(e){var t=this._rules,n=ii(e,["newBounds","shape","delta","direction"]);return t.allowed("shape.resize",n)},Ga.prototype.activate=function(e,t,n){var i=this._dragging,r,o;if(typeof n=="string"&&(n={direction:n}),r=L({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,Pb(t,o),"resize",{autoActivate:!0,cursor:Ak(o),data:{shape:t,context:r}})},Ga.prototype.computeMinResizeBox=function(e){var t=e.shape,n=e.direction,i,r;return i=e.minDimensions||{width:Cb,height:Cb},r=Mm(t,e.childrenBoxPadding),RR(n,t,i,r)},Ga.$inject=["eventBus","rules","modeling","dragging"];function Pk(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}function Pb(e,t){var n=xe(e),i=ye(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 Ak(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 Ab="djs-resizing",Tb="resize-not-ok",Tk=500;function Mb(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,Ab)),s.width>5&&se(c,{x:s.x,width:s.width}),s.height>5&&se(c,{y:s.y,height:s.height}),o.canExecute?He(c).remove(Tb):He(c).add(Tb)}function r(o){var a=o.shape,s=o.frame;s&&Ht(o.frame),t.removeMarker(a,Ab)}e.on("resize.move",Tk,function(o){i(o.context)}),e.on("resize.cleanup",function(o){r(o.context)})}Mb.$inject=["eventBus","canvas","previewSupport"];var pu=-6,fu=8,du=20,Wa="djs-resizer",Mk=["n","w","s","e","nw","ne","se","sw"];function br(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&&k(a,_n(r.addResizer,r))}),e.on("shape.changed",function(o){var a=o.element;n.isSelected(a)&&(r.removeResizers(),r.addResizer(a))})}br.prototype.makeDraggable=function(e,t,n){var i=this._resize;function r(o){cr(o)&&i.activate(o,e,n)}Ce.bind(t,"mousedown",r),Ce.bind(t,"touchstart",r)},br.prototype._createResizer=function(e,t,n,i){var r=this._getResizersParent(),o=kk(i),a=me("g");He(a).add(Wa),He(a).add(Wa+"-"+e.id),He(a).add(Wa+"-"+i),Pe(r,a);var s=me("rect");se(s,{x:-fu/2+o.x,y:-fu/2+o.y,width:fu,height:fu}),He(s).add(Wa+"-visual"),Pe(a,s);var c=me("rect");return se(c,{x:-du/2+o.x,y:-du/2+o.y,width:du,height:du}),He(c).add(Wa+"-hit"),Pe(a,c),Ps(a,t,n),a},br.prototype.createResizer=function(e,t){var n=Pb(e,t),i=this._createResizer(e,n.x,n.y,t);this.makeDraggable(e,i,t)},br.prototype.addResizer=function(e){var t=this;rt(e)||k(Mk,function(n){t._resize.canResize({shape:e,direction:n})&&t.createResizer(e,n)})},br.prototype.removeResizers=function(){var e=this._getResizersParent();vs(e)},br.prototype._getResizersParent=function(){return this._canvas.getLayer("resizers")},br.$inject=["eventBus","canvas","selection","resize"];function kk(e){var t={x:0,y:0};return e.indexOf("e")!==-1?t.x=-pu:e.indexOf("w")!==-1&&(t.x=pu),e.indexOf("s")!==-1?t.y=-pu:e.indexOf("n")!==-1&&(t.y=pu),t}const kb={__depends__:[yi,Ii,Co],__init__:["resize","resizePreview","resizeHandles"],resize:["type",Ga],resizePreview:["type",Mb],resizeHandles:["type",br]};var Dk=2e3;function Ua(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"],Dk,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||Le(c,["bpmn:Activity","bpmn:Event","bpmn:TextAnnotation","bpmn:Participant"]))&&i.activate(c)}}Ua.$inject=["eventBus","bpmnFactory","canvas","directEditing","modeling","resizeHandles","textRenderer"],Ua.prototype.activate=function(e){var t=Hn(e);if(t!==void 0){var n={text:t},i=this.getEditingBBox(e);L(n,i);var r={},o=n.style||{};return L(o,{backgroundColor:null,border:null}),(Le(e,["bpmn:Task","bpmn:Participant","bpmn:Lane","bpmn:CallActivity"])||Db(e))&&L(r,{centerVertically:!0}),rr(e)&&(L(r,{resizable:!0,autoResize:!0}),L(o,{backgroundColor:"#ffffff",border:"1px solid #ccc"})),v(e,"bpmn:TextAnnotation")&&(L(r,{resizable:!0,autoResize:!0}),L(o,{backgroundColor:"#ffffff",border:"1px solid #ccc"})),L(n,{options:r,style:o}),n}},Ua.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(v(e,"bpmn:Lane")||Ik(e)){var h=Ut(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};L(o,m),L(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(Lk(e)){var g=Ut(e),R=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};L(o,R),L(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)"})}(Le(e,["bpmn:Task","bpmn:CallActivity"])||Db(e))&&(L(o,{width:i.width,height:i.height}),L(d,{fontSize:f+"px",lineHeight:p,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px"})),Ok(e)&&(L(o,{width:i.width,x:i.x}),L(d,{fontSize:f+"px",lineHeight:p,paddingTop:7*a+"px",paddingBottom:7*a+"px",paddingLeft:5*a+"px",paddingRight:5*a+"px"}));var w=1,b=i.width+2*w;if(n.labelTarget&&(L(o,{width:b,height:i.height+2*w,x:i.x-w,y:i.y-w}),L(d,{fontSize:u+"px",lineHeight:l})),rr(n)&&!Ms(n)&&!De(n)){var x=dl(e),S=t.getAbsoluteBBox({x:x.x,y:x.y,width:0,height:0}),M=u,N=Nr.width*a+2*w;L(o,{width:N,height:M+2*w,x:S.x-N/2,y:S.y-M/2-w}),L(d,{fontSize:u+"px",lineHeight:l})}return v(e,"bpmn:TextAnnotation")&&(L(o,{width:i.width+2*w,height:i.height+2*w,x:i.x-w,y:i.y-w,minWidth:30*a,minHeight:10*a}),L(d,{textAlign:"left",paddingTop:fo*a+"px",paddingBottom:fo*a+"px",paddingLeft:fo*a+"px",paddingRight:fo*a+"px",fontSize:f+"px",lineHeight:p})),{bounds:o,style:d}},Ua.prototype.update=function(e,t,n,i){var r,o;v(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}),Nk(t)&&(t=null),this._modeling.updateLabel(e,t,r)};function Db(e){return v(e,"bpmn:SubProcess")&&!Fe(e)}function Ok(e){return v(e,"bpmn:SubProcess")&&Fe(e)}function Lk(e){return v(e,"bpmn:Participant")&&!Fe(e)}function Ik(e){return v(e,"bpmn:Participant")&&Fe(e)}function Nk(e){return!e||!e.trim()}var Ob="djs-element-hidden",Lb="djs-label-hidden";function Ib(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,v(o,"bpmn:TextAnnotation")){a=t.getAbsoluteBBox(o),s=me("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=me("path");se(f,{d:l,strokeWidth:2,stroke:Bk(o)}),Pe(s,f),Pe(r,s),Jt(s,o.x,o.y)}v(o,"bpmn:TextAnnotation")||o.labelTarget?t.addMarker(o,Ob):(v(o,"bpmn:Task")||v(o,"bpmn:CallActivity")||v(o,"bpmn:SubProcess")||v(o,"bpmn:Participant")||v(o,"bpmn:Lane"))&&t.addMarker(o,Lb)}),e.on("directEditing.resize",function(c){if(v(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}});se(i.path,{d:p})}}),e.on(["directEditing.complete","directEditing.cancel"],function(c){var u=c.active;u&&(t.removeMarker(u.element.label||u.element,Ob),t.removeMarker(o,Lb)),o=void 0,a=void 0,s&&(Ht(s),s=void 0)})}Ib.$inject=["eventBus","canvas","pathMap"];function Bk(e,t){var n=Ge(e);return n.get("stroke")||t||"black"}const $k={__depends__:[kp,kb,ab],__init__:["labelEditingProvider","labelEditingPreview"],labelEditingProvider:["type",Ua],labelEditingPreview:["type",Ib]};var jk=500,Fk=1e3;function bi(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){S1(o)||i.createOutline(o)}e.on("element.hover",function(o){r(o.element)}),e.on("selection.changed",function(o){k(o.newSelection,r)}),e.on(["shape.changed","connection.changed"],jk,function(o){var a=o.element,s=o.gfx,c=nt(".djs-outline",s);c&&i.updateOutline(a,c)})}bi.prototype.createOutline=function(e){var t=this._elementRegistry.getGraphics(e);if(!t)throw new Error("cannot create outline for non-rendered element");var n=nt(".djs-outline",t);return n||(n=this.getOutline(e)||this._createOutlineGfx(),Pe(t,n),this.updateOutline(e,n)),n},bi.prototype._createOutlineGfx=function(){var e=me("rect");return se(e,L({x:0,y:0,rx:4,width:100,height:100},this._outlineStyle)),e},bi.prototype.updateOutline=function(e,t){e.waypoints?this.updateConnectionOutline(t,e):this.updateShapeOutline(t,e)},bi.prototype.updateShapeOutline=function(e,t){var n=!1,i=this._getProviders();i.length&&k(i,function(r){n=n||r.updateOutline(t,e)}),n||se(e,{x:-this._outlineOffset,y:-this._outlineOffset,width:t.width+this._outlineOffset*2,height:t.height+this._outlineOffset*2})},bi.prototype.updateConnectionOutline=function(e,t){var n=At(t);se(e,{x:n.x-this._outlineOffset,y:n.y-this._outlineOffset,width:n.width+this._outlineOffset*2,height:n.height+this._outlineOffset*2})},bi.prototype.registerProvider=function(e,t){t||(t=e,e=Fk),this._eventBus.on("outline.getProviders",e,function(n){n.providers.push(t)})},bi.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"outline.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},bi.prototype.getOutline=function(e){var t,n=this._getProviders();return k(n,function(i){Wt(i.getOutline)&&(t=t||i.getOutline(e))}),t},bi.$inject=["eventBus","styles","elementRegistry"];var hu=6;function Pf(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)})}Pf.prototype._updateMultiSelectionOutline=function(e){var t=this._canvas.getLayer("selectionOutline");vs(t);var n=e.length>1,i=this._canvas.getContainer();if(He(i)[n?"add":"remove"]("djs-multi-select"),!!n){var r=Hk(At(e)),o=me("rect");se(o,L({rx:3},r)),He(o).add("djs-selection-outline"),Pe(t,o)}},Pf.$inject=["eventBus","canvas","selection"];function Hk(e){return{x:e.x-hu,y:e.y-hu,width:e.width+hu*2,height:e.height+hu*2}}const Af={__depends__:[Kn],__init__:["outline","multiSelectionOutline"],outline:["type",bi],multiSelectionOutline:["type",Pf]},Nb=["bpmn:Event","bpmn:SequenceFlow","bpmn:Gateway"],Bb={class:"bjs-label-link",stroke:"var(--element-selected-outline-secondary-stroke-color)",strokeDasharray:"5, 5"},zk=15,mu=2;function $b(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=>Le(h,Nb));if(p.length===1){const h=p[0];De(h)?a(h,h.labelTarget):(d=h.labels)!=null&&d.length&&a(h.labels[0],h)}if(p.length===2){const h=p.find(De),m=p.find(g=>{var R;return(R=g.labels)==null?void 0:R.includes(h)});h&&m&&a(h,m)}}),e.on("shape.changed",function({element:f}){var p;!Le(f,Nb)||!l(f)||(De(f)?a(f,f.labelTarget):(p=f.labels)!=null&&p.length&&a(f.labels[0],f))});function a(f,p){const d=Ko([xe(p),xe(f)],Bb),h=d.getAttribute("d"),g=r.isSelected(f)?c(f):u(f),R=Jo(g,h);if(!R)return;const b=r.isSelected(p)?c(p):u(p),x=Jo(b,h)||xe(p);ua(x,R)<zk||(ol(d,[x,R]),Pe(o,d))}function s(){ys(`.${Bb.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")-mu,y:f.y+xr(p,"y")-mu,width:xr(p,"width")+mu*2,height:xr(p,"height")+mu*2};return ml(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 dm(h)}}function u(f){return n.getShapePath(f)}function l(f){return r.isSelected(f)}}$b.$inject=["eventBus","canvas","graphicsFactory","outline","selection"];function xr(e,t){return parseFloat(se(e,t)||0)}const Vk={__depends__:[Kn,Af],__init__:["labelLink"],labelLink:["type",$b]};var Gk=new Ro("tt");function Wk(e){var t=ut('<div class="djs-tooltip-container" />');return gn(t,{position:"absolute",width:"0",height:"0"}),e.insertBefore(t,e.firstChild),t}function Uk(e,t,n){gn(e,{left:t+"px",top:n+"px"})}function Tf(e,t){e.style.display=t===!1?"none":""}var jb="djs-tooltip",Mf="."+jb;function xn(e,t){this._eventBus=e,this._canvas=t,this._ids=Gk,this._tooltipDefaults={show:{minZoom:.7,maxZoom:5}},this._tooltips={},this._tooltipRoot=Wk(t.getContainer());var n=this;Cn.bind(this._tooltipRoot,Mf,"mousedown",function(i){i.stopPropagation()}),Cn.bind(this._tooltipRoot,Mf,"mouseover",function(i){n.trigger("mouseover",i)}),Cn.bind(this._tooltipRoot,Mf,"mouseout",function(i){n.trigger("mouseout",i)}),this._init()}xn.$inject=["eventBus","canvas"],xn.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=L({},this._tooltipDefaults,e,{id:t}),this._addTooltip(e),e.timeout&&this.setTimeout(e),t},xn.prototype.trigger=function(e,t){var n=t.delegateTarget||t.target,i=this.get(sn(n,"data-tooltip-id"));i&&(e==="mouseover"&&i.timeout&&this.clearTimeout(i),e==="mouseout"&&i.timeout&&(i.timeout=1e3,this.setTimeout(i)))},xn.prototype.get=function(e){return typeof e!="string"&&(e=e.id),this._tooltips[e]},xn.prototype.clearTimeout=function(e){if(e=this.get(e),!!e){var t=e.removeTimer;t&&(clearTimeout(t),e.removeTimer=null)}},xn.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)}},xn.prototype.remove=function(e){var t=this.get(e);t&&(pi(t.html),pi(t.htmlContainer),delete t.htmlContainer,delete this._tooltips[t.id])},xn.prototype.show=function(){Tf(this._tooltipRoot)},xn.prototype.hide=function(){Tf(this._tooltipRoot,!1)},xn.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},xn.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)),wn(n)&&(n=ut(n)),i=ut('<div data-tooltip-id="'+t+'" class="'+jb+'">'),gn(i,{position:"absolute"}),i.appendChild(n),e.type&>(i).add("djs-tooltip-"+e.type),e.className&>(i).add(e.className),e.htmlContainer=i,r.appendChild(i),this._tooltips[t]=e,this._updateTooltip(e)},xn.prototype._updateTooltip=function(e){var t=e.position,n=e.htmlContainer;Uk(n,t.x,t.y)},xn.prototype._updateTooltipVisibilty=function(e){k(this._tooltips,function(t){var n=t.show,i=t.htmlContainer,r=!0;n&&((n.minZoom>e.scale||n.maxZoom<e.scale)&&(r=!1),Tf(i,r))})},xn.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 Yk={__init__:["tooltips"],tooltips:["type",xn]};var qk="flow elements must be children of pools/participants",Kk="Data object must be placed within a pool/participant.";function Fb(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;v(s,"bpmn:Collaboration")&&(v(a,"bpmn:FlowNode")?i(r,n(qk)):v(a,"bpmn:DataObjectReference")&&i(r,n(Kk)))})}Fb.$inject=["eventBus","tooltips","translate"];const Xk={__depends__:[Yk],__init__:["modelingFeedback"],modelingFeedback:["type",Fb]};var Zk=500,Qk=1250,Jk=1500,gu=Math.round;function eD(e){return{x:e.x+gu(e.width/2),y:e.y+gu(e.height/2)}}function Hb(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",Jk,function(s){var c=s.context,u=s.shape,l=i.get().slice();l.indexOf(u)===-1&&(l=[u]),l=tD(l),L(c,{shapes:l,validatedShapes:l,shape:u})}),e.on("shape.move.start",Qk,function(s){var c=s.context,u=c.validatedShapes,l;if(l=c.canExecute=o(u),!l)return!1}),e.on("shape.move.move",Zk,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=gu(u.x),u.y=gu(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=xo(s);if(!c)throw new Error("must supply DOM mousedown event");return a(c,s.element)}});function a(s,c,u,l){if(Gt(u)&&(l=u,u=!1),!(c.waypoints||!c.parent)&&!He(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}Hb.$inject=["eventBus","dragging","modeling","selection","rules"];function tD(e){var t=Jr(e,"id");return Ie(e,function(n){for(;n=n.parent;)if(t[n.id])return!1;return!0})}var zb=499,kf="djs-dragging",Vb="drop-ok",Gb="drop-not-ok",Wb="new-parent",Ub="attach-ok";function Yb(e,t,n,i){function r(c){var u=o(c),l=nD(u);return l}function o(c){var u=Xo(c),l=u.flatMap(d=>(d.incoming||[]).concat(d.outgoing||[])),f=u.concat(l),p=[...new Set(f)];return p}function a(c,u){[Ub,Vb,Gb,Wb].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,kf),c.allDraggedElements?c.allDraggedElements.push(u):c.allDraggedElements=[u]}e.on("shape.move.start",zb,function(c){var u=c.context,l=u.shapes,f=u.allDraggedElements,p=r(l);if(!u.dragGroup){var d=me("g");se(d,n.cls("djs-drag-group",["no-events"]));var h=t.getActiveLayer();Pe(h,d),u.dragGroup=d}p.forEach(function(m){i.addDragger(m,u.dragGroup)}),f?f=Ru([f,o(l)]):f=o(l),k(f,function(m){t.addMarker(m,kf)}),u.allDraggedElements=f,u.differentParents=iD(l)}),e.on("shape.move.move",zb,function(c){var u=c.context,l=u.dragGroup,f=u.target,p=u.shape.parent,d=u.canExecute;f&&(d==="attach"?a(f,Ub):u.canExecute&&p&&f.id!==p.id?a(f,Wb):a(f,u.canExecute?Vb:Gb)),Jt(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;k(l,function(p){t.removeMarker(p,kf)}),f&&Ht(f)}),this.makeDraggable=s}Yb.$inject=["eventBus","canvas","styles","previewSupport"];function nD(e){var t=new Set;e.forEach(function(i){t.add(i.id)});var n=Ie(e,function(i){return rt(i)?t.has(i.source.id)&&t.has(i.target.id):!0});return n}function iD(e){return r0(Jr(e,function(t){return t.parent&&t.parent.id}))!==1}const rD={__depends__:[sc,Kn,Af,yi,Ii,Co],__init__:["move","movePreview"],move:["type",Hb],movePreview:["type",Yb]};var qb=".djs-palette-toggle",Kb=".entry",oD=qb+", "+Kb,Df="djs-palette-",aD="shown",Of="open",Xb="two-column",sD=1e3;function Ot(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()})}Ot.$inject=["eventBus","canvas"],Ot.prototype.registerProvider=function(e,t){t||(t=e,e=sD),this._eventBus.on("palette.getProviders",e,function(n){n.providers.push(t)}),this._rebuild()},Ot.prototype.getEntries=function(){var e=this._getProviders();return e.reduce(uD,{})},Ot.prototype._rebuild=function(){if(this._diagramInitialized){var e=this._getProviders();e.length&&(this._container||this._init(),this._update())}},Ot.prototype._init=function(){var e=this,t=this._eventBus,n=this._getParentContainer(),i=this._container=ut(Ot.HTML_MARKUP);n.appendChild(i),gt(n).add(Df+aD),Cn.bind(i,oD,"click",function(r){var o=r.delegateTarget;if(Xu(o,qb))return e.toggle();e.trigger("click",r)}),Ce.bind(i,"mousedown",function(r){r.stopPropagation()}),Cn.bind(i,Kb,"dragstart",function(r){e.trigger("dragstart",r)}),t.on("canvas.resized",this._layoutChanged,this),t.fire("palette.create",{container:i})},Ot.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"palette.getProviders",providers:[]});return this._eventBus.fire(t),t.providers},Ot.prototype._toggleState=function(e){e=e||{};var t=this._getParentContainer(),n=this._container,i=this._eventBus,r,o=gt(n),a=gt(t);"twoColumn"in e?r=e.twoColumn:r=this._needsCollapse(t.clientHeight,this._entries||{}),o.toggle(Xb,r),a.toggle(Df+Xb,r),"open"in e&&(o.toggle(Of,e.open),a.toggle(Df+Of,e.open)),i.fire("palette.changed",{twoColumn:r,open:this.isOpen()})},Ot.prototype._update=function(){var e=nt(".djs-palette-entries",this._container),t=this._entries=this.getEntries();ms(e),k(t,function(n,i){var r=n.group||"default",o=nt("[data-group="+ka(r)+"]",e);o||(o=ut('<div class="group"></div>'),sn(o,"data-group",r),e.appendChild(o));var a=n.html||(n.separator?'<hr class="separator" />':'<div class="entry" draggable="true"></div>'),s=ut(a);if(o.appendChild(s),!n.separator&&(sn(s,"data-action",i),n.title&&sn(s,"title",n.title),n.className&&cD(s,n.className),n.imageUrl)){var c=ut("<img>");sn(c,"src",n.imageUrl),s.appendChild(c)}}),this.open()},Ot.prototype.trigger=function(e,t,n){var i,r,o=t.delegateTarget||t.target;return o?(i=sn(o,"data-action"),r=t.originalEvent||t,this.triggerEntry(i,e,r,n)):t.preventDefault()},Ot.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(Wt(a)){if(t==="click")return a(n,i)}else if(a[t])return a[t](n,i);n.preventDefault()}},Ot.prototype._layoutChanged=function(){this._toggleState({})},Ot.prototype._needsCollapse=function(e,t){var n=50,i=Object.keys(t).length*46;return e<i+n},Ot.prototype.close=function(){this._toggleState({open:!1,twoColumn:!1})},Ot.prototype.open=function(){this._toggleState({open:!0})},Ot.prototype.toggle=function(){this.isOpen()?this.close():this.open()},Ot.prototype.isActiveTool=function(e){return e&&this._activeTool===e},Ot.prototype.updateToolHighlight=function(e){var t,n;this._toolsContainer||(t=nt(".djs-palette-entries",this._container),this._toolsContainer=nt("[data-group=tools]",t)),n=this._toolsContainer,k(n.children,function(i){var r=i.getAttribute("data-action");if(r){var o=gt(i);r=r.replace("-tool",""),o.contains("entry")&&r===e?o.add("highlighted-entry"):o.remove("highlighted-entry")}})},Ot.prototype.isOpen=function(){return gt(this._container).has(Of)},Ot.prototype._getParentContainer=function(){return this._canvas.getContainer()},Ot.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=gt(e),i=be(t)?t:t.split(/\s+/g);i.forEach(function(r){n.add(r)})}function uD(e,t){var n=t.getPaletteEntries();return Wt(n)?n(e):(k(n,function(i,r){e[r]=i}),e)}const lD={__init__:["palette"],palette:["type",Ot]};var Zb="crosshair",Qb="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=me("rect");se(d,{class:"djs-lasso-overlay",width:1,height:1,x:0,y:0}),Pe(p,d),u(!0),this.update(f)},update:function(f){var p=f.frame,d=f.bbox;p&&d&&se(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,Qb);for(const g of h)m.has(g)||t.addMarker(g,Qb)}},remove:function(f){this.update(f),f.frame&&Ht(f.frame),u(!1)}};function u(f){He(t.getContainer()).toggle(pD,f)}function l(f){var p=i.getAll();return new Set(Qr(so(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=Jb(f),p.add=ec(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=Jb(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(ec(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:Zb,data:{context:{}},keepSelection:!0})},wr.prototype.activateSelection=function(e,t){this._dragging.init(e,"lasso.selection",{trapClick:!1,autoActivate:t,cursor:Zb,data:{context:{}},keepSelection:!0})},wr.prototype._select=function(e){this._selection.select(e)},wr.prototype.select=function(e,t,n=[]){var i=Qr(so(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 Jb(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__:[pc,ma],__init__:["lassoTool"],lassoTool:["type",wr]};var Lf=1500,ex="grab";function Bo(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",Lf,function(c){if(fa(c))return a.activateMove(c.originalEvent,!0),!1}),s&&s.addListener(Lf,function(c){if(!(!tx(c.keyEvent)||a.isActive())){var u=a._mouse.getLastMoveEvent();a.activateMove(u,!!u)}},"keyboard.keydown"),s&&s.addListener(Lf,function(c){!tx(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!fa(c)&&l&&e.once("hand.move.ended",function(f){a.activateHand(f.originalEvent,!0,!0)}),!1})}Bo.$inject=["eventBus","canvas","dragging","injector","toolManager","mouse"],Bo.prototype.activateMove=function(e,t,n){typeof t=="object"&&(n=t,t=!1),this._dragging.init(e,"hand.move",{autoActivate:t,cursor:ex,data:{context:n||{}}})},Bo.prototype.activateHand=function(e,t,n){this._dragging.init(e,"hand",{trapClick:!1,autoActivate:t,cursor:ex,data:{context:{reactivate:n}}})},Bo.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateHand(e,!!e)},Bo.prototype.isActive=function(){var e=this._dragging.context();return e?/^(hand|hand\.move)$/.test(e.prefix):!1};function tx(e){return zt("Space",e)}const dD={__depends__:[pc,ma],__init__:["handTool"],handTool:["type",Bo]};var nx="connect-ok",ix="connect-not-ok";function $o(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?nx:ix))}),e.on(["global-connect.out","global-connect.cleanup"],function(c){var u=c.context.startTarget,l=c.context.canStartConnect;u&&i.removeMarker(u,l?nx:ix)}),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})}$o.$inject=["eventBus","dragging","connect","canvas","toolManager","rules","mouse"],$o.prototype.start=function(e,t){this._dragging.init(e,"global-connect",{autoActivate:t,trapClick:!1,data:{context:{}}})},$o.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();return this.start(e,!!e)},$o.prototype.isActive=function(){var e=this._dragging.context();return e&&/^global-connect/.test(e.prefix)},$o.prototype.canStartConnect=function(e){return this._rules.allowed("connection.start",{source:e})};const hD={__depends__:[Ef,yi,Ii,pc,ma],globalConnect:["type",$o]};function If(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)}If.$inject=["palette","create","elementFactory","spaceTool","lassoTool","handTool","globalConnect","translate"],If.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(R){var w=n.createShape(L({type:f},m));t.start(R,w)}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 L(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,uc,ky,fD,dD,hD,oa],__init__:["paletteProvider"],paletteProvider:["type",If]};var gD=250;function Nf(e,t,n,i,r){X.call(this,e);function o(s){var c=s.canExecute.replacements;k(c,function(u){var l=u.oldElementId,f={type:u.newElementType};if(!s.visualReplacements[l]){var p=t.get(l);L(f,{x:p.x,y:p.y});var d=n.createShape(f);i.addShape(d,p.parent);var h=nt('[data-element-id="'+ka(p.id)+'"]',s.dragGroup);h&&se(h,{display:"none"});var m=r.addDragger(d,s.dragGroup);s.visualReplacements[l]=m,i.removeShape(d)}})}function a(s){var c=s.visualReplacements;k(c,function(u,l){var f=nt('[data-element-id="'+ka(l)+'"]',s.dragGroup);f&&se(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)})}Nf.$inject=["eventBus","elementRegistry","elementFactory","canvas","previewSupport"],ae(Nf,X);const yD={__depends__:[Co],__init__:["bpmnReplacePreview"],bpmnReplacePreview:["type",Nf]};var vD=1250,Bf=40,_D=20,bD=10,rx=20,ox=["x","y"],xD=Math.abs;function ax(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&&Tn(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=Qn(r),Le(o,["bpmn:Event","bpmn:Gateway"])&&sx(t,Qn(o)),Le(o,["bpmn:Task","bpmn:SubProcess"])&&ED(t,o),v(a,"bpmn:BoundaryEvent")&&s===a.host&&SD(t)):cx(i,"bpmn:MessageFlow")?(v(r,"bpmn:Event")&&(n.connectionStart=Qn(r)),v(o,"bpmn:Event")&&sx(t,Qn(o))):n.connectionStart=n.initialConnectionStart)})}ax.$inject=["eventBus"];function wD(e,t,n){ox.forEach(function(i){var r=ux(i,t);e[i]<t[i]+n?Dt(e,i,t[i]+n):e[i]>t[i]+r-n&&Dt(e,i,t[i]+r-n)})}function ED(e,t){var n=Qn(t);ox.forEach(function(i){PD(e,t,i)&&Dt(e,i,n[i])})}function SD(e){var t=e.context,n=t.source,i=t.target;if(!AD(t)){var r=Qn(n),o=Qt(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])<Bf&&(c>r[s]?u=r[s]+Bf:u=r[s]-Bf,Dt(e,s,u))})}}function sx(e,t){Dt(e,"x",t.x),Dt(e,"y",t.y)}function cx(e,t){return e&&e.type===t}function RD(e,t){return Wi(t,function(n){return cx(e,n)})}function ux(e,t){return e==="x"?t.width:t.height}function CD(e){return v(e,"bpmn:Task")?bD:_D}function PD(e,t,n){return e[n]>t[n]+rx&&e[n]<t[n]+ux(n,t)-rx}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 yu,n.initDefaults(this._defaultSnaps)),n};function yu(){this._snapValues={}}yu.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)},yu.prototype.snap=function(e,t,n,i){var r=this._snapValues[t];return r&&g2(e[n],r[n],i)},yu.prototype.initDefaults=function(e){var t=this;k(e||{},function(n,i){k(n,function(r){t.add(i,r)})})};var TD=1250;function xi(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&&Tn(r.originalEvent))&&!(No(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()})}xi.$inject=["elementRegistry","eventBus","snapping"],xi.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=Qn(i,e):o={x:e.x+Qn(i).x,y:e.y+Qn(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}),De(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},xi.prototype.addSnapTargetPoints=function(e,t,n){var i=this.getSnapTargets(t,n);return k(i,function(r){if(De(r)){De(t)&&e.add("mid",Qn(r));return}if(rt(r)){if(r.waypoints.length<3)return;var o=r.waypoints.slice(1,-1);k(o,function(a){e.add("mid",a)});return}e.add("mid",Qn(r))}),!Se(t.x)||!Se(t.y)||this._elementRegistry.get(t.id)&&e.add("mid",Qn(t)),e},xi.prototype.getSnapTargets=function(e,t){return K_(t).filter(function(n){return!MD(n)})};function MD(e){return!!e.hidden}var lx=1500;function jo(e,t){t.invoke(xi,this),e.on(["create.move","create.end"],lx,LD),e.on(["create.move","create.end","shape.move.move","shape.move.end"],lx,function(n){var i=n.context,r=i.canExecute,o=i.target,a=r&&(r==="attach"||r.attach);a&&!No(n)&&kD(n,o)})}ae(jo,xi),jo.$inject=["eventBus","injector"],jo.prototype.initSnap=function(e){var t=xi.prototype.initSnap.call(this,e),n=e.shape,i=!!this._elementRegistry.get(n.id);return k(n.outgoing,function(r){var o=r.waypoints[0];o=o.original||o,t.setSnapOrigin(r.id+"-docking",fx(o,i,e))}),k(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))}),v(n,"bpmn:Participant")&&t.setSnapLocations(["top-left","bottom-right","mid"]),t},jo.prototype.addSnapTargetPoints=function(e,t,n){xi.prototype.addSnapTargetPoints.call(this,e,t,n);var i=this.getSnapTargets(t,n);k(i,function(o){(OD(o)||DD([t,o],"bpmn:TextAnnotation"))&&(e.add("top-left",Y_(o)),e.add("bottom-right",q_(o)))});var r=this._elementRegistry;return k(t.incoming,function(o){if(r.get(t.id)){px(i,o.source)||e.add("mid",xe(o.source));var a=o.waypoints[0];e.add(o.id+"-docking",a.original||a)}}),k(t.outgoing,function(o){if(r.get(t.id)){px(i,o.target)||e.add("mid",xe(o.target));var a=o.waypoints[o.waypoints.length-1];e.add(o.id+"-docking",a.original||a)}}),v(n,"bpmn:SequenceFlow")&&(e=this.addSnapTargetPoints(e,t,n.parent)),e},jo.prototype.getSnapTargets=function(e,t){return xi.prototype.getSnapTargets.call(this,e,t).filter(function(n){return!v(n,"bpmn:Lane")})};function kD(e,t){var n=ye(t),i=Pg(e,t),r=e.context,o=r.shape,a;o.parent?a={x:0,y:0}:a=xe(o),/top/.test(i)?Dt(e,"y",n.top-a.y):/bottom/.test(i)&&Dt(e,"y",n.bottom-a.y),/left/.test(i)?Dt(e,"x",n.left-a.x):/right/.test(i)&&Dt(e,"x",n.right-a.x)}function DD(e,t){return e.every(function(n){return v(n,t)})}function OD(e){return v(e,"bpmn:SubProcess")&&Fe(e)?!0:v(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)&&Dt(e,"x",e.x),(i&&i>=e.y||o&&o<=e.y)&&Dt(e,"y",e.y)}}function px(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 ID=1250;function Ya(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&&Tn(i.originalEvent))&&!No(i)){var u=c.pointsForTarget(a);u.initialized||(u=n.addSnapTargetPoints(u,o,a,s),u.initialized=!0),$D(s)&&Dt(i,"x",i.x),jD(s)&&Dt(i,"y",i.y),t.snap(i,u)}}),e.on(["resize.cleanup"],function(){t.hide()})}Ya.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=dx(n,i);return r.setSnapOrigin("corner",{x:o.x-e.x,y:o.y-e.y}),r},Ya.prototype.addSnapTargetPoints=function(e,t,n,i){var r=this.getSnapTargets(t,n);return k(r,function(o){e.add("corner",q_(o)),e.add("corner",Y_(o))}),e.add("corner",dx(t,i)),e},Ya.$inject=["eventBus","snapping"],Ya.prototype.getSnapTargets=function(e,t){return K_(t).filter(function(n){return!ND(n,e)&&!rt(n)&&!BD(n)&&!De(n)})};function dx(e,t){var n=xe(e),i=ye(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 ND(e,t){return e.host===t}function BD(e){return!!e.hidden}function $D(e){return e==="n"||e==="s"}function jD(e){return e==="e"||e==="w"}var FD=7,HD=1e3;function Sr(e){this._canvas=e,this._asyncHide=Pu(_n(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:No(e,"x"),y:No(e,"y")};k(r,function(a){var s=i.getSnapOrigin(a),c={x:e.x+s.x,y:e.y+s.y};if(k(["x","y"],function(u){var l;o[u]||(l=t.snap(c,a,u,FD),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),k(["x","y"],function(a){var s=o[a];Gt(s)&&Dt(e,a,s.originValue)})},Sr.prototype._createLine=function(e){var t=this._canvas.getLayer("snap"),n=me("path");return se(n,{d:"M0,0 L0,0"}),He(n).add("djs-snap-line"),Pe(t,n),{update:function(i){Se(i)?e==="horizontal"?se(n,{d:"M-100000,"+i+" L+100000,"+i,display:""}):se(n,{d:"M "+i+",-100000 L "+i+", +100000",display:""}):se(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(){k(this._snapLines,function(e){e.update()})};const zD={__depends__:[{__init__:["createMoveSnapping","resizeSnapping","snapping"],createMoveSnapping:["type",xi],resizeSnapping:["type",Ya],snapping:["type",Sr]}],__init__:["connectSnapping","createMoveSnapping"],connectSnapping:["type",ax],createMoveSnapping:["type",jo]};var hx=300;function Ae(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=nt(Ae.INPUT_SELECTOR,this._container),this._resultsContainer=nt(Ae.RESULTS_CONTAINER_SELECTOR,this._container),this._canvas.getContainer().appendChild(this._container),t.on(["canvas.destroy","diagram.destroy","drag.init","elements.changed"],this.close,this)}Ae.$inject=["canvas","eventBus","selection","translate"],Ae.prototype._bindEvents=function(){var e=this;function t(n,i,r,o){e._eventMaps.push({el:n,type:r,listener:Cn.bind(n,i,r,o)})}t(document,"html","click",function(n){e.close(!1)}),t(this._container,Ae.INPUT_SELECTOR,"click",function(n){n.stopPropagation(),n.delegateTarget.focus()}),t(this._container,Ae.RESULT_SELECTOR,"mouseover",function(n){n.stopPropagation(),e._scrollToNode(n.delegateTarget),e._preselect(n.delegateTarget)}),t(this._container,Ae.RESULT_SELECTOR,"click",function(n){n.stopPropagation(),e._select(n.delegateTarget)}),t(this._container,Ae.INPUT_SELECTOR,"keydown",function(n){zt("ArrowUp",n)&&n.preventDefault(),zt("ArrowDown",n)&&n.preventDefault()}),t(this._container,Ae.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)})},Ae.prototype._unbindEvents=function(){this._eventMaps.forEach(function(e){Cn.unbind(e.el,e.type,e.listener)})},Ae.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=nt(Ae.RESULT_SELECTOR,this._resultsContainer);this._scrollToNode(i),this._preselect(i)}},Ae.prototype._scrollToDirection=function(e){var t=this._getCurrentResult();if(t){var n=e?t.previousElementSibling:t.nextElementSibling;n&&(this._scrollToNode(n),this._preselect(n))}},Ae.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)}},Ae.prototype._clearResults=function(){ms(this._resultsContainer),this._results={},this._eventBus.fire("searchPad.cleared")},Ae.prototype._getCurrentResult=function(){return nt(Ae.RESULT_SELECTED_SELECTOR,this._resultsContainer)},Ae.prototype._createResultNode=function(e,t){var n=ut(Ae.RESULT_HTML);return e.primaryTokens.length>0&&mx(n,e.primaryTokens,Ae.RESULT_PRIMARY_HTML),mx(n,e.secondaryTokens,Ae.RESULT_SECONDARY_HTML),sn(n,Ae.RESULT_ID_ATTRIBUTE,t),this._resultsContainer.appendChild(n),n},Ae.prototype.registerProvider=function(e){this._searchProvider=e},Ae.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,gt(this._canvas.getContainer()).add("djs-search-open"),gt(this._container).add("open"),this._searchInput.focus(),this._eventBus.fire("searchPad.opened"))},Ae.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,gt(this._canvas.getContainer()).remove("djs-search-open"),gt(this._container).remove("open"),this._clearResults(),this._searchInput.value="",this._searchInput.blur(),this._eventBus.fire("searchPad.closed"),this._canvas.restoreFocus())},Ae.prototype.toggle=function(){this.isOpen()?this.close():this.open()},Ae.prototype.isOpen=function(){return this._open},Ae.prototype._preselect=function(e){var t=this._getCurrentResult();if(e!==t){t&>(t).remove(Ae.RESULT_SELECTED_CLASS);var n=sn(e,Ae.RESULT_ID_ATTRIBUTE),i=this._results[n].element;gt(e).add(Ae.RESULT_SELECTED_CLASS),this._canvas.scrollToElement(i,{top:hx}),this._selection.select(i),this._eventBus.fire("searchPad.preselected",i)}},Ae.prototype._select=function(e){var t=sn(e,Ae.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)},Ae.prototype._getBoxHtml=function(){const e=ut(Ae.BOX_HTML),t=nt(Ae.INPUT_SELECTOR,e);return t&&t.setAttribute("aria-label",this._translate("Search in diagram")),e};function mx(e,t,n){var i=VD(t),r=ut(n);r.innerHTML=i,e.appendChild(r)}function VD(e){var t="";return e.forEach(function(n){var i=Ev(n.value||n.matched||n.normal),r=n.match||n.matched;r?t+='<b class="'+Ae.RESULT_HIGHLIGHT_CLASS+'">'+i+"</b>":t+=i}),t!==""?t:null}Ae.CONTAINER_SELECTOR=".djs-search-container",Ae.INPUT_SELECTOR=".djs-search-input input",Ae.RESULTS_CONTAINER_SELECTOR=".djs-search-results",Ae.RESULT_SELECTOR=".djs-search-result",Ae.RESULT_SELECTED_CLASS="djs-search-result-selected",Ae.RESULT_SELECTED_SELECTOR="."+Ae.RESULT_SELECTED_CLASS,Ae.RESULT_ID_ATTRIBUTE="data-result-id",Ae.RESULT_HIGHLIGHT_CLASS="djs-search-highlight",Ae.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>`,
|
|
343
|
+
</div>`,Ae.RESULT_HTML='<div class="djs-search-result"></div>',Ae.RESULT_PRIMARY_HTML='<div class="djs-search-result-primary"></div>',Ae.RESULT_SECONDARY_HTML='<p class="djs-search-result-secondary"></p>';const GD={__depends__:[oa,Oc,Kn],searchPad:["type",Ae]};function $f(e,t,n,i){this._elementRegistry=e,this._canvas=n,this._search=i,t.registerProvider(this)}$f.$inject=["elementRegistry","searchPad","canvas","search"],$f.prototype.find=function(e){var t=this._canvas.getRootElements(),n=this._elementRegistry.filter(function(i){return!De(i)&&!t.includes(i)});return this._search(n.map(i=>({element:i,label:Hn(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__:[GD,P_],__init__:["bpmnSearch"],bpmnSearch:["type",$f]},YD="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",KD={width:36,height:50},XD={width:50,height:50};function gx(e,t,n){return me("path",{d:e,strokeWidth:2,transform:`translate(${t.x}, ${t.y})`,...n})}const ti=5;function vu(e,t){this._styles=t,e.registerProvider(this)}vu.$inject=["outline","styles"],vu.prototype.getOutline=function(e){const t=this._styles.cls("djs-outline",["no-fill"]);var n;if(bS(e))return n=me("rect"),se(n,L({x:-ti,y:-ti,rx:4,width:e.width+ti*2,height:e.height+ti*2},t)),n;if(!De(e))return v(e,"bpmn:Gateway")?(n=me("rect"),L(n.style,{"transform-box":"fill-box",transform:"rotate(45deg)","transform-origin":"center"}),se(n,L({x:2,y:2,rx:4,width:e.width-4,height:e.height-4},t))):Le(e,["bpmn:Task","bpmn:SubProcess","bpmn:Group","bpmn:CallActivity"])?(n=me("rect"),se(n,L({x:-ti,y:-ti,rx:14,width:e.width+ti*2,height:e.height+ti*2},t))):v(e,"bpmn:EndEvent")?(n=me("circle"),se(n,L({cx:e.width/2,cy:e.height/2,r:e.width/2+ti+1},t))):v(e,"bpmn:Event")?(n=me("circle"),se(n,L({cx:e.width/2,cy:e.height/2,r:e.width/2+ti},t))):v(e,"bpmn:DataObjectReference")&&yx(e,"bpmn:DataObjectReference")?n=gx(YD,{x:-6,y:-6},t):v(e,"bpmn:DataStoreReference")&&yx(e,"bpmn:DataStoreReference")&&(n=gx(qD,{x:-6,y:-6},t)),n},vu.prototype.updateOutline=function(e,t){if(!De(e))return Le(e,["bpmn:SubProcess","bpmn:Group"])?(se(t,{width:e.width+ti*2,height:e.height+ti*2}),!0):!!Le(e,["bpmn:Event","bpmn:Gateway","bpmn:DataStoreReference","bpmn:DataObjectReference"])};function yx(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__:[Af],__init__:["outlineProvider"],outlineProvider:["type",vu]};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 wi(e){lo.call(this,e)}ae(wi,lo),wi.Viewer=yr,wi.NavigatedViewer=Da,wi.prototype.createDiagram=function(){return this.importXML(QD)},wi.prototype._interactionModules=[Mv,Dv,Iv],wi.prototype._modelingModules=[e2,kc,o2,i2,v2,Ef,S2,K2,by,uc,J2,nk,vk,bk,xk,Ck,$k,Vk,qp,Xk,rD,mD,yD,kb,zD,UD,ZD],wi.prototype._modules=[].concat(yr.prototype._modules,wi.prototype._interactionModules,wi.prototype._modelingModules);const JD=((e,t)=>{const n=e.__vccOpts||e;for(const[i,r]of t)n[i]=r;return n})(Ct.defineComponent({__name:"BpmnModelerView",props:{xml:{}},emits:["ready","imported","import-error"],setup(e,{expose:t,emit:n}){const i=e,r=n,o=Ct.ref();let a;async function s(u){if(!a)throw new Error("modeler not mounted");try{const{warnings:l}=await a.importXML(u),f=Hu(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 Ct.onMounted(async()=>{a=new wi({container:o.value,moddleExtensions:is}),i.xml&&await s(i.xml),r("ready")}),Ct.watch(()=>i.xml,u=>{u&&a&&s(u)}),Ct.onBeforeUnmount(()=>{a==null||a.destroy(),a=void 0}),t({importXml:s,saveXml:c,getModeler:()=>a}),(u,l)=>(Ct.openBlock(),Ct.createElementBlock("div",{ref_key:"container",ref:o,class:"bpmn-modeler-view"},null,512))}}),[["__scopeId","data-v-a9b41c97"]]);ee.APPLY_BPMN_OPS_SCHEMA=e0,ee.BPMN_MODDLE_EXTENSIONS=is,ee.BWL_MODDLE_SCHEMA=Gf,ee.BWL_NS=Vf,ee.BWL_PREFIX=wu,ee.BWL_SIDES=Eu,ee.BpmnModelerView=JD,ee.EDITOR=_E,ee.FLOW_LABEL_INDENT=Rd,ee.HEADLESS_BPMN_MODULES=bv,ee.HEADLESS_TEXT_METRICS=io,ee.I18N_NS=Dw,ee.I18N_PREFIX=md,ee.LABEL_FORK_MARGIN=Vu,ee.MVP_FLOW_NODE_TYPES=Ei,ee.SYMBOLIC_OP_KINDS=Yf,ee.SYMBOLIC_OP_SCHEMA=qf,ee.UNDO_EPISODE_COMMAND=Su,ee.applyBpmnOpBatch=dh,ee.applyBpmnOps=uh,ee.approximateTextWidth=ro,ee.auditBpmnGeometry=Ld,ee.auditBpmnGeometryXml=Jw,ee.auditGeometry=Xi,ee.auditTargetsOf=Pi,ee.axisSegmentsOf=mn,ee.blackBoxNameRect=zu,ee.buildBpmnOpBatch=vE,ee.buildRegistryIndex=Nd,ee.containerBoundarySegments=Wo,ee.createBpmnEditorController=bE,ee.createBpmnModdle=gd,ee.createHeadlessBpmnModeler=FT,ee.crossedShapesOf=Vn,ee.crossingCost=Ci,ee.describeProcess=fh,ee.describeProcessXml=yE,ee.edgeCrossCount=cs,ee.edgeCrossingPairsOf=Wu,ee.executeAsUndoEpisode=Uf,ee.forwardThreePointCandidates=Uu,ee.geometryFindingKey=Ki,ee.installHeadlessBpmnDom=vd,ee.isMvpFlowNodeType=zf,ee.labelRectsOf=Uo,ee.lineCrossesLabel=Ri,ee.lineThroughLabel=Pd,ee.lineThroughShapeLabel=Dd,ee.loadBpmnXml=Fu,ee.lowerOps=ch,ee.oppositeOverlapCount=Vw,ee.oppositeOverlapOf=Sd,ee.planBackEdgeBoundaryClearance=qd,ee.planCrossPoolRoute=Gd,ee.planEdgeRepair=Hd,ee.planLabelLineClearance=Jd,ee.planLabelPlacement=Qd,ee.planMiddleSegmentShifts=jd,ee.planOppositeOverlapRepair=Xd,ee.planSegmentDetours=$d,ee.planShapeLabelClearance=nh,ee.repairIntroducedBoundaryHugging=Kd,ee.repairIntroducedCrossings=zd,ee.repairIntroducedLabelLines=eh,ee.repairIntroducedOppositeOverlaps=Zd,ee.repairIntroducedShapeLabelLines=ih,ee.repairIntroducedSharedSegmentLabels=th,ee.rerouteIntroducedCrossPoolEdges=Wd,ee.resolverServicesOf=sh,ee.saveBpmnXml=Ow,ee.sceneCrossingCost=Td,ee.sceneFromDefinitions=Od,ee.sceneFromRegistry=jt,ee.sharedSegmentUnderLabel=ss,ee.sharedSpansOf=as,ee.unreadableOverlapCount=Mr,ee.unreadableOverlapOf=os,ee.validateOps=ah,ee.warningMessages=Hu,Object.defineProperty(ee,Symbol.toStringTag,{value:"Module"})}));
|