From 0fc9b4afe2a6723c932539f43bceddfac3e93131 Mon Sep 17 00:00:00 2001 From: Spencer Collins Date: Thu, 21 Nov 2024 11:56:49 -0600 Subject: [PATCH] Map filters (#281) * Add map filters for max players, terrain, and game type * fix linting --- eslint.config.mjs | 8 +- src/main/content/maps/map-metadata.ts | 51 +++++++- .../images/icons/terrains/map_acidic.png | Bin 0 -> 5689 bytes .../images/icons/terrains/map_alien.png | Bin 0 -> 4601 bytes .../images/icons/terrains/map_asteroid.png | Bin 0 -> 11714 bytes .../icons/terrains/map_asymmetrical.png | Bin 0 -> 1908 bytes .../images/icons/terrains/map_chokepoints.png | Bin 0 -> 679 bytes .../images/icons/terrains/map_desert.png | Bin 0 -> 4305 bytes .../assets/images/icons/terrains/map_flat.png | Bin 0 -> 353 bytes .../images/icons/terrains/map_forests.png | Bin 0 -> 7999 bytes .../images/icons/terrains/map_grassy.png | Bin 0 -> 9938 bytes .../images/icons/terrains/map_hills.png | Bin 0 -> 1789 bytes .../assets/images/icons/terrains/map_ice.png | Bin 0 -> 5328 bytes .../images/icons/terrains/map_industrial.png | Bin 0 -> 14811 bytes .../images/icons/terrains/map_island.png | Bin 0 -> 4678 bytes .../images/icons/terrains/map_jungle.png | Bin 0 -> 14190 bytes .../assets/images/icons/terrains/map_lava.png | Bin 0 -> 4858 bytes .../images/icons/terrains/map_metal.png | Bin 0 -> 7544 bytes .../images/icons/terrains/map_ruins.png | Bin 0 -> 6113 bytes .../assets/images/icons/terrains/map_sea.png | Bin 0 -> 3983 bytes .../images/icons/terrains/map_shallows.png | Bin 0 -> 2178 bytes .../images/icons/terrains/map_space.png | Bin 0 -> 11463 bytes .../images/icons/terrains/map_swamp.png | Bin 0 -> 9460 bytes .../images/icons/terrains/map_tropical.png | Bin 0 -> 12968 bytes .../images/icons/terrains/map_wasteland.png | Bin 0 -> 22829 bytes .../images/icons/terrains/map_water.png | Bin 0 -> 2442 bytes .../components/battle/MapListModal.vue | 30 +++-- src/renderer/components/controls/Checkbox.vue | 2 +- src/renderer/components/controls/Range.vue | 71 ++++++++---- .../components/maps/MapFiltersComponent.vue | 45 ++++++++ .../components/maps/MapListComponent.vue | 32 +++-- .../components/maps/MapOverviewCard.vue | 25 +++- .../maps/filters/GameTypeFilter.vue | 53 +++++++++ .../maps/filters/IconFilterCheckbox.vue | 40 +++++++ .../maps/filters/MaxPlayersFilter.vue | 18 +++ .../components/maps/filters/TerrainFilter.vue | 63 ++++++++++ .../components/maps/filters/TerrainIcon.vue | 37 ++++++ src/renderer/composables/useTerrainIcon.ts | 109 ++++++++++++++++++ src/renderer/store/maps.store.ts | 19 ++- src/renderer/views/library/maps/index.vue | 70 +++++++++-- tsconfig.json | 3 +- vendor/sdfz-demo-parser/index.ts | 2 +- 42 files changed, 616 insertions(+), 62 deletions(-) create mode 100644 src/renderer/assets/images/icons/terrains/map_acidic.png create mode 100644 src/renderer/assets/images/icons/terrains/map_alien.png create mode 100644 src/renderer/assets/images/icons/terrains/map_asteroid.png create mode 100644 src/renderer/assets/images/icons/terrains/map_asymmetrical.png create mode 100644 src/renderer/assets/images/icons/terrains/map_chokepoints.png create mode 100644 src/renderer/assets/images/icons/terrains/map_desert.png create mode 100644 src/renderer/assets/images/icons/terrains/map_flat.png create mode 100644 src/renderer/assets/images/icons/terrains/map_forests.png create mode 100644 src/renderer/assets/images/icons/terrains/map_grassy.png create mode 100644 src/renderer/assets/images/icons/terrains/map_hills.png create mode 100644 src/renderer/assets/images/icons/terrains/map_ice.png create mode 100644 src/renderer/assets/images/icons/terrains/map_industrial.png create mode 100644 src/renderer/assets/images/icons/terrains/map_island.png create mode 100644 src/renderer/assets/images/icons/terrains/map_jungle.png create mode 100644 src/renderer/assets/images/icons/terrains/map_lava.png create mode 100644 src/renderer/assets/images/icons/terrains/map_metal.png create mode 100644 src/renderer/assets/images/icons/terrains/map_ruins.png create mode 100644 src/renderer/assets/images/icons/terrains/map_sea.png create mode 100644 src/renderer/assets/images/icons/terrains/map_shallows.png create mode 100644 src/renderer/assets/images/icons/terrains/map_space.png create mode 100644 src/renderer/assets/images/icons/terrains/map_swamp.png create mode 100644 src/renderer/assets/images/icons/terrains/map_tropical.png create mode 100644 src/renderer/assets/images/icons/terrains/map_wasteland.png create mode 100644 src/renderer/assets/images/icons/terrains/map_water.png create mode 100644 src/renderer/components/maps/MapFiltersComponent.vue create mode 100644 src/renderer/components/maps/filters/GameTypeFilter.vue create mode 100644 src/renderer/components/maps/filters/IconFilterCheckbox.vue create mode 100644 src/renderer/components/maps/filters/MaxPlayersFilter.vue create mode 100644 src/renderer/components/maps/filters/TerrainFilter.vue create mode 100644 src/renderer/components/maps/filters/TerrainIcon.vue create mode 100644 src/renderer/composables/useTerrainIcon.ts diff --git a/eslint.config.mjs b/eslint.config.mjs index bd1748c9..c57b58a9 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -29,7 +29,13 @@ export default [ rules: { "vue/multi-word-component-names": "off", "@typescript-eslint/no-unused-vars": "warn", - "@typescript-eslint/no-unused-expressions": "warn", + "@typescript-eslint/no-unused-expressions": [ + "warn", + { + allowShortCircuit: true, + allowTernary: true, + }, + ], "@typescript-eslint/no-explicit-any": "warn", "@typescript-eslint/no-non-null-asserted-optional-chain": "warn", "@typescript-eslint/no-unsafe-function-type": "warn", diff --git a/src/main/content/maps/map-metadata.ts b/src/main/content/maps/map-metadata.ts index d89cbab1..d8ea3348 100644 --- a/src/main/content/maps/map-metadata.ts +++ b/src/main/content/maps/map-metadata.ts @@ -20,8 +20,8 @@ export interface MapMetadata { positions: Record; team?: Team[]; }; - tags: string[]; - terrain: string[]; + tags: GameType[]; + terrain: Terrain[]; tidalStrength?: number; windMax: number; windMin: number; @@ -42,3 +42,50 @@ export interface Team { }[]; teamCount: number; } + +export type Terrain = + | "acidic" + | "alien" + | "ice" + | "lava" + | "space" + | "asteroid" + | "desert" + | "forests" + | "grassy" + | "industrial" + | "jungle" + | "metal" + | "ruins" + | "swamp" + | "tropical" + | "wasteland" + | "shallows" + | "sea" + | "island" + | "water" + | "chokepoints" + | "asymmetrical" + | "flat" + | "hills"; + +export type GameType = + | "1v1" + | "1v1v1" + | "2v2" + | "2v2v2" + | "2v2v2v2" + | "3v3" + | "3v3v3v3" + | "4v4" + | "4v4v4" + | "4v4v4v4" + | "5v5" + | "6v6" + | "6v6v6v6" + | "7v7" + | "7v7v7v7" + | "8v8" + | "8v8v8v8" + | "ffa" + | "pve"; diff --git a/src/renderer/assets/images/icons/terrains/map_acidic.png b/src/renderer/assets/images/icons/terrains/map_acidic.png new file mode 100644 index 0000000000000000000000000000000000000000..e2a4e31e1a38478a7064ba6e6198491284a316ee GIT binary patch literal 5689 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 literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_alien.png b/src/renderer/assets/images/icons/terrains/map_alien.png new file mode 100644 index 0000000000000000000000000000000000000000..ea326b96d07a25381ed2fee0780ddaa81090359f GIT binary patch literal 4601 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 literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_asteroid.png b/src/renderer/assets/images/icons/terrains/map_asteroid.png new file mode 100644 index 0000000000000000000000000000000000000000..c2d3621c9e9592e4a3df77e528fc3e66bd7c352d GIT binary patch literal 11714 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

}^rzIB!8_?`;_uAF!xIP)ndXBL2 zuc9m$C;88Sw<7WaM<~`y->Q3CoO^g}7?Hy={q`|J?!OKEhzF$w!mz=gQ8sa|2eq`+ zoxc583_V9$gEo-k+l}jgMe*+p?X9amG;f0Jz3f3E#2B1$NDwuKUEA8)Q;wnv-moOCjbCCPJYsvBBciTo;`(&8L8jkp*a;Of%Yy(Qstk|bJ zoXM#|Rl1DMeaQXhcF6%j9Lc;k`k_-+_w9o7=PoocB3p+wK;NE)Gi4$FWf?{YkbA#pIpis6jr`w|Ln!g8PN*9!1G*aygX( z6P%5k1z^GktBv~Eo_^Z65_Ei}Mm7hcZT@}!DrAcYFC?n(?$h40M|1GDw`FqP47K!r z=(s+r;+eX*%%#x=^-))lDs$f(?}lM5^lTESK~S<6iPs%kpL(WP#ZE>(dlxubKV)`- zdhg!>f$lzwG0^0_lFjpgF{q(-%L0gc=Z!mFdCdcbne_3gW8M6Xs%y!6I7l{Lu8_!m zFDw@q7s-xqy}KqR6j`E!`!BV(CO@$?1OM(@5YE?KzX`g`7^?&_#8bZp!%6 zGIB2L7=}d|U6>cQ`!G!Ab8=aY%c!o?V&F@w_5LLgCKp9bMqdok_h{Zvl0^F4_wDgO zc;nQ4bN$qP%HF|YKlzVL$^fpO?FUlJ)j!^dkNvpS8zJQ@I|p*{k7COZ*IyHN>EJm| z10~+@n|lS;pUgv8{}2-&{c3coGj2yj{#oL39nJFS_4-5-HRj*>J0sHv;sW&TGu ztZ!_*AwikJr{^ibcZKuW5_xFQH`jFp;gJ;kPr!mqNdUK!$F(*R)h8VB8!RmNu zXxg_&?X8wfGMr7(PbeMhXO1kAg9^bPIW`k*alvZDndQR0`Z5 zlHahDPz|M)%{35q-^mlc9Ka=KNfrPrq-J)+1$^&)e9vR+C0CQVx`j21)sPdF$$-*s zW{w?x&v)?wN9uWe>?9cc(DbIC9|Yb|apioJPqk9+Jmy2&<{I4lK?dlrld2R3z0~p& zF7#kyWM>yYzt^sF@1;(E@7(=qJ$XvCaXUGezbI#|@Q-~a02OOEITvv>aY<7=z*E2Q z%PTiD)$pxx+sV`4!^6Y(`R>$;jY!tE#>8T~e_rL=>aNnMLwgb7^kSfjncT13nr5cZ zy7BQ>f8itd&M7y(9AlZJJz>A8`(J-8@aSj5C5i6Y*^}=HjO)+B?VrC7z^;rb=3@7!x(te0WCK;af-GU?c zlDfi02$_^?UoN`!ERFI_etb2huEXk;yD zf$*rnWg7eL$Zp>mkAf4+iNJSM9y>YP01d4vXaX~htE7&rxv49d&+Ho*S^?NVY#hw2 ztjw&u8XyinPBuOe8zTtB2Lfen$JYNJ0eeStYYVUcU*Px`2Rc-M?tgo5wYCSlxSHBK X{r@t*Dn8CaWdO30N)kWCOoIOhxR+f1 literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_asymmetrical.png b/src/renderer/assets/images/icons/terrains/map_asymmetrical.png new file mode 100644 index 0000000000000000000000000000000000000000..bd5abf015bbbe44089536a89d9671fabad8e67f4 GIT binary patch literal 1908 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD3?#3*wF4y>{{{GjxVjhk07Y(s0fd1}0)>%f zaY;e6BO8J&f}agHAFd2j1TIB9gDQp)Zykjy2gnW8)=0AG>;qID_#8tkXJ$W_PtS0VRzo0Kx);ufRf{RB$ zE6v2IzOY&-IYqJd@sjNqy5C$}yYe_sRA96-A5%<%a-6^9mq|OjR=iq$_3PYwz2!wV z+|Q0~Jh&{FbFp27%$Ir63=Awao-U3d8Ta1KN-ciuA<&jy)zUWO@a&iZ=hJ8QY_B-I z=lB^A;Q6bcuM(e>opPG_Q)ukf(x%_jpua;})ojF>wexr-K_K6L>J9)nIN{I6QtC~II?m7GL&WGyrI^Cvx z<73`t&Ub(RWU04H`~`(L7|i1CrZT-~b#W*-@bRVTE~Sred|5huj2@I9DZ4vsit77m z7yWq}?mILrFa270f^pul6o-mc`&ExzRytG9R>$7Dqk5X9>FSjit7jB5TDv#gf63}F z?W0VR`{U}Zk1_@Oo(arkIpFraTK9m@4qp|W@aScs+s<#;qx)FCM!NpRMT_)Qvo~Ih zG2(rh8YZ0+5{($P#D3enG;XW@;@OkE92W%UhU``SC-XUoi&g68huOPa;u~W6oO_Gv zS4`h!G}(vIUU#4UrB_xyTP*c-J(v!-|Jm#6J#WVJ(i177Tzs2r71;{bC~m4QW_^2= z`*k$KIt7DDh7G56_13K1-0*e#p2XZWp>l5uBHbAFl<$(*?bo)f%loKA7xSZECR!57 z1$KIeZaz!e?-^sep5uq+v--o+1v#&Ao<6^Vp<-Hn597WruNuv=+bbB~NF><&II^eTU!ZS(O>hG#_FN{$~}kG2+^SNL=JhfVqV=Nwn_ zrYb!MI<0x3c6N8e-{#d7nWC#-vY9f(O_Z>5T^rBJ@L~C|KzWqE|K!^v)0(W;Z2%Qo*~*p*!0&av%WE7MCa zmy^zQMUquBuKdkrZu>R)*{pZw2d^(-Y!LqTx@u%opV5iA{Rf`c(eRbRWhk zVcogv@zor$Mt?u9H{W$J&s41O%*S~jczqaC&gSe~`u}y6hnAqgYO9+}3O~$$Ej_gG z`Vsb)G*~}|UO?FyY@XhR0KP0D`%g}#tcJ0jg3A;TTC#_?sP+Ft@yQ$t^ z;V#pMx3_*wdCk>e)yub9x}jj&jZ}wXi~mLs^2;{Zvd&{-Ukxlg89ZJ6T-G@yGywny Cd>o_z literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_chokepoints.png b/src/renderer/assets/images/icons/terrains/map_chokepoints.png new file mode 100644 index 0000000000000000000000000000000000000000..6841f0e72191d1f4d79fa6fee11d6c7070f0b31f GIT binary patch literal 679 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD3?#3*wSy!q1AIbUf%MIrH?Lp64kRyMzI^M} zEg%C3Zrr#5VZ%j$g12wq2C9UJNV88l0Msm0666=ma9<%_;C;SQ_%QA5qQ7iV#zxd!}y>sEIw*~d5vmYMJ2sqed6Twii zPh!<4TOkMIN2fk_Wk{Gs7xYN_*d%g)?)BYZv-#Dcnq;x^d7oCP+`rK^^SO)Y6VcBC zW)T4|wIyaMZC_N=?`DwuN9)vgj+%6>ljgPo)8-_fWr%%RoAjjmoBq#ZZXCv8bI+Um zKA8D9)a?Ei$?~*LuV+)Y9@geQ*EimuXnM+$EGN^=%%Pot#OQ3`2^wLbCQP z#va{#c8fQu+6lI8m$-iP*xzJmS)9Ra&{wm8fg}AQQ^JFuW6UA@?jC3ES#&%j!Eq+H zmBYWD&k+rQru{5wS1P60CmipOxxn~oev}leipe8GhQ*N~OrN4erZ(&;+bEV$sd|+` zu~hG>>4J!RfA4Ugk-MJsijnDYQQl7eHGJhsyVx(VC^jn8gvRg+Ite-Qy*=!9aq;Ho zx9sj|?)mnK#kcQs<^QM?&ktw!T#=~y_M<-E`ow#k?W=n0fQg2|)78&qol`;+01v-E AzyJUM literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_desert.png b/src/renderer/assets/images/icons/terrains/map_desert.png new file mode 100644 index 0000000000000000000000000000000000000000..9f150f34a5658dc8e4a91d86c19577b400d65685 GIT binary patch literal 4305 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 UNMj+}&|e0)cGVbHs%207ALZ2JjsO4v literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_flat.png b/src/renderer/assets/images/icons/terrains/map_flat.png new file mode 100644 index 0000000000000000000000000000000000000000..0e50cb228a3f49bd1f5164a00ccf1ce05d2e16f0 GIT binary patch literal 353 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD3?#3*wSy#V0(?ST-3xqfk_#H&L^lG>5iSYx z3uZ{YqY}SunzQQtC;8K5Li&HK+CO)1n+{O=pr?ytNXEUl*TRJkEAY4max<3Ac{Jtk zdsAV5JE4AV*FSeRGu%^fSo9jG77B7+#6SB}@3bNA|E3#FQtRubrnyd9#`>#6m)oSc zjWueo=dBM6J;H5kuPdD8yJ2$h{oahsJ^LJ+>|c3Bl}CTw@&2lcg>Tl{qxn@{x%VF3 zn(}|S&(GOA?AJvKYm^H=)~!DA)TQV7BFkA)fjj=#tP)mxxq1CB-W6}sSPXv@t~hcv oYNy7u|5BZbHN|td1B19fvt8^?pPpX6sR-mcPgg&ebxsLQ04^M=!vFvP literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_forests.png b/src/renderer/assets/images/icons/terrains/map_forests.png new file mode 100644 index 0000000000000000000000000000000000000000..299a5b6bd84f02b6a7755aa1aa596301125858b1 GIT binary patch literal 7999 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̈zC>Cq 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 literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_hills.png b/src/renderer/assets/images/icons/terrains/map_hills.png new file mode 100644 index 0000000000000000000000000000000000000000..3eff7dd0d504790058c5d8bb47f2687b65f20145 GIT binary patch literal 1789 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 i^5yH+C9QnRFa8I3*GzQ)reB5t0000{ literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_industrial.png b/src/renderer/assets/images/icons/terrains/map_industrial.png new file mode 100644 index 0000000000000000000000000000000000000000..773e6b477bf1efdbea1a2f31fc242c4fa6eb936a GIT binary patch literal 14811 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 R|DIt2O;sJ0YGr89{{Vx!Z$1D3 literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_jungle.png b/src/renderer/assets/images/icons/terrains/map_jungle.png new file mode 100644 index 0000000000000000000000000000000000000000..85ca8e0c60564eb603ae8e05c2ae0735eea03a1d GIT binary patch literal 14190 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 literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_lava.png b/src/renderer/assets/images/icons/terrains/map_lava.png new file mode 100644 index 0000000000000000000000000000000000000000..6d27417b186b09fbcaf79db66904f89c9b990d96 GIT binary patch literal 4858 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 literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_metal.png b/src/renderer/assets/images/icons/terrains/map_metal.png new file mode 100644 index 0000000000000000000000000000000000000000..3e94981db8fe308b1e583a70fb3bda10a63cfaad GIT binary patch literal 7544 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 literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_ruins.png b/src/renderer/assets/images/icons/terrains/map_ruins.png new file mode 100644 index 0000000000000000000000000000000000000000..44d5c7815b4874d50b0d5e64418a3bdb6b3d784d GIT binary patch literal 6113 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 literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_sea.png b/src/renderer/assets/images/icons/terrains/map_sea.png new file mode 100644 index 0000000000000000000000000000000000000000..7600f3d2fc48ae4752612287d9f6ff4d224f4e38 GIT binary patch literal 3983 zcmb_f)mIb_+a#8TA4sW`lyr9pEDcfuA|>5j5|R?j(v37MA}rmVF49Z0q;!`wOD=rA z|HC)u%*@5y&2yfMiT72lZXWj@{+V-7~p0xOH3y4qU2dF0i`RGP~6QFbFK`F6pcb zQ4ClTNB4_k`cFWT$3aZk-q0-kprDbu4ZTUR`IobN2=%8+4A<_AM9L z^Y;adsI2*Cm5c?m@=e*~ne4GE)cQF%&#T%kw z-MWRVrj>h!WxEO~(^Byh@@caLa}S?>ZY0fI#UfDlwL9?$lsgRR(se5tH)>LIq>w%r zI`K?nk{&X2=>|jTt31P!uzcd&kG7mA#gh+lr|-uSPOcZn-ZuJsBTn>>L7 zG}ag#C$)AHXpOl!_QSDpCx-SCHw z7?%I#3HTL0bSsmxESJ6|mGnm{aZ#seTOniBzV+O+=I~?DI5*Q^0lh=H zUGpiOUFpAz=vSP0bs@D1cSItFQYY`_lV@z2PF>nB)Uua>smq~5*HM$m&y|Nt*_%2g z#~dEb>iO%56AxODO)>C@7^siYrOvJ6L?EO;Xy8U0vZ|H0ES(8_2QIfH6+uD6k*dwcZOU%?goy`x>!nH{7U>}r7;onOXe$mm?MSFhwAD*93 zc9u*}%-^w}Y(76*xTfx{@U5+_$kSZkwKNY@?(FIR`p=beIUU%v*0R#IxF(xeY80{nJXHnRkM^sTnE~p$4piXSmwlxjt_pX* z#|Q`De!eWLZi13G$K2L5^{@KZ$63gt@I(K`k@nm6o7ng+8afo(kZ>@yDB+gr_`}el zjqy!!-zIfFDb%u&8)LiS4(vazo;G^MU>&Z{O!saC_Ur|%oeDW{lElG}7cpQLE|A}G{`|0I95&cqMIv$@wMN5(ZLW)Z(G6HnWBZ4t>(MnyUzZNM4-*> zN8(hEf>F9&RxMK@H_HU!(@)Zt=jM)Yr&+ac`NRZ*&T|XQ9#bCDxpK6PjSXX=s!W+i zcYd=Ix}(OVqyoa*PbiWEBVs13R7Xyzbnx>mh0}NQg{GU+)Nh{hre{)vC+7<)MH#Rf%6o=SE2=ll+Q@%`=6|I3@Wa*dK49IU?__QATEM=mKpH|)6ob8$JL!$ z{qH%#+-lb&U8_V?sD-eNTyC&(eKE)Kl(e^;`{G!MDy>IOl$u3`^zzfwXIJxg(0f4l z%k?90lO+2NYS)z?-uip-dC%L!dOVNyb32~e<^jAf?!!Vu&CXxFnzSE@4Q=k|2$gVX z<#!u>H2zjWTintDo&%fWh>NfJoA;R9JY91?>B}UQu;cXaZwXBCSs^m?F>Q4HKX`bw zu{hBSrGfUgw|DYxk_OGS#P__$3&3aoQnf}|eLIZ5*(9Yd!(AWeL1j)thFm#%{?av# zjaMnezFld(e$qIs$T_It%n*$55=AX--+Da4;pFUx)_xKbTX@av=@7dL?$~6hRg>{Cyt8w+bGN=;=l$~o8;wnhPF%&dM0JGF z64BgmM;YqMS;`D!aO8Ufe{XNWUbsCZGNM z=m$_B26|s$QoWZCHsU3U>M!z_?@bN|&^?cUC5LpG&&ZuWbhSdl=5BF=MG?l;8+%3f zOlc2qLJ$Z9Av}}$Z7~M*_)#y_w%1#3S`OYhg8;SVC^zdJ=uh|ay8Kat9(RtzU0f`1UPjLO23%X`S64yxg;K3Jho~ z=?2{SbgYn>ZB?c8631hBQS{e~3|W+l85#JryvA?ou(EFj5lb%pInoZXEs+a7V5V`d zisruft|7ZOj@th%P7EIBSL4!cOu@ho$fCvf9dsv914}Hsie6CQgZd%LcXf)2i>vkQ zkDO)+0e9!O=YjU!Rwjrf#=;*zCS7@*PSE~ROND{1^p%TDEb0udu!Ed5G_-w?4CP7X zs6!i5+=K$DSa6^ahN89xk#J!RTf~n#Ozz6d&RBOQ+AZD)V2zuULHI?DULO3W^36DE zn%FM-@zG0fzP^Sc`A3s*KQKlKag22Kuwp53A4I8lRF55)jMamHXX4M!LwjI7*q^E^^KYSUD^azxeJ~(*A!ak`)_FBR_j}nB% z&9#uw5)%U924c2T7VEG%_xj;?ZlL2&a^cW0vpN1fMo=G;BS*2QYq1FScWkDZ%-AX& z9p(5d@8k4e@J(ky(IicZju1x-wY;^s0P38!`I>|gXkg5Qc^vuU{2Q@s*;(^+Hu4(>D7p>l8-0&O0F?_u+WVt^Ez{0?6p>g<`}sMz~^~YHi-g{6U0V z6V>YIoj3XKj3B8X1)L%#%*=7Z@2xnf#Zk0WK z3?q+@?yTi~1P-?Ox5m_(#=#X>bU8sIQ)A`|CZEQ7%~w(dv{4wQ~f(|{Wt>;Bxk}3NPGSUD3wXR z&`nKAVPs@HOWjtBkYQwE>e}1L%2v_%^1eNer1Wc8a9N|;rn;sE9k<=*RvUx7?6lnd zFP>qPD_k(+eFe&8-Xl+mR2{>+7i1U|B`nnO>X1*(o&5lN;I0sr9=Wtqur)m&9^OyK z*JNBp+$R}6;_>Cu*2~ekd~Gi{CV9hwrJq?A)QJG8kO{YB-$-#1v^HOrq@Oykiw|*# zBSyx;su17Qmq6G_KJ zO7*v1u>x_z>tV84{-AZTPF%Vq2rsE52}O|e7uhdpK#NFp+ACt@jSTLSLhZByk&51b zIovnEkLsgCDSok57z`XEfn1`~B?8&l8d0X~B$YNqSK`iXzMiPGK4a>aX#572(zXrP zW$K!#4(?K`el9Gb4HM3i->E6$1(kjocS@pZ_V?$7!JGvJV4pg9mwH|J0k+$Nc~r0y zeSn&!<*29&2L)a;ur`J2!y=8X*A+YR`M30OpzwdX+PnbRo2i^N8=bPUL;ydSK`hYE z62tuvF_vS?Vlc33Qj;X1@gEMr+M*0wG-`k?@<7+(RWZL#c=Fpzg z*EPLSVToGIg1Iw!@3bfT=&mM_P6em2s|&O! z??0*o1uPhVfSbmqzYAY`ThKcxH+`5Mp?Cx&lh{7Fk2_JP$H7ySK^NdR^tT}uwuxKx zgb`B+9%np)cKJ;%>58Geh!&d5{zJk$iF=c9 zNI1Ta;44o*m8yB-iRyE7AB$H$mw*BH9&~7YH8?OIGVEnf8Y}_?dS~oyRkg9kV^Oj^ z)a)^lAbdkGb``xuAo}t&AMHv${Mvp=mkS{5qLXL%Lv1^gu5)0$ZmS1m*k7S1Qmz(d zk-5eI^m|?hlSeTP@eJ%i>3+s&42zyNs`8Rw!*PZXUwLCb_A=wX=NPY08%#YGC{_~+ zGLOg8RW@Y9YaP9yWZ(%p<23y`)))Svc{pLDd8dvINqUK#?ACyO$EPV1Q^~^t{))ox z^IkIyr#l~p9$mWb8$39W3NzCTsz?u<$%$8M!)Y8>34T?!(t$NVbu0m{$wX~=z zf+A{3scEarv?#H~5{(G8C882pUi0?*{`>y^?tAX<-gEDL&-tBu&ig!Xs*97I%8tD| zAP|U({aI^QaPwtk~=16=X0UO89%6{@7{QOUpjc-i^EBB4!;Adf|K z0lsxYQVaO5IEXF^>6C_dN=dD2Sn5m!LwccN)hdg1<;m*BCqhKVSZJpdTeKYBDX}bE z2xrL5(?=0m9B>lOkp9`S7ThEVW5__U$@*+gW`#0jXG@ktU&w5Vmk`;k-=Ff~X@jnn zLfAHq@aOBGmx%UF%zX~%H>6Vnsu=1lp;d^=97Cirqq=0)1#^*Y8z{=qZ{@2PDhHd- zK~tv#o(aCwYgsc-{S2z6S@Mu^)bpDRAf#mtybWaTBn-CG{2tRZq0g_LXL9E?$N`kd)^+Q$ z#qXBeB$m`K#7>D-63rm3Z5nm zZdwg!Tm;3t?%TC$J}QR;W(wQ|DZ!Hm{>#lQ@q=l?d-VM|Y#s-Fp9|&}^!Quxg6qR2 zkN|kzmO6)|On^6xq0U)kvM_mEOX{p&oe)Fip>k$z^JfVyLR8i?Dr*wtj3AGIVWP69 z%+rRj1@lPCj77#Mp02~# ztMK%(vqcLQ=}e2vso++zP0^h5BLTia6i8o1-k(5av#j!FTq{L-r_oPf)Kf)8sDkR1G*>~>UoN(9IxL8IQ{p3T?(a-di&zj{VhE~%)YZqo${fu&&` ziCmfweQyoyW3N5xAQ7x)&hbg2>g$f+zMZp0&^m^aRE) zH5gGtbpN=?zKC7tTBDi63=w_hgzLp~wr-6+w<})TKE-Kt<9;^GJwM(av$~?*lhv<@ z*5A4{y(^(F*?A?lO*F+&hG^QH{~sBO@^08VqE<{lj6_%nD=R2sp8K)g*-gJL4(fOc z$S&0hU%GtCIab+w4kafWbwoWo-f-gz+sN9RouqQ-j&pr<#E=*sAgZ_TGDW~cXJ4@? zY|1;1tE-Q1X)ehntoP~sJV_9#bmYW)N7cSqgP50ho8cV0%=Ts7s%kg84wZoqU6EmC zdT4>3YHwnv%OgJ2^x?yw;N*SLS`mi^Mn}cSP3}Ia6AovlPH{F=WfrlnqH(y>I}r!7 zZZ*2yxMA1ZaL(Gp7p+m{tgj(65WC~Vikq^2cnBdVdU@n!ykHlpy3C!}UrpaQn^|8H zdr;M3`2jN8khn{1#L{R+%)cdA299KOpFFU!Q!{S9{N|5lyxVtn<_Lz-gw|$7vVTC^ zHeH8Y)uDcJWo2f?b{-E#iN|aV9oH>)Do#o3F`_D?bf2W8#KfV87Gv3Fkn6|SghJK< zL&I^_4?k|G^p`CR_SI4*NDiuHhm0P4M0bdGOigY1yrnG?-chEqjTJ3NDYdmU+Q|;a z7+{lWtPh`_?!1*2fY+w{iFHYZcn0;oZ!|Tf=Eaz+T}$1M+tPaTZ8BFaIVY{iw|N#1+r@Dj~nIzr=B}`8lGSBN~LGJ)KE{B@S-kV z*Vds~n~d=Ci9PH`gPZ&LZpUSNKE>BkA+u`nhMceO&dg6h+pm&ip=U0n{gT%N!KU*d zY(74{=gWRtuLlu_t2!}|`bmplQ|PYKs@v8oWt{ z#G87+uPR5S3VD};kqQjp)MM&A{bF6oaK2)kfrsH+@g4)tK`N{vG$yd7McDA-i1+Ee zB9XdUnX8w&hB4%xcu=a%R(>uR9p=`lFquqSMlS|~=?0RLIzr#|yb`HJL9P0f9vdlo z?YWk?l*pS7G$6a#`j&R{BQIQ1r*rjxCD16{BRDJ;O+zn4u`w@;m+ai!5u>I5Zp=bfZ*;y4h`;)f4!<# z^{U>h+1ak?t*^SbYv$|O-ig&vlgD~b_8tHLU@0odXuV0Z|LJHbZ};tNAHg?415(gZ z1pxe+0DzDP0N~+G6>VCgY`3xbKryTdhzTl2zAM4DiM zp^u_~ajiR(Y+DSp$lxbYtyV=evA4)u))y{GzLH94vLlmW@vfs0##aI*hrejH2tv?c zp<6~bLIJ&5twC8Y7fF}}k`_iKYJ+=O-@gP8hp^jih`*42Jlu#= z;;lk4O59xV7#;M8zC8-j2oA!$|9t8Hu8k~`hCUodT3 z*K4B!Jul6T-XfeK2i^N~Zd#L`w@}czcV4p7{riG9zTlUcCz#})L$=6F*|ZEpXv?OkTx8J=2Tq=&z7hw7_d#FI53QQG}lfY}plgK*<|j zlM^DuQ{Zpk8Axh5zu6S-q!i8!_YXdvv zAq&NrcY`($7Kx%VyB#r4PkYBT+<(WkWhPGAH-gw4pH1iQRqDjGIA(KdlE6iD`M;80yyw_Ay^D> zyAk}#UNUJq;l`QU*S%@IabOMHMAh7;?#)j(RaJdGo_vAqi=Fue-VIV)cN&RP4*CB` z-071*q1tD98i0~CQ6mMp1(wpIf!X>0=~}1yta%Xwie8`gU6uk&cCKI1&MyW2J&@0Z zNDoDm+w|27pZArx<;auQQ2LbMrJAZg{wN~1z>^Z ze(>VMm#QBJ$?k_>!qC!f0uc5F9IySQDD;()u86fi}FHiCZM*=*{-?qT`#tc>ol z>G?@7Pi!Wue^rCgeP?(TRt)_qnDUh_6m&`djOE(0smJInIQTvu#8wib^$JeHz2rio_ zs*|{sSK!I++x1`ZCRcP+;HzmieB1`AHtg4pAZVLTBGRbYanu1FkpsIdk`1OT5{SZr zQjKDpZ0KGoFy76a;hZ)q8%rAEk;N7Kc$?1)RvOA@=?uQN5r1&#EfwH45pvxV-8|8w zo7a?w`TfLoU8Lk%RH$-h!$dMD$i?hkA(g^E__p`-j#odf4^OdhoJ+84ZmOX+Q)Yi5S}8? zpvkuJZQB0{7V|3Dx+v!avvLM3{TdVUc(}4#e_X%)H><5~oHgqb{6cHtSlin~vNIyM zMwTRqW8n%jcMQKk08!2hknA^AC8-Jgd29J^ar-p7E8{D+C>uf)3QwP5`7P}OA{CUUlm%;}5J z2tIMRU)>jvZp|cMRy&X63=AE%XrgWK(udbD7|N&s5xx0PSNILEtqQ5m4C?YW2a)!f z@4Ta2D(=Sfr(oyM2wWz?4Vrm#W0HazH|%}UdHwua%oc11ciJc#P#?;nUxDgVB$GPRz~_>9FCejAZ;uEsl<2jBFQ5 z;-2sKroJc@V@h=vZ^cX8qV_&}l&AmV*<6{n-v=u9a7V4J8TXvRdlHFz?}kOs`w&HM zJ16&+CWH7J{pV_JSBOF?>^dG#yY6Qz#fLqG%k9XlM+=8bI7#3v7BrR8OyeZsUiOn< z+iyMn?b=4RZYSwer#v~7l?9Z{Egpeg(zg2@Q`>py>&Ou80dnGx{oVGNO-F1W!%?MN zNOdO6ij|9ZMc*r^`B#vP7PY??YL}$T6el+qBGXjfui?C0Z#-YB2i?VPX>%loy{vy8 z2E)%ypaV>!~&`8C*iyXla4wYw^EW#ORYyShp?^Kjvwh#?OISBRBx9I%y?y5_%tG{|8C|wew zQMkTqaFbDK9I>G$(5Ua-R&?inVZhz<#w%F-rYULKi<0`T5B2VDRH7lWrbZTE0hAdM z&Ip9NnU_@1w`6l^ia3eE1nlL8cI;ORtvtl!@$5Se2N!}h{iOIAW2E=cn%(;7!pt0& z{4bZc?gua3fxN?GBpirl1%byB&kQ$oSa;;a1h)oKL!o!!S2y6v$Bow@0G0m%?fPxc zt=pv7?fDRa`nTTRNs;vnY*>Mayplb9_?=dIHpiyXC!_FId*M19!4(Us_-m|rWXL5_ z<9HgrPC+5Ed!nUIp8GmsAIg_sOoTy)6F_mp%-3v;JP;W1<*WOu3Lm4yqtcn27gc`A^GFAHWqiDlc%@?_Ey6M^CxKEgHaw*=? zA0Ze7Mz*ePvVna|D0s?E*6E*Gd&yS}m4wT>5u3Q>pbH1&A2kbx4RC;E!)O&FkMsU< zDcq%0*);QJHHT!U@*FkU_VOyPS;}OM4)JO}FY_WVTiW3$ftOI+;Et{MoT*ze>gNOb z`{l-G1FC@IrjJ;LFnb1-Qg2a}b1310%DHnK4*N)}e&ZjGd0PGN6fdhMv1oJUAXC+rA%;4mzKcbRnyEOkqN4QKyoya9PdJPIPY=w1*;(O6N zenM5QP#D>~zGv0ak}!H~H{5^Cla}{>InqP|pZB982>Sio#o{*i74s7PU21sh zExt^lQU{*nA~r;$uMAO7A$;}nUucP_pp3T|nRGJ=zExGWwe}_c7Nk{BkVz$1Plnty z|1SaZrQV6`r^}lbsvmw`pG(tNj&`;@eQLNfCs|s&T}*FB_*rRsG=E%ZZmN^XEPQuA zQK!Id9E`=4j-czQq@-#kER&=a=V80>%T%Q=jal6!8pTL73a9`b5p+53nPV6y&DRU- z@|I_uZC|YT%=!Vy979P!kJn$EkVb36)gz~F@(a7c&dof`zm-r^sr8wxI>Qn4@jf~~X4MZg zB=MkOF^4u3F>Ob>usKL5v80J|N6N$(F^;*y_pv}6vbP<&IT&C;F<;f}4Nad?JBLD; ze!D@*F4jA{z5{6_><>eJ7D8cO|rj%1Y%I*fzM=W;e)s@LCO_j;5y0Qc5 zb%z@vcC4f_wequM8j>fyyvfQ8dl6-Y`P2KBc#@~y2ebF=V*GZ`y6{Q$Z%~=o4cHqs z@e>3t4g=G;d)6EFZDn>o|7)jX+&G<5@wQ#|OUSpb!BdMBze26@78^BDmD`ve{m^7u zTg@7|$o{4AMiGwOWUBe+y?b;9L#6Ov?Pe2R29H*VX1Vcm=zA!x=WhPEmNIb8 zJj;lsBBp$GKSabCh^VAUGUGU>kZ;{08GDx3nM>c8>i8_vB?pqS;uH6gL_aeOoY{U- zi4|WfwrfSABvW0l!y;?eE3LveRH$aINNh2gY9zi|Ls;`yJQZ<|y?Tyw27ikE_#73M z648ocV-Ft1zAib5aID?y90rWr@c|L(-TxhxfmeCVbF}`gVXyVO#smAPQiDLJd^UL zcWz#N{;lf0Cdu1zVZv*RoK1|OmUVbPfxb3qv=Ap4Z8f>nVH01IY#xqqHDtg-7l< zckXz;2I;=T7lV~#C!j#Ak-x>Uz7NL3FxA?&XziTP!=CuFebOxZ;RB-5#@zezWm}ub z3Ol(H0aa-Nrk0cRiX5|gN<5Ns`y5uC0T=%+khMvy#8XdkN@iIrIlm`fvtR>tNsku^ zOWv5g0}FXGJ*>7Y0E@thw-%zJy=TtG>by_#g z9mm+>FpkO`FVyJ~>z@^Yyj(M{xBsgR=k@%BF?5X})G*#TsL(%={7gnho!vrEF(Z^V z9^uVHKRcq1h6QNaRWAR5FH)|c*h-PY%V<}j40{NGCVtj9I)jX7d&vg>aE9D#&Q119 zF4Z7&sGOh3tVBW~Q!43rLAF?N_=66`|FsY}W>2+vJXtD<-0zLAvNX{J6BSse7 zRF5;S;xX!o1OB^JZx($e{PjHZHW<1VXXQxNaz%l-oUc#&Ci#ReS-u6N)UL9lt=y^7 z-XcFULzQ|QKbA2y9nzY|uMpVyms!>VQd&()rUsdwp=m3%CX9B*M%QD$pO(i1+pwxR zobsF1WdfvlOYMBzW{d}p`3F2v$@%2krH7~ef4bPdrA9SdW|4?$p0DW5)5kG5rI)4n zU$2fnJr4WnqVDS-7g;skGG-DNTD*nN*)4IEGX&Bc=2Y3z&z%FcTVZwLweo5E71*P^ zqIRB;+tYuMn950M%u`xTqN>b+_VK#OkO0Ims-X0&5SVdiRB!`uAtjTl@HnWbCbtHV zC=q?r(tdh>iH6l?=X#5*$PWfT(%{v?YLW#kDPsB?bk34XU$}j9NmJ5$Y7*GYRpF8h_YfWgx(Ho*D0`lqk z<=G>x9e^_;@?kDDg+#HbloMH-XGsvU^vRV21w_h|1DQ=r{Yt2%R@F5IlprIqxSMTtr!q?{Isf(wA9}&0(8p-t&q<9LG2yB6G~z6GK;8KceTubTGB}QF~O$b z^{EK%Dk!I&qQS`wWxiGGE8*k5T2t>WBT<0*H2dUqJx((I=YPYzcJF4Eu$v2vy^{*e zgjdRQerHeq<(na0XG=EY!e(XsFV+Z?AER1dB{tbA-7-wlo#YX5+`v&OJ$Dx?QFuhH zHMBp8!9A4lasom9-R)WjisMqy&M4$FTi(a(AfC}EyU5r(Zo^hJH!<_?(jrUcImc6K z)_2}oyoRV1kZwb~;xd&9%4*Z;#vA>@S023h}iMzLs_;vwI|?k^a_DKac0G_VAwkw_JS9Y(bu=~58Q z%anAvnHH-ODxZU}E*GJ=Z+c|+OU{E%Gz_2Z!F`de{3>%V0@||mktq528%rTr#dM3- zbElKDhfx~JBf5Ei6$%(X4y~r_q;{;nt=ZhYNKSXx8w{hxN4j6#oHLELihc{IdhCC_MFz9&pt$7IY8xjgelj>sCM-G%A+^X1au6X~F>63|pg zI(`#=(4AQMRhe`<29@HIK<_;iphw|PP8&9oL|S)A@UzHnk+fxYQ;IjN^yk7%gf4x7 zx0-Dw-wELcQoe(RN^Pd^FbNiXOyP9=IV{Ml@H&#SS+LUD#_yC6KJ2Gu1j6jl1&>(@ z+k9^x4BQuNzIXHX_RdkORAJHvdce%P2e24z>PRfO^&?WTmV6-ytWvNr%XrGvhT?AF zPsWKP#$*rZ_KE&lAIVk6o^2>xPu+)t_t;E@UQWKNkbG+XaQ7C%c7kKe3KA&S@I&>D zH`}NAdCbLj-rU1Pp0C#J%g```+4&o@@m%+-lv&P$%>6IMf>8G})*DXIaf`F~x*K(Z zE@Z9ryM6(c%C6tmUB{=ZFwa|l>q}6?A!JI;O|{Be4R2OT_MtqcHS@nP)$YtXN%)f^ znM$;)oSa|;sqpSsta4u@Y4Zcr%3|TiGHD_0$y&uyg2>+%A6mdw~ERz(b{mM#A&8+65?_Rr76)~vu)c4t90lR z!@jResJ5@t-_&vw2#8Nbke+xd@#ajc?YE>Y>6@UbTD9E@+KiOJvJG5e_WW8#(~Vhm zddiu<5P!^tUAq@Qhv#}`XpQjvpcAE_MKYRtk_%WB6aSsFcsSBXn&$pDiPDv9E$_a> zY1^51OUa|1F0Oo(HF;h?{$ggC(2lKN09n|kHmU>Vj5%V;Y;@li-4t~$o`=?spsY+` zLJZt)(Jegb-Zc7e6Z6+F72H|!R0N`zuel@IpvlBnpZRSiH&#G3zA=m|wEO0< zW=tzp)?EEe3W>|oM)3Ks@Y&$^zO=;V;SK!fb$1HYRh*IMLL2t`4oH7K4nTi=Ek~+s z2Eb6lyy(O8n;y30HX72y@QU@5|0ARuQlQSdf+NGbWUwc6DoYC;H?M(MsfbK8EH(x1^3(Q|v?QUQN*1>0dkNdE1f*pPCexHu! z?W0g4jIBOpx2P}?Fr7e_PSL#+&v;kFB$vDE`5$@vDlOWnps>f#vu$CbeV{7ujbp-R z{b(8r{H`iU4E_{IFW5p8n9iWy310)77-c!o^15^_kw4o9x7M zaRR_TuH~LX7nO5%SBJnhnpXUCJ3@D+mULn7u~ zJ)HK%T;7pSg|A{hq~d*9O-B%KNNF7<0U2nu*pHJ9Sz1zt9y8%FTAhSu*XpfS@s>T& z(y+;`-V^ecq;fWF8H$7q7&);~^<;6o9f|yC&<^M|X)-!)e!Jdc*8hTx4LfVnKTUfu zhybA}W{|GG?YjT)VG&o@2rc&Z{TuMhd^G*M3^L7-LOVVyxW}bIL@azK9>)Rg`3rIs zFo^cT+MZh#Tro=^$8i4W)u2|fIH=4~b<~wmLL)V9Zy2Abv|^S?V)FZ$a*8Cq)@1aU>)X(`c&CUbcS=j z&Rf87sLKYldnDd%6Pbqz-4@?I9Vdx(LIH?R3vf_~1%3ROe$bTe&iuE0ACk(_LJM|l zhgtdG8hC^xjJl;o7W`vzZh7MXPgTPvLGPj4O4?^;%9^$P{MNvH{x9$l1hSE6ElGkh z{R59;^%Mw;8~jeEB$s`%zqQMsfg1;m{fmR3pkf`u5paK&8WWz3uNi#3pPUYeNXq z&y7z@kJn1g*1s#}Qv)74m_`#xqPG_T$)5!SIJ^?nxp)1wC`gs@qB~;cJfRU>IiM%1 zHoKH-1SZt7I$V5lkul_b3UF^juI4@?9pMdYiHd|1yO0-kyl3_@4#@%fIZM_TF~6q6 z=~*3)9Q-BRiK^KJKjV?(Z;tOB7^`JM?ePuZ0@tcoKU_v*%-mYUA*}_6mU___j?ztu zM#5UvaPtR+BY&;NUN}fXj)t`OMqA<2f5~n%Sc@?p9u@$BlN^S*68-;1|-^piso-FfO3;M0wsYjMNx3a>x6_nt{p2cFqr#yUds1!bLE8r=BWvlw+sQt}vL^oNjX}@YJJzMbXW>V$$ zx&k+1rP&wO0U0!|q~s#U53C7y{u>DhD@s{W*^syXqN-Jc*`gM(Tz~`gJmC}2r^bCu zEJSY5B-KMQp&J={s|ZKlZiVWwxZ6qG4YFw5#_b(Cd=YSEkDguRmi<<&R+LpD%UNAo z#0bKLlzYSYda%=2p_Vnn;_$JNvGb zx-t4(2oCr#dB-t6Rl4B;N9J&(49wCOo9^YxGm*gdzWdBsmDna`uQ#6ln*M%L^RL9k zP*LE6*ht>A`yzcz$2*e%APOdLTilEzTcD-hV`qY{02o;{ryikQGPV1*V>ydmnuM(c zNE0VM&mzaJNxP>K>!7tkpr;Jg$$Inz>+M566qqyUEGoylR7A)H{E5qN(B`)o`=aor z^;2zH-2OPXWT;U(tKvon-SStBSo@#YF^@#1gJ%5|f!40Pg=U&NO{ZVZ&(ts*u9xaZcBLc06{D^#aXk4UD1doiL@7kEwG}TB{Q&DjU zFZ7|_!EON4lo|Z9X!{8X*Sf1+;$oM8dBb*iRz?3XNJwEKFT}^V5Ltj9>N&d^KEVGm z*J*KIo7a3iS#=mIMw($xD2y_9$;~^lz^qeLc^pIKw5ei>{eydl2`Bn5L~M@y%7SCJ zo&wN71cb3d%J%K6hh-i#loAypu&_CWHvdJXNsuA|i?Ea+e?-MKD9R9O%Y-_#__j+j zZZ9$9j5U@&)-}+C=FH0fxZY-Na}F#k?S@dkBAtT|1js2R6-v|o0(ZP59Uj9`BD|w3 z3jVb44nM3wbF(B7jn>M|Aocnd-F7w!^I?21mLYx0q$PE6!|5>$!`nku-!4`wjvUtv&#t2p{dah_O^djUWx&1dWE8kejXqay8QnHG_+}iZrEQ+kHN0 z;s94()bVeE;PbBDe{$c|796Sd-dQ~Z&WnFNYcsYpsWFV9vl=ur`y|f@R@M^zJwMim z;KkyB{AH)`#+Q<{`h7`J^hSzBrRR5l`x|BRIJuNk{Mxk~UwW$)%MbQQ4Enoi>^v7< z+b2CgM_EKf;DRd7c%hzI-olJ`kUJ_6;YaO!Qk$fBTg%<-5E-swm{1FegzS@_V|&H8 z@MA`535(XB8mCkGa#MQnLu^vxqrLb06(DXvq{83kJ^{C(C|7n#Lw2#Q_p(&4Sjs?Yx>Y=XU&&C&AiTxI6utT-Y>J@4+8uIQ6}kP}JOjLBk`N z5>o|LS!SEZycbzHE=C!J13$S}qjb^iOV+zDl^(dNzgwcV*hJ+TyFOhT_c*&x3uk#C z%&0A5jRqZxN!&gZbyB1>q9{Mf_q}#sO@4UPLa1b|(T2b?<~1IGO$-0=jV2l`3_|E7 zKQz#`UWus8n(6S?VF?=U$yTM74)Z%8rGx;S@Z5QZ#1nEEKLlAPye;+x(zTvaiH^P= zN0h2ZXUP@z!)3|>b=T0T<5~0qHH>%;ZAkTp~3hKMv z-9=sap(md$?s-`p_fo%k&W4!>C;7~A@MqHbu}J9C<#lwVJ9EZoCj(IRO%c-KoeXj!ThaI9C?mDpoAbDKg)06vNZGcY4-50i|u zE}Zjex>pmV4pO02TRETjthfm`5BsU3rL~Lx18qE| zsQj;KJClvLFVXa?OuCQskHQO0u?Xn=ItKd{m`4ETxB2?{b(BM}8;; zp1hw`@_?FrC}EMc2XAZ}Ukj;`ZaQ#l5HNUsAN0kOef-Us(?pS?&0tOWTbVUARZhQJ zP3$8}9nn=4F;9zHJBkXfpA-bV2ReHd$YTc!i~~Y8KJ{{2SOP5U)0WKYyq^m+1AD6x zJ$hh(UjSp`=1?!4ZMbfoFiM&GXO{`{I{Y7>C?APc+m6^;^($FK>Sm4IsP=P(Bb%3g zSmY08+hfDa3x9MdzPfzYgWuGBSEN$*dzYg365snO`W%$w zZuMY-g9rokem4)}sv{r()sTMA%e!W$^<3ua@2zk^3q*;kTax{Hu)j|D#vHl(wr<`=uMj| z#&NwYVVi?s4sd;%-(!@xjM{hR-!rk=o4gJR9n92TS7-vZ4cPrR{IN`3`%<{ydCis$ z)s*WmUOIbAV2zM$b&W}=$^p;3R$HO+9HiJf`~j&>x{l+#IY>)yU4=`0)-RIuWS8XR zIGg8}-w>7|Q7x$#5xmY`2O3iVM6^_Ro1>r_n8ANjF`JuM64z1tV9TFe-K--KhcTCO zJ(4>FeQ9+6mO}&cuv%x?u43$J_$E3Yp>xHULmF|jKn~dj!AzAJ{LECfvi(&ydiT)f zXC5set&7sQ5cLgCh_gH<`#hHHcl6?%KYU%nwG;+W1Nb-78JPWZ&AZ_NncL5IL<^2Y zFNa*Q)J>l*xu!({>;G;9)}I^TjDHgnnY#_)g7?NK^$cVLD*Km`)8C+9@@0bjJo!mO;soG< z$2#dH=|I!ChIb8PNC55CZ(x;P#6F}tUkKbyMG+kR_R@``lE+Rcvp$`cXrN15mU2|z z!Icf)+W_bE7=b~6hU(o(`X3hqhckK`l_SNb(JP0CYlPZ8BBuR5+7Voh8FQ&pa`elo z7`;^5Jr2sYmwYEKS(X3x-5>OfeAGj15)?FR7cdkF7gCSK zX!P5Mp9ywm`qJ}tm16=XaL6(uA|E>pyq7uy+~%xk#^6!3B;+wJ3y6>X=gO-(*eZ;dDu z_LV({gf8u2+QWljy2`}e02OLn8@K8PV6BLZlkrr0ccWB_kMtSow%O@1UT1RW5K_Ur zmqU?W_{}YVa64uwJPRcPEebq>_^LQ6;s# zN@Ro6+@h4ZI^_-bA3N#RTW0g!>wx6-gZnzIw6aQSar*Jb#>^D$x;XNbvJ=24s8{oz z{vWFEX~G!)9ZoxLlLv2!B)wMH=e}!wZ};>S(wm7HyYTiH*Io8h}btN(1HLdp){)=42TDtq@-m?^uLMI3x z?Z=}JH4i=z)Is&?jG2ytaGS+7UYvtxP>_ui6jvJ~pi)IX z^{ZowH3KR)lFyqeU~4y_+xod(u~hO@mVCBe`e*p&;l$B2-P0ZF`pp`1dt+B3#E~?o zzG>D_Ca;$eg~D&K@7eV7nlpRddz5X}@>V3*`oVtVKta>CCAlItlRR2<1bb08RmVQ( zZfeze+3_QVUhIcbksU3o815tkcu;*W_;!ujcg4pvMNoZTFIC(F6L6w0q^w41daD}z zh}^ukVmdu~9X{!|9&a+|vj#?9ToS4vca_$z&G2456V=`PLqynpz_cd)DAerg`f{~X zobys)rXIKG(|fk&(l85Em&oX~Ak~nZ-_erAMKKV=U9i@0 zaeVqnug%*jUPez@eNRhsPb*=NyVaWj@Nn_)v2$~?a|`Kk@d*QYgt>UwxVVJ5xN^53 zP5&3b$;Hyn+VB4lfdAyfdIPZh9}Av#PF5bC=1#8v4-D`BHbS;eW&MT$D9WnIG)S3+ F{VxnwXjlLM literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_swamp.png b/src/renderer/assets/images/icons/terrains/map_swamp.png new file mode 100644 index 0000000000000000000000000000000000000000..3736f3edac7d07e81b7668a62792cef0ed77c753 GIT binary patch literal 9460 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 literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_tropical.png b/src/renderer/assets/images/icons/terrains/map_tropical.png new file mode 100644 index 0000000000000000000000000000000000000000..8932b81dba5510d97b80de7765c74ac9843a4c13 GIT binary patch literal 12968 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 IQf6WQ1GvGFs{jB1 literal 0 HcmV?d00001 diff --git a/src/renderer/assets/images/icons/terrains/map_wasteland.png b/src/renderer/assets/images/icons/terrains/map_wasteland.png new file mode 100644 index 0000000000000000000000000000000000000000..72704740b47519fa266833bc1f0b1df00bc89b0d GIT binary patch literal 22829 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 IM6N<$f}&;NA^-pY literal 0 HcmV?d00001 diff --git a/src/renderer/components/battle/MapListModal.vue b/src/renderer/components/battle/MapListModal.vue index af4920d7..b858c985 100644 --- a/src/renderer/components/battle/MapListModal.vue +++ b/src/renderer/components/battle/MapListModal.vue @@ -1,12 +1,18 @@ diff --git a/src/renderer/components/controls/Checkbox.vue b/src/renderer/components/controls/Checkbox.vue index b4ed088b..38d2a53c 100644 --- a/src/renderer/components/controls/Checkbox.vue +++ b/src/renderer/components/controls/Checkbox.vue @@ -50,7 +50,7 @@ function onClick() { align-items: center; justify-content: center; min-height: 33px; - max-width: 33px; + max-height: 33px; max-width: 33px; min-width: 33px; } diff --git a/src/renderer/components/controls/Range.vue b/src/renderer/components/controls/Range.vue index 6b0f842c..db5bd29d 100644 --- a/src/renderer/components/controls/Range.vue +++ b/src/renderer/components/controls/Range.vue @@ -1,46 +1,65 @@ @@ -85,7 +104,11 @@ function onInput(input: number | number[]) { background-color: #fff; } } -:deep(.p-inputtext) { +.min :deep(.p-inputtext) { + width: v-bind(minInputWidth); + text-align: center; +} +.max :deep(.p-inputtext) { width: v-bind(maxInputWidth); text-align: center; } @@ -102,5 +125,9 @@ function onInput(input: number | number[]) { top: 0; background: rgba(255, 255, 255, 0.1); } + &.min:before { + left: unset; + right: 0; + } } diff --git a/src/renderer/components/maps/MapFiltersComponent.vue b/src/renderer/components/maps/MapFiltersComponent.vue new file mode 100644 index 00000000..59697b95 --- /dev/null +++ b/src/renderer/components/maps/MapFiltersComponent.vue @@ -0,0 +1,45 @@ + + + + + diff --git a/src/renderer/components/maps/MapListComponent.vue b/src/renderer/components/maps/MapListComponent.vue index 9a97c85f..4713cdd9 100644 --- a/src/renderer/components/maps/MapListComponent.vue +++ b/src/renderer/components/maps/MapListComponent.vue @@ -11,6 +11,10 @@ +

