parseDateTimeOptional method

DateTime? parseDateTimeOptional(
  1. String key
)

Parses an optional SQLite value (epoch integer or ISO-8601 string) into a Dart DateTime.

Implementation

DateTime? parseDateTimeOptional(String key) {
  return parseOptional<DateTime, Object>(key, (dbVal) {
    if (dbVal is int) {
      return DateTime.fromMillisecondsSinceEpoch(dbVal);
    }
    if (dbVal is String) {
      return DateTime.parse(dbVal);
    }
    throw StateError(
        'DB Type Mismatch: Expected int or String for "$key", got ${dbVal.runtimeType}.');
  });
}