import 'dart:convert'; import 'package:unit2/model/location/country.dart'; import 'package:http/http.dart' as http; import 'package:unit2/utils/request.dart'; import 'package:unit2/utils/urls.dart'; import '../model/location/region.dart'; class LocationUtils { static final LocationUtils _instance = LocationUtils(); static LocationUtils get instance => _instance; Future>getCountries()async{ List countries=[]; String path = Url.instance.getCounties(); Map headers = { 'Content-Type': 'application/json; charset=UTF-8', }; // try{ http.Response response = await Request.instance.getRequest(path: path, param: {},headers: headers); if(response.statusCode == 200){ Map data = jsonDecode(response.body); if(data['data'] != null){ data['data'].forEach((var country){ Country newCOuntry = Country.fromJson(country); countries.add(newCOuntry); }); } } // }catch(e){ // throw(e.toString()); // } return countries; } Future>getRegions()async{ List regions=[]; String path = Url.instance.getRegions(); Map headers = { 'Content-Type': 'application/json; charset=UTF-8', }; // try{ http.Response response = await Request.instance.getRequest(path: path, param: {},headers: headers); if(response.statusCode == 200){ Map data = jsonDecode(response.body); if(data['data'] != null){ data['data'].forEach((var region){ Region newRegion = Region.fromJson(region); regions.add(newRegion); }); } } // }catch(e){ // throw(e.toString()); // } return regions; } }