TripState.fromMap constructor

TripState.fromMap(
  1. JsonMap map
)

Implementation

factory TripState.fromMap(JsonMap map) {
  final startLoc = map['startLocation'];
  final lastLoc = map['lastLocation'];

  return TripState(
    tripId: map['tripId'] as String? ?? '',
    createdAt: map['createdAt'] != null
        ? DateTime.tryParse(map['createdAt'] as String) ?? DateTime.now()
        : DateTime.now(),
    startedAt: map['startedAt'] != null
        ? DateTime.tryParse(map['startedAt'] as String)
        : null,
    startLocation: startLoc is Map
        ? Location.fromMap(Map<String, dynamic>.from(startLoc))
        : null,
    lastLocation: lastLoc is Map
        ? Location.fromMap(Map<String, dynamic>.from(lastLoc))
        : null,
    distanceMeters: (map['distanceMeters'] as num?)?.toDouble() ?? 0,
    idleSeconds: (map['idleSeconds'] as num?)?.toInt() ?? 0,
    maxSpeedKph: (map['maxSpeedKph'] as num?)?.toDouble() ?? 0,
    started: map['started'] as bool? ?? false,
    ended: map['ended'] as bool? ?? false,
  );
}