TypeAheadFormField<T> constructor

TypeAheadFormField<T>({Key key, String initialValue, bool getImmediateSuggestions: false bool autovalidate: false FormFieldSetter<String> onSaved, FormFieldValidator<String> validator, ErrorBuilder errorBuilder, WidgetBuilder noItemsFoundBuilder, WidgetBuilder loadingBuilder, Duration debounceDuration: const Duration(milliseconds: 300), SuggestionsBoxDecoration suggestionsBoxDecoration: const SuggestionsBoxDecoration(), SuggestionsBoxController suggestionsBoxController, @required SuggestionSelectionCallback<T> onSuggestionSelected, @required ItemBuilder<T> itemBuilder, @required SuggestionsCallback<T> suggestionsCallback, double suggestionsBoxVerticalOffset: 5.0, TextFieldConfiguration textFieldConfiguration: const TextFieldConfiguration(), AnimationTransitionBuilder transitionBuilder, Duration animationDuration: const Duration(milliseconds: 500), double animationStart: 0.25, AxisDirection direction: AxisDirection.down, bool hideOnLoading: false bool hideOnEmpty: false bool hideOnError: false bool hideSuggestionsOnKeyboardHide: true bool keepSuggestionsOnLoading: true bool keepSuggestionsOnSuggestionSelected: false bool autoFlipDirection: false })

Creates a TypeAheadFormField

Implementation

TypeAheadFormField(
    {Key key,
    String initialValue,
    bool getImmediateSuggestions: false,
    bool autovalidate: false,
    FormFieldSetter<String> onSaved,
    FormFieldValidator<String> validator,
    ErrorBuilder errorBuilder,
    WidgetBuilder noItemsFoundBuilder,
    WidgetBuilder loadingBuilder,
    Duration debounceDuration: const Duration(milliseconds: 300),
    SuggestionsBoxDecoration suggestionsBoxDecoration:
        const SuggestionsBoxDecoration(),
    SuggestionsBoxController suggestionsBoxController,
    @required SuggestionSelectionCallback<T> onSuggestionSelected,
    @required ItemBuilder<T> itemBuilder,
    @required SuggestionsCallback<T> suggestionsCallback,
    double suggestionsBoxVerticalOffset: 5.0,
    this.textFieldConfiguration: const TextFieldConfiguration(),
    AnimationTransitionBuilder transitionBuilder,
    Duration animationDuration: const Duration(milliseconds: 500),
    double animationStart: 0.25,
    AxisDirection direction: AxisDirection.down,
    bool hideOnLoading: false,
    bool hideOnEmpty: false,
    bool hideOnError: false,
    bool hideSuggestionsOnKeyboardHide: true,
    bool keepSuggestionsOnLoading: true,
    bool keepSuggestionsOnSuggestionSelected: false,
    bool autoFlipDirection: false})
    : assert(
          initialValue == null || textFieldConfiguration.controller == null),
      super(
          key: key,
          onSaved: onSaved,
          validator: validator,
          autovalidate: autovalidate,
          initialValue: textFieldConfiguration.controller != null
              ? textFieldConfiguration.controller.text
              : (initialValue ?? ''),
          builder: (FormFieldState<String> field) {
            final _TypeAheadFormFieldState state = field;

            return TypeAheadField(
              getImmediateSuggestions: getImmediateSuggestions,
              transitionBuilder: transitionBuilder,
              errorBuilder: errorBuilder,
              noItemsFoundBuilder: noItemsFoundBuilder,
              loadingBuilder: loadingBuilder,
              debounceDuration: debounceDuration,
              suggestionsBoxDecoration: suggestionsBoxDecoration,
              suggestionsBoxController: suggestionsBoxController,
              textFieldConfiguration: textFieldConfiguration.copyWith(
                decoration: textFieldConfiguration.decoration
                    .copyWith(errorText: state.errorText),
                onChanged: (text) {
                  state.didChange(text);
                  textFieldConfiguration.onChanged(text);
                },
                controller: state._effectiveController,
              ),
              suggestionsBoxVerticalOffset: suggestionsBoxVerticalOffset,
              onSuggestionSelected: onSuggestionSelected,
              itemBuilder: itemBuilder,
              suggestionsCallback: suggestionsCallback,
              animationStart: animationStart,
              animationDuration: animationDuration,
              direction: direction,
              hideOnLoading: hideOnLoading,
              hideOnEmpty: hideOnEmpty,
              hideOnError: hideOnError,
              hideSuggestionsOnKeyboardHide: hideSuggestionsOnKeyboardHide,
              keepSuggestionsOnLoading: keepSuggestionsOnLoading,
              keepSuggestionsOnSuggestionSelected:
                  keepSuggestionsOnSuggestionSelected,
              autoFlipDirection: autoFlipDirection,
            );
          });