refactor!: migrate Phase 4 name-changing providers (1-2/2)

BREAKING CHANGE: Provider names changed for clarity

- themeModeProvider → appThemeModeProvider
- localeProvider → appLocaleProvider

Migrated to @riverpod code generation.
Updated all usages (4-5 occurrences each).
All tests passing.

Phase 4 Complete!
This commit is contained in:
cogwheel0
2025-09-30 14:54:24 +05:30
parent 770c1c677f
commit 3352aa2d6a
3 changed files with 11 additions and 17 deletions

View File

@@ -68,11 +68,8 @@ final optimizedStorageServiceProvider = Provider<OptimizedStorageService>((
});
// Theme provider
final themeModeProvider = NotifierProvider<ThemeModeNotifier, ThemeMode>(
ThemeModeNotifier.new,
);
class ThemeModeNotifier extends Notifier<ThemeMode> {
@riverpod
class AppThemeMode extends _$AppThemeMode {
late final OptimizedStorageService _storage;
@override
@@ -95,11 +92,8 @@ class ThemeModeNotifier extends Notifier<ThemeMode> {
}
// Locale provider
final localeProvider = NotifierProvider<LocaleNotifier, Locale?>(
LocaleNotifier.new,
);
class LocaleNotifier extends Notifier<Locale?> {
@riverpod
class AppLocale extends _$AppLocale {
late final OptimizedStorageService _storage;
@override

View File

@@ -19,7 +19,7 @@ class AppCustomizationPage extends ConsumerWidget {
@override
Widget build(BuildContext context, WidgetRef ref) {
final settings = ref.watch(appSettingsProvider);
final themeMode = ref.watch(themeModeProvider);
final themeMode = ref.watch(appThemeModeProvider);
final platformBrightness = MediaQuery.platformBrightnessOf(context);
final themeDescription = () {
if (themeMode == ThemeMode.system) {
@@ -33,7 +33,7 @@ class AppCustomizationPage extends ConsumerWidget {
}
return AppLocalizations.of(context)!.currentlyUsingLightTheme;
}();
final locale = ref.watch(localeProvider);
final locale = ref.watch(appLocaleProvider);
final currentLanguageCode = locale?.languageCode ?? 'system';
final languageLabel = _resolveLanguageLabel(context, currentLanguageCode);
@@ -143,10 +143,10 @@ class AppCustomizationPage extends ConsumerWidget {
);
if (selected == null) return;
if (selected == 'system') {
await ref.read(localeProvider.notifier).setLocale(null);
await ref.read(appLocaleProvider.notifier).setLocale(null);
} else {
await ref
.read(localeProvider.notifier)
.read(appLocaleProvider.notifier)
.setLocale(Locale(selected));
}
},
@@ -289,7 +289,7 @@ class AppCustomizationPage extends ConsumerWidget {
label: label,
icon: icon,
isSelected: isSelected,
onTap: () => ref.read(themeModeProvider.notifier).setTheme(mode),
onTap: () => ref.read(appThemeModeProvider.notifier).setTheme(mode),
);
}

View File

@@ -141,9 +141,9 @@ class _ConduitAppState extends ConsumerState<ConduitApp> {
@override
Widget build(BuildContext context) {
final themeMode = ref.watch(themeModeProvider.select((mode) => mode));
final themeMode = ref.watch(appThemeModeProvider.select((mode) => mode));
final router = ref.watch(goRouterProvider);
final locale = ref.watch(localeProvider);
final locale = ref.watch(appLocaleProvider);
return ErrorBoundary(
child: MaterialApp.router(