From 8378654fd02fcda4b43f6909c0441c7afcd58da3 Mon Sep 17 00:00:00 2001 From: Patrik Date: Thu, 6 Mar 2025 15:34:25 -0500 Subject: [PATCH] fix(ui): apply consistent styling to custom & default block thumbnails (#11555) Fixes #9744 --- packages/payload/src/fields/config/types.ts | 3 ++ .../ui/src/elements/ThumbnailCard/index.scss | 3 +- .../src/fields/Blocks/BlocksDrawer/index.scss | 13 ++++- .../src/fields/Blocks/BlocksDrawer/index.tsx | 12 ++--- .../src/graphics/DefaultBlockImage/index.tsx | 47 +++++++++++++----- test/fields/collections/Blocks/index.ts | 1 + .../collections/Upload/payload480x320.jpg | Bin 0 -> 35339 bytes test/fields/payload-types.ts | 4 +- test/fields/seed.ts | 15 +++++- 9 files changed, 73 insertions(+), 25 deletions(-) create mode 100644 test/fields/collections/Upload/payload480x320.jpg diff --git a/packages/payload/src/fields/config/types.ts b/packages/payload/src/fields/config/types.ts index 725e9f7293..f5c1a8b6de 100644 --- a/packages/payload/src/fields/config/types.ts +++ b/packages/payload/src/fields/config/types.ts @@ -1399,6 +1399,9 @@ export type Block = { singularName?: string } imageAltText?: string + /** + * Preferred aspect ratio of the image is 3 : 2 + */ imageURL?: string /** Customize generated GraphQL and Typescript schema names. * The slug is used by default. diff --git a/packages/ui/src/elements/ThumbnailCard/index.scss b/packages/ui/src/elements/ThumbnailCard/index.scss index 42c805d554..534ba87f99 100644 --- a/packages/ui/src/elements/ThumbnailCard/index.scss +++ b/packages/ui/src/elements/ThumbnailCard/index.scss @@ -9,9 +9,10 @@ border: 1px solid var(--theme-border-color); border-radius: var(--style-radius-m); transition: border 100ms cubic-bezier(0, 0.2, 0.2, 1); + padding: base(0.5); &__label { - padding: base(0.5); + padding: base(0.75) base(0.5) base(0.25) base(0.5); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; diff --git a/packages/ui/src/fields/Blocks/BlocksDrawer/index.scss b/packages/ui/src/fields/Blocks/BlocksDrawer/index.scss index 07d0947722..c84741e9b1 100644 --- a/packages/ui/src/fields/Blocks/BlocksDrawer/index.scss +++ b/packages/ui/src/fields/Blocks/BlocksDrawer/index.scss @@ -16,9 +16,19 @@ } &__default-image { + display: flex; + align-items: center; + justify-content: center; width: 100%; + aspect-ratio: 3 / 2; overflow: hidden; - padding-top: base(0.75); + + img, + svg { + width: 100%; + height: 100%; + object-fit: cover; + } } &__block-groups { @@ -60,7 +70,6 @@ &__blocks { grid-template-columns: repeat(3, 1fr); - gap: base(0.5); } &__block-groups { diff --git a/packages/ui/src/fields/Blocks/BlocksDrawer/index.tsx b/packages/ui/src/fields/Blocks/BlocksDrawer/index.tsx index 4b638a0664..9ce79c32a6 100644 --- a/packages/ui/src/fields/Blocks/BlocksDrawer/index.tsx +++ b/packages/ui/src/fields/Blocks/BlocksDrawer/index.tsx @@ -123,13 +123,13 @@ export const BlocksDrawer: React.FC = (props) => { closeModal(drawerSlug) }} thumbnail={ - imageURL ? ( - {imageAltText} - ) : ( -
+
+ {imageURL ? ( + {imageAltText} + ) : ( -
- ) + )} +
} /> diff --git a/packages/ui/src/graphics/DefaultBlockImage/index.tsx b/packages/ui/src/graphics/DefaultBlockImage/index.tsx index 433cd5b959..166af64774 100644 --- a/packages/ui/src/graphics/DefaultBlockImage/index.tsx +++ b/packages/ui/src/graphics/DefaultBlockImage/index.tsx @@ -2,22 +2,43 @@ import React, { useState } from 'react' import { v4 as uuid } from 'uuid' export const DefaultBlockImage: React.FC = () => { - const [patternID] = useState(`pattern${uuid()}`) - const [imageID] = useState(`image${uuid()}`) + const [patternID] = useState(() => `pattern${uuid()}`) return ( - - - - - - - + + + + + + + + + + + + ) diff --git a/test/fields/collections/Blocks/index.ts b/test/fields/collections/Blocks/index.ts index 01879ea566..491d2d7bc7 100644 --- a/test/fields/collections/Blocks/index.ts +++ b/test/fields/collections/Blocks/index.ts @@ -11,6 +11,7 @@ export const getBlocksField = (prefix?: string): BlocksField => ({ blocks: [ { slug: prefix ? `${prefix}Content` : 'content', + imageURL: '/api/uploads/file/payload480x320.jpg', interfaceName: prefix ? `${prefix}ContentBlock` : 'ContentBlock', admin: { components: { diff --git a/test/fields/collections/Upload/payload480x320.jpg b/test/fields/collections/Upload/payload480x320.jpg new file mode 100644 index 0000000000000000000000000000000000000000..187998578109f5acb664377267991031644f3af9 GIT binary patch literal 35339 zcmeFZ1yE#NmM)sOyF=j=?yf}%P9_xY?p{#1Q$XSFUbrWkxE1ac?(XhZ*yI0uZr|zY z>5iV6cyV9EyE`LJo|EV7eb(Bx*829h^JVU34S*>lAuR!bf`S4_y?y{Mi-1pmT>X#I zABFsn3iu=QO9uc85$ZkE8VnQ`02&Jl1`Fz?8$b?#0s!FPUJrjwP_S?ah|usz$S5$c z57=M=0PxUIP|&a_nCP&GC`hlTFtBj&00cxVBuZ=?Tn=PBq7Mp68h(l6v-kwWR9xIV z$_Dn1u}RrgQ-st4Do(C3aq-nPwOwa4U+X96IQjTLim5fcrDymgX=v{9b9$XuT*AoV zn}1OEAQ|Dxw#g?T-JhJk{8y~B zH9m3na~%eU>fGVu%K`uu2I^H&7%YG&U?1?#$F=nfnCJ7k z&wKq(|NRpFmjJ={PaDs^9pC>4!u+KuKdj4#o+l{3|B+sQ76nbcdmHu}2Kqm%B828$pH$i0eRbYEN*TSCr zkGZru^|efFZ8jBO%+63#u6FXhUER{4u^AX+$8WVlr`;J+=*`Y;S$sq7$2P3GFxoFG zyora+ct-a#Imp}Uv*}=)N%@K9AIf&GpED;^9%x1mz#CbRn}VhAZ*$F}wjKQx%BGaI zmx@(zA#Wwr^C@)>7p9ou0Q&{eWKAW--|o|gN4fYiye}r$B_3An%9p)_l%9|xA#+=m zC*C7OQZ`&3pLGUh?L#-Inuz6Q*2RIxj@NE&hfE-*DZ>x$vrHeb|evRsOtqsYpm_wthN{A8+83~}{gL0y6)oQ9^( z4Uv?E9TjIuLBNt?zEE&8smWbl_J)m93R38B(_6gUd~IBG*a^mv)lGkOFkM2<+-Ako zP@~xkV9dwm{_xO)ay3KYUma5aq%8+TO@g>wFMno!o^_F@Zg7#>J{JEr9uQ?=;7Z$Q zseunBP}+G=oi&?PQq?Fg3hfsJMRtc0ATgm4^PqSUgVbUpO`A+h42`s#t43Y+NzPZX zT*0(P=o~>2E8rH&W26l>bGaHdOM5Mw&LhN|cT$0a;L2i@YM!OsSZ4aJBTd-sxM~%$ zH^dvYW6)>lkyeb$aC^v`kDWqM9&nk&b>_8|-IB@;g##mQ=ejA>uv61^xJ3f~_ z`Fx(IpxX@TYao(<)ZC9Ys|ku~@GR$Lyx^e`UT2e%uEIMJwbkD(r^(uC0$(%l#z^O$ zLYyG%NMbUSzut?%B8)=A{Ce-b=kjo$tNJ|cUTS=b7N|6}@GZu8UWoIWrc6XI?6W?$ zvn+Ee)|knx5q8HRA9WC7PjA1d0Qx!wd|5hq7Y=5gD6JvY{4BhHWo?*UzBdMX z^S6EIZUV)Y_U3NDjNZcnR%?rxBG>MT^VlSKjtQ0I_#Sa7Kv``mZp4%)9>PyPF%{rQ z&XZc0J8-dkF@i3s85{8aeF1%Z56Al+4#{Gm5`eIPKFB`UA^1%Y6n6S|hJIQGUxx&b zMbz{4AaDNdY5ru#4t?QgYt-z`ETl%4q29XL7TrznO_4+fSwSQqj)P& zPL#v9xH4@9Ug-m;rW)SG{v9jllG@S+CQ^5u!taH#gPp)iHzJzFUWTnx66WYPYx0O5 zO>~Z1N1%-tfR88c8^J&96G9pc$CaL0p+KX+2NwwcW%u%76HhbIK8-gcy~z!nTKs z_@7u$fEYrN3&sZwSI_m^pjiy|-**oitTU0TTDcJ<(FrwAX@@%^7O>yOyCs%kJa6B2}AVlYv$@5DvE*y_TGvGAULNl7;bc%HZT^_@4z9n8gL^&bgo8*Y( zg|t=rz&qqh6b8#+h=f{h>^!+#L@Wly;D(@ z^oZtu(gA3~c_vCju<Xffvy&KIL0$i>~2A z!Tj$oFhLIC(WdXFo#hs5#s+JJ`+;auEo0*Pj3$%ntd6L#X?LAAE3StZiH>s4VsLF} za;@^xqQRj8Lm`sJN81n0oMN*nShRePPGUA7C4NmKugjD$r_+{RrIixXae;L!F(*C5 zgD{i)=>vjn@niR<$+X3{CE6Y{Z0VKK=k$v(F0|!8D@&HZAJU79re(c!8Sas@mA*{f z@aalblJd+zQ3PK;7&;WTIahSfjCno0O@%`u7gu@B zOA1orYjmv4Em;!Y^3hIUvrlJqe>0azKUEH8z8@=;(I8?r0p64009cf^(Gu;N4e#=*@t6lyMkxwbH z)~xG`QvInBYQ;y5#k~Q}3H0@BQ3}-U&Upd+7@{U&XMy!%)~hfq%9xoXS&ve-NUPF0 z2(GK|YqAgXHhKrCUYj-RV|Ss9ZH z%$lfP01;niG5Q!F7#|xK;VcVsZG6gWb&xK<+pOe&XgO`5VMFqdM_#A38`21x|f6^jTsRX2go#i0C} z?EE7!hlK_sIC6nDeGV{QVxll_z(_#6%;I5nC1pfJAG$ePeL5i9#*i;JEzyW+*GYkLL?7fNG~M(D#DO z>85!%`r7S{>$=&c=xLk0^PH{o@`>n*KCw9}Mnx+s8jcMXRm6G1Yx%8-y*>euu|m{Q zSl@k0*yeM2U^AqvqF8i(dhF`>bkC|*Ze^3rw4JI}?%{{LH;W+W`LU5 z@mM{u^sk6 zKzhfhH_d9-l=V2dkG4N3lshgG1pK>z5Q|*2Mei3O=6@D0z8A}9h%~~?qXd3U?_-ck zLHZ@$hJXE_1^*bP8FEuRy*PSV3U(ZkZrVDE(R6<> z57mSxH{&m2509%6&dsG^d25X~SND}8Py`Z(kzy8=5pHeV?O%6_xEP}hToBc|J-cyW z3>mb02+5LaZua?6+NzVU|L}pQHlc0!1)%dQ<2=?OM$CirY2;lNj|#OL7MTU@v67eKS7 z{DbLC1DTYSmx|tX&~xQ(LD_Dbmu?W7h@WUP_5AG%pv~k3)1c#)Xtr+IvxYj8tZ?(F*7B->eSk3dK*ScPrC!Z^cN@Y`aM zFPO2!5^`%|T@5(~pH{0VPxEDB6|S~wvmRB5DU`jr8C|+hD!dCc-N6Oohx)Dup>KY! z?YFY}7OuTye5|&dqE(EeVx6Y+z&oFsnNU7yxX>-3scChY9xFxTHe0!OYdCeRA|(6* z;A?A=;7V&2-L*7bkZ5xKZCG;Tg|V0S@X3wCa67Z1#6j&l#OwyX4vnYu_%X*Kf8RZ^ zq#s+cScA8Ux%R_}6$IALBRpY9wbsqi@p#?T@Uwmu;g1)95Esrwn@0|d(1z*V!kiZP zO_~wW^|tMPNZM2KSEaoqr{&(RxfJz<2PcRFb-brn^Z6%JI`cwsiH*f#uY_TZ#M~(T zB-*6uQS^cIyy-WVk64X(ww-TJgQbUPJHsWotc^%aZl0Vc?gcV(_=Z2O+@t`-Z+d@| zxW3a;*-Qgkk9d8^y~rMR{7R#24^><1FlNz`0M3~Yt49&Xs%1=*hK*M1RIcn8a6xlt zTHBr!;_0=wl5^+Irv`ouE0&TeK z#&jLeM5p*$DGcwvKXsBYh?53H;r3KjD^up!b+U!yH|46m_ls4(ihW1RGM{Ufk)Rkt4uQlq;m=C@+tVy_>*k_qyWpnw z8VS()horO(o7BjSx~&wKn0^T!{Zex1iy(Q!q2v#1y}XA$w4wyI8MQ zTbG-k*!I2IOe$YfPp#Bamx=SUe9RnnV!VO0L4CQk$~m4J?+q<`OcfdtMM4i2_om0l zd5h+3GNh(OOQ;vW)AXXKz?3aq{Mf_YF5Pr={HYMMzg+GegpHA=TB5A{ZX@5Eah1hF zK3CJ%v)fwp>-V!oFmg+CAZb5#f_-FILyy2WhwDysqaj_#N9{o|F3)hWVbF&CvVf-R z9qrARitfzmNQV=-kv*~zvi{7G@&TEq&*sxjXhDgBVMh6;ghD8{5oKE5JI|`}Dig)- zhejuK)m)0eytg-@GwxOvm%^b)Y8>_xXeT8M1;wo{5T%5QfKmRD3f^T1hi6soEmG@l zqR?eaU)j!1TqRRbMw77SvRa|%Q^PzRe_tgeJ~mrvQTvBlG+zmL-hv77Bv-!_%T3n* zU|^{`^Cy;t;mofIhJ6Cl<3j|_s+hyKJV4+&4i=UbaFrq5NJy;ra0EhYXogs85^?KN z9vQO6o0@s0*3#Twt{rioKGDP*F*HZKR%zIxWGiNi{DfYV-*6O26U`jPH$gyh^fi~N zdcTh+j?lbKksQ%~~mTKimS_)fq>1GAt$Vl<#IM-ljdz$xG3H zmGWQCr{7``XK}vCtGU3+a=l&zT1)sXhu;KUJqJq}}PVnD_XRMc7oMF_NaT zq|v0(^VK^r(#F!~D@@XWXkI(1G))|(jPkftfK(uZ%tzcG06fVZ5yq3160Xg= z;yMx7-TBN(@}GAePr6dOO#AW}QVwnLXIDX9!1xBqD@oCY+_8$Mg$bWUUP#BqC#{2$ z7eJZlb&v>;naJhAm4NFJGUl~$^Scf)fVb!6v$x+1AO|g(RQTDRYz;kQbBXk6KEqAY zXG1|(VfAEJX*^MVcSC^XXWrUT9ip+?FAoc+5E#Sc0LFv2Rh9uDaS5^yF^Sl?yY#L< z*#QW;m$Z5?S$#mc8Lv0?Y4X1dIA-(toqD&FumqlK!g*Hr_D!!%wn<|@s!R@qKw|`` zUCQf>w9?<{5+aewvR;o1l4SdLs0$JT-h0%@d3_DP8x=mc!b(#4eR-JfymYl#MB+ZJu=0?(FDy#IZkmtRH_+p z7yU85s#>t<*gdVOecJEy(?^#Y@NL+BbJjamPa(zYiX7`LI^lZOyqS=THUhEXqxmAR zNb9D}w1`F@Z)(C&4)>3dMQ0U5=Zd%cmE!y|N+u0+IF>^^S&BMw{M!bL-8|fr+}%JR zaJc&gu)`L=Dv+H1wGVj8VQuGe0%>fFIDP@le*L}s>u}f#Nw%0*$6sEx!9c9>2sWP# z#9*H`lSZI53C2%SbU-H^5OrZO3W{-mvf!DH6n$Zc8Tbc9=|LBJQj>^{_|-aiJ)IV}b~4Xxv*h zsU*i(#|b2%s5D*%Oh{KndOXWerB;w^(7G4c;ou0ad&nK?A1hd7Ha6}3rf&8ksIja5 z6yy~rsOogkJy&iuEpRKtuvLAjX%yv;W!j|9j5;TXUFA~if;ysL2EsibKMnR!a^6^r zvHT7qSO^)N8wTpqawkvNS)4jhTiW!xTFiPd=zfb{;|7nPb94Z$UI2uG!D&UwoAL|# z)Kiizz%S%_6}qSIT<$s24wXl}l%JMf#W{;Y4BWgDZkd}+Kp$tFV?|urA^fR*<719N zCxDWt|#D}ktt(WNGVhVEj0%aQwVwY&xLK`R;2X?Q} zCZ`-Ew*W!agAbMQPY35;+(vvpu`DRSjfiCEY_g^XEfNzL9W!}#sh;51ABbxf$`&n` zRXdyh(h?7h?HHVfVyYNmG}lnW`tmj6h{Z4_z5>f+HOAjE^cYmxqPt{jcG(P^#RH0o zX`!6=K0jO^IHMhV)E%Pt>wQ{RUPBn^5|Y@OTOh^=bN?-nn?;w<)X$8%>vA&^6?_gG zYbFzDdeh%ztM)$M`1gn$xXHP!yVQ8ejBuOyV$}Q2_`CISYVZD(NMPzHQ{@6NnwE5J zT}vDU;kVK}SF*&S6=kyGOK`JGqzynN=O^^}h zu@%{>rmv4miUvL0`7i|I+v$K*KuTOfJFXJE<6PmxhkR}nJs8g@Q5Xg#dg<9|5`Q&i zqW>jRhKg?M!RX=A_;udenfRtQp7&s5DC9P-PEL4fcmkuJ9N5OSe+XYTS9Q)xM}HGS zfK1<WyD+y0dE@s`|){n(VTR4r%%$}GiWD#B!JDT;KD_Q(T z8qG|>D^q@{sV)NiYOX2krbE|tCooQe}CyVa) zOz%M%6My6Vgr-dwi#9K^9w)q5@x}O_YKwXu8rXr*G0PY zTpzys+shIi5JQU#2FZ<%nS;4blEajTT>5(F_0Tf5j+7Owh3*d)V-4hd#&Q~i?fK** z)5A-&SB!!%edO(?F7+C2dUCaFpY4#m`fcCs}>+ ze6+2CmR|q`*u&0gm#w?lt7kc~vG~Qh^l<#wlEf<8MmqdK_8KN8Bnt{bH5H!~&rD)# zax{!-Rjb)}W7m`;C`uK>zVb4J+wg{sRCt+{xOLTtiRr!JIIZKq-F|g~HSJwAj})#% z`_{atrk)Cga+C2wG}HA+GgkEvIHo0=a-drhw`ayjcUNtiTVoF?iFb0P!God-s^SKO zgAx|-ToYhw%}=S6N3%le7Rn2=hhcJj84G$|$EXJ>na=g67Y8YeHDmp9<8tF78TCAm zgOjO3THRvitq3%Rq`0(@>$gL<)w8D3^s&hPXdxcS)eDAl+px>UI;v1+uwp9Ij<&(I zy7S$A{OJN#Bl%c?*IlQ}!;%~F=2^V1RHOIg-S0kX)LOA*Q0gSK)mO~ysY1`|O)d1Z zgTZ^Y(^izJ0a^kUxY!cHniP#XggOO{!O?LwKv0DzpKaP`%I|>m$S&*RU!IjBp6b`6>%CMudK^wMY3Cpz;QJu7PiPCnV&CVGE7-jYdInT zv>|vBC}tx;E1?rBA2iZ2DcP5j78di{#EMCl_;6P~?ZQgRO!s-RilEbULC%}s-Gh9V zcqpX&x<6xoP$Y$^;U2H9!XwulST7wmRM3&GYN|q?SW0U8MF9~r!qCd80EIqhd^&Z? zS_}maPjFR{{&B_|Z16H%BMYVn~0 zY1x%e*G1Mv#KtR=N=d68%qGusPLZ{_!n?ovXew7?p8mV&G~|*3(K>1}z;T>}4Ns3p z?Nlm zwU)B`Zj4KLc}yW`!obHSg$cG)Ns%bqW5 zHFsWamWegj;MYH$K9n`mPCp0x)Db8i(l%v6hAmQ3kE}H)*Xf+)8fP9p8U19Z=H!s( z6(ZZzi>{Gk9fv09-(o&gH=a=bQ8Gq~2r#ymXz*G+b$nf$(i8Q;i<W3OwP{ z`Ko8p$u~dS%sVoNPLq8Nd0jg2sIQ5N%&HnuXT>dUglIQKhJ;0!4y@E!mFifo9$v`CJM+-r*G z!gXs>afiK2{(G9pKSMihHEjl$!R3(Vn>NV2c~X;g>Q@yM2&c1Lm0ihD4)w-1QzE|^ zFh6?*6P1Fo+Buq030XGAbXNgRfCC3V^Y(Q{JAatklF!g7)6O|2nMgO8_AL9V)x7B1 zE>f*G>mud>YjunANY?wUxSN5b>PIedwx*krpJKthu`S-t*$4jVpK-|*sMS`ZB3nup z?d0l@C$&cL8n}}jZFASF-c@<0LoT{n&P+G`GY^!IcK&V60}Gq3CO7Cz-|)%lTWs<2 z!(jizy5?x+M6WorPlI&W2827;I@~&{71$@1Gn5o_CI{tlM76Xfb{rgiqW6hdn-)ET z#VP50J*Ps2@^xoJQIU?$QI`m{rjHqi30e-SdlQ@=ERc0;f~X+n0_DKMC~3~m*Ikmb z-IdYOIeo^hbtW2%!>Q1pV`{)3VZIdQP)(*ET30QvV;^&O_X=$DuX~ru=^POqhz?Rw zFOhCgQBjFHin&MC9By;Jl8W}o`tC2iBadDYX+J0c<{kw!%{&W`%m+)+^6d^ z)AE6N>&cjXu~AJHr5Hp!=xhu=%WB}KJc(i~{5&}-MU5o`sd?Nu>1zF7h|AouRB*uJ zXcQst71MFIQIE+gxy-f$wsf)Aj8Z^v?ONf-`a68#A96-uCC5$) zuHa$+10L}YpZ~iR>%T(!|6J0)KK3u1{Ig;5Uz781DKKcr^kQ)eCaAC=+|iOkOm;sU zV2%?i#b@>_1{vzBe5@Nl*Dv<1VF@qK8ix_ZBc@}g)@jDsR3F&7^e2f!Ex-C{GxbI8 zIj+=ljhs}u_k(rR5%K=<<1wM$;~VBpw#y4}>R67;1h5KJ4puqruj>UjAt5I(0O`fB zZQj{e%%8-63hFrdR+RU&bA;t0JAE-1vQAEI%blsaTLiPnapG;W8knlJ{fWfUxuxoY zcT;-%#NAh~wV9k{EMT)!}{9_rK{5LVpgL zodYV~5k_)X(QVQ8LLWW7dGuCEEFF@Yil%Y0-5ZJ6{{yqde|J7QA^(fvQT+86TLl}R zH8&vINJRZK@MZthH)>~~G*{H6prx>@*WkGHCrum~*4Ys-)ljrbFA8c(N`dTH1c;#x z>+T3Z&+LFV>`CxuLC+zB*7-C_h9nqNzCtQ^e@4Bbc$4=6z--5d>CQivex~$hMhKBz zhwL!4akzgCE%dvVaeai~D1oHer! zcJ`lSRQ$J$uJNtKqTOsgzUK@ciax=5VNm}}0Nj5lz<;frf2_#=*>c`4=SA~4ykih8 zpLu23=vj$=xpk}L;S*=W&N`NU0*U^HyQxN~^1Jz$D(fFBc^3XBg@9Q!5X`h>5M zkM7GNnZK;ps9lh#osGlo-p)%c8xO#c@ZKY89_cq&Ae{h^U|4ECXr`V8tbc4^T{(#Y%}V zN!q624O)IfCy+uc_V---!=-^O^(hg0q<+M$q^%?*)M|GdFXUgYTIbmrLE1Y76-QQ} zTOTRV(e0F{Q8RSHgiklv~67KP=@EGSs~jsn_do(1%^|oulLMpAhd$hg>7^5 zjjU%LXsD^*$Mh87$I(bp6$`fp4oW4Pq)SNEJIrLOCC=rWUx!I5U5P0tm%QcQuO3gv z+j>xI05+9t7S<&xbX^rJae>P5x9(NcXZ0GbSm;e7jPP6+1Q2&h=Vh8_jy)N>T&nvR zjYt`1ggF(92abL0HkH~G`?#y9!E@taEx0bpqg>*76c}+5ghJyBtW;qIV^o=`kW`Ai zePViATNN4{hT&`&iG{6e0_F2srM;YM$Y6R3NFd#Jf$Q%h|MYwPMu8>2mt_ zBN8%F16l@gPAJ?x;YSt;8gWHG62yktIf66F-!KEmFyrT(>0cSvhN@+iiVG`y79}Gs zV=+;x37n&xg732}^($rYK>?N%QtX=Tygi!*6XlB%&8U4-TBlleBDRMXhXOTomNq8f zN|{E5*kAJ4Nk2xVXUh~$HVcP;b}J=T+si3I1Aps{<4_#;^V(K?|NLY2o&#+2#@1+1 zU2#7BkO9rrCUq*Zl=JgULaCT}ZV$4|(zv=XcT||TV(kZ<1{=1uA3JbcEsg<3yV<5= z3q*YZ@fsx)F5G#sF-hUVoSGM-HwJh=w(<>)6LrEQ2ARie%oIj&HKbwZGn$-{f6Er2 zv^b_=_8)UJLsp)O8=DW2)~i)XLmQ=`2!m1m{Y_?`P!J z$|)86AVg1rKKai>40sr5ozowRZCCGRf`*?wX~PrX?lWvjkh01L^YYL?c4CpilaKI zxlc2Xj@vQU^Lb}E+#1kUpu+*q#W*&Y?7aDUMju*#gF-}mVl z52hY)i-&J6JS5K*zfB5?s%)d8q^QOqqSNz@meKV(YIeOr)xg|HJ<-0h{=Aw>UCR{y zCc345RcZ5J0c)%WV|Z%eym_Q zB-$`6$!}xyKWxE4Vi2v0&H5QDx|B3fkt-}>z;k65R3-wsqX7t0t*>FYV&L;%z}%A; zm@=!+50LfCVO&(7H?Vm`sgH~dIzWj~O}cPLwl8cLIH${#v-C7t1$)qFDl*0j#HnqV z4>&P0s%8$W4XW?5hGrvf!Nj^RJ7eeS_?67$%zv1*Vjp+9BUIl)UU)}^j~C`TS5(K+ zPbEeqS!ubPrYu9H94*e>A%-&b5%OoaiCz9&bb1zbrr43%p>K09m|gar_N_o-v zL!7YZ)ENhz_4RzD3hMp>yeWf#10!w;@*(Cys4qNDu&=&2qlq+LyhDO%TUx%iSt=O{`8~a3M~Y6a3k`@53CobCL^ir4z6473 z{aOx+Z#t|@6JvZBRh1Z?v>~4Is8T#Cl-=y)Liu!l>+)z*K7T!TNa8meBi$<0vL?*S z%W~$+m;qrSE_#Vcd|K4qx5(smq6yYvyNvYfoar#0>>*)crsj8ZJ6K1kr9C}y_%`!3 zcw0KGHy`Y1ZBxx%`^MfhIG=4KXG|ucfY$~YOM=*eM5SNrFO+`7EFwX1*gEz*inG6B zS&AIu9Kas{IH2?z?vKw5?~y+P3Ic80)L3=#v1!OeK-KbO?wb8N&C=0L_#urB^vI)# zb7NUVjcS5{V!F+^9XZ(TwoX(iiKV}-?8 z8T#$b-1woUFJGD0#c|owptJuG=z!$nqbc}EYIii^SKL0O_ySPPx-sr39O&o-`5O** z_YPsj-NcrK(Dvkgv)(2o>@}kK6@{f9kyXPn%A!jJ>#!teAg+iM1f6MVB6fm$bnU*s z{N|u2H|}Q->CY*hGLN^BPQ$-cIHt|8aK}F(JyO?&N7)+SYVcCMC)Rndk;!j)J^s39 z1d|IYAPoPbe>>2#9Lk&pu07akzq>s?cjHlWlZBo!ev{%%6}d~j|K=S*42Stx7i`C~ z%sl)GAq_li#|kC)qbNQ+J5J}}8q_EpCQLFcgKY_q*;s~j3;2C=jK}_aVebtp0T*y* z+rC-l`~8LT$n~+j3T@UC8hqt-{C$--9Oo$MgM7%&!TXj@`<%2nlKN z8dS&GM<@luh0J@AIGLO+#FK%}aPI@~gK+45qjxw0m{1uZMfpm)tnEmIP0YO_c$+y! zb7gT@)VMvdvfS38#kIH_n>hI00-v!ZIVcL(YTqN0;cou9MNI_bHzG8MKMcaVuJeX4ZYyiysbJa0hLtIg(`Uh$dH0i&9NHXPosA-_z5u{$ zqQ>a2;y{jVUVpe=LOAjrU%hE9ZzJk>ZuWhOCgvBt`t$1gS)S$a^#?(r=UGU77eD#z z7d|gpeTCD!7!lTGEl44D6N?F&ZfayQ;w?JX#rJ&?cvb=-rAAwdX8kW>euJc{wv2hu zUocSo{@gd18I=8Rkg&A$Q+WI{YRvOi8_0`j{SfKTnfW!$(LKR9yS*#3-yGS+y#J*n z=<9PxC=~kc3l@3?LOX}yid<=PxSli$in5k-lqor5X%cICM+8r4L%abXg{Q;+&^6 zlRF2Nw7P|X{!ZvF=$azdIO8#k9pId#*vctw2u%$eNQ0_lAS8Q2p*;~=UK%$wwC(G9 zKVjxu_z>FI&%wAj%CV=UaF>4sa(^?2|0`IXZ1eB&*|kF-Q)@KPb57Fl+800#EnI31 zZOrXV5yynoE^YnN3e;!{x&u@J50M;FdJhgJx&m}o2j z=i3X9ch)EG8N?s8jwAI0*KbaCW9iCP>Ks8hsIQW;Dl30r6H& zvc%}ARSx&?^19g+wB}G3(OakFMw`~v1@l++^mXz>5QND(sGk=7is3>fxsU}+@ciSM& z^aUeD%svK0rSy=MdY>?c@Xs)W#UZ0K^uh7pa=v|r5@-qv`tj%P*0E2&zW)W9rOA8l zmGOa>dI31-(YA%3T?hOb1l>%pWe2oStgpojMjdHvHUKcviXm|9*|T%#xhwDL414Nm z1eWvH-@Y~6jSwMRCrKY6uAArmb#ZZX@4mGdx^zE3vtgz^cd#cp!tIy>{Xn3i`cb(2 zt&!iN055crEax%$MoSpC3DFTBlURc}CxcXKnyqzEe$hSj>1qh6IMq?Vq{MKCtiU-) zuB41^qgRA)RN_Oet1WQ_KQ~<4AqF^?1silyJyW1u=^Ixn&n|=_w0D26OtJk|%~DDN zyK}JV5igQEbadR)^gNTrY>>4RdsyL4(od)8f2f{dcP;4?;PWjJb_NC}QqK1B zb?-ti=yZOzq!=QT5lNn$USyxc=73L`el=R5VOMVBVgyotqW2vC0m55CW_V-zD>m|i zLpxJK936u=pq=wRtCD|t&~~I8N4ZGZ>`;4rrI}hqZ|8_nF4i(14>TRC*1vmA5$?Xg zKOs-f!R4Zx$ro+S+|Tf1o+q9l;#=h@#H?l@h*H$B=0sVtJ*B4!A)MP4^iu#|1v%;>1MpeAd4#_UkWrwTCf#X+B* zj%6ISlI*;dsvG05Q)>z5ub9sc*l5`kzR4kOZ!H;-RjBadBMcaLM-?tjk-wkhJEwdR zHF6+KSIlw9mD8%f4A3nnudu39lI2eo_GHATJHKAUktk6*s)_k!tB?>=(V?DKFfSRh zED$AD%q-TK>^;>s)_spDN1v4_Xw5ed4w&isgo5J-eH8aZ>GZSQ;0?F&4a1UOa_qPK z^u(?KKu;o#2~2+_*BvVSDb(RFcZ?;>OWy}*G6M{Lj4!uqlK-3S_;-f>-v=Oe*SPJ| zg-r$tByBV&92A)=5A=P=fa$2u- zfR=|%~ek zoW+iX({0=5s~n2y8h`_)1>dsF7x~9`fW@lLi|*6TwBS+%j=mv#WZ%#?CNLTd~* z1HGNx%#=!pKgu7PH}aUQ^rA8q!;y1Fiw~qX1e43+vlp)w^*s@G<8}a`w;x{s+Yb@T<66 zMtThq7g?;l5mw)9z;F%vO!@(c?msyS zGy5Y540E)@tme(Kl2JJ(%NOVbHe=p$qo(8yu!LA>T(s*~$7`rnhwxs6$TJ!5aA;cl zCz%kSE%g;^I%MOUnj*m`%e>2QW8K)+DYM#*lga7D>PaM~YB)asTnYk8N%n@v;UA=$_WT1c-F!a0PnJMoF4V`9R)MSLG>ntyZM<^-P+Y-x}zn_A)qzrT}5lB_Wyq4b=8mz}UJcEwjq`(}kHN z*}SEEo($hp-UnB7#8xAk$QF%ZsuFDtk@>Ax=Tb#n+JHnW4~J7mIt-KD+Vc5(<7`9H zo}NKzlf$}B=Jdmue7`mC`9h~#*-YVm=_dXd$=3D(-vrI7Vp>bPERUC+NH$_Yg|#J> z+a}TKWITUww)s;tN!N}}BFXRN1u;Aw4bO{yzdg+4cW=iy@=n)-`uqfmEg9|%i4&(W$v>ZOrR9xaQ zmU!1K0|Z374?cFFUpJ(PHHQu*>5eXT1wbkNv&GFMm+Rb$pEJ+HbHr&+;%wIzF91^@ zRJ7Cvl>^l8tFus_LW(=lb1^B~d@TCg_+?>=(>)QPO744Vc}Us|fHUc#0fWZkrp9MS z=>^~dwH5Jh#_n;@=VVPdrf^~86+e`JT0)5Be$Z&Yd__r`{mQwOq+oF;+qUbz78ffP_vk_89>=Ks2V7F&9?&jf{fb2WVi=&kNftl9Z#uQl$KX za+TJ7<|vp~UekJ(j{O$Dj>IWZX41e7r}F4rSA&kTwt4}FVZ4qXvavB zm3d-JRjm$@8d#f=fIz_>MP*;s->Q{)W?~3ZBsVefQDUm5=wq*j4TH8Bfn3{kxZ@{D z`6I-fb8bRj8ys9^VP$4*3pEE6c$F7Gmf4@v_umYt2}8e@7r?-jJ4X4h4rqY>DOo<* z4}KWT0w@@S&zRW3PMA>izOM-p5cGlk9eftPJi^a2@1(J{YjTA7{mBZs3@?53438&I z09CSk*Dia|cQ9YEOSmgPKQ|_)Jg6_-gJg$_>yRS7c!>8~9xW>>ecmdoxbxdw3 zLEiy%0}f|9pg5#=4@6~P)~>Lyu-N3jlbxft-jM_US(NcdaH0MD*WltWc$dDR3q$O7 zN%w4Sk2Eo?$KHJ!u;;89u13v1jzfXFQEi$r2c%5pfFQT*D8t%J`D5suYQqIlv& z={gi;HO(F_HZ0-`_lh^2V}8Y2eO9tES0yah2*fn2O<-+Ws;y^h0-`yAV(|t3Vinv# z5@B)G-jme0UDWs_O=k$24-;Gj)k$!zky`z)L9M{P*l7{ZQGNPo=i)j288aV(insD6 z&DwCC_Q!Qfs*r(&C&3Iru1o1V7ZeKF+`aQCO9XWy`X;n9W-XD^kp}0={Fu!R7b<*? z9PF`NrVB`4q-hJ?aMm5#s@5n2p8xmp*qkl>6fwDQ=-OrVuOn$hiBH#@_`Aw>;K|mI&$ZaW2P=tB+6hZ?=vmb|mu0A5HXR6Jwk= znaSo;(BjIowDX57eIRu@0>3z7EUYU0T_?q+4Fh>4Z7aeY(N*BY2%w|+-~49wo@J|R z$h}8My_fCq!WXqlTGUo}^dIreUwaou4jDQI(?5UMX;VBS7mr%lzL~}Kp}5pzaK*^! zJ9c=m3KflZtB7ww7&p3U^n&z|_Y2Ps>cZ?*J!rQrY(#C5S#7hyoal)ME^N?)i<&o* zlmi$OIWx=dpsXu}BZ0sd3FnBJKeE(Li5HEZ_tB~-w z7i|m(@1d~nyFeIOFMy+tj)%B$y_?43*`F>wl>58n>D>JQujgjIm6Pi;p0shDn`T_W zuuO)im0y!0&wU^6cdicJ^{sT=J>ipEMJ=W)K7JeVEO^xu1JZXq%HaLMv`y&?xp>gR z=FKi{J4KBiLjy)m*RlP>*HFD^jf(gsgmHtLhNs3JwtnW>L0g!;$_H)lrH!O5e5-9f zs4I0Zu&AxQ>;($XMcS(Z?`FyC`Sb7LQtv^p75o387gD?nLxHq(yyXJZCl^35gbLyt zzwg1^GYm!_*`v_Mf`U51B=h$p&*?n20|1!7^zncnfX}~bD4>1`0uUZ)?|lUUZq5Eb z0Qwf>;(iM&)Kfb4?qPzxM2yPmIJPCr(6JZuTz21+juKsZ0R)WSNEW&{ z!)N8R9b1zNMbbsdWr(h!>wC1l{-+IB^UR)z$Pt>sUWJfWlM_=W-4kCr%!gqFg-Zmz zJK*Wb>C(dALNc8@A^XzLu4pR*A0=ej^BYYsc2VTwB`j$vIQl&l@a*i- zY+nFD>8Z4xAf93OAw)vHl78N>TCSow8>hIY=m-yyG6QBh7ih1jeJe!C$xZlySj)JVN|= zc2|>(O*#U{FQvkatE0KUtKY8nL@3jIXsiZt-h;Wc`;$c%u1NK{`#e*xBaPhKy3j$2hr^zIQ7Xw${ZRxVQc?>sk&%P)$i3ahY<=35(wE51oJ|;22R!W1LzQFH9Ic;;>Ym zx()@(YL_WylojVGilTY`O?vtB{8)(n_Dp_K=Fi~QvkMHcnZVb# ztz%(PST_XpxG)$=pQmtNEOO|5#|9%)qI!ODD1wRX)n5$XyFs`&%O+$tDBVkCh zfIG6l#gZ(Eanfyn3h4J;d^C+zEp`{0i=+y34_Eq~6|R@p!|CA`^PDUny2B5E9EJhf zM&E^ACQHM@PJ;)?QvgXt;RQTA9$vRDWlEpc1)q#XMHPO-V0_9F@Cfw`{ayv20FpVu zz>saDB75Az9Q{6-tu_pt_I86g+5iamQ7-1*VelEt$?IeFTh7TR4;tJRlqp^_=Qvs&~K z&;D>l_-L(a&%&G~5IHQS&3vcR91W`h>3#NWM-v~!0Txj4Ay!j$AoS$k3r+UBYuxiR zcL^m~%XDivd^EwagS2tmN^%EVHRLcJ(fU2il*A0?5$F`;=SxZE5KZ&>VTh+meE$!% z@t=fkGW)J5(+ByMbMoi+^WCfGXMbw=Tu-a_Kr=hV+pB_8N;e$Q1MROEl55O0$qHvQ zgBwgK7sp4HCgHor^$!DSwFK51W5(vCStRH>u?$ak4ByVE za+W?wWG%S2Z8sv&;yCL!a)~Q3;zP&ONK9KRzNC>*;U)zaxNQm>xUKhh?;mY*!uEG`uE$Lsifbr-SdNA9bjGcGA7*XitDrV{*|n#_y& zXkcJTMZ@>V7hy49+0!dcMWy6D#1L!(b1<7BT~C1I;6ciqWIU=ZHrK$ENvynEnz)^J z(i_zg(S0So4g=ZsoXU5|aFND0wUx6AeaQS0*^r$boM2dEV2QXedAx7wLp_!Xhrm&n z!$F*r<(u6nmw>Dr+#Ay4Y+7(?^&AF_ z5N1#J4ixa7#Nx-I$HsVgBMgp%{QAl6*)@HrMs#uybnz_}7ManxfxT64$8Rbm_H%N~HC_c=%hpMEsiW!9 zOc98<4U{>oaU*%07qk*IQ_ysm%*aPu&>m!FR;mq@+G~Ctv2%xqx*d*XhN@b3I7lq! zZFVQcM97uLfJSL23eCyeVZ_?x%eQC7n9I8eUEf#!D=znHdSZ`VXWAXUB7hDWH?Obz z&uxjq!{?KVu8a0iz`~M>N|a)#kX@ck_XwjRu(`5}igF`A;6n2L)0Br*ikFe)#*7xM41F zND7b)%cs8-+W1^tjB8i=oDUyZAixq7P250v*1vI z3oua1Up&}(qkK6kQOc5wL`TJ-4m7q+pRC`cgrLWKTI9M9BY;YZRd1f`H24&4(10md zU#RANl&M8Ypj%+c<+NSi_O@n;hMH$UJ457!oloCF#T~x8JHC%FCwDY9Tp;xU@8=X@ zkk>|f{U!}s%46ixa5a^gZi^`;*}jEix`6VafW=wuARU^1F(MmnyPN1Jvnab?Iqo1F zAzW!t@&5{c{@?q_`4~w(#rkWYkObQ2&UxP+k_!+UL9vghKL zVt*W)t-?~*tPDD@dSMYWumu;2|7?jZq5OP>X25#vZo^8Glv}T4ZC*ss#p4td#AyQ# zp)}qUsDP%%I^525H#JCo%hu9G9DDRh);)xrXqcysv5R+qXy>P_u29d`N{yjY@cgYsFT8uXSe zDR6snv{-C1*cg~2AY3>RfIsA;^m&haXjL(qI#^RzO2M?;E~!uvlI$86E=TG)zp3d^ zVw}GLlf_=7y~&3kWD))$wD&K-CoU4ge1}OiQO9Eo zBRi~mBSw#U(pV@GHOWLoG>X$XEE*%=e%-IRYqqNW_k#@}dJ7(gQVg=0AHuYQGi(Wi z{>~QC;*>=AVH#`Wc&9%6sbgFSxDg3X1+MA2naO>|UN^(a@7i5f$#TSck}0B)-vNaM z8#mZuEXhV9V9gTayx%lg5Lt9c#XKjaqOL&EUMKwAeOtEQbgf>i9ij`>&K#&Mi}Pvd zw$vVv_nk?=L;Gc;*V`=za98@%U#rwqe6qV*4<<$OXsYOr&YkOy(dGrBU?JT8mU(&0pdk72F;H zQ27gxg?Mof5bz3o3EOh}Im>G(EIMC!vYM(lp=;RP(KjZX?N_yMP_ox}W0iz0EYfV9 z**;6dbsJ=mj+Dai?ilhl`+Ow0?xRYQuo)8;`d&Z9ZgqBAqWIR0{h}9U3)rIO5yhm|EDG;>1g!Fzw_L4gR7c2RU zvwc=78g!n|pWexs)D_4&m@@sM9Q{KF38%J^0Ounb` zOP^=ZhLipU;XSm-Wh$S@bbpP#o9jvH`TpZ(7WVvbg2ir+Y{Gx;Hns832~Bv?^Sz@z zhQ3T6#YQ`!mrVZIs{1)8Bck{nx0x6vj?VEBb@?IY0DIq-&Y!>zhWSjlu3j7+b2ypL zhCgz&n?g>;h%-&)#a8vkxsbW#)ohw(ScPsbRIK8eODe0zoI5bW3@pw9zpn@iKeFhj zX4q}O)_$%KuTM%)H)C%ozyP`7VPn(hfbn@WRXsu=MKt+qi?(m+bIW|0S-QeJhg2V~ zx;vIe^DHHLa z77Ot>pTn_1z4@HzF~tUWR=Ub8UUop~IpnbFvVt+el3qcucy2S$_^WPpC!&Lv_cUpr z6hC4$Df<`v{aIt3^j;)ZDl)+s16RLD=HA&5o2;`1RZheZt_+1!;B0n?o@E_=+oyiYS4u>J+{h)rVtnJ7u8qEb0~6+Jws! zCyVQQwco&mN+|t;END-gZ(T;Q-a{Wb8yD)5QOqC-Tb29`?HxRgYG|aqQoYm?Z#;-U z!ZF_DND|LwlpwsBsxYGkTw$(dCnX1h@w#Ycj97plP^q?TlAu zc#pideSpkHA&>YF$?vqBnDhXY%0GN9{H%(rfjcLuA;*oHkgHZ2KSv32O=6G~EvGg` zu>l~5hNxm<(T5;*{0o7SVG{>oN~#horJd+I$HQ`g+1ux^hJ*!*r@P5_homC_;DBY4 zZ+t@7F$hYtj|8Py6{}_i3#FvnGd6d3oi|*{6nhtigmPD>$)p7}9*!-Gi0taGZf zn`GM(%oNl?xn7_Aoijfs5bZ>Z@!OWclog_H%fU4=kOH`c0%A6pC<>gQLZADYOtF&( z2tlR9OVIc)zy*E}%=$E;T+;h#p&qqH06oC<5DJJ%d!W!4z_J>eBh~Wto};_MSSY(0 z)RoqJboz)|t^7&(Q=*UX=63+vYHWrS%w2n$d@OX3`7eO*+YsF7>bF15_ae2)H_zmH z(0w(oC%`p$-yUXj(eH78ztDV<=y<5sUGdm;kqMyZLElcWe?`%{^F>N*dcFR838lLV z9*iXhc#allY1co&CcPTLihwpB2D@*GjOJ^|K&$`1TJrq6exJpyxZ7<445Zvx5VP}c z3tZ`6fRR@=!NA4mjqj#VFWHF3`8-&^-AZn$*J<=|mq2lHRu<-3MvNwtHh(996<^AO zo?AOQNq@9Mg)j}~B4{n|4z#POLmOFS9HQEOtLilBBF`qk8s`EYUpE6Y`BNr1p=Egn z!;3}|;Uy{#fjQ&gT>g6o=@k4}sg>`T>)Yguh*8mIv0 zBh)BPf#y=8tl^nZVX+Qsid%w`eSV@@RpnvgKnjw-A7x0zD5>gx(o;3Op&^?$vL1ZqT{~4}cwhIGQl*!-Tzz@T5QiaWwY^5>k8a){)`HD|4 zm0D}>#q6#7WtHXodO!+>ncOv>z^i{~oj0%#5DI+Z`#(PG-+r<<&xl%JauOMY6p_ha zbV98)8LVx41B(=EiieEr-woSlNlD<` zyl8r{!s!mrbn6Z}?I}sG=|emB%Z+>%-K-AIndbzFHTq#u5L*G%@3@n7T%#)n6*7We zBAElk9ZBNyl&fXP`$P)TiY55bSt}?w`Udb2=oK)tsV)zw66H-j=vlrc1;uZ?V z@*pP$$o%I^Y{u}fd}fnzg_rlkV5^6(j%eXk_7*MUYzZM1nzM0slSx4mG?XRz@&4RE2lAcWQ|l zQt*H(tGix%qaqmX+uR?IiQh+{mNgeO|9}rtdq>ldEczkh^-rZGzyGblfc!* z%HlUSOghdtx|Nl1;$xiY(#N)UeO6ICa7@cb$*r){>WghnV+DF2{sM$AX(X0-J3D7u z(N#@h_o8Gmzb4LD7KNfR{ENNg-$q6qxF3W2(8-Vte?Tp?YuC|F z)*$rB$Z)j9b^DZm?R~S25Qj{1^0mcIeRH)TugQ2dOaZNBK#;* z`@bhT{u6wBDX}MwloZ5Pb99$qak@w1akm3ft0SU8W|C*-vz4kbuiF1KyI_?2A7K}# z#C}`$bY_&aQ70IK=T+RK@yH%S>DRAuXrIXFwDyZA)hVDZ+1=AsTm&xody&J@x71$W zX?uNjhn4Ds{}z5=woJpoWzEk!<47$&nYQ&MO;nzitQZ>PkK>UhD%0YfdDJ6Mi-}PT z19JiMkL3Ax4Q~xT4@=MqcExv!i10tb36lB&JuSui853xGzoobpb~VIA`4wA1sp1jB z@Wm8=L>;za03XoA*@no9LHY+5hhK6&3;|B&1PCYKC2}9zFx&ysgoBspS-qp1bD^3a z_A$w|BlnrG5-t~+F9O~F6iK>s2}YA%k&YZR0JXzZ?`A8+8|+eg)-+0w1ALUziv+%GR$$1NBnIHyYAKjA%9 z!3_;O;}}g1eyi}isudYnyty(e-}*oJMtjPC&kkSKs{-c~80sgyC8V?4ta3;-2d6SK z;0^EydvH4>-912mdl`%vZYyz*7+hza%5TCityeo>;fO9%Nz6|&%^2j+{KaqVaI7?L zAeFff!8<;U0(FOgA%U9+Mdp<`O3*yeaB3BlqRGS+1nOi}-KMGe>FUgvUzGNY>?3vI z36#|W*ZW}aKpE~xlIs=_BJ5FF$zbHYg>JfAVgs9Ga}yhe4&p<8EZ^$*>_RtH0d*ct zAw}jIi6|Wt9*st{RYBl{>`Bj7!ZbC3UzUGdKhN+hPcC!0-h4?BIQ%=_ zOxcnz+(5qLWjiVyw@7UY)1zT*t66&-g0tW?D_baMwv!f0AN8#2mc8NbuAJ}zX4i1` zx^#ewkrOix0<3HxKC{&hrp*=&Nvx3=kr`byqx0>uc(kZ55;R5D!x{PNg`*JJV!%eCm zn^-rNd)JR2OIH+=;mVPm9*>LZr;Lr^%QYdnr#@W z)xP5Ewa1#ZSA^bLr-Tprsf)1TsJvn)lfOy>oHp3QRm#hR$pOC4BW#snziG~suD`B?Oq9J4Z@_asO&^X07fiZs9wzV%gE=+S9{Bxs{IA z^Savw4y;>GvG5;tkUkz478w{jUp72kS8wK9#f|-qL9KF`H$EyxOWAL0)N z2O7#3Yd}Q6PQ(wzcP)q^u!8vI@5Ffh#&@@bt|eGeV{c<#o?FQw9|S<1D!ew}*nB{`4M z2vJ>(&if!7C)jl<7?%iRf(4vd67lcR4X;Z5v^Lt#_&J_`jM>+FJ& z_X%n^wKeZ#jypLGNHqJhtael-XOa^lgD{w)t2uDwK;#vg6ineTqJJi>zeeiM2%N-o zVxf{88&uTrq|_Bm74VZCgQVAsO>JCO(JG$CV6DTnM|gO3pNf9O163Ur_f=$%;^F8i ztzW!JB@xtI5mZEn(TincNCD{uZd!mV`c_X-oO+wO@D_LRw6hrvKU%YE9Fm~OY{b?0OCw? zfzJ%zG9vav`I(qyyNAh1j2vTfSBE>QYF1Pto$!9QE(yNcq}*kn}sZ>iz_7h$g*BoVME$dZ$paX~64g^~+0 zV=7?v00w^hU0<1`1|1_9x@e(XvF2nhjZ>eYGe#(}{d&?gvD(DGsN9Dx$`fk-gM*vK z(EFzuk^r24yeYKLR*KPirD*ERpW8>(Bp)BFpd;qgc24}-CiF`LlpSHhmZ z0Q-!)E#FT+g6{&~Hk+N^ve4TEI0}ZCxC9${o0e;A~iFzh!fE)Ip?eBM$`1g}@c2z~J)K=SSLu4H@S@RPSV$=}pu4q(FvTUD@_3a0r zAc=D~sDPFx^eXJ&hxzwMz_EU{dbp^4YfHmULq!)Cq`RlVP`gjQw6!>W{`$?onm#MG zNTS{sZI(IfNFrs7^#TZ?b4?H#DNZFow zIEMBydOf{O-eteR!?$zQNXJece`0lnk+r*9vt?f^WzX{C=J~M$H+ZSZ%8FGwa@9#n7Ea>r-g%OztZ z=a;csuGeC^cf#vuK9-m?O_NdT4%u8=5PP}`%(=2ibCWzRr!Dpzqy}K{NVKKSQoK;; z+=uVKW6pkc7C7E2-Twvf4uen)cGg3K!WEX-UFlY(p~GjqbA@qlYKFeX}?6lmqtAyH-=rJRD}4pI%vHJwi9<0fh`UdEjL&l57!PyS)!< zwD_fs5ul%_AGj}N;=HxA#qLAp^>{v!8<(8OPZHhI&!Tj{SmM~7)U(}7SCYa>O8U3@Xg2W_t$pd>)m$C(Ts45SdzdC# zYijIq(>219i&>qR&l-&KEIa#Vl-X8V)>XG1Oq#5ospzw=B;KDONb?Y@B7d>H*4?Kp z3Z(YYX?6%%>LA|mKFmsA6bfAi$9%RH4jm?P^YRhj6W&o58`E@G0?zv`5dY9PwzsWl z@q!*s;7YGZ{ii~PGj-*S1Do0X1MZhJ@4<)}f*W7^9otSf_|Qr8LBYIO)=SE=06ImLH`mFAuq74|0jBs}>>Su$!5C-Urm z)%88*LQu@}v8iR*I`iPrKAlY1YD~?2i$z5YA2>4(99e$hTCdk~BsQ;bluHkY{`&I+X|Rb~NsHB9 zNirzBdeQS)ZbdCrmlV+{e6gbLu$ns3v@056HMnfS-5z7mkX+Ss|I2;}ZgsnO#Smzd zkHpJ$axZWh&&ns3nhO-{_e-PD!KqRX$tq{%V} zM)AabjLlCR?B$~OVD7Z$*&Uk|5xL(K4yjx1lb%`Xtt zoUa<}`XXgRaAA5Qp((ckHGkW!we7%q5TZ-Xp6U8%ckbOx$~fgapcu)m)2BpNR#E64 z9<0@zxP)In!Q8&U$( z97%#6K>FhgC39$|epXQFx%F=qt`OgqMJ{2_SQffv+s9xYDY5t4EU6P_6|xgnC&rNZ zHAy>w>3l_O+Yf2G&R-)5_gRO6l^>1IXk7%**o1X0u?nzHG3OfmN&wj z`P}wu<(Zi&XQmxuv)!3(4H5#$4#x!+v-F`{nRGcqyjdGQoQX7h`v{Xai!Z%PzVGM1 z(CezZ9_R(Fp8OE_l29;8ydNX1&Io<5xaz$@LtbsMMz)~`+a#D-!&6c1uE+)li|kJO z)SGW$)n82h?2@^%A=UnpR?|Y}Y8}aYOPc~3^Z42`gYQ*j z_IiZ~Wbvca`&0$%J&xcLm0wNEBf-kRy9t+Xo&3y~b#;y;w1k6ygA01N|A(0bdjEhX z{~WXQpKjDY7f>yt`|R1nhZH)@wCTTC9jni}k(F7#%JNjqN_uK8y{%awz}yj-)@XK$ zA6CX-_Lbh1Ws2a)7nx4`vqOA>_h7cye8mxwIB{XNzM(7YZ7( z01B$#=NC7xn?@y>=dOpsTYUfOOs!sET(B)1!yEhhO?Ou0ENd;&laEJ&l6FU=8G+8C zwo@*blwB2qXF+Vz%UVj(YyOUa5?JabD5a>9lHgY((d~xAu2(nklgImjVUMfQ!COFw z2!E8iVx%aaY?ua!trYJPa6vgfZNx3+itjYR1r0MmeEiJccK3qVx5$>L=kP;)Ns)=& z$1qkSwOwYe3DrywziA~1G#XseChTxN#*&>4xkV+-symW|zvM$c0A)kMCH8I<&)m83 z7Z+EKCxZnvbs(s|PtnBmGY-0PMc`fSrI5-Wd?_`|Z3JzfaY1APl2IGFpMlgJA)ou= zEBlRE$bs{4Eno1M*DEwgKB@jJ_2MFGveA< zqi}F+fCBub;=+@IJ%D3stkS}3oZ znak;7#a61sxCR)Z8_?{K%BnRp%uVH9UYxhrxaG=2zUx{X$d4`aM(}~q#^R!g1bi4P z_UaJ;9EuQxiB{UWWF>_yPEzTN3P#fj?Zg+-F(<=IH@$^;l z8+Wy?Llc-7&%4#o=6UctKRn9cc@ZX4ex6aP;3yU?p7?d%*l;pwX~RQ5=KwxzH@EM* zLSKBha$4B&>P@EF99Mj1f_1xYIDtMRpa?mLrGjIeGZ}HWIL3uBrB>BOWYzYIH%uRm z#Q=(PGn@3y$m*B6`(=toxQdxGvZ97b3ev@ozL)vbfNU#G`+2NTso}#(3A+5+C~&5e z??}tciTNd7GTxD_HXHA|k|{!65pd8+M|(Fvzn6MoQrrT&^>b~T#aK5SJL}ms>l!;1 z{asI$9*4Y?$9Y16yXLRaMk`rsC)cxq0Mr>xR=HfrM_tyXJY}iKyRkKuh!l;OSNJae+dfuxUAzE*WkOk%6mZ%_3&0p86up(!qlt|uV2_{3{vQ7Y z7ZI5`AKeUBc@*%L(&Q8vWFSjeKs?{C6`jp5=RS!=;XpseGHJtjB}}BA^92WD>)iDG z62G%x7R^)f>2rAb;FPkr=^ki#;HM5<-u5yif$34N3|>Qy(nQOVB&e=YL0vPxItj9* zW-q*7E?p|Cb;3e)wyY9LMcQL>wnGF40E!wx zDQ*!xZV?Q0CK81dAP^Q73(EQCKg~vpB0{c~dfyA9;q6f|Eh#Y+Ygm4JOhLw`v^eQd zd}xejhFZe-cM8<@98bKZgfA2qbY=gH2S=a+_+C(k6% zIpNSljJFn2_1S7={($(#A_QZ@O2ji{uSf;Y@MK%eI?luJj6Q{Bk|sjFbfWu-7Zc2D zY_uH3dWZOz^i_*Pl+TJ>*OBSlvBs{gMIh6W(!%HcNVfc+M7>kg=0@bR&S10gGcdLP zG{l9dcRW9wa1RX#3rk^)$*Xz{3kwUk*j-A9Lb*5vokn@xf|~TYJxeO)iU!Ns>H24#y_TGr9hwF$!kYYT)!$S~-4T2s5x| z;MB}mpPkT%kLeI`+FzvD))}-bW;td3Xlh>}#qT+8H{Vk{DXyr&tcJa7lxhvbc;8jy zP=B9)4VgVu#=GxU;u)JKrP3m7enobPlh zj2qxc8nF)od&4cwgm5eKwz(^LO6(h!cT0-gm0U=X+EMRG;)v&R4YkSUg-?r81{rET zn?PzbEf;>0wCK9!+*FfEtXedhy)^}M^T>+~9d(iz4wHEebS%`B*G2`$E9w>@A9r#q z&3}1%;fYFxCJHcEfCX+qRtZS1+>QI%%^|gm$1^kBQ#qofClSIH^BC%Odh9%Qb*Z#0 zyFvjIObA+a9d_C2knx5ku<}aDnAW@T#sp30D={qc&25BBgD>G(C0&N%izE`^44}%+|pK=&D0tH zHgflZ>)?}B+yvPZ=t-a&+0di(&b*3y{k*7XEEPqvp1h0TpE(lseLSqFHhNMkt$TE zNM$9gS>Yw$!7M3D$(5a9XwlD2kDW9*hqj7fEv`19S+Zmk%Q|(gxss$GeL#O-T(`iW zpm^Tq#=>n|-z=l4i=SDiR$LYfq)C%LKB=th1XD}-6BlIw_#T^A_AfN8E26_xbVn_H zk6mVgk>Qr|+V*Ny>vGF1F7K5_#y*&ouw zrYdp_!*!_V2*bHMbi1fc3uWKKTHyLx#<70KXL7}Tu?!F)q(!_O@S{CMKyOJ~$+uY2 zL#b^TH}#o%T(^$A2oF0*yGxBKE_>m-|Ri0yP+e2#r(87sx+27`gj zjlhPK8|vieig`>b`ekZ&SVY(^UFUz(3AOxBt}G|6Mf&^muvlqe(0v_dxIXnoq{LGB zubb!`oxL)9dRpK1*=)$HM%v;EFq7-EInW>cVT?0PQw`llp2(>~v0a8=W$riCDk<65 zfYN0(F6#5HC}&ueCaI>7glk!M1-j`gZ9Jbq(f*W(l|fFrRZpK0o)LV5B+yGo_2tL1jkT&4`YJhkY%>_zuBb4Tc>B zm>%T{QuoIpD`5k?viXaOI`R4&=MIXJQ?bQ`V5ceGJqmF?c+yaKUL9)mAH|e-y0Ob6 zkQW~kM;eB(!HDHa^f37K=^&Mm6RHA^O^Ci1GMb;WhvuficZ$OIz!GB^g?|j*S@MT^ z6W+hFU&)l>N&-;Op@|{rIhePwey$f-AKukzZp{N_IPm~OvLWOM&s!M9==lIZvxlr{ zW2zt2$>DS>nJ1?hMcS?)mFQ zmS8B<|9|3kDAHXyJK;~BZiRVqjSyG@`U}AN_2la&`Nh{wwk_xeWWljfsGSZ;>mmps z99!}5wDEoa##rw$WTYV}&Sni&L$6IGJZX$n9XCKSdK%=6gQ1?b1N#{VfDu4T=I^ic PH#PrXe?e4?zn1?8>>yF; literal 0 HcmV?d00001 diff --git a/test/fields/payload-types.ts b/test/fields/payload-types.ts index ccf48f98ad..11d14d44c8 100644 --- a/test/fields/payload-types.ts +++ b/test/fields/payload-types.ts @@ -901,7 +901,7 @@ export interface ContentBlock { * via the `definition` "NoBlockname". */ export interface NoBlockname { - text: string; + text?: string | null; id?: string | null; blockName?: string | null; blockType: 'noBlockname'; @@ -967,7 +967,7 @@ export interface LocalizedContentBlock { * via the `definition` "localizedNoBlockname". */ export interface LocalizedNoBlockname { - text: string; + text?: string | null; id?: string | null; blockName?: string | null; blockType: 'localizedNoBlockname'; diff --git a/test/fields/seed.ts b/test/fields/seed.ts index 7bdedcb101..597ed485ac 100644 --- a/test/fields/seed.ts +++ b/test/fields/seed.ts @@ -69,10 +69,15 @@ const dirname = path.dirname(filename) export const seed = async (_payload: Payload) => { const jpgPath = path.resolve(dirname, './collections/Upload/payload.jpg') + const jpg480x320Path = path.resolve(dirname, './collections/Upload/payload480x320.jpg') const pngPath = path.resolve(dirname, './uploads/payload.png') // Get both files in parallel - const [jpgFile, pngFile] = await Promise.all([getFileByPath(jpgPath), getFileByPath(pngPath)]) + const [jpgFile, jpg480x320File, pngFile] = await Promise.all([ + getFileByPath(jpgPath), + getFileByPath(jpg480x320Path), + getFileByPath(pngPath), + ]) const createdArrayDoc = await _payload.create({ collection: arrayFieldsSlug, @@ -121,6 +126,14 @@ export const seed = async (_payload: Payload) => { overrideAccess: true, }) + await _payload.create({ + collection: uploadsSlug, + data: {}, + file: jpg480x320File, + depth: 0, + overrideAccess: true, + }) + // const createdJPGDocSlug2 = await _payload.create({ // collection: uploads2Slug, // data: {