title: The argument type 'Future<String?> Function(String?)' can't be assigned to the parameter type 'String? Function(String?)?'
body: <p>I am currently using <a href="https://pub.dev/packages/flutter_login" rel="nofollow noreferrer">flutter_login 3.1.0</a> in my application. During the process of user signing up, it is required that he assigns himself a username, the application is supposed to check whether the username that is typed in is taken or not from Firebase Firestore and display it to the user.</p>
  <pre><code>    @override
      Widget build(BuildContext context) {
          return FlutterLogin(
              // irrelevant code removed
              additionalSignupFields: [
                UserFormField(
                  keyName: 'username',
                  displayName: 'Username',
                  icon: const Icon(FontAwesomeIcons.at),
                  fieldValidator: (value) async {   // error 'Cant assign async function to function'
                    return await DatabaseService.validateUsername(value);
                  },
                ),
              ]
          )
      }
  </code></pre>
  <p>The function assigned to fieldValidator has to be <code>async</code> because getting data from firestore always returns a <code>Future</code>.</p>
  <p>People have told me to use FutureBuilder or StreamBuilder, I have tried and failed to achieve the functionality. It would great if code is provided rather than just an explanation</p>