From 5fe854a0f32629a0b207a20378c5ec12ae99d0be Mon Sep 17 00:00:00 2001 From: Oliver-Akins Date: Sun, 17 Mar 2024 13:40:31 -0600 Subject: [PATCH] Do some logic tweaks for the item filter functionality --- module/config.mjs | 16 +++++++++++++++- module/sheets/Actors/PC/PlayerSheetV2.mjs | 11 +++++------ 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/module/config.mjs b/module/config.mjs index 65ea399..c631fc1 100644 --- a/module/config.mjs +++ b/module/config.mjs @@ -53,6 +53,19 @@ export const localizerConfig = { maxDepth: 10, }; +export const itemFilters = [ + `untyped`, + `aspect`, + `weapon`, + `armour`, + `equipment`, + `foil`, + `pet`, + `transportation`, + `structure`, + `service`, +]; + export default { stats, statDice, @@ -69,5 +82,6 @@ export default { itemTiers, syncMilestones, syncDice, - localizerConfig + localizerConfig, + itemFilters, }; diff --git a/module/sheets/Actors/PC/PlayerSheetV2.mjs b/module/sheets/Actors/PC/PlayerSheetV2.mjs index feac28a..23d48ac 100644 --- a/module/sheets/Actors/PC/PlayerSheetV2.mjs +++ b/module/sheets/Actors/PC/PlayerSheetV2.mjs @@ -114,20 +114,19 @@ export class PlayerSheetv2 extends GenericActorSheet { _itemFiltersActive = new Set(); toggleItemFilter(filterName) { if (this._itemFiltersActive.has(filterName)) { - this._itemFiltersActive.add(filterName); - } else { this._itemFiltersActive.delete(filterName); + } else { + this._itemFiltersActive.add(filterName); }; this.render(); }; get #itemFilters() { - const types = CONFIG.Item.typeLabels; + const types = DOTDUNGEON.itemFilters; const filters = []; - for (const type in types) { - if (["base", "spell", "legendaryItem"].includes(type)) continue; + for (const type of types) { filters.push({ - label: localizer(types[type]), + label: localizer(`TYPES.Item.${type}`), key: type, active: this._itemFiltersActive.has(type), });