|  |  |  | @ -152,7 +152,7 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |     data.fetchLeaveTicketBalance(context, DateTime.now()); | 
		
	
		
			
				|  |  |  |  |     data.fetchMenuEntries(); | 
		
	
		
			
				|  |  |  |  |     data.fetchEventActivity(); | 
		
	
		
			
				|  |  |  |  |     data.getCategoryOffersListAPI(context); | 
		
	
		
			
				|  |  |  |  |     // data.getCategoryOffersListAPI(context); | 
		
	
		
			
				|  |  |  |  |     marathonProvider.getMarathonDetailsFromApi(); | 
		
	
		
			
				|  |  |  |  |     marathonProvider.getMarathonTutorial(); | 
		
	
		
			
				|  |  |  |  |     if (isFromInit) { | 
		
	
	
		
			
				
					|  |  |  | @ -237,7 +237,10 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |   @override | 
		
	
		
			
				|  |  |  |  |   Widget build(BuildContext context) { | 
		
	
		
			
				|  |  |  |  |     return Scaffold( | 
		
	
		
			
				|  |  |  |  |     return SafeArea( | 
		
	
		
			
				|  |  |  |  |       bottom: Platform.isAndroid ? true : false, | 
		
	
		
			
				|  |  |  |  |       top: false, | 
		
	
		
			
				|  |  |  |  |       child: Scaffold( | 
		
	
		
			
				|  |  |  |  |         key: _scaffoldState, | 
		
	
		
			
				|  |  |  |  |         body: Column( | 
		
	
		
			
				|  |  |  |  |           children: [ | 
		
	
	
		
			
				
					|  |  |  | @ -411,12 +414,7 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |                         ], | 
		
	
		
			
				|  |  |  |  |                       ).paddingOnly(left: 21, right: 21, top: 7, bottom: 21), | 
		
	
		
			
				|  |  |  |  |                       eventActivityWidget(context), | 
		
	
		
			
				|  |  |  |  |                     Consumer<DashboardProviderModel>( | 
		
	
		
			
				|  |  |  |  |                       builder: (BuildContext context, DashboardProviderModel model, Widget? child) { | 
		
	
		
			
				|  |  |  |  |                         if (!model.isOffersLoading && model.getOffersList.isEmpty) { | 
		
	
		
			
				|  |  |  |  |                           return const SizedBox(); | 
		
	
		
			
				|  |  |  |  |                         } | 
		
	
		
			
				|  |  |  |  |                         return Column( | 
		
	
		
			
				|  |  |  |  |                       Column( | 
		
	
		
			
				|  |  |  |  |                         mainAxisSize: MainAxisSize.min, | 
		
	
		
			
				|  |  |  |  |                         crossAxisAlignment: CrossAxisAlignment.start, | 
		
	
		
			
				|  |  |  |  |                         children: [ | 
		
	
	
		
			
				
					|  |  |  | @ -451,20 +449,21 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |                                                   child: RichText( | 
		
	
		
			
				|  |  |  |  |                                                     text: | 
		
	
		
			
				|  |  |  |  |                                                         AppState().isArabic(context) | 
		
	
		
			
				|  |  |  |  |                                                               ? const TextSpan( | 
		
	
		
			
				|  |  |  |  |                                                             ?  TextSpan( | 
		
	
		
			
				|  |  |  |  |                                                               children: [ | 
		
	
		
			
				|  |  |  |  |                                                                 TextSpan( | 
		
	
		
			
				|  |  |  |  |                                                                   text: 'اطلع على مميزات', | 
		
	
		
			
				|  |  |  |  |                                                                     style: TextStyle(fontSize: 16, letterSpacing: -0.2, fontWeight: FontWeight.w700, height: 24 / 16, color: Color(0xFF5D5E5E)), | 
		
	
		
			
				|  |  |  |  |                                                                   style: TextStyle(fontSize: 16, letterSpacing: -0.2, fontFamily: AppState().isArabic(context) ? 'Cairo' : 'Poppins', fontWeight: FontWeight.w700, height: 24 / 16, color: Color(0xFF5D5E5E)), | 
		
	
		
			
				|  |  |  |  |                                                                 ), | 
		
	
		
			
				|  |  |  |  |                                                                 TextSpan( | 
		
	
		
			
				|  |  |  |  |                                                                   text: ' مزايا', | 
		
	
		
			
				|  |  |  |  |                                                                   style: TextStyle( | 
		
	
		
			
				|  |  |  |  |                                                                     fontSize: 16, | 
		
	
		
			
				|  |  |  |  |                                                                     fontFamily: AppState().isArabic(context) ? 'Cairo' : 'Poppins', | 
		
	
		
			
				|  |  |  |  |                                                                     fontWeight: FontWeight.w700, | 
		
	
		
			
				|  |  |  |  |                                                                     letterSpacing: -0.2, | 
		
	
		
			
				|  |  |  |  |                                                                     height: 24 / 16, | 
		
	
		
			
				|  |  |  |  |                                                                       color: Color(0xFFED1C2B), // Use your MAZAYA red color here if defined, e.g. MyColors.mazayaRed | 
		
	
		
			
				|  |  |  |  |                                                                     color: MyColors.mazayaRedColor, // Use your MAZAYA red color here if defined, e.g. MyColors.mazayaRed | 
		
	
		
			
				|  |  |  |  |                                                                   ), | 
		
	
		
			
				|  |  |  |  |                                                                 ), | 
		
	
		
			
				|  |  |  |  |                                                               ], | 
		
	
	
		
			
				
					|  |  |  | @ -473,21 +472,23 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |                                                               children: [ | 
		
	
		
			
				|  |  |  |  |                                                                 TextSpan( | 
		
	
		
			
				|  |  |  |  |                                                                   text: LocaleKeys.explore.tr() + ' ', | 
		
	
		
			
				|  |  |  |  |                                                                     style: const TextStyle(fontSize: 16, letterSpacing: -0.2, fontWeight: FontWeight.w700, height: 24 / 16, color: Color(0xFF5D5E5E)), | 
		
	
		
			
				|  |  |  |  |                                                                   style: const TextStyle(fontSize: 16, letterSpacing: -0.2, fontFamily: 'Poppins', fontWeight: FontWeight.w700, height: 24 / 16, color: Color(0xFF5D5E5E)), | 
		
	
		
			
				|  |  |  |  |                                                                 ), | 
		
	
		
			
				|  |  |  |  |                                                                 TextSpan( | 
		
	
		
			
				|  |  |  |  |                                                                   text: LocaleKeys.mazaya.tr(), | 
		
	
		
			
				|  |  |  |  |                                                                   style: const TextStyle( | 
		
	
		
			
				|  |  |  |  |                                                                     fontSize: 16, | 
		
	
		
			
				|  |  |  |  |                                                                     fontWeight: FontWeight.w700, | 
		
	
		
			
				|  |  |  |  |                                                                     fontFamily: 'Poppins', | 
		
	
		
			
				|  |  |  |  |                                                                     letterSpacing: -0.2, | 
		
	
		
			
				|  |  |  |  |                                                                     height: 24 / 16, | 
		
	
		
			
				|  |  |  |  |                                                                       color: Color(0xFFED1C2B), // Use your MAZAYA red color here if defined, e.g. MyColors.mazayaRed | 
		
	
		
			
				|  |  |  |  |                                                                     color: MyColors.mazayaRedColor, // Use your MAZAYA red color here if defined, e.g. MyColors.mazayaRed | 
		
	
		
			
				|  |  |  |  |                                                                   ), | 
		
	
		
			
				|  |  |  |  |                                                                 ), | 
		
	
		
			
				|  |  |  |  |                                                                 TextSpan( | 
		
	
		
			
				|  |  |  |  |                                                                   text: ' ' + LocaleKeys.benefits.tr(), | 
		
	
		
			
				|  |  |  |  |                                                                     style: const TextStyle(fontSize: 16, letterSpacing: -0.2, fontWeight: FontWeight.w700, height: 24 / 16, color: Color(0xFF5D5E5E)), | 
		
	
		
			
				|  |  |  |  |                                                                   style: const TextStyle(fontSize: 16, letterSpacing: -0.2, | 
		
	
		
			
				|  |  |  |  |                                                                       fontFamily: 'Poppins',fontWeight: FontWeight.w700, height: 24 / 16, color: Color(0xFF5D5E5E)), | 
		
	
		
			
				|  |  |  |  |                                                                 ), | 
		
	
		
			
				|  |  |  |  |                                                               ], | 
		
	
		
			
				|  |  |  |  |                                                             ), | 
		
	
	
		
			
				
					|  |  |  | @ -509,7 +510,7 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |                                           children: [ | 
		
	
		
			
				|  |  |  |  |                                             SvgPicture.asset("assets/icons/mazaya_brand.svg", width: 90, height: 47), | 
		
	
		
			
				|  |  |  |  |                                             const SizedBox(height: 28), | 
		
	
		
			
				|  |  |  |  |                                               LocaleKeys.viewAllOffers.tr().toText12(isUnderLine: true, color: const Color(0xFF3B3D4A)).onPress(() { | 
		
	
		
			
				|  |  |  |  |                                             LocaleKeys.viewallofferMazaya.tr().toText12(isUnderLine: true, color: const Color(0xFF3B3D4A)).onPress(() { | 
		
	
		
			
				|  |  |  |  |                                               Navigator.pushNamed(context, AppRoutes.offersAndDiscounts); | 
		
	
		
			
				|  |  |  |  |                                             }), | 
		
	
		
			
				|  |  |  |  |                                           ], | 
		
	
	
		
			
				
					|  |  |  | @ -521,110 +522,7 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |                               ), | 
		
	
		
			
				|  |  |  |  |                             ).paddingOnly(left: 21, right: 21, top: 0, bottom: 21), | 
		
	
		
			
				|  |  |  |  |                           ), | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |                             // Container( | 
		
	
		
			
				|  |  |  |  |                             //   height: 121, | 
		
	
		
			
				|  |  |  |  |                             //   decoration: BoxDecoration( | 
		
	
		
			
				|  |  |  |  |                             //     borderRadius: BorderRadius.circular(12), | 
		
	
		
			
				|  |  |  |  |                             //     border: Border.all(width: 3, color: Colors.red), | 
		
	
		
			
				|  |  |  |  |                             //   ), | 
		
	
		
			
				|  |  |  |  |                             //   child: Padding(padding: const EdgeInsets.all(4.0), child: Container(decoration: BoxDecoration(borderRadius: BorderRadius.circular(12), color: Colors.white))), | 
		
	
		
			
				|  |  |  |  |                             // ).paddingOnly(left: 21, right: 21, bottom: 21), | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |                             // Row( | 
		
	
		
			
				|  |  |  |  |                             //   crossAxisAlignment: CrossAxisAlignment.center, | 
		
	
		
			
				|  |  |  |  |                             //   children: [ | 
		
	
		
			
				|  |  |  |  |                             //     Expanded( | 
		
	
		
			
				|  |  |  |  |                             //       child: Column( | 
		
	
		
			
				|  |  |  |  |                             //         crossAxisAlignment: CrossAxisAlignment.start, | 
		
	
		
			
				|  |  |  |  |                             //         mainAxisSize: MainAxisSize.min, | 
		
	
		
			
				|  |  |  |  |                             //         children: [ | 
		
	
		
			
				|  |  |  |  |                             //           LocaleKeys.offers.tr().toText12(), | 
		
	
		
			
				|  |  |  |  |                             //           Row( | 
		
	
		
			
				|  |  |  |  |                             //             children: [ | 
		
	
		
			
				|  |  |  |  |                             //               LocaleKeys.discounts.tr().toText24(isBold: true), | 
		
	
		
			
				|  |  |  |  |                             //               6.width, | 
		
	
		
			
				|  |  |  |  |                             //               Container( | 
		
	
		
			
				|  |  |  |  |                             //                   padding: const EdgeInsets.only(left: 8, right: 8), | 
		
	
		
			
				|  |  |  |  |                             //                   decoration: BoxDecoration( | 
		
	
		
			
				|  |  |  |  |                             //                     color: MyColors.yellowColor, | 
		
	
		
			
				|  |  |  |  |                             //                     borderRadius: BorderRadius.circular(10), | 
		
	
		
			
				|  |  |  |  |                             //                   ), | 
		
	
		
			
				|  |  |  |  |                             //                   child: LocaleKeys.newString.tr().toText10(isBold: true)), | 
		
	
		
			
				|  |  |  |  |                             //             ], | 
		
	
		
			
				|  |  |  |  |                             //           ), | 
		
	
		
			
				|  |  |  |  |                             //         ], | 
		
	
		
			
				|  |  |  |  |                             //       ), | 
		
	
		
			
				|  |  |  |  |                             //     ), | 
		
	
		
			
				|  |  |  |  |                             //     LocaleKeys.viewAllOffers.tr().toText12(isUnderLine: true).onPress(() { | 
		
	
		
			
				|  |  |  |  |                             //       Navigator.pushNamed(context, AppRoutes.offersAndDiscounts); | 
		
	
		
			
				|  |  |  |  |                             //     }) | 
		
	
		
			
				|  |  |  |  |                             //   ], | 
		
	
		
			
				|  |  |  |  |                             // ).paddingOnly(left: 21, right: 21), | 
		
	
		
			
				|  |  |  |  |                             // Consumer<DashboardProviderModel>( | 
		
	
		
			
				|  |  |  |  |                             //   builder: (BuildContext context, DashboardProviderModel model, Widget? child) { | 
		
	
		
			
				|  |  |  |  |                             //     return SizedBox( | 
		
	
		
			
				|  |  |  |  |                             //       height: 103 + 33, | 
		
	
		
			
				|  |  |  |  |                             //       child: ListView.separated( | 
		
	
		
			
				|  |  |  |  |                             //           shrinkWrap: true, | 
		
	
		
			
				|  |  |  |  |                             //           physics: const BouncingScrollPhysics(), | 
		
	
		
			
				|  |  |  |  |                             //           padding: const EdgeInsets.only(left: 21, right: 21, top: 13), | 
		
	
		
			
				|  |  |  |  |                             //           scrollDirection: Axis.horizontal, | 
		
	
		
			
				|  |  |  |  |                             //           itemBuilder: (BuildContext cxt, int index) { | 
		
	
		
			
				|  |  |  |  |                             //             return model.isOffersLoading | 
		
	
		
			
				|  |  |  |  |                             //                 ? const OffersShimmerWidget() | 
		
	
		
			
				|  |  |  |  |                             //                 : InkWell( | 
		
	
		
			
				|  |  |  |  |                             //                     onTap: () { | 
		
	
		
			
				|  |  |  |  |                             //                       navigateToDetails(data.getOffersList[index]); | 
		
	
		
			
				|  |  |  |  |                             //                     }, | 
		
	
		
			
				|  |  |  |  |                             //                     child: SizedBox( | 
		
	
		
			
				|  |  |  |  |                             //                       width: 73, | 
		
	
		
			
				|  |  |  |  |                             //                       child: Column( | 
		
	
		
			
				|  |  |  |  |                             //                         crossAxisAlignment: CrossAxisAlignment.center, | 
		
	
		
			
				|  |  |  |  |                             //                         children: [ | 
		
	
		
			
				|  |  |  |  |                             //                           Container( | 
		
	
		
			
				|  |  |  |  |                             //                             width: 73, | 
		
	
		
			
				|  |  |  |  |                             //                             height: 73, | 
		
	
		
			
				|  |  |  |  |                             //                             decoration: BoxDecoration( | 
		
	
		
			
				|  |  |  |  |                             //                               color: Colors.white, | 
		
	
		
			
				|  |  |  |  |                             //                               borderRadius: const BorderRadius.all( | 
		
	
		
			
				|  |  |  |  |                             //                                 Radius.circular(100), | 
		
	
		
			
				|  |  |  |  |                             //                               ), | 
		
	
		
			
				|  |  |  |  |                             //                               border: Border.all(color: MyColors.lightGreyE3Color, width: 1), | 
		
	
		
			
				|  |  |  |  |                             //                             ), | 
		
	
		
			
				|  |  |  |  |                             //                             child: ClipRRect( | 
		
	
		
			
				|  |  |  |  |                             //                               borderRadius: const BorderRadius.all( | 
		
	
		
			
				|  |  |  |  |                             //                                 Radius.circular(50), | 
		
	
		
			
				|  |  |  |  |                             //                               ), | 
		
	
		
			
				|  |  |  |  |                             //                               child: Hero( | 
		
	
		
			
				|  |  |  |  |                             //                                 tag: "ItemImage" + data.getOffersList[index].offersDiscountId.toString()!, | 
		
	
		
			
				|  |  |  |  |                             //                                 transitionOnUserGestures: true, | 
		
	
		
			
				|  |  |  |  |                             //                                 child: Image.network( | 
		
	
		
			
				|  |  |  |  |                             //                                   data.getOffersList[index].logo ?? "", | 
		
	
		
			
				|  |  |  |  |                             //                                   fit: BoxFit.contain, | 
		
	
		
			
				|  |  |  |  |                             //                                 ), | 
		
	
		
			
				|  |  |  |  |                             //                               ), | 
		
	
		
			
				|  |  |  |  |                             //                             ), | 
		
	
		
			
				|  |  |  |  |                             //                           ), | 
		
	
		
			
				|  |  |  |  |                             //                           4.height, | 
		
	
		
			
				|  |  |  |  |                             //                           Expanded( | 
		
	
		
			
				|  |  |  |  |                             //                             child: AppState().isArabic(context) | 
		
	
		
			
				|  |  |  |  |                             //                                 ? data.getOffersList[index].titleAr!.toText12(isCenter: true, maxLine: 1) | 
		
	
		
			
				|  |  |  |  |                             //                                 : data.getOffersList[index].titleEn!.toText12(isCenter: true, maxLine: 1), | 
		
	
		
			
				|  |  |  |  |                             //                           ), | 
		
	
		
			
				|  |  |  |  |                             //                         ], | 
		
	
		
			
				|  |  |  |  |                             //                       ), | 
		
	
		
			
				|  |  |  |  |                             //                     ), | 
		
	
		
			
				|  |  |  |  |                             //                   ); | 
		
	
		
			
				|  |  |  |  |                             //           }, | 
		
	
		
			
				|  |  |  |  |                             //           separatorBuilder: (BuildContext cxt, int index) => 8.width, | 
		
	
		
			
				|  |  |  |  |                             //           itemCount: 9), | 
		
	
		
			
				|  |  |  |  |                             //     ); | 
		
	
		
			
				|  |  |  |  |                             //   }, | 
		
	
		
			
				|  |  |  |  |                             // ), | 
		
	
		
			
				|  |  |  |  |                         ], | 
		
	
		
			
				|  |  |  |  |                         ); | 
		
	
		
			
				|  |  |  |  |                       }, | 
		
	
		
			
				|  |  |  |  |                       ), | 
		
	
		
			
				|  |  |  |  |                       Container( | 
		
	
		
			
				|  |  |  |  |                         width: double.infinity, | 
		
	
	
		
			
				
					|  |  |  | @ -692,7 +590,7 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |             ), | 
		
	
		
			
				|  |  |  |  |           ], | 
		
	
		
			
				|  |  |  |  |         ), | 
		
	
		
			
				|  |  |  |  |       drawer: SafeArea(child: AppDrawer(onLanguageChange: _onRefresh)), | 
		
	
		
			
				|  |  |  |  |         drawer: AppDrawer(onLanguageChange: _onRefresh), | 
		
	
		
			
				|  |  |  |  |         bottomNavigationBar: SizedBox( | 
		
	
		
			
				|  |  |  |  |           height: Platform.isAndroid ? 70 : 100, | 
		
	
		
			
				|  |  |  |  |           child: BottomNavigationBar( | 
		
	
	
		
			
				
					|  |  |  | @ -791,6 +689,7 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |             }, | 
		
	
		
			
				|  |  |  |  |           ), | 
		
	
		
			
				|  |  |  |  |         ), | 
		
	
		
			
				|  |  |  |  |       ), | 
		
	
		
			
				|  |  |  |  |     ); | 
		
	
		
			
				|  |  |  |  |   } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
	
		
			
				
					|  |  |  | 
 |