DirectionsRoute.fromJson constructor
DirectionsRoute.fromJson(
- Map<String, dynamic> map
)
Implementation
factory DirectionsRoute.fromJson(Map<String, dynamic> map) {
return DirectionsRoute(
distance: map['distance'] as num?,
duration: map['duration'] as num?,
geometry: map['geometry'] as String?,
legs: (map['legs'] as List?)
?.whereType<Map<dynamic, dynamic>>() // Filter only valid maps
.map((leg) {
final Map<String, dynamic> convertedMap = leg.cast<String, dynamic>();
// final Map<String, dynamic> convertedMap = Map<String, dynamic>.from(leg);
return Leg.fromJson(convertedMap);
})
.toList() ??
[],
routeIndex: map['routeIndex'] as String?,
routeOptions: map['routeOptions'] != null
? RouteRequestParams.fromJson(
map['routeOptions'] as Map<String, dynamic>)
: throw ArgumentError('routeOptions cannot be null'),
weight: map['weight'] as num?,
countryCode: map['countryCode'] as String?,
weightName: map['weight_name'] as String?,
voiceLanguage: map['voiceLocale'] as String?,
congestion: (map['congestion'] as List<dynamic>?)
?.map((level) =>
CongestionLevelExtension.fromValue(level as int))
.toList() ??
[],
);
}