build method
Implementation
@override
Future<List<T>> build({String? uid}) async {
state = const AsyncValue.loading();
if (uid == null) {
var items = await AsyncValue.guard(() => getAllItems());
state = items.when(
data: (data) => AsyncValue.data(data),
loading: () => const AsyncValue.loading(),
error: (error, stackTrace) => AsyncValue.error(error, stackTrace),
);
} else {
var item = await AsyncValue.guard(() => getItemByUid(uid));
state = item.when(
data: (data) =>
data != null ? AsyncValue.data([data]) : const AsyncValue.data([]),
loading: () => const AsyncValue.loading(),
error: (error, stackTrace) => AsyncValue.error(error, stackTrace),
);
}
// AsyncValue item = await AsyncValue.guard(() => getItemByUid(uid));
return await future;
}