getWidget method

Widget getWidget({
  1. required Widget onData(
    1. Document?
    ),
  2. required Widget onError(
    1. String
    ),
  3. required Widget onLoading(),
})

Implementation

Widget getWidget({
  required Widget Function(Document?) onData,
  required Widget Function(String) onError,
  required Widget Function() onLoading,
}) {
  return FutureBuilder<DocumentSnapshot>(
      future: get(),
      builder: (context, AsyncSnapshot<DocumentSnapshot> snapshot) {
        if (snapshot.hasData) {
          if (snapshot.data!.success) {
            return onData(snapshot.data!.doc);
          } else {
            return onError(snapshot.data!.reason!);
          }
        }
        return onLoading();
      });
}