Files
Kifi/kifi-app/lib/features/business/providers/business_mode_provider.dart

44 lines
1.2 KiB
Dart

import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'business_provider.dart';
class BusinessModeNotifier extends Notifier<bool> {
@override
bool build() {
final businessProfile = ref.watch(businessProfileProvider).asData?.value;
if (businessProfile == null) {
return false;
}
_loadPreference();
return true;
}
Future<void> _loadPreference() async {
final businessProfile = ref.read(businessProfileProvider).asData?.value;
if (businessProfile == null) {
state = false;
return;
}
final prefs = await SharedPreferences.getInstance();
final saved = prefs.getBool('is_business_mode');
if (saved != null) {
state = saved;
}
}
Future<void> toggleMode() async {
final businessProfile = ref.read(businessProfileProvider).asData?.value;
if (businessProfile == null) {
state = false;
return;
}
final prefs = await SharedPreferences.getInstance();
state = !state;
await prefs.setBool('is_business_mode', state);
}
}
final businessModeProvider = NotifierProvider<BusinessModeNotifier, bool>(() {
return BusinessModeNotifier();
});