Completed Disclosure Flow
							parent
							
								
									8efab84515
								
							
						
					
					
						commit
						cbc6219755
					
				| @ -1,109 +0,0 @@ | ||||
| import 'package:easy_localization/easy_localization.dart'; | ||||
| import 'package:flutter/material.dart'; | ||||
| import 'package:lottie/lottie.dart'; | ||||
| import 'package:mohem_flutter_app/classes/colors.dart'; | ||||
| import 'package:mohem_flutter_app/classes/decorations_helper.dart'; | ||||
| import 'package:mohem_flutter_app/classes/lottie_consts.dart'; | ||||
| import 'package:mohem_flutter_app/config/routes.dart'; | ||||
| import 'package:mohem_flutter_app/extensions/string_extensions.dart'; | ||||
| import 'package:mohem_flutter_app/extensions/widget_extensions.dart'; | ||||
| import 'package:mohem_flutter_app/generated/locale_keys.g.dart'; | ||||
| import 'package:mohem_flutter_app/ui/disclosure/disclosure_provider.dart'; | ||||
| import 'package:mohem_flutter_app/widgets/app_bar_widget.dart'; | ||||
| import 'package:mohem_flutter_app/widgets/dialogs/confirm_dialog.dart'; | ||||
| import 'package:provider/provider.dart'; | ||||
| 
 | ||||
| class DisclosureWaitingScreen extends StatelessWidget { | ||||
|   const DisclosureWaitingScreen({Key? key}) : super(key: key); | ||||
| 
 | ||||
|   @override | ||||
|   Widget build(BuildContext context) { | ||||
|     DisclosureProvider provider = context.watch<DisclosureProvider>(); | ||||
|     return WillPopScope( | ||||
|       onWillPop: () { | ||||
|         showDialog( | ||||
|           context: context, | ||||
|           builder: (BuildContext context) => ConfirmDialog( | ||||
|             message: LocaleKeys.youWantToLeaveMarathon.tr(), | ||||
|             onTap: () { | ||||
|               provider.resetValues(); | ||||
|               Navigator.of(context).popUntil(ModalRoute.withName(AppRoutes.dashboard)); | ||||
|             }, | ||||
|           ), | ||||
|         ); | ||||
|         return Future<bool>.value(false); | ||||
|       }, | ||||
|       child: Scaffold( | ||||
|         appBar: AppBarWidget( | ||||
|           context, | ||||
|           title: LocaleKeys.brainMarathon.tr(), | ||||
|           onHomeTapped: () { | ||||
|             showDialog( | ||||
|               context: context, | ||||
|               builder: (BuildContext context) => ConfirmDialog( | ||||
|                 message: LocaleKeys.youWantToLeaveMarathon.tr(), | ||||
|                 onTap: () { | ||||
|                   provider.resetValues(); | ||||
|                   Navigator.of(context).popUntil(ModalRoute.withName(AppRoutes.dashboard)); | ||||
|                 }, | ||||
|               ), | ||||
|             ); | ||||
|           }, | ||||
|           onBackTapped: () { | ||||
|             showDialog( | ||||
|               context: context, | ||||
|               builder: (BuildContext context) => ConfirmDialog( | ||||
|                 message: LocaleKeys.youWantToLeaveMarathon.tr(), | ||||
|                 onTap: () { | ||||
|                   provider.resetValues(); | ||||
|                   Navigator.of(context).popUntil(ModalRoute.withName(AppRoutes.dashboard)); | ||||
|                 }, | ||||
|               ), | ||||
|             ); | ||||
|           }, | ||||
|         ), | ||||
|         body: Column( | ||||
|           crossAxisAlignment: CrossAxisAlignment.center, | ||||
|           mainAxisAlignment: MainAxisAlignment.center, | ||||
|           children: <Widget>[ | ||||
|             Container( | ||||
|               width: double.infinity, | ||||
|               margin: const EdgeInsets.all(21), | ||||
|               decoration: MyDecorations.shadowDecoration, | ||||
|               child: Stack( | ||||
|                 children: <Widget>[ | ||||
|                   Align( | ||||
|                     child: Lottie.asset(MyLottieConsts.marathonWaiting, height: 200), | ||||
|                   ), | ||||
|                   Align( | ||||
|                     child: Column( | ||||
|                       mainAxisAlignment: MainAxisAlignment.center, | ||||
|                       children: <Widget>[ | ||||
|                         LocaleKeys.startingIn.tr().toText16(), | ||||
|                         (provider.totalSecondsToWaitForMarathon < 10 ? "0${provider.totalSecondsToWaitForMarathon.toString()}" : provider.totalSecondsToWaitForMarathon.toString()).toText18(color: provider.totalSecondsToWaitForMarathon < 5 ? MyColors.redColor : MyColors.black), | ||||
|                       ], | ||||
|                     ), | ||||
|                   ), | ||||
|                   // Align( | ||||
|                   //   child: Column( | ||||
|                   //     mainAxisAlignment: MainAxisAlignment.end, | ||||
|                   //     children: <Widget>[ | ||||
|                   //       InkWell( | ||||
|                   //         onTap: () { | ||||
|                   //           provider.callNextQuestionApi(); | ||||
|                   //           provider.timerToWaitForMarathon.cancel(); | ||||
|                   //         }, | ||||
|                   //         child: "Join Now".toText16(), | ||||
|                   //       ).paddingOnly(bottom: 20), | ||||
|                   //     ], | ||||
|                   //   ), | ||||
|                   // ), | ||||
|                 ], | ||||
|               ), | ||||
|             ).expanded, | ||||
|           ], | ||||
|         ), | ||||
|       ), | ||||
|     ); | ||||
|   } | ||||
| } | ||||
| @ -1,51 +0,0 @@ | ||||
| // ignore_for_file: always_specify_types | ||||
| 
 | ||||
