V6!s7?NBXZTy)<~W-R}Dz5PYZ(F4m=4
zdu8R%?uXYo1uusV$B|@BOe42{wYG-os+b7Yk7(34M-9zWQEN5WeL1LDZ}%nnZ0Xtq
zj})%dyn&X(Jn*rsc@uM{!27SN`69;4Ldi1LUtg>1PPw|#dMLP&jR@!}8S#Svf3*uJ
zId05DTf|=_xzjCCulZGK!|``EXW{p$-(F(GMd%zbf^}?$4JDqRw#VrZ`bW;~L59$W
znXt$_7OqL;jY8RyBt=mng_3#sq-sQ=yadj!|F4|innwYHKsL>(&!5p#l1$_sxGiky
z1eDTIYW~@)_}C;Gmk%I6)jOY3Uu!+DhZ}h%J$7?VKxk;FL@~7N5|@1)(k!u0QbKdC
z+HroX+~Phn0fwCE(xrQ=v~hopJGMy+O_+xl;?|6!8bBsYNXi&p{&vs8E_^+i3ZG5^x={}
z{$}0S!vo2PN~{EqPT96j;^>g4W!2Q!H~3WVFk5=MzeMXYBw#cEundW}lQrGHpAm@^
zLE8Jk&W73I3(xbD`;d>xd*dN{7-QcjTK(wLeW_L%eJNEZHs(W)k;b8fmiugvN#S3v
zk!J4)VXK*TdAg8GLFG|UGZf*kS`0L~%0o6ujfIikRa19tf(|1RAu>BX?x(`#aX>QB
zw+bLU!XuX^KIXkf0a6@?h~_8`A0q4*{O%HD<@qPqIzaUoE8|tLrDzJn@$C72r7Cgt
z*v$k<)U^o?6P*;b@Ef@c0QbrYaCQ20^Onk!Ul7dr?}O;kmO8{E(8D<0&H}OVLMObt
zlZ!)1ph0tJT|Lko?WIZ_&c>F`1+ZE+Lgm3tB<=%nB?eqT93F^jh%8Xb7SbWjQG!39
z2%3b*wnZ(43h5vt5;_)P_6h*dYeAWB^|TL6cj!xp;Ro}iP;}TH_OCUx^fDII_F_I3u1s_S`0L*w~{1YJ8pXG>u(x9b9n^N%A@vlEc|(qLM9WYDGD{xw;*jx
zYwox~fK3YM1wx&?TB+_v&{8NY9~BPj&Ih5NcQ6bVs0)l)PV@q`nS8Nb&JAswZ-h`Qc*W^v{O<44+4ws;Jo&&_6)KllmN;Zfe;`q
z{zz{;V=~hs2q8%@8jzy?k~_{W7Dg$)BCTA#eWnFT@QGk(%Kgc2*R2KUc~a&IoixK+x%2dr^5vxL9XB%3L
z;-&4&`T19M*KXSeJRv4@K@v2@2^b&HoKfTgLn>MlW#P(xBHM6-0~?7;K@5q6%wcVe
zsBhgXhITFdd10lirt6JGOzHVvd?ra}GglnxAMPm-^D^1oQW($M->1TBn+X(k$E5&J
z?f$OSXr-2y(+8O2I;gaP`Y)!8)aMi53@u8ewfVbzPJ?fcR9qZDx&({0Z&fVCKFZS`_6;Cbn$V4MP&&C0rT6M<{f)PNpsa!?
z6lET&x5@~L7DB4IDfb3pwPbB+CRc3LU5KyN`-%j^2^Ytvabc$u_1x}WwSsWD2WCan
z7}GGv?FLw#D^;BB$XmBwy*p?^?ii8UuR(-|QgZm2Y{A^wXJGFU1C;RZxn)Ks)~KKt
z;r7u`O97z|p^uVzZl6Lnb)uI#9zglc(k_HZs`{6-X)~$SX3|!ls`$
z>B4fipZS~Mz{P@Z53YTG<|PNS8J##>Tc83@0{;C^yAR$FL-|8WCbDA5;J;l_8(c@a
zJAA4Wretrl+7^C0+>HV;P+A|L5kPcA1I7R|u50h?OgNDm4+r(<0KPfeui(?{`0>YX
zFLxbCK{Rik#A{IMC6m&5W_m}CY&I|Qhw3z;&yI4r=7DBz^R9CKE@<(`Q(Qmwxcp0^
zua=HZS!_a9I()_(a}AQPE%i8euIc!6nul!b(&nU^Hx~LR4EVGH$&&
zJ91E;okDM$+22X0QQA_T{2vgZc)HbW0SD#D{}E>G$)qy{u%CXGWU7kqxLSYUHtI*A
zxIy^7LPMITb-9!}V>3_Y
z*3ZI?My}Cn2O-ZKzW;F=H%7^>bagB}{c@p*65&-G=6zf#+@~0!@#wg!5AL0;4(9%H
z8mgF7fn947D^`Q+h`w|CKWQWXbN=We7Z$>92rD~W?)9Y9_mL+PiGf@tOi{_+oBqS4
f;C~Oj*nH<~6^h;T7aQa1Go_`WvnPI+>Gl5x?#aE%
literal 9963
zcmeHtcT`hb+h+g~6#=hOEEEfh1_VVBkP^IJ`
zI-v&(N=K;@q)0CbF_h2(`JUrDYkhyrJKxNjHGj;Sxh&Vh9CFIu`+0tCpU0Q=bp*EU
z-G)M;1h9YpaRr6q*^feTn{DBSBO<~gGVqJb>x$0rC{nBV6biK;h5h54kzWeE-`~&p
zLE=ai)jyK0
zj^v|Icel!+LT$PEQTw0Q{&VP`nfQODCY0JGQNFEB3Y03>-a-Wm+jFcj?!kix&e8Mh
zM%4j}0gKaJc{Y?gBcJGfWP?EQ&_*3wLsj;a0e-KVFRkcNPZ%8L6I)$09_JUksEFr5(<%
zKMNo=-Ja3ZV}nnXZn*wPg4J!|VHLdCAiXl4>`~!8HCHEQ
z^IAh#D}JY$eQMe|%}FYF!H^(*Dfvt)1|Kp%-qP{nFN!Lh0qBGqeWr5+TNt!52Mec8
ze~c=Otvy)ToQA=(mzjwpy-uwu<%1z>85+NF_A4vnx{2nAoCKIu&86>N&IX&FKG`H{
z{yHmbvam_MNiKT#$%FIm!o6?IiyRN>L^aECMrAN}DojJ&w#pUO&$nUHRP(EyJKmUD
z`5042E@yM`Y!>(FG{h3*%nR*T7p9z}d7k>f1?{Ih-zGlD$*ZBNk_yeCZuo>GQ_STz
zY!=XQRDs(gp0csIt+
zMJS#1#U9QQp0h-cgZZ4HmbkRN&}dViZ@yM?%Xp}&R)2?CrQJZ4KT<01I7=%NX)@UM
z{OcbsJlU({`VIc`5X#4`zru%lgWG)iftYm}y|m9dh*@W~JP;>qsySDGC|Z54-a3%(
z^Nv^SyJypJK1n}Y)#fcU(Xf(NCL~K$ukq%oj!d{~AUr@{H6E^|hMNsy^*W{bbR&zL
z^K?&`E7|tl-2>+zvYFBN@9U4KaATlZc&M*Aq>AZJ`#gv?l#q|1THE=`JqA-$z0P`1
zK21o#{dgdz|NO*tooO_d01JfKSRN6x_PcIvZ4JmU-kf-KBZj+org~{$rnhL~vCNCz
zS4`_RR(mK>drl#>dj651Ri&@n&>^1650b>fs`*wm%5t5;3;*#%1`#l811pp2T}vJv
z9hI}HSSV`Kv?v9Lb7&fGOXG|s*oY2tG7_wB4b}uF$XmgL`81#WY_#0Q^_uooN2+?E
zU6-GqziEoulWT!nqmwzaI7%Rl8nEG;Cv{u?$R?A9_~RD7^DWBJ`;Ockw~vcY{PG57
z(^HX$+xK`*q~c6!A8JCq0N`k>FLX$#`4U50xEywv9rl~bNN81^Nb#BJcBmm5zWO9$
zYIjXX9sMqj>HeDmu|?Fi8xSW8ozU}W_N+2hK|${zA^a_lw^yKU>PBYvCjXAdQN
z)RY6rr3FmCm8inQObe=xK84y7_x^J3k+^65>f#JkCIZ?at5cZ_3TNXkFMsLUmYMF{
zna;Nz=Y=%9SH=<;tmRtLF0;YKpC5#vHOK1INEJASrsrt=2SGL01gR4W3Jd_^Ju0_{
zo*p<4myh+|tUeNXN;2r@xwg=s8l}K9t*L5lX&4Hv5=M|3%<6@CLcYSHy5uR&mU~aN
z1L#~z(+q}EaKMbiXqoT$q#}2pv`g5`$E{Mo&M0;74_NFn6_b)Ngob*&OGf{Nx<76@
z`y0URnLEQD;Yc^hN)1bR|Ngx!smyMuHq3(T{^Yqty*x~e=0u8DBPj=-m-b9Y^4QU%
zyOrH7fy3aKG!|OXv&-1D<@w1GK(vb4iWxw+tDjOCWg}5)vt>6-KlAw})UH-;tgj6Q
zGO82Dc!bn%Lnp!*BK!Y6}}7Q;u(jd)Ldkmp+N?LS0WT@
zRAgkFoTRF(s{=S249*5rpOsgOQX-}IqBpcZQa(;n;#&^nZ#Y6n8>ln?a9ruUYG74-
z(-7#U@y7Y%7NwT3`foE|B(2Of$fSv%^}gxvy5-L%AU35C_Hw&BQb@?nn&c~q7oPN=
z{qq%Y;;Rc!uI1aFgI^b`&KnvUG6t$Sa|sk$t4XNUp?rcg_K1FpAJD90yh6p~O8^2|
zCzGZotDxY~nxe|Hd3$}3KlBA-`DDIUJdARJRL!EcyH^k0<%dov0fB$PZ8qywR1yZi
zVW=ZvJe-RZ(D(9r0L9-*RBidT678A8bz+vc&pDO{udyg={S35YC5I`+F=U^6FSS0Y
z!!IUJd`{;cbD~pA;2X#3-x~M1mqCLqe~_<|F)M|ts)Ay1qZS`yb{jy^PGC6xfL!$K
z=`dq6vv0sP&HmX*XWUj7It(6Rmg0`UOgF|J1K-e;5>alDra6Y&`FpzEb}7xEu59DO
z0}By0Y`f*3KgNptVYU!BRiF#M+I2+F58AxRxkKx5c7QEtfMDHtIV?e1S$PRyu%)FX
zw?21be7rSDNw(!n
z!@0h8=Xi74!%BdbpeI#})NgfW9g0$UIqakYxXh@SAvMn(Cx5>}9jwt}RYC=x@ffJ0
zuil7Kb(|Y*=*mf0o2Q@SlQ@0jQzX!VTVMwi>gs5WLHrU*s{k!wMg~0pm-;C9EV(u!
z#Zk#UiRd#ZV0o{FhX%sGA1(phMpRbcB8)$9`fX;Trjv1cjQ-gv0Bt$u8^H9~Z+I>L
ztctJ_`vwA#!~P<6Esu~+*{Y_@4$NSnrzeY{lA&v(rh@mgbw(EmGoY{fNug
z|hu@v4hQn
z6tlg3Xx~oG-+2$TYy8Q}4x!(Wh39Clg?
z=QysFD!Fu5Ee}UHNAei!iwF=i(?ZS`eR-u5y-kg2-0SJ-3847GoD^Bf{6*tQE+psg
zWp@CqW^2}F;eMddX!qfy3Xr=9!}pO9VT>y+zWALP1n`@1=kMCNZqUq0N-pk|H6KMc
zy*FO0-9|~7pFJx1#;>Yz5|~W#^vy3}ur{!Mh*V7rW|>oWy^BIWz^@m7?zKXg3?>~BE2VB049P3y_7`P~407DX?}VUWMjBG(jHn7f!3-d6r5U{12?XykSaUeOJ6uGzbo~?P$ZqKO
zpojg2pexaL*1>pO{ZXV9cU6QZXPLJK42*NzoE7MzMmeL3ZN0PdWEc)GrO(fycQ84I
z*X)z&8{CL&0HskM+YQEHiQbMrnJ;*DGJP)5TPF6*2T(h*L84in+1|DyJ$kI8?lp`%
zK|z(p`l@5GUtj6qqw!`n`0hL#4s;=FszU}i5L8JZfU+)|*S-BUc5lb}J#bX?k{;_m
z5)Lb$g#!DvpSO-t<1jBtL|jN+&rzbV=E`VH>UumpV7V9Yh}sg=O+!nI28jPgr_+u7
z0PM!Y#&+muO9O!(P85d^4+RV~SL~g|mYW`Gm|+Rx(2tON%;HS8$z`F8Pv(a&O(?s5
zJ3%+E$x+E4z(Yhbh{w?Hpj)9;5RqA&X)9)2V$&n>Odv2{F_r9Q>mRWLt!2EOIGjTw
z*-$i*GnccXIsj$)Fw5ttBeeUb*8XFFkb@6Ah=6K$K1=je`OibWF+p3)Kl*wU2O5Wk
z;ml()HR{~`C;xurOOH7$u$
z+Z=9#HnjHss_h(IwCh6T?t-gfT~N)4k^(gfTmW*>fM5@1XH0ef*kp=VYx!KGY{v^b
zvL5J#Ozs?LtzfVwJ$Zv51-hXF+zbRQFJIoFF+w`ZTsR70kHHPmtZPt>A{2py!)>91
zCT!Q|5BP>2eS_Hnt-DAk-Mu*42Zpuq<2`}G(Wx<@OfoeM_?$+F6-x_Bbp~z^U5`Bn2qNQY(f0bnY!g+7|y
ze^*si4O9oF;RgIA&U$|_wlCU=4>M5taUXQRBE4_vuR~EsM*?-X6G1|XiHOAYyN$WM
zyUTl+Bxd%jiDth&IL}rhVj!I({K>>im
zEB*|ed`wO*<&4`kg0!ltYN{GeKQJY=l(VrmgGT4|tJ7~k?wSL28TVX8WCZ#{_D*oL
zqy`#VIy`$))-Ls|50&hZrW&>kCE6}2gC*EQu|j|N5TpSpWtnr=wYt%6Hm>$KDkR5*#?7Xe5t&o=e47F@2?Ktr8q`&z&rB^2
zE_jh(4@;Vv>U(Wm&j{?UMS-1mohuF;I(%qKd60ACa};Hm)avgrjTM6<78
zwwfPCffGM=^^JaR*pKkkjOW0Jw$K4e}P(
z1hGXZMxg#*Ne|_xsGQl;v@{#4@#Oic#cqq0m6gPM)?Qv-PAy4s$;lQW$vo&Qz>*-h
z42PWy6d59=pg}+8Y?{3bZG=QmFa&33)7O(g4@^~7Xt;F##`u@>La9nFCV)`EEz}xbggMhM)^JhPX&RDf@Rsy$yd>>>O8F3{xw*rwiM2(kI)2b
zON>F_dEgOgtmnd49R;)ebeL?zXd(M(Hk%EZURkk4M0ofcy~K9#!@wBw)>VE^Qf$z`
zF5u5N8|#BW?d`KgfC_C%N;!}qs;v!aZ3$ZxLYRJKegX+L5*3g=1PDhwC%^oiC{1;M
zF_b}2homLLlp}3tXNd4kwJE8f=tagL2Y4_KoaLUSM0J19CIszW{ri1-S`tq=!KaLV
zFR&cIj32=P?p3qn
z+Sih-tgz-DA*N6Rq93r00#n_YYq2zRPe^mNYy_4U2jTq)R|6io
zd-rak6n!{C!Mg1B^~afUd}zHV#eDS_z$olHY4^v{Y(LUS4sCt+Pp>mguaKq&=-27;tP8CY7PoCE3>GRh*CzHEp!
zvJ78Y-ri9dR*Nmm2fqE?Il)
z{kr|IkT6Vuz;9O#G(?ik5nzF&5$4H~#kAJa-f5;LjX{3!VC0cWk3DwPvF*h=w6&og6-S`SBFm~)P@{iOL%k;;>a!+
z7^O`uTR!eEQ_Fh+V4Y-Uh!f;_pEC|ww2k>gsP{z%E
z2a8!<+|+M>+NGQJ8m!}3?9~ci`t+u{r(>H$wUVe1{lmZJIl^IGO<+lg9ZBE}pp1|;
zw;<1ktkDx741B*;hDII?aTemI9S!4sdR!0#k0^vurymPN>7U;AZ#M(~Gk*Oa=C<0U
z-{3h<@k8DN2GO@3e1alB-2P&qXejMqe!Zx`-qZDR!otExW;_aEcbnYlUrHHO7*TuB
zLYVTW7{xVaEMCFph560SEJJD$%3dr?yHsW2%Xx^yVx$}1KY*Z+AIYkZqR|0R)`|=v
zaOJO8=_ob(Dh>z7ye4
zs}7U%6=K9hmK@4l$M%`_DvMqT-7SMvbZ&nQL0^W3U`7CB+(4jd(pbP3B&C6^l=`#W
z5pq{3A?s-z_C(?sh`etrdkZ@NljO^W?&eyMk6=B=;!MxJm$0?qj-V;p*FSC6C&C3q
zK8u<=)IUAoQN_G4-su3#8cZEQ*&hni_I(S>1VZps6J?$5Aq9m|EHf;{h9G9QMu4~D
z3V6@_wQcEta7Pe3z(7GpbD)T=z?oBkg!WS4!41ccfBjacV<{l6@{^z|j}1H+DhC@R
z7d|`^QV2N!;MP|OyC1NVk*Q%6$6B4q!_9Ql;gWnR8+i2BuF4f;KS(pk
z&(R+W8|r&46Tg~?#Hvyu%h#!|j1M68u>RR0i;`PD?N}Kk_)3gZ?)UD1j*Mg7M49Ja
zpz>(Fg%s%_AR;)M5P(lT0m}Aog4G-LfIK_qrY~UwGCXgcF&RA0dVEn9_
zvIaCfz!uh7KJ?;w+h<)+?W;&IxmRhLOj&nhMyvy{B_Nw44TR#%oZpc=6SisC2^6*i
zg#57YkiPS$=z(4m+y(Yq*uZX_8OlZuusO7ZUf@eKqNG$H14b|c?tJpbr!3h}340;Y
zxbpz6tr!lRg27-3@VEcAV@KL*rH_c5JnQPsP|^RYVD#ZI?XeEmfhL;waSSMC4t7f4BYqztD02e&7C|6aR~s8vehZoNN(rxISJbw?tI*wn7YA00zk0
z36*~3=$eQC`pT0+kD9S~3-m1lp^Iql1-k-Mt?)WWj&*;aqWv>E4c^hPb(#wP=lzWT
z6K|?0HP)jyfST^LF`k=G`qx6zaAIs%J)rTCq5Lq_$
zCK>kT2(0}-mH&C+=KreqjLeX?v}y^|lm}RtjO*
z`83nhS%3CzB??NMH5xi`I15riAnT4)u234hO*Idkm8rqYZt;b8s6tc6cK>e-lf^-`
Y@6NGOBj*Xi+iNJSw*DWa-)-;y2ThO&d;kCd
From 38a81e195bb4054dc98f4dc36c1ddd562102d87f Mon Sep 17 00:00:00 2001
From: Thomas Bouffard <27200110+tbouffard@users.noreply.github.com>
Date: Wed, 23 Oct 2024 08:38:20 +0200
Subject: [PATCH 5/6] integration tests: update model-complete-semantic.bpmn +
add new tests
---
test/fixtures/bpmn/model-complete-semantic.bpmn | 9 +++++++++
test/integration/mxGraph.model.bpmn.elements.test.ts | 11 +++++++++++
2 files changed, 20 insertions(+)
diff --git a/test/fixtures/bpmn/model-complete-semantic.bpmn b/test/fixtures/bpmn/model-complete-semantic.bpmn
index 552b96d3a7..1f41297177 100644
--- a/test/fixtures/bpmn/model-complete-semantic.bpmn
+++ b/test/fixtures/bpmn/model-complete-semantic.bpmn
@@ -19,6 +19,10 @@
+
+
+
+
@@ -1933,6 +1937,9 @@
+
+
+
@@ -2001,6 +2008,8 @@
+
+
diff --git a/test/integration/mxGraph.model.bpmn.elements.test.ts b/test/integration/mxGraph.model.bpmn.elements.test.ts
index fb838a7a8e..4ccade0458 100644
--- a/test/integration/mxGraph.model.bpmn.elements.test.ts
+++ b/test/integration/mxGraph.model.bpmn.elements.test.ts
@@ -1437,6 +1437,13 @@ describe('mxGraph model - BPMN elements', () => {
align: 'left',
});
});
+ it('text annotations in collaboration', () => {
+ expect('text_annotation_in_collaboration_1').toBeTextAnnotation({
+ label: 'Text Annotation in collaboration',
+ parentId: getDefaultParentId(),
+ align: 'left',
+ });
+ });
it('groups', () => {
expect('Group_0_in_collaboration').toBeGroup({
@@ -1515,6 +1522,10 @@ describe('mxGraph model - BPMN elements', () => {
it('associations', () => {
expect('association_id').toBeAssociationFlow({ parentId: 'participant_1_id', verticalAlign: 'bottom' });
});
+
+ it('associations in collaboration', () => {
+ expect('association_in_collaboration_1').toBeAssociationFlow({ parentId: getDefaultParentId(), verticalAlign: 'bottom' });
+ });
});
it('Diagram with a not displayed pool (without shape) with elements', () => {
From 44e015674ac34f85b68b7d8cd706bbd1f6c5b81a Mon Sep 17 00:00:00 2001
From: Thomas Bouffard <27200110+tbouffard@users.noreply.github.com>
Date: Wed, 23 Oct 2024 14:33:45 +0200
Subject: [PATCH 6/6] remove extra todo [skip ci]
---
src/component/parser/json/converter/utils.ts | 1 -
1 file changed, 1 deletion(-)
diff --git a/src/component/parser/json/converter/utils.ts b/src/component/parser/json/converter/utils.ts
index 7d02acd3e0..eb37dab1c8 100644
--- a/src/component/parser/json/converter/utils.ts
+++ b/src/component/parser/json/converter/utils.ts
@@ -136,7 +136,6 @@ interface CategoryValueData {
value?: string;
}
-// TODO review the name of the function: registerAssociationFlows?
export const convertAndRegisterAssociationFlows = (convertedElements: ConvertedElements, bpmnElements: TAssociation[] | TAssociation): void => {
for (const association of ensureIsArray(bpmnElements)) {
const direction = association.associationDirection as unknown as AssociationDirectionKind;