initializeApp function

Future<void> initializeApp([
  1. SharedPreferences? prefs
])

Implementation

Future<void> initializeApp([SharedPreferences? prefs]) async {
  WidgetsFlutterBinding.ensureInitialized();

  final p = prefs ?? await SharedPreferences.getInstance();

  _initialTheme = switch (p.getString(themeModeKey)) {
    'light' => ThemeMode.light,
    'dark' => ThemeMode.dark,
    _ => ThemeMode.system,
  };

  final savedMode = p.getString(sidebarModeKey);
  if (savedMode != null) {
    _initialSidebarMode = TSidebarMode.values.firstWhere(
      (m) => m.name == savedMode,
      orElse: () => TSidebarMode.full,
    );
  } else {
    final oldMinified = p.getBool(sidebarMinifiedKey) ?? false;
    _initialSidebarMode = oldMinified ? TSidebarMode.minified : TSidebarMode.full;
  }

  _initialPrimaryColorIndex = p.getInt(primaryColorIndexKey) ?? 0;
}