toJson method
Abstract function that concrete classes must implement. This must encode the internal data model to a JSON compatible representation.
While not required, it is suggested to call removeNull before returning.
Implementation
@override
Map<String, dynamic> toJson() {
return JsonClass.removeNull({
'crossAxisAlignment': CrossAxisAlignment.center == crossAxisAlignment
? null
: ThemeEncoder.encodeCrossAxisAlignment(
crossAxisAlignment,
),
'mainAxisAlignment': MainAxisAlignment.start == mainAxisAlignment
? null
: ThemeEncoder.encodeMainAxisAlignment(
mainAxisAlignment,
),
'mainAxisSize': MainAxisSize.max == mainAxisSize
? null
: ThemeEncoder.encodeMainAxisSize(
mainAxisSize,
),
'textBaseline': ThemeEncoder.encodeTextBaseline(
textBaseline,
),
'textDirection': ThemeEncoder.encodeTextDirection(
textDirection,
),
'verticalDirection': VerticalDirection.down == verticalDirection
? null
: ThemeEncoder.encodeVerticalDirection(
verticalDirection,
),
'children': const <JsonWidgetData>[] == children
? null
: JsonClass.toJsonList(children),
...args,
});
}