own
library
Functions
-
defaultEasyEquals<T>()
→ EasyIsEqual<T>
-
Default implementation of EasyIsEqual that uses
==.
-
easyBottomSheetSelectOf<T>({required List<T> items, T? value, List<T>? values, ValueChanged<T?>? onChanged, ValueChanged<List<T>>? onChangedMany, bool multiSelect = false, String itemLabel(T)?, String? label, Widget? sheetTitle})
→ Widget
-
Creates a bottom sheet selector.
-
easyButtonGroupOf<T>({required List<T> items, T? value, List<T>? values, ValueChanged<T?>? onChanged, ValueChanged<List<T>>? onChangedMany, bool multiSelect = false, String itemLabel(T)?, String? label})
→ Widget
-
Creates a button group (similar to ChoiceChips).
-
easyCheckboxOf<T>({required List<T> items, T? value, List<T>? values, ValueChanged<T?>? onChanged, ValueChanged<List<T>>? onChangedMany, bool multiSelect = false, String itemLabel(T)?, String? label})
→ Widget
-
Creates a checkbox list.
-
easyChipsOf<T>({required List<T> items, T? value, List<T>? values, ValueChanged<T?>? onChanged, ValueChanged<List<T>>? onChangedMany, bool multiSelect = false, String itemLabel(T)?, String? label})
→ Widget
-
Creates a chip group.
-
easyDateFieldOf({required DateTime? value, required ValueChanged<DateTime?> onChanged, String itemLabel(DateTime)?, DateTime? firstDate, DateTime? lastDate, DateTime? initialDate, String? label})
→ Widget
-
Creates a date picker field.
-
easyDoubleFieldOf({required double? value, required ValueChanged<double?>? onChanged, String? hintText, String? label})
→ Widget
-
Creates a text field for double input.
-
easyDropdownOf<T>({required List<T> items, T? value, ValueChanged<T?>? onChanged, String itemLabel(T)?, String? label, String? placeholder})
→ Widget
-
Creates a dropdown menu.
-
easyFilterBarOf({required List<Widget> filters, Widget? leading, Widget? trailing, EdgeInsetsGeometry padding = const EdgeInsets.all(12), double spacing = 12, double runSpacing = 8, Color? backgroundColor, BorderRadius borderRadius = const BorderRadius.all(Radius.circular(16)), String? label})
→ Widget
-
Creates a filter bar.
-
easyGridOf<T>({required List<T> items, T? value, List<T>? values, ValueChanged<T?>? onChanged, ValueChanged<List<T>>? onChangedMany, bool multiSelect = false, String itemLabel(T)?, int crossAxisCount = 2, double mainAxisSpacing = 12, double crossAxisSpacing = 12, double childAspectRatio = 1, String? label})
→ Widget
-
Creates a grid view.
-
easyIntFieldOf({required int? value, required ValueChanged<int?>? onChanged, String? hintText, String? label})
→ Widget
-
Creates a text field for integer input.
-
easyListOf<T>({required List<T> items, T? value, ValueChanged<T?>? onChanged, bool multiSelect = false, List<T>? values, ValueChanged<List<T>>? onChangedMany, String itemLabel(T)?, bool divided = true, bool dense = false, String? label})
→ Widget
-
Creates a list view.
-
Creates a popup menu.
-
Creates a pagination control.
-
Creates a popup selector.
-
easyRadioOf<T>({required List<T> items, T? value, ValueChanged<T?>? onChanged, String itemLabel(T)?, String? label})
→ Widget
-
Creates a radio button group.
-
easyResponsiveScaffoldOf({required Widget body, PreferredSizeWidget? appBar, Widget? navigationRail, Widget? drawer, Widget? bottomNavigationBar, EdgeInsetsGeometry? bodyPadding, double breakpoint = 900})
→ Widget
-
Creates a responsive scaffold.
-
easySearchableGridOf<T>({required List<T> items, required String itemLabel(T), required EasyItemBuilder<T> itemBuilder, T? value, List<T>? values, ValueChanged<T?>? onChanged, ValueChanged<List<T>>? onChangedMany, bool multiSelect = false, String hintText = 'Search...', Widget? emptyState, int crossAxisCount = 2, double mainAxisSpacing = 12, double crossAxisSpacing = 12, double childAspectRatio = 1, String? label})
→ Widget
-
Creates a searchable grid.
-
easySearchableListOf<T>({required List<T> items, required String itemLabel(T), T? value, List<T>? values, ValueChanged<T?>? onChanged, ValueChanged<List<T>>? onChangedMany, bool multiSelect = false, String hintText = 'Search...', Widget? emptyState, String? label})
→ Widget
-
Creates a searchable list.
-
easySearchOf<T>({required List<T> items, required String itemLabel(T), void onSelected(T selectedItem)?, void onSelectedMany(List<T> selectedItems)?, bool multiSelect = false, SearchRemoteResolver<T>? remoteSearch, String hintText = 'Search...', String? label})
→ Widget
-
Creates a search field with recommendations.
-
easySegmentedOf<T>({required List<T> items, T? value, ValueChanged<T?>? onChanged, bool multiSelect = false, List<T>? values, String itemLabel(T)?, String? label})
→ Widget
-
Creates a segmented control.
-
easyStepperOf<T>({required List<EasyStepConfig<T>> steps, required T? currentStep, ValueChanged<T>? onStepChanged, Axis axis = Axis.horizontal, bool allowStepTap = true, String? label})
→ Widget
-
Creates a stepper.
-
easySwitchOf<T>({required List<T> items, T? value, List<T>? values, ValueChanged<T?>? onChanged, ValueChanged<List<T>>? onChangedMany, bool multiSelect = false, String itemLabel(T)?, String? label})
→ Widget
-
Creates a switch list.
-
easyTableOf<T>({required List<T> items, required List<DataColumn> columns, required EasyTableCellBuilder<T> cellBuilder, T? value, ValueChanged<T?>? onChanged, EasyIsEqual<T>? isEqual, bool multiSelect = false, List<T>? selectedValues, ValueChanged<List<T>>? onChangedMany, bool showCheckboxColumn = true, double? dataRowHeight, double? headingRowHeight, String? label})
→ Widget
-
Creates a table.
-
easyTagInputOf({required List<String> tags, required ValueChanged<List<String>> onChanged, String hintText = 'Add tag and press Enter', bool allowDuplicates = false, int? maxTags, String? label})
→ Widget
-
Creates a tag input field.
-
easyTextFieldOf<T>({required T? value, required ValueChanged<T?>? onChanged, String itemLabel(T)?, String? label, T? parser(String text)?, String? hintText, TextInputType? keyboardType, bool obscureText = false})
→ Widget
-
Creates a text field bound to a value.
-
easyTextFormFieldOf<T>({required EasyFormController form, required String name, String itemLabel(T)?, String? label, T? parser(String text)?, String? hintText, TextInputType? keyboardType, bool obscureText = false})
→ Widget
-
Creates a form text field.
Typedefs
-
DateFormatter
= String Function(DateTime value)
-
-
EasyDecorationBuilder
= BoxDecoration Function(bool isExpanded, bool hasValue)
-
-
EasyFilePickHandler<T>
= FutureOr<List<T>> Function(EasyFileCategory category, bool allowMultiple)
-
-
EasyIconBuilder
= Widget Function(bool isExpanded)
-
-
EasyImagePickHandler<T>
= FutureOr<List<T>> Function(EasyImageSource source, bool allowMultiple)
-
-
EasyIsEqual<T>
= bool Function(T? a, T? b)
-
Equality callback used by Easy widgets to compare values of type
T.
-
EasyItemBuilder<T>
= Widget Function(BuildContext context, T item, bool isSelected)
-
Signature for builders that turn an
item into a widget.
-
EasyLabelBuilder<T>
= String Function(T item)
-
Callback that converts a value of type
T into a user-facing label.
-
EasyMultiBuilder<T>
= Widget Function(BuildContext context, List<T> values, ValueChanged<List<T>> onChanged)
-
-
EasySingleBuilder<T>
= Widget Function(BuildContext context, T? value, ValueChanged<T?> onChanged)
-
-
EasyStyleBuilder<T>
= TextStyle? Function(T? value, bool isExpanded)
-
-
EasyTableCellBuilder<T>
= Widget Function(BuildContext context, T row, int columnIndex, bool selected)
-
-
EasyTagLabelBuilder<T>
= String Function(T value)
-
-
EasyTagParser<T>
= T? Function(String text)
-
-
EasyValidator<T>
= String? Function(T? value)
-
Signature for validating a value of type
T. Return null when valid.
-
EasyValueParser<T>
= T? Function(String text)
-
-
SearchRemoteResolver<T>
= Future<List<T>> Function(String query)
-
Optional remote search callback used for server-side searching.