import 'package:mc_common_app/api/api_client.dart'; import 'package:mc_common_app/classes/consts.dart'; import 'package:mc_common_app/config/dependencies.dart'; import 'package:mc_common_app/models/user/cities.dart'; import 'package:mc_common_app/models/user/country.dart'; import 'package:mc_common_app/models/user/role.dart'; abstract class CommonRepo { Future getAllCountries(); Future getAllCites(String countryId); Future getRoles(); } class CommonRepoImp implements CommonRepo { @override Future getAllCountries() async { return await injector.get().getJsonForObject((json) => Country.fromJson(json), ApiConsts.GetAllCountry); } @override Future getAllCites(String countryId) async { var postParams = { "CountryID": countryId, }; return await injector.get().getJsonForObject((json) => Cities.fromJson(json), ApiConsts.GetAllCities, queryParameters: postParams); } @override Future getRoles() async { return await injector.get().getJsonForObject((json) => Role.fromJson(json), ApiConsts.GetProviderRoles); } }