From d99ef2a837e2ce53757818dd342199f3de432da5 Mon Sep 17 00:00:00 2001 From: Freddie Date: Thu, 29 Oct 2026 10:57:50 -0700 Subject: [PATCH 1/6] Reload dynamicDataStore every 5 minutes --- .../row/HomeTableRowGoldWorldQuests.svelte | 2 +- .../home/view-switcher/Delves.svelte | 2 +- .../components/zone-maps/ZoneMapsThing.svelte | 2 +- apps/frontend/data/tasks/11-midnight/12-0.ts | 2 +- apps/frontend/data/tasks/utils.ts | 2 +- apps/frontend/user-home/Main.svelte | 4 +++- .../components/world-quests/Map.svelte | 2 +- .../user-home/state/activeHolidays.svelte.ts | 6 ++++-- .../{dynamicData.ts => dynamicData.svelte.ts} | 19 +++++++++++++++---- apps/frontend/utils/tasks/nth-active-quest.ts | 2 +- 10 files changed, 29 insertions(+), 14 deletions(-) rename apps/frontend/user-home/stores/{dynamicData.ts => dynamicData.svelte.ts} (92%) diff --git a/apps/frontend/components/home/table/row/HomeTableRowGoldWorldQuests.svelte b/apps/frontend/components/home/table/row/HomeTableRowGoldWorldQuests.svelte index a1dbb24bb..75cbb6de6 100644 --- a/apps/frontend/components/home/table/row/HomeTableRowGoldWorldQuests.svelte +++ b/apps/frontend/components/home/table/row/HomeTableRowGoldWorldQuests.svelte @@ -5,7 +5,7 @@ import { timeState } from '@/shared/state/time.svelte'; import { componentTooltip } from '@/shared/utils/tooltips'; import { zoneMap } from '@/user-home/components/world-quests/data'; - import { dynamicDataStore } from '@/user-home/stores/dynamicData'; + import { dynamicDataStore } from '@/user-home/stores/dynamicData.svelte'; import { userState } from '@/user-home/state/user'; import { getNumberKeyedEntries } from '@/utils/get-number-keyed-entries'; import type { CharacterProps } from '@/types/props'; diff --git a/apps/frontend/components/home/view-switcher/Delves.svelte b/apps/frontend/components/home/view-switcher/Delves.svelte index 8fa13d899..5eadb8c51 100644 --- a/apps/frontend/components/home/view-switcher/Delves.svelte +++ b/apps/frontend/components/home/view-switcher/Delves.svelte @@ -6,7 +6,7 @@ import { settingsState } from '@/shared/state/settings.svelte'; import { componentTooltip } from '@/shared/utils/tooltips'; import { userState } from '@/user-home/state/user'; - import { dynamicDataStore } from '@/user-home/stores/dynamicData'; + import { dynamicDataStore } from '@/user-home/stores/dynamicData.svelte'; import DelvesTooltip from './DelvesTooltip.svelte'; import IconifyWrapper from '@/shared/components/images/IconifyWrapper.svelte'; diff --git a/apps/frontend/components/zone-maps/ZoneMapsThing.svelte b/apps/frontend/components/zone-maps/ZoneMapsThing.svelte index b985c1adb..d3c16ccaf 100644 --- a/apps/frontend/components/zone-maps/ZoneMapsThing.svelte +++ b/apps/frontend/components/zone-maps/ZoneMapsThing.svelte @@ -6,7 +6,7 @@ import { userQuestStore } from '@/stores'; import { zoneMapState } from '@/stores/local-storage/zone-map'; import { userState } from '@/user-home/state/user'; - import { dynamicDataStore } from '@/user-home/stores/dynamicData'; + import { dynamicDataStore } from '@/user-home/stores/dynamicData.svelte'; import { getInstanceFarm } from '@/utils/get-instance-farm'; import { getFarmIcon } from '@/utils/zone-maps'; import type { FarmStatus } from '@/types'; diff --git a/apps/frontend/data/tasks/11-midnight/12-0.ts b/apps/frontend/data/tasks/11-midnight/12-0.ts index 6329b7f63..066f3492b 100644 --- a/apps/frontend/data/tasks/11-midnight/12-0.ts +++ b/apps/frontend/data/tasks/11-midnight/12-0.ts @@ -2,7 +2,7 @@ import { Constants } from '@/data/constants'; import { aliasedIcons, iconLibrary, uiIcons } from '@/shared/icons'; import { timeState } from '@/shared/state/time.svelte'; import { DbResetType } from '@/shared/stores/db/enums'; -import { dynamicDataStore } from '@/user-home/stores/dynamicData'; +import { dynamicDataStore } from '@/user-home/stores/dynamicData.svelte'; import type { Character } from '@/types'; import type { Chore, Task } from '@/types/tasks'; import { twoWeekDecorator } from './utils'; diff --git a/apps/frontend/data/tasks/utils.ts b/apps/frontend/data/tasks/utils.ts index c21eb0d83..62e39569b 100644 --- a/apps/frontend/data/tasks/utils.ts +++ b/apps/frontend/data/tasks/utils.ts @@ -4,7 +4,7 @@ import { emissaryQuestToHoliday, holidayToReputations } from '@/data/reputation' import { Expansion } from '@/enums/expansion'; import { timeState } from '@/shared/state/time.svelte'; import { DbResetType } from '@/shared/stores/db/enums'; -import { dynamicDataStore } from '@/user-home/stores/dynamicData'; +import { dynamicDataStore } from '@/user-home/stores/dynamicData.svelte'; import type { Holiday } from '@/enums/holiday'; import type { Chore } from '@/types/tasks'; diff --git a/apps/frontend/user-home/Main.svelte b/apps/frontend/user-home/Main.svelte index 086a099c3..104f425db 100644 --- a/apps/frontend/user-home/Main.svelte +++ b/apps/frontend/user-home/Main.svelte @@ -10,7 +10,7 @@ import { delegateBasicTooltips } from '@/shared/utils/tooltips'; import { userAchievementStore, userQuestStore, userStore } from '@/stores'; import { userState } from '@/user-home/state/user'; - import { dynamicDataStore } from '@/user-home/stores/dynamicData'; + import { dynamicDataStore } from '@/user-home/stores/dynamicData.svelte'; import { hashObject } from '@/utils/hash-object.svelte'; import parseApiTime from '@/utils/parse-api-time'; import type { Settings } from '@/shared/stores/settings/types/settings'; @@ -50,6 +50,8 @@ userQuestStore.setup($timeStore); userAchievementStore.setup($achievementState); + dynamicDataStore.startFetchTimer(); + // mounting the new nav conditionally is annoying const navTarget = document.querySelector('#app-nav'); navTarget.replaceChildren(); diff --git a/apps/frontend/user-home/components/world-quests/Map.svelte b/apps/frontend/user-home/components/world-quests/Map.svelte index 33935401d..bf24845c5 100644 --- a/apps/frontend/user-home/components/world-quests/Map.svelte +++ b/apps/frontend/user-home/components/world-quests/Map.svelte @@ -4,7 +4,7 @@ import { zoneData } from './data'; import { browserState } from '@/shared/state/browser.svelte'; import { settingsState } from '@/shared/state/settings.svelte'; - import { dynamicDataStore } from '@/user-home/stores/dynamicData'; + import { dynamicDataStore } from '@/user-home/stores/dynamicData.svelte'; import ContinentBox from './ContinentBox.svelte'; import Image from '@/shared/components/images/Image.svelte'; diff --git a/apps/frontend/user-home/state/activeHolidays.svelte.ts b/apps/frontend/user-home/state/activeHolidays.svelte.ts index 2fb60b239..62b50c78c 100644 --- a/apps/frontend/user-home/state/activeHolidays.svelte.ts +++ b/apps/frontend/user-home/state/activeHolidays.svelte.ts @@ -5,7 +5,7 @@ import { emissaryQuestToHoliday } from '@/data/reputation'; import { timeState } from '@/shared/state/time.svelte'; import { wowthingData } from '@/shared/stores/data'; import { userState } from '@/user-home/state/user'; -import { dynamicDataStore } from '@/user-home/stores/dynamicData'; +import { dynamicDataStore } from '@/user-home/stores/dynamicData.svelte'; import { getNumberKeyedEntries } from '@/utils/get-number-keyed-entries'; import type { StaticDataHoliday } from '@/shared/stores/static/types'; @@ -28,7 +28,7 @@ class ActiveHolidays { return {} as ActiveHolidayMap; } - const currentTime = timeState.slowTime; + const currentTime = timeState.time; const fakeStartTime = currentTime.plus({ days: 2 }); const regionMask = allRegions.reduce((a, b) => a + (1 << (b - 1)), 0); @@ -128,6 +128,8 @@ class ActiveHolidays { endDate: emissaryQuest.expiresAt, soon: false, }; + } else { + console.warn('invalid holiday?', { emissaryQuest, emissaryHoliday }); } } } diff --git a/apps/frontend/user-home/stores/dynamicData.ts b/apps/frontend/user-home/stores/dynamicData.svelte.ts similarity index 92% rename from apps/frontend/user-home/stores/dynamicData.ts rename to apps/frontend/user-home/stores/dynamicData.svelte.ts index e6f0cdf99..24a3f5f79 100644 --- a/apps/frontend/user-home/stores/dynamicData.ts +++ b/apps/frontend/user-home/stores/dynamicData.svelte.ts @@ -2,8 +2,9 @@ import sortBy from 'lodash/sortBy'; import sum from 'lodash/sum'; import { DateTime } from 'luxon'; -import { getNumberKeyedEntries } from '@/utils/get-number-keyed-entries'; +import { Region } from '@/enums/region'; import type { RewardType } from '@/enums/reward-type'; +import { getNumberKeyedEntries } from '@/utils/get-number-keyed-entries'; import type { ApiWorldQuest, ApiWorldQuestReward } from '@/types/world-quests'; interface ApiDynamicData { @@ -28,11 +29,21 @@ class DynamicData { class DynamicDataStore { private static url = '/api/dynamic-data'; - private cache: Record = {}; + public cache: Record = $state({}); private questsCache: Record = {}; + private timer: ReturnType = null; + + async startFetchTimer() { + if (!this.timer) { + this.timer = setInterval(() => { + this.fetch(Region.US, true); + this.fetch(Region.EU, true); + }, 300_000); + } + } - async fetch(region: number) { - if (!this.cache[region]) { + async fetch(region: number, force: boolean = false) { + if (!this.cache[region] || force) { const xsrf = document.getElementById('app').getAttribute('data-xsrf'); const response = await fetch(`${DynamicDataStore.url}/${region}`, { diff --git a/apps/frontend/utils/tasks/nth-active-quest.ts b/apps/frontend/utils/tasks/nth-active-quest.ts index a89a93adf..c5ab363cf 100644 --- a/apps/frontend/utils/tasks/nth-active-quest.ts +++ b/apps/frontend/utils/tasks/nth-active-quest.ts @@ -1,5 +1,5 @@ import { timeState } from '@/shared/state/time.svelte'; -import { dynamicDataStore } from '@/user-home/stores/dynamicData'; +import { dynamicDataStore } from '@/user-home/stores/dynamicData.svelte'; import type { Character } from '@/types/character'; import type { Chore } from '@/types/tasks'; From 5ddd041a1076cc83ca17f2312339402e928b4629 Mon Sep 17 00:00:00 2001 From: Freddie Date: Thu, 29 Oct 2026 12:06:55 -0700 Subject: [PATCH 2/6] Add holiday data for Shadowlands callings --- apps/frontend/data/holidays.ts | 22 ++++++++++++++++++ apps/frontend/enums/holiday.ts | 23 ++++++++++++++++++- .../user-home/state/activeHolidays.svelte.ts | 23 +++++++++++-------- 3 files changed, 57 insertions(+), 11 deletions(-) diff --git a/apps/frontend/data/holidays.ts b/apps/frontend/data/holidays.ts index 4c768ecce..665a324dc 100644 --- a/apps/frontend/data/holidays.ts +++ b/apps/frontend/data/holidays.ts @@ -277,3 +277,25 @@ export const fancyHolidays: FancyHoliday[] = [ everything: 'anniversary', }, ]; + +export const callingQuestToHoliday: Record = { + 60458: Holiday.CallingAnimaSalvage, + 60415: Holiday.CallingRareResources, + 60454: Holiday.CallingStormTheMaw, + 60391: Holiday.CallingAidingArdenweald, + 60392: Holiday.CallingAidingBastion, + 60395: Holiday.CallingAidingMaldraxxus, + 60400: Holiday.CallingAidingRevendreth, + 60424: Holiday.CallingCallArdenweald, + 60426: Holiday.CallingCallBastion, + 60430: Holiday.CallingCallMaldraxxus, + 60434: Holiday.CallingCallRevendreth, + 60439: Holiday.CallingChallengesArdenweald, + 60442: Holiday.CallingChallengesBastion, + 60447: Holiday.CallingChallengesMaldraxxus, + 60450: Holiday.CallingChallengesRevendreth, + 60403: Holiday.CallingTrainingArdenweald, + 60405: Holiday.CallingTrainingBastion, + 60407: Holiday.CallingTrainingMaldraxxus, + 60412: Holiday.CallingTrainingRevendreth, +}; diff --git a/apps/frontend/enums/holiday.ts b/apps/frontend/enums/holiday.ts index e826d1265..9fc0a3f74 100644 --- a/apps/frontend/enums/holiday.ts +++ b/apps/frontend/enums/holiday.ts @@ -66,7 +66,7 @@ export enum Holiday { EmissaryArgussianReach, EmissaryArmyLight, - // BfA Emissaries + // Battle for Azeroth Emissaries EmissaryChampionsAzeroth, EmissaryTortollans, EmissaryProudmooreZandalari, @@ -75,6 +75,27 @@ export enum Holiday { EmissaryLegionHonorbound, EmissaryWavebladeUnshackled, + // Shadowlands Callings + CallingAnimaSalvage, + CallingRareResources, + CallingStormTheMaw, + CallingAidingArdenweald, + CallingAidingBastion, + CallingAidingMaldraxxus, + CallingAidingRevendreth, + CallingCallArdenweald, + CallingCallBastion, + CallingCallMaldraxxus, + CallingCallRevendreth, + CallingChallengesArdenweald, + CallingChallengesBastion, + CallingChallengesMaldraxxus, + CallingChallengesRevendreth, + CallingTrainingArdenweald, + CallingTrainingBastion, + CallingTrainingMaldraxxus, + CallingTrainingRevendreth, + // Temporary PrepatchMidnight, } diff --git a/apps/frontend/user-home/state/activeHolidays.svelte.ts b/apps/frontend/user-home/state/activeHolidays.svelte.ts index 62b50c78c..08ae4c450 100644 --- a/apps/frontend/user-home/state/activeHolidays.svelte.ts +++ b/apps/frontend/user-home/state/activeHolidays.svelte.ts @@ -1,7 +1,8 @@ import { DateTime } from 'luxon'; -import { holidayIds } from '@/data/holidays'; +import { callingQuestToHoliday, holidayIds } from '@/data/holidays'; import { emissaryQuestToHoliday } from '@/data/reputation'; +import { Expansion } from '@/enums/expansion'; import { timeState } from '@/shared/state/time.svelte'; import { wowthingData } from '@/shared/stores/data'; import { userState } from '@/user-home/state/user'; @@ -22,7 +23,6 @@ class ActiveHolidays { private cachedTime: Record = {}; value = $derived.by(() => { - console.time('activeHolidays'); const allRegions = userState.general.allRegions || []; if (allRegions.length === 0) { return {} as ActiveHolidayMap; @@ -36,6 +36,8 @@ class ActiveHolidays { return this.cachedActive[regionMask]; } + // console.time('activeHolidays'); + const filteredHolidays = Array.from(wowthingData.static.holidayById.values()).filter( (holiday) => holiday.durations.length > 0 && @@ -115,12 +117,14 @@ class ActiveHolidays { // fake holidays for emissary quests for (const region of allRegions) { const dynamicData = dynamicDataStore.getCached(region); - for (const emissaryQuests of Object.values(dynamicData.emissaryQuests)) { - const validEmissaryQuests = emissaryQuests.filter( - (eq) => eq.expiresAt > currentTime - ); - for (const emissaryQuest of validEmissaryQuests) { - const emissaryHoliday = emissaryQuestToHoliday[emissaryQuest.questId]; + for (const [expansion, quests] of getNumberKeyedEntries(dynamicData.emissaryQuests)) { + const validQuests = quests.filter((eq) => eq.expiresAt > currentTime); + + for (const emissaryQuest of validQuests) { + const emissaryHoliday = + expansion === Expansion.Shadowlands + ? callingQuestToHoliday[emissaryQuest.questId] + : emissaryQuestToHoliday[emissaryQuest.questId]; if (emissaryHoliday) { activeHolidays[emissaryHoliday] = { holiday: null, @@ -138,8 +142,7 @@ class ActiveHolidays { this.cachedActive[regionMask] = activeHolidays; this.cachedTime[regionMask] = currentTime; - console.log(regionMask, activeHolidays); - console.timeEnd('activeHolidays'); + // console.timeEnd('activeHolidays'); return activeHolidays; }); } From 3d75a36b0d0812b3e14d5ae4e370db1d072f427b Mon Sep 17 00:00:00 2001 From: Freddie Date: Thu, 29 Oct 2026 12:43:36 -0700 Subject: [PATCH 3/6] Add "[SL] Callings" task --- apps/frontend/data/holidays.ts | 4 + .../data/tasks/08-shadowlands/callings.ts | 132 ++++++++++++++++++ .../data/tasks/08-shadowlands/index.ts | 3 +- 3 files changed, 138 insertions(+), 1 deletion(-) create mode 100644 apps/frontend/data/tasks/08-shadowlands/callings.ts diff --git a/apps/frontend/data/holidays.ts b/apps/frontend/data/holidays.ts index 665a324dc..c82db1327 100644 --- a/apps/frontend/data/holidays.ts +++ b/apps/frontend/data/holidays.ts @@ -1,4 +1,5 @@ import { Holiday } from '@/enums/holiday'; +import { getNumberKeyedEntries } from '@/utils/get-number-keyed-entries'; export const holidayMinimumLevel: Record = { // Timewalking: TBC @@ -299,3 +300,6 @@ export const callingQuestToHoliday: Record = { 60407: Holiday.CallingTrainingMaldraxxus, 60412: Holiday.CallingTrainingRevendreth, }; +export const holidayToCallingQuest = Object.fromEntries( + getNumberKeyedEntries(callingQuestToHoliday).map(([questId, holiday]) => [holiday, questId]) +); diff --git a/apps/frontend/data/tasks/08-shadowlands/callings.ts b/apps/frontend/data/tasks/08-shadowlands/callings.ts new file mode 100644 index 000000000..844fc9e99 --- /dev/null +++ b/apps/frontend/data/tasks/08-shadowlands/callings.ts @@ -0,0 +1,132 @@ +import { DbResetType } from '@/shared/stores/db/enums'; +import type { Chore, Task } from '@/types/tasks'; +import { threeDayDecorator } from '../utils'; +import { Holiday } from '@/enums/holiday'; +import { holidayToCallingQuest } from '@/data/holidays'; +import { dynamicDataStore } from '@/user-home/stores/dynamicData.svelte'; + +export const callingChoreData = (holiday: Holiday, questIds: number[]): Partial => { + const callingQuestId = holidayToCallingQuest[holiday]; + return { + noTooltipIcon: true, + questReset: DbResetType.Custom, + questResetForced: true, + questIds, + requiredHolidays: [holiday], + customExpiryFunc: (chore, char, scannedAt, questIds) => { + const dynamicData = dynamicDataStore.getCached(char.region); + const activeEmissaryQuests = Object.values(dynamicData.emissaryQuests).flat(); + return activeEmissaryQuests.find((eq) => eq.questId === callingQuestId)?.expiresAt; + }, + decorationFunc: threeDayDecorator, + }; +}; + +export const slCallings: Task = { + key: 'slCallings', + name: '[SL] Callings', + shortName: 'SL', + minimumLevel: 60, + showSeparate: true, + chores: [ + { + key: 'animaSalvage', + name: 'Anima Salvage', + ...callingChoreData(Holiday.CallingAnimaSalvage, [60457, 60458, 60459, 60460]), + }, + { + key: 'rareResources', + name: 'Rare Resources', + ...callingChoreData(Holiday.CallingRareResources, [60414, 60415, 60416, 60417]), + }, + { + key: 'stormTheMaw', + name: 'Storm the Maw', + ...callingChoreData(Holiday.CallingStormTheMaw, [60452, 60454, 60455, 60456]), + }, + + { + key: 'aidingArdenweald', + name: 'Ardenweald Aiding', + ...callingChoreData(Holiday.CallingAidingArdenweald, [60381, 60389, 60390, 60391]), + }, + { + key: 'callArdenweald', + name: 'Ardenweald Call', + ...callingChoreData(Holiday.CallingCallArdenweald, [60419, 60422, 60423, 60424]), + }, + { + key: 'challengesArdenweald', + name: 'Ardenweald Challenges', + ...callingChoreData(Holiday.CallingChallengesArdenweald, [60438, 60439, 60440, 60441]), + }, + { + key: 'trainingArdenweald', + name: 'Ardenweald Training', + ...callingChoreData(Holiday.CallingTrainingArdenweald, [60388, 60401, 60402, 60403]), + }, + + { + key: 'aidingBastion', + name: 'Bastion Aiding', + ...callingChoreData(Holiday.CallingAidingBastion, [60384, 60392, 60393, 60394]), + }, + { + key: 'callBastion', + name: 'Bastion Call', + ...callingChoreData(Holiday.CallingCallBastion, [60418, 60425, 60426, 60427]), + }, + { + key: 'challengesBastion', + name: 'Bastion Challenges', + ...callingChoreData(Holiday.CallingChallengesBastion, [60437, 60442, 60443, 60444]), + }, + { + key: 'trainingBastion', + name: 'Bastion Training', + ...callingChoreData(Holiday.CallingTrainingBastion, [60387, 60404, 60405, 60406]), + }, + + { + key: 'aidingMaldraxxus', + name: 'Maldraxxus Aiding', + ...callingChoreData(Holiday.CallingAidingMaldraxxus, [60383, 60395, 60396, 60397]), + }, + { + key: 'callMaldraxxus', + name: 'Maldraxxus Call', + ...callingChoreData(Holiday.CallingCallMaldraxxus, [60420, 60429, 60430, 60431]), + }, + { + key: 'challengesMaldraxxus', + name: 'Maldraxxus Challenges', + ...callingChoreData(Holiday.CallingChallengesMaldraxxus, [60436, 60445, 60446, 60447]), + }, + { + key: 'trainingMaldraxxus', + name: 'Maldraxxus Training', + ...callingChoreData(Holiday.CallingTrainingMaldraxxus, [60386, 60407, 60408, 60409]), + }, + + { + key: 'aidingRevendreth', + name: 'Revendreth Aiding', + ...callingChoreData(Holiday.CallingAidingRevendreth, [60382, 60398, 60400, 60401]), + }, + { + key: 'callRevendreth', + name: 'Revendreth Call', + ...callingChoreData(Holiday.CallingCallRevendreth, [60421, 60432, 60433, 60434]), + }, + { + key: 'challengesRevendreth', + name: 'Revendreth Challenges', + ...callingChoreData(Holiday.CallingChallengesRevendreth, [60435, 60448, 60449, 60450]), + }, + { + key: 'trainingRevendreth', + name: 'Revendreth Training', + ...callingChoreData(Holiday.CallingTrainingRevendreth, [60385, 60410, 60411, 60412]), + }, + ], +}; diff --git a/apps/frontend/data/tasks/08-shadowlands/index.ts b/apps/frontend/data/tasks/08-shadowlands/index.ts index ce9d21208..06b286311 100644 --- a/apps/frontend/data/tasks/08-shadowlands/index.ts +++ b/apps/frontend/data/tasks/08-shadowlands/index.ts @@ -1,4 +1,5 @@ +import { slCallings } from './callings'; import { slChores } from './chores'; import { slCovenants } from './covenants'; -export const slTasks = [slChores, slCovenants]; +export const slTasks = [slChores, slCovenants, slCallings]; From 5542b8cfa40750a2a7d01208191791b2452bfdb6 Mon Sep 17 00:00:00 2001 From: Freddie Date: Thu, 29 Oct 2026 12:47:17 -0700 Subject: [PATCH 4/6] Remove "Callings", "Emissaries - BfA", and "Emissaries - Legion" home columns --- apps/frontend/components/home/HomeTable.svelte | 10 ++-------- .../home/table/HomeTableGroupHead.svelte | 16 ++-------------- .../user-home/components/settings/data.ts | 5 ++--- 3 files changed, 6 insertions(+), 25 deletions(-) diff --git a/apps/frontend/components/home/HomeTable.svelte b/apps/frontend/components/home/HomeTable.svelte index 206895a3c..c4b5e3864 100644 --- a/apps/frontend/components/home/HomeTable.svelte +++ b/apps/frontend/components/home/HomeTable.svelte @@ -2,6 +2,7 @@ import { Constants } from '@/data/constants'; import { settingsState } from '@/shared/state/settings.svelte'; import { sharedState } from '@/shared/state/shared.svelte'; + import { removedHomeChoices } from '@/user-home/components/settings/data'; import { delegatedTooltips } from './utils/delegated-tooltips'; import CharacterTable from '@/components/character-table/CharacterTable.svelte'; @@ -11,7 +12,6 @@ import RowCovenant from './table/row/HomeTableRowCovenant.svelte'; import RowCurrencies from './table/row/HomeTableRowCurrencies.svelte'; import RowCurrentLocation from './table/row/HomeTableRowCurrentLocation.svelte'; - import RowDailies from './table/row/HomeTableRowDailies.svelte'; import RowGear from './table/row/HomeTableRowGear.svelte'; import RowGold from './table/row/HomeTableRowGold.svelte'; import RowGoldWorldQuests from './table/row/HomeTableRowGoldWorldQuests.svelte'; @@ -73,18 +73,12 @@ {:else if field === 'bestItemLevel'} - {:else if field === 'callings'} - {:else if field === 'covenant'} {:else if field === 'currencies'} {:else if field === 'currentLocation'} - {:else if field === 'emissariesBfa'} - - {:else if field === 'emissariesLegion'} - {:else if field === 'gear'} {:else if field === 'gold'} @@ -155,7 +149,7 @@ {:else if field === 'vaultWorld'} - {:else} + {:else if !removedHomeChoices.has(field)}   {/if} {/each} diff --git a/apps/frontend/components/home/table/HomeTableGroupHead.svelte b/apps/frontend/components/home/table/HomeTableGroupHead.svelte index 46c4dee33..d6065fc83 100644 --- a/apps/frontend/components/home/table/HomeTableGroupHead.svelte +++ b/apps/frontend/components/home/table/HomeTableGroupHead.svelte @@ -1,11 +1,11 @@