import 'package:customer/constant/constant.dart'; import 'package:customer/controllers/parcel_dashboard_controller.dart'; import 'package:customer/controllers/theme_controller.dart'; import 'package:customer/themes/app_them_data.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:get/get.dart'; class ParcelDashboardScreen extends StatelessWidget { const ParcelDashboardScreen({super.key}); @override Widget build(BuildContext context) { final themeController = Get.find(); return Obx(() { final isDark = themeController.isDark.value; return GetX( init: ParcelDashboardController(), builder: (controller) { return Scaffold( body: controller.pageList[controller.selectedIndex.value], bottomNavigationBar: BottomNavigationBar( type: BottomNavigationBarType.fixed, showUnselectedLabels: true, showSelectedLabels: true, selectedFontSize: 12, selectedLabelStyle: const TextStyle( fontFamily: AppThemeData.bold, ), unselectedLabelStyle: const TextStyle( fontFamily: AppThemeData.bold, ), currentIndex: controller.selectedIndex.value, backgroundColor: isDark ? AppThemeData.grey900 : AppThemeData.grey50, selectedItemColor: isDark ? AppThemeData.parcelServiceDark300 : AppThemeData.primary300, unselectedItemColor: isDark ? AppThemeData.greyDark500 : AppThemeData.grey500, onTap: (int index) { if (index == 0) { Get.put(ParcelDashboardController()); } controller.selectedIndex.value = index; }, items: Constant.walletSetting == false ? [ navigationBarItem( isDark, index: 0, assetIcon: "assets/icons/ic_home_parcel.svg", label: 'Home'.tr, controller: controller, ), navigationBarItem( isDark, index: 1, assetIcon: "assets/icons/ic_mybooking_parcel.svg", label: 'My Bookings'.tr, controller: controller, ), navigationBarItem( isDark, index: 2, assetIcon: "assets/icons/ic_profile_parcel.svg", label: 'Profile'.tr, controller: controller, ), ] : [ navigationBarItem( isDark, index: 0, assetIcon: "assets/icons/ic_home_parcel.svg", label: 'Home'.tr, controller: controller, ), navigationBarItem( isDark, index: 1, assetIcon: "assets/icons/ic_mybooking_parcel.svg", label: 'My Bookings'.tr, controller: controller, ), navigationBarItem( isDark, index: 2, assetIcon: "assets/icons/ic_wallet_parcel.svg", label: 'Wallet'.tr, controller: controller, ), navigationBarItem( isDark, index: 3, assetIcon: "assets/icons/ic_profile_parcel.svg", label: 'Profile'.tr, controller: controller, ), ], ), ); }, ); }); } BottomNavigationBarItem navigationBarItem( isDark, { required int index, required String label, required String assetIcon, required ParcelDashboardController controller, }) { return BottomNavigationBarItem( icon: Padding( padding: const EdgeInsets.symmetric(vertical: 5), child: SvgPicture.asset( assetIcon, height: label == 'Wallet'.tr ? 18 : 22, width: label == 'Wallet'.tr ? 18 : 22, color: controller.selectedIndex.value == index ? isDark ? AppThemeData.parcelServiceDark300 : AppThemeData.primary300 : isDark ? AppThemeData.grey300 : AppThemeData.grey600, ), ), label: label, ); } }