elCaribe app - customization and branding

This commit is contained in:
2025-12-12 19:09:42 -04:00
parent 9e5d0d8ebf
commit ba7deac9f3
402 changed files with 31833 additions and 0 deletions

View File

@@ -0,0 +1,40 @@
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:news/data/models/BreakingNewsModel.dart';
import 'package:news/data/repositories/BreakingNews/breakNewsRepository.dart';
import 'package:news/utils/strings.dart';
abstract class BreakingNewsState {}
class BreakingNewsInitial extends BreakingNewsState {}
class BreakingNewsFetchInProgress extends BreakingNewsState {}
class BreakingNewsFetchSuccess extends BreakingNewsState {
final List<BreakingNewsModel> breakingNews;
BreakingNewsFetchSuccess({required this.breakingNews});
}
class BreakingNewsFetchFailure extends BreakingNewsState {
final String errorMessage;
BreakingNewsFetchFailure(this.errorMessage);
}
class BreakingNewsCubit extends Cubit<BreakingNewsState> {
final BreakingNewsRepository _breakingNewsRepository;
BreakingNewsCubit(this._breakingNewsRepository) : super(BreakingNewsInitial());
Future<List<BreakingNewsModel>> getBreakingNews({required String langId}) async {
emit(BreakingNewsFetchInProgress());
try {
final result = await _breakingNewsRepository.getBreakingNews(langId: langId);
(!result[ERROR]) ? emit(BreakingNewsFetchSuccess(breakingNews: result['BreakingNews'])) : emit(BreakingNewsFetchFailure(result[MESSAGE]));
return (!result[ERROR]) ? result['BreakingNews'] : [];
} catch (e) {
emit(BreakingNewsFetchFailure(e.toString()));
return [];
}
}
}