textBuilder static method

FAutocomplete<String> textBuilder({
  1. required FutureOr<Iterable<String>> filter(
    1. String query
    ),
  2. required FAutocompleteContentBuilder<String> contentBuilder,
  3. FAutocompleteControl control = const .managed(),
  4. FPopoverControl popoverControl = const .managed(),
  5. FTextFieldSizeVariant size = .md,
  6. FAutocompleteStyleDelta style = const .context(),
  7. Widget? label,
  8. String? hint,
  9. Widget? description,
  10. TextMagnifierConfiguration? magnifierConfiguration,
  11. Object groupId = EditableText,
  12. FocusNode? focusNode,
  13. TextInputType? keyboardType,
  14. TextInputAction? textInputAction,
  15. TextCapitalization textCapitalization = .none,
  16. TextAlign textAlign = .start,
  17. TextAlignVertical? textAlignVertical,
  18. TextDirection? textDirection,
  19. VoidCallback? contentOnTapHide,
  20. bool autofocus = false,
  21. String obscuringCharacter = '•',
  22. bool obscureText = false,
  23. bool autocorrect = true,
  24. SmartDashesType? smartDashesType,
  25. SmartQuotesType? smartQuotesType,
  26. bool enableSuggestions = true,
  27. int? minLines,
  28. int? maxLines = 1,
  29. bool expands = false,
  30. bool readOnly = false,
  31. bool? showCursor,
  32. int? maxLength,
  33. MaxLengthEnforcement? maxLengthEnforcement,
  34. bool onTapAlwaysCalled = false,
  35. VoidCallback? onEditingComplete,
  36. ValueChanged<String>? onSubmit,
  37. AppPrivateCommandCallback? onAppPrivateCommand,
  38. List<TextInputFormatter>? inputFormatters,
  39. bool enabled = true,
  40. bool? ignorePointers,
  41. bool enableInteractiveSelection = true,
  42. TextSelectionControls? selectionControls,
  43. DragStartBehavior dragStartBehavior = .start,
  44. MouseCursor? mouseCursor,
  45. FTextFieldCounterBuilder? counterBuilder,
  46. ScrollPhysics? scrollPhysics,
  47. ScrollController? scrollController,
  48. Iterable<String>? autofillHints,
  49. String? restorationId,
  50. bool stylusHandwritingEnabled = true,
  51. bool enableIMEPersonalizedLearning = true,
  52. ContentInsertionConfiguration? contentInsertionConfiguration,
  53. EditableTextContextMenuBuilder? contextMenuBuilder = FTextField.defaultContextMenuBuilder,
  54. bool canRequestFocus = true,
  55. UndoHistoryController? undoController,
  56. SpellCheckConfiguration? spellCheckConfiguration,
  57. FFieldIconBuilder<FAutocompleteStyle>? prefixBuilder,
  58. FFieldIconBuilder<FAutocompleteStyle>? suffixBuilder,
  59. bool clearable(
    1. TextEditingValue value
    ) = FTextField.defaultClearable,
  60. FAutocompletePopoverBuilder popoverBuilder = FPopover.defaultPopoverBuilder,
  61. FormFieldSetter<String>? onSaved,
  62. VoidCallback? onReset,
  63. FormFieldValidator<String>? validator,
  64. AutovalidateMode autovalidateMode = .disabled,
  65. String? forceErrorText,
  66. Widget errorBuilder(
    1. BuildContext context,
    2. String message
    ) = FFormFieldProperties.defaultErrorBuilder,
  67. AlignmentGeometry contentAnchor = .topStart,
  68. AlignmentGeometry fieldAnchor = .bottomStart,
  69. FPortalConstraints contentConstraints = const FAutoWidthPortalConstraints(maxHeight: 300),
  70. FPortalSpacing contentSpacing = const .spacing(4),
  71. FPortalOverflow contentOverflow = .flip,
  72. Offset contentOffset = .zero,
  73. bool contentUseViewPadding = true,
  74. bool contentUseViewInsets = true,
  75. FPopoverHideRegion contentHideRegion = .excludeChild,
  76. Object? contentGroupId,
  77. bool contentCutout = true,
  78. void contentCutoutBuilder(
    1. Path path,
    2. Rect bounds
    ) = FModalBarrier.defaultCutoutBuilder,
  79. bool autoHide = true,
  80. bool? retainFocus,
  81. FFieldBuilder<FAutocompleteStyle> builder = FTextField.defaultBuilder,
  82. bool rightArrowToComplete = false,
  83. ScrollController? contentScrollController,
  84. ScrollPhysics contentPhysics = const ClampingScrollPhysics(),
  85. FItemDivider contentDivider = .none,
  86. Widget contentEmptyBuilder(
    1. BuildContext context,
    2. FAutocompleteContentStyle style
    )? = defaultContentEmptyBuilder,
  87. Widget contentLoadingBuilder(
    1. BuildContext context,
    2. FAutocompleteContentStyle style
    )? = defaultContentLoadingBuilder,
  88. Widget contentErrorBuilder(
    1. BuildContext context,
    2. FAutocompleteContentStyle style,
    3. Object? error,
    4. StackTrace stackTrace,
    )? = defaultContentErrorBuilder,
  89. ValueChanged<String>? onItemPress,
  90. Key? key,
})

