json_serializable.dart
json_serializable.dart copied to clipboard
Add an option for `jsonSerializable` annotation to choose what `enum` property `name` or `index` to use for serialization.
Now generated code contains such statement for ThemeMode
enum
:
const _$ThemeModeEnumMap = {
ThemeMode.system: 'system',
ThemeMode.light: 'light',
ThemeMode.dark: 'dark',
};
So enum
values are serialized as String
s but having a possibility to serialize enum
values as int
egers would be a good option.
const _$ThemeModeEnumMap = {
ThemeMode.system: 0,
ThemeMode.light: 1,
ThemeMode.dark: 2,
};
This is supported by Enum
s owned by the author. It'd be a new feature to add it for unowned enums.