import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import '../../../../api/user_api_client.dart'; import '../../../../controllers/providers/api/status_drop_down/gas_refill/gas_status_provider.dart'; import '../../../../controllers/providers/settings/setting_provider.dart'; import '../../../../controllers/providers/user_provider.dart'; import '../../../../models/lookup.dart'; import '../../loaders/loading_manager.dart'; import '../single_status_menu.dart'; class GasStatusMenu extends StatelessWidget { final Function(Lookup?)? onSelect; final Lookup? initialValue; const GasStatusMenu({Key? key, this.onSelect, this.initialValue}) : super(key: key); @override Widget build(BuildContext context) { final settingProvider = Provider.of(context); final userProvider = Provider.of(context); final menuProvider = Provider.of(context); return LoadingManager( isLoading: menuProvider.isLoading, isFailedLoading: menuProvider.items == null, stateCode: menuProvider.stateCode, onRefresh: () async { menuProvider.reset(); await menuProvider.getData(user: UserApiClient().user, host: settingProvider.host); }, child: SingleStatusMenu( initialStatus: initialValue, statuses: menuProvider.items, onSelect: onSelect, )); } }