๐งพ FIELD_TYPE_USAGE.md
This document provides examples of how to use
    FieldCubit<T> with different Dart data types in
    the reusable_editor package.
โ
 FieldCubit โ Text
    (Required Input) 
    final nameFieldCubit = FieldCubit<String>(
  validator: RequiredStringValidator(),
);
nameFieldCubit.update('John Doe');
nameFieldCubit.validate(); // returns null if validโ
 FieldCubit โ Integer
    (e.g., Age) 
    final ageFieldCubit = FieldCubit<int>(
  validator: MinValueValidator(min: 18),
);
ageFieldCubit.update(25);
ageFieldCubit.validate(); // โ
 returns nullโ
 FieldCubit
    โ Floating point (e.g., Price) 
    final priceFieldCubit = FieldCubit<double>(
  validator: MinValueValidator(min: 0.0),
);
priceFieldCubit.update(99.99);โ
 FieldCubit โ Date
    selection 
    final dateFieldCubit = FieldCubit<DateTime>(
  validator: RequiredDateValidator(),
);
dateFieldCubit.update(DateTime.now());โ
 FieldCubit โ
    Toggle, Checkbox, etc. 
    final agreeFieldCubit = FieldCubit<bool>(
  validator: RequiredTrueValidator(), // Must be true
);
agreeFieldCubit.update(true); // โ
โ
    FieldCubit<List> โ Multi-select 
    final tagsFieldCubit = FieldCubit<List<String>>(
  validator: RequiredListValidator(),
);
tagsFieldCubit.update(['flutter', 'dart']);โ
 FieldCubit โ
    Dropdown/select input 
    enum Gender { male, female, other }
final genderFieldCubit = FieldCubit<Gender>(
  validator: RequiredFieldValidator<Gender>(),
);
genderFieldCubit.update(Gender.male);โ UI Integration Example โ Text Field
BlocBuilder<FieldCubit<String>, FieldState<String>>(
  bloc: nameFieldCubit,
  builder: (_, state) => TextFormField(
    initialValue: state.value ?? '',
    onChanged: nameFieldCubit.update,
    decoration: InputDecoration(
      labelText: 'Name',
      errorText: state.errorText,
    ),
  ),
);