import type { Language } from '../../runtime'; import type { IGroupCategories } from '../../types'; export const useFetchGroupsCategoriesLazy = ( apiMethod: (...args: any[]) => Promise ) => { const data = useState('lazy-groups-categories', () => null); const isLoading = useState('lazy-groups-categories-loading', () => false); const lang = useLang() as Language; async function load() { if (data.value?.length || isLoading.value) return; isLoading.value = true; try { data.value = await apiMethod(lang); } catch (err) { console.error('Failed to load groups categories:', err); } finally { isLoading.value = false; } } return { data, isLoading, load }; };