buildViewStateWidget function
Widget
buildViewStateWidget(
- BaseViewState viewState,
- Function idleWidget, {
- ViewStateWidgetBuilder? emptyWidgetBuilder,
- Widget? busyWidget,
- ViewStateWidgetBuilder? errorWidgetBuilder,
- Widget? errorDataWidget,
- bool showErrorWidget = true,
- bool showEmptyWidget = true,
- bool showBusyWidget = true,
Implementation
Widget buildViewStateWidget(
BaseViewState viewState,
Function idleWidget, {ViewStateWidgetBuilder? emptyWidgetBuilder,
Widget? busyWidget,
ViewStateWidgetBuilder? errorWidgetBuilder,
Widget? errorDataWidget,
bool showErrorWidget = true,
bool showEmptyWidget = true,
bool showBusyWidget = true
}){
if(viewState.isIdle){
return idleWidget();
}else if(viewState.isError && viewState.httpError?.httpErrorType == HttpErrorType.EmptyDataError){
if (showEmptyWidget) {
if(emptyWidgetBuilder != null){
return emptyWidgetBuilder.call(viewState);
}else{
return emptyWidget.call(viewState);
}
} else{
return idleWidget();
}
}else if(viewState.isError){
if (showErrorWidget) {
if(errorDataWidget != null){
return errorWidgetBuilder!.call(viewState);
}else {
return errorWidget.call(viewState);
}
} else{
return idleWidget();
}
}else if (viewState.isBusy) {
if (showBusyWidget) {
return busyWidget??pageLoading;
}else{
return idleWidget();
}
} else{
return Container();
}
}