fromJson static method

FormattedLocation fromJson(
  1. Map<String, dynamic> json
)

Implementation

static FormattedLocation fromJson(Map<String, dynamic> json) {
  if (json["error"] != null) {
    throw Exception(json["error"]);
  }
  var boundingBox = json["boundingbox"] as List;
  var lat = double.parse(json['lat']?.toString() ?? '');
  var lon = double.parse(json['lon']?.toString() ?? '');
  return FormattedLocation(
    placeId: json["place_id"]!.toString(),
    address: Address.fromMap(json["address"] ?? {}),
    lat: lat,
    lon: lon,
    addressType: json["addresstype"] ?? '',
    boundingBox: LatLngBounds.fromPoints([
      LatLng(
        double.parse(boundingBox[0].toString()),
        double.parse(boundingBox[2].toString()),
      ),
      LatLng(
        double.parse(boundingBox[1].toString()),
        double.parse(boundingBox[3].toString()),
      ),
    ]),
    category: json["category"] ?? '',
    displayName: json["display_name"] ?? '',
    extratags: (json["extratags"] as Map?)
            ?.map((key, value) => MapEntry(key.toString(), value)) ??
        {},
    geojson: GeoGeometry.fromMap(json["geojson"] ??
        {
          "type": "Point",
          "coordinates": [lon, lat]
        }),
    importance: double.tryParse(json["importance"]?.toString() ?? '') ?? 0,
    licence: json["licence"] ?? '',
    name: json["name"] ?? '',
    namedetails: (json["namedetails"] as Map?)
            ?.map((key, value) => MapEntry(key.toString(), value)) ??
        {},
    osmId: int.tryParse(json["osm_id"]?.toString() ?? '0') ?? 0,
    osmType: json["osm_type"] ?? '',
    placeRank: int.tryParse(json["place_rank"]?.toString() ?? '0') ?? 0,
    type: json["type"] ?? '',
    icon: json["icon"],
  );
}