diff --git a/apps/frontend/components/professions/recipes/AbilityRow.svelte b/apps/frontend/components/professions/recipes/AbilityRow.svelte index 32f2acad9..25dedee1b 100644 --- a/apps/frontend/components/professions/recipes/AbilityRow.svelte +++ b/apps/frontend/components/professions/recipes/AbilityRow.svelte @@ -10,6 +10,7 @@ StaticDataSubProfession, } from '@/shared/stores/static/types'; import type { Character } from '@/types/character'; + import type { Icon } from '@/types/icons'; import FactionIcon from '@/shared/components/images/FactionIcon.svelte'; import IconifyWrapper from '@/shared/components/images/IconifyWrapper.svelte'; @@ -22,17 +23,27 @@ ability: StaticDataProfessionAbility; characters: Character[]; profession: StaticDataProfession; + rank: number; subProfession: StaticDataSubProfession; }; - let { ability, characters, profession, subProfession }: Props = $props(); + let { ability, characters, profession, rank, subProfession }: Props = $props(); - let recipes = $derived(wowthingData.static.skillLineAbilityItems[ability.id] || []); - let recipeItem = $derived(wowthingData.items.items[recipes[0]]); - let isHidden = $derived(hiddenSkillLineAbilitySpellIds.has(ability.spellId)); - let isIgnored = $derived( - wowthingData.manual.ignoredSkillLineAbilitySpellIds.has(ability.spellId) + let [abilityId, spellId] = $derived( + rank > 1 ? ability.extraRanks[rank - 2] : [ability.id, ability.spellId] ); - let anyCharacterHas = $derived(characters.some((char) => char?.knownRecipes?.has(ability.id))); + + let recipes = $derived(wowthingData.static.skillLineAbilityItems[abilityId] || []); + let recipeItem = $derived(wowthingData.items.items[recipes[0]]); + let isHidden = $derived(hiddenSkillLineAbilitySpellIds.has(spellId)); + let isIgnored = $derived(wowthingData.manual.ignoredSkillLineAbilitySpellIds.has(spellId)); + let anyCharacterHas = $derived(characters.some((char) => char?.knownRecipes?.has(abilityId))); + + const rankIcons: Record = { + 1: iconLibrary.mynauiNumber1Circle, + 2: iconLibrary.mynauiNumber2Circle, + 3: iconLibrary.mynauiNumber3Circle, + 4: iconLibrary.mynauiNumber4Circle, + };