import 'package:dio/dio.dart'; import 'package:ontime_merchant_flutter/core/app_config.dart'; class ApiClient { ApiClient({ required String? basicAuthUser, required String? basicAuthPassword, }) : _dio = Dio( BaseOptions( baseUrl: AppConfig.apiBase, connectTimeout: const Duration(seconds: 15), receiveTimeout: const Duration(seconds: 20), ), ) { if (basicAuthUser != null && basicAuthPassword != null) { final auth = '$basicAuthUser:$basicAuthPassword'; final encoded = String.fromCharCodes(auth.codeUnits); _dio.options.headers['Authorization'] = 'Basic $encoded'; } } final Dio _dio; Dio get raw => _dio; }