Address.fromJson constructor
Address.fromJson(
- Map<String, dynamic> json
)
Implementation
factory Address.fromJson(Map<String, dynamic> json) {
// Creates an instance of the class from a JSON map.
//
// Takes a [Map<String, dynamic>] and returns a new instance
// with fields populated from the JSON data.
String formattedAddress = json['formattedAddress'];
final addressComponents = json['addressComponents'];
double longitude = json['location']['longitude'];
double latitude = json['location']['latitude'];
String state = "";
String postalCode = "";
int? streetNumber;
String? street;
String country = "";
String city = "";
for (var c in addressComponents) {
final List type = c['types'];
if (type.contains('street_number')) {
streetNumber = int.parse(c['longText']);
}
if (type.contains('route')) {
street = c['longText'];
}
if (type.contains('locality')) {
city = c['longText'];
}
if (type.contains('postal_code')) {
postalCode = c['longText'];
}
if (type.contains('country')) {
country = c['longText'];
}
if (type.contains('administrative_area_level_1')) {
state = c['longText'];
}
}
return Address(
formattedAddress: formattedAddress,
streetNumber: streetNumber,
street: street,
city: city,
state: state,
postalCode: postalCode,
country: country,
longitude: longitude,
latitude: latitude,
);
}