buildCustom method
Widget
buildCustom({
- ChildWidgetBuilder? childBuilder,
- required BuildContext context,
- required JsonWidgetData data,
- Key? key,
override
Custom builder that subclasses must override and implement to return the actual Widget to be placed on the tree.
Implementation
@override
Widget buildCustom({
ChildWidgetBuilder? childBuilder,
required BuildContext context,
required JsonWidgetData data,
Key? key,
}) {
final args = Map.from(data.args);
args.remove('dynamic');
final map = {
'id': data.id,
'type': builderType,
'args': args,
'children': List.empty(),
};
if (data.registry.getValue(data.id) == null) {
data.registry.setValue(
data.id,
initState
.map(
(values) => DynamicValuesFactory.create(values),
)
.toList(),
);
}
return _DynamicWidget(
data: JsonWidgetData.fromDynamic(map, registry: data.registry)!,
childTemplate: childTemplate,
childBuilder: childBuilder,
key: key,
);
}