bugs solved
This commit is contained in:
@@ -135,8 +135,10 @@ class InvestPayMethodSection extends StatelessWidget {
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(12),
|
||||
child: TextWidget().text14W500(
|
||||
"condimentum ac, vestibulum eu nisl.torquent per conubia nostra, per inceptos himenaeos.",
|
||||
clr: AppColor.textLabelColor),
|
||||
"condimentum ac, vestibulum eu nisl.torquent per conubia nostra, per inceptos himenaeos.",
|
||||
clr: AppColor.textLabelColor,
|
||||
txtAlign: TextAlign.start,
|
||||
),
|
||||
),
|
||||
const Gap(12),
|
||||
],
|
||||
|
||||
@@ -3,7 +3,6 @@ import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:tanami_app/features/MainScreens/Portfolio/presentation/pages/portfolio_details_layout.dart';
|
||||
|
||||
import '../../../../../core/styles/app_color.dart';
|
||||
import '../../../../../shared/components/appbar_widget.dart';
|
||||
import '../bloc/carousel/carousel_bloc.dart';
|
||||
|
||||
class DetailsScreen extends StatelessWidget {
|
||||
@@ -12,19 +11,21 @@ class DetailsScreen extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
appBar: const AppBarWidget(
|
||||
height: 45,
|
||||
titleTxt: "",
|
||||
),
|
||||
body: MultiBlocProvider(
|
||||
providers: [
|
||||
BlocProvider(
|
||||
// Create an instance of the OnboardingBloc
|
||||
create: (context) => CarouselBloc(),
|
||||
),
|
||||
],
|
||||
child: const PortfolioDetailsLayout(),
|
||||
));
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
appBar: AppBar(
|
||||
elevation: 0,
|
||||
scrolledUnderElevation: 0,
|
||||
backgroundColor: Colors.white,
|
||||
),
|
||||
body: MultiBlocProvider(
|
||||
providers: [
|
||||
BlocProvider(
|
||||
// Create an instance of the OnboardingBloc
|
||||
create: (context) => CarouselBloc(),
|
||||
),
|
||||
],
|
||||
child: const PortfolioDetailsLayout(),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@ class PortfolioLayout extends StatelessWidget {
|
||||
SliverAppBar(
|
||||
elevation: 0,
|
||||
scrolledUnderElevation: 0,
|
||||
expandedHeight: 230.0,
|
||||
expandedHeight: 230.h,
|
||||
automaticallyImplyLeading: false,
|
||||
snap: false,
|
||||
pinned: true,
|
||||
@@ -53,11 +53,12 @@ class PortfolioLayout extends StatelessWidget {
|
||||
),
|
||||
),
|
||||
background: Stack(
|
||||
fit: StackFit.expand,
|
||||
// fit: StackFit.expand,
|
||||
children: [
|
||||
Image.asset(
|
||||
AppImages.portfolioBg,
|
||||
fit: BoxFit.cover,
|
||||
alignment: Alignment.topCenter,
|
||||
),
|
||||
Padding(
|
||||
padding: const EdgeInsets.only(left: 40.0),
|
||||
|
||||
@@ -9,7 +9,6 @@ import '../../../../../core/styles/app_color.dart';
|
||||
import '../../../../../core/styles/app_text.dart';
|
||||
import '../../../../../shared/components/button_widget.dart';
|
||||
import '../../../../../shared/components/log_out_dialog.dart';
|
||||
import '../../../../../shared/components/text_widget.dart';
|
||||
|
||||
class SettingsBottomSection extends StatelessWidget {
|
||||
const SettingsBottomSection({super.key});
|
||||
@@ -29,22 +28,34 @@ class SettingsBottomSection extends StatelessWidget {
|
||||
txtClr: AppColor.plainWhite,
|
||||
function: () {
|
||||
buildprofilelogoutdialog(context);
|
||||
|
||||
},
|
||||
text: AppText.logoutText,
|
||||
clr: AppColor.primaryColor2,
|
||||
),
|
||||
),
|
||||
const Gap(5),
|
||||
ButtonWidget().textBtn(
|
||||
// ButtonWidget().textBtn(
|
||||
// function: () {
|
||||
// goRouter.pushNamed(RouteName.deleteAccountScreen);
|
||||
// },
|
||||
// text: TextWidget().text14W700(
|
||||
// AppText.deleteAccountText,
|
||||
// clr: AppColor.hintTextColor,
|
||||
// textDecoration: TextDecoration.underline,
|
||||
// )),
|
||||
Container(
|
||||
width: 1.sw,
|
||||
height: 56.h,
|
||||
child: ButtonWidget().textBorderBtn(
|
||||
borderClr: AppColor.txtBorderColor,
|
||||
txtClr: AppColor.hintTextColor,
|
||||
function: () {
|
||||
goRouter.pushNamed(RouteName.deleteAccountScreen);
|
||||
},
|
||||
text: TextWidget().text14W700(
|
||||
AppText.deleteAccountText,
|
||||
clr: AppColor.hintTextColor,
|
||||
textDecoration: TextDecoration.underline,
|
||||
)),
|
||||
text: AppText.deleteAccountText,
|
||||
clr: AppColor.plainWhite,
|
||||
),
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
@@ -42,361 +42,365 @@ class _DepositScreenState extends State<DepositScreen> {
|
||||
),
|
||||
),
|
||||
),
|
||||
body: Padding(
|
||||
padding: const EdgeInsets.all(18.0),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
RichText(
|
||||
text: TextSpan(
|
||||
children: [
|
||||
TextSpan(
|
||||
text: AppText.balance,
|
||||
style: GoogleFonts.dmSans(
|
||||
color: const Color(0xFF888888),
|
||||
fontSize: 12.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
body: SingleChildScrollView(
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.all(18.0),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
RichText(
|
||||
text: TextSpan(
|
||||
children: [
|
||||
TextSpan(
|
||||
text: AppText.balance,
|
||||
style: GoogleFonts.dmSans(
|
||||
color: const Color(0xFF888888),
|
||||
fontSize: 12.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
),
|
||||
),
|
||||
TextSpan(
|
||||
text: 'SAR 178,000 ',
|
||||
style: GoogleFonts.dmSans(
|
||||
color: const Color(0xFF191B1E),
|
||||
fontSize: 14.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
TextSpan(
|
||||
text: 'SAR 178,000 ',
|
||||
style: GoogleFonts.dmSans(
|
||||
color: const Color(0xFF191B1E),
|
||||
fontSize: 14.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
SizedBox(
|
||||
height: 20.h,
|
||||
),
|
||||
Container(
|
||||
width: double.infinity,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(22.r),
|
||||
color: Colors.white,
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
color: Colors.black.withOpacity(0.15),
|
||||
spreadRadius: 2,
|
||||
blurRadius: 10,
|
||||
offset: const Offset(0, 5),
|
||||
),
|
||||
],
|
||||
SizedBox(
|
||||
height: 20.h,
|
||||
),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(12.0),
|
||||
child: Row(
|
||||
children: [
|
||||
Container(
|
||||
decoration: const BoxDecoration(
|
||||
shape: BoxShape.circle, color: Color(0xFF0FA4A4)),
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.all(12.0),
|
||||
child: Image.asset(
|
||||
'assets/images/wallet_screen/deposit_list.png',
|
||||
height: 36.h,
|
||||
),
|
||||
),
|
||||
),
|
||||
SizedBox(
|
||||
width: 12.w,
|
||||
),
|
||||
Text(
|
||||
AppText.depositTitle,
|
||||
style: GoogleFonts.dmSans(
|
||||
color: Colors.black,
|
||||
fontSize: 17.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
),
|
||||
],
|
||||
Container(
|
||||
width: double.infinity,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(22.r),
|
||||
color: Colors.white,
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
color: Colors.black.withOpacity(0.15),
|
||||
spreadRadius: 2,
|
||||
blurRadius: 10,
|
||||
offset: const Offset(0, 5),
|
||||
),
|
||||
),
|
||||
Container(
|
||||
decoration: BoxDecoration(
|
||||
color: const Color(0xFFD8D8D8).withOpacity(0.4),
|
||||
),
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
vertical: 16.0, horizontal: 12.0),
|
||||
],
|
||||
),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(12.0),
|
||||
child: Row(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
Text(
|
||||
'SAR',
|
||||
style: GoogleFonts.dmSans(
|
||||
color: const Color(0xFF363636),
|
||||
fontSize: 15.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
Container(
|
||||
decoration: const BoxDecoration(
|
||||
shape: BoxShape.circle,
|
||||
color: Color(0xFF0FA4A4)),
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.all(12.0),
|
||||
child: Image.asset(
|
||||
'assets/images/wallet_screen/deposit_list.png',
|
||||
height: 36.h,
|
||||
),
|
||||
),
|
||||
),
|
||||
SizedBox(
|
||||
width: 12.w,
|
||||
),
|
||||
SizedBox(
|
||||
width: 280.w,
|
||||
child: TextFormField(
|
||||
cursorColor: Colors.black,
|
||||
keyboardType: TextInputType.number,
|
||||
textAlign: TextAlign.center,
|
||||
Text(
|
||||
AppText.depositTitle,
|
||||
style: GoogleFonts.dmSans(
|
||||
color: Colors.black,
|
||||
fontSize: 17.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
Container(
|
||||
decoration: BoxDecoration(
|
||||
color: const Color(0xFFD8D8D8).withOpacity(0.4),
|
||||
),
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
vertical: 16.0, horizontal: 12.0),
|
||||
child: Row(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
Text(
|
||||
'SAR',
|
||||
style: GoogleFonts.dmSans(
|
||||
color: Colors.black,
|
||||
fontSize: 16.sp,
|
||||
fontWeight: FontWeight.w400,
|
||||
color: const Color(0xFF363636),
|
||||
fontSize: 15.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
decoration: InputDecoration(
|
||||
hintText: '1000',
|
||||
hintStyle: GoogleFonts.dmSans(
|
||||
color: const Color(0xFFC6C6C6),
|
||||
),
|
||||
SizedBox(
|
||||
width: 12.w,
|
||||
),
|
||||
SizedBox(
|
||||
width: 280.w,
|
||||
child: TextFormField(
|
||||
cursorColor: Colors.black,
|
||||
keyboardType: TextInputType.number,
|
||||
textAlign: TextAlign.center,
|
||||
style: GoogleFonts.dmSans(
|
||||
color: Colors.black,
|
||||
fontSize: 16.sp,
|
||||
fontWeight: FontWeight.w400,
|
||||
),
|
||||
labelStyle:
|
||||
const TextStyle(color: Colors.black),
|
||||
contentPadding: const EdgeInsets.symmetric(
|
||||
vertical: 15, horizontal: 10),
|
||||
filled: true,
|
||||
fillColor: Colors.white,
|
||||
border: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
borderSide: const BorderSide(
|
||||
color: Colors.white, width: 1),
|
||||
),
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
borderSide: const BorderSide(
|
||||
color: Colors.white, width: 1),
|
||||
),
|
||||
disabledBorder: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
borderSide: const BorderSide(
|
||||
color: Colors.white, width: 1),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
borderSide: const BorderSide(
|
||||
color: Colors.white, width: 1),
|
||||
),
|
||||
errorBorder: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
borderSide: const BorderSide(
|
||||
color: Colors.red, width: 1),
|
||||
),
|
||||
focusedErrorBorder: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
borderSide: const BorderSide(
|
||||
color: Colors.red, width: 1),
|
||||
decoration: InputDecoration(
|
||||
hintText: '1000',
|
||||
hintStyle: GoogleFonts.dmSans(
|
||||
color: const Color(0xFFC6C6C6),
|
||||
fontSize: 16.sp,
|
||||
fontWeight: FontWeight.w400,
|
||||
),
|
||||
labelStyle:
|
||||
const TextStyle(color: Colors.black),
|
||||
contentPadding: const EdgeInsets.symmetric(
|
||||
vertical: 15, horizontal: 10),
|
||||
filled: true,
|
||||
fillColor: Colors.white,
|
||||
border: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
borderSide: const BorderSide(
|
||||
color: Colors.white, width: 1),
|
||||
),
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
borderSide: const BorderSide(
|
||||
color: Colors.white, width: 1),
|
||||
),
|
||||
disabledBorder: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
borderSide: const BorderSide(
|
||||
color: Colors.white, width: 1),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
borderSide: const BorderSide(
|
||||
color: Colors.white, width: 1),
|
||||
),
|
||||
errorBorder: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
borderSide: const BorderSide(
|
||||
color: Colors.red, width: 1),
|
||||
),
|
||||
focusedErrorBorder: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
borderSide: const BorderSide(
|
||||
color: Colors.red, width: 1),
|
||||
),
|
||||
),
|
||||
inputFormatters: [
|
||||
FilteringTextInputFormatter.deny(
|
||||
RegExp(r'\s')),
|
||||
LengthLimitingTextInputFormatter(20),
|
||||
],
|
||||
),
|
||||
inputFormatters: [
|
||||
FilteringTextInputFormatter.deny(RegExp(r'\s')),
|
||||
LengthLimitingTextInputFormatter(20),
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
Container(
|
||||
decoration: BoxDecoration(
|
||||
color: const Color(0xFFD8D8D8).withOpacity(0.4),
|
||||
borderRadius: BorderRadius.only(
|
||||
bottomLeft: Radius.circular(22.r),
|
||||
bottomRight: Radius.circular(22.r),
|
||||
),
|
||||
border: const Border(
|
||||
top: BorderSide(color: Color(0xFFD8D8D8), width: 2.0),
|
||||
),
|
||||
),
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
vertical: 16.0, horizontal: 12.0),
|
||||
child: Column(
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Text(
|
||||
'Fee',
|
||||
style: GoogleFonts.dmSans(
|
||||
color: const Color(0xFF535353),
|
||||
fontSize: 14.sp,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
),
|
||||
Text(
|
||||
'3%',
|
||||
style: GoogleFonts.dmSans(
|
||||
color: Colors.black,
|
||||
fontSize: 14.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Text(
|
||||
'Total Deposit amount:',
|
||||
style: GoogleFonts.dmSans(
|
||||
color: const Color(0xFF535353),
|
||||
fontSize: 14.sp,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
),
|
||||
Text(
|
||||
'SAR 253',
|
||||
style: GoogleFonts.dmSans(
|
||||
color: Colors.black,
|
||||
fontSize: 14.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
const Gap(30),
|
||||
TextWidget().text15W700(AppText.choosePaymentMethodText,
|
||||
clr: AppColor.plainBlack),
|
||||
const Gap(16),
|
||||
InkWell(
|
||||
onTap: () {
|
||||
radioBloc.add(const RadioSelected(0));
|
||||
},
|
||||
child: Container(
|
||||
padding: const EdgeInsets.all(12),
|
||||
decoration: ShapeDecoration(
|
||||
color: Colors.white,
|
||||
shape: RoundedRectangleBorder(
|
||||
side: const BorderSide(color: Color(0xFFD8D8D8)),
|
||||
borderRadius: BorderRadius.circular(22),
|
||||
),
|
||||
shadows: const [
|
||||
BoxShadow(
|
||||
color: Color(0x14000000),
|
||||
blurRadius: 8,
|
||||
offset: Offset(-2, -2),
|
||||
spreadRadius: 0.50,
|
||||
),
|
||||
BoxShadow(
|
||||
color: Color(0x3391978E),
|
||||
blurRadius: 8,
|
||||
offset: Offset(2, 2),
|
||||
spreadRadius: 1,
|
||||
)
|
||||
],
|
||||
),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
Radio<int>(
|
||||
activeColor: AppColor.radioActiveColor,
|
||||
value: 0,
|
||||
groupValue: selectedIndex,
|
||||
onChanged: (int? value) {
|
||||
if (value != null) {
|
||||
radioBloc.add(RadioSelected(value));
|
||||
}
|
||||
},
|
||||
),
|
||||
SvgPicture.asset(AppImages.walletIcon),
|
||||
const Gap(5),
|
||||
TextWidget().text14W700(AppText.bankTransfer,
|
||||
clr: AppColor.textLabelColor),
|
||||
],
|
||||
),
|
||||
TextWidget().text14W500(
|
||||
"Directly transfer funds from your bank account into your Tanami wallet.",
|
||||
clr: AppColor.textLabelColor,
|
||||
txtAlign: TextAlign.left,
|
||||
),
|
||||
const Gap(12),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
const Gap(12),
|
||||
InkWell(
|
||||
onTap: () {
|
||||
radioBloc.add(const RadioSelected(1));
|
||||
},
|
||||
child: Container(
|
||||
padding: const EdgeInsets.all(12),
|
||||
decoration: ShapeDecoration(
|
||||
color: Colors.white,
|
||||
shape: RoundedRectangleBorder(
|
||||
side: const BorderSide(color: Color(0xFFD8D8D8)),
|
||||
borderRadius: BorderRadius.circular(22),
|
||||
),
|
||||
shadows: const [
|
||||
BoxShadow(
|
||||
color: Color(0x14000000),
|
||||
blurRadius: 8,
|
||||
offset: Offset(-2, -2),
|
||||
spreadRadius: 0.2,
|
||||
),
|
||||
BoxShadow(
|
||||
color: Color(0x3391978E),
|
||||
blurRadius: 8,
|
||||
offset: Offset(2, 2),
|
||||
spreadRadius: 1,
|
||||
)
|
||||
],
|
||||
),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
Radio<int>(
|
||||
activeColor: AppColor.radioActiveColor,
|
||||
value: 1,
|
||||
groupValue: selectedIndex,
|
||||
onChanged: (int? value) {
|
||||
if (value != null) {
|
||||
radioBloc.add(RadioSelected(value));
|
||||
}
|
||||
},
|
||||
),
|
||||
SvgPicture.asset(AppImages.applePayIcon),
|
||||
const Gap(5),
|
||||
TextWidget().text14W700(AppText.applePayText,
|
||||
clr: AppColor.textLabelColor),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
TextWidget().text14W500(
|
||||
AppText.instantTransferFundsApplePayText,
|
||||
clr: AppColor.textLabelColor,
|
||||
txtAlign: TextAlign.left,
|
||||
Container(
|
||||
decoration: BoxDecoration(
|
||||
color: const Color(0xFFD8D8D8).withOpacity(0.4),
|
||||
borderRadius: BorderRadius.only(
|
||||
bottomLeft: Radius.circular(22.r),
|
||||
bottomRight: Radius.circular(22.r),
|
||||
),
|
||||
border: const Border(
|
||||
top: BorderSide(color: Color(0xFFD8D8D8), width: 2.0),
|
||||
),
|
||||
),
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
vertical: 16.0, horizontal: 12.0),
|
||||
child: Column(
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Text(
|
||||
'Fee',
|
||||
style: GoogleFonts.dmSans(
|
||||
color: const Color(0xFF535353),
|
||||
fontSize: 14.sp,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
),
|
||||
Text(
|
||||
'3%',
|
||||
style: GoogleFonts.dmSans(
|
||||
color: Colors.black,
|
||||
fontSize: 14.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Text(
|
||||
'Total Deposit amount:',
|
||||
style: GoogleFonts.dmSans(
|
||||
color: const Color(0xFF535353),
|
||||
fontSize: 14.sp,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
),
|
||||
Text(
|
||||
'SAR 253',
|
||||
style: GoogleFonts.dmSans(
|
||||
color: Colors.black,
|
||||
fontSize: 14.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
const Gap(12),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
const Gap(16),
|
||||
],
|
||||
const Gap(30),
|
||||
TextWidget().text15W700(AppText.choosePaymentMethodText,
|
||||
clr: AppColor.plainBlack),
|
||||
const Gap(16),
|
||||
InkWell(
|
||||
onTap: () {
|
||||
radioBloc.add(const RadioSelected(0));
|
||||
},
|
||||
child: Container(
|
||||
padding: const EdgeInsets.all(12),
|
||||
decoration: ShapeDecoration(
|
||||
color: Colors.white,
|
||||
shape: RoundedRectangleBorder(
|
||||
side: const BorderSide(color: Color(0xFFD8D8D8)),
|
||||
borderRadius: BorderRadius.circular(22),
|
||||
),
|
||||
shadows: const [
|
||||
BoxShadow(
|
||||
color: Color(0x14000000),
|
||||
blurRadius: 8,
|
||||
offset: Offset(-2, -2),
|
||||
spreadRadius: 0.50,
|
||||
),
|
||||
BoxShadow(
|
||||
color: Color(0x3391978E),
|
||||
blurRadius: 8,
|
||||
offset: Offset(2, 2),
|
||||
spreadRadius: 1,
|
||||
)
|
||||
],
|
||||
),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
Radio<int>(
|
||||
activeColor: AppColor.radioActiveColor,
|
||||
value: 0,
|
||||
groupValue: selectedIndex,
|
||||
onChanged: (int? value) {
|
||||
if (value != null) {
|
||||
radioBloc.add(RadioSelected(value));
|
||||
}
|
||||
},
|
||||
),
|
||||
SvgPicture.asset(AppImages.walletIcon),
|
||||
const Gap(5),
|
||||
TextWidget().text14W700(AppText.bankTransfer,
|
||||
clr: AppColor.textLabelColor),
|
||||
],
|
||||
),
|
||||
TextWidget().text14W500(
|
||||
"Directly transfer funds from your bank account into your Tanami wallet.",
|
||||
clr: AppColor.textLabelColor,
|
||||
txtAlign: TextAlign.left,
|
||||
),
|
||||
const Gap(12),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
const Gap(12),
|
||||
InkWell(
|
||||
onTap: () {
|
||||
radioBloc.add(const RadioSelected(1));
|
||||
},
|
||||
child: Container(
|
||||
padding: const EdgeInsets.all(12),
|
||||
decoration: ShapeDecoration(
|
||||
color: Colors.white,
|
||||
shape: RoundedRectangleBorder(
|
||||
side: const BorderSide(color: Color(0xFFD8D8D8)),
|
||||
borderRadius: BorderRadius.circular(22),
|
||||
),
|
||||
shadows: const [
|
||||
BoxShadow(
|
||||
color: Color(0x14000000),
|
||||
blurRadius: 8,
|
||||
offset: Offset(-2, -2),
|
||||
spreadRadius: 0.2,
|
||||
),
|
||||
BoxShadow(
|
||||
color: Color(0x3391978E),
|
||||
blurRadius: 8,
|
||||
offset: Offset(2, 2),
|
||||
spreadRadius: 1,
|
||||
)
|
||||
],
|
||||
),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
Radio<int>(
|
||||
activeColor: AppColor.radioActiveColor,
|
||||
value: 1,
|
||||
groupValue: selectedIndex,
|
||||
onChanged: (int? value) {
|
||||
if (value != null) {
|
||||
radioBloc.add(RadioSelected(value));
|
||||
}
|
||||
},
|
||||
),
|
||||
SvgPicture.asset(AppImages.applePayIcon),
|
||||
const Gap(5),
|
||||
TextWidget().text14W700(AppText.applePayText,
|
||||
clr: AppColor.textLabelColor),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
TextWidget().text14W500(
|
||||
AppText.instantTransferFundsApplePayText,
|
||||
clr: AppColor.textLabelColor,
|
||||
txtAlign: TextAlign.left,
|
||||
),
|
||||
const Gap(12),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
const Gap(16),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
bottomNavigationBar: GestureDetector(
|
||||
@@ -404,8 +408,8 @@ class _DepositScreenState extends State<DepositScreen> {
|
||||
goRouter.pushNamed(RouteName.depositPreview);
|
||||
},
|
||||
child: Container(
|
||||
margin: const EdgeInsets.all(12.0),
|
||||
height: 56.h,
|
||||
margin: const EdgeInsets.all(10.0),
|
||||
height: 65.h,
|
||||
width: double.infinity,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(22.r),
|
||||
|
||||
@@ -376,8 +376,8 @@ class _DepositPreviewState extends State<DepositPreview> {
|
||||
);
|
||||
},
|
||||
child: Container(
|
||||
margin: const EdgeInsets.all(12.0),
|
||||
height: 56.h,
|
||||
margin: const EdgeInsets.all(10.0),
|
||||
height: 65.h,
|
||||
width: double.infinity,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(22.r),
|
||||
|
||||
@@ -103,7 +103,7 @@ class _FilterScreenState extends State<FilterScreen> {
|
||||
),
|
||||
const Gap(3),
|
||||
Text(
|
||||
AppText.date2,
|
||||
AppText.date2,
|
||||
style: GoogleFonts.dmSans(
|
||||
color: const Color(0xFF272727),
|
||||
fontSize: 14.sp,
|
||||
@@ -138,7 +138,7 @@ class _FilterScreenState extends State<FilterScreen> {
|
||||
});
|
||||
},
|
||||
child: Container(
|
||||
height: 36.h,
|
||||
height: 40.h,
|
||||
padding: const EdgeInsets.symmetric(
|
||||
vertical: 8, horizontal: 16),
|
||||
decoration: BoxDecoration(
|
||||
@@ -155,7 +155,7 @@ class _FilterScreenState extends State<FilterScreen> {
|
||||
actions[index],
|
||||
style: GoogleFonts.dmSans(
|
||||
color: (selected[index] == true)
|
||||
? Color(0xFF0167B7)
|
||||
? const Color(0xFF0167B7)
|
||||
: const Color(0xFF272727),
|
||||
fontSize: 14.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
@@ -191,7 +191,7 @@ class _FilterScreenState extends State<FilterScreen> {
|
||||
),
|
||||
const Gap(3),
|
||||
Text(
|
||||
AppText.all,
|
||||
AppText.all,
|
||||
style: GoogleFonts.dmSans(
|
||||
color: const Color(0xFF272727),
|
||||
fontSize: 14.sp,
|
||||
@@ -249,8 +249,8 @@ class _FilterScreenState extends State<FilterScreen> {
|
||||
Navigator.pop(context);
|
||||
},
|
||||
child: Container(
|
||||
margin: const EdgeInsets.all(12.0),
|
||||
height: 56.h,
|
||||
margin: const EdgeInsets.all(10.0),
|
||||
height: 65.h,
|
||||
width: double.infinity,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(22.r),
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:google_fonts/google_fonts.dart';
|
||||
import 'package:tanami_app/core/routes/routes.dart';
|
||||
@@ -286,7 +287,7 @@ class WalletDetails extends StatelessWidget {
|
||||
: TicketWidget(
|
||||
height: (type == 'Investment' ||
|
||||
type == "confirm-investment")
|
||||
? 320.h
|
||||
? 325.h
|
||||
: double.infinity,
|
||||
isCornerRounded: true,
|
||||
width: double.infinity,
|
||||
@@ -294,7 +295,7 @@ class WalletDetails extends StatelessWidget {
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.fromLTRB(20.0, 30, 20, 10),
|
||||
child: Column(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
// mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
@@ -365,7 +366,7 @@ class WalletDetails extends StatelessWidget {
|
||||
SizedBox(
|
||||
height: 35.h,
|
||||
),
|
||||
_buildBody(),
|
||||
Expanded(child: _buildBody()),
|
||||
],
|
||||
),
|
||||
),
|
||||
@@ -480,7 +481,7 @@ class WalletDetails extends StatelessWidget {
|
||||
return Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 8.0),
|
||||
child: ListView.builder(
|
||||
physics: const NeverScrollableScrollPhysics(),
|
||||
physics: const AlwaysScrollableScrollPhysics(),
|
||||
shrinkWrap: true,
|
||||
itemCount: titles.length,
|
||||
itemBuilder: (context, index) {
|
||||
|
||||
@@ -280,7 +280,7 @@ class _WalletScreenState extends State<WalletScreen> {
|
||||
});
|
||||
},
|
||||
child: Container(
|
||||
height: 90.h,
|
||||
height: 92.h,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(22.r),
|
||||
color: const Color(0xFFF6F6F6),
|
||||
|
||||
@@ -134,7 +134,7 @@ class _WithdrawalConfirmationState extends State<WithdrawalConfirmation> {
|
||||
),
|
||||
child: TicketWidget(
|
||||
isCornerRounded: true,
|
||||
height: 720.h,
|
||||
height: MediaQuery.of(context).size.height - 75,
|
||||
width: double.infinity,
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.fromLTRB(30.0, 30, 30, 10),
|
||||
@@ -217,6 +217,9 @@ class _WithdrawalConfirmationState extends State<WithdrawalConfirmation> {
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
),
|
||||
SizedBox(
|
||||
width: 12.w,
|
||||
),
|
||||
Expanded(
|
||||
child: Text(
|
||||
values[index],
|
||||
@@ -255,8 +258,8 @@ class _WithdrawalConfirmationState extends State<WithdrawalConfirmation> {
|
||||
goRouter.goNamed(RouteName.mainScreen);
|
||||
},
|
||||
child: Container(
|
||||
margin: const EdgeInsets.all(12.0),
|
||||
height: 56.h,
|
||||
margin: const EdgeInsets.all(10.0),
|
||||
height: 65.h,
|
||||
width: double.infinity,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(22.r),
|
||||
|
||||
@@ -319,8 +319,8 @@ class _WithdrawalPreviewState extends State<WithdrawalPreview> {
|
||||
});
|
||||
},
|
||||
child: Container(
|
||||
margin: const EdgeInsets.all(12.0),
|
||||
height: 56.h,
|
||||
margin: const EdgeInsets.all(10.0),
|
||||
height: 65.h,
|
||||
width: double.infinity,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(22.r),
|
||||
|
||||
@@ -412,8 +412,8 @@ class _WithdrawalScreenState extends State<WithdrawalScreen> {
|
||||
goRouter.pushNamed(RouteName.withdrawalPreview);
|
||||
},
|
||||
child: Container(
|
||||
margin: const EdgeInsets.all(12.0),
|
||||
height: 56.h,
|
||||
margin: const EdgeInsets.all(10.0),
|
||||
height: 65.h,
|
||||
width: double.infinity,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(22.r),
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:gap/gap.dart';
|
||||
import 'package:tanami_app/core/styles/app_color.dart';
|
||||
import 'package:tanami_app/features/deleteAccount/presentation/widgets/top_section.dart';
|
||||
|
||||
import '../widgets/bottom_section.dart';
|
||||
@@ -11,16 +11,17 @@ class DeleteAccountLayout extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
resizeToAvoidBottomInset: true,
|
||||
body: SingleChildScrollView(
|
||||
child: Column(
|
||||
children: [
|
||||
const TopSection(),
|
||||
const FormSection(),
|
||||
const Gap(30),
|
||||
bottomSection(context),
|
||||
],
|
||||
),
|
||||
));
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
resizeToAvoidBottomInset: true,
|
||||
body: const SingleChildScrollView(
|
||||
child: Column(
|
||||
children: [
|
||||
TopSection(),
|
||||
FormSection(),
|
||||
],
|
||||
),
|
||||
),
|
||||
bottomNavigationBar: bottomSection(context),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,7 +11,6 @@ import '../../../../shared/components/bloc/checkbox/checkbox_event.dart';
|
||||
import '../../../../shared/components/bloc/checkbox/checkbox_state.dart';
|
||||
import '../../../../shared/components/button_widget.dart';
|
||||
import '../../../../shared/components/loader.dart';
|
||||
import '../../../../shared/components/text_widget.dart';
|
||||
import '../../../../shared/components/toast_message.dart';
|
||||
import '../bloc/delete_account_bloc.dart';
|
||||
import '../bloc/delete_account_event.dart';
|
||||
@@ -63,7 +62,31 @@ Widget bottomSection(BuildContext context) {
|
||||
}
|
||||
},
|
||||
builder: (context, state) {
|
||||
return ButtonWidget().textBtn(
|
||||
// return ButtonWidget().textBtn(
|
||||
// function: () {
|
||||
// if (deleteAccountBloc.formKey.currentState!.validate()) {
|
||||
// context.read<CheckboxBloc>().add(ValidateCheckbox());
|
||||
// if (context.read<CheckboxBloc>().state is CheckboxChecked) {
|
||||
// context.read<DeleteAccountBloc>().add(
|
||||
// DeleteAccountSubmitted(
|
||||
// context
|
||||
// .read<DeleteAccountBloc>()
|
||||
// .descriptionTextField
|
||||
// .text,
|
||||
// ),
|
||||
// );
|
||||
// }
|
||||
// }
|
||||
// },
|
||||
// text: TextWidget().text14W700(AppText.deleteAccountText,
|
||||
// clr: AppColor.hintTextColor,
|
||||
// textDecoration: TextDecoration.underline));
|
||||
return Container(
|
||||
width: 1.sw,
|
||||
height: 56.h,
|
||||
child: ButtonWidget().textBorderBtn(
|
||||
borderClr: AppColor.txtBorderColor,
|
||||
txtClr: AppColor.hintTextColor,
|
||||
function: () {
|
||||
if (deleteAccountBloc.formKey.currentState!.validate()) {
|
||||
context.read<CheckboxBloc>().add(ValidateCheckbox());
|
||||
@@ -79,9 +102,10 @@ Widget bottomSection(BuildContext context) {
|
||||
}
|
||||
}
|
||||
},
|
||||
text: TextWidget().text14W700(AppText.deleteAccountText,
|
||||
clr: AppColor.hintTextColor,
|
||||
textDecoration: TextDecoration.underline));
|
||||
text: AppText.deleteAccountText,
|
||||
clr: AppColor.plainWhite,
|
||||
),
|
||||
);
|
||||
},
|
||||
),
|
||||
const Gap(20),
|
||||
|
||||
@@ -61,7 +61,9 @@ class FormSection extends StatelessWidget {
|
||||
"${state.charactersLeft} ${AppText.charactersLeft}",
|
||||
clr: AppColor.descriptionText);
|
||||
}
|
||||
return const Text('350 characters left');
|
||||
return TextWidget().text14W400(
|
||||
"350 ${AppText.charactersLeft}",
|
||||
clr: AppColor.descriptionText);
|
||||
},
|
||||
),
|
||||
],
|
||||
|
||||
@@ -16,7 +16,7 @@ class TopSection extends StatelessWidget {
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
const Gap(85),
|
||||
const Gap(35),
|
||||
Center(
|
||||
child: SvgPicture.asset(
|
||||
AppImages.welcomeLogo,
|
||||
|
||||
@@ -31,12 +31,12 @@ Widget buildOnboardingPage(
|
||||
height: index == 2 ? 380 : 450,
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
const Gap(15),
|
||||
const Gap(12),
|
||||
TextWidget().text22W700(
|
||||
title,
|
||||
clr: AppColor.primaryColor,
|
||||
),
|
||||
const Gap(18),
|
||||
const Gap(12),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
horizontal: 50,
|
||||
@@ -46,7 +46,7 @@ Widget buildOnboardingPage(
|
||||
clr: AppColor.darkGreyColor,
|
||||
),
|
||||
),
|
||||
const Gap(30),
|
||||
const Gap(20),
|
||||
welcomeIndicator(pageController),
|
||||
if (isLastPage) const LoginSignUpButton(),
|
||||
],
|
||||
|
||||
@@ -15,7 +15,7 @@ class LoginSignUpButton extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Padding(
|
||||
padding: const EdgeInsets.symmetric(vertical: 20.0),
|
||||
padding: const EdgeInsets.only(top: 20.0),
|
||||
child: Column(
|
||||
children: [
|
||||
Container(
|
||||
|
||||
Reference in New Issue
Block a user