ZdsThemeData.fromJson constructor
Factory constructor for creating ZdsThemeData from a JSON map.
Implementation
factory ZdsThemeData.fromJson(Map<String, dynamic> json) {
// Determines if accessibility adjustments are needed.
final adjustAccessibility = json['adjustAccessibility'] as bool? ?? false;
// Determines the contrast level, defaulting to 'aa' if not specified as 'aaa'.
final contrast = _zetaContrast(json);
// Determines theme mode
final themeMode = _themeMode(json);
final light = json['light'] as Map<String, dynamic>?;
final dark = json['dark'] as Map<String, dynamic>?;
final lightColors = _ZdsBaseColors.fromJson(light);
final darkColors = dark != null ? _ZdsBaseColors.fromJson(light) : lightColors;
return ZdsThemeData._(
themeMode: themeMode,
contrast: contrast,
lightColors: lightColors,
darkColors: darkColors,
adjustAccessibility: adjustAccessibility,
lightAppBarStyle: _zetaAppBarStyle(light),
darkAppBarStyle: _zetaAppBarStyle(dark),
themeData: _zetaThemeDataFromJson(
json,
contrast,
adjustAccessibility,
lightColors,
darkColors,
),
);
}