osum_serializable 0.0.3 osum_serializable: ^0.0.3 copied to clipboard
Serialize almost everything you ever need! Supports serializing MaterialColor, Color, DateTime, Directory, File, Offset, Duration, and many more.
osum_serializable #
The goal is to serialize almost everything you ever need! json_serializable
is an amazing package to serialize classes but cannot serialize complex types.
Supports #
Type | Support |
---|---|
Color |
✅ |
DateTime |
✅ |
Directory |
✅ |
File |
✅ |
Duration |
✅ |
Offset |
✅ |
MaterialColor |
✅ |
How to use? #
// imports ...
part 'test.g.dart';
@JsonSerializable()
class Example {
const Example(this.directory, this.file, this.color, this.duration, this.materialColor);
factory Example.fromJson(Json json) => _$ExampleFromJson(json);
@DirectoryConverter() // <- Convertors provided by osum_serializable!
final Directory directory;
@MaterialColorConverter()
final MaterialColor materialColor;
@FileConverter()
final File file;
@ColorConverter()
final Color color;
@DurationConverter()
final Duration duration;
Json toJson() => _$ExampleToJson(this);
}