import 'package:didvan/models/enums.dart'; import 'package:didvan/views/home/home_state.dart'; import 'package:didvan/views/home/search/widgets/search_result_item.dart'; import 'package:didvan/views/widgets/state_handlers/empty_list.dart'; import 'package:didvan/views/widgets/state_handlers/state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; class SearchPage extends StatelessWidget { const SearchPage({super.key}); @override Widget build(BuildContext context) { final state = context.watch(); return SizedBox( height: MediaQuery.of(context).size.height, width: MediaQuery.of(context).size.width, child: StateHandler( state: state, enableEmptyState: state.appState == AppState.idle && state.results.isEmpty, emptyState: const EmptyList(), onRetry: () => state.searchAll(page: state.page), builder: (context, state) => ListView.builder( padding: const EdgeInsets.all(16), itemBuilder: (context, index) => Padding( padding: const EdgeInsets.only(bottom: 16), child: SearchResultItem( item: state.results[index], ), ), itemCount: state.results.length, ), ), ); } }