diff --git a/apps/frontend/components/characters/professions/CharacterProfessionsCollectibles.svelte b/apps/frontend/components/characters/professions/CharacterProfessionsCollectibles.svelte index 76e89579b..df36f6b47 100644 --- a/apps/frontend/components/characters/professions/CharacterProfessionsCollectibles.svelte +++ b/apps/frontend/components/characters/professions/CharacterProfessionsCollectibles.svelte @@ -4,7 +4,7 @@ import { Constants } from '@/data/constants'; import { expansionSlugMap } from '@/data/expansion'; - import { dragonflightProfessionMap, warWithinProfessionMap } from '@/data/professions'; + import { expansionProfessionMap } from '@/data/professions'; import { zoneShortName } from '@/data/zones'; import { wowthingData } from '@/shared/stores/data'; import { userState } from '@/user-home/state/user'; @@ -39,9 +39,7 @@ return; } - return expansion.id === 9 - ? dragonflightProfessionMap[staticProfession.id] - : warWithinProfessionMap[staticProfession.id]; + return expansionProfessionMap[expansion.id][staticProfession.id]; }); let things = $derived.by(() => { diff --git a/apps/frontend/components/home/table/row/HomeTableRowProfessionConcentration.svelte b/apps/frontend/components/home/table/row/HomeTableRowProfessionConcentration.svelte index 60010b50b..62fd71381 100644 --- a/apps/frontend/components/home/table/row/HomeTableRowProfessionConcentration.svelte +++ b/apps/frontend/components/home/table/row/HomeTableRowProfessionConcentration.svelte @@ -87,7 +87,6 @@ settingsState.value.professions.fullConcentrationIsBad, percent )}" - class:faded={['leatherworking', 'tailoring'].includes(profession.slug)} data-tooltip={tooltip} > diff --git a/apps/frontend/data/professions/cooldowns.ts b/apps/frontend/data/professions/cooldowns.ts index ed4a3389b..527daec0b 100644 --- a/apps/frontend/data/professions/cooldowns.ts +++ b/apps/frontend/data/professions/cooldowns.ts @@ -1,4 +1,5 @@ import { Profession } from '@/enums/profession'; +import { DbResetType } from '@/shared/stores/db/enums'; import type { ProfessionCooldownQuest, ProfessionCooldownSpell } from '@/types'; export const expansionProfessionConcentration: Record> = { @@ -393,6 +394,51 @@ export const professionCooldowns: (ProfessionCooldownQuest | ProfessionCooldownS }, // Skinning + { + type: 'quest', + key: 'midProfessionSkinningGloomclaw', + name: '[Mid] Skin Gloomclaw (Eversong)', + profession: Profession.Skinning, + minimumLevel: 80, + reset: DbResetType.Daily, + ids: [88545], + }, + { + type: 'quest', + key: 'midProfessionSkinningSilverscale', + name: "[Mid] Skin Silverscale (Zul'Aman)", + profession: Profession.Skinning, + minimumLevel: 80, + reset: DbResetType.Daily, + ids: [88526], + }, + { + type: 'quest', + key: 'midProfessionSkinningLumenfin', + name: '[Mid] Skin Lumenfin (Harandar)', + profession: Profession.Skinning, + minimumLevel: 80, + reset: DbResetType.Daily, + ids: [88531], + }, + { + type: 'quest', + key: 'midProfessionSkinningUmbrafang', + name: '[Mid] Skin Umbrafang (Voidstorm)', + profession: Profession.Skinning, + minimumLevel: 80, + reset: DbResetType.Daily, + ids: [88532], + }, + { + type: 'quest', + key: 'midProfessionSkinningNetherscythe', + name: '[Mid] Skin Netherscythe (Voidstorm)', + profession: Profession.Skinning, + minimumLevel: 80, + reset: DbResetType.Daily, + ids: [88524], + }, { type: 'quest', key: 'twwProfessionSkinningSlatefang', diff --git a/apps/frontend/data/professions/professions.ts b/apps/frontend/data/professions/professions.ts index 03ff650a8..92b8b7fb5 100644 --- a/apps/frontend/data/professions/professions.ts +++ b/apps/frontend/data/professions/professions.ts @@ -168,3 +168,9 @@ export const midnightProfessions: TaskProfession[] = [ export const midnightProfessionMap: Record = Object.fromEntries( midnightProfessions.map((profession) => [profession.id, profession]) ); + +export const expansionProfessionMap: Record = { + 9: dragonflightProfessionMap, + 10: warWithinProfessionMap, + 11: midnightProfessionMap, +}; diff --git a/apps/frontend/data/professions/skinning.ts b/apps/frontend/data/professions/skinning.ts index db82aa590..60d83783b 100644 --- a/apps/frontend/data/professions/skinning.ts +++ b/apps/frontend/data/professions/skinning.ts @@ -54,7 +54,7 @@ export const midnightSkinning: TaskProfession = { ], bookQuests: [ { - itemId: 250445, // Echo of Abundance: Skinning + itemId: 250360, // Echo of Abundance: Skinning questId: 92188, source: 'AB', }, diff --git a/apps/frontend/types/data/professions.ts b/apps/frontend/types/data/professions.ts index 58f42f4d0..790e19d57 100644 --- a/apps/frontend/types/data/professions.ts +++ b/apps/frontend/types/data/professions.ts @@ -3,7 +3,7 @@ import type { Profession } from '@/enums/profession'; export interface TaskProfessionQuest { itemId: number; points?: number; - questId: number; + questId?: number; source?: string; costs?: { amount: number; diff --git a/apps/frontend/types/profession-cooldown.ts b/apps/frontend/types/profession-cooldown.ts index 5b3029ee9..8325d3091 100644 --- a/apps/frontend/types/profession-cooldown.ts +++ b/apps/frontend/types/profession-cooldown.ts @@ -1,6 +1,7 @@ import type { DateTime } from 'luxon'; import type { Profession } from '@/enums/profession'; +import type { DbResetType } from '@/shared/stores/db/enums'; export interface ProfessionCooldown { data: ProfessionCooldownQuest | ProfessionCooldownSpell; @@ -18,6 +19,7 @@ export interface ProfessionCooldownQuest { name: string; profession: Profession; minimumLevel?: number; + reset?: DbResetType; unimportant?: boolean; ids: number[]; }