Skip to content

Commit aee5999

Browse files
committed
More type safety tweaks.
1 parent 49f002a commit aee5999

7 files changed

+12
-18
lines changed

lib/src/fields/form_builder_checkbox_group.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import 'package:flutter_form_builder/flutter_form_builder.dart';
44
import 'package:flutter_form_builder/src/widgets/grouped_checkbox.dart';
55

66
class FormBuilderCheckboxGroup<T> extends FormBuilderField<List<T>> {
7-
final List<FormBuilderFieldOption> options;
7+
final List<FormBuilderFieldOption<T>> options;
88
final Color activeColor;
99
final Color checkColor;
1010
final Color focusColor;
@@ -80,7 +80,7 @@ class FormBuilderCheckboxGroup<T> extends FormBuilderField<List<T>> {
8080
enabled: !state.readOnly,
8181
errorText: decoration?.errorText ?? state.errorText,
8282
),
83-
child: GroupedCheckbox(
83+
child: GroupedCheckbox<T>(
8484
orientation: orientation,
8585
value: state.value,
8686
options: options,

lib/src/fields/form_builder_chips_input.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ class FormBuilderChipsInput<T> extends FormBuilderField<List<T>> {
7171
builder: (FormFieldState<List<T>> field) {
7272
final _FormBuilderChipsInputState<T> state = field;
7373

74-
return ChipsInput(
74+
return ChipsInput<T>(
7575
key: ObjectKey(state.value),
7676
initialValue: field.value,
7777
enabled: !state.readOnly,

lib/src/fields/form_builder_choice_chips.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import 'package:flutter_form_builder/flutter_form_builder.dart';
44

55
class FormBuilderChoiceChip<T> extends FormBuilderField<T> {
66
/// The list of items the user can select.
7-
final List<FormBuilderFieldOption> options;
7+
final List<FormBuilderFieldOption<T>> options;
88

99
// FilterChip Settings
1010
/// Elevation to be applied on the chip relative to its parent.

lib/src/fields/form_builder_dropdown.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -294,7 +294,7 @@ class FormBuilderDropdown<T> extends FormBuilderField<T> {
294294
},
295295
);
296296

297-
static void _changeValue<T>(_FormBuilderDropdownState<T> state, value) {
297+
static void _changeValue<T>(_FormBuilderDropdownState<T> state, T value) {
298298
state.requestFocus();
299299
state.didChange(value);
300300
}

lib/src/fields/form_builder_image_picker.dart

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -176,10 +176,7 @@ class FormBuilderImagePicker extends FormBuilderField<List<dynamic>> {
176176
galleryLabel: galleryLabel,
177177
onImageSelected: (image) {
178178
state.requestFocus();
179-
field.didChange([
180-
...field.value ?? [],
181-
image,
182-
]);
179+
field.didChange([...field.value, image]);
183180
Navigator.pop(state.context);
184181
},
185182
onImage: (image) {
@@ -205,11 +202,8 @@ class FormBuilderImagePicker extends FormBuilderField<List<dynamic>> {
205202

206203
class _FormBuilderImagePickerState
207204
extends FormBuilderFieldState<FormBuilderImagePicker, List<dynamic>> {
208-
bool get hasMaxImages {
209-
if (widget.maxImages == null || value == null) {
210-
return false;
211-
} else {
212-
return value.length >= widget.maxImages;
213-
}
214-
}
205+
bool get hasMaxImages =>
206+
widget.maxImages != null &&
207+
value != null &&
208+
value.length >= widget.maxImages;
215209
}

lib/src/fields/form_builder_radio_group.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ class FormBuilderRadioGroup<T> extends FormBuilderField<T> {
7777
enabled: !state.readOnly,
7878
errorText: decoration?.errorText ?? state.errorText,
7979
),
80-
child: GroupedRadio(
80+
child: GroupedRadio<T>(
8181
orientation: orientation,
8282
value: state.value,
8383
options: options,

lib/src/fields/form_builder_segmented_control.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ class FormBuilderSegmentedControl<T> extends FormBuilderField<T> {
100100
},
101101
padding: padding,
102102
unselectedColor: unselectedColor,
103-
onValueChanged: (T value) {
103+
onValueChanged: (value) {
104104
state.requestFocus();
105105
if (state.readOnly) {
106106
field.reset();

0 commit comments

Comments
 (0)