toJson method
Implementation
@override
Map<String, dynamic>? toJson(CupertinoThemeData? value) {
if (value == null) return null;
var runtimeTypeStr = value.runtimeType.toString();
// In Flutter < 1.24, the type is: CupertinoThemeData or _NoDefaultCupertinoThemeData
// In Flutter >= 1.24, the type is: NoDefaultCupertinoThemeData
assert(runtimeTypeStr == 'CupertinoThemeData' ||
runtimeTypeStr == 'NoDefaultCupertinoThemeData' ||
runtimeTypeStr == '_NoDefaultCupertinoThemeData');
if (runtimeTypeStr == 'CupertinoThemeData' ||
runtimeTypeStr == 'NoDefaultCupertinoThemeData' ||
runtimeTypeStr == '_NoDefaultCupertinoThemeData') {
return <String, dynamic>{
'barBackgroundColor':
const NullableColorConverter().toJson(value.barBackgroundColor),
'brightness':
const NullableBrightnessConverter().toJson(value.brightness),
'primaryColor':
const NullableColorConverter().toJson(value.primaryColor),
'primaryContrastingColor': const NullableColorConverter()
.toJson(value.primaryContrastingColor),
'scaffoldBackgroundColor': const NullableColorConverter()
.toJson(value.scaffoldBackgroundColor),
'textTheme': const NullableCupertinoTextThemeDataConverter()
.toJson(value.textTheme),
};
} else {
throw Exception(
'Unknown type passed in to [const NullableCupertinoThemeDataConverter().toJson]: [$runtimeTypeStr]',
);
}
throw 'Json_Unsuported_Value';
}