// Re-export all API functions for backward compatibility export * from './lib/api/mediaApi'; export * from './lib/api/castApi'; export * from './lib/api/settingsApi'; export * from './lib/api/converters'; export * from './lib/api/types'; // Legacy functions for compatibility export async function fetchAllTags(): Promise { try { const { fetchAllMedia } = await import('./lib/api/mediaApi'); const media = await fetchAllMedia(1, 1000); const tagSet = new Set(); media.forEach(item => { item.tags?.forEach(tag => tagSet.add(tag)); item.genres?.forEach(genre => tagSet.add(genre)); }); return Array.from(tagSet).sort(); } catch (error) { console.error('Error fetching all tags:', error); return []; } } export async function fetchMediaByTag(tag: string) { try { const { fetchAllMedia } = await import('./lib/api/mediaApi'); const media = await fetchAllMedia(1, 1000); return media.filter(item => item.tags?.some(t => t.toLowerCase().includes(tag.toLowerCase())) || item.genres?.some(g => g.toLowerCase().includes(tag.toLowerCase())) ); } catch (error) { console.error('Error fetching media by tag:', error); return []; } } export async function fetchMediaFromApi(apiUrl?: string) { const { fetchAllMedia } = await import('./lib/api/mediaApi'); return fetchAllMedia(); } export async function fetchMediaFromLocalJson() { const { fetchAllMedia } = await import('./lib/api/mediaApi'); return fetchAllMedia(); }