From 3b42c72e7c7f649ff8a348fd4877b3a1e53ec4c3 Mon Sep 17 00:00:00 2001 From: tannerlinsley Date: Mon, 26 Aug 2019 09:27:07 -0600 Subject: [PATCH] fix: better naming, fix header regen, getSubRows, getRowPathID --- docs/api.md | 40 +++- examples/sub-components/src/App.js | 4 +- media/src/logo.sketch | Bin 126369 -> 144447 bytes src/hooks/useTable.js | 158 ++++++++-------- .../__snapshots__/useExpanded.test.js.snap | 16 +- .../__snapshots__/useRowSelect.test.js.snap | 178 +++++++++--------- src/plugin-hooks/tests/useExpanded.test.js | 6 +- src/plugin-hooks/useFilters.js | 16 +- src/plugin-hooks/useGroupBy.js | 29 ++- src/plugin-hooks/useSortBy.js | 20 +- src/utils.js | 37 ++-- 11 files changed, 274 insertions(+), 230 deletions(-) diff --git a/docs/api.md b/docs/api.md index 55ca580..0d969a8 100644 --- a/docs/api.md +++ b/docs/api.md @@ -97,6 +97,19 @@ The following options are supported via the main options object passed to `useTa - Defaults to `initialState` - This key is used to look for the initial state of a row when initializing the `rowState` for a`data` array. - If the value located at `row[initialRowStateKey]` is falsey, `{}` will be used instead. +- `getSubRows: Function(row, relativeIndex) => Rows[]` + - Optional + - Must be **memoized** + - Defaults to `(row) => row.subRows || []` + - Use this function to change how React Table detects subrows. You could even use this function to generate sub rows if you want. + - By default, it will attempt to return the `subRows` property on the row, or an empty array if that is not found. +- `getRowPathID: Function(row, relativeIndex) => string` + - Optional + - Must be **memoized** + - Defaults to `(row, relativeIndex) => relativeIndex` + - Use this function to change how React Table constructs each row's underlying `path` property. + - You may want to change this function if + - By default, it will attempt to return the `subRows` property on the row, or an empty array if that is not found. - `debug: Bool` - Optional - A flag to turn on debug mode. @@ -143,17 +156,24 @@ The following options are supported on any column object you can pass to `column The following properties are available on the table instance returned from `useTable` -- `headers[] Array` - - A **nested** array of final column objects, similar in structure to the original columns configuration option. - - See [Column Properties](#column-properties) for more information - `columns: Array` - - A **flat** array of all final column objects computed from the original columns configuration option. + - A **nested** array of final column objects, **similar in structure to the original columns configuration option**. + - See [Column Properties](#column-properties) for more information +- `flatColumns: Array` + - A **flat** array of all final column objects. - See [Column Properties](#column-properties) for more information - `headerGroups: Array` - An array of normalized header groups, each containing a flattened array of final column objects for that row. + - **Some of these headers may be materialized as placeholders** - See [Header Group Properties](#headergroup-properties) for more information +- `headers: Array` + - An **nested** array of final header objects, **similar in structure to the original columns configuration option, but rebuilt for ordering** + - Each contains the headers that are displayed underneath it. + - **Some of these headers may be materialized as placeholders** + - See [Column Properties](#column-properties) for more information - `flatHeaders[] Array` - - A **flat** array of final header objects found in each header group. Columns may be duplicated (if columns are not adjacent) + - A **flat** array of final header objects found in each header group. + - **Some of these headers may be materialized as placeholders** - See [Column Properties](#column-properties) for more information - `rows: Array` - An array of **materialized row objects** from the original `data` array and `columns` passed into the table options @@ -182,7 +202,7 @@ The following properties are available on the table instance returned from `useT - Pass it a valid `rowPath` array, `columnID` and `updater`. The `updater` may be a value or function, similar to `React.useState`'s usage. - If `updater` is a function, it will be passed the previous value -### `HeaderGroup` Properties +### HeaderGroup Properties The following additional properties are available on every `headerGroup` object returned by the table instance. @@ -477,7 +497,11 @@ function Table({ columns, data }) { {/* Add a sort direction indicator */} - {column.isSorted ? (column.isSortedDesc ? ' 🔽' : ' 🔼') : ''} + {column.isSorted + ? column.isSortedDesc + ? ' 🔽' + : ' 🔼' + : ''} {/* Add a sort index indicator */} ({column.isSorted ? column.sortedIndex + 1 : ''}) @@ -921,7 +945,7 @@ The following options are supported via the main options object passed to `useTa - A `pathIndex` can be set as the key and its value set to `true` to expand that row's subRows into view. For example, if `{ '3': true }` was passed as the `expanded` state, the **4th row in the original data array** would be expanded. - For nested expansion, you may **use another object** instead of a Boolean to expand sub rows. For example, if `{ '3': { '5' : true }}` was passed as the `expanded` state, then the **6th subRow of the 4th row and the 4th row of the original data array** would be expanded. - This information is stored in state since the table is allowed to manipulate the filter through user interaction. -- `subRowsKey: String` +- `getSubRows: Function(row, relativeIndex) => Rows[]` - Optional - See the [useTable hook](#table-options) for more details - `manualExpandedKey: String` diff --git a/examples/sub-components/src/App.js b/examples/sub-components/src/App.js index 5843a89..5d55c43 100644 --- a/examples/sub-components/src/App.js +++ b/examples/sub-components/src/App.js @@ -42,7 +42,7 @@ function Table({ columns: userColumns, data, renderRowSubComponent }) { headerGroups, rows, prepareRow, - columns, + flatColumns, state: [{ expanded }], } = useTable( { @@ -87,7 +87,7 @@ function Table({ columns: userColumns, data, renderRowSubComponent }) { */} {row.isExpanded ? ( - + {/* Inside it, call our renderRowSubComponent function. In reality, you coul pass whatever you want as props to diff --git a/media/src/logo.sketch b/media/src/logo.sketch index 47abd10e5f8b5adb95c2eae814f52145b7355279..72b3c108c3be559f78bf3fb98afbb45886299d3f 100644 GIT binary patch delta 109802 zcmZtMRZtwjqAu#e-Q6KTaJK=16G(6m?(Xg|gA+WsyGw8#+}+(>f=h6@S!?fm?s>RX z{nk%iUES6Fe}CQ@Lf0{3O)M0;lhGg#b`t=A_y-oi21q`G;;5g5Dir~h($zJLQFMX) zoZfFTE6Ap9)AidHc6sb zRwiH47mhE=k#Iz>>Q%)rsU1x+YdLi9SGwV$8Y0HdXl!)zR}r^CY$$lnbFLnIFRdq} z%MNJP@EVcKLWd1}BUWeJrm;<|)n^asJWA2^Q1A(wBPdpw+>@{qlhlJNLEey)T%5`? zOiCKnL@y{;FlHkrTd>;W+Hf)+JA;d(#A1)mj4*SS5}*(5_?sbX9iRIGc4}rq(Q0@N znNYHae>Z6r7fmF{4g89VfEH}5VvLQbKE@BHF(pP=rE30wXNh-CSjwS8=S!4HL1MY9 z{d;SDUb>z^Z&IK>#|Zc6d=v_wlqh*6e2S#&q#jx+gqnRyco>Mp8z!OABW4wdz^&sg zs^^%W)H4Vz@HHzsBP^%LrRa^<-q0^{C?lQwht~?*%!&_)%5mIx@Yetorpa6}!A{ov z5?jb);!)$bbZRDB&CiZj7`5c2k2C{`x5;jfEnmDSR`QpvevT2cq5Rw%u!ecG%Gcw+ zLK{Q=zUP;YAsLP`w|n9^>Nr~?&@(0`3;265j6+1@MFP3wg|4{5$NG$~zf)|OnBld_ z91*Cd)#lR%GCPZ)VjViXP8Bo$iSvs4pv1Yn~w!)@PokPd={EbF4LjC8Wbo``S3p9H3d7`2am*#;|cViia4-ktvV3 z5}jp$Pmp1}Ld)rFIca1kA`!Ta0h^ePgU&F&f=gBd!f6VcNE~5ssco(l+XjedhzEX3 zB>~$J_DI@&u~_-qq-ns1^LhJq+l`v8%Msf|U(zEt32Fz2OLO`#2pG_+6W6&aIS3S|Y~QnWF;=z)X)fCLQXm2*e-4}411(uUuL?O`HqLOg?DxY*kl9wloGRC3la zh*@ka>5w!dg>Xx!;p`h2ua>5Ljl3qU3l4Jw>2A}X&YR3aL2$aO7g?*wo_v)Al*EA0 zgJQ*G#e|=Db95Ccv7L2SDe8*h+Rv`Gl~qyflu>`#J#e4?0=5OZZQqtwqoxTiF+#=I zuS!(|VOLxh38=C@9vw4hO=?~+BX-y=Wgmh78$CeVLC zmb%@cqxmU}EJH{Ly*$Cz0hF30xRh6t-QPrmmdPJ}aZeNa{1gqh`ExFTPbq;8V1UNs zhoW|PmR;p8kp}ykFZJ1xf{P-yX==PP^_paV*rTgEtqX^9<)*nw^g`2t#}~yp`w?&V ztnT}`v>uSRp`28N6Hc-U<8VdDDqyuVB`E^0DADGsSGf+KF3+Z*>>epd1m(1|yg*K4}?UdvH$Nd{tq_`ks- z_RYduuMwp%oFNYnx&=JK<5bTBpkyfI5S{u1 zyfR8|8*WZ=a+3%5$V#Co3po`9xAP3Lg??>W#z3H ze3QJ;Ms}}4?0?HsCG~kh!T0n632U+>d!k7vd!FXPbT^^bKvf-<7S(u~i4xtQ!ecCJ z)^NL5pgU$l59mKG*F<|Ea(Cw&DqMuB%v;eCkKe+0PSx;dXfPMj!eII+ZXrb-z=#3B z?BRql^E8jy^}PJHU~_2zaC3Kwsi zetUBQ;@T(GRziK#ln5hhfCh{5Pq`JvP%m2Wngl}6kr-|xpl2>G!V@pTaF@-%egI#_ zl;M(1u_SYU4-$>k)uD0IBqEUB@z*;$j8vG}m~^A0!a&uH?gx!agezZx(h)>!Mn>XW z$6Vko0X8WHb~r)5iWxx-c?X6rOg$U2rXP6IN)MSAMl}rR#4qHt2%dz;23<4`j<3&>=&my(h{@j zn_}KC-*AwtMA{5`ZfjZzJ`{{Ie*)Hf_7P;(^O3$J{am`06Y>VhCNub)r3P7qq88X{ zo=^nfg9QdxC*Rn5ZydR&kK=MJzf6CEKP-TzIljJ|ojOHnoa~00H!`iX*Es{DSF~

R@*LdJ6S+R5?hN##!T7`n?aVN@x4QTG|L0iS{ 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ʯAugyJ22c)^S`yYmdK3xr zoa=7wU|S=TgN3an_&)9r{CmmNU&}nay|G@|cIf&3bcj`KQWZ#NmW@Hyz1E#PD^w&l zn?LKy?0`0G?_$};*~~^qJwMdff;A5*QnSQ9QyfTrv63e0n+RD*{`%F>y5eRNc*TqO zy89OxV}?AhVf(;)_~9SRLwc3qJ7hjwF5O#hv+uHXA@#+>T25Qz~id zXlh9^#v)o2-)hWbrg&feLHO?#Vm?mAnrMT*B)Z_-hpn@XsovA2bU}k)=rejS9HTx<(rn^`q3f+0|c)RKSZ` zo(xss&V|Q3)j`uhsas{QwwF>vgPrBM%7`jY989K3pqpx4>V?(&0g-qn>p=wzdM3Br z5HZIW3eq>tCTth;oZu|RbC-Ph&b0uyXBFXps1xv;Yl81k96*9US!C~TelaDwYqM=n z0>i_it4W*1c7h)GBNWJ8bzyY$#+)Tn`P-iqx@1=Ta)1DD?eck}q70@AWXg+&cf};= zlm{PHH(OcRIV&ir!7aBArcWRFadHI+)kwcyd+!WinMv3DA{6P?`HLy2SB=sEDw+0s z3Ex`sC+7x|khA*}C~`uHn5?Quw^O*uYKSc~&KQbpzp&aorGF#=ZCY{g1CbjFWunKmw_G)ijlA zel#qk8%oTuPvqX41!?JEpvSoQW1A@)0^mE_^HC-c$?|ncegA}e_+LyIeZrfP$?-y) zWRvJCQ`E(kv5%c66<6Hczfz7-{A^6A;iq-ZN#A5&#$NHQK)1e*mB~qpN_}5LO#sl( zN%tPylkhVuKrtJIC5wE5ycI8vLfu>`)2HeBb|o4zmy`VQHZ!~h6*2W5dS@Tty52@F zkWb0OB->+s$Swmm6+2&Vg*6`nUtNu0-R?{_bvm&^{^xB49VW*(9WU{>2Flk#hlh56 zmX^n;ZG{Iu5g}e#Cy=}cGZia6o~hMN0e^tNJ~J?X?ZgPxhX`nRnLeYrB@%DJLO46p z#+0=F1y9W_0-Dv`7uEAL?CVSi0#9s4L<`xP<&BVP=vl=za(6(Z(FPnrvz+dUPvQ9c zs6xTgqRWDcGxaJqZ{+l9bq~{dcIjdMHvhNv z(KEf)jGYuBPv04rMfLB@=_GfxHW!BsNpPg;^}WxxnTPoR(Y?ZyN z?-9pE@p}?4JMPusA0C^zD$sBS<^m^3vt|z8N;_TuiwjbmW;%4N+f=1BAsT{mi;2#D zFK_!xy@9_VeSxCHX&ATma4=^D=9RRmNC-8z=5U1%VPswh2VIZxUkzY%&eAp4X!{ew z%mx)MCqfz4kCd~$t;`TT0y?|SB2j;JbyMv4SG`p~9P4MUbu7E~^b+|HQxR55 z&^Ma3WF4+KM^6`BEg@+rRGZVLY1wrVBMJ0HyB8BOKd`ms(CJ6{)8u}WC=B-Q1HspW zRy6Uoh5b$PUle0TAPT^01w~=|DDjPYwuNmuIX?s7nM2nH4~ArO%{Eud*TN+cEO>gG~>1N z&v6zGe9;2qir6TmR2go@-ON&si+5HAZai1=Sh>WTNoMK6=XdQhtrNbMa==iR3B&(3 ztpgK?^U%wBUfxZ|_`@scEJ;_gcqc?oL1MrOI4(L1SozRxO|AJ5ea9?vGCU{n@xA+w z_*YIryvO=^>4|+RU`AyyY}uSO_$|jG%spPyOA(CQ7p5|!6^v$|@;CRW?yl$XjD3oT3$LVY<>siyqp`=%H%_4}fR zKpdE3E3oYLH%0#?f|?vI@JN?1UgX;^A^7sX#cVu9q`-|rwg)7uV5+2aOlU8+3Po+c zOu4WK$gO$ThKol~WI6uhIYWwcYvuf?i$nq)_J3NLno+-aECi1Q_zBKy1Q5rJ6I{Bv?0H^x7 zf?#n!Y_%VS?PR!kWqJR@J1>3t%H@W^6iVz!MQ~#_Ah;)^o<==|)SVl-yb8ol zB7q54T&4it>ZAj`gY^M@)V2oXll?leSQ)#n0ihKr_U9OWdXV>B>;)k{M+O~e{$s%Z zb;$%N&|WETU2U?jcU%nvU+{sRSm|k}XQD@nZrMb*s#nL?Kt3l%PcLqGI@J^RhCrrl z{c?~}ZXR&`11qwRpoCt=60n)@_Oct&_iYr=eqCYSGG>Z)8$RHn!*AIPyM*(i+>s47 z=J`S*>FQ2m`vsr4n^dS_wFQ$(^Hc)H9xZ)TJJEO5mGPOkhT4Pb(&xqTH(rL1f(QR1 z{IC7*|9KlseZ7}F#MZtSHk2QxwzrH(1k@i2H!lX13?Q^-9+C&Hlg z9V(c0Mt`@hx6Elc<{c^jvd~|;^bh%IgD4sM#Ry?CZJ;|p4PctMAT*)~>fsaQ*qx4N zQsxF7)8(16Q99>rs(?;R%D!8b=9M}Il}cc649-)GQS%j+&h7Ilmk1@i&gs_Saqb|H zjn_?ms9F%yw>y0~YI|2OAjBKEOMmWe<98bqyagvv?9k8vqr)x^f3NVs5cZMLDgzsf zq?yPhMrXWF&J3VN%QvVe!#dIj)z!JA9Fz0k^FNOo8z(B)<@X?S@F|lf_F{rc-l2e! zULSv%;^!a#AFBVw+W|(D`yi8;;^Y9)+x!Tm^wGW1BE!MK@dAX*@~8*Tl)+2RIWtDG z5u{pH7oDrpf$kIiijba6lj;w@kB;*sBtWY96cx&2_lH1!8?h%C_I!U*|`9slwFet*Oa zLTtW)JM;xVN48+viU1fA<+=&ryz>Pw4KNFWEpKVu;GKVHjyiA{fR%n$y@t`GN}ID1;2`D+VAZeT`*k zMS$a_cDhGK-Z*v6??^^i{4p80Jbr9kp1>6db8yH0YSgHE^6$XS+dQ__S#|05U z2~s&1&HRH_`PFGXOn5jeL9lzs*|GkGW#CczAcRefuC6Y_&4d$uLI8>QuGlcc;0hzW ztogp@&MQcZk`uTT?63n|B#l4#;9W?1xqa&I^9oK`Oak+gcs6~n84f_ zrsc)I%Vm*A~Se$q>6^hbtl!4&fc_;$%TZR$}n*M<|V&)q+wfv0yZ`!D+2rox)sBoUstgrtz(#;DSm8uZd z4}ud7$>^X(57gsNaH0Lz|M?4mJQ35cLf#&$zcBclD}Sr+59Tk)#^|69ws@#jhtF(c z)bpHtK~Q;FWrNn|&h7}yt#a0f_#gts)TTQdJ~Ncz{5J8l4<)=!a+>)4I3rL;8Q^!C zy6yJRn`=Y`bfspQ?GNT7;nqPxc&d~e1qxG|iZ^^S(cp^?3OjzifqVNW$Rv>8Ug3SB zeWUlU6{{~}1f6u6(zh8SJFS0;)T_fWvcq_jiISoXDvNZ~J!6+J^|*yD3>*0iV1b3a zNJ}@{o3rM0_oWl6yf2y|iKpyG4tF&1zHq3Zmwtpkqp6u4KT#H3srSEq3*mTYEKsLq z_q*liV-ki@WxO|)6mz-<^VD5Il10Ha+)p94>IvNcxb;%GZ^&55=WIkwpW)4t5|Xln zQ|CNulT$yGH_bys?1(OVVU4QC$_n3f4JkYb`U^q+(K7E^5CUk8dF1&W2*$+qF?7#J zPhEN;TcsNxM>%@!v%rUgY$NlgsYV*0UVY?iorYH4dh@~Y(Fk$xf6vo@etUotIsfX+ zGtxzn1o0NB@HE6b+;^qZkAB+wv4Zpp+bMkQ%d%!(puvK}ld0@Jczv#cf`y!vJ`Azp zgQVng-`;*x!4@%Z5Qr2&Z~7O#Rz8N2AnzSWLiRG@hbZ=0X8gEBCQ058!@F(#{Lb8~ z6%AT+kA%E`+{1~(R2x$KXswLt!qk3OL@&jDyDQ6@>+yF~^0{c5HdyMX+M4@}e;wdo z zNW8;wZ@4#tKI2R(v=7w0#RH|;Kb(-bj zHZ{x8F~)ttAV&OB@I&);nZx$P_nnGRUSJ>H)fnpe6+YkpRk5Z=P0hQkD6_xlx^Md`z%B6#9Ucje1wl$QD=@>}vf$AOQRG|49AolgUdT$HeL`ub<2@KMVpkpB=9N z=FvsXVF|p>d4WEU=-Iv1>paR6-5oY5S!V6)(KqMYcN`kG?H;17PNC9t)a!bx?gO0p z^@s3~zVi`YlKL!F(%r}bgg_+-0yW>eOP6q5OGSM7YQ=VYVE3-omk6V8S#GLOU9iIG zw9e+D?+a(UazCdM`I+9Zo7K`+-;2dtuI~HvBq~E9;o5d z4wd*f0?)o}vzHJAd zuPiO)bX~Y)FgiYX2;JiTC&T+U|9lqUpp9I;hz?iJKjJUA8i&!B7+ee34H9E?%!o*C zz5HCI&a?_o1a{yUCov{ZR~HU9K612m75T)4xj0eB&@CJ0`VObJ|0*7H|Ms1{kxVn1$rpxds8jSqKNn`qr*~)Ts;+p2) zcb9A?%{rqMZFG0x3G+U+;5~0WwvoS$R^x9<;n8Onb1byctnl|ujmYDGU->~txTbk! zVsH$s72+uso^SyZeioCyS;u`U@zx`Wl7?EvnQr}WrvBp_q{YCwJAxJ59gE?CKo(2p zfq?ul&=7$bgo)jWWM~n);Eq5Vd*F_6?|~c-{Dd}J|E2uTcPM~xg*Q`%So^}=pAFRW zA-?#;_I`0FjUu%4*SmlM+@V5G!p?V9sEy26G9EnEr9GOpGNP&W3ImHC0x;`NCi=&2 zb34BtAYBFX@%QaSnaF!Lr%6P!`bG|%*wb8TH zGb8Y7)c0%fuG8^1=hc23b8sW|!Af0q>Q|XUHYD()c1`=E)wcDyFX3MC3?zVT?aYgv zXFoZbaHyE8Lz5vs4bWB$1tkS~q0{X}_k@2FCy7w?f5y1?t6O%c7_wl2rDb}({x;6q zmH#$Q4#$O)QRQxjVAy* zE@L#JSkSjAY;X}+Zhp*alDsqMaEP9-GM|4U*3uQ_tD+nwv9j6qH@|beSl8`t271Gj zwcWYxsSnv9SyN!Jz{T}BPgc)zUY$v~#;4}_XlEs20f&o8yOSU>CE{%sd^&OEc1Qf` zrq04kjcN|fQ;T5*gTk?Vr!9zxrZv#n8QEv4A)Zv|WjT^1P;}>D6-;COja5>fmv>xx z69q)Kudn&XV5w6-AM*=(UAt%T9^S+%_t!yFnb`F9naf0_FLlp)lrD@0?dVjlCboyz zm_&;BH{apAFXny4B-}0>jyxyr2cX*2UN5z8G#b;lG(5}9uQ=`YTXVWE#2%j}&geE8 z)oWdiD8<*h)V`8Po^w)&+{xdiFx)}O>DtKxuY3$hJ-bKYBAXABf_eHFCbRx}7#I%PmJwF|F&y?bVT4>&8*AieoT z>ADNw?2wpy* zq01s?tD0JSW%;kKJ)I@B+jpnuJ&OS?N40#!NBqer0gP(pZ@fG&NlY`LA908sY#$X!*oMpUpgGVI*)p#+7X`e`#@}pdq=9|X1{MRS4 z^Z8#qio0vf*}W_2!QYXry)<^Sie(ZPx!@O#>_Yc;hovh@nODs;{RvY%wab)SkpC^F z-={$Ksi-T-?E}IG5XFARf3r$(#edk+G?xbAi!YQk@JM3xT4miF;*>nzIx(k~i4oVm z+2A`H!V~D=!+R8|hXb+rWk9B>SPOfbJd;84(nC0IUB+Fjbn3?6=8D_GBtdzRo{F?3K?#Rl*SvZ zpi(u%Xtqtq3zNJayMsfP=5A%0$AxtlnybY+Z} zHjlD4xVb?74a$*9QDOe@)tmr3#9;qAS;MHS{=HampF)~1=2xtx#_>syvioYI^se=2 z=q9;XVBoTNx2AkZ0b1v|RTmN^5>w60KSrJN`6~6SzP>;zreL1Z-O%V#yBLF$j)izZ zPW@CtbpOIoccS`;1hO6sc*f*;-$%P^deYMHB+UOM?!c$7-ggMPp2RRTMjkS7TIB%* znRBr^Fl2`9>fNZG5yM)8AC&Q&&TmS(8&2F(uW$&fRkSm!aR$C4MYnRf3mR$D3UKZB zfKO_`gzf29rw7>wztM{9?uH@v7XN6FX>JyU}98 zqslrFR0O3MznY1zVtp8+e7|O_ttywGd8kN*kkMgO;+68f`${^hvpI8!K6mdE1QoI2 z>6E-i`4m(*nEg-w@LH5XWH(1MmVjL4vpV#h(%6R6UY4@O=IAxuz7&=t)xxvv-Tkqq zupX_78TVORxb^=0*?;QAb=ChNdTh=a0t?3W?}9@qHdtb|*=(4zb~mf~+G^OcU!&oN zCfED#Y=hW`K`<0VkDF=U3-?)S?!^}VAs|Omtoe%Ia)B#)G>v(=s0gMT72STczXf<| zua1Fy&NhtCm{Mm1BwkmVZE7l?Xd5f1{R^i?;5apfbjbTJc7GI1>ZM<1=Iynn#b~^a zKdU)QA1 zd)3{EdIIKEKAF_qwbxab&}Oc6-wIIB+KSR0^@EPe%Ea*KddgnvIOd?^pXjX`DW~q0 zm1)m=vOQ2z9$W0*>YWA`74_DDnQ!*HeXTvIL&hzm_Sa!d%OmXPF~A-%l;)D5-?77t z+_dwwOUU}mC(c4>e5p+yqg?#cW7~F>c;)fKe*@a{-+%_8c71#Y&;qe*jwi?=8$7V} z*>W9>y=7gmSSmu!P8=E{=J4jTPZr(1cmWAX`z~{j>_%=HfmZFcCyjPZx!;scP5IqYLESH(jv}W${$+vc1G^6U28iQLAs;!cMoBeh1)4EFv<9X@2Uzg`8bm-D6e)ltH{$l@FprmZ_H8AEl<3lW!avHgj+QPQ;1!1o9 zibK;0IpyoKNr)(v@O8Q*9MEp~DJI|~)?SyHz)wQlc)WYe{M zgfm1JP>p#t`&Cno5$?{?qr$2Sy^CO)g~6$8p8isa^@1qq@S?)v{!Ofjs-lNUP=SVh zezv8R%wxLE`Nr}yMOZuhU>?xKvFPfH=(8-(-`YOPDq1d*Ce0Ifac>@RPyZqL?{buc3^+1K!;1{1?kMpS3Y+f{zFEdOr^?H&`#FL1|EG=df ztaF@w_IdWRpZxtcQO|m1h?xdGLJVBH&TD4&ZWM`TW5={(wcVo8sdgScom-9GhN8RO za~^irFgn1_JXZB2(;iH%1{Elw7`TXpbw76J8Ps@<$yw0T?(Uva@Ty$S*We~3SEJM(J0#|Lg`IeutTys%;DKx{q z`mgO8O3ZUNwSeU=2I}(!_+5AX9X4H1NiK%AaqsD;d}uVX)h9W3)7$=4)+lqA+$chKm^sN<&S{ReeP#Jt}w5;Gdfv;QCJTyu+iFVu*(*Y)kmFg;#y{ z-e9;kvpWe+lFNsMmox9{jdT^4EKPlq>1^utaW=r=x@T)G`A|&33Srh8 zq8_^mKj8^wJV@z|Y2CQk365Y7^?&Tz>f>Z!3$Twz8aMh%s-Fi$0W#@scwQkkNMJnlluQbQow;u6+b-7^Wd+9 zOoZ%oSZHI58~MbP6m=trdy;pytNvWqmkic!^Zj;b+RDQizIGi&F-)6`yIpTCPl}1cikI`9|8;6u3l;UItBIxF7xV=J9mob z8*_>)A|hx-%%;yfG@PMn_T5`lUnq(pEOtYnNj@lG;v^B|4PVz^wqu&ey#x0`maWHX z6m64xWC*|mAocn-*MG+zLVdh69b3Cg?08C7{pbo z-A9h*Wh_8B@D~kSB9$u8!gTLFB6vj*r$^=~VV%R^vhgLwOHX6rg#AiKr&UOmtyX&j z&b8Uh%Pn$$(HUhG)UYmzZq|wf=mch}#l}NFQEp}rWiKJTB$e!3UEiNReWv%@U4HAV z^}wP#{9%2_qB^d*u856Nq*K@(`?uLdPMc5iw2jps^c(y#=f9>X?MMTLon^Sg%lp4B z{WSe2E`ZqYrXluNcAU+3bK1_tJo{BZ<4(qULEYJ}np!RVj;Os4A6A_$U)gXVBxy~y zXV{xQi`j*q_P9T>@EF^oeG1zV?1bzDI&5GU8%)peyzinHz#V@ZW#y|Q!CIBO-8Bw-n@yrk~*+b5n$=;bwyGyCsy$t-BO} z0BpERJ(``JLZorNFfqrVXsrf3kVYzwS)XDWd1>IGa~DQD;gdcLaip;#C=^nWX4V*^wCO-JBP33PduL8?2eDL?*|a4# z-?R!RW4@+hd)`Eg%>SH2b7TAJ=dLL2Z#1A$%cZYxtZJ>|s$~OkL4p48x=7vCQoR-9 z-X=go^4#RI)txAp`RcL9Wnc@Zf@x1{QaKso(GQ#|9_H?Y)0?^TsK4saW&0B*HE+lz1PknJsS(lM>7h1k3JMyQU|$ zu647PcB|+k$p*h(^LX8&acbT6L5sfE3`Tik^fINKuCx_^`%aDv_nk80B-aclDtKSQ zxvgYISE~B~gV?)GV$S>809HbO*XCQkrqI$i%e2(L=im&+2f3&xFoMlSdgXOZ^9GJ~ zw|i!tzI-|xGMQlm@v@!FTu1MY(u>SZ+K+N^uQ`LY9c^@T8_Mpj?RSxs8)b?loGt1h zxV`@SO0B&m`S7b+<$3|WWCb)lIk1ocKY}1mx_}DY>$;WZjK8{0Kdal!Y9!)ZB)F)6 z=;NQ}%A?cQj~~Zsx63GHwYEIuOs!{+Fj}42l0tD_0Ax|yoJ)-)Aforf-P93LiK{r9 zI~j_1mEf!)wj{@dyOKtIbRMYG#(+(W_LC)lxe3pMMxo?V6gz?Yd?^ifkcwaTW0qd; zHIK{y;NMR;RSx9O$?pYq3XHRb6{E8}B^(0>0Lc-N0`=gOMa&)Bi;oQ7?^LA-cPFhv z^kYVH+!VBEXVd;J02>lbir}1Mr|5r~jNc~knTp9+@xqH9L7vO^$=jQEo4-1_)`m2t z51rYkJVT?YrM*`MZ)RM+rAIz3fzid$@@%56J1UHe@ zLc-6` z)(6F*jk&22fM7$js3u&06M{};n34d2tdATvWFVC3Ymr=nGNrGFQkZkWSd`=AWx^N7 z5{>M^D*z+|ehUnItk21`w6vF`ewQ~*-3)AxQe_#azGWx5$B;S53Q1^`ISlxiEcp=t zMWMunpmW=2{A;ma5}89GXF9IQKuf-d+&n@Q5jMdX6l46ByZ$(NOU@8RG*kYRdH=-- zgWG2aXZS@644TdNX5Aj)8w>!1#^%=3rj|MAVurNZNz}~1K5?e(Mb3b( z-LWT)iptj0b`SsJ9I=5NMClOsSn-2?+ixWRWA?(Mg?5qmXdUj+sxQ!sYMFGgqhVJgJcT^^j{27D6)Oo zSy-FL6CH%;#QC-yO@&X_gfwZ{YmU=APrT2csVON3J1-Q%?85|>bx^9b!Kys#p>%z~ zLRoLz3sEitDS&(tI5>C(&o%+z+ebQy)ahZY*>tZBN#)4M8s!MgM zAB!lpc9-N|A1p0xu`R7~>E-*sj16{)|5ThL()HQC?`=ygLH0xgk5p;7Z?pDI=v551 zCBs_dBH)Bdeb@tQpe<#1P(J_xd{~d66&Vlh4xYl3gRm@t4XeE_{+T&wsg--R5&>N-xYsn8*<;$Gc8lgQr!O>hb1%YTe-b>Bh59JU5Q54cL8p074piRb&ak*x)*BgDK4LQtgSqp3IU9+p0PSg@9by z{2SQ=#;QhaC{(lQ^Qdif4iSWPQekGxee&0yqasEA;46y8&Nw$sj}p0o#hU4*cal5CI}k*esA*JY;cD*Pc=H+D zk*zu29$M@(RdzW(!k%I{(f(YSZnZPx*cVyZj7X4b-u7E)Li z@nX{y zQ0EO+*Ew&iuXD4Pg!}nL7Wtzr^vP}J6qWv5%1n{`qlT?jnv{8>KqhQeM`PXVIKe>$6YXpj_Z?OEXNIsY3|zil$7vm z|K`X47$@n@gE-H!QZ|mj+Au#M@s1HQj&oo0+L?u;KWAIC&8Y_SQqxhdd)oCGfNe;mytuu{#}#};7oGA^FfY7Ag+Kt&722$cFMbu3WNe6M9Q#>|BG+U0s2A{vUG375#{;o_*_JXG;r zV-oW2y_)L6tNq+u#oc+!kn~wS!>>(XX>7CORZNqG>>u?nJjxcN@3p690h``>_S1BEX_&+RV}srTKSm4EQ>GfW=-O zT4zdboq;!UUXbl|UzJkI4wRCRR5iM*6mmQ=+tkvZCo(3APy1q@8B$LX3**>oJaw_Y z3BV)=8H5hU?jt;B_ga-gO^f8Jdl@e~3?%}2t5aM-pY?c$ns66!p$ff1mq#DXQoS%V z>j?%BoR76#1&Iokg5GI(ym7L#4Rh3_4>Q}ZbMDM0VGBKt+820WB0b@?yCw*NJjZeE z_A3rro==jySe{DDsOG(i-!FEOoaCX~X$#4>wa9_d;IZisOh*FHME(!g*I;3D)Oz)- zI5Yk_Lx?s`>r`0!8+f5zcQ$*=imVcC-)MeSkbB$NHC}AA0L!c+cFBFw+SD4d6>Fsn zNYk}_;c{eD2s3Hg+PH$0q}kTZ;kr*`M^<^;MN>BwsU2Q1#P!ZkN{y3~qPI4-nkN zio0}m1W>*Ho*`YUc<$)pATP)UJfO)~3d$~8sB>fJ-_vwXDshu5aG5q!PIj)rQp_7k zxTeqN+NjbU+iV=-i}N|fUf+PCv8>m?ez&Ud0f~U)6DR$6RzgVz%)|!@y!74d=6M}H zCO&<`o{kU00rfB8)dA@BrV(opL7>rgjY!O4ZM+aH79iGWG{t=GS{324<>ei8pBOq( zN#6)_=x+0gv5C~a;f{GR3v=nWL};z@YwI%*pA{eB2=0IVMxWL*CVb?0L|P7-Ndxj( zF!274cq27Y^_G#){7tvXud2a}p%0H;U#<#V`fKASfg8U)#D47*aFaBvzfv=>YSvsg z&+bOs%KU?(rs-r;5##J#bnIzdt*EPJwh!|CB`NTPfh?qgn|MU%sBp0th%Frzz=iGW za_N|;n_IuiHmm$B@EG@i>+P`88B&#$d;wx^50^!bc!{-$`Kl?#|B-8Yx(y0IE~|<- z9425%9w4!K4D$328$VKNYr-A7>LvkJov1C$o9eg*0S-1Cc{l5pVO_oET0o;(W)6E= z_wJl{MKES=o&*G4l%HSF>Td$Pyg;%>N^%OSgId=iu+N-XXP{=ah<-eQJSRLJXOI9( z0;AL4M4lhMpe^~IrVbxpj=aQa%BO^}VH$Cd%>WOkwc22ntc4xjsu|LHDx@>H2yES( zl_5*z7B3%#JPcvH0IC+bS#Ob@N0Ss|B+|Lp6qpFG;7FoW7p(LXrasfy$;H8(yPy4p z-3d7Sd^g;BL$_9g0WM_r_PqMASw+uL3;A4lG-5B!!bX`QO@Rui!Ndl z5L)DcSIJKLf3mE^_^m67unOJnTNq&bKI`U*V%Egz-%f#PR#nesLm1U+Nhs5#k3OJ% zBIj=PdVjM=q2q=vIl(y=U~JWQK=@Gv?>)=Vst+Ufd$*1&UqQ;oXDYPo^ACiC@<^qd zJmCp>b4=9#lUvE)g`E8S@++vKzjQncq7S(_pLx%O;LbbNOJhMu(`mC_gK!fji3sjZdMGe~XMdewdlUi(+;D!LFM(>=s0r85u= z9w*e1UzD8I`hv$=+{{74C@^b-))6`&F)C2DRF0z07waRWPB71dJZ4fck#m3W5q^~D zZ)Vnb@hb{}bq&th-p-CsLOY0sdK#L8qdPDkWIxLefP&G!AJaHS)4$QH7lt}He_V10 zA+~tGsL6#(;f8gHBIMxooAERo$iF?=pTXmMLuR%I;>XuN0gI4lqr%2s%0H zs|CkU(ZJFuHS0DH_~IXMlsueV53rwTt|<2H*A&x_ZpYlXe+#CpqTUW9m$t`gbee5Q zBA!Bq6qVpL14Pg3C?eNKrZ(*0^n}6o%hO;s&N88N>8~FDneBBy!1&k$>r|~^bbRRj zG)l9&q`F&b3~xcqo$zMMP0LuuYuV?T-*r_jy!v$N_^Bn|>==f4X2a~Bn%Tn=l6OdK zV$Q&hg>ScvpA&xAaOJOTmX_Fx0!jIad72=wJD|Wo^<|Q)x6OebgHOx1S=r=01JwIo z^v@dRDP?1Uyspw+bjJ0)&R`ya4O#7~eu~}zkK(|0Mg7fBon0JBwQ+mS?n#4uOJWM1 znWkSqUL56Hlgr{Qgpzv4I{cCH)=jZjLO>??53=%s$C5sD(50zKxbmym_$x(jTPN1S z6*MiYG(5k&fn3}d@w;({>)0o%peSYJ-%vRdzFDB@rqqMl9e(B?#1QjBXw=E;h zds^FaB;e@!ovvih(q?)tL$6}J#32oZJ+OBsCV4(9DD^29k-~l8x~IvRzeqqg!+ciw zX;rU!9{$O<{O#?fr%C$E&6;<==wn2qmN-KsKE5T9R#umq;nm+Xg~$o%q(5@KVACxR28l2)kPUY_a{l6y%ZMEVj~X`) z`B=o-=HAfRAjO^P$vG<3?9z*OIj8*&Mc=Pu(SttrvbfP4h8_v89? ze=%*|tAVx3G*8=OXMZT=zbP_v3=v2UFdg5qI9qOz!Zxkk)OvYPdFYY71Q(m=YiqAw zLm2$!-2$dp6Fun^_L1}VA5}=m2Y)Kv#rc9|$Jzw}s#y2Wi3d%w7w&&myj}`{M(F)Q zz-1$Rfq=-#6QyIX$<10fZI655rX8A8xk#DCOf<_zK8k9cPHQ1rx)zW=`}Ar7FXFmW z6h@94&Fh4+a17ADSg4wbLmVHQ#mSz#kIY6mjslHnO z=Fh8O#_kOGY7~*w&<6#c%Ivn9_5f>xv~Qz%kx^NE!UhJY*DiMyKHJFP7Ubmx1R6h= z{X8XRB`xtylnrC(BR>h<`FlE;B~{u3vQ)(T>z7eM%d1sM9~AtY-(9c2Mxe`7-*`bW zIQs`h|2EP;^*<`420VfxM1CuPy2`@SM0aYX@$EpYgJ0A`=d|v<3VkEqt2x--#3RD# zO*q+L^<>*Om#Jh@zxU2;UieVCUZhS9Yg1pweyGyJ0FU1fA_a(Lt-HlU`1obxTq2?k z+$K34zS_$^OR$I{>{bE^_P;|ed-qgr{N(`wEGokXop5@lNRBfyY`bFVO*;+hYU5ek zH!r^+>)NmJ2g^X{m~$`4gZ%yBmNUGS8;HzfQ26O_x}5ei8#A4SiGx|ks1L7PzY}F} z>LbKQV8e(l{4`3U?v~8c%Yh=UK!WG)dQvcLEBdDM+EvHjh{m6#foG(p8ZWL3KyEgo zOlS!r8ov9YC)XWOowG6?>yMv)yi0cLjnl(IWYi1eHen+;?&Hu#xg<|O|e zxzIxozOW-UK6|k4M@T#X+s_7x^^Cyl_whSmg2#{`aCtyWiS5OjviR+4S3B_#T%zmI zLISdATN)TaJk;7qRLOPW z>p3>+_*XkMb67P_Oe=R|*j=#_0EOY=#ZZTxXV%#Vihj@pJbHsOjGgT#k9LUX_q4C<`Jp3So11Uoy&H)QLZa1r}KP2ySqD{%ijZdK53!ps`TU zK5}@u9V1{~Gp`aiceC#68+%?Di;HBP6NY7XLj>>NA3s)fwWbVY)Oo$pbf1`~!j0ot zVl^=3;n`1$w<40{7F9fkj!;K;vyjItzKc8O)F?CUU!j=1r9_f{zu@vGpf-EclrBC- z4I#s$0utmwp04#q5<6zFUgt=sbH#kS5nEuj%w5TSlg_ojsI6_G2Mx+Qun-IUyqD@F zEfjud2iIrOIi9DD1`mD~TG%YL%V%!_+l4ay?Q_F>={yhxajV0UKmtQQzg9|+0!7;K zFC#cfmu6n|b1&-k)0zFkBC}bGqHIrk!t}D$_FA1QCd9PUqt;zCE6koOd4-`p9xt%C zfSs%umyfFVHNDgcjom{E(4$}RD`^q@Bi=sP*H@x^WItr$ru*Z^XMhsPP~A1^9uEd7 z3)AMrJn-zY>f_iHwie2!FG8l2ZM~lM+W9fxq^_h1l##Z;`IcFSh z-G6Tx|D4PEqd`%IvGR7S7B^-pZAmOt->bRCYwMjDqFm=Lo%>6j*-psTpRJGsF94ou z2Ey%t71V=iLc?Ww zU+i|{9b_)Rs0Tr>9XXMJdmwK6eWwoBzHFC7K~VEKC`O!0c@mdx5FjfSU_le_iSzf22goz_)%H zcP9Ew|M`Y&BVEQUz6@csq<4GFD%R0Lm|wYRES`^vm){LnE+AAJwqJdlG-1{@!>&pK zI1(x)KJnRM#QHA3MV!0Z8Jp>dj2mJUe>@eOR74&T5k%10=`1_`G-ZbKu$mJ+KvmVi zF02GD26)5h=)S9Y=%eG12{G;GkdJVKBZ&^XeceT4SBgJNjVEk&T&?SEriX6;-BMaF z=CXla_iwS!FHjg7e0ASZKI#-kxbrOYG^8S((4s&cqEBdFP zp+vxsPbN#GSBN0*5L5$VgCgAc@BS@_*xR+Yqpw2ZL#9Uu4UYcEjz(+c>iQ-pHVw$G zkSMs6nx`q#xlnzCi7!ZU2wgaP9)AGlHlDWcmBW__u3o|rNo^y5`0l&AuNRxVH*qC? z5$GW!yNF(WBeC2R=aysS1(~tO181jsWL=y?lQQEQoSbYc&^pnY5+$WL;feOVJo{`u z!{SOF(QVGL9`Qegb)Yr%ZaW4WzbsJQ8B;n_vBJrVzALo%$v)Fi;GD!5*K$JdZUT>tWj)j+)JcEYi~PDU`fX z-0ry8Ei$P!)#q)^tzUxXwe1E1^v6)d?tOgV75IiDCWZi;$ViWd-|BGi;jQAZ zp9_EXV<)R33^4X_Z*kzP{sOu~3|aY537{L;{rnuW(2$ig1z+O5mdi8ng?zI=NLW(} z?$nJd8;vuTyrk*p0v;9o&sP5Dk-4p8SG;>&F8ryu;GNC)H9*H+c<)#2=-0)*z7XAO zDFp=v{hht5A0Bki()Z->>FYf^q*rYcMNKaTxq@D-!X@T^u!KLGJR5Wr&t%kK`M}MA z#2sJ8;@vPoknel$JS}1j*PvNUo!v}zoD5yF_+sf++MkIab!~kCJm!t>*9Q-MbPCT& zft{dbq~k9Jwq&CM{2 z$Awrm-#Ovq;q~!6CG~YU(BSM8?~lkv!^PSD92Wq^;7mmY`3C)Dh%d8CgG9(uTy1`l zB{?>(xY$9*pM1EYQ{VV;3u65%!Ykid*#|{xt(j8aouB3F-CQs7oC)W8w)~-buZa@Kf81KV6?+at z$Lp@YQi_0li;SH5Q`e<^r03A9QRbuU_a-~!sJKwOh?Zo7;rCg zu%~BL4o%0%MT0O_-_$ysfOuZJ8}O9Zqeu?##feGxwWJ|6XkvUl$)zFDqRh&S^^)S@u z7(Fb`|Eb!(k=)FXOO6()j(8LPc7%BH+@+FDzQZNOrMrM(W>op}pw0F0Sj?f?t54~h zCps%nNoP{-mFPu_lE~uuIw+B#v55r|-Ma5Gbq-&^zT-p^j#FKt1J?qeKHc4A2bxfC zW%$PU;XLu9nO$E2!}e!dm~T*%eMRv<#{>`ZA^JiT`-PnG6oDdivR{JPc^&a7deG?@ ziK%XHcj)QUG;`Y!blBTZsTEK=GX#n_RqXK1z@p43+1qm`e6;SpGCbF?_FJ|;K9~R} za}U*Euh=ey;mNk+C_~{R?`$A7K0t`CVCj3mi=SWfE9+f-qkWiX2R3<%sXyPBU+cV2 zFJ%^|hdcbqM3TPM6tH=|H7i?}V5-D%papUL_)!8+(9D+>h}aoC6c=Ko&V4U{`pjke zZ(C^4tn>zUOPQe`PKIb3X)OY!JB|~hj$hL@dUQ%{A3BOW{*tjO_h`x|{K)sZ`3kj@rTX@K!uq{uWc>jn_GVJO4BAst8?N)LVAp`!=s+rt|!UoO6+)P5c>K< zMcxTE>5IZ>^T#f5ey{x-6R(8GZ6Cg3g1ado5c7)YOYaG;%~j0buxx;z505#wg75UNxiQzwmXNY0b!(DeWli( zQu2|^&X7_(Crors6DbALf4t-fFqOVH*y$k$ki}!Mw^c^WtoKmHFvbCUw~{6P%wile z6Eq?bpC|_x9*E(sA1T#0IB1_XCuZDXcq@MC0`XlDZ~5%jIU!q~Y~g7{*rHS7iU=-K z*p7!?n`TzuHWTf-VlRu8*=gc61~}Lymdbd8Hk!DHG;^v)^E-?d$l5&nHDZSs<_D>2ldeJAW;>D^|9@jf&^@lf@_c6;j$ zcUlL^#Q1PnEb^EwUxSv|F;6dH43)kh1M7mUh62D)*(h}*ZR(=_`c0jWVtJD*SBb*uqd-Ri2WK2MT51=d#75OHtTWA zKbDwJWT{BZBb~rDLwxUmHq`jgFLgffzXvgo^l%kTtnu7^v&ZN62du0ywb`dUJ&`kK ztTT444-1E0(8}iN)sBB3&msC~d-T>sU^If8$+aPx9h1I07I>|4V5gfuR4`L{T-j+4 zyZlI`tj}#Y%eQ+%wi_e26@WNdT3No0{wANWA(!2PpTW zRScJrMdhy5ZZ!9Ng<~P78tI7Y164zQP% z6+w77yBT)lRL{ju3~z3Bd}{%+cGn(lRMS_S_B0vW4X-%oq=CS+@}pJmUfY~LM>!+; z$D|Kt-^O~$;Q2BMBuYh`VA>uE!^kClBO}k+i)OB-$!6sK8RS!~8O4jn1{j76$;$xJ z(@CKWS?4lcoA zL*9UF*;1k(YAmy-t9od-X2)w{g1s^!1~;o6zGn1TZ{{H^eo-hk2>;DnT%k}OI;rb0 z{P<{-#`g%LuBx{~Yt=-1gLe31dZF;eoE(Q`U-IUA{&7Y|>jO!seK!fgC-+TJ4|g8p zGFGEGxkxX$e9g+wMU;py)I1k_@1lgSNxm&$>K~b!Bn(#_gEEs*oqk9RnNO$rtOjrY z0zFSE01Cu3E^r7wG7UX{SVbBnOMZa2H-UFdsi`21;^(U1s{P=d1Rsbr)gAb9J$R>) zhZ*wLP1GGe(hWU-LGLukdQsx41h{>60 z_`OE(Tg0HQJyB`?@mNxGaEO-9c6#_qJ(T$fDH$n*I5G6cb4l@Le}w8Z6@>IU=Z^=I zMuI~KD9gfr41a`~gBd~v9&Y>m83I|7qZV`wBE9|5=OwEc<`{>OU|1Uu^MT#PnZu z`~McRpZX_eAJNSbgg_u&2f)AoW&D1el*}nGARugHWW=QGpS0kFG;_4{SRW2|=-XZ? z_h8)Tr|^I|s5Y7Xz51&siy;uwS@_}{)Rt(tB;;PyWq9B`l!}4ld4KQ_Cj{~x{9yv8 z^6x*6&+zhj=w+6-a<8{jz{{iH&(WW^p+A1#ScE_xJDNGbTj!u>;4BN!vqV%&aLENI oJ;PypIUf@lC`1eVIsNlX|NQ!}9CE&s8t%UUr8+DuKm=a=Kg`LH!2kdN delta 91540 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 diff --git a/src/hooks/useTable.js b/src/hooks/useTable.js index 88417e3..bfcf399 100755 --- a/src/hooks/useTable.js +++ b/src/hooks/useTable.js @@ -8,9 +8,8 @@ import { flexRender, decorateColumnTree, makeHeaderGroups, - findMaxDepth, flattenBy, - determineColumnVisibility, + determineHeaderVisibility, } from '../utils' import { useTableState } from './useTableState' @@ -18,14 +17,10 @@ import { useTableState } from './useTableState' const propTypes = { // General data: PropTypes.array.isRequired, - columns: PropTypes.arrayOf( - PropTypes.shape({ - Cell: PropTypes.any, - Header: PropTypes.any, - }) - ).isRequired, + columns: PropTypes.arrayOf(PropTypes.object).isRequired, defaultColumn: PropTypes.object, - subRowsKey: PropTypes.string, + getSubRows: PropTypes.func, + getRowPathID: PropTypes.func, debug: PropTypes.bool, } @@ -34,6 +29,9 @@ const renderErr = const defaultColumnInstance = {} +const defaultGetSubRows = (row, index) => row.subRows || [] +const defaultGetRowPathID = (row, index) => index + export const useTable = (props, ...plugins) => { // Validate props PropTypes.checkPropTypes(propTypes, props, 'property', 'useTable') @@ -44,7 +42,8 @@ export const useTable = (props, ...plugins) => { state: userState, columns: userColumns, defaultColumn = defaultColumnInstance, - subRowsKey = 'subRows', + getSubRows = defaultGetSubRows, + getRowPathID = defaultGetRowPathID, debug, } = props @@ -89,22 +88,20 @@ export const useTable = (props, ...plugins) => { console.timeEnd('plugins') // Decorate All the columns - let headers = React.useMemo( + let columns = React.useMemo( () => decorateColumnTree(userColumns, defaultColumn), [defaultColumn, userColumns] ) - // Get the flat list of all columns - let columns = React.useMemo(() => flattenBy(headers, 'columns'), [headers]) - - // Allow hooks to decorate columns (and trigger this memoization via deps) - columns = React.useMemo(() => { + // Get the flat list of all columns andllow hooks to decorate + // those columns (and trigger this memoization via deps) + let flatColumns = React.useMemo(() => { if (process.env.NODE_ENV === 'development' && debug) console.time('hooks.columnsBeforeHeaderGroups') let newColumns = applyHooks( instanceRef.current.hooks.columnsBeforeHeaderGroups, - columns, + flattenBy(columns, 'columns'), instanceRef.current ) @@ -124,12 +121,15 @@ export const useTable = (props, ...plugins) => { // Make the headerGroups const headerGroups = React.useMemo( - () => makeHeaderGroups(columns, findMaxDepth(headers), defaultColumn), - [columns, defaultColumn, headers] + () => makeHeaderGroups(flatColumns, columns, defaultColumn), + [columns, defaultColumn, flatColumns] ) + const headers = React.useMemo(() => headerGroups[0].headers, [headerGroups]) + Object.assign(instanceRef.current, { columns, + flatColumns, headerGroups, headers, }) @@ -147,18 +147,20 @@ export const useTable = (props, ...plugins) => { // Keep the original reference around const original = originalRow + const rowID = getRowPathID(originalRow, i) + // Make the new path for the row - const path = [...parentPath, i] + const path = [...parentPath, rowID] flatRows++ rowPaths.push(path.join('.')) // Process any subRows - const subRows = originalRow[subRowsKey] - ? originalRow[subRowsKey].map((d, i) => - accessRow(d, i, depth + 1, path) - ) - : [] + let subRows = getSubRows(originalRow, i) + + if (subRows) { + subRows = subRows.map((d, i) => accessRow(d, i, depth + 1, path)) + } const row = { original, @@ -183,7 +185,7 @@ export const useTable = (props, ...plugins) => { // Create the cells and values row.values = {} - columns.forEach(column => { + flatColumns.forEach(column => { row.values[column.id] = column.accessor ? column.accessor(originalRow, i, { subRows, depth, data }) : undefined @@ -197,14 +199,14 @@ export const useTable = (props, ...plugins) => { if (process.env.NODE_ENV === 'development' && debug) console.timeEnd('getAccessedRows') return [accessedData, rowPaths, flatRows] - }, [debug, data, columns, subRowsKey]) + }, [debug, data, getRowPathID, getSubRows, flatColumns]) instanceRef.current.rows = rows instanceRef.current.rowPaths = rowPaths instanceRef.current.flatRows = flatRows // Determine column visibility - determineColumnVisibility(instanceRef.current) + determineHeaderVisibility(instanceRef.current) // Provide a flat header list for utilities instanceRef.current.flatHeaders = headerGroups.reduce( @@ -258,15 +260,15 @@ export const useTable = (props, ...plugins) => { instanceRef.current.headerGroups.forEach((headerGroup, i) => { // Filter out any headers and headerGroups that don't have visible columns headerGroup.headers = headerGroup.headers.filter(header => { - const recurse = columns => - columns.filter(column => { - if (column.columns) { - return recurse(column.columns) + const recurse = headers => + headers.filter(header => { + if (header.headers) { + return recurse(header.headers) } - return column.isVisible + return header.isVisible }).length - if (header.columns) { - return recurse(header.columns) + if (header.headers) { + return recurse(header.headers) } return header.isVisible }) @@ -316,53 +318,51 @@ export const useTable = (props, ...plugins) => { props ) - const visibleColumns = instanceRef.current.columns.filter( - column => column.isVisible - ) - - // Build the cells for each row - row.cells = visibleColumns.map(column => { - const cell = { - column, - row, - value: row.values[column.id], - } - - // Give each cell a getCellProps base - cell.getCellProps = props => { - const columnPathStr = [...row.path, column.id].join('_') - return mergeProps( - { - key: ['cell', columnPathStr].join('_'), - }, - applyPropHooks( - instanceRef.current.hooks.getCellProps, - cell, - instanceRef.current - ), - props - ) - } - - // Give each cell a renderer function (supports multiple renderers) - cell.render = (type, userProps = {}) => { - const Comp = typeof type === 'string' ? column[type] : type - - if (typeof Comp === 'undefined') { - throw new Error(renderErr) - } - - return flexRender(Comp, { - ...instanceRef.current, + // Build the visible cells for each row + row.cells = instanceRef.current.flatColumns + .filter(d => d.isVisible) + .map(column => { + const cell = { column, row, - cell, - ...userProps, - }) - } + value: row.values[column.id], + } - return cell - }) + // Give each cell a getCellProps base + cell.getCellProps = props => { + const columnPathStr = [...row.path, column.id].join('_') + return mergeProps( + { + key: ['cell', columnPathStr].join('_'), + }, + applyPropHooks( + instanceRef.current.hooks.getCellProps, + cell, + instanceRef.current + ), + props + ) + } + + // Give each cell a renderer function (supports multiple renderers) + cell.render = (type, userProps = {}) => { + const Comp = typeof type === 'string' ? column[type] : type + + if (typeof Comp === 'undefined') { + throw new Error(renderErr) + } + + return flexRender(Comp, { + ...instanceRef.current, + column, + row, + cell, + ...userProps, + }) + } + + return cell + }) // need to apply any row specific hooks (useExpanded requires this) applyHooks(instanceRef.current.hooks.prepareRow, row, instanceRef.current) diff --git a/src/plugin-hooks/tests/__snapshots__/useExpanded.test.js.snap b/src/plugin-hooks/tests/__snapshots__/useExpanded.test.js.snap index e867f88..a83e7e2 100644 --- a/src/plugin-hooks/tests/__snapshots__/useExpanded.test.js.snap +++ b/src/plugin-hooks/tests/__snapshots__/useExpanded.test.js.snap @@ -19,7 +19,7 @@ Snapshot Diff: @@ -73,7 +73,7 @@ Snapshot Diff:
@@ -289,7 +289,7 @@ Snapshot Diff: @@ -535,7 +535,7 @@ Snapshot Diff: - First value + Second value -@@ -101,11 +101,11 @@ +@@ -109,11 +109,11 @@ @@ -1065,7 +1065,7 @@ Snapshot Diff: - First value + Second value -@@ -101,11 +101,11 @@ +@@ -109,11 +109,11 @@ @@ -1147,7 +1147,7 @@ Snapshot Diff: - First value + Second value -@@ -213,11 +213,11 @@ +@@ -221,11 +221,11 @@ @@ -1216,7 +1216,7 @@ Snapshot Diff: - First value + Second value -@@ -269,11 +269,11 @@ +@@ -277,11 +277,11 @@ @@ -1257,7 +1257,7 @@ Snapshot Diff: - First value + Second value -@@ -325,11 +325,11 @@ +@@ -333,11 +333,11 @@ @@ -1299,7 +1299,7 @@ Snapshot Diff: - First value + Second value -@@ -325,11 +325,11 @@ +@@ -333,11 +333,11 @@ diff --git a/src/plugin-hooks/tests/useExpanded.test.js b/src/plugin-hooks/tests/useExpanded.test.js index 2cbf476..24af0a0 100644 --- a/src/plugin-hooks/tests/useExpanded.test.js +++ b/src/plugin-hooks/tests/useExpanded.test.js @@ -50,7 +50,7 @@ function Table({ columns: userColumns, data, SubComponent }) { headerGroups, rows, prepareRow, - columns, + flatColumns, state: [{ expanded }], } = useTable( { @@ -90,7 +90,9 @@ function Table({ columns: userColumns, data, SubComponent }) { {!row.subRows.length && row.isExpanded ? ( - + ) : null} diff --git a/src/plugin-hooks/useFilters.js b/src/plugin-hooks/useFilters.js index ce6b971..e8e72a5 100755 --- a/src/plugin-hooks/useFilters.js +++ b/src/plugin-hooks/useFilters.js @@ -33,7 +33,7 @@ function useMain(instance) { const { debug, rows, - columns, + flatColumns, filterTypes: userFilterTypes, manualFilters, disableFilters, @@ -43,7 +43,7 @@ function useMain(instance) { const preFilteredRows = rows const setFilter = (id, updater) => { - const column = columns.find(d => d.id === id) + const column = flatColumns.find(d => d.id === id) if (!column) { throw new Error(`React-Table: Could not find a column with id: ${id}`) @@ -85,7 +85,7 @@ function useMain(instance) { // Filter out undefined values Object.keys(newFilters).forEach(id => { const newFilter = newFilters[id] - const column = columns.find(d => d.id === id) + const column = flatColumns.find(d => d.id === id) const filterMethod = getFilterMethod( column.filter, userFilterTypes || {}, @@ -104,7 +104,7 @@ function useMain(instance) { }, actions.setAllFilters) } - columns.forEach(column => { + flatColumns.forEach(column => { const { id, accessor, disableFilters: columnDisableFilters } = column // Determine if a column is filterable @@ -144,7 +144,7 @@ function useMain(instance) { filteredRows = Object.entries(filters).reduce( (filteredSoFar, [columnID, filterValue]) => { // Find the filters column - const column = columns.find(d => d.id === columnID) + const column = flatColumns.find(d => d.id === columnID) if (!column) { return filteredSoFar @@ -195,12 +195,12 @@ function useMain(instance) { } return filterRows(rows) - }, [manualFilters, filters, debug, rows, columns, userFilterTypes]) + }, [manualFilters, filters, debug, rows, flatColumns, userFilterTypes]) React.useMemo(() => { // Now that each filtered column has it's partially filtered rows, // lets assign the final filtered rows to all of the other columns - const nonFilteredColumns = columns.filter( + const nonFilteredColumns = flatColumns.filter( column => !Object.keys(filters).includes(column.id) ) @@ -209,7 +209,7 @@ function useMain(instance) { nonFilteredColumns.forEach(column => { column.preFilteredRows = filteredRows }) - }, [columns, filteredRows, filters]) + }, [filteredRows, filters, flatColumns]) return { ...instance, diff --git a/src/plugin-hooks/useGroupBy.js b/src/plugin-hooks/useGroupBy.js index 3e0d374..9a5b203 100755 --- a/src/plugin-hooks/useGroupBy.js +++ b/src/plugin-hooks/useGroupBy.js @@ -48,16 +48,16 @@ export const useGroupBy = hooks => { useGroupBy.pluginName = 'useGroupBy' -function columnsBeforeHeaderGroups(columns, { state: [{ groupBy }] }) { +function columnsBeforeHeaderGroups(flatColumns, { state: [{ groupBy }] }) { // Sort grouped columns to the start of the column list // before the headers are built - const groupByColumns = groupBy.map(g => columns.find(col => col.id === g)) - const nonGroupByColumns = columns.filter(col => !groupBy.includes(col.id)) + const groupByColumns = groupBy.map(g => flatColumns.find(col => col.id === g)) + const nonGroupByColumns = flatColumns.filter(col => !groupBy.includes(col.id)) // If a groupByBoundary column is found, place the groupBy's after it const groupByBoundaryColumnIndex = - columns.findIndex(column => column.groupByBoundary) + 1 + flatColumns.findIndex(column => column.groupByBoundary) + 1 return [ ...nonGroupByColumns.slice(0, groupByBoundaryColumnIndex), @@ -72,8 +72,8 @@ function useMain(instance) { const { debug, rows, - columns, - headers, + flatColumns, + flatHeaders, groupByFn = defaultGroupByFn, manualGroupBy, disableGrouping, @@ -85,7 +85,7 @@ function useMain(instance) { ensurePluginOrder(plugins, [], 'useGroupBy', ['useExpanded']) - columns.forEach(column => { + flatColumns.forEach(column => { const { id, accessor, disableGrouping: columnDisableGrouping } = column column.isGrouped = groupBy.includes(id) column.groupedIndex = groupBy.indexOf(id) @@ -124,16 +124,15 @@ function useMain(instance) { hooks.getGroupByToggleProps = [] - // - ;[...columns, ...headers].forEach(column => { - const { canGroupBy } = column - column.getGroupByToggleProps = props => { + flatHeaders.forEach(header => { + const { canGroupBy } = header + header.getGroupByToggleProps = props => { return mergeProps( { onClick: canGroupBy ? e => { e.persist() - column.toggleGroupBy() + header.toggleGroupBy() } : undefined, style: { @@ -141,7 +140,7 @@ function useMain(instance) { }, title: 'Toggle GroupBy', }, - applyPropHooks(instance.hooks.getGroupByToggleProps, column, instance), + applyPropHooks(instance.hooks.getGroupByToggleProps, header, instance), props ) } @@ -173,7 +172,7 @@ function useMain(instance) { const aggregateRowsToValues = (rows, isSourceRows) => { const values = {} - columns.forEach(column => { + flatColumns.forEach(column => { // Don't aggregate columns that are in the groupBy if (groupBy.includes(column.id)) { values[column.id] = rows[0] ? rows[0].values[column.id] : null @@ -266,7 +265,7 @@ function useMain(instance) { groupBy, debug, rows, - columns, + flatColumns, userAggregations, groupByFn, ]) diff --git a/src/plugin-hooks/useSortBy.js b/src/plugin-hooks/useSortBy.js index 7693639..25dcd53 100755 --- a/src/plugin-hooks/useSortBy.js +++ b/src/plugin-hooks/useSortBy.js @@ -49,7 +49,7 @@ function useMain(instance) { const { debug, rows, - columns, + flatColumns, orderByFn = defaultOrderByFn, sortTypes: userSortTypes, manualSorting, @@ -75,7 +75,7 @@ function useMain(instance) { const { sortBy } = old // Find the column for this columnID - const column = columns.find(d => d.id === columnID) + const column = flatColumns.find(d => d.id === columnID) const { sortDescFirst } = column // Find any existing sortBy for this column @@ -213,7 +213,7 @@ function useMain(instance) { // Filter out sortBys that correspond to non existing columns const availableSortBy = sortBy.filter(sort => - columns.find(col => col.id === sort.id) + flatColumns.find(col => col.id === sort.id) ) const sortData = rows => { @@ -224,7 +224,7 @@ function useMain(instance) { rows, availableSortBy.map(sort => { // Support custom sorting methods for each column - const column = columns.find(d => d.id === sort.id) + const column = flatColumns.find(d => d.id === sort.id) if (!column) { throw new Error( @@ -254,7 +254,7 @@ function useMain(instance) { // Map the directions availableSortBy.map(sort => { // Detect and use the sortInverted option - const column = columns.find(d => d.id === sort.id) + const column = flatColumns.find(d => d.id === sort.id) if (column && column.sortInverted) { return sort.desc @@ -279,7 +279,15 @@ function useMain(instance) { console.timeEnd('getSortedRows') return sortData(rows) - }, [manualSorting, sortBy, debug, columns, rows, orderByFn, userSortTypes]) + }, [ + manualSorting, + sortBy, + debug, + rows, + flatColumns, + orderByFn, + userSortTypes, + ]) return { ...instance, diff --git a/src/utils.js b/src/utils.js index 943d2ac..d2f4b00 100755 --- a/src/utils.js +++ b/src/utils.js @@ -1,5 +1,11 @@ import React from 'react' +const columnFallbacks = { + Header: () => null, + Cell: ({ cell: { value = '' } }) => value, + show: true, +} + // Find the depth of the columns export function findMaxDepth(columns, depth = 0) { return columns.reduce((prev, curr) => { @@ -38,9 +44,7 @@ export function decorateColumn(column, defaultColumn, parent, depth, index) { } column = { - Header: () => null, - Cell: ({ cell: { value = '' } }) => value, - show: true, + ...columnFallbacks, ...column, id, accessor, @@ -69,20 +73,27 @@ export function decorateColumnTree(columns, defaultColumn, parent, depth = 0) { } // Build the header groups from the bottom up -export function makeHeaderGroups(columns, maxDepth, defaultColumn) { +export function makeHeaderGroups(flatColumns, columns, defaultColumn) { const headerGroups = [] - const buildGroup = (columns, depth = 0) => { + const maxDepth = findMaxDepth(columns) + + // Build each header group from the bottom up + const buildGroup = (columns, depth) => { const headerGroup = { headers: [], } const parentColumns = [] + // Do any of these columns have parents? const hasParents = columns.some(col => col.parent) columns.forEach(column => { + // Are we the first column in this group? const isFirst = !parentColumns.length + + // What is the latest (last) parent column? let latestParentColumn = [...parentColumns].reverse()[0] // If the column has a parent, add it if necessary @@ -95,7 +106,7 @@ export function makeHeaderGroups(columns, maxDepth, defaultColumn) { }) } } else if (hasParents) { - // If other columns have parents, add a place holder if necessary + // If other columns have parents, we'll need to add a place holder if necessary const placeholderColumn = decorateColumn( { originalID: [column.id, 'placeholder', maxDepth - depth].join('_'), @@ -131,23 +142,22 @@ export function makeHeaderGroups(columns, maxDepth, defaultColumn) { 0 ) : 1 // Leaf node columns take up at least one count - headerGroup.headers.push(column) }) headerGroups.push(headerGroup) if (parentColumns.length) { - buildGroup(parentColumns) + buildGroup(parentColumns, depth + 1) } } - buildGroup(columns) + buildGroup(flatColumns, 0) return headerGroups.reverse() } -export function determineColumnVisibility(instance) { +export function determineHeaderVisibility(instance) { const { headers } = instance const handleColumn = (column, parentVisible) => { @@ -156,14 +166,15 @@ export function determineColumnVisibility(instance) { ? column.show(instance) : !!column.show : false - if (column.columns && column.columns.length) { - column.columns.forEach(subColumn => + + if (column.headers && column.headers.length) { + column.headers.forEach(subColumn => handleColumn(subColumn, column.isVisible) ) } } - headers.forEach(subColumn => handleColumn(subColumn, true)) + headers.forEach(subHeader => handleColumn(subHeader, true)) } export function getBy(obj, path, def) {
-@@ -168,10 +170,53 @@ +@@ -172,10 +174,53 @@ @@ -505,7 +505,7 @@ Snapshot Diff: -@@ -214,11 +216,11 @@ +@@ -218,11 +220,11 @@ class="" > -@@ -246,10 +248,30 @@ +@@ -250,10 +252,30 @@ -@@ -157,11 +157,11 @@ +@@ -165,11 +165,11 @@ -@@ -213,11 +213,11 @@ +@@ -221,11 +221,11 @@ -@@ -269,11 +269,11 @@ +@@ -277,11 +277,11 @@ -@@ -325,11 +325,11 @@ +@@ -333,11 +333,11 @@ -@@ -381,11 +381,11 @@ +@@ -389,11 +389,11 @@ -@@ -437,11 +437,11 @@ +@@ -445,11 +445,11 @@ -@@ -493,11 +493,11 @@ +@@ -501,11 +501,11 @@ -@@ -549,11 +549,11 @@ +@@ -557,11 +557,11 @@ -@@ -605,11 +605,11 @@ +@@ -613,11 +613,11 @@ -@@ -661,11 +661,11 @@ +@@ -669,11 +669,11 @@ -@@ -717,11 +717,11 @@ +@@ -725,11 +725,11 @@ -@@ -773,11 +773,11 @@ +@@ -781,11 +781,11 @@ -@@ -829,11 +829,11 @@ +@@ -837,11 +837,11 @@ -@@ -885,11 +885,11 @@ +@@ -893,11 +893,11 @@ -@@ -941,11 +941,11 @@ +@@ -949,11 +949,11 @@ -@@ -997,11 +997,11 @@ +@@ -1005,11 +1005,11 @@ -@@ -1053,11 +1053,11 @@ +@@ -1061,11 +1061,11 @@ -@@ -1109,11 +1109,11 @@ +@@ -1117,11 +1117,11 @@ -@@ -1165,11 +1165,11 @@ +@@ -1173,11 +1173,11 @@ -@@ -1221,11 +1221,11 @@ +@@ -1229,11 +1229,11 @@ -@@ -1277,11 +1277,11 @@ +@@ -1285,11 +1285,11 @@ -@@ -1333,11 +1333,11 @@ +@@ -1341,11 +1341,11 @@ -@@ -1389,11 +1389,11 @@ +@@ -1397,11 +1397,11 @@ -@@ -1445,11 +1445,11 @@ +@@ -1453,11 +1453,11 @@ -@@ -1501,11 +1501,11 @@ +@@ -1509,11 +1509,11 @@ -@@ -1557,11 +1557,11 @@ +@@ -1565,11 +1565,11 @@ -@@ -1613,11 +1613,11 @@ +@@ -1621,11 +1621,11 @@ -@@ -1669,11 +1669,11 @@ +@@ -1677,11 +1677,11 @@ -@@ -1725,11 +1725,11 @@ +@@ -1733,11 +1733,11 @@ -@@ -1781,11 +1781,11 @@ +@@ -1789,11 +1789,11 @@ -@@ -1837,11 +1837,11 @@ +@@ -1845,11 +1845,11 @@ -@@ -1893,11 +1893,11 @@ +@@ -1901,11 +1901,11 @@ -@@ -1949,11 +1949,11 @@ +@@ -1957,11 +1957,11 @@ -@@ -2005,11 +2005,11 @@ +@@ -2013,11 +2013,11 @@ -@@ -2061,11 +2061,11 @@ +@@ -2069,11 +2069,11 @@ -@@ -2098,15 +2098,52 @@ +@@ -2106,15 +2106,52 @@
-@@ -157,11 +157,11 @@ +@@ -165,11 +165,11 @@ -@@ -213,11 +213,11 @@ +@@ -221,11 +221,11 @@ -@@ -269,11 +269,11 @@ +@@ -277,11 +277,11 @@ -@@ -325,11 +325,11 @@ +@@ -333,11 +333,11 @@ -@@ -381,11 +381,11 @@ +@@ -389,11 +389,11 @@ -@@ -437,11 +437,11 @@ +@@ -445,11 +445,11 @@ -@@ -493,11 +493,11 @@ +@@ -501,11 +501,11 @@ -@@ -549,11 +549,11 @@ +@@ -557,11 +557,11 @@ -@@ -605,11 +605,11 @@ +@@ -613,11 +613,11 @@ -@@ -661,11 +661,11 @@ +@@ -669,11 +669,11 @@ -@@ -717,11 +717,11 @@ +@@ -725,11 +725,11 @@ -@@ -773,11 +773,11 @@ +@@ -781,11 +781,11 @@ -@@ -829,11 +829,11 @@ +@@ -837,11 +837,11 @@ -@@ -885,11 +885,11 @@ +@@ -893,11 +893,11 @@ -@@ -941,11 +941,11 @@ +@@ -949,11 +949,11 @@ -@@ -997,11 +997,11 @@ +@@ -1005,11 +1005,11 @@ -@@ -1053,11 +1053,11 @@ +@@ -1061,11 +1061,11 @@ -@@ -1109,11 +1109,11 @@ +@@ -1117,11 +1117,11 @@ -@@ -1165,11 +1165,11 @@ +@@ -1173,11 +1173,11 @@ -@@ -1221,11 +1221,11 @@ +@@ -1229,11 +1229,11 @@ -@@ -1277,11 +1277,11 @@ +@@ -1285,11 +1285,11 @@ -@@ -1333,11 +1333,11 @@ +@@ -1341,11 +1341,11 @@ -@@ -1389,11 +1389,11 @@ +@@ -1397,11 +1397,11 @@ -@@ -1445,11 +1445,11 @@ +@@ -1453,11 +1453,11 @@ -@@ -1501,11 +1501,11 @@ +@@ -1509,11 +1509,11 @@ -@@ -1557,11 +1557,11 @@ +@@ -1565,11 +1565,11 @@ -@@ -1613,11 +1613,11 @@ +@@ -1621,11 +1621,11 @@ -@@ -1669,11 +1669,11 @@ +@@ -1677,11 +1677,11 @@ -@@ -1725,11 +1725,11 @@ +@@ -1733,11 +1733,11 @@ -@@ -1781,11 +1781,11 @@ +@@ -1789,11 +1789,11 @@ -@@ -1837,11 +1837,11 @@ +@@ -1845,11 +1845,11 @@ -@@ -1893,11 +1893,11 @@ +@@ -1901,11 +1901,11 @@ -@@ -1949,11 +1949,11 @@ +@@ -1957,11 +1957,11 @@ -@@ -2005,11 +2005,11 @@ +@@ -2013,11 +2013,11 @@ -@@ -2061,11 +2061,11 @@ +@@ -2069,11 +2069,11 @@ -@@ -2098,52 +2098,15 @@ +@@ -2106,52 +2106,15 @@
-@@ -213,11 +213,11 @@ +@@ -221,11 +221,11 @@ -@@ -269,11 +269,11 @@ +@@ -277,11 +277,11 @@ -@@ -325,11 +325,11 @@ +@@ -333,11 +333,11 @@ -@@ -2098,15 +2098,20 @@ +@@ -2106,15 +2106,20 @@
-@@ -269,11 +269,11 @@ +@@ -277,11 +277,11 @@ -@@ -325,11 +325,11 @@ +@@ -333,11 +333,11 @@ -@@ -2098,20 +2098,17 @@ +@@ -2106,20 +2106,17 @@
-@@ -2098,17 +2098,18 @@ +@@ -2106,17 +2106,18 @@
-@@ -2098,18 +2098,19 @@ +@@ -2106,18 +2106,19 @@
-@@ -2098,19 +2098,18 @@ +@@ -2106,19 +2106,18 @@
{SubComponent({ row })} + {SubComponent({ row })} +