Aidra Connect 10.0.2+16
Aidra Connect Mobile Application
Loading...
Searching...
No Matches
banners_cubit.dart
Go to the documentation of this file.
1import '/core/common/use_cases/use_cases.dart';
2import '/core/errors/failures.dart';
3import '/features/main_menu/domain/entities/banner_entity.dart';
4import '/features/main_menu/domain/use_cases/load_banner_usecase.dart';
5import 'package:bloc/bloc.dart';
6import 'package:dartz/dartz.dart';
7import 'package:equatable/equatable.dart';
8
9part 'banners_state.dart';
10
11class BannersCubit extends Cubit<BannersState> {
12 final LoadBannersUseCase loadBannersUseCse;
13 BannersCubit({required this.loadBannersUseCse}) : super(BannersInitial());
14 Future<void> loadBanners() async {
15 emit(LoadingBanners());
16 final Either<Failure, dynamic> result =
17 await loadBannersUseCse.call(NoParams());
18 result.fold(
20 (banners) => emit(BannerLoadingSuccessfully(banners: banners)),
21 );
22 }
23}
class BannerSliderView extends StatefulWidget banners
const BannersLoadingFailure({required this.failure})
final LoadBannersUseCase loadBannersUseCse
BannersCubit({required this.loadBannersUseCse}) Future< void > loadBanners() async
sealed class DocumentState extends Equatable failure