From 3df687a87cf7288463cfcb5d4ceecf36d5945abb Mon Sep 17 00:00:00 2001 From: Jacco van den Berg Date: Fri, 5 Aug 2022 18:51:14 +0200 Subject: [PATCH] Remove destroy hook (#10549) * remove destroy hook * revert package-lock.json changes * update test * add migration guide note * fix karma failing test * change way of importing package.json --- docs/developers/destroy_flowchart.png | Bin 18626 -> 17490 bytes docs/developers/plugin_flowcharts.drawio | 2 +- docs/migration/v4-migration.md | 1 + karma.conf.cjs | 5 +++-- rollup.config.js | 4 +++- src/core/core.controller.js | 3 --- test/specs/core.controller.tests.js | 3 ++- types/index.d.ts | 8 -------- 8 files changed, 10 insertions(+), 16 deletions(-) diff --git a/docs/developers/destroy_flowchart.png b/docs/developers/destroy_flowchart.png index c8d5cbab51e88aa1259dc0564fe7c3415087c84e..4ba151b76fa9e3dd224296916470589e9542dc1d 100644 GIT binary patch literal 17490 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 literal 18626 zc-q9e2UL^KyDl08L`6hJMN|+hSU^ZZ3Q;Su4q8zM1)E-g)2WdEUvliB83PjhHk7 z004LqVli>fZ#w`m#An!0XKDI~(gf$1i!lz50u)BwTBB)Z1ZE}}EYRt~L~?=DAW$2_G-8vp%6VO_70D%XvFM*RU?3PY4+NeE1jU2k zGb4}@K<5V(6czzS@c(Hqkcu_`9uOJ^bXLsf$TcFZ)#xlzsNBMYHME0!X3u0_F- z2pA46j}j}OAtV-tP8R_I(hV$@2#FR*IdXhw#Xp7T8A|ZAKkglLmOeCs-MuYGm5SUp61c~4EF~Ff2FtAkD~bogaARpy4a*@z#KJg0x{{%!^1uWs7{rOhqV0%y zlml!6(L_it8sS`l5G0DHIN&4&pT!U}9KP98VF(5}o}~%s7};4wJ+~oaT2r4$8t-(V&BE;0)&{h)SfZQAnZ1p|{5> ztZIrGZ9|JxG(E!z;vflZ5L*eOGodo7LL0|~vn*C3L(b5vIZ~CH$cTinDIl~18y5kh zM_?R45J$yV+YC5?INn5vRAQxK9MQ(qO2{ykLuZmjs3b<9Rxd>1k|=Bw4TTn1s9J^y zh!q-fbdZK3Fhxp9Y^hCYjdji}&iU3Mv9WS#93SK?8%cTz5r~Ex?NX;zh$x~2E5Ygw z94?avW2qwrQl%NK!lDT%yog9~w#T!WIt9~)heQ(8$T+PU#G~rS&LGt>aCiZh#*Cu@ z;gQafOlpf1X(nNSY_!9s#KdWnAY!3P3dV^9EGUj;wZl2_GG{d4A~X<@24--OtUw3W zZeQV2RG6^|D=M}^@H(pV(eMxwJL zU^q~m8fDSP^Vmv_)I`$D;7LggHAluy!U7!-jtZO<$tG)^z2tf*D+v~NHbAqDv%H>#_&xDIW}IYj&oqy#3Vk06({1cba75{KoMhUP?IW7ZiPyv zN{5Jq!GVENlT|C^n33@`nFg;SQDS-eNJA_h%Z(G$1QZ?~O^J0RVJKu8LdB=YqwzEr zH3CJnN1AvdioimP0Ft;^i8LY(On_=sa<-UaW!rdQxHXA`k&A_TB~@wCYd9zh$jMf? z__#PAOv{zq{^f8=kVfX5m4u|x#V66Bk#vxbDpOMQ&N?oLM~a9LQPq)1E!G^twP@8Q zvO#MyNaG@mXafg}QJ}?xjt7K9ny`Z%jBGfAPbb?5@+6i`O*bO-Vm=3N#G+sjq7{Ty zv6Tja2@?xe<8W%5T10^H$+1YORLhqOlHz3`G1?|3(6w9X1A>uKfCze$FisW+rpIB36txH*M-_0bbO{H9 z(`m87BrMI!kuX?fnO23AbM+>Ub1(|W!5i4%oJgRCDaDv0bPZ7LqIG5#%PJ6@?P0 zDaa%o0xyiSQJv%12k#iqL&wJIIh0r>Ol}dF^;VwRK!K}hXrcqfW`Xc{y&4xuMCN;nvV#%92CWEq80JsU-I(1k`PRf4!g zik-`1$7|RWCRM253or&sq@50p)quem0?_C%GQ=dQQD_#&0c|KdR<4st@H7qz8ewOe z)pkrgSIWR4Oh__DK(;Z&)<}g4m}JqKL?p42u2l#~S_c6SVzQE;M4~D(-Wn(5Bx$V_ zW1Nl16>u~>L}V-+O4Li$V6qe7aZC*^5{yPDBy1jEN_W_~&VWTlQ1DcC1RujB61iXr zjI30m(6)F?yp-*{D8|Sm!7>s;hhZRaV#y#|APf%Y&X5KXg1|z$89RC%#n{^_AN&IhkXWK+#7y*K#LqJ>& zPeQ_QY^9B6&UCs9+;I12t3vT!CLfm9ZbcKv=Eb2kq$ncMMCooIFo7ADL>9A6`Un`F$JC2O1U8aHTRXist6VPBAUV|VxDH(@lI?)CKLXzM~M596|;-mRErYs4_bEc~ZGg|G` z#1MiKinTe@0=pGShKOXbl6a1kC{YNJbRbizwIO01gF6CZkthNz|a-pmu*9a6TPWP)i`u{x?&iG>>s|ANw3qL@aH6H6)d!Cyou z#L6`2F&2TkI{bY`G)RnkEfE|+0B ze5wrTlyGV=i;qr9l2ME_W;~gWWkeFVI1L7BXJLtQqs#%42^4Iq2s;QgOxB?MF)(l# zkXaA`6Y04q(qNTLYgDP=7!FP&(($2Sa+1-(h-Jm|q;i`+R;OgJnGS_Pnnb3cg>=3c z2~)-E%m|PaLrdbzZ4`@uAZ0~@_y~;1C=iil6az4H#OmpEni6K^ z(9p4ZQ9MUv)3Cuzy9vwT7+7WvnGE5hph${DrQ(a@pehziCJ|7mWD!~C%*)tzh?B-5 zfffc)%8bxM5iFq|5sM+~I7w!k926mnm0%1>VgZYzrIE-Wl01SeLa|UHn?fd!xASa+ zi5ryRpmQA*EJ16qlVoO7Bm-tvI0Yn70$1yW@g_1Qjvwz#c5xEC-lm681!^iv0Om75 ztauh1&NOl(*;=P+a~fQY!Bf$AEJqHMNUfH^=;!L~R`OtiH3)SUY9yVEq@mbixJ@aE zr`Whi5Yi|y@r3#~N^FE3iD0V1;8YNRJdVC?;*Bo-`;7 zu^@UJd62Aebbb|NhG^FHJif9NzC zmPt+)Xj_)HEPnj>@zivN>(`Ee?NU02(*)RF+xG7L`-;He;5Qzr z)vq>f*|MNV7fHQdQxjmWYFXucdjV2bnb~oqH1|oF!vW1q*0$nd{+Q+cV%ULKK}6il-$frpPapWTeRIz zPV4Steb+a%JvzZGvGy)GUQ`sdn8|$DVX2~(mzDkY1*kkyPF=ecvo7SN7nrYd=C*Ic zjYgyJC}nq}_R(?1hJx-Zt6fXf&&o?#ELPN~PoGw0%{XzW>6+K&@&MnL?tN}Kw^+M! zb932rdiu8~!tL+xe@XAOy+4w3;LxE%7o9Ic#^ED?l90ojr`a-^gQVvZip|4^51&pV z62~5+?wy2u{O$6iFFnr=9zTBkVt#&`k&y9bfck_yeQL3F#n-YOf>v2NP+WBXT*U>+qS>`rrX<}X`AgK-=MP)&-TNpYk#0rt?>1GfcobBXP`v25zSbXp>C02)a0fi> z=|I%SE3W>%m;e4bmNBDc0)=;Igr5s-Pvj@xQy2O+N9-a3`<^~LMzi)lujr@Uck_qV zy*pI9ed?;J@$pxr$szY{@HWx+^W9% zS*-iHX;|03e01ul`4=gM0->!)e7)~bDSL;(zd%VDkvy$-KWi5 z<6aP!dXB^6eLFu{v$1^*0TXoW@Zl+;bLLcJ*RJ12zk2d+wR@&>Z^IY!`M7s1=>f;I z;T5*m*EjXQSoyPO_3CwJe)MJrQ|4C~-`*+P!SC8Ou6<-`HN)CoH^#$Tc^_v5Cv;J1 zwA$23@2d1wI}YM8fo;D(X3QjMp#2YLpv$_C7*;q~OP2f*%=oZ>x{Dpf=Rf^YQ-gc< zJk0%>V8bZ?r>&13t@Ez;YOyVg6y@9+xKU~D0^k08Wf6B6E~k2{hjUw%=`-Ftrk@f+ z+Pgo0{_LOXJ#_-Rd+qBILG{z^QxJyBJC@gsT%RV?^LWig_n&8q53hg6fPe4{2@Qpq zRIssqk6nk3{AR@C@vEY;1Re9ojvaevPjvE+w>b4z=vae(<;p*=2fCWRmVyJLp2DPe z_LT12xw9axQVSbth>Lr0|LN1Gk7B#GG@|d{FLeECmP)1Yb7f_Tnsrlf$U7Ih&)kYu zX*8q$nukv3tFO&xGMTi0ZP=vKN7dunul@S8157NZf@bukY{B|--W+ER_}Ml*UvBJ>rG9X} zE&-ocK6*RZ1rZVzm3)p1xWDbBRUo?1+KZp;^8NnL-pi|s{J&`AweS9peC}B;tR3~d zps1^6MN80vy>|v~+_>@G(>LtVVvp=o+JVl;^n`?j_m--+@0z(SL2YqwwuE1@bzS`0 z8gi?`&_U#0T4A4>cTW9m=&OY#PcE-oq-v=g-&maJ>5Qvg1NR?1n6`9P^BFPF@mbdJ zcItf7FhPu1JoE73!?NfXO~bX9z6amV1);yrq_zajnl)?HK?;dyiO z@cy@VQ$41xpqEek@#~src-_{g=d}Bi5@n}_HEBC8FFl>)4uQjOH7;JdG<>mv$MXyO zfL16@zMfYy#XOr$>NW?g`lXjC6mg+`3tE%Ews?4XdFh%GtuE0+FrKVi8vUI$;Zz6TGP@df?i|r_|%mjTmYuj zDZai|T*l#*rl0K%89YwypKbL1zP^_OO-ns;ZXG%Q==NNmkYy!-kSzcnYe zCq%d6DiVrI6B83FqaWS(H;~EXbG2<1fc)-nlQQf1k2RTPhJ`u))@D6dU4QPmVM`&s zFnrOXr9-cvzH~&5cB_wVytU2gyk#RqjUgrC(clHYj@K$Jwrlg3to$x+{&CuC`IqkZ zZD!!y9o4VC9XxjI?Teca-{12G1Dt{PdG_n?hNfW~%*m?d_vXF+bRR!;PG-oe^!kCH zYo;8JxSt*a7Kuc4t!@iOEYKgmb7I47M{t(U-GkKXo2HJPoNG*4l>7FDeZ%589M`Us z@1MTw8~9REiT)y~pAB6=Jv8K=*PVS)&k8yO_JNV}r_`+uMdaqq_w?)#wm?0b_smk;JBv0bdh^cRW4~#ik#yC$B{|bN8%ieW3JtemhQ`OP*FPIW?_t(qg7&-^L8jWdpM->Uh_y z${iQFmS|^AYwG&-M}J^Fv<2SeQ5pCr%s_X`pZWVH#@*2SE%Z$NyW0C&3S%w#>)mPL zS)UH)kI0MJGE!T!X4`y`p=BB;Uw?q&k{2wT)^!qefa02`IfeNn`i_mdY2brh zo=?-#PprQ&Dm7pC_#|sog!JImV}vcf;WeKZP5gG2yL91?M-oY0-@}lcTV-KEK>`th zKuC%_efcw^X?xjA*S}7R`?77@w!1S4yL>nOq8=>2+MRwP(I+8{BTq_7;v`8k+%!)7RwqJ+|&MQp}$SCi z85xI1OfS9s&Lvw~H)8>=aQA3jD4T0esTy*Od9c7|Ji*PDh!k9=>k zA@7xG{-@qbC!ySm3b=cqxVYFQV0-QThYyWNGWoXmsMKm7C!#%lrQ5S{>(;1FOVwZJ z8-xh{^Vr=OwB#mtj3KZ^I0Lb`>=}D&&ynyz53sA}udu+yfTRP#!|GN;M5|x8i#%gS zK5}zGq;ClQSe2r3*|>UFV4%l?boZ6M>GJ>}x{q6X%%n3{dWW2G4?Ma1;|xF+;7Ss} zHp(da9HxwR0puoM7zWr^wybJraI=8t<6}MtxPk!a+HUQuiA^`Rh2)0TpBpU1@0lI_vVH z=Fqj6yV?*o5z z>`v~j&HAhw^?Gt()3uDAQTF~_4fLg75erLC56Q^L6qz9b z@-9l2?3{d_%J8Fl~Yo`;K~1LkIPVg?Ex1Eq}U+X=vjr*_@lg9ypl|9Ps9 zpgkNnbnCi1o?qr)jZgc*{Yw__KXmo%)uk<0J0m83U$OI(vi{NW&0YmBn=)7VgGHTz zT;yWqB3xB@8{I#Lr zmf-ErU$p(zHPGD$I(|;5J0Ijaf<5j^&Z_8P4}+s-?~mv>IH%A0`{!3zsHjgRCf)k+ zuJ)Okdw0!S!Q`5>$;N&A>X_HBU$3jggdZ>7ej%u+wYNo`h1^|EqrRXOy&QM61{+aiW|j53X-nPuA=lhyUQWV00IV+fiybBpxvdTybRGIu~8{Ga*o0nIZR}S)-6Q zdS!)Qp~1rZF%v0&>IQX9sHkyf#=!lB=$_)orOL*W_lZ3FJSYxiq(@d>&1UX+&=cK822fAp)bW`=k%tJ5=8_I-N2q*87v2DC(@NZ@!x-)Aa#* zq2C!>0mGZMt8`RH5$@BM;_da z`Mh5juh?e%jr$uk20JC(cx41@bBg`~swlU*AJgs_bx=N@7t?qWH0qXT-4xWrxo1)e zS;8sVzUhc{M_D2lUO`P{Xn3G;7^R?Y$QkxlJ$FgWo6)=2JKRM@liEryq}&dI6ixH2 z<3no%c9%S~jE|j=UZzN^?i&J5y?1tVXrS`(#MBOV(SLWN39+KvISE4m6BWG(KwupW zaAhuFc4xz}DaQjetInbSh;FB}4gtIcT=4?T8RRsbp!Y5F`Ph*t-GUe#^xwQ@8sxR^ z^f4`A>GyYC_DGqE{y1chd&-uce^osmBQ`#;&_71!L^a<-6JopU@tRyCc1?>*PhR@8F^atdF8*<0ykm~M}?-%To zoe0_uni+O3J%8_^rkt5SiT7{Ko&R8tzG8ja8vJx@_>!Ck!v`%HMj|E@2W4KH)1;pf z_t~*KQFyIa-`tj!)}D2(G1S?7O<_*SpUzivu-e1EanlT*Vu)y8+-C)0Q$bE^s0%M# z%q)wk|SNCAQ{|D9TRmd7Ysh8mkF3|pJCA^$Tt$biPL;mB`L|Yj)osVk zgV#pCJJUCqVBiJ%fDQedUT4h2h9f_zXZR#aLry) ztnz;joXhl^Jp3N*)Me`XiNmNpf0}G28od9UN01xh zLD+&r>BGl)-g#k6Fyy%bT6%6mLzeYF^-amzc=>cXytoxWx|Orqq&Et7B=aijXFeMSK zKKLiJdH;&?GSNV8;m|iq@==gaEy9`qx<_5RyzB3g^Ri#t))xk3Hsd#T=h6n+zDI^- zu5UZP_1vO7-t^zw>I+xQe)zM>5@LR$AqO{gDlLg0KTorx&=EAt7h*))pHH7|&KPM; zdA<7Q*?Z$1%PXrj_k>e}UfWwGwQiQbQ@^+_>HqWhf_L=OQrZXlFz?jS+ES(EP4T|O z((RCWi>i)3%hpYByRcP{yGtD?T=XC_EGz1ePq^iI^|MbQ=V41P@G;jm~=&$<b3F(_2PBO!|I63JXAgw40W< zy>VUO5&ynf!aMB~0FfR54IuXY?{2pg&*h8uk3d?V?@98g8FaZ!V1%1>L(D)>1 zdSzl@K6I5gKsEb9DL{AHAAIPU`MWK8xV$ORoK#drUgX|2C}jRUWY} zZ+-=B6t0Lsc`{{d-}DO+(w*_x+@5(^)1Cd|&RsU5)~u*(gZ%paG6=y74!+cvZDj0y zKW_aM3_nXdXO$p8m8=hG_ieu=@BO&^_OmQAbHXoGyLofRcj9UEri&jJF1&YhHgA^0 zZJ}gduKVsrRmR`maOTNhKl?^RK3+Mt^?PE`9%<*5ORjzPP&#b*tg>f|aUAp9mGVJ=|Rl9hey6>eR*(nVG@I}I&hXZF|N-uf7%+t zxDA^RQ&Do;MdYZgIjp_)EOou=HRxBvQZPenpYqr^mN>lo*5osD))KsPCyc(BmK`)* zR2Nyph`aSOVAqgv&ZSW4f*V<7sx}_rYRu6KsqeM{@!){g8YawrYWBf#$*TjE_3bA& z+Wc7|r%P^*Ccr@27oFqt5(-tWKJoPd$6$M#kFutj$e*Z;G4COR7h_p?xvCJ*=;9 zJ6(@?+_uPZ(C5LX=!(#_E>mEl!j!Q~D#P^kdG*!)nPb4n>xJ#D8QkT!j{dk=GuQUz zhID7)`_(lfZC=9T%*l-zPTji7FVPy`lU{o6kVhXpc=@f-U21X-72~*Myk?^m^L^{M z!*`#_b{sj!n>AemXCDl&;BueFwD7g7`F#jKw<-<{m|J+tb|3P%I&CYSG-22yLN5-Id%y6>o8Y%Ow6dl=^seL>Yh&@`5Z7PTR|m+9d5OD_4JSH7T4*fI2*N1+C} zKh|}cWa9vUxg{$%XxfkM=Ae-KtDIJKQrT-;(SIC!ls|ei&qv^^zUSg5a%mnqsRZe> zex_#~>|To3uGyiynDW&_RrfH0`XL4pAO$1=FC`am?eDkXpT4K)2>7CCynbf zM@BqRPUPJgmtA=0D*1$@3?+#;n>3eyGax|ohV8;j4T~j`C)&o03@~iUaND(>{C#b~ z(xU8B8~tMEaKI~5PrSL+lvBNJ-h#m84-)A=zf{GDb2y=EFaPaHPinAT+|{FvX+5-J zS!r&;snv*_+O)~8TO__${w(TFy?<_Nw$Ex|xm9c523pYRO#OX;5etKRj`ls0o9V1r zR&GrOD8$x!ZQ+v=hwJSnxgJ?3_KX!z|JYW0DHECe{q5Qk17Xvi?+fkpu~}hrcHXUk z48+Yu!ghx)fA<)@6U+?{zEk5Gv9r`;<*Lt9@g3ARA!`xY_;;<~?EHj>!BNAq(kF{+ zT)Vcs5zMX29iRMSU-HN1)egTm*;`qLr{5L?r}bvG>soM%j+Y|IJH;UWBjfNb&y-E--c9Q}3G3&*VP zpT>)!FUEb~pQ>>?IV<<)hZys>pHcK#BaVI0-6?Yyow3Acg@=s7Z!#696sAtV`UlCc zOvs*+Aqh2Qq^N>&FYTHZ_@BAyKl#Yb?9f)l*)aJ(xw6yqduMHlb!}Wf75OM%Z;Y42Q4)W2ZRny zc?(DhT;u{M030|D-w&QzG#p7>&`zt_Q$G)&8wGd{NPqCNc{srL%gX5SYd)Mu+!&QU z28RHI0#YJ3kbMD#r_nf5RSZt~CjjsRlzw-}l^d42jT+xNg|d9>cwu#qTi(BqeKVnL zs-L_CX*VE{=K74&4YCFnAYGYy`bmgW7f**E`G6j{NzWm-TE+>AAQX z_B`{@-BWfyg`Uy{6oxGJIJhJ{UA2J+MrL2i{BdQNJNVhKg;TdLrTsAaE_tktF>ptnuX6jybT$u+Z(sZ+gI)TZk)X< z_2)|$rxF`J&q??frxvYxl*>piq!sDPILrF|Gp*;Hz;T?rB&ca`Rz|24Npr$o{AK>U zrMokh6&UB|7Yb{(?&yyej(Rf)S^e|iD<2;}yCdqw*zC0Qsr9SemaHn{ufB@H0cdw@ zW3zYq&LI?ecvoO7y_cRtEh+hbBj@G_x{@Mtm@sp^EU@m$)zOn?KCbCnv~a;WZ&8;1 zM|VQ=@&gH3JNE9p!Flu9nf%hr&yE~H^6cpDn%(crDLd|@p}j3jid&$lea-~+DW5NR z__V=rs`Z?7{}94n?ZidQ3V+sumxG6`A=&e4=T2~GRIPIDo6vD<#DbFEnEjs?O{_CT zbx(XGf0WLPy(ALU4qf$u-$Mv>^;-_)15wp2=Ye7({_=%uC&S{9#uViDI(k6~_9Xqsc zf^YH6{A;6c4}ZTd;ja(r&CS4Hyq$2X-zZV#gi2*!!Z&~O$SK=-T7jGt92j|USLy7f z8>W27C1-CIzS-+jv;XbM<`>QSsh6d-*XcppX6})Zb1v10CK&#Hv)KzdOJ9r?g8AS8 z$mApS<5#{_TecQYo;PZN+k&d2dGLzm<JVI%y zq%!$>FT0rMvb*V0;N9Dweth@rf4TQu>yDO17C>=rdvx@}E8bUIGbhbn^S%J40?imZ zZ&rBB*Pc+5bkg!>Scy!m8OGi_t2-f4<4FB!L z!SqxJiJzLMoU4Uy{+c;G|D!AcYhT2}Oxn2N$8;lQ<^#YI>h+PE(jH8=?~Dea-(8#b zgEnK#MB}{6_gB5kn6@nkbaQ)rkrV2$#L+$pcuXb;I zAF5jO!(HSP1LV88G|RkpA6V(q>^3@W0x|~1uMR%GGzRv6qT9X2ZvPwz?i~0Z2ZC3Q z7v|EM&!qkrN$Z(V!Q>-V;T|dOfYG&Ax`(7d2cgY_ge#Ucyl{NOkNNy9?)vcI((|@YBRe}gC%yb+ zn-Ucj<$L}5^MkZABBH) zl2tIpbHd9rrHJiNW#g6CH?~9tY(F*4{3|m&tV?jv(VE0BxLX2z5VDD=w2h)1u=7G zM^Rc@+Ts_Et|Cm-2jc)cqw&Yb=%4$Re~@csvTr3vj&uYRz3obj?o3Y%YnuAueA~9k zOPBYQxm}#>+w&v9_Hy;MuP;{pWfC$pTaJb@)~BV+qVD;&g|o!&e(p85FE={5a{1dk zdsl4^es>&+^Nm{h>)W#;+11Y0%@Zyz|N6oEP)B9{5WiVGc#Dbo!DH%*bQz(4;KA`{ z+RGPzXVRiiY_1W7PD-EZKi~AO)XU4uwFp>0qCE4pD0KStHjz*`UBln_u7`Cvs7-kF zuG5=S-ab3L?CQx|uXF$W?SGq_32*dTO z)%>&f_l|6;eE9I;r-MU(Xr60C@5YR&vn{$Hs?S*5@C#B;pSS$Pl>JL~=H#rJxasHH z*qD9k+1ce6PoKUIJ4d=|$vucpEr&y)uh0fGJYeFe<_<&hX-!Mz$cU(q-V@f`@6fef zyBYU3ub*%l?_tH@6t z$-$J`}beA z{r)k~-F1j98E<&@=60U3{LGoL`2iEp;BN!#2m}INsZ=tjpAMfd>eZ$z@hwzit#gqF&Yzz+HzXuz zrh7gK^EZ}4i5loR_o7vCeOEan-Lt>HKd0-}$uZynx3bbwpEq~+d!IOQB4{madi#=` zi$ef9<*DM-ph2HIwzynXA-J|~xWKbuL)!RhhySPN$Z{6Fu)avXckdp++G6&7`Fj?B zwt1uP5*spG_^e$0Zh}j1^NZxKi51<>04TC;&dr_pJ%NyMr@(t@cJ-ZsmutPRy}O^^ z@q=EjZ>yQJzgpg1oLKepRqE6~D=+DYR2&`_c4z5%-NCT1S@&|&vd^2l*v(P3wY5Jl1bcdVp8mjB zS6mA9Ti|u=?}w`1_HAp5mwIz3s8dTWPU<*ms%kNs7)!J>E73JaZu>4>@u_in??sL; z!nL88SAYw_4jbnGx8=NkdV={etM5stmMl5=V{+zcpZhbkeeLy?m5TVr-P%jTBP6%) zC2wL{>+0+4mtOqZy1e@H)9UfJlfetBB#BU$>O4q5d-40_zed$InY$VXDx_bai);J3 z4{w(=SALcNu0$=fw%XsmYHVbu9X{~v;DUB%G-R*!@E&!hbJXbRy{GlHbsNV_rMt+S$&vE{Yy<`}XZD&iRk}>Cti5kI~LIrvyYj$VZtG30_R}7mNRj zLs0dkp?>h}op@4M*<3Hv|SNDCJ>)V+*XWzbALh}1`>xOlT`m3nmEyp~(zVX!cXLnmtu23lyZs0Ni)JcakwWx6^Ax1p3W@*9d#APcO<{+V=dCr#s+vQO(PVu6MQ2*P)9q z?4JUF^!CmY_G1pO2BcSPhotoQfY2+L<;2^gRR=fzX)QW_1HVpTFV}{C4O~;jHy`i_Um@nd4=yU zRYc!&|76{w?>WJ9)0fvucTjMPwyjido+PSVHNk!`ZI(Z)&W-tDQl`SYe3GiJ!k@U^S!>Al->_@RZMv~=~Aw`KpY mzAZ~G^7*rx`7V3dl5o4FP9rfGyPSQjiYx1n2nM6O/sx7enOY5So7CBxEUftX79BEwWCwCiS4LanD3JJINx7f7mfMB10N998Dsli9htzqd+BXXfTQcMOhMCCsBP/77rbPcWx8Z4wDT1XDDoSnr2fVBC7grryXLpMDYwY8yNvkSaOWRDQcZSikTBk6/SwCfPTd12QKVUIz2Piq9QfnhvNxFPg7pH+hXrTmbwz6IozcyIHC8JyRly2TpDQfQfdhYxF+1/zzR31Y+ZJvuznPZw4e1hYSIOoyoTJ3P99++RO3YeHwb+98frl4cvwAxJri7byganLn18csjCasSkLiH9/pA5CtgpcGl+1y4+OYx4ZW3Ai4MR/aBRthTDJKmKcNIvmvjhLN170dzz9IxZHL4kzw4248u5gKw+CKNwmJsWHL8lzx2m7IzlP5ZJg3JKtwjEtYI3UNhJOaVQwTih4zLfEDYQMPlM2p3w9fEBIfRJ5b2m9IkI9p4dxRwnyH0KI7xCouO4b8VfiTgM69QJO+otyqYWqvH2fYymW63rmRfR5QXZcWXM4p6VGlos9wCbeJpb+ada+0TCim0JmiLPIEeAQu4PEyjoBNUGaJVAmabVzD/+CQ4mal8LBMgoOUIHDE4u8SbyAEZ2wkJ5AxVGooBwZE8/375jPwt1c5GLquBanL6OQvdLEGQeOkG3XBB07DR2Qg50DLQke61rgcRRev3DLrRFQIAGnI7jKAJWC0xFdtQPKqgionlGAkn6Z+Vvk9SXTN0oylgK/OxKM+cSY8Q/qDjdj89FqWb67XcXMa7bzPYVXz6/e4rST9C5zUAPDMMwwTPvmDuDt475fEfcAGAX8fpmPMwzJ+gY8HKQfBOoeq9nF6XbOcXHeFzNkhD9xxnQ8zhP+yMEWvjDorhp1A1QRg0KZPnQ/CpxUBuXuWp/CkGwTAxbMC6Jl4lZ/xISE0nbTSmtZmaxMyXjglEywYPEE/mO/5sx0+QBsMllyzmahcODYBbGWmnt4YrdvNSqrrBScIWYDqOIy1mG0dDuMwG6xbmvInaKq2zg2CxO9WzfmDci09rD4LEMMs4a1n62PlEyQlrmqIc6MT9vhumwsqJ5keyQj6mdS+L43DfjvMRc+j3LRIN6RvTHxP4kTc8919zpNl95PMtpdL1YbwW1+cTzo4GGuIhUiStn7DyU7cZdOsip2yoPDKY7L6tX7FKlJl0hiJiGuh5DMY4nxVc+JF3jB1DRjCxxHs7W19G7DzbiNuOJ2atlmmUic4wmJdAOZ8G3lZioq3CDoTjjA1tTnzweCZGh5/ASNAoJcdwII+0Rb95Fsabjc6Q1Xm3ic7fMHG4w4Kuxp/Ovnnkrmsd7vzu0uIPVNY+Y5CwKsPekGW1OUvwADsCoGDCuvw9PGQOSeSUS4c7W8kRy0rd0koNYUYNuQb4ZVa73QLC8Mqck7s+NAqba1xIEOxnYKluJK5gaCSKsjd14jTGOdZVUxiMxyAJFaDTyREzYEgjIZUQcEbRumkzHGQxC2qEHG1p2BgU5bvIwL9h27qu03qwUPqrWo8wLPHcXIqBPkdYhdzc9e/Rl83Ubf6VM4dSZfX4fgO4aH1K35CFD84u7u30EyGbU9Eyw9FSz5fINasaF29qWzkzcShwKYYyEaDkTttgDkfK2XHme5a2pWHVuuuzQv01I4ZPtje7ZuNFhQJxrMDvBQ5VKXWY21SC11GRMxYCuNANkFqC1iQMa9/mN2Ow3Kcaguy3ok+iSAI4Ld6/bY4GyPDUDFPTPZCb2SZlfsFI7X1+tqtSY+Nliz68+pn6fF2f4X4LyzBTsz4TqtX1beex65WmhGulFCpJZ0o4VAOuNvfu8XUkNRWQztGNT9lXUkQLevu/vLasveev4eKT3dcpe46nsuDb1kqtYdRe7R3eu2qssNpxLtjD7Ltl+NoWFrGlia9xWsqk3lyKwcvKU29mbyjK3Or2RBBPS3Qlpq1UN2mnJ/Yr7waURVnJn1cRvdVT3Ub8tO1GQPUOX0lGl7kNqAangPkIxg6ogIelhmnGREYFIHQm5p7H9bUcwvFKqoyx0HG8JY0SJP11G+7T9GqM/O54BJkUb1sqLV0113zyvg/sJNFg8VcGNrxY3eLuUGMv+KrAdpT+Rasi54z7DpxKny7Qrc1/qxi7rsdM6XEbQ6VpX9pbSSFQCzyLFy+rL1ycDOziKUXKlMe5mBzdYWMG4uBsxXgNa8W1vbznwNK1w1Zrx4Z75I2GXv6t6Y99rLAVez3mtrysKNgCSnwfq0murCyMluavGd+cuAcQ01t7UHaUBvie5W3Hv5Uc22+PfoRvz7PLOYq9Dtc++twq0k7g2D0gM016EHrWktbyZTWjXl01Q5onCVCVR9kxaUW6rdBdzYspoWkqHrhWT88PgHXvboOP6ZHHT/Hw==7Zlbc6IwFMc/jY/ucLX6WG9td22nq91a98UJEiAVCQ3B26ffAEFAKLVuq9XpjA/k5CSE/zm/5IAVuTVbXhHgWrdYh3ZFEvRlRW5XJElUJKkS/AR9FVkuGkpkMAnSuVNiGKA15EaBW32kQy/jSDG2KXKzxgl2HDihGRsgBC+ybga2s3d1gQlzhsEE2HnrEOnUiqx1VUjs1xCZVnxnUeA9MxA7c4NnAR0vUia5U5FbBGMaXc2WLWgH4sW6PJLb2vPjS1Pt6J2Hn0/z6VhrVKPJuu8ZsnkEAh2699RNaThAzfGv3hQaWhuY0/l9P57ao6tYL6gz+XgTE2phEzvA7iTWJsG+o8NgVoG1Ep8exi4zisz4DCld8VwAPsXMZNGZzXvhEtGnYPgPlbdGqZ72ks8cNlZxw6FklRoUNEfpvmRY2IrH7ShdrAP2yYQLscBWY0CaFlTvh9ft7rPX6K25xAIFxIS0RFfuF4iZSkMemCuIZ5AtkjkQaAOK5tlcBTzlzY1fElZ2wSNbHOWyVc+B7fM7tSxAaEAdgYCyWOaywLYZoEG0FxaicOCCUJYF2yOysQSeG1FroGWQE+8UfA4JhctSiXivXOdPwfehmMpFCmpuslI8x7b/0XQqja3G3U33D+rh7qQpSlSUq9KpkLM/AWWZnSagUJ+jEVC26hQBd5giI1gAcjwKghm2wpkES3wbAwPZdgvbmIRjZV2FdV1hdo8SPIWpnrqkybXaZ3JSy3IiFoCysaVJUT6AFG898o3f85rW7ZBBfzRQq323Kh+TFDHFSULNVzljCnNVyhNWqKt0LMIKV6PkCBuxsq8o8j2gsRoze4rYyHTY9YQpCBkpzSDfESviLnnHDOl6lBjQQ2ughfMF2rsYOTR8FrVZUduF0SjLyhxYm0qU3yRT7BUBVxV+1DLEcSV2lp3PfB88ScoFG4bH4r8dl80C9g9VrWAzPJXT7MQYVXdkNMkldZ/suSQErFIOnIp8cvH7KFL2kFDUrXeH9/mzi2gFn5nKZXFIpXIfei52vFC6bv5Qt/BM8723D/RDlbGyerg6tjBDL77Jf438slP3w8g/zOmc52RT/4YnKjyX8lfZ4kuRj13+Nk4FsA8GRd0RlPqXAkV9HRRgsNr0xkH0XFjZflVUxWOzUs+pH+iNQDDQd3VA8/vU1/9SpTYOd8TXHsZu1/WWnevWsCG8+Mpf0vv+yPv6zlWo164feY/2Al626qKdS4MGJvCct64NPIfYugq/d54MZPvDUvadNw1LWXoeHpayVRfB4tHwr5Ez5UT4PE5YM/kzNHrBT/5Sljv/AA==7V1fd6I4FP80PrpHCCB9bGuns7udzux025nOW5SozABxIVTtp9+AiSCJgFORaD2nD3IhIdx7f8n9l7QDrv3FbQhn00/YQV5H7zmLDhh0dF0zdL2T/PWcJaPYF8aKMgldh9EywoP7ihixx6ix66Bo40GCsUfc2SZxhIMAjcgGDYYhnm8+Nsbe5ltncIIEwsMIeiL1m+uQ6Ypqm72M/hG5kyl/s9Zjd3zIH2aEaAodPM+RwE0HXIcYk9Uvf3GNvIR7nC9P/4z9z7N/B6j3NDDdS2I9dePuqrMPuzRZf0KIAvLbXcevvxZ/L7//AwcxNEf9wZf541WXyTIiS84v5FD2sUsckime4AB6Nxn1KsRx4KCk1x69yp65w3hGiRol/kSELJkuwJhgSpoS32N30cIl35Pmf5js6jl3Z7BgPacXS34RkHCZa5RcPufvZc3SK96uJusYiyMchyPGiP/+ih/J8OPX6V1Mbp6fyEcbuYzFPQLDCWL9kYkf9R9v3fsf4OXW6KOrH/dd/lzCzJwaMsHcIuwjOkj6QIg8SNyXTV2FTOUn6+cysdIfTLJyKZeN+gV6MXvTFZq4ASU9zhxIkKgEnkfxmQh7PnUJepjBlCtzOkdsihJGsxVox+4iUYkd+f2CQoIWpRxid4HNPoLNQ13AcTrPoZqRpjlAc9pbmCqFjnmGzjboSPklgY70Ob0t6JSNOgede0zccTKAIRrjEG1BUCZprRpFY9fzrrGHw7QtcExkOwalRyTEv1Dujq0PgWU1CTNrE2aaLqJsTcvDzGgKZpoggGdqTrQIPS0HvAyGVdDbAF6Gwy3QKyjE2B6h0UimEEPbNMwGwKrXBCtQCqz985TciJQtpaSsCzPCNQxGtGEixQ/iTDzF/jCOqmfhQ5kuetuWCxAY+PDLnVFKvIe1rCkumnqBi62vTBfHMtvsedawas4atlKzhiXOGiFKtb2XdKz3BshD6SXFAIzol6UxCbrg0okljNLQQ5gMzEnkxxuFyMcv6TVrJZomSqCnaNeBuuixGrPrNIFTisJHkcXargk7rbXYQ9mwtztQNx7yKYeiE3OkzE3AGZoEcMZBHalzrG83wGl1IxaaWl6QJsYsBluWNG7w9dAKhPQXHQNM1rLjWMcMu+Y6ZjYGq/dqBnKtr4aHqRY8RPensCLdwSWOycmsRAXImFbbjpPWapzm9+J37a5EZl2oqRWp0WTGn1T2d3CIvEJqyXMnAf09ojxEFCxXicq7I+hdshu+6zgr1UCR+wqHaX8J92fYpfZk0rl51TEHUnmUKqYArnV6mr2lk88Ay0DXpQoDbHMDeKyn2qxnnX9Jvib3CB6P06W8IJv1GN4gLlMQ13FF1izQcmRNPzu1O85sdYNJulperSaGk1Lx0FcFSTRo5iVYoAYFXiTZql6abCfThDSCwQtUNExkFADVbz3IqoMzonbL6dTOs+tKIUoXvda1WQ7H1AI4Lau8iDRbkhQ6MNKsNpF2hFY5B1A10tRygHVu5VaXVKhhlnPN3I9ZbqpuhuvvNaJUH1BqpRb5uHOAugxcn74ZB4nxh4JEP4/DhbIlAdXDulAnn6ZovbirdjhJMRORe/enqxr7nlBrC1qxCVUMRH1Fq/xVgOYdeWFG5GNMZ6zEA2dz79t8hUNZ/hetx+OBfiy42jc+6tZUAE0tfFQWVbCE74kXVWg9Q4Kdg1ZVgFbNlSP0mjmUqjGnVlUFENckpXNZXDH34jRbmmlsIq+juBPN1exoc1mabOvNYcvEj2Y7xb6nqLqVLUCtdDuorGxhZsFpWQVFg1qTbbA4sFXwXkN4oG4+F6jlcQIxn8tBku0HUNKbvCgqf92KyMaU33iv7iSo605y1qui/CXuZJp6Pc1lo4gc0HogxjiRzc6tOphcOvtzMDM/6IIXD+/m+FyGIVzmHmBOnegXsTdZRkE1uYnzoW4DraKBWYykFBrQH6tBN+m4We7N7Ounn6+fxz+G3yzrfvHYH63FrPziobC6Sxmr1prDhy1uUonSMfjQDdxgoqSrbmpFeErCkE256lLZnovktoKmDAuVmNHbwkzZqKvMtBML+gvuvXQDS1PuvVQQrVbKHcbBKYNDJWxaq3crG/VW2JwWXIQTnCxZjqwpt0YqgHNFT9MVPbKk2hEsaGJK7c/AJS700hFQ+Yei5ih/MqEm2zTRlDUoPXyy1fjbLhGD30dB2aGblYdztlbMIR2NCAJlqrHLtGsveeW+ZoAN8PDelUgsSz/fEMS1pQzgUOub0hG6N+G0tQKQslHnBZ/WIs68eHWWLpVQstEvIkmdgZKBC+EQXU3iSh10qTqeU6D2jIG9r0HyOK9RODVvbfjzLlYgZK0yYe4asTYLAeiK8HNxWGXB531N3GJuZe0GUsiGJ7uzsHvItJaU82J6seWs1i5r5p5xLyktkj7XV2rtewflLHWlVXZK+J5n810nYf1C+UlYrFD7ws2n7CjNcYh91U0pvZBA7R5w35x8eTtvjtoN2/2jwramPrbFbeU5A4vq04nYVxrYZG2DR6TQy+zfC63ElP2XJnDzPw==3Vptc6I8FP01frTDu/Rjq9buPN22u3bm2e6XnQgR0kbChPj66zeBIFAQtVXR7XQccvNCcu45N5dAS+9OFgMKQv87cSFuaYq7aOm9lqaphqa1xL/iLhNL59pIDB5FrmyUGYZoBaVRkdYpcmFUaMgIwQyFRaNDggA6rGADlJJ5sdmY4OJdQ+DBkmHoAFy2/o9c5idW21Qy+z1Enp/eWVVkzQSkjaUh8oFL5jmT3m/pXUoIS64miy7EArwUlydiGPc/3/H3EMGX57f24NvTczsZ7G6fLuslUBiwTw/9i9wFK/v3w+Pb1Fl1vdnvHlHb6dLYMsULuhw+WSSU+cQjAcD9zHpLyTRwoRhV4aWszQMhITeq3PgGGVtKLoApI9zkswmWtXCB2C/R/cqUpddcTW8hR44Ly7QQMLrMdRLF13xd1i0upf12hE5CHJEpdWANXimDAfUgq2snRSLQzPFQemYAyQTyWfIGFGLA0KxIViA5763brbs+E8QXoilSn0ZKTqlONS2nQyQzlb0ydvCL3DQyU8yZPfgjJzwDeCqX0J/BeII/oQP5utwywTDm2hdEmvuIwWEIYsTnPPwUaQKiMAkIY7QQdNvTlzNIGVzUgi9rdbsIYorhPBcvpMnPhQpb2eytAs41oA7NF9J/erShcvvtx1D3tdHAa5uXIspDi8soq6sSIO3Q4trVXbXTzongkTA0FjMYwTGhUGrig1Mzl6nbxTBGGHcJJjTuq7smtF2D2yNGyTvM1djaSLesY6rF2hBycnJZ2/J6MY6ll3IQeuUZR4MaUnMKyvS0bWMrbGvZLnfwja1OUlulpzclvf/aKwrvkftKO3/+DEL1ZjCw1qs7+0h5+vRlVy9X4qo05eW6Wef03QWBwzsKL96V46pPJqNptD2mni6faDih0EsADt9RGCdpXAr0azvTsVA0P6S2VWnZ0faZSlV0LiXaHDhqWDtGDeusooa1OSsDYwbpP52UGRUh57Ri0f59sdRtnVsTqcbEUjfrnFjuQeByp/AZfl0np2K93vgWoV5MRnpg2ps77hHXZ0V7s0T7F4o8T6REfAbnmxsZnSLxrcbDvd0k7z/3vH2qJ7G6XGmrXsyz0otafhTbdNTyAEYQfzjQxcgL+LXDIeTK0m8F4ZED8I2smCDXTZgBI7QCo3g8AX4ozq/jxZi3LbNX6Y46WpaUtX7fJG/Syr/SqVJcW7my7I5ZUJ0c6bNH+GkTMh5H8Kun89XuupjXOw2p67x2I7X8nP5IzlhcKb0Ooq6OpquXpa7yA2bXB4F3IYdS6xTiBIdSddrLwdcjASzT/exfF1p2w0hWv4DiVzfc+IynHgqEJIH4RYHLgwITD3ZAGGPG8ouRWCAXCkOBJ+qoF105ks7iiw3xQ6dl93DM2OZDkUB4dJ/YVOXj4oZUOltR4j9e44LIXyfmx3I+v1/B+XqaE+Qzb6XC+9f7e58Xs69LkqiVfaOj9/8C7VxbU9s4FP41eWTH8t2Py62dDu3uLNtteeqIWElUbCtjK5Dw61dyZMeWAijgK4QpND6+yUffdy46x5lYZ/H6UwqXi68kRNHENML1xDqfmCawTXPC/xnhRkj8wN5K5ikOhWwnuMaPSAgNIV3hEGW1AykhEcXLunBKkgRNaU0G05Q81A+bkah+1yWcI0VwPYWRKv2BQ7rYSn3H2Mk/IzxfFHcGhtgTw+JgIcgWMCQPFZF1MbHOUkLo9lO8PkMR116hl5C6fy3c779mP/zV/dVn67/fP4OT7cUuDzmlfIQUJfTVl/7yePntixOsvOSXcWHEX5O5/3jiiunN6KZQGAqZ/sQmSemCzEkCo4ud9DQlqyRE/LIG29odc0XIkgkBE/5GlG4EGOCKEiZa0DgSe9Ea05/89D8csXVT2XO+FlfONzZiQ1MHQlcZWaVT9MyDF1CE6RzR5xQkDuRaqQBKqPgTIjGi6YYdkKIIUnxfRx0U4J2Xx+0miH0Qc3TAfInr3sNoJe50iuY4YaLvyxBSpM5mFDGm8Vl7WGCKrpcwV8sDY3t9TmC23NJvhtd8bg9U+D1KKVo/qyGx1/IFn4RFOTFdIXio8FOIFhVqFrLGleraYyEBm4p0UzmJb95U9+1Oy7daIo+rzR6nafaIU/8mmD1JiSnblDAFTAks26GK0yS8lON4A4RUYv6DMsSHmOW+iKNrHz93MAIvc7Q1Srqy+vZQslRplZN2a5x0FIVe5+oMcYySDJMkG4sujb516RmKqo727Vn75ujat6Af+ya7wu0TtWbdvF6jRFCBzw5MwwZQoAkgb1jhpWcpVvcb2Tv3V/CWZYr1CDLC84R9njIdopQJuNHEzPv9KXbEOAy30EAZfoS3+fW49pccuPmzOKcT53zvfDwLTMU8l/mkuMukmrLtM9snDDDA9WosE2Hha7lbHEJmszwSaJ6X/miyt7HxsjCwA+FlMe4KL88hhUwS4Rgz6jC8w+mCz+qlGhYtSHy7ynoMieSMz+454fOcsfCmYfx7uombZw8K/56aXn0jFM/4CG7RjKSI0+FKcOEtacEMR9EZiUian2uFDvJDm8kzmpI7VNnjm7eW67bIGltizR7SdJxGeB+VNbYua9xhscZWvQZioVmME74gEdY9yBCTaZkDA8ilg49KAleXBP6wSOA+7TrgjLHh/XuO/lfzfKDo9oOwxtdkzcASjmLcFdZcrJcwCfkIYDJHOZoYmHjZlzOC6YLNBU7m/Moz9idBiE/eKNxKWeLtjyCjKUE1TJBiJl4miDUoghTjfjojOV3hKPwXT+/ejV+RSxtW79GY735U2li6tGm8Avu2CVMXmHOeMFEDVOkM+P0HVP5YgD+QlV9ft6QHQOMlGb2anudKYGm5ZcFXK+z1xOj9OzC797gvUMOIG6Tq+1htfY7bJWVf9oZd1eu9OtB8IAGo5YJ9YB7dQ0sQChqvjGi2fMju4QkIvXihoOPWuMA6YvGwUEW3SN0XFLtGUKGQai8gjJd5VyUdbtYgOwGn9wpeMJoK3kCoGOhW/srCVNdcBIbcJdG2OVeLimck4awQbOT/ET4e9hvlXWIccGm+NDxEmspJgdt7UgCMo8s8MHwr6KdB1J6cJrA69pqlTp4o/xfcTAllz0mSkbDT75+dnqLXY85+OGP1XatuV82ulddiP5Kb3G4Ot5cXFEM8Gv0WIDSsnpRy5BUTkk8Ne+o7vCzTmkE280pZjbcvqzH2GORS2II6R9OUNRjq6HZzDY86aj/XJY74CyflYgD/3gC4GWY8YwfSsh7oPZ4Bx3imCUbpdnoB0NFL0Y4rLxXIFrjtDAQc7XJrKDLNblCk5LGm13Ueq/Yilsu/KOEv+A30tafiNaPC1AeqqQ/2WPqgPUuvvkaTa3LbtjloXcovw+xZBuj0FbLSir+bdVA5Mgl6b3Iq73b0H7r+A2i3OXXlP5QoBMj27bWF7O49UfFG+BGPungsUKaBx8bzTD0UmYZsv1pHkal4jktMCy8x0GK2vA4PjN6r2SVkKoosvgXNmBIeIY7yC9EA2LMm0FBwwzZ3X1i4RfTuex+ti/8B \ No newline at end of file +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 \ No newline at end of file diff --git a/docs/migration/v4-migration.md b/docs/migration/v4-migration.md index 8a36b48a0..8d3c343b1 100644 --- a/docs/migration/v4-migration.md +++ b/docs/migration/v4-migration.md @@ -11,6 +11,7 @@ A number of changes were made to the configuration options passed to the `Chart` #### Specific changes * The radialLinear grid indexable and scriptable options don't decrease the index of the specified grid line anymore. +* The `destroy` plugin hook has been removed and replaced with `afterDestroy`. * Ticks callback on time scale now receives timestamp instead of a formatted label. #### Type changes diff --git a/karma.conf.cjs b/karma.conf.cjs index cde1d4faa..9ea00966a 100644 --- a/karma.conf.cjs +++ b/karma.conf.cjs @@ -3,10 +3,11 @@ const commonjs = require('@rollup/plugin-commonjs'); const istanbul = require('rollup-plugin-istanbul'); const json = require('@rollup/plugin-json'); const resolve = require('@rollup/plugin-node-resolve').default; -const builds = require('./rollup.config.cjs'); const yargs = require('yargs'); -module.exports = function(karma) { +module.exports = async function(karma) { + const builds = (await import('./rollup.config.js')).default; + const args = yargs .option('verbose', {default: false}) .argv; diff --git a/rollup.config.js b/rollup.config.js index 130252788..de558e295 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -2,7 +2,9 @@ import cleanup from 'rollup-plugin-cleanup'; import json from '@rollup/plugin-json'; import resolve from '@rollup/plugin-node-resolve'; import {terser} from 'rollup-plugin-terser'; -import {version, homepage} from './package.json'; +import { readFileSync } from "fs"; + +const {version, homepage} = JSON.parse(readFileSync('./package.json')); const banner = `/*! * Chart.js v${version} diff --git a/src/core/core.controller.js b/src/core/core.controller.js index a6953ccb5..17394c933 100644 --- a/src/core/core.controller.js +++ b/src/core/core.controller.js @@ -955,9 +955,6 @@ class Chart { this.ctx = null; } - // TODO V4: delete destroy hook and reference to it in plugin flowchart - this.notifyPlugins('destroy'); - delete instances[this.id]; this.notifyPlugins('afterDestroy'); diff --git a/test/specs/core.controller.tests.js b/test/specs/core.controller.tests.js index 90d31d061..e30da0fe9 100644 --- a/test/specs/core.controller.tests.js +++ b/test/specs/core.controller.tests.js @@ -1806,7 +1806,8 @@ describe('Chart', function() { 'resize' ], destroy: [ - 'destroy' + 'beforeDestroy', + 'afterDestroy' ] }; diff --git a/types/index.d.ts b/types/index.d.ts index 77444d8c0..c79f19cbe 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -1083,14 +1083,6 @@ export interface Plugin exte * @param {object} options - The plugin options. */ beforeDestroy?(chart: Chart, args: EmptyObject, options: O): void; - /** - * Called after the chart has been destroyed. - * @param {Chart} chart - The chart instance. - * @param {object} args - The call arguments. - * @param {object} options - The plugin options. - * @deprecated since version 3.7.0 in favour of afterDestroy - */ - destroy?(chart: Chart, args: EmptyObject, options: O): void; /** * Called after the chart has been destroyed. * @param {Chart} chart - The chart instance. -- 2.47.3