feat: submit data bank account
This commit is contained in:
@@ -10,10 +10,14 @@ class PathAssets {
|
||||
static const String iconGoogle = 'assets/icons/icon-google.png';
|
||||
static const String icon1 = 'assets/icons/icon-1.png';
|
||||
static const String iconConnect = 'assets/icons/icon-connect.png';
|
||||
static const String iconPortofolioBonds = 'assets/icons/icon-portofolio-bonds.png';
|
||||
static const String iconPortofolioShares = 'assets/icons/icon-portofolio-shares.png';
|
||||
static const String iconPortofolioSharia = 'assets/icons/icon-portofolio-sharia.png';
|
||||
static const String iconPortofolioMoneyMarket = 'assets/icons/icon-portofolio-moneymarket.png';
|
||||
static const String iconPortofolioBonds =
|
||||
'assets/icons/icon-portofolio-bonds.png';
|
||||
static const String iconPortofolioShares =
|
||||
'assets/icons/icon-portofolio-shares.png';
|
||||
static const String iconPortofolioSharia =
|
||||
'assets/icons/icon-portofolio-sharia.png';
|
||||
static const String iconPortofolioMoneyMarket =
|
||||
'assets/icons/icon-portofolio-moneymarket.png';
|
||||
static const String iconShield = 'assets/icons/icon-shield.png';
|
||||
static const String iconFlag = 'assets/icons/icon-flag.png';
|
||||
static const String iconKtp1 = 'assets/icons/icon-ktp1.png';
|
||||
@@ -28,6 +32,7 @@ class PathAssets {
|
||||
static const String iconBalance = 'assets/icons/icon-balance.png';
|
||||
static const String iconMoneyReceive = 'assets/icons/icon-money-receive.png';
|
||||
static const String iconCoins = 'assets/icons/icon-coins.png';
|
||||
static const String iconQuestion = 'assets/icons/icon-question.png';
|
||||
|
||||
/// IMAGE
|
||||
static const String imgSplashLogo = 'assets/images/splash-logo.png';
|
||||
@@ -40,7 +45,8 @@ class PathAssets {
|
||||
static const String imgKtpCropped = 'assets/images/img-ktp-cropped.png';
|
||||
static const String imgKtpClear = 'assets/images/img-ktp-clear.png';
|
||||
static const String imgKtpBlur = 'assets/images/img-ktp-blur.png';
|
||||
static const String imgDashboardAccount = 'assets/images/img-dashboard-account.png';
|
||||
static const String imgDashboardAccount =
|
||||
'assets/images/img-dashboard-account.png';
|
||||
static const String imgCarousel = 'assets/images/img-carousel.png';
|
||||
static const String imgArticles = 'assets/images/img-articles.png';
|
||||
static const String imgProduct = 'assets/images/img-product.png';
|
||||
@@ -49,11 +55,15 @@ class PathAssets {
|
||||
static const String imgBgSelfie = 'assets/images/img-bg-photo-selfie.png';
|
||||
static const String imgDataReport = 'assets/images/img-data-report.png';
|
||||
static const String imgDataAnalysis = 'assets/images/img-data-analysis.png';
|
||||
static const String imgBusinessFailure = 'assets/images/img-business-failure.png';
|
||||
static const String imgBusinessFailure =
|
||||
'assets/images/img-business-failure.png';
|
||||
static const String imgLeader = 'assets/images/img-leader.png';
|
||||
static const String imgMoneyIncome = 'assets/images/img-money-income.png';
|
||||
static const String imgGrowing = 'assets/images/img-growing.png';
|
||||
static const String imgCat = 'assets/images/img-cat.png';
|
||||
static const String imgDeer = 'assets/images/img-deer.png';
|
||||
static const String imgLion = 'assets/images/img-lion.png';
|
||||
static const String imgGuideBank = 'assets/images/img-guide-bank.png';
|
||||
static const String imgGuide1 = 'assets/images/img-guide1.png';
|
||||
static const String imgGuide2 = 'assets/images/img-guide2.png';
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ import 'package:flutter/material.dart';
|
||||
|
||||
class TextCaption extends StatelessWidget {
|
||||
final String title, subtitle;
|
||||
final TextAlign? textAlignSubtitle;
|
||||
final TextAlign? textAlign, textAlignSubtitle;
|
||||
final CrossAxisAlignment? crossAxisAlignment;
|
||||
const TextCaption({
|
||||
Key? key,
|
||||
@@ -11,6 +11,7 @@ class TextCaption extends StatelessWidget {
|
||||
this.subtitle = '',
|
||||
this.textAlignSubtitle,
|
||||
this.crossAxisAlignment,
|
||||
this.textAlign,
|
||||
}) : super(key: key);
|
||||
|
||||
@override
|
||||
@@ -23,6 +24,7 @@ class TextCaption extends StatelessWidget {
|
||||
children: [
|
||||
Text(
|
||||
title,
|
||||
textAlign: textAlign ?? TextAlign.start,
|
||||
style: const TextStyle(
|
||||
fontSize: 24,
|
||||
fontWeight: FontWeight.w700,
|
||||
|
||||
@@ -81,123 +81,127 @@ class TextFormView extends StatelessWidget {
|
||||
if (inputFormatters != null && maxLength != null) {
|
||||
inputFormatters?.add(LengthLimitingTextInputFormatter(maxLength));
|
||||
}
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
children: [
|
||||
name.isNotEmpty
|
||||
? validator != null
|
||||
? Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Text(
|
||||
name,
|
||||
style: const TextStyle(
|
||||
fontSize: 16,
|
||||
// color: ColorPalette.greyLight,
|
||||
),
|
||||
return Padding(
|
||||
padding: const EdgeInsets.symmetric(vertical: 8.0),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
name.isNotEmpty
|
||||
// ? validator != null
|
||||
? Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
Text(
|
||||
name,
|
||||
style: const TextStyle(
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w600,
|
||||
color: ColorPalette.slate800,
|
||||
),
|
||||
suffixLable ??
|
||||
const Text(
|
||||
"",
|
||||
style: TextStyle(
|
||||
fontSize: 16,
|
||||
color: Colors.red,
|
||||
),
|
||||
),
|
||||
],
|
||||
)
|
||||
: Text(
|
||||
name,
|
||||
style: const TextStyle(
|
||||
fontSize: 16,
|
||||
),
|
||||
)
|
||||
: const SizedBox(),
|
||||
trailingTitleWidget ?? const SizedBox(),
|
||||
],
|
||||
),
|
||||
const SizedBox(height: 8.0),
|
||||
TextFormField(
|
||||
focusNode: focusNode,
|
||||
onTapOutside: (event) => FocusScope.of(context).unfocus(),
|
||||
minLines: textrea ? 8 : 1,
|
||||
maxLines: textrea ? null : 1,
|
||||
initialValue: initialValue,
|
||||
enabled: enabled,
|
||||
controller: ctrl,
|
||||
maxLength: maxLength,
|
||||
keyboardType: keyboardType,
|
||||
onTap: onTap,
|
||||
onEditingComplete: onSubmit,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.bold,
|
||||
fontSize: 14,
|
||||
color: fontColorDisabled ?? Colors.black,
|
||||
suffixLable ??
|
||||
const Text(
|
||||
"",
|
||||
style: TextStyle(
|
||||
fontSize: 16,
|
||||
color: Colors.red,
|
||||
),
|
||||
),
|
||||
],
|
||||
)
|
||||
: Text(
|
||||
name,
|
||||
style: const TextStyle(
|
||||
fontSize: 16,
|
||||
),
|
||||
),
|
||||
// : const SizedBox(),
|
||||
trailingTitleWidget ?? const SizedBox(),
|
||||
],
|
||||
),
|
||||
readOnly: readOnly,
|
||||
validator: validator,
|
||||
obscureText: obscureText,
|
||||
onChanged: onChanged,
|
||||
inputFormatters: inputFormatters ??
|
||||
[
|
||||
RemoveEmojiInputFormatter(),
|
||||
if (maxLength != null)
|
||||
LengthLimitingTextInputFormatter(maxLength)
|
||||
],
|
||||
enableInteractiveSelection: enableInteractiveSelection,
|
||||
textAlign: isTextAlignCenter ? TextAlign.center : TextAlign.left,
|
||||
decoration: InputDecoration(
|
||||
helperText: helperText,
|
||||
errorStyle: errorStyle,
|
||||
errorText: errorText,
|
||||
errorMaxLines: 2,
|
||||
hintStyle: hintTextStyle ??
|
||||
const TextStyle(
|
||||
fontSize: 14,
|
||||
color: ColorPalette.greyFont,
|
||||
fontWeight: FontWeight.normal,
|
||||
const SizedBox(height: 8.0),
|
||||
TextFormField(
|
||||
focusNode: focusNode,
|
||||
onTapOutside: (event) => FocusScope.of(context).unfocus(),
|
||||
minLines: textrea ? 8 : 1,
|
||||
maxLines: textrea ? null : 1,
|
||||
initialValue: initialValue,
|
||||
enabled: enabled,
|
||||
controller: ctrl,
|
||||
maxLength: maxLength,
|
||||
keyboardType: keyboardType,
|
||||
onTap: onTap,
|
||||
onEditingComplete: onSubmit,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.bold,
|
||||
fontSize: 14,
|
||||
color: fontColorDisabled ?? Colors.black,
|
||||
),
|
||||
readOnly: readOnly,
|
||||
validator: validator,
|
||||
obscureText: obscureText,
|
||||
onChanged: onChanged,
|
||||
inputFormatters: inputFormatters ??
|
||||
[
|
||||
RemoveEmojiInputFormatter(),
|
||||
if (maxLength != null)
|
||||
LengthLimitingTextInputFormatter(maxLength)
|
||||
],
|
||||
enableInteractiveSelection: enableInteractiveSelection,
|
||||
textAlign: isTextAlignCenter ? TextAlign.center : TextAlign.left,
|
||||
decoration: InputDecoration(
|
||||
helperText: helperText,
|
||||
errorStyle: errorStyle,
|
||||
errorText: errorText,
|
||||
errorMaxLines: 2,
|
||||
hintStyle: hintTextStyle ??
|
||||
const TextStyle(
|
||||
fontSize: 14,
|
||||
color: ColorPalette.greyFont,
|
||||
fontWeight: FontWeight.normal,
|
||||
),
|
||||
isDense: true,
|
||||
hintText: hintText,
|
||||
filled: true,
|
||||
fillColor: enabled && disableColor == false
|
||||
? Colors.white
|
||||
: const Color.fromARGB(255, 233, 236, 239),
|
||||
disabledBorder: OutlineInputBorder(
|
||||
borderRadius: _borderRadius,
|
||||
borderSide: BorderSide(
|
||||
color: disabledborderColor ?? ColorPalette.greyBorder,
|
||||
),
|
||||
isDense: true,
|
||||
hintText: hintText,
|
||||
filled: true,
|
||||
fillColor: enabled && disableColor == false
|
||||
? Colors.white
|
||||
: const Color.fromARGB(255, 233, 236, 239),
|
||||
disabledBorder: OutlineInputBorder(
|
||||
borderRadius: _borderRadius,
|
||||
borderSide: BorderSide(
|
||||
color: disabledborderColor ?? ColorPalette.greyBorder,
|
||||
),
|
||||
),
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderRadius: _borderRadius,
|
||||
borderSide: BorderSide(
|
||||
color: enabledborderColor ?? ColorPalette.greyBorder,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderRadius: _borderRadius,
|
||||
borderSide: BorderSide(
|
||||
color: enabledborderColor ?? ColorPalette.greyBorder,
|
||||
),
|
||||
),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderRadius: _borderRadius,
|
||||
borderSide: BorderSide(
|
||||
color: focusedBorderColor ?? ColorPalette.greyBorder,
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderRadius: _borderRadius,
|
||||
borderSide: BorderSide(
|
||||
color: focusedBorderColor ?? ColorPalette.greyBorder,
|
||||
),
|
||||
),
|
||||
),
|
||||
border: OutlineInputBorder(borderRadius: _borderRadius),
|
||||
suffixIcon: suffixIcon,
|
||||
prefixIcon: prefixIcon,
|
||||
suffixIconConstraints: suffixIconConstraints,
|
||||
prefixIconConstraints: preffixIconConstraints,
|
||||
prefix: prefix,
|
||||
contentPadding: contentPadding ?? const EdgeInsets.symmetric(
|
||||
horizontal: 8.0,
|
||||
vertical: 16.0,
|
||||
)
|
||||
),
|
||||
)
|
||||
],
|
||||
border: OutlineInputBorder(borderRadius: _borderRadius),
|
||||
suffixIcon: suffixIcon,
|
||||
prefixIcon: prefixIcon,
|
||||
suffixIconConstraints: suffixIconConstraints,
|
||||
prefixIconConstraints: preffixIconConstraints,
|
||||
prefix: prefix,
|
||||
contentPadding: contentPadding ??
|
||||
const EdgeInsets.symmetric(
|
||||
horizontal: 8.0,
|
||||
vertical: 16.0,
|
||||
)),
|
||||
)
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user