Creates a FAutocomplete for String suggestions that uses the given filter and contentBuilder, with identity format and parse.

Implementation

static FAutocomplete<String> textBuilder({
  required FutureOr<Iterable<String>> Function(String query) filter,
  required FAutocompleteContentBuilder<String> contentBuilder,
  FAutocompleteControl control = const .managed(),
  FPopoverControl popoverControl = const .managed(),
  FTextFieldSizeVariant size = .md,
  FAutocompleteStyleDelta style = const .context(),
  Widget? label,
  String? hint,
  Widget? description,
  TextMagnifierConfiguration? magnifierConfiguration,
  Object groupId = EditableText,
  FocusNode? focusNode,
  TextInputType? keyboardType,
  TextInputAction? textInputAction,
  TextCapitalization textCapitalization = .none,
  TextAlign textAlign = .start,
  TextAlignVertical? textAlignVertical,
  TextDirection? textDirection,
  VoidCallback? contentOnTapHide,
  bool autofocus = false,
  String obscuringCharacter = '•',
  bool obscureText = false,
  bool autocorrect = true,
  SmartDashesType? smartDashesType,
  SmartQuotesType? smartQuotesType,
  bool enableSuggestions = true,
  int? minLines,
  int? maxLines = 1,
  bool expands = false,
  bool readOnly = false,
  bool? showCursor,
  int? maxLength,
  MaxLengthEnforcement? maxLengthEnforcement,
  bool onTapAlwaysCalled = false,
  VoidCallback? onEditingComplete,
  ValueChanged<String>? onSubmit,
  AppPrivateCommandCallback? onAppPrivateCommand,
  List<TextInputFormatter>? inputFormatters,
  bool enabled = true,
  bool? ignorePointers,
  bool enableInteractiveSelection = true,
  TextSelectionControls? selectionControls,
  DragStartBehavior dragStartBehavior = .start,
  MouseCursor? mouseCursor,
  FTextFieldCounterBuilder? counterBuilder,
  ScrollPhysics? scrollPhysics,
  ScrollController? scrollController,
  Iterable<String>? autofillHints,
  String? restorationId,
  bool stylusHandwritingEnabled = true,
  bool enableIMEPersonalizedLearning = true,
  ContentInsertionConfiguration? contentInsertionConfiguration,
  EditableTextContextMenuBuilder? contextMenuBuilder = FTextField.defaultContextMenuBuilder,
  bool canRequestFocus = true,
  UndoHistoryController? undoController,
  SpellCheckConfiguration? spellCheckConfiguration,
  FFieldIconBuilder<FAutocompleteStyle>? prefixBuilder,
  FFieldIconBuilder<FAutocompleteStyle>? suffixBuilder,
  bool Function(TextEditingValue value) clearable = FTextField.defaultClearable,
  FAutocompletePopoverBuilder popoverBuilder = FPopover.defaultPopoverBuilder,
  FormFieldSetter<String>? onSaved,
  VoidCallback? onReset,
  FormFieldValidator<String>? validator,
  AutovalidateMode autovalidateMode = .disabled,
  String? forceErrorText,
  Widget Function(BuildContext context, String message) errorBuilder = FFormFieldProperties.defaultErrorBuilder,
  AlignmentGeometry contentAnchor = .topStart,
  AlignmentGeometry fieldAnchor = .bottomStart,
  FPortalConstraints contentConstraints = const FAutoWidthPortalConstraints(maxHeight: 300),
  FPortalSpacing contentSpacing = const .spacing(4),
  FPortalOverflow contentOverflow = .flip,
  Offset contentOffset = .zero,
  bool contentUseViewPadding = true,
  bool contentUseViewInsets = true,
  FPopoverHideRegion contentHideRegion = .excludeChild,
  Object? contentGroupId,
  bool contentCutout = true,
  void Function(Path path, Rect bounds) contentCutoutBuilder = FModalBarrier.defaultCutoutBuilder,
  bool autoHide = true,
  bool? retainFocus,
  FFieldBuilder<FAutocompleteStyle> builder = FTextField.defaultBuilder,
  bool rightArrowToComplete = false,
  ScrollController? contentScrollController,
  ScrollPhysics contentPhysics = const ClampingScrollPhysics(),
  FItemDivider contentDivider = .none,
  Widget Function(BuildContext context, FAutocompleteContentStyle style)? contentEmptyBuilder =
      defaultContentEmptyBuilder,
  Widget Function(BuildContext context, FAutocompleteContentStyle style)? contentLoadingBuilder =
      defaultContentLoadingBuilder,
  Widget Function(BuildContext context, FAutocompleteContentStyle style, Object? error, StackTrace stackTrace)?
      contentErrorBuilder =
      defaultContentErrorBuilder,
  ValueChanged<String>? onItemPress,
  Key? key,
}) => FAutocomplete<String>.builder(
  filter: filter,
  format: (suggestion) => suggestion,
  parse: (text) => text,
  contentBuilder: contentBuilder,
  control: control,
  popoverControl: popoverControl,
  size: size,
  style: style,
  label: label,
  hint: hint,
  description: description,
  magnifierConfiguration: magnifierConfiguration,
  groupId: groupId,
  focusNode: focusNode,
  keyboardType: keyboardType,
  textInputAction: textInputAction,
  textCapitalization: textCapitalization,
  textAlign: textAlign,
  textAlignVertical: textAlignVertical,
  textDirection: textDirection,
  contentOnTapHide: contentOnTapHide,
  autofocus: autofocus,
  obscuringCharacter: obscuringCharacter,
  obscureText: obscureText,
  autocorrect: autocorrect,
  smartDashesType: smartDashesType,
  smartQuotesType: smartQuotesType,
  enableSuggestions: enableSuggestions,
  minLines: minLines,
  maxLines: maxLines,
  expands: expands,
  readOnly: readOnly,
  showCursor: showCursor,
  maxLength: maxLength,
  maxLengthEnforcement: maxLengthEnforcement,
  onTapAlwaysCalled: onTapAlwaysCalled,
  onEditingComplete: onEditingComplete,
  onSubmit: onSubmit,
  onAppPrivateCommand: onAppPrivateCommand,
  inputFormatters: inputFormatters,
  enabled: enabled,
  ignorePointers: ignorePointers,
  enableInteractiveSelection: enableInteractiveSelection,
  selectionControls: selectionControls,
  dragStartBehavior: dragStartBehavior,
  mouseCursor: mouseCursor,
  counterBuilder: counterBuilder,
  scrollPhysics: scrollPhysics,
  scrollController: scrollController,
  autofillHints: autofillHints,
  restorationId: restorationId,
  stylusHandwritingEnabled: stylusHandwritingEnabled,
  enableIMEPersonalizedLearning: enableIMEPersonalizedLearning,
  contentInsertionConfiguration: contentInsertionConfiguration,
  contextMenuBuilder: contextMenuBuilder,
  canRequestFocus: canRequestFocus,
  undoController: undoController,
  spellCheckConfiguration: spellCheckConfiguration,
  prefixBuilder: prefixBuilder,
  suffixBuilder: suffixBuilder,
  clearable: clearable,
  popoverBuilder: popoverBuilder,
  onSaved: onSaved,
  onReset: onReset,
  validator: validator,
  autovalidateMode: autovalidateMode,
  forceErrorText: forceErrorText,
  errorBuilder: errorBuilder,
  contentAnchor: contentAnchor,
  fieldAnchor: fieldAnchor,
  contentConstraints: contentConstraints,
  contentSpacing: contentSpacing,
  contentOverflow: contentOverflow,
  contentOffset: contentOffset,
  contentUseViewPadding: contentUseViewPadding,
  contentUseViewInsets: contentUseViewInsets,
  contentHideRegion: contentHideRegion,
  contentGroupId: contentGroupId,
  contentCutout: contentCutout,
  contentCutoutBuilder: contentCutoutBuilder,
  autoHide: autoHide,
  retainFocus: retainFocus,
  builder: builder,
  rightArrowToComplete: rightArrowToComplete,
  contentScrollController: contentScrollController,
  contentPhysics: contentPhysics,
  contentDivider: contentDivider,
  contentEmptyBuilder: contentEmptyBuilder,
  contentLoadingBuilder: contentLoadingBuilder,
  contentErrorBuilder: contentErrorBuilder,
  onItemPress: onItemPress,
  key: key,
);