GeocoderFeature.fromJson constructor
GeocoderFeature.fromJson(
- Map<String, dynamic> json
)
Implementation
GeocoderFeature.fromJson(Map<String, dynamic> json) {
id = json['id'] as String?;
type = json['type'] as String?;
relevance = (json['relevance'] as num?)?.toDouble();
address = json['address'] as String?;
text = json['text'] as String?;
placeName = json['place_name'] as String?;
matchingText = json['matching_text'] as String?;
matchingPlaceName = json['matching_place_name'] as String?;
language = json['language'] as String?;
if (json.containsKey('geometry') && json['geometry'] != null) {
geometry = GeocoderGeometry.fromJson(
json['geometry'] as Map<String, dynamic>,
);
}
if (json.containsKey('routable_points') &&
json['routable_points'] != null) {
routablePoints = GeocoderRoutablePoints.fromJson(
json['routable_points'] as Map<String, dynamic>,
);
}
if (json.containsKey('bbox') && json['bbox'] != null) {
bbox = GeocoderBbox.fromJson(
json['bbox'] as List<dynamic>,
);
}
if (json.containsKey('center') && json['center'] != null) {
center = List<double>.from(
json['center'] as List<dynamic>,
);
}
if (json.containsKey('properties') && json['properties'] != null) {
properties = GeocoderFeatureProperty.fromJson(
json['properties'] as Map<String, dynamic>,
);
}
if (json.containsKey('context') && json['context'] != null) {
context = List<GeocoderContext>.from(
(json['context'] as List<dynamic>).map(
(ctx) => GeocoderContext.fromJson(
ctx as Map<String, dynamic>,
),
),
);
}
if (json.containsKey('place_type') && json['place_type'] != null) {
placeType = List<GeocoderPlaceType>.from(
(json['place_type'] as List<dynamic>).map(
(type) {
switch (type as String) {
case 'country':
return GeocoderPlaceType.COUNTRY;
case 'region':
return GeocoderPlaceType.REGION;
case 'postcode':
return GeocoderPlaceType.POSTCODE;
case 'district':
return GeocoderPlaceType.DISTRICT;
case 'place':
return GeocoderPlaceType.PLACE;
case 'locality':
return GeocoderPlaceType.LOCALITY;
case 'neighborhood':
return GeocoderPlaceType.NEIGHBORHOOD;
case 'address':
return GeocoderPlaceType.ADDRESS;
case 'poi':
return GeocoderPlaceType.POI;
}
return GeocoderPlaceType.EMPTY;
},
),
);
}
}