import { onMounted, ref } from 'vue'; import { apiClient } from '../api/client'; import type { components } from '../api/schema'; type Meta = components['schemas']['Meta']; export function useMeta() { const isLoading = ref(false); const metadata = ref(null); const error = ref(null); const getMetadata = async () => { isLoading.value = true; try { const { data } = await apiClient.GET('/api/meta'); error.value = null; metadata.value = data as Meta; } catch (err: any) { console.error('Failed to fetch metadata:', err); error.value = err.message || 'Failed to fetch metadata'; } finally { isLoading.value = false; } }; onMounted(getMetadata); return { isLoading, metadata, error }; }