📘 WIDGET_USAGE.md
This document provides examples of how to use the available form
widgets provided by the reusable_editor
package.
✅ AppCheckbox – Checkbox with label and validation
final agreeCubit = FieldCubit<bool>(validator: RequiredTrueValidator());
: agreeCubit, label: 'Agree to Terms'); AppCheckbox(cubit
✅ AppDatePicker – Date selection field
final dateCubit = FieldCubit<DateTime>(validator: RequiredDateValidator());
: dateCubit); AppDatePicker(cubit
✅ AppDropdown – Custom dropdown field
enum Status { active, inactive }
final statusCubit = FieldCubit<Status>(validator: RequiredFieldValidator<Status>());
<Status>(cubit: statusCubit, items: Status.values); AppDropdown
✅ AppFilePicker – File selection widget
final fileCubit = FieldCubit<File>(validator: RequiredFieldValidator<File>());
: fileCubit); AppFilePicker(cubit
✅ AppRadioGroup – Radio button group
final genderCubit = FieldCubit<String>(validator: RequiredStringValidator());
<String>(cubit: genderCubit, options: ['Male', 'Female']); AppRadioGroup
✅ AppRangeSlider – Range slider input
final rangeCubit = FieldCubit<RangeValues>();
: rangeCubit, min: 0, max: 100); AppRangeSlider(cubit
✅ AppSlider – Slider input
final volumeCubit = FieldCubit<double>(initialValue: 50);
: volumeCubit, min: 0, max: 100); AppSlider(cubit
✅ AppSwitch – Toggle switch
final toggleCubit = ToggleCubit(initialValue: false);
: toggleCubit); AppSwitch(cubit
✅ AppTextField – Text input field
final nameCubit = FieldCubit<String>(validator: RequiredStringValidator());
: nameCubit); AppTextField(cubit
✅ AppTimePicker – Time selection field
final timeCubit = FieldCubit<TimeOfDay>(validator: RequiredFieldValidator<TimeOfDay>());
: timeCubit); AppTimePicker(cubit