FormeSearchable<T extends Object>.custom constructor

FormeSearchable<T extends Object>.custom({
  1. required String name,
  2. required FormeSearchableQuery<T> query,
  3. int? maximum,
  4. List<T> onMaximumExceed(
    1. List<T> value,
    2. int maximum
    )?,
  5. Duration? debounce,
  6. List<T>? initialValue,
  7. FormeSearchableQueryFilter? queryFilter,
  8. bool readOnly = false,
  9. dynamic comparator,
  10. bool enabled = true,
  11. int? order,
  12. FormeFieldDecorator<List<T>>? decorator,
  13. FormeFieldStatusChanged<List<T>>? onStatusChanged,
  14. dynamic onInitialed,
  15. FormeFieldSetter<List<T>>? onSaved,
  16. bool quietlyValidate = false,
  17. Duration? asyncValidatorDebounce,
  18. FormeValidator<List<T>>? validator,
  19. FormeAsyncValidator<List<T>>? asyncValidator,
  20. AutovalidateMode? autovalidateMode,
  21. bool registrable = true,
  22. FormeFieldValidationFilter<List<T>>? validationFilter,
  23. bool requestFocusOnUserInteraction = true,
  24. required WidgetBuilder builder,
})

Implementation

factory FormeSearchable.custom({
  required String name,
  required FormeSearchableQuery<T> query,
  int? maximum,
  List<T> Function(List<T> value, int maximum)? onMaximumExceed,
  Duration? debounce,
  List<T>? initialValue,
  FormeSearchableQueryFilter? queryFilter,
  bool readOnly = false,
  FormeValueComparator<List<T>>? comparator,
  bool enabled = true,
  int? order,
  FormeFieldDecorator<List<T>>? decorator,
  FormeFieldStatusChanged<List<T>>? onStatusChanged,
  FormeFieldInitialed<List<T>>? onInitialed,
  FormeFieldSetter<List<T>>? onSaved,
  bool quietlyValidate = false,
  Duration? asyncValidatorDebounce,
  FormeValidator<List<T>>? validator,
  FormeAsyncValidator<List<T>>? asyncValidator,
  AutovalidateMode? autovalidateMode,
  bool registrable = true,
  FormeFieldValidationFilter<List<T>>? validationFilter,
  bool requestFocusOnUserInteraction = true,
  required WidgetBuilder builder,
}) {
  return FormeSearchable<T>._(
    readOnly: readOnly,
    comparator: comparator,
    enabled: enabled,
    order: order,
    decorator: decorator,
    onStatusChanged: onStatusChanged,
    onInitialed: onInitialed,
    onSaved: onSaved,
    quietlyValidate: quietlyValidate,
    asyncValidatorDebounce: asyncValidatorDebounce,
    validator: validator,
    asyncValidator: asyncValidator,
    autovalidateMode: autovalidateMode,
    registrable: registrable,
    validationFilter: validationFilter,
    requestFocusOnUserInteraction: requestFocusOnUserInteraction,
    queryFilter: queryFilter,
    name: name,
    query: query,
    debounce: debounce ?? const Duration(milliseconds: 500),
    child: Builder(
      builder: (context) {
        return builder(context);
      },
    ),
    maximum: maximum,
    onMaximumExceed: onMaximumExceed,
    initialValue: initialValue ?? const [],
  );
}