buildWidget static method
Implementation
static Widget buildWidget(UIComponent component, {
String? fontFamily,
Function(String, String)? callBack,
}) {
switch (component.type) {
case 'button':
return UIButton(
callback: callBack,
fontFamily: fontFamily,
componentData: component,
buttonClickHandler: (id) {
log('Button clicked with id: $id');
},
);
case 'text':
return UIText(
fontFamily: fontFamily,
componentData: component,
textClickHandler: (id) {
log('Text clicked with text: $id');
},
);
case 'image':
return UIImage(
componentData: component,
imageClickHandler: (id) {
log('Image clicked with id: $id');
},
);
case 'container':
return UIContainer(
componentData: component,
children: component.properties!.children!
.map(
(e) =>
buildWidget(
e,
fontFamily: fontFamily,
callBack: callBack,
),
)
.toList(),
containerClickHandler: (id) {
log('Container clicked with id: $id');
},
);
case 'swipe':
return UISwipe(
componentData: component,
callback: callBack,
);
case "countdown":
return UITimer(
data: component,
fontFamily: fontFamily,
);
default:
return const SizedBox.shrink();
}
}