// ignore_for_file: prefer_single_quotes import 'dart:convert'; import 'package:dio/dio.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:tm_app/data/services/model/login_response/login_response_model.dart'; import '../../core/network/network_manager.dart'; import '../../core/utils/result.dart'; class AuthService { AuthService({required NetworkManager networkManager}) : _networkManager = networkManager; final NetworkManager _networkManager; Future> login({ required String username, required String password, }) async { var headers = { 'accept': 'application/json', 'Content-Type': 'application/json', }; var data = jsonEncode({"password": "Nima.1998", "username": "nakhostin"}); var dio = Dio( BaseOptions(baseUrl: 'http://10.0.2.2:8081', headers: headers), ); var response = await dio.request( '/admin/v1/profile/login', options: Options(method: 'POST'), data: data, ); if (response.statusCode == 200) { final prefs = await SharedPreferences.getInstance(); final token = response.data['data']?['access_token']; prefs.setString('token', token); if (token != null) { await prefs.setString('bearer', token); } print(json.encode(response.data)); } else { print(response.statusMessage); } return Result.ok(LoginResponseModel.fromJson(response.data)); } }