mnemo_cards/lib/features/subscription/subscription_api.dart
2024-08-04 01:37:10 +03:00

39 lines
1,014 B
Dart

import 'dart:typed_data';
import 'package:dio/dio.dart';
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
import '../../managers/repository/api.dart';
class SubscriptionApi with Api {
final Dio _dio;
SubscriptionApi(this._dio);
Future<SubscriptionDto?> getBuySubscription() async {
final r = await _dio.get<String>(
'$path/subscription/page',
options: Options(
sendTimeout: Duration(seconds: 5),
receiveTimeout: Duration(seconds: 5),
),
);
return (r.data as String).decode(SubscriptionDto.fromJson);
}
/// cards zip archive for available pack
/// unavailable packs transfer images by base64
Future<Uint8List> packImagesArchive(String packId) async {
final response = await _dio.get<Uint8List>(
'$path/pack/cards/$packId',
options: Options(
responseType: ResponseType.bytes,
),
);
final data = response.data;
if (data == null) {
return Uint8List.fromList([]);
}
return data;
}
}