Rumahjo-Android-APP/lib/data/cubits/subscription/get_subsctiption_package_limits_cubit.dart

47 lines
1.5 KiB
Dart
Raw Normal View History

2024-09-07 00:58:50 +00:00
import 'package:ebroker/data/Repositories/subscription_repository.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import '../../model/subscription_package_limit.dart';
abstract class GetSubsctiptionPackageLimitsState {}
class GetSubsctiptionPackageLimitsInitial
extends GetSubsctiptionPackageLimitsState {}
class GetSubsctiptionPackageLimitsInProgress
extends GetSubsctiptionPackageLimitsState {}
class GetSubsctiptionPackageLimitsSuccess
extends GetSubsctiptionPackageLimitsState {
final SubcriptionPackageLimit packageLimit;
GetSubsctiptionPackageLimitsSuccess(this.packageLimit);
}
class GetSubsctiptionPackageLimitsFailure
extends GetSubsctiptionPackageLimitsState {
final String errorMessage;
GetSubsctiptionPackageLimitsFailure(this.errorMessage);
}
class GetSubsctiptionPackageLimitsCubit
extends Cubit<GetSubsctiptionPackageLimitsState> {
final SubscriptionRepository _subscriptionRepository =
SubscriptionRepository();
GetSubsctiptionPackageLimitsCubit()
: super(GetSubsctiptionPackageLimitsInitial());
Future<void> getLimits(SubscriptionLimitType type) async {
try {
emit(GetSubsctiptionPackageLimitsInProgress());
SubcriptionPackageLimit subscriptionPackageLimit =
await _subscriptionRepository.getPackageLimit(type);
emit(GetSubsctiptionPackageLimitsSuccess(subscriptionPackageLimit));
} catch (error) {
print("errro di tampilkan $error");
emit(GetSubsctiptionPackageLimitsFailure(error.toString()));
}
}
}