26 lines
687 B
Dart
26 lines
687 B
Dart
import 'package:dio/dio.dart';
|
|
|
|
import '../../errors/marianumconnect_error.dart';
|
|
import '../../marianumconnect_api.dart';
|
|
import '../../marianumconnect_endpoint.dart';
|
|
import '../../models/mc_holiday.dart';
|
|
|
|
class GetHolidays {
|
|
final Dio _dio;
|
|
|
|
GetHolidays({Dio? dio}) : _dio = dio ?? MarianumConnectApi.dio();
|
|
|
|
Future<List<McHoliday>> run() async {
|
|
try {
|
|
final response = await _dio.get<List<dynamic>>(
|
|
MarianumConnectEndpoint.resolve('holidays'),
|
|
);
|
|
return response.data!
|
|
.map((e) => McHoliday.fromJson(e as Map<String, dynamic>))
|
|
.toList();
|
|
} on DioException catch (e) {
|
|
throw mapMarianumConnectError(e);
|
|
}
|
|
}
|
|
}
|