run method
Implementation
@override
Future<T> run({bool useCache = true}) => switch (_store.value) {
LoadingData _ => _waitThenRun(),
ResponseData<T>(:final data) when _isSuccess(data) && useCache =>
Future.value(data),
_ => _run(),
};