mirror of
https://github.com/foss42/apidash.git
synced 2025-12-02 02:39:19 +08:00
feat: add onboarding functionality and theme switch button
This commit is contained in:
@@ -3,6 +3,7 @@ import 'package:shared_preferences/shared_preferences.dart';
|
||||
import '../models/models.dart';
|
||||
|
||||
const String kSharedPrefSettingsKey = 'apidash-settings';
|
||||
const String kSharedPrefOnboardingKey = 'apidash-onboard-status';
|
||||
|
||||
Future<SettingsModel?> getSettingsFromSharedPrefs() async {
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
@@ -22,6 +23,18 @@ Future<void> setSettingsToSharedPrefs(SettingsModel settingsModel) async {
|
||||
await prefs.setString(kSharedPrefSettingsKey, settingsModel.toString());
|
||||
}
|
||||
|
||||
Future<void> setOnboardingStatusToSharedPrefs(
|
||||
{required bool isOnboardingComplete}) async {
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
await prefs.setBool(kSharedPrefOnboardingKey, isOnboardingComplete);
|
||||
}
|
||||
|
||||
Future<bool> getOnboardingStatusFromSharedPrefs() async {
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
final bool? onboardingStatus = prefs.getBool(kSharedPrefOnboardingKey);
|
||||
return onboardingStatus ?? false;
|
||||
}
|
||||
|
||||
Future<void> clearSharedPrefs() async {
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
await prefs.remove(kSharedPrefSettingsKey);
|
||||
|
||||
Reference in New Issue
Block a user