import 'package:dio/dio.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import '../config/api_config.dart'; import '../providers/auth_provider.dart'; import 'token_interceptor.dart'; class DioClient { static Dio? _dio; // static const String baseUrl = "http://103.248.30.24:3030"; static const String baseUrl = "http://10.119.0.74:8000"; static Dio getInstance(BuildContext context) { if (_dio == null) { _dio = Dio( BaseOptions( baseUrl: ApiConfig.baseUrl, connectTimeout: const Duration(seconds: 15), receiveTimeout: const Duration(seconds: 15), headers: { "Accept": "application/json", }, ), ); final authProvider = Provider.of(context, listen: false); _dio!.interceptors.add( TokenInterceptor(authProvider, context, _dio!), ); } return _dio!; } }