WIP state management loadable errorbar

This commit is contained in:
2024-04-23 14:48:12 +02:00
parent 7129c0dee8
commit 450c26b187
4 changed files with 73 additions and 21 deletions

View File

@ -14,14 +14,20 @@ class LoadableState<TState> {
LoadableState<TState> done(TState state) =>
LoadableState<TState>(loadingState: LoadingState.none, data: state);
LoadableState<TState> error(TState state) =>
LoadableState<TState>(loadingState: LoadingState.none, data: state);
LoadableState<TState> error({TState? state}) =>
LoadableState<TState>(loadingState: LoadingState.failed, data: state);
bool isBackgroundLoading() =>
loadingState == LoadingState.loading && data != null;
bool hasError() =>
loadingState == LoadingState.failed;
bool hasStateData() =>
data != null;
bool errorBarVisible() =>
hasError() && hasStateData();
}
enum LoadingState {