+

No maps found!

+ Please try different keywords / filters +
@@ -25,18 +29,21 @@ * - Easy one click install button * - Demo map button that launches a simple offline game on the map */ - import { Ref, ref } from "vue"; import SearchBox from "@renderer/components/controls/SearchBox.vue"; import Select from "@renderer/components/controls/Select.vue"; import MapOverviewCard from "@renderer/components/maps/MapOverviewCard.vue"; -import { MapData } from "@main/content/maps/map-data"; +import { type MapData } from "@main/content/maps/map-data"; +import type { GameType, Terrain } from "@main/content/maps/map-metadata"; import { db } from "@renderer/store/db"; import { useDexieLiveQueryWithDeps } from "@renderer/composables/useDexieLiveQuery"; +import { mapsStore } from "@renderer/store/maps.store"; import { useInfiniteScroll } from "@vueuse/core"; +const { filters } = mapsStore; + type SortMethod = { label: string; dbKey: string }; const sortMethods: SortMethod[] = [ @@ -58,12 +65,23 @@ useInfiniteScroll( }, { distance: 300, interval: 550 } ); -const maps = useDexieLiveQueryWithDeps([searchVal, sortMethod, limit], () => - db.maps - .filter((map) => map.displayName.toLocaleLowerCase().includes(searchVal.value.toLocaleLowerCase())) + +const maps = useDexieLiveQueryWithDeps([searchVal, sortMethod, limit, filters], () => { + const { terrain, gameType } = filters; + const terrainFilters = new Set([...(Object.keys(terrain)).filter((key) => !!terrain[key]).map((k) => k)]); + const gameTypeFilters = new Set([...(Object.keys(gameType)).filter((key) => gameType[key]).map((k) => k)]); + return db.maps + .filter( + (map) => + map.displayName.toLocaleLowerCase().includes(searchVal.value.toLocaleLowerCase()) && + filters.minPlayers < map.playerCountMax && + filters.maxPlayers > map.playerCountMax && + (terrainFilters.size === 0 || terrainFilters.isSubsetOf(new Set([...map.terrain]))) && + (gameTypeFilters.size === 0 || !gameTypeFilters.isDisjointFrom(new Set([...map.tags]))) + ) .limit(limit.value) - .sortBy(sortMethod.value.dbKey) -); + .sortBy(sortMethod.value.dbKey); +}); function mapSelected(map: MapData) { emit("map-selected", map); diff --git a/src/renderer/components/maps/MapOverviewCard.vue b/src/renderer/components/maps/MapOverviewCard.vue index 9e854e3c..e57d4cbf 100644 --- a/src/renderer/components/maps/MapOverviewCard.vue +++ b/src/renderer/components/maps/MapOverviewCard.vue @@ -4,8 +4,14 @@
{{ map?.displayName }}
-
-
{{ mapSize }}
+
+
{{ mapSize }}
+
+ {{ map?.playerCountMin }} - {{ map?.playerCountMax }} +
+
+
+
@@ -15,6 +21,10 @@ import defaultMiniMap from "/src/renderer/assets/images/default-minimap.png?url" import { computed } from "vue"; import { useImageBlobUrlCache } from "@renderer/composables/useImageBlobUrlCache"; import { MapData } from "@main/content/maps/map-data"; +import TerrainIcon from "@renderer/components/maps/filters/TerrainIcon.vue"; +import { Icon } from "@iconify/vue/dist/iconify.js"; +import personIcon from "@iconify-icons/mdi/person-multiple"; +import gridIcon from "@iconify-icons/mdi/grid"; const props = defineProps<{ map: MapData; @@ -99,13 +109,20 @@ const imageUrl = computed(() => } .attributes { position: absolute; - bottom: 10px; - left: 10px; border: 1px solid rgba(0, 0, 0, 0.1); background: rgba(0, 0, 0, 0.2); font-size: 16px; font-weight: 600; padding: 2px 5px; transition: 0.2s opacity; + + &.bl { + bottom: 10px; + left: 10px; + } + &.br { + bottom: 10px; + right: 10px; + } } diff --git a/src/renderer/components/maps/filters/GameTypeFilter.vue b/src/renderer/components/maps/filters/GameTypeFilter.vue new file mode 100644 index 00000000..7ea5b996 --- /dev/null +++ b/src/renderer/components/maps/filters/GameTypeFilter.vue @@ -0,0 +1,53 @@ + + + + + diff --git a/src/renderer/components/maps/filters/IconFilterCheckbox.vue b/src/renderer/components/maps/filters/IconFilterCheckbox.vue new file mode 100644 index 00000000..d6918f61 --- /dev/null +++ b/src/renderer/components/maps/filters/IconFilterCheckbox.vue @@ -0,0 +1,40 @@ + + + + + diff --git a/src/renderer/components/maps/filters/MaxPlayersFilter.vue b/src/renderer/components/maps/filters/MaxPlayersFilter.vue new file mode 100644 index 00000000..037ea650 --- /dev/null +++ b/src/renderer/components/maps/filters/MaxPlayersFilter.vue @@ -0,0 +1,18 @@ + + + + + diff --git a/src/renderer/components/maps/filters/TerrainFilter.vue b/src/renderer/components/maps/filters/TerrainFilter.vue new file mode 100644 index 00000000..e0d5c147 --- /dev/null +++ b/src/renderer/components/maps/filters/TerrainFilter.vue @@ -0,0 +1,63 @@ + + + + + diff --git a/src/renderer/components/maps/filters/TerrainIcon.vue b/src/renderer/components/maps/filters/TerrainIcon.vue new file mode 100644 index 00000000..3c6abece --- /dev/null +++ b/src/renderer/components/maps/filters/TerrainIcon.vue @@ -0,0 +1,37 @@ + + + + + diff --git a/src/renderer/composables/useTerrainIcon.ts b/src/renderer/composables/useTerrainIcon.ts new file mode 100644 index 00000000..ece54a05 --- /dev/null +++ b/src/renderer/composables/useTerrainIcon.ts @@ -0,0 +1,109 @@ +import { computed } from "vue"; + +export function useTerrain(terrain: string) { + return computed(() => terrains[terrain]); +} + +export type TerrainData = { + tooltip: string; + icon: string; +}; + +const terrains: Record = { + acidic: { + tooltip: "Acidic and dangerous waters", + icon: "map_acidic.png", + }, + alien: { + tooltip: "Exotic alient biomes", + icon: "map_alien.png", + }, + asteroid: { + tooltip: "Lunar landscape, with low gravity and (no) wind", + icon: "map_asteroid.png", + }, + asymmetrical: { + tooltip: "Asymmetrical map", + icon: "map_asymmetrical.png", + }, + chokepoints: { + tooltip: "Narrow passages", + icon: "map_chokepoints.png", + }, + desert: { + tooltip: "Rocky or sandy, barren desert", + icon: "map_desert.png", + }, + flat: { + tooltip: "Contains large flat areas", + icon: "map_flat.png", + }, + forests: { + tooltip: "Lots of trees", + icon: "map_forests.png", + }, + grassy: { + tooltip: "Lots of crispy green grass", + icon: "map_grassy.png", + }, + hills: { + tooltip: "Hilly or mountainous terrain", + icon: "map_hills.png", + }, + ice: { + tooltip: "A cold place", + icon: "map_ice.png", + }, + industrial: { + tooltip: "Industrial map with ancient constructions", + icon: "map_industrial.png", + }, + island: { + tooltip: "Island map, land fully surrounded by water", + icon: "map_island.png", + }, + jungle: { + tooltip: "Dense foliage and forests", + icon: "map_jungle.png", + }, + lava: { + tooltip: "Dangerous lava pools", + icon: "map_lava.png", + }, + metal: { + tooltip: "Metal map, where (most of) the surface is made of extractable metal", + icon: "map_metal.png", + }, + ruins: { + tooltip: "Structures or ruins", + icon: "map_ruins.png", + }, + sea: { + tooltip: "Large bodies of water or Sea", + icon: "map_sea.png", + }, + shallows: { + tooltip: "Passable shallow water like creeks, rivers and beaches", + icon: "map_shallows.png", + }, + space: { + tooltip: "In outerspace, usually without wind", + icon: "map_space.png", + }, + swamp: { + tooltip: "Swampy, wet terrain with lots of ponds and foliage", + icon: "map_swamp.png", + }, + tropical: { + tooltip: "Tropical biome with beaches, palms and tropical fish", + icon: "map_tropical.png", + }, + wasteland: { + tooltip: "Forgotten wasteland that hasn't seen life in a long time", + icon: "map_wasteland.png", + }, + water: { + tooltip: "Smaller bodies of water like lakes, ponds or rivers", + icon: "map_water.png", + }, +}; diff --git a/src/renderer/store/maps.store.ts b/src/renderer/store/maps.store.ts index 586f3b5c..cd351acb 100644 --- a/src/renderer/store/maps.store.ts +++ b/src/renderer/store/maps.store.ts @@ -1,11 +1,24 @@ import { reactive } from "vue"; -import { MapData } from "@main/content/maps/map-data"; +import type { MapData } from "@main/content/maps/map-data"; +import type { GameType, Terrain } from "@main/content/maps/map-metadata"; import { db } from "@renderer/store/db"; export const mapsStore = reactive({ isInitialized: false, + filters: { + terrain: {}, + gameType: {}, + minPlayers: 2, + maxPlayers: 40, + }, } as { isInitialized: boolean; + filters: { + terrain: Partial>; + gameType: Partial>; + minPlayers: number; + maxPlayers: number; + }; }); export async function getRandomMap(): Promise { @@ -73,3 +86,7 @@ export async function downloadMap(springName: string) { db.maps.update(springName, { isDownloading: false }); }); } + +export function getFilters() { + return mapsStore.filters; +} diff --git a/src/renderer/views/library/maps/index.vue b/src/renderer/views/library/maps/index.vue index 9cdeb4a7..b0ab8b30 100644 --- a/src/renderer/views/library/maps/index.vue +++ b/src/renderer/views/library/maps/index.vue @@ -4,12 +4,23 @@ @@ -25,17 +36,56 @@ * - Filterable * - Paginated */ - -import { MapData } from "@main/content/maps/map-data"; +/** + * Sort by: + * - name + * - size + * - ideal max player count + * - type + * - terrain + * - downloaded (X) + * - certified (X) + * - date created? + * + * Filter by: + * - name (text search) + * - map size (min and max, as slider?) + * - max players (min and max, as slider?) + * - game type + * - terrain + * - water type + * - general layout + */ +import type { MapData } from "@main/content/maps/map-data"; import Panel from "@renderer/components/common/Panel.vue"; +import MapFiltersComponent from "@renderer/components/maps/MapFiltersComponent.vue"; import MapListComponent from "@renderer/components/maps/MapListComponent.vue"; import { useRouter } from "vue-router"; - const router = useRouter(); - async function onMapSelected(map: MapData) { await router.push(`/library/maps/${map.springName}`); } - + diff --git a/tsconfig.json b/tsconfig.json index 0c844d8e..cc54bade 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -9,8 +9,9 @@ "sourceMap": true, "baseUrl": ".", "outDir": "dist", - "moduleResolution": "node", + "moduleResolution": "bundler", "resolveJsonModule": true, + "isolatedModules": true, "paths": { "@main/*": ["src/main/*"], "@preload/*": ["src/preload/*"], diff --git a/vendor/sdfz-demo-parser/index.ts b/vendor/sdfz-demo-parser/index.ts index 896a9f42..11612351 100644 --- a/vendor/sdfz-demo-parser/index.ts +++ b/vendor/sdfz-demo-parser/index.ts @@ -2,4 +2,4 @@ import { DemoParser, DemoParserConfig } from "./demo-parser"; import { DemoModel } from "./model/demo-model"; import { isPacket, isPlayer, isSpec } from "./utils"; -export { DemoModel, DemoParser, DemoParserConfig, isPacket, isPlayer, isSpec }; \ No newline at end of file +export { DemoModel, DemoParser, type DemoParserConfig, isPacket, isPlayer, isSpec }; \ No newline at end of file