futureOr<V> function
Widget
futureOr<V>(
- BuildContext context,
- FutureOr<
V> waitFor, - Widget builder(
- BuildContext context,
- V? resolved
- Widget spinner(
- BuildContext context
- String? key,
- bool allowNull = false,
// Given a record, will ensure that the data is loaded, and will optionally track changes if watch
is set
Implementation
//Widget resolve<V extends Entity>(
// BuildContext context,
// Record<V> record,
// Widget builder(BuildContext context, V resolved), {
// bool watch = false,
//}) {
// if (record == null) return builder(context, null);
// if (!record.isResolved) {
// return future<V>(context, waitFor: record.future, builder: (context, V data) {
// return watch
// ? observe(context, "record-${record.debugName}", (_) {
// return builder(context, record.value);
// })
// : builder(context, record.value);
// });
// } else {
// return watch
// ? observe(context, "record-${record.debugName}", (_) {
// return builder(context, record.value);
// })
// : builder(context, record.value);
// }
//}
//
//Widget resolveColumn<V extends Entity>(
// BuildContext context,
// Record<V> record,
// Iterable<Widget> builder(BuildContext context, V resolved),
//) {
// return future<V>(
// context,
// observerName: "record-${uncapitalize(V.toString())}-${record.id}",
// waitFor: record.future,
// builder: (context, V data) {
// return column([...builder(context, record.value)]);
// },
// );
//}
Widget futureOr<V>(
BuildContext context,
FutureOr<V> waitFor,
Widget builder(BuildContext context, V? resolved), {
Widget spinner(BuildContext context)?,
String? key,
bool allowNull = false,
}) {
return future<V>(
context,
waitFor: waitFor,
key: key,
allowNull: allowNull,
builder: builder,
spinner: spinner,
);
}