import 'package:autos/core/constants/api_endpoints.dart'; import 'package:dio/dio.dart'; import 'package:flutter/foundation.dart'; class ApiService { final Dio _dio; ApiService({String? baseUrl}) : _dio = Dio( BaseOptions( baseUrl: baseUrl ?? ApiEndpoints.baseUrl, connectTimeout: ApiEndpoints.connectTimeout, receiveTimeout: ApiEndpoints.receiveTimeout, headers: ApiEndpoints.defaultHeaders, ), ) { // Add logging interceptor in debug mode if (kDebugMode) { _dio.interceptors.add( LogInterceptor(requestBody: true, responseBody: true), ); } } Future post( String endpoint, Map data, { Options? options, }) async { return await _dio.post(endpoint, data: data, options: options); } Future get(String endpoint, {Map? params}) async { return await _dio.get(endpoint, queryParameters: params); } }