/** * Composable for fetching and managing summoner spell data from CDragon API * Returns a reactive Map of spell ID to spell data */ export const useSummonerSpellMap = () => { const { data: summonerSpellsData } = useFetch>( '/api/cdragon/summoner-spells', { lazy: true, server: false } ) const summonerSpellMap = ref>(new Map()) watch( summonerSpellsData, newData => { if (Array.isArray(newData)) { const map = new Map() for (const spell of newData) { if (spell?.id) { map.set(spell.id, spell) } } summonerSpellMap.value = map } }, { immediate: true } ) return { summonerSpellMap } }