/** * Composable for fetching and managing item data from CDragon API * Returns a reactive Map of item ID to item data */ export const useItemMap = () => { const { data: items } = useFetch>('/api/cdragon/items', { lazy: true, server: false }) const itemMap = ref>(new Map()) watch( items, (newItems) => { if (Array.isArray(newItems)) { const map = new Map() for (const item of newItems) { if (item?.id) { map.set(item.id, item) } } itemMap.value = map } }, { immediate: true } ) return { itemMap } }