showSparkDatePicker<T> function

Future<T?> showSparkDatePicker<T>({
  1. required BuildContext context,
  2. double height = 260,
  3. DateTime? defaultDate,
  4. DateTime? maxDate,
  5. DateTime? minDate,
  6. double itemHeight = 40,
  7. DatePickerTheme theme = _defaultDatePickerTheme,
  8. DatePickerBehavior behavior = DatePickerBehavior.confirm,
  9. String? format,
  10. ShapeBorder shape = _defaultPickerShape,
})

open date or date time picker T is return data type, you can use String or DateTime

Implementation

Future<T?> showSparkDatePicker<T>({
  required BuildContext context,
  double height = 260,
  DateTime? defaultDate,
  DateTime? maxDate,
  DateTime? minDate,
  double itemHeight = 40,
  DatePickerTheme theme = _defaultDatePickerTheme,
  DatePickerBehavior behavior = DatePickerBehavior.confirm,

  /// [SparkDateFormat] format
  String? format,
  ShapeBorder shape = _defaultPickerShape,
}) {
  assert(T == String || T == DateTime, 'date picker must setup return type');
  return showSparkModalSheet<T>(
    context: context,
    shape: shape,
    builder: (_) => SparkDatePicker<T>(
      defaultDate: defaultDate,
      height: height,
      theme: theme,
      minDate: minDate,
      maxDate: maxDate,
      itemHeight: itemHeight,
      behavior: behavior,
      format: format ?? SparkDateFormat.yearMonthDayAndHourMinuteSecond,
      onChanged: (_value) {
        Navigator.of(_).pop(_value);
      },
    ),
  );
}