diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index 2a8ac42..ab55086 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -4,6 +4,10 @@
android:label="Trader's Circuit"
android:name="${applicationName}"
android:icon="@mipmap/ic_launcher">
+
+
+
+
diff --git a/assets/images/svg/cancel.svg b/assets/images/svg/cancel.svg
new file mode 100644
index 0000000..578cbc6
--- /dev/null
+++ b/assets/images/svg/cancel.svg
@@ -0,0 +1,3 @@
+
diff --git a/assets/images/svg/search-svgrepo-com.svg b/assets/images/svg/search-svgrepo-com.svg
new file mode 100644
index 0000000..5a10e0e
--- /dev/null
+++ b/assets/images/svg/search-svgrepo-com.svg
@@ -0,0 +1,3 @@
+
diff --git a/assets/images/svg/sidemenu/Gray.svg b/assets/images/svg/sidemenu/Gray.svg
new file mode 100644
index 0000000..17309fc
--- /dev/null
+++ b/assets/images/svg/sidemenu/Gray.svg
@@ -0,0 +1,8 @@
+
diff --git a/assets/images/svg/sidemenu/Group 51347.svg b/assets/images/svg/sidemenu/Group 51347.svg
new file mode 100644
index 0000000..224da5c
--- /dev/null
+++ b/assets/images/svg/sidemenu/Group 51347.svg
@@ -0,0 +1,8 @@
+
diff --git a/assets/images/svg/thumbs-down.svg b/assets/images/svg/thumbs-down.svg
new file mode 100644
index 0000000..a272caa
--- /dev/null
+++ b/assets/images/svg/thumbs-down.svg
@@ -0,0 +1,4 @@
+
diff --git a/assets/images/svg/thumbs-up.svg b/assets/images/svg/thumbs-up.svg
new file mode 100644
index 0000000..eb958fd
--- /dev/null
+++ b/assets/images/svg/thumbs-up.svg
@@ -0,0 +1,3 @@
+
diff --git a/assets/images/svg/upload-cloud.svg b/assets/images/svg/upload-cloud.svg
new file mode 100644
index 0000000..183197a
--- /dev/null
+++ b/assets/images/svg/upload-cloud.svg
@@ -0,0 +1,6 @@
+
diff --git a/lib/Utils/Common/CommonAppbar.dart b/lib/Utils/Common/CommonAppbar.dart
index 4fde113..9c9ec29 100644
--- a/lib/Utils/Common/CommonAppbar.dart
+++ b/lib/Utils/Common/CommonAppbar.dart
@@ -7,7 +7,7 @@ import 'package:traderscircuit/Utils/text.dart';
class CommonAppbar extends StatelessWidget implements PreferredSizeWidget {
@override
- Size get preferredSize => Size.fromHeight(height);
+ Size get preferredSize => Size.fromHeight(height!);
const CommonAppbar(
{Key? key,
required this.titleTxt,
@@ -27,11 +27,11 @@ class CommonAppbar extends StatelessWidget implements PreferredSizeWidget {
final String? backPageName;
final Widget? customActionWidget;
final VoidCallback? onCustomActionPressed;
- final double height;
+ final double? height;
@override
Widget build(BuildContext context) {
return PreferredSize(
- preferredSize: Size.fromHeight(130),
+ preferredSize: Size.fromHeight(height ?? 130),
child: AppBar(
scrolledUnderElevation: 0.0,
backgroundColor: Colors.black,
diff --git a/lib/Utils/Common/CommonBottomNavigation.dart b/lib/Utils/Common/CommonBottomNavigation.dart
index f0cb756..b4f406a 100644
--- a/lib/Utils/Common/CommonBottomNavigation.dart
+++ b/lib/Utils/Common/CommonBottomNavigation.dart
@@ -75,9 +75,9 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
shape: BoxShape.circle,
boxShadow: [
BoxShadow(
- color: Colors.grey.withOpacity(0.4),
+ color: Colors.grey.withOpacity(0.2),
spreadRadius: 15,
- blurRadius: 10,
+ blurRadius: 5,
offset: Offset(0, 10),
),
],
diff --git a/lib/Utils/Common/CustomTextFormField.dart b/lib/Utils/Common/CustomTextFormField.dart
index 18fba02..54bd94f 100644
--- a/lib/Utils/Common/CustomTextFormField.dart
+++ b/lib/Utils/Common/CustomTextFormField.dart
@@ -1,4 +1,5 @@
import 'package:flutter/material.dart';
+import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:glassmorphism/glassmorphism.dart';
class CustomTextFormField extends StatefulWidget {
@@ -145,3 +146,156 @@ class _CustomTextFormFieldState extends State {
);
}
}
+
+class CustomTextFormField1 extends StatefulWidget {
+ const CustomTextFormField1({
+ Key? key,
+ this.validator,
+ this.textEditingController,
+ this.hintText,
+ this.leadingIcon,
+ this.prefixIconColor = const Color(0xFF737373),
+ this.isInputPassword = false,
+ this.validatorText,
+ this.value,
+ this.readonly = false,
+ this.enabled = true,
+ this.maxlines = 1,
+ this.texttype,
+ this.inputFormatters,
+ this.onInput,
+ this.onTap,
+ this.suffixIcon,
+ }) : super(key: key);
+
+ final dynamic validator;
+ final TextEditingController? textEditingController;
+ final String? hintText;
+ final Widget? leadingIcon;
+ final Color prefixIconColor;
+ final bool isInputPassword;
+ final String? validatorText;
+ final String? value;
+ final bool readonly;
+ final bool enabled;
+ final int maxlines;
+ final TextInputType? texttype;
+ final dynamic inputFormatters;
+ final Function(String)? onInput;
+ final VoidCallback? onTap;
+ final Widget? suffixIcon;
+
+ @override
+ State createState() => _CustomTextFormField1State();
+}
+
+class _CustomTextFormField1State extends State {
+ late bool obscureText;
+
+ @override
+ void initState() {
+ super.initState();
+ obscureText = widget.isInputPassword;
+ }
+
+ @override
+ Widget build(BuildContext context) {
+ return GlassmorphicContainer(
+ width: double.infinity,
+ height: 50,
+ borderRadius: 8,
+ blur: 10,
+ alignment: Alignment.bottomCenter,
+ border: 0.8,
+ linearGradient: LinearGradient(
+ begin: Alignment.topLeft,
+ end: Alignment.bottomRight,
+ colors: [
+ Color(0xFFffffff).withOpacity(0.1),
+ Color(0xFFFFFFFF).withOpacity(0.05),
+ ],
+ stops: [
+ 0.1,
+ 1,
+ ]),
+ borderGradient: LinearGradient(
+ begin: Alignment.topLeft,
+ end: Alignment.bottomRight,
+ colors: [
+ Color(0xff3A3A3A),
+ Color(0xFF3A3A3A),
+ ],
+ ),
+ child: TextFormField(
+ cursorColor: Colors.red,
+ initialValue: widget.value,
+ readOnly: widget.readonly,
+ onTap: widget.onTap,
+ enabled: widget.enabled,
+ enableInteractiveSelection: false,
+ maxLines: widget.maxlines,
+ autovalidateMode: AutovalidateMode.onUserInteraction,
+ obscureText: obscureText,
+ controller: widget.textEditingController,
+
+ decoration: InputDecoration(
+ hintText: widget.hintText,
+ prefixIconColor: widget.prefixIconColor,
+
+ hintStyle: TextStyle(
+ fontSize: 16.sp,
+ color: Colors.white,
+ fontWeight: FontWeight.w400,
+ fontFamily: 'manrope'),
+
+ // ignore: prefer_null_aware_operators
+ prefixIcon: widget.leadingIcon == null ? null : widget.leadingIcon!,
+ suffixIcon: widget.isInputPassword
+ ? GestureDetector(
+ onTap: () => setState(() => obscureText = !obscureText),
+ child: obscureText
+ ? const Column(
+ mainAxisAlignment: MainAxisAlignment.center,
+ children: [
+ Padding(
+ padding: EdgeInsets.only(right: 20.0),
+ child: Icon(Icons.remove_red_eye),
+ ),
+ ],
+ )
+ : const Column(
+ mainAxisAlignment: MainAxisAlignment.center,
+ children: [
+ Padding(
+ padding: EdgeInsets.only(right: 20.0),
+ child: Icon(
+ Icons.remove_red_eye_outlined,
+ color: Color(0xFF959595),
+ ),
+ ),
+ ],
+ ),
+ )
+ : widget.suffixIcon == null
+ ? null
+ : widget.suffixIcon!,
+ border: InputBorder.none,
+ contentPadding: EdgeInsets.symmetric(horizontal: 10, vertical: 10),
+ ),
+ style: TextStyle(color: Colors.white),
+ keyboardType: widget.texttype,
+ // validator: widget.validator ??
+ // (value) {
+ // if (value == null || value.isEmpty) {
+ // return "Empty value";
+ // }
+ // return null;
+ // },
+ inputFormatters: widget.inputFormatters,
+ onChanged: (value) {
+ widget.onInput?.call(value);
+ },
+ ),
+ );
+ }
+}
diff --git a/lib/Utils/Common/ImagePicker.dart b/lib/Utils/Common/ImagePicker.dart
new file mode 100644
index 0000000..20d518a
--- /dev/null
+++ b/lib/Utils/Common/ImagePicker.dart
@@ -0,0 +1,36 @@
+import 'package:image_cropper/image_cropper.dart';
+import 'package:image_picker/image_picker.dart';
+
+class ImagePickerMethod {
+ Future getImage(ImageSource imgSource) async {
+ final ImagePicker picker = ImagePicker();
+
+ final XFile? pickedImg = await picker.pickImage(source: imgSource);
+ if (pickedImg != null) {
+ final croppedImg = await ImageCropper().cropImage(
+ sourcePath: pickedImg.path,
+ aspectRatio: const CropAspectRatio(ratioX: 1, ratioY: 1),
+ compressFormat: ImageCompressFormat.jpg,
+ maxHeight: 512,
+ maxWidth: 512,
+ uiSettings: [
+ IOSUiSettings(
+ rotateButtonsHidden: true,
+ rotateClockwiseButtonHidden: true,
+ )
+ ],
+ compressQuality: 100,
+ aspectRatioPresets: [
+ CropAspectRatioPreset.square,
+ ],
+ );
+ if (croppedImg != null) {
+ return croppedImg.path;
+ } else {
+ return "";
+ }
+ } else {
+ return "";
+ }
+ }
+}
diff --git a/lib/Utils/Common/commonBotton.dart b/lib/Utils/Common/commonBotton.dart
index 1c6b2f5..fb855c6 100644
--- a/lib/Utils/Common/commonBotton.dart
+++ b/lib/Utils/Common/commonBotton.dart
@@ -1,5 +1,8 @@
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
+import 'package:glassmorphism/glassmorphism.dart';
+import 'package:traderscircuit/Utils/Common/sized_box.dart';
+import 'package:traderscircuit/Utils/text.dart';
Widget CommonBtn({void Function()? onTap, required String text}) {
return InkWell(
@@ -23,3 +26,117 @@ Widget CommonBtn({void Function()? onTap, required String text}) {
),
));
}
+
+Widget CommonYesNoBtn({
+ void Function()? yesonTap,
+ void Function()? noonTap,
+}) {
+ return Row(
+ children: [
+ GestureDetector(
+ onTap: yesonTap,
+ child: GlassmorphicContainer(
+ width: 170.w,
+ height: 50.h,
+ borderRadius: 8,
+ blur: 10,
+ alignment: Alignment.center,
+ border: 0.9,
+ linearGradient: LinearGradient(
+ begin: Alignment.topLeft,
+ end: Alignment.bottomRight,
+ colors: [
+ Colors.white.withOpacity(0.1),
+ Color(0xFFFFFFFF).withOpacity(0.05),
+ ],
+ stops: [
+ 0.1,
+ 1,
+ ],
+ ),
+ borderGradient: LinearGradient(
+ begin: Alignment.topLeft,
+ end: Alignment.bottomRight,
+ colors: [
+ Color.fromRGBO(70, 5, 1, 0.8),
+ Color.fromRGBO(102, 102, 102, 0.8),
+ ],
+ ),
+ child: Center(
+ child: text18W500('Yes'),
+ ),
+ ),
+ ),
+ sizedBoxWidth(10.w),
+ GestureDetector(
+ onTap: noonTap,
+ child: Container(
+ height: 50.h,
+ width: 170.w,
+ decoration: BoxDecoration(
+ borderRadius: BorderRadius.circular(8.r),
+ border: Border.all(color: Color(0xFF9A0000), width: 1.w),
+ color: Color(0xFF6C0000)),
+ child: Center(child: text18W500('No')),
+ ),
+ )
+ ],
+ );
+}
+
+ // InkWell(
+ // onTap: onTap,
+ // child: Container(
+ // width: double.infinity,
+ // height: 50.h,
+ // decoration: BoxDecoration(
+ // color: Color(0xff9A0000), borderRadius: BorderRadius.circular(5)),
+ // child: Center(
+ // child: Text(
+ // text,
+ // textAlign: TextAlign.center,
+ // style: TextStyle(
+ // color: Colors.white,
+ // fontSize: 20.sp,
+ // fontFamily: 'Cambria',
+ // fontWeight: FontWeight.w400,
+ // ),
+ // ),
+ // ),
+ // ));
+Widget kycBtn({
+ void Function()? onTap,
+ required String text,
+ required Color bgClr,
+ required Color borderClr,
+}) {
+ return InkWell(
+ onTap: onTap,
+ child: Container(
+ width: 191,
+ height: 50,
+ decoration: ShapeDecoration(
+ color: bgClr,
+ shape: RoundedRectangleBorder(
+ side: BorderSide(
+ width: 1,
+ color: borderClr,
+ ),
+ borderRadius: BorderRadius.circular(8),
+ ),
+ ),
+ child: Center(
+ child: Text(
+ text,
+ textAlign: TextAlign.center,
+ style: TextStyle(
+ color: Colors.white,
+ fontSize: 20.sp,
+ fontFamily: 'Cambria',
+ fontWeight: FontWeight.w400,
+ ),
+ ),
+ ),
+ ),
+ );
+}
diff --git a/lib/Utils/Common/custom_drop_down.dart b/lib/Utils/Common/custom_drop_down.dart
new file mode 100644
index 0000000..b2aec98
--- /dev/null
+++ b/lib/Utils/Common/custom_drop_down.dart
@@ -0,0 +1,192 @@
+import 'package:flutter/material.dart';
+import 'package:get/get.dart';
+
+import '../text.dart';
+
+class CustomDropDownWidget extends StatefulWidget {
+ const CustomDropDownWidget(
+ {super.key, required this.header, required this.listData});
+ final String header;
+ final List listData;
+
+ @override
+ State createState() => _CustomDropDownWidgetState();
+}
+
+class _CustomDropDownWidgetState extends State {
+ RxBool onDropTap = false.obs;
+ RxString selectedValue = "".obs;
+ @override
+ Widget build(BuildContext context) {
+ return Obx(
+ () => SizedBox(
+ width: Get.width,
+ // height: onDropTap.value ? 350 : 55,
+ child: Column(
+ mainAxisSize: MainAxisSize.min,
+ mainAxisAlignment: MainAxisAlignment.center,
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ InkWell(
+ onTap: () {
+ onDropTap.value = !onDropTap.value;
+ },
+ child: SizedBox(
+ width: 398,
+ height: 55,
+ child: Stack(
+ children: [
+ Positioned(
+ left: 398,
+ top: 55,
+ child: Opacity(
+ opacity: 0.50,
+ child: Transform(
+ transform: Matrix4.identity()
+ ..translate(0.0, 0.0)
+ ..rotateZ(-3.14),
+ child: Container(
+ width: 398,
+ height: 55,
+ decoration: BoxDecoration(
+ gradient: LinearGradient(
+ begin: const Alignment(0.98, -0.21),
+ end: const Alignment(-0.98, 0.21),
+ colors: [
+ Colors.white
+ .withOpacity(0.03999999910593033),
+ Colors.white
+ .withOpacity(0.05999999865889549)
+ ],
+ ),
+ border: Border(
+ top: onDropTap.value
+ ? const BorderSide(
+ width: 0, color: Color(0xFF393939))
+ : const BorderSide(
+ width: 0.50,
+ color: Color(0xFF393939)),
+ bottom: const BorderSide(
+ width: 0.50, color: Color(0xFF393939)),
+ left: const BorderSide(
+ width: 0.50,
+ color: Color(0xFF393939),
+ ),
+ right: const BorderSide(
+ width: 0.50,
+ color: Color(0xFF393939),
+ ),
+ )),
+ ),
+ ),
+ ),
+ ),
+ Positioned(
+ left: 14,
+ top: 16,
+ child: Text(
+ selectedValue.isNotEmpty
+ ? selectedValue.value
+ : widget.header,
+ style: const TextStyle(
+ color: Color(0xFFADADAD),
+ fontSize: 16,
+ fontFamily: 'Manrope',
+ fontWeight: FontWeight.w400,
+ height: 0,
+ ),
+ ),
+ ),
+ Positioned(
+ right: 14,
+ top: 16,
+ child: onDropTap.value
+ ? const Icon(
+ Icons.keyboard_arrow_up_rounded,
+ color: Colors.white,
+ )
+ : const Icon(
+ Icons.keyboard_arrow_down_rounded,
+ color: Colors.white,
+ )),
+ ],
+ ),
+ ),
+ ),
+ !onDropTap.value
+ ? const SizedBox()
+ : Opacity(
+ opacity: 0.50,
+ child: Container(
+ width: Get.width,
+ // height: 216,
+ decoration: ShapeDecoration(
+ gradient: LinearGradient(
+ begin: const Alignment(0.98, -0.21),
+ end: const Alignment(-0.98, 0.21),
+ colors: [
+ Colors.white.withOpacity(0.03999999910593033),
+ Colors.white.withOpacity(0.05999999865889549)
+ ],
+ ),
+ shape: const RoundedRectangleBorder(
+ side:
+ BorderSide(width: 0.50, color: Color(0xFF393939)),
+ borderRadius: BorderRadius.only(
+ bottomLeft: Radius.circular(8),
+ bottomRight: Radius.circular(8),
+ ),
+ ),
+ ),
+ child: ListView.builder(
+ shrinkWrap: true,
+ itemCount: widget.listData.length,
+ itemBuilder: (context, index) {
+ return InkWell(
+ onTap: () {
+ selectedValue.value = widget.listData[index];
+ onDropTap.value = !onDropTap.value;
+ },
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ mainAxisSize: MainAxisSize.min,
+ children: [
+ Container(
+ margin: EdgeInsets.only(
+ left: 14,
+ top: index == 0 ? 16 : 0,
+ bottom: index ==
+ widget.listData.length - 1
+ ? 16
+ : 0),
+ child:
+ text16W400(widget.listData[index])),
+ index == widget.listData.length - 1
+ ? const SizedBox()
+ : Container(
+ width: Get.width,
+ margin: const EdgeInsets.only(
+ top: 16, bottom: 16),
+ decoration: const ShapeDecoration(
+ shape: RoundedRectangleBorder(
+ side: BorderSide(
+ width: 0.60,
+ strokeAlign: BorderSide
+ .strokeAlignCenter,
+ color: Color(0xFF393939),
+ ),
+ ),
+ ),
+ ),
+ ],
+ ),
+ );
+ }),
+ ),
+ ),
+ ],
+ ),
+ ),
+ );
+ }
+}
diff --git a/lib/Utils/text.dart b/lib/Utils/text.dart
index 3b9a021..9440424 100644
--- a/lib/Utils/text.dart
+++ b/lib/Utils/text.dart
@@ -12,6 +12,18 @@ Widget text20W400(String text) {
);
}
+Widget text20W400_center(String text) {
+ return Text(
+ text,
+ textAlign: TextAlign.center,
+ style: TextStyle(
+ fontSize: 20.sp,
+ color: Colors.white,
+ fontWeight: FontWeight.w400,
+ fontFamily: 'manrope'),
+ );
+}
+
Widget text18W800(String text) {
return Text(
text,
@@ -56,6 +68,19 @@ Widget text18W400(String text) {
);
}
+Widget text24W500(String text) {
+ return Text(
+ text,
+ style: TextStyle(
+ color: Colors.white,
+ fontSize: 24.sp,
+ fontWeight: FontWeight.w500,
+ fontFamily: 'manrope'),
+ maxLines: 2,
+ softWrap: true,
+ );
+}
+
Widget text16W400(String text) {
return Text(
text,
@@ -154,6 +179,7 @@ Widget text12W400(String text) {
fontFamily: 'manrope'),
);
}
+
Widget text12W500(String text) {
return Text(
text,
@@ -231,8 +257,8 @@ Widget text14W300(String text) {
);
}
-
-Widget text14W400(String text) { return Text(
+Widget text14W400(String text) {
+ return Text(
text,
style: TextStyle(
fontSize: 14.sp,
@@ -243,13 +269,11 @@ Widget text14W400(String text) { return Text(
}
Widget text14W500(String text) {
-
return Text(
text,
style: TextStyle(
fontSize: 14.sp,
color: Colors.white,
-
fontWeight: FontWeight.w500,
fontFamily: 'manrope'),
);
@@ -261,13 +285,11 @@ Widget text16W400_DADADA(String text) {
style: TextStyle(
fontSize: 16.sp,
color: Color(0xFFDADADA),
-
fontWeight: FontWeight.w400,
fontFamily: 'manrope'),
);
}
-
Widget text14W400_979797(String text) {
return Text(
text,
@@ -313,4 +335,3 @@ Widget text14W500_black(String text) {
fontFamily: 'manrope'),
);
}
-
diff --git a/lib/controller/kyc_controller.dart b/lib/controller/kyc_controller.dart
new file mode 100644
index 0000000..dcaa715
--- /dev/null
+++ b/lib/controller/kyc_controller.dart
@@ -0,0 +1,8 @@
+import 'package:get/get.dart';
+
+class KYCController extends GetxController {
+ RxString panFrontImage = "".obs;
+ RxString panBackImage = "".obs;
+ RxString aadharFrontImage = "".obs;
+ RxString aadharBackImage = "".obs;
+}
diff --git a/lib/main.dart b/lib/main.dart
index 406c806..26695f6 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -97,7 +97,7 @@ class _MyAppState extends State with WidgetsBindingObserver {
fontFamily: 'manrope',
),
debugShowCheckedModeBanner: false,
- initialRoute: RouteName.mainscreen,
+ initialRoute: RouteName.splashScreen,
getPages: AppRoutes.appRoutes(),
),
designSize: const Size(390, 844),
diff --git a/lib/resources/routes/route_name.dart b/lib/resources/routes/route_name.dart
index 762b008..f5555f5 100644
--- a/lib/resources/routes/route_name.dart
+++ b/lib/resources/routes/route_name.dart
@@ -31,6 +31,7 @@ class RouteName {
//kyc
static const String kyc = '/kyc';
+ static const String kycImage = "/kycImage";
//update risk profile
static const String updateriskprofile = '/updateriskprofile';
@@ -40,6 +41,6 @@ class RouteName {
static const String privacypolicy = '/privacypolicy';
static const String aboutus = '/aboutus';
+ static const String faqscreen = '/faqscreen';
-
}
diff --git a/lib/resources/routes/routes.dart b/lib/resources/routes/routes.dart
index 47e36af..780542a 100644
--- a/lib/resources/routes/routes.dart
+++ b/lib/resources/routes/routes.dart
@@ -3,6 +3,7 @@ import 'package:traderscircuit/Utils/Common/noInternet.dart';
import 'package:traderscircuit/resources/routes/route_name.dart';
import 'package:traderscircuit/view/MainScreen/ExploreUnseen.dart';
import 'package:traderscircuit/view/Sidemenu/AboutUs.dart';
+import 'package:traderscircuit/view/Sidemenu/FaqScreen.dart';
import 'package:traderscircuit/view/Sidemenu/PrivacyPolicy.dart';
import 'package:traderscircuit/view/Sidemenu/TermsAndCondition.dart';
@@ -27,6 +28,8 @@ import 'package:traderscircuit/view/secureAccess.dart/Fingerprint.dart';
import 'package:traderscircuit/view/secureAccess.dart/Pin.dart';
import 'package:traderscircuit/view/secureAccess.dart/SecureAccess.dart';
+import '../../view/login/uploadKycImage.dart';
+
class AppRoutes {
static appRoutes() => [
GetPage(
@@ -114,6 +117,10 @@ class AppRoutes {
name: RouteName.kyc,
page: () => const Kyc(),
),
+ GetPage(
+ name: RouteName.kycImage,
+ page: () => const UploadKYCImage(),
+ ),
//update risk profile
GetPage(
@@ -130,9 +137,13 @@ class AppRoutes {
name: RouteName.privacypolicy,
page: () => const PrivacyPolicy(),
),
- GetPage(
+ GetPage(
name: RouteName.aboutus,
page: () => const AboutUs(),
+ ),
+ GetPage(
+ name: RouteName.faqscreen,
+ page: () => const FaqScreen(),
),
];
}
diff --git a/lib/view/MainScreen/ShortTrade.dart b/lib/view/MainScreen/ShortTrade.dart
index 1fdc152..0f2939d 100644
--- a/lib/view/MainScreen/ShortTrade.dart
+++ b/lib/view/MainScreen/ShortTrade.dart
@@ -30,7 +30,7 @@ class _ShortTradeState extends State {
return Scaffold(
key: _scaffoldKey1,
backgroundColor: Colors.black,
- drawer: Container(width: 320.w, child: SideMenu()),
+ drawer: Container(child: SideMenu()),
extendBody: true,
appBar: AppBar(
scrolledUnderElevation: 0.0,
@@ -50,6 +50,7 @@ class _ShortTradeState extends State {
),
),
),
+ // title: text22W600('Short'),
),
// CommonAppbar(
@@ -136,7 +137,7 @@ class _ShortTradeState extends State {
Widget ActiveCallsTab() {
return Obx(() {
WidgetsBinding.instance.addPostFrameCallback((_) {
- if (selectedIndex == 1) _unlockbottomsheet();
+ if (selectedIndex == 1 || selectedIndex == 2) _unlockbottomsheet();
});
return selectedIndex == 0
? Column(
@@ -235,25 +236,35 @@ class _ShortTradeState extends State {
void _unlockbottomsheet() {
Get.bottomSheet(
- SizedBox(
- height: 200,
- child: commonGlassContainer(
- width: double.infinity,
- height: 200,
- borderradius: 2,
- customWidget: Column(
- mainAxisAlignment: MainAxisAlignment.start,
- crossAxisAlignment: CrossAxisAlignment.start,
- children: [
- // Image.asset(
- // 'assets/images/png/Group 1000003722.png',
- // height: 100.h,
- // ),
- // sizedBoxHeight(25.h),
- text20W400('Please subscribed to unlock'),
- sizedBoxHeight(30.h),
- CommonBtn(text: 'Subscribe Now'),
- ],
+
+ commonGlassContainer(
+ width: double.infinity,
+ height: 439.h,
+ borderradius: 4,
+ customWidget: Center(
+ child: Padding(
+ padding: EdgeInsets.symmetric(horizontal: 35.w),
+ child: Column(
+ children: [
+ sizedBoxHeight(50.h),
+ // Image.asset(
+ // 'assets/images/png/Group 1000003722.png',
+ // height: 100.h,
+ // ),
+ // sizedBoxHeight(25.h),
+ text20W400('Please subscribed to unlock'),
+ sizedBoxHeight(30.h),
+ CommonBtn(
+ text: 'Subscribe Now',
+ onTap: () {},
+ ),
+
+ SizedBox(
+ height: 100,
+ )
+ ],
+ ),
+
),
),
),
diff --git a/lib/view/Sidemenu/FaqScreen.dart b/lib/view/Sidemenu/FaqScreen.dart
new file mode 100644
index 0000000..149889c
--- /dev/null
+++ b/lib/view/Sidemenu/FaqScreen.dart
@@ -0,0 +1,324 @@
+import 'package:flutter/material.dart';
+import 'package:flutter_screenutil/flutter_screenutil.dart';
+import 'package:flutter_svg/svg.dart';
+import 'package:get/get.dart';
+import 'package:traderscircuit/Utils/Common/CommonAppBar.dart';
+import 'package:traderscircuit/Utils/Common/CustomTextFormField.dart';
+import 'package:traderscircuit/Utils/Common/comonGlassmorphicContainer.dart';
+import 'package:traderscircuit/Utils/Common/sized_box.dart';
+import 'package:traderscircuit/Utils/text.dart';
+import 'package:traderscircuit/view/onBoarding/splashScreen1.dart';
+
+class FaqScreen extends StatefulWidget {
+ const FaqScreen({super.key});
+
+ @override
+ State createState() => _FaqScreenState();
+}
+
+class _FaqScreenState extends State {
+ List containerTexts = [
+ "Subscriptions",
+ "Investments",
+ "App features"
+ ];
+
+ final selectedIndex = 0.obs;
+ late RxList isExpandedList;
+ @override
+ void initState() {
+ isExpandedList = RxList.generate(Faqcard.length, (index) => index == 0);
+ super.initState();
+ }
+
+ List