updateFromWidget method
Implementation
void updateFromWidget(PickerPlusRangeDatePicker oldWidget, PickerPlusRangeDatePicker newWidget) {
if (oldWidget.initialPickerType != newWidget.initialPickerType) {
pickerType.value = newWidget.initialPickerType;
}
if (oldWidget.selectedRange != newWidget.selectedRange) {
if (newWidget.selectedRange == null) {
selectedStartDate.value = null;
selectedEndDate.value = null;
} else {
selectedStartDate.value =
DateUtils.dateOnly(newWidget.selectedRange!.start);
selectedEndDate.value =
DateUtils.dateOnly(newWidget.selectedRange!.end);
}
}
if (oldWidget.initialDate != newWidget.initialDate) {
final clampedInitialDate = PickerPlusDateUtilsX.clampDateToRange(
max: newWidget.maxDate,
min: newWidget.minDate,
date: DateTime.now(),
);
displayedDate.value =
DateUtils.dateOnly(newWidget.initialDate ?? clampedInitialDate);
}
}