@@ -56,8 +56,7 @@ class EditHeadlineBloc extends Bloc<EditHeadlineEvent, EditHeadlineState> {
56
56
) async {
57
57
emit (state.copyWith (status: EditHeadlineStatus .loading));
58
58
try {
59
- final [headlineResponse, sourcesResponse, topicsResponse] =
60
- await Future .wait ([
59
+ final responses = await Future .wait ([
61
60
_headlinesRepository.read (id: _headlineId),
62
61
_sourcesRepository.readAll (
63
62
sort: [const SortOption ('updatedAt' , SortOrder .desc)],
@@ -67,13 +66,13 @@ class EditHeadlineBloc extends Bloc<EditHeadlineEvent, EditHeadlineState> {
67
66
),
68
67
]);
69
68
70
- final headline = headlineResponse as Headline ;
71
- final sources = (sourcesResponse as PaginatedResponse <Source >).items;
72
- final topics = (topicsResponse as PaginatedResponse <Topic >).items;
69
+ final headline = responses[ 0 ] as Headline ;
70
+ final sources = (responses[ 1 ] as PaginatedResponse <Source >).items;
71
+ final topics = (responses[ 2 ] as PaginatedResponse <Topic >).items;
73
72
74
73
final countriesResponse = await _countriesRepository.readAll (
75
74
sort: [const SortOption ('name' , SortOrder .asc)],
76
- ) as PaginatedResponse < Country > ;
75
+ );
77
76
78
77
emit (
79
78
state.copyWith (
@@ -254,9 +253,10 @@ class EditHeadlineBloc extends Bloc<EditHeadlineEvent, EditHeadlineState> {
254
253
emit (state.copyWith (countrySearchTerm: event.searchTerm));
255
254
try {
256
255
final countriesResponse = await _countriesRepository.readAll (
257
- filter: {'name' : event.searchTerm},
256
+ filter:
257
+ event.searchTerm.isNotEmpty ? {'name' : event.searchTerm} : null ,
258
258
sort: [const SortOption ('name' , SortOrder .asc)],
259
- ) as PaginatedResponse < Country > ;
259
+ );
260
260
261
261
emit (
262
262
state.copyWith (
@@ -285,10 +285,14 @@ class EditHeadlineBloc extends Bloc<EditHeadlineEvent, EditHeadlineState> {
285
285
286
286
try {
287
287
final countriesResponse = await _countriesRepository.readAll (
288
- cursor: state.countriesCursor,
289
- filter: {'name' : state.countrySearchTerm},
288
+ pagination: state.countriesCursor != null
289
+ ? PaginationOptions (cursor: state.countriesCursor)
290
+ : null ,
291
+ filter: state.countrySearchTerm.isNotEmpty
292
+ ? {'name' : state.countrySearchTerm}
293
+ : null ,
290
294
sort: [const SortOption ('name' , SortOrder .asc)],
291
- ) as PaginatedResponse < Country > ;
295
+ );
292
296
293
297
emit (
294
298
state.copyWith (
0 commit comments