import 'package:dio/dio.dart'; import 'package:get/get.dart'; import 'package:quiz_app/core/endpoint/api_endpoint.dart'; import 'package:quiz_app/data/models/base/base_model.dart'; import 'package:quiz_app/data/models/session/session_request_model.dart'; import 'package:quiz_app/data/models/session/session_response_model.dart'; import 'package:quiz_app/data/providers/dio_client.dart'; class SessionService extends GetxService { late final Dio _dio; @override void onInit() { _dio = Get.find().dio; super.onInit(); } Future?> createSession(SessionRequestModel data) async { try { final response = await _dio.post(APIEndpoint.session, data: data.toJson()); if (response.statusCode != 201) { return null; } return BaseResponseModel.fromJson(response.data, (e) => SessionResponseModel.fromJson(e)); } on DioException catch (e) { print('Error creating session: ${e.response?.data ?? e.message}'); return null; } catch (e) { print('Unexpected error: $e'); return null; } } }