| import 'package:easy_localization/easy_localization.dart'; | ||||
| import 'package:flutter/material.dart'; | ||||
| import 'package:mohem_flutter_app/classes/colors.dart'; | ||||
| import 'package:mohem_flutter_app/extensions/widget_extensions.dart'; | ||||
| import 'package:mohem_flutter_app/generated/locale_keys.g.dart'; | ||||
| import 'package:mohem_flutter_app/ui/disclosure/disclosure_provider.dart'; | ||||
| import 'package:mohem_flutter_app/widgets/button/default_button.dart'; | ||||
| 
 | ||||
| class DisclosureFooter extends StatelessWidget { | ||||
|   final DisclosureProvider provider; | ||||
| 
 | ||||
|   const DisclosureFooter({Key? key, required this.provider}) : super(key: key); | ||||
| 
 | ||||
|   Widget buildNoteForDemo() { | ||||
|     return RichText( | ||||
|       text: TextSpan( | ||||
|         children: <InlineSpan>[ | ||||
|           TextSpan( | ||||
|             text: LocaleKeys.note.tr(), | ||||
|             style: const TextStyle(color: MyColors.darkTextColor, fontSize: 17, letterSpacing: -0.64, fontWeight: FontWeight.bold), | ||||
|           ), | ||||
|           TextSpan( | ||||
|             text: " " + LocaleKeys.demoMarathonNoteP1.tr(), | ||||
|             style: const TextStyle(color: MyColors.grey77Color, fontSize: 17, letterSpacing: -0.64, fontWeight: FontWeight.w500), | ||||
|           ), | ||||
|           TextSpan( | ||||
|             text: " " + LocaleKeys.demoMarathonNoteP2.tr(), | ||||
|             style: const TextStyle(color: MyColors.darkTextColor, fontSize: 17, fontWeight: FontWeight.bold), | ||||
|           ), | ||||
|           TextSpan( | ||||
|             text: " " + LocaleKeys.demoMarathonNoteP3.tr(), | ||||
|             style: const TextStyle(color: MyColors.grey77Color, fontSize: 17, letterSpacing: -0.64, fontWeight: FontWeight.w500), | ||||
|           ) | ||||
|         ], | ||||
|       ), | ||||
|     ).paddingOnly(right: 21, left: 21, top: 11, bottom: 0); | ||||
|   } | ||||
| 
 | ||||
|   @override | ||||
|   Widget build(BuildContext context) { | ||||
|     { | ||||
|       return DefaultButton( | ||||
|         LocaleKeys.joinDemoMarathon.tr(), | ||||
|         () => provider.onJoinDemoMarathonPressed(context), | ||||
|         color: MyColors.yellowColorII, | ||||
|       ).insideContainer; | ||||
|     } | ||||
|   } | ||||
| } | ||||
					Loading…
					
					
				
		Reference in New Issue