OptimizedSearchField constructor

const OptimizedSearchField({
  1. required void onChanged(
    1. String text
    )?,
  2. required String? labelText,
  3. required List<String> dropDownList,
  4. required Widget fieldSuffixIcon({
    1. required bool menuOpened,
    2. required VoidCallback onCloseIconTap,
    3. required VoidCallback onlyCloseMenu,
    })?,
  5. ButtonStyle? itemStyle,
  6. EdgeInsets listPadding = const EdgeInsets.symmetric(vertical: 16),
  7. double? itemsSpace,
  8. double menuMaxHeight = 400,
  9. EdgeInsets menuMargin = const EdgeInsets.only(top: 4, bottom: 8),
  10. BoxDecoration? menuDecoration,
  11. Clip listClipBehavior = Clip.hardEdge,
  12. Key? key,
  13. TextStyle? itemTextStyle,
  14. Key? textFieldKey,
  15. bool? showErrorText,
  16. String? errorText,
  17. TextEditingController? controller,
  18. FocusNode? focusNode,
  19. String? description,
  20. bool? isRequired,
  21. Widget customTextField({
    1. required TextEditingController controller,
    2. required FocusNode focusNode,
    3. required GlobalKey<State<StatefulWidget>> key,
    4. required void onChanged(
      1. String
      )?,
    5. required void onSubmitted(
      1. String
      )?,
    6. required Widget? suffixIcon,
    7. required Key? textFieldKey,
    })?,
  22. InputDecoration? fieldDecoration,
  23. bool usePrototype = true,
  24. List<TextInputFormatter>? fieldInputFormatters,
  25. FutureOr<Iterable<String>> optionsBuilder(
    1. TextEditingValue
    )?,
  26. TextStyle? labelTextStyle,
  27. OptionsViewOpenDirection optionsViewOpenDirection = OptionsViewOpenDirection.down,
  28. TextEditingValue? initValue,
  29. Widget listItem({
    1. required int index,
    2. required bool isEnabled,
    3. required Key? key,
    4. required void onPressed(),
    5. required String value,
    })?,
  30. Key? listKey,
  31. Key? listItemKey,
  32. double? listCacheExtent,
  33. bool listAddSemanticIndexes = true,
  34. ScrollController? listController,
  35. String? listRestorationId,
  36. int? listSemanticChildCount,
  37. DragStartBehavior listDragStartBehavior = DragStartBehavior.start,
  38. ScrollPhysics? listPhysics,
  39. bool? listPrimary,
  40. Key? fieldIconKey,
  41. Widget menuList({
    1. required Widget item(
      1. int index
      ),
    2. required int length,
    })?,
  42. bool useFindChildIndexCallback = true,
})

Implementation

const OptimizedSearchField({
  required this.onChanged,
  required this.labelText,
  required this.dropDownList,
  required this.fieldSuffixIcon,
  this.itemStyle,
  this.listPadding = const EdgeInsets.symmetric(vertical: 16),
  this.itemsSpace,
  this.menuMaxHeight = 400,
  this.menuMargin = const EdgeInsets.only(top: 4, bottom: 8),
  this.menuDecoration,
  this.listClipBehavior = Clip.hardEdge,
  super.key,
  this.itemTextStyle,
  this.textFieldKey,
  this.showErrorText,
  this.errorText,
  this.controller,
  this.focusNode,
  this.description,
  this.isRequired,
  this.customTextField,
  this.fieldDecoration,
  this.usePrototype = true,
  this.fieldInputFormatters,
  this.optionsBuilder,
  this.labelTextStyle,
  this.optionsViewOpenDirection = OptionsViewOpenDirection.down,
  this.initValue,
  this.listItem,
  this.listKey,
  this.listItemKey,
  this.listCacheExtent,
  this.listAddSemanticIndexes = true,
  this.listController,
  this.listRestorationId,
  this.listSemanticChildCount,
  this.listDragStartBehavior = DragStartBehavior.start,
  this.listPhysics,
  this.listPrimary,
  this.fieldIconKey,
  this.menuList,
  this.useFindChildIndexCallback = true,
});