import 'package:flutter_riverpod/flutter_riverpod.dart'; import '../api/cuisine_repository.dart'; import '../../shared/models/cuisine.dart'; import 'language_provider.dart'; /// Fetches and caches cuisines with localized names. /// Returns list of [Cuisine] objects. /// Re-fetches automatically when languageProvider changes. final cuisinesProvider = FutureProvider>((ref) { ref.watch(languageProvider); // invalidate when language changes return ref.read(cuisineRepositoryProvider).fetchCuisines(); }); /// Convenience provider that returns a slug → localized name map. final cuisineNamesProvider = FutureProvider>((ref) async { final cuisines = await ref.watch(cuisinesProvider.future); return {for (final c in cuisines) c.slug: c.name}; });