export method

  1. @override
Map<String, dynamic> export(
  1. Widget? widget,
  2. BuildContext? buildContext
)
override

export the runtime widget to json

Implementation

@override
Map<String, dynamic> export(Widget? widget, BuildContext? buildContext) {
  var realWidget = widget as ListViewWidget;
  String scrollDirection = "vertical";
  if (realWidget._params.scrollDirection == Axis.horizontal) {
    scrollDirection = "horizontal";
  }

  var padding = realWidget._params.padding as EdgeInsets?;
  var tempChild =
      DynamicWidgetBuilder.export(widget._params.tempChild, buildContext);
  return <String, dynamic>{
    "type": "ListView",
    "scrollDirection": scrollDirection,
    "reverse": realWidget._params.reverse ?? false,
    "shrinkWrap": realWidget._params.shrinkWrap ?? false,
    "cacheExtent": realWidget._params.cacheExtent ?? 0.0,
    "padding": padding != null
        ? "${padding.left},${padding.top},${padding.right},${padding.bottom}"
        : null,
    "itemExtent": realWidget._params.itemExtent ?? null,
    "pageSize": realWidget._params.pageSize ?? 10,
    "loadMoreUrl": realWidget._params.loadMoreUrl ?? null,
    "isDemo": realWidget._params.isDemo ?? false,
    "children": DynamicWidgetBuilder.exportWidgets(
        realWidget._params.children ?? [], buildContext),
    "tempChild": tempChild,
    "dataKey": realWidget._params.dataKey,
  };
}