diff --git a/lib/core/routes/routes.dart b/lib/core/routes/routes.dart index 35acb65..364e0fd 100644 --- a/lib/core/routes/routes.dart +++ b/lib/core/routes/routes.dart @@ -245,9 +245,11 @@ final goRouter = GoRouter( ), GoRoute( name: RouteName.investDetailScreen, - path: RouteName.investDetailScreen, + path: "${RouteName.investDetailScreen}/:type", builder: (context, state) { - return const InvestDetailsScreen(); + return InvestDetailsScreen( + type: state.pathParameters["type"]!, + ); }, ), GoRoute( diff --git a/lib/core/styles/app_text.dart b/lib/core/styles/app_text.dart index 1e74f03..f77fe32 100644 --- a/lib/core/styles/app_text.dart +++ b/lib/core/styles/app_text.dart @@ -257,7 +257,10 @@ class AppText { static const String fundedText = "funded"; static const String sponsorNameText = "Sponsor name"; static const String estimatedReturnText = "Estimated return"; + static const String originalEstimatedReturnText = "Original estimated return"; + static const String actualEstimatedReturnText = "Actual return"; static const String holdingPeriodText = "Holding period"; + static const String payoutDateText = "Payout Date"; static const String minimumInvestmentText = "Minimum investment"; static const String keyMeritsIOfnvestmentText = "Key Merits of Investment"; static const String investmentDetailsText = "Investment details"; diff --git a/lib/features/MainScreens/Academy/presentation/pages/academy_details_layout.dart b/lib/features/MainScreens/Academy/presentation/pages/academy_details_layout.dart index 2b8864e..1f30824 100644 --- a/lib/features/MainScreens/Academy/presentation/pages/academy_details_layout.dart +++ b/lib/features/MainScreens/Academy/presentation/pages/academy_details_layout.dart @@ -1,6 +1,8 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:gap/gap.dart'; + +import '../../../../../core/styles/app_color.dart'; import '../widgets/academy_detail_section.dart'; import '../widgets/academy_video_section.dart'; @@ -10,7 +12,7 @@ class AcademyDetailsLayout extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: Colors.white, + backgroundColor: AppColor.plainWhite, body: SingleChildScrollView( child: Padding( padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 20.0), diff --git a/lib/features/MainScreens/Academy/presentation/pages/academy_layout.dart b/lib/features/MainScreens/Academy/presentation/pages/academy_layout.dart index fcf468a..5ec213f 100644 --- a/lib/features/MainScreens/Academy/presentation/pages/academy_layout.dart +++ b/lib/features/MainScreens/Academy/presentation/pages/academy_layout.dart @@ -1,13 +1,15 @@ import 'package:flutter/material.dart'; import 'package:tanami_app/features/MainScreens/Academy/presentation/widgets/academy_card.dart'; +import '../../../../../core/styles/app_color.dart'; + class AcademyLayout extends StatelessWidget { const AcademyLayout({super.key}); @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: Colors.white, + backgroundColor: AppColor.plainWhite, body: ListView.builder( itemCount: data.length, itemBuilder: (context, index) { diff --git a/lib/features/MainScreens/Invest/presentation/pages/invest_details_layout.dart b/lib/features/MainScreens/Invest/presentation/pages/invest_details_layout.dart index 9b8d98a..d48d849 100644 --- a/lib/features/MainScreens/Invest/presentation/pages/invest_details_layout.dart +++ b/lib/features/MainScreens/Invest/presentation/pages/invest_details_layout.dart @@ -10,7 +10,8 @@ import '../widgets/invest_included_documents_section.dart'; import '../widgets/key_investment_section.dart'; class InvestDetailsLayout extends StatelessWidget { - const InvestDetailsLayout({super.key}); + final String type; + const InvestDetailsLayout({super.key, required this.type}); @override Widget build(BuildContext context) { @@ -37,7 +38,9 @@ class InvestDetailsLayout extends StatelessWidget { child: Column( children: [ InvestDetailCarouselView(), - const InvestDetailDetailsSection(), + InvestDetailDetailsSection( + type: type, + ), ], ), ), diff --git a/lib/features/MainScreens/Invest/presentation/pages/invest_details_screen.dart b/lib/features/MainScreens/Invest/presentation/pages/invest_details_screen.dart index d46ff0d..c726950 100644 --- a/lib/features/MainScreens/Invest/presentation/pages/invest_details_screen.dart +++ b/lib/features/MainScreens/Invest/presentation/pages/invest_details_screen.dart @@ -12,24 +12,27 @@ import '../../../Portfolio/presentation/bloc/carousel/carousel_bloc.dart'; import 'invest_details_layout.dart'; class InvestDetailsScreen extends StatelessWidget { - const InvestDetailsScreen({super.key}); + final String type; + const InvestDetailsScreen({super.key, required this.type}); @override Widget build(BuildContext context) { return Scaffold( backgroundColor: AppColor.plainWhite, - bottomNavigationBar: Container( - padding: const EdgeInsets.symmetric(horizontal: 18, vertical: 26), - width: 1.sw, - height: 105.h, - child: ButtonWidget().elevatedBtn( - text: AppText.investText, - clr: AppColor.primaryColor2, - function: () { - goRouter.pushNamed(RouteName.investPaymentScreen); - }, - ), - ), + bottomNavigationBar: type == "closed" + ? null + : Container( + padding: const EdgeInsets.symmetric(horizontal: 18, vertical: 26), + width: 1.sw, + height: 105.h, + child: ButtonWidget().elevatedBtn( + text: AppText.investText, + clr: AppColor.primaryColor2, + function: () { + goRouter.pushNamed(RouteName.investPaymentScreen); + }, + ), + ), appBar: const AppBarWidget( height: 45, titleTxt: "", @@ -41,7 +44,9 @@ class InvestDetailsScreen extends StatelessWidget { create: (context) => CarouselBloc(), ), ], - child: const InvestDetailsLayout(), + child: InvestDetailsLayout( + type: type, + ), ), ); } diff --git a/lib/features/MainScreens/Invest/presentation/pages/invest_layout.dart b/lib/features/MainScreens/Invest/presentation/pages/invest_layout.dart index 1485885..98097c3 100644 --- a/lib/features/MainScreens/Invest/presentation/pages/invest_layout.dart +++ b/lib/features/MainScreens/Invest/presentation/pages/invest_layout.dart @@ -10,6 +10,7 @@ import 'package:tanami_app/features/MainScreens/Invest/presentation/widgets/kyc_ import '../bloc/tab_bloc.dart'; import '../bloc/tab_event.dart'; import '../bloc/tab_state.dart'; +import '../widgets/invest_closed_details_section.dart'; import '../widgets/invest_details_section.dart'; import '../widgets/invest_image_carousel.dart'; @@ -37,7 +38,7 @@ class InvestLayout extends StatelessWidget { fontWeight: FontWeight.normal, fontSize: 14.0, ), - overlayColor: MaterialStateProperty.all(Colors.transparent), + overlayColor: WidgetStateProperty.all(Colors.transparent), labelColor: AppColor.plainBlack, unselectedLabelColor: AppColor.charcoalColor, indicatorColor: AppColor.plainBlack, @@ -84,7 +85,8 @@ class AvailableItemsScreen extends StatelessWidget { child: kycCard()) : GestureDetector( onTap: () { - goRouter.pushNamed(RouteName.investDetailScreen); + goRouter.pushNamed(RouteName.investDetailScreen, + pathParameters: {"type": "available"}); }, child: Container( margin: const EdgeInsets.symmetric( @@ -143,7 +145,8 @@ class ClosedItemsScreen extends StatelessWidget { child: kycCard()) : GestureDetector( onTap: () { - goRouter.pushNamed(RouteName.investDetailScreen); + goRouter.pushNamed(RouteName.investDetailScreen, + pathParameters: {"type": "closed"}); }, child: Container( margin: const EdgeInsets.symmetric( @@ -166,7 +169,7 @@ class ClosedItemsScreen extends StatelessWidget { child: Column( children: [ InvestCarouselView(), - const InvestDetailsSection(), + const InvestClosedDetailsSection(), ], ), ), diff --git a/lib/features/MainScreens/Invest/presentation/pages/payment/confirm_investment_layout.dart b/lib/features/MainScreens/Invest/presentation/pages/payment/confirm_investment_layout.dart index 63c3710..5b824df 100644 --- a/lib/features/MainScreens/Invest/presentation/pages/payment/confirm_investment_layout.dart +++ b/lib/features/MainScreens/Invest/presentation/pages/payment/confirm_investment_layout.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; +import '../../../../../../core/styles/app_color.dart'; import '../../widgets/payment/confirm_invest_bottom_section.dart'; import '../../widgets/payment/confirm_invest_top_section.dart'; @@ -9,7 +10,7 @@ class ConfirmInvestmentLayout extends StatelessWidget { @override Widget build(BuildContext context) { return const Scaffold( - backgroundColor: Colors.white, + backgroundColor: AppColor.plainWhite, bottomNavigationBar: ConfirmInvestBottomSection(), body: Padding( padding: EdgeInsets.all(16.0), diff --git a/lib/features/MainScreens/Invest/presentation/widgets/invest_closed_details_section.dart b/lib/features/MainScreens/Invest/presentation/widgets/invest_closed_details_section.dart new file mode 100644 index 0000000..0b50736 --- /dev/null +++ b/lib/features/MainScreens/Invest/presentation/widgets/invest_closed_details_section.dart @@ -0,0 +1,235 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:gap/gap.dart'; +import 'package:tanami_app/core/styles/app_color.dart'; + +import '../../../../../core/styles/app_images.dart'; +import '../../../../../core/styles/app_text.dart'; +import '../../../../../shared/components/text_widget.dart'; + +class InvestClosedDetailsSection extends StatelessWidget { + const InvestClosedDetailsSection({super.key}); + + @override + Widget build(BuildContext context) { + return Column( + children: [ + Container( + color: AppColor.plainWhite, + child: Padding( + padding: const EdgeInsets.only( + left: 20.0, + right: 20, + top: 10, + bottom: 20, + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + TextWidget().text17W700( + 'Multi Family Residental', + clr: AppColor.plainBlack, + ), + Container( + height: 28, + padding: const EdgeInsets.symmetric( + horizontal: 12, vertical: 6), + decoration: ShapeDecoration( + color: const Color(0xFFE4F5E9), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(4)), + ), + child: Center( + child: TextWidget().text12W700( + "Real estate", + clr: AppColor.selectedItemColor, + )), + ) + ], + ), + Gap(10.h), + Container( + padding: const EdgeInsets.symmetric( + horizontal: 15.0, vertical: 10.0), + decoration: BoxDecoration( + color: Colors.white, + border: Border.all(color: const Color(0xFFE4F5E9)), + borderRadius: BorderRadius.circular(14.0), + ), + child: Row( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.start, + children: [ + Image.asset( + AppImages.portfolioClock, + height: 15.h, + ), + Gap( + 5.w, + ), + TextWidget().text12W700( + "${AppText.closingDateText}: ", + clr: AppColor.plainBlack, + ), + TextWidget().text12W500( + 'Jul 10 2025', + clr: AppColor.plainBlack, + ), + ], + ), + ), + Gap( + 10.h, + ), + TextWidget() + .text22W900("SAR 1,478,000", clr: AppColor.investTextColor), + const Gap(8.0), + LinearProgressIndicator( + value: 1, + borderRadius: BorderRadius.circular(2), + minHeight: 8.0, + backgroundColor: AppColor.txtBorderColor, + valueColor: const AlwaysStoppedAnimation( + AppColor.investTextColor), + ), + const Gap(8.0), + TextWidget().text11W700("100% ${AppText.fundedText}", + clr: AppColor.portoflioCardTextColor), + const Gap(8.0), + TextWidget().text14W400( + 'Forem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vulputate libero et velit interdum, ac aliquet odio mattis. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Curabitur tempus urna at turpis condimentum lobortis.', + clr: Colors.grey, + txtAlign: TextAlign.start, + maxLine: 2, + ) + ], + ), + ), + ), + Padding( + padding: const EdgeInsets.only(left: 12.0, right: 12, bottom: 12.0), + child: Container( + decoration: BoxDecoration( + color: const Color(0xFFE4F5E9), + borderRadius: BorderRadius.circular(22)), + child: Padding( + padding: + const EdgeInsets.symmetric(horizontal: 20.0, vertical: 16.0), + child: Column( + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SizedBox( + width: 150.w, + child: TextWidget().text14W500( + "${AppText.sponsorNameText}:", + clr: AppColor.portoflioCardTextColor, + txtAlign: TextAlign.start, + ), + ), + TextWidget().text14W700( + 'Silverlake', + clr: AppColor.plainBlack, + txtAlign: TextAlign.end, + ) + ], + ), + SizedBox( + height: 8.h, + ), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SizedBox( + width: 200.w, + child: TextWidget().text14W500( + "${AppText.originalEstimatedReturnText}:", + clr: AppColor.portoflioCardTextColor, + txtAlign: TextAlign.start, + ), + ), + TextWidget().text14W700( + '20.0%', + clr: AppColor.plainBlack, + txtAlign: TextAlign.end, + ), + ], + ), + SizedBox( + height: 8.h, + ), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SizedBox( + width: 150.w, + child: TextWidget().text14W500( + "${AppText.actualEstimatedReturnText}:", + clr: AppColor.portoflioCardTextColor, + txtAlign: TextAlign.start, + ), + ), + TextWidget().text14W700( + '22.5%', + clr: AppColor.plainBlack, + txtAlign: TextAlign.end, + ), + ], + ), + SizedBox( + height: 8.h, + ), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SizedBox( + width: 150.w, + child: TextWidget().text14W500( + "${AppText.holdingPeriodText}:", + clr: AppColor.portoflioCardTextColor, + txtAlign: TextAlign.start, + ), + ), + TextWidget().text14W700( + '24 Months', + clr: AppColor.plainBlack, + txtAlign: TextAlign.end, + ), + ], + ), + SizedBox( + height: 8.h, + ), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + TextWidget().text14W500( + "${AppText.payoutDateText}:", + clr: AppColor.portoflioCardTextColor, + txtAlign: TextAlign.start, + ), + TextWidget().text14W700( + 'August 1, 2027', + clr: AppColor.plainBlack, + txtAlign: TextAlign.end, + ), + ], + ) + ], + ), + ), + ), + ) + ], + ); + } +} diff --git a/lib/features/MainScreens/Invest/presentation/widgets/invest_detail_details_section.dart b/lib/features/MainScreens/Invest/presentation/widgets/invest_detail_details_section.dart index cbf2999..7f952bf 100644 --- a/lib/features/MainScreens/Invest/presentation/widgets/invest_detail_details_section.dart +++ b/lib/features/MainScreens/Invest/presentation/widgets/invest_detail_details_section.dart @@ -7,7 +7,8 @@ import '../../../../../core/styles/app_text.dart'; import '../../../../../shared/components/text_widget.dart'; class InvestDetailDetailsSection extends StatelessWidget { - const InvestDetailDetailsSection({super.key}); + final String type; + const InvestDetailDetailsSection({super.key, required this.type}); @override Widget build(BuildContext context) { @@ -31,7 +32,7 @@ class InvestDetailDetailsSection extends StatelessWidget { .text22W900("SAR 1,478,000", clr: AppColor.investTextColor), const Gap(8.0), LinearProgressIndicator( - value: 0.6, + value: type == "closed" ? 1 : 0.6, borderRadius: BorderRadius.circular(2), minHeight: 8.0, backgroundColor: AppColor.txtBorderColor, @@ -39,7 +40,10 @@ class InvestDetailDetailsSection extends StatelessWidget { AppColor.investTextColor), ), const Gap(8.0), - TextWidget().text11W700("60% ${AppText.fundedText}", + TextWidget().text11W700( + type == "closed" + ? "100% ${AppText.fundedText}" + : "60% ${AppText.fundedText}", clr: AppColor.portoflioCardTextColor), const Gap(8.0), TextWidget().text14W400( @@ -86,27 +90,78 @@ class InvestDetailDetailsSection extends StatelessWidget { SizedBox( height: 8.h, ), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - SizedBox( - width: 150.w, - child: TextWidget().text14W500( - "${AppText.estimatedReturnText}:", - clr: AppColor.portoflioCardTextColor, - txtAlign: TextAlign.start, + type == "closed" + ? Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SizedBox( + width: 200.w, + child: TextWidget().text14W500( + "${AppText.originalEstimatedReturnText}:", + clr: AppColor.portoflioCardTextColor, + txtAlign: TextAlign.start, + ), + ), + TextWidget().text14W700( + '20.0%', + clr: AppColor.plainBlack, + txtAlign: TextAlign.end, + ), + ], + ) + : Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SizedBox( + width: 150.w, + child: TextWidget().text14W500( + "${AppText.estimatedReturnText}:", + clr: AppColor.portoflioCardTextColor, + txtAlign: TextAlign.start, + ), + ), + TextWidget().text14W700( + '20.0%', + clr: AppColor.plainBlack, + txtAlign: TextAlign.end, + ), + ], ), - ), - TextWidget().text14W700( - '20.0%', - clr: AppColor.plainBlack, - txtAlign: TextAlign.end, - ), - ], - ), + type == "closed" + ? Column( + children: [ + SizedBox( + height: 8.h, + ), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SizedBox( + width: 150.w, + child: TextWidget().text14W500( + "${AppText.actualEstimatedReturnText}:", + clr: AppColor.portoflioCardTextColor, + txtAlign: TextAlign.start, + ), + ), + TextWidget().text14W700( + '22.5%', + clr: AppColor.plainBlack, + txtAlign: TextAlign.end, + ), + ], + ), + SizedBox( + height: 8.h, + ), + ], + ) + : const SizedBox(), SizedBox( - height: 8.h, + height: type == "closed" ? 0 : 8.h, ), Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, @@ -130,22 +185,39 @@ class InvestDetailDetailsSection extends StatelessWidget { SizedBox( height: 8.h, ), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - TextWidget().text14W500( - "${AppText.minimumInvestmentText}:", - clr: AppColor.portoflioCardTextColor, - txtAlign: TextAlign.start, - ), - TextWidget().text14W700( - 'SAR 1,000', - clr: AppColor.plainBlack, - txtAlign: TextAlign.end, - ), - ], - ) + type == "closed" + ? Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + TextWidget().text14W500( + "${AppText.payoutDateText}:", + clr: AppColor.portoflioCardTextColor, + txtAlign: TextAlign.start, + ), + TextWidget().text14W700( + 'August 1, 2027', + clr: AppColor.plainBlack, + txtAlign: TextAlign.end, + ), + ], + ) + : Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + TextWidget().text14W500( + "${AppText.minimumInvestmentText}:", + clr: AppColor.portoflioCardTextColor, + txtAlign: TextAlign.start, + ), + TextWidget().text14W700( + 'SAR 1,000', + clr: AppColor.plainBlack, + txtAlign: TextAlign.end, + ), + ], + ) ], ), ), diff --git a/lib/features/MainScreens/Portfolio/presentation/pages/portfolio_layout.dart b/lib/features/MainScreens/Portfolio/presentation/pages/portfolio_layout.dart index bf52bc7..4650329 100644 --- a/lib/features/MainScreens/Portfolio/presentation/pages/portfolio_layout.dart +++ b/lib/features/MainScreens/Portfolio/presentation/pages/portfolio_layout.dart @@ -16,7 +16,7 @@ class PortfolioLayout extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: Colors.white, + backgroundColor: AppColor.plainWhite, body: CustomScrollView( slivers: [ SliverAppBar( diff --git a/lib/features/MainScreens/Settings/presentation/pages/settings_layout.dart b/lib/features/MainScreens/Settings/presentation/pages/settings_layout.dart index a918edb..d2b0d13 100644 --- a/lib/features/MainScreens/Settings/presentation/pages/settings_layout.dart +++ b/lib/features/MainScreens/Settings/presentation/pages/settings_layout.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; import 'package:gap/gap.dart'; +import 'package:tanami_app/core/styles/app_color.dart'; import 'package:tanami_app/features/MainScreens/Settings/presentation/widgets/support_settings_section.dart'; import '../widgets/general_settings_section.dart'; @@ -13,7 +14,7 @@ class SettingsLayout extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: Colors.white, + backgroundColor: AppColor.plainWhite, body: Padding( padding: const EdgeInsets.symmetric( horizontal: 16, diff --git a/lib/features/MainScreens/Settings/presentation/pages/settings_screen.dart b/lib/features/MainScreens/Settings/presentation/pages/settings_screen.dart index 249341a..4b21e1b 100644 --- a/lib/features/MainScreens/Settings/presentation/pages/settings_screen.dart +++ b/lib/features/MainScreens/Settings/presentation/pages/settings_screen.dart @@ -18,7 +18,7 @@ class _SettingsScreenState extends State { return Scaffold( backgroundColor: AppColor.plainWhite, appBar: AppBar( - // backgroundColor: Colors.white, + backgroundColor: Colors.white, elevation: 0, scrolledUnderElevation: 0, automaticallyImplyLeading: false, diff --git a/lib/features/changePassword/presentation/pages/change_password_layout.dart b/lib/features/changePassword/presentation/pages/change_password_layout.dart index 30de7c5..9aa3660 100644 --- a/lib/features/changePassword/presentation/pages/change_password_layout.dart +++ b/lib/features/changePassword/presentation/pages/change_password_layout.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; +import '../../../../core/styles/app_color.dart'; import '../widgets/change_password_bottom_section.dart'; import '../widgets/change_password_form.dart'; @@ -9,9 +10,8 @@ class ChangePasswordLayout extends StatelessWidget { @override Widget build(BuildContext context) { return const Scaffold( - backgroundColor: Colors.white, - bottomNavigationBar: RestorePasswordBottomSection(), - body: RestorePasswordForm(), - ); + backgroundColor: AppColor.plainWhite, + bottomNavigationBar: RestorePasswordBottomSection(), + body: RestorePasswordForm()); } } diff --git a/lib/features/countrySelection/presentation/pages/choose_country_layout.dart b/lib/features/countrySelection/presentation/pages/choose_country_layout.dart index 32baa8c..9160d4e 100644 --- a/lib/features/countrySelection/presentation/pages/choose_country_layout.dart +++ b/lib/features/countrySelection/presentation/pages/choose_country_layout.dart @@ -13,7 +13,8 @@ class ChooseCountryLayout extends StatelessWidget { @override Widget build(BuildContext context) { - return Scaffold(backgroundColor: Colors.white, + return Scaffold( + backgroundColor: AppColor.plainWhite, bottomNavigationBar: Container( margin: const EdgeInsets.symmetric( horizontal: 16, diff --git a/lib/features/forgotPassword/presentation/pages/restore_password_layout.dart b/lib/features/forgotPassword/presentation/pages/restore_password_layout.dart index 3a13c5d..1ced46e 100644 --- a/lib/features/forgotPassword/presentation/pages/restore_password_layout.dart +++ b/lib/features/forgotPassword/presentation/pages/restore_password_layout.dart @@ -1,6 +1,7 @@ import 'package:flutter/material.dart'; import 'package:gap/gap.dart'; +import '../../../../core/styles/app_color.dart'; import '../widgets/restore_password_bottom_section.dart'; import '../widgets/restore_password_form.dart'; import '../widgets/restore_password_top_section.dart'; @@ -11,15 +12,14 @@ class RestorePasswordLayout extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: Colors.white, - body: ListView( - children: const [ - RestorePasswordTopSection(), - RestorePasswordForm(), - Gap(150), - RestorePasswordBottomSection(), - ], - ), - ); + backgroundColor: AppColor.plainWhite, + body: ListView( + children: const [ + RestorePasswordTopSection(), + RestorePasswordForm(), + Gap(150), + RestorePasswordBottomSection(), + ], + )); } } diff --git a/lib/features/forgotPassword/presentation/pages/restore_password_phone_verification_layout.dart b/lib/features/forgotPassword/presentation/pages/restore_password_phone_verification_layout.dart index 2975744..968fbc6 100644 --- a/lib/features/forgotPassword/presentation/pages/restore_password_phone_verification_layout.dart +++ b/lib/features/forgotPassword/presentation/pages/restore_password_phone_verification_layout.dart @@ -3,6 +3,7 @@ import 'package:gap/gap.dart'; import 'package:tanami_app/features/forgotPassword/presentation/widgets/restore_password_phone_verification_bottom_section.dart'; import 'package:tanami_app/features/forgotPassword/presentation/widgets/restore_password_phone_verification_top_section.dart'; +import '../../../../core/styles/app_color.dart'; import '../widgets/restore_password_phone_verification_form.dart'; class RestorePasswordPhoneVerificationLayout extends StatelessWidget { @@ -11,15 +12,14 @@ class RestorePasswordPhoneVerificationLayout extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: Colors.white, - body: ListView( - children: const [ - RestorePasswordPhoneVerificationTopSection(), - RestorePasswordPhoneVerificationForm(), - Gap(150), - RestorePasswordPhoneVerificationBottomSection(), - ], - ), - ); + backgroundColor: AppColor.plainWhite, + body: ListView( + children: const [ + RestorePasswordPhoneVerificationTopSection(), + RestorePasswordPhoneVerificationForm(), + Gap(150), + RestorePasswordPhoneVerificationBottomSection(), + ], + )); } } diff --git a/lib/features/languageChange/presentation/pages/language_change_layout.dart b/lib/features/languageChange/presentation/pages/language_change_layout.dart index ee28a97..7b9a2b9 100644 --- a/lib/features/languageChange/presentation/pages/language_change_layout.dart +++ b/lib/features/languageChange/presentation/pages/language_change_layout.dart @@ -6,6 +6,7 @@ import 'package:tanami_app/core/styles/app_images.dart'; import 'package:tanami_app/core/styles/app_text.dart'; import 'package:tanami_app/shared/components/appbar_widget.dart'; import 'package:tanami_app/shared/components/text_widget.dart'; + import '../widgets/bottom_section.dart'; import '../widgets/language_change_list.dart'; @@ -15,7 +16,7 @@ class LanguageChangeLayout extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: Colors.white, + backgroundColor: AppColor.plainWhite, bottomNavigationBar: bottomSection(), appBar: const AppBarWidget( height: 75, diff --git a/lib/features/login/presentation/pages/login_layout.dart b/lib/features/login/presentation/pages/login_layout.dart index 2062281..e1bed9a 100644 --- a/lib/features/login/presentation/pages/login_layout.dart +++ b/lib/features/login/presentation/pages/login_layout.dart @@ -2,6 +2,7 @@ import 'package:flutter/material.dart'; import 'package:tanami_app/core/styles/app_color.dart'; import 'package:tanami_app/features/login/presentation/widgets/login_form.dart'; +import '../../../../core/styles/app_color.dart'; import '../widgets/bottom_section.dart'; import '../widgets/top_section.dart'; diff --git a/lib/shared/components/common_bottom_navigation.dart b/lib/shared/components/common_bottom_navigation.dart index fd916ed..2cdc7f0 100644 --- a/lib/shared/components/common_bottom_navigation.dart +++ b/lib/shared/components/common_bottom_navigation.dart @@ -10,6 +10,7 @@ import 'bloc/bottom_nav_bar/bottom_navigation_event.dart'; Widget bottomnavigationbar( BuildContext context, selectedIndex, PageController pageController) { return BottomNavigationBar( + backgroundColor: AppColor.plainWhite, type: BottomNavigationBarType.fixed, showUnselectedLabels: true, selectedItemColor: AppColor.selectedItemColor,