improvements.

merge-update-with-lab-changes
Sikander Saleem 4 years ago
parent 350ff20a1a
commit 5647ab75e5

@ -25,7 +25,7 @@ class GetAllSharedRecordsByStatusResponse {
dynamic successMsgN;
dynamic doctorInformationList;
List<GetAllSharedRecordsByStatusList> getAllPendingRecordsList;
List<GetAllSharedRecordsByStatusList> getAllSharedRecordsByStatusList = List();
List<GetAllSharedRecordsByStatusList> getAllSharedRecordsByStatusList = [];
List<GetAllSharedRecordsByStatusList> getResponseFileList;
bool isHMGPatient;
bool isLoginSuccessfully;
@ -92,7 +92,7 @@ class GetAllSharedRecordsByStatusResponse {
this.successMsgN,
this.doctorInformationList,
this.getAllPendingRecordsList,
this.getAllSharedRecordsByStatusList ,
this.getAllSharedRecordsByStatusList,
this.getResponseFileList,
this.isHMGPatient,
this.isLoginSuccessfully,
@ -164,16 +164,14 @@ class GetAllSharedRecordsByStatusResponse {
if (json['GetAllPendingRecordsList'] != null) {
getAllSharedRecordsByStatusList = new List<GetAllSharedRecordsByStatusList>();
json['GetAllPendingRecordsList'].forEach((v) {
getAllSharedRecordsByStatusList
.add(new GetAllSharedRecordsByStatusList.fromJson(v));
getAllSharedRecordsByStatusList.add(new GetAllSharedRecordsByStatusList.fromJson(v));
});
}
if (json['GetAllSharedRecordsByStatusList'] != null) {
getAllSharedRecordsByStatusList = new List<GetAllSharedRecordsByStatusList>();
json['GetAllSharedRecordsByStatusList'].forEach((v) {
getAllSharedRecordsByStatusList
.add(new GetAllSharedRecordsByStatusList.fromJson(v));
getAllSharedRecordsByStatusList.add(new GetAllSharedRecordsByStatusList.fromJson(v));
});
}
getResponseFileList = json['GetResponseFileList'];
@ -214,10 +212,9 @@ class GetAllSharedRecordsByStatusResponse {
memberList = json['memberList'];
message = json['message'];
statusCode = json['statusCode'];
}catch (e){
var asd ="";
} catch (e) {
var asd = "";
print(e);
}
}
@ -250,8 +247,7 @@ class GetAllSharedRecordsByStatusResponse {
data['DoctorInformation_List'] = this.doctorInformationList;
data['GetAllPendingRecordsList'] = this.getAllPendingRecordsList;
if (this.getAllSharedRecordsByStatusList != null) {
data['GetAllSharedRecordsByStatusList'] =
this.getAllSharedRecordsByStatusList.map((v) => v.toJson()).toList();
data['GetAllSharedRecordsByStatusList'] = this.getAllSharedRecordsByStatusList.map((v) => v.toJson()).toList();
}
data['GetResponseFileList'] = this.getResponseFileList;
data['IsHMGPatient'] = this.isHMGPatient;

@ -522,7 +522,7 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
style: TextStyle(
fontWeight: FontWeight.bold,
color: currentTab == 0 ? CustomColors.backgroudGreyColor : Theme.of(context).textTheme.headline1.color,
fontFamily: projectViewModel.isArabic ? 'Cairo' : 'WorkSans'),
fontFamily: projectViewModel.isArabic ? 'Cairo' : 'Poppins'),
// bold: true,
),
leading: Builder(

@ -124,16 +124,16 @@ class _ConfirmLogin extends State<ConfirmLogin> {
children: [
Text(
TranslationBase.of(context).welcomeBack,
style: TextStyle(fontSize: 12, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64),
style: TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64),
),
Text(
user.name.toLowerCase().capitalizeFirstofEach,
style: TextStyle(fontSize: 24, fontFamily: "Poppins", fontWeight: FontWeight.w700, color: Color(0xff2B353E), height: 1, letterSpacing: -1.44),
style: TextStyle(fontSize: 24, fontWeight: FontWeight.w700, color: Color(0xff2B353E), height: 1, letterSpacing: -1.44),
),
SizedBox(height: 10),
Text(
TranslationBase.of(context).accountInfo,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64, height: 25 / 16),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64, height: 25 / 16),
),
Container(
height: 72,
@ -157,7 +157,7 @@ class _ConfirmLogin extends State<ConfirmLogin> {
children: [
Text(
TranslationBase.of(context).lastLoginAt.toCamelCase,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64),
),
Text(
user.editedOn != null
@ -165,7 +165,7 @@ class _ConfirmLogin extends State<ConfirmLogin> {
: user.createdOn != null
? DateUtil.formatDateToDate(DateUtil.convertStringToDate(user.createdOn))
: '--',
style: TextStyle(fontSize: 12, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.48),
style: TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.48),
),
],
),
@ -177,7 +177,7 @@ class _ConfirmLogin extends State<ConfirmLogin> {
TranslationBase.of(context).lastLoginWith.toCamelCase,
style: TextStyle(
fontSize: 10,
fontFamily: "Poppins",
fontWeight: FontWeight.w600,
color: Color(0xff575757),
),
@ -186,7 +186,7 @@ class _ConfirmLogin extends State<ConfirmLogin> {
" " + getType(user.logInType, context),
style: TextStyle(
fontSize: 12,
fontFamily: "Poppins",
fontWeight: FontWeight.w600,
color: Color(0xff2B353E),
),
@ -198,7 +198,7 @@ class _ConfirmLogin extends State<ConfirmLogin> {
: user.createdOn != null
? DateUtil.formatDateToTime(DateUtil.convertStringToDate(user.createdOn))
: '--',
style: TextStyle(fontSize: 12, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff575757), letterSpacing: -0.48),
style: TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xff575757), letterSpacing: -0.48),
),
],
)
@ -207,7 +207,7 @@ class _ConfirmLogin extends State<ConfirmLogin> {
),
Text(
TranslationBase.of(context).pleaseVerify,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64),
),
GridView(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 2, crossAxisSpacing: 13, mainAxisSpacing: 9),
@ -230,26 +230,32 @@ class _ConfirmLogin extends State<ConfirmLogin> {
height: 90,
width: 90,
),
SizedBox(height: 23),
this.onlySMSBox == false
? Texts(
? Text(
TranslationBase.of(context).verifyLoginWith,
fontSize: SizeConfig.textMultiplier * 3.5,
textAlign: TextAlign.left,
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64, height: 25 / 16),
)
: Texts(
: Text(
TranslationBase.of(context).verifyFingerprint2,
fontSize: SizeConfig.textMultiplier * 2.5,
textAlign: TextAlign.start,
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64, height: 25 / 16),
),
onlySMSBox == false
? Row(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[Expanded(child: getButton(3)), Expanded(child: getButton(2))],
)
: SizedBox(),
Row(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[Expanded(child: getButton(1)), Expanded(child: getButton(4))],
SizedBox(height: 23),
Text(
TranslationBase.of(context).pleaseVerify,
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64),
),
GridView(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 2, crossAxisSpacing: 13, mainAxisSpacing: 9),
physics: NeverScrollableScrollPhysics(),
padding: EdgeInsets.only(top: 9),
shrinkWrap: true,
children: [
if (onlySMSBox == false) getButton(3),
if (onlySMSBox == false) getButton(2),
getButton(1),
getButton(4),
],
),
]),
],
@ -258,157 +264,14 @@ class _ConfirmLogin extends State<ConfirmLogin> {
SizedBox(
height: 12,
),
SizedBox(
height: 43,
width: double.infinity,
child: FlatButton(
onPressed: () {
Navigator.of(context).pushNamed(LOGIN_TYPE);
},
child: Text(
TranslationBase.of(context).useAnotherAccount,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Colors.white, letterSpacing: -0.48),
),
color: Color(0xffD02127),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(6),
),
),
DefaultButton(
TranslationBase.of(context).useAnotherAccount,
() => {Navigator.of(context).pushNamed(LOGIN_TYPE)},
),
],
),
),
);
return AppScaffold(
appBarTitle: TranslationBase.of(context).confirm,
isShowAppBar: true,
isShowDecPage: false,
body: SingleChildScrollView(
child: Container(
padding: EdgeInsets.all(20),
height: SizeConfig.realScreenHeight * .9,
width: SizeConfig.realScreenWidth,
child: Column(
children: <Widget>[
user != null && isMoreOption == false
? Column(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Image.asset(
'assets/images/habib-logo.png',
height: 90,
width: 90,
),
Texts(
TranslationBase.of(context).welcomeBack + ' ' + user.name,
fontSize: SizeConfig.textMultiplier * 3.5,
),
SizedBox(
height: 20,
),
Texts(
TranslationBase.of(context).accountInfo,
fontSize: SizeConfig.textMultiplier * 2.5,
),
SizedBox(
height: 20,
),
Card(
color: Colors.grey[300],
child: Row(
children: <Widget>[
Flexible(
child: ListTile(
title: Text(
TranslationBase.of(context).lastLoginAt,
textAlign: TextAlign.center,
overflow: TextOverflow.ellipsis,
),
subtitle: Text(
user.editedOn != null
? formatDate(DateUtil.convertStringToDate(user.editedOn))
: user.createdOn != null
? formatDate(DateUtil.convertStringToDate(user.createdOn))
: '--',
overflow: TextOverflow.ellipsis,
textAlign: TextAlign.center),
)),
Flexible(
child: ListTile(
title: Text(TranslationBase.of(context).lastLoginWith, overflow: TextOverflow.ellipsis, textAlign: TextAlign.center),
subtitle: Text(getType(user.logInType, context), overflow: TextOverflow.ellipsis, textAlign: TextAlign.center),
))
],
)),
],
)
: Column(mainAxisAlignment: MainAxisAlignment.spaceEvenly, crossAxisAlignment: CrossAxisAlignment.start, children: <Widget>[
Image.asset(
'assets/images/habib-logo.png',
height: 90,
width: 90,
),
this.onlySMSBox == false
? Texts(
TranslationBase.of(context).verifyLoginWith,
fontSize: SizeConfig.textMultiplier * 3.5,
textAlign: TextAlign.left,
)
: Texts(
TranslationBase.of(context).verifyFingerprint2,
fontSize: SizeConfig.textMultiplier * 2.5,
textAlign: TextAlign.start,
),
]),
user != null && isMoreOption == false
? Column(mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, children: <Widget>[
Row(mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[
Expanded(child: InkWell(onTap: () => {authenticateUser(3, isActive: BiometricType.face.index)}, child: getButton(user.logInType))),
Expanded(child: getButton(5))
])
])
: Column(mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, children: <Widget>[
onlySMSBox == false
? Row(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[Expanded(child: getButton(3)), Expanded(child: getButton(2))],
)
: SizedBox(),
Row(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[Expanded(child: getButton(1)), Expanded(child: getButton(4))],
),
]),
Expanded(
flex: 1,
child: Column(
mainAxisAlignment: MainAxisAlignment.end,
children: <Widget>[
user != null
? Row(
children: <Widget>[
Expanded(
child: DefaultButton(
TranslationBase.of(context).useAnotherAccount,
() => {
Navigator.of(context).pushNamed(
LOGIN_TYPE,
)
},
)),
],
)
: SizedBox(),
],
),
)
],
),
),
),
);
}
Future<void> _getAvailableBiometrics() async {
@ -771,21 +634,25 @@ class _ConfirmLogin extends State<ConfirmLogin> {
}
Widget _loginOptionButton(String _title, String _icon, int _flag, int _loginIndex) {
bool isDisable = (_flag == 3 && !checkIfBiometricAvailable(BiometricType.face));
return InkWell(
onTap: () {
if (_flag == 0) {
setState(() {
isMoreOption = true;
});
} else {
authenticateUser(4, isActive: _loginIndex);
}
},
onTap: isDisable
? null
: () {
if (_flag == 0) {
setState(() {
isMoreOption = true;
});
} else {
authenticateUser(_flag, isActive: _loginIndex);
}
},
child: Container(
padding: EdgeInsets.only(left: 20, right: 20, bottom: 15, top: 28),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(15),
color: Colors.white,
color: isDisable ? Colors.grey.withOpacity(0.3) : Colors.white,
border: Border.all(
color: Color(0xffefefef),
width: 1,
@ -799,10 +666,12 @@ class _ConfirmLogin extends State<ConfirmLogin> {
_icon,
height: 38,
width: 38,
color: isDisable ? Color(0xff2B353E).withOpacity(0.7) : null,
),
Text(
TranslationBase.of(context).verifyThrough + " " + _title,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.48, height: 20 / 16),
style: TextStyle(
fontSize: 16, fontWeight: FontWeight.w600, color: isDisable ? Color(0xff2B353E).withOpacity(0.7) : Color(0xff2B353E), letterSpacing: -0.48, height: 20 / 16),
),
],
),

@ -52,7 +52,7 @@ class _ForgotPassword extends State<ForgotPassword> {
SizedBox(height: 50),
Text(
TranslationBase.of(context).forgotDesc,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64, height: 23 / 16),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64, height: 23 / 16),
),
SizedBox(height: 20),
PhoneNumberSelectorWidget(onNumberChange: (value) {
@ -76,7 +76,7 @@ class _ForgotPassword extends State<ForgotPassword> {
},
child: Text(
TranslationBase.of(context).submit,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Colors.white, letterSpacing: -0.48),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Colors.white, letterSpacing: -0.48),
),
// color: Color(0xffD02127),
color: (mobileNo.length >= 9) == true ? Color(0xffD02127) : Color(0xff575757),

@ -44,7 +44,7 @@ class LoginType extends StatelessWidget {
SizedBox(height: 50),
Text(
TranslationBase.of(context).logintypeRadio,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64, height: 23 / 16),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64, height: 23 / 16),
),
GridView(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 2, crossAxisSpacing: 13, mainAxisSpacing: 9),
@ -61,7 +61,7 @@ class LoginType extends StatelessWidget {
text: TextSpan(
text: TranslationBase.of(context).forgotPassword,
style: TextStyle(
decoration: TextDecoration.underline, fontSize: 12, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xffC9272B), letterSpacing: -0.48, height: 18 / 12),
decoration: TextDecoration.underline, fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xffC9272B), letterSpacing: -0.48, height: 18 / 12),
recognizer: TapGestureRecognizer()..onTap = () => Navigator.of(context).push(FadePage(page: ForgotPassword())),
),
),
@ -77,7 +77,7 @@ class LoginType extends StatelessWidget {
},
child: Text(
TranslationBase.of(context).registerNow,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Colors.white, letterSpacing: -0.48),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Colors.white, letterSpacing: -0.48),
),
color: Color(0xffD02127),
shape: RoundedRectangleBorder(
@ -253,7 +253,7 @@ class LoginType extends StatelessWidget {
),
Text(
_title,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.48, height: 20 / 16),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.48, height: 20 / 16),
),
],
),

@ -66,7 +66,7 @@ class _Login extends State<Login> {
// getDeviceToken();
super.initState();
if(BASE_URL.contains("uat.")){
if (BASE_URL.contains("uat.")) {
nationalIDorFile.text = "1231755";
mobileNumberController.text = mobileNo = "537503378";
}
@ -106,7 +106,7 @@ class _Login extends State<Login> {
SizedBox(height: 50),
Text(
loginType == 1 ? TranslationBase.of(context).enterNationalId : TranslationBase.of(context).enterFile,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64, height: 23 / 16),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.64, height: 23 / 16),
),
SizedBox(height: 20),
// inputWidget("Country", "Saudi Arabia", isEnable: false, hasSelection: true),
@ -119,98 +119,18 @@ class _Login extends State<Login> {
),
),
SizedBox(
height: 43,
width: double.infinity,
child: FlatButton(
onPressed: isButtonDisabled
? null
: () {
this.startLogin();
},
child: Text(
TranslationBase.of(context).login,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Colors.white, letterSpacing: -0.48),
),
disabledColor: Color(0xff575757),
color: Color(0xffD02127),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(6),
),
),
height: 12,
),
]),
),
);
return AppScaffold(
appBarTitle: TranslationBase.of(context).login,
isShowAppBar: true,
isShowDecPage: false,
body: SingleChildScrollView(
child: Container(
padding: EdgeInsets.only(top: 10, left: 20, right: 20, bottom: 30),
height: SizeConfig.realScreenHeight * .9,
width: SizeConfig.realScreenWidth,
child: Column(
children: <Widget>[
Expanded(
flex: 2,
child: Texts(
loginType == 1 ? TranslationBase.of(context).enterNationalId : TranslationBase.of(context).enterFile,
fontSize: SizeConfig.textMultiplier * 3.5,
textAlign: TextAlign.start,
)),
Expanded(
flex: 3,
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: <Widget>[
Directionality(
textDirection: TextDirection.ltr,
child: MobileNo(controller: mobileNumberController, onNumberChange: (value) => {mobileNo = value, validateForm()}, onCountryChange: (value) => countryCode = value)),
Directionality(
textDirection: TextDirection.ltr,
child: Container(
child: TextFields(
keyboardType: TextInputType.number,
fontWeight: FontWeight.normal,
controller: nationalIDorFile,
onChanged: (value) => {validateForm()},
prefixIcon: Icon(loginType == 1 ? Icons.chrome_reader_mode : Icons.receipt, color: secondaryColor),
padding: EdgeInsets.only(top: 20, bottom: 20, left: 10, right: 10),
hintText: loginType == 1 ? TranslationBase.of(context).nationalID : TranslationBase.of(context).fileNo,
)))
],
),
),
Expanded(
flex: 3,
child: Column(
mainAxisAlignment: MainAxisAlignment.end,
children: <Widget>[
Divider(
color: Colors.grey,
height: 2,
),
SizedBox(
height: 10,
),
Row(
children: <Widget>[
Expanded(
child: DefaultButton(
TranslationBase.of(context).login,
() => {this.startLogin()},
color: isButtonDisabled == true ? Colors.grey : Colors.grey[900],
textColor: Colors.white,
))
],
),
],
))
],
DefaultButton(
TranslationBase.of(context).login,
isButtonDisabled
? null
: () {
this.startLogin();
},
disabledColor: Color(0xff575757),
),
),
]),
),
);
}
@ -240,7 +160,6 @@ class _Login extends State<Login> {
_labelText,
style: TextStyle(
fontSize: 11,
fontFamily: "Poppins",
fontWeight: FontWeight.w600,
color: Color(0xff2B353E),
letterSpacing: -0.44,
@ -254,7 +173,6 @@ class _Login extends State<Login> {
onChanged: (value) => {validateForm()},
style: TextStyle(
fontSize: 14,
fontFamily: "Poppins",
height: 21 / 14,
fontWeight: FontWeight.w400,
color: Color(0xff2B353E),
@ -265,7 +183,6 @@ class _Login extends State<Login> {
hintText: _hintText,
hintStyle: TextStyle(
fontSize: 14,
fontFamily: "Poppins",
height: 21 / 14,
fontWeight: FontWeight.w400,
color: Color(0xff575757),
@ -278,7 +195,6 @@ class _Login extends State<Login> {
"+" + prefix,
style: TextStyle(
fontSize: 14,
fontFamily: "Poppins",
height: 21 / 14,
fontWeight: FontWeight.w500,
color: Color(0xff2E303A),

@ -52,15 +52,15 @@ class _WelcomeLogin extends State<WelcomeLogin> {
SizedBox(height: 16),
Text(
TranslationBase.of(context).welcome,
style: TextStyle(fontSize: 24, fontFamily: "Poppins", fontWeight: FontWeight.w700, color: Color(0xff2B353E), letterSpacing: -1.44, height: 23 / 24),
style: TextStyle(fontSize: 24, fontWeight: FontWeight.w700, color: Color(0xff2B353E), letterSpacing: -1.44, height: 23 / 24),
),
Text(
TranslationBase.of(context).welcomeText,
style: TextStyle(fontSize: 14, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.56, height: 21 / 14),
style: TextStyle(fontSize: 14, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.56, height: 21 / 14),
),
Text(
TranslationBase.of(context).welcomeText2,
style: TextStyle(fontSize: 14, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.56, height: 21 / 14),
style: TextStyle(fontSize: 14, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.56, height: 21 / 14),
),
SizedBox(
height: 14,

@ -1,24 +1,18 @@
import 'dart:async';
import 'package:diplomaticquarterapp/pages/landing/landing_page.dart';
import 'package:diplomaticquarterapp/theme/theme_notifier.dart';
import 'package:diplomaticquarterapp/theme/theme_value.dart';
import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:firebase_analytics/observer.dart';
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:provider/provider.dart';
import 'package:flutter/services.dart';
import 'analytics/google-analytics.dart';
import 'config/shared_pref_kay.dart';
import 'config/size_config.dart';
import 'core/service/AuthenticatedUserObject.dart';
import 'core/service/privilege_service.dart';
import 'core/viewModels/project_view_model.dart';
import 'locator.dart';
import 'models/Authentication/authenticated_user.dart';
import 'widgets/transitions/slide_up_page.dart';
AppSharedPreferences sharedPref = new AppSharedPreferences();
AuthenticatedUserObject authenticatedUserObject = locator<AuthenticatedUserObject>();
@ -79,7 +73,7 @@ class _SplashScreenState extends State<SplashScreen> {
children: [
Text(
TranslationBase.of(context).poweredBy,
style: TextStyle(fontSize: 14, fontFamily: "Poppins", fontWeight: FontWeight.w400, color: Color(0xff333C45), letterSpacing: -0.56, height: 16 / 14),
style: TextStyle(fontSize: 14, fontWeight: FontWeight.w400, color: Color(0xff333C45), letterSpacing: -0.56, height: 16 / 14),
),
SizedBox(
height: 5,
@ -94,7 +88,7 @@ class _SplashScreenState extends State<SplashScreen> {
),
Text(
"Version 1.1.0",
style: TextStyle(fontSize: 10, fontFamily: "Poppins", fontWeight: FontWeight.w400, color: Color(0xff3989898), letterSpacing: 0, height: 12 / 10),
style: TextStyle(fontSize: 10, fontWeight: FontWeight.w400, color: Color(0xff3989898), letterSpacing: 0, height: 12 / 10),
),
SizedBox(
height: 18,

@ -17,7 +17,6 @@ defaultTheme({fontName}) {
return ThemeData(
fontFamily: fontName,
//projectProvider.isArabic ? 'Cairo' : 'WorkSans',
primarySwatch: Colors.blue,
visualDensity: VisualDensity.adaptivePlatformDensity,
brightness: Brightness.light,

@ -2,10 +2,11 @@ import 'package:flutter/material.dart';
class DefaultButton extends StatelessWidget {
final String text;
final Function onPress;
final VoidCallback onPress;
final Color textColor;
final Color color;
DefaultButton(this.text, this.onPress, {this.color, this.textColor = Colors.white});
final Color disabledColor;
DefaultButton(this.text, this.onPress, {this.color, this.disabledColor, this.textColor = Colors.white});
@override
Widget build(BuildContext context) {
@ -13,15 +14,14 @@ class DefaultButton extends StatelessWidget {
height: 43,
width: double.infinity,
child: FlatButton(
onPressed: () {
onPress();
},
onPressed: onPress,
child: Text(
text,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: textColor, letterSpacing: -0.48),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: textColor, letterSpacing: -0.48),
),
// color: Color(0xffD02127),
color: color ?? const Color(0xffD02127),
disabledColor: disabledColor,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(6),
),

@ -50,7 +50,7 @@ class LineChartCurvedState extends State<LineChartCurved> {
children: <Widget>[
Text(
widget.title,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64, height: 25 / 16),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64, height: 25 / 16),
),
SizedBox(height: 16),
AspectRatio(
@ -83,7 +83,7 @@ class LineChartCurvedState extends State<LineChartCurved> {
titlesData: FlTitlesData(
bottomTitles: SideTitles(
showTitles: true,
getTextStyles: (value) => TextStyle(fontSize: 12, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: 0, height: 18 / 12),
getTextStyles: (value) => TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: 0, height: 18 / 12),
margin: 8,
rotateAngle: -0,
getTitles: (value) {
@ -107,7 +107,7 @@ class LineChartCurvedState extends State<LineChartCurved> {
),
leftTitles: SideTitles(
showTitles: true,
getTextStyles: (value) => TextStyle(fontSize: 12, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: 0, height: 18 / 12),
getTextStyles: (value) => TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: 0, height: 18 / 12),
getTitles: (value) {
return '${value.toInt()}';

@ -51,7 +51,7 @@ class LabResultChartAndDetails extends StatelessWidget {
Expanded(
child: Text(
TranslationBase.of(context).graphDetails,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64, height: 25 / 16),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64, height: 25 / 16),
),
),
],
@ -74,7 +74,7 @@ class LabResultChartAndDetails extends StatelessWidget {
// Expanded(
// child: Text(
// TranslationBase.of(context).generalResult,
// style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64, height: 25 / 16),
// style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64, height: 25 / 16),
// ),
// ),
// ],

@ -107,7 +107,7 @@ class _LaboratoryResultWidgetState extends State<LaboratoryResultWidget> {
Expanded(
child: Text(
TranslationBase.of(context).generalResult,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64, height: 25 / 16),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64, height: 25 / 16),
),
),
Icon(
@ -164,7 +164,7 @@ class _LaboratoryResultWidgetState extends State<LaboratoryResultWidget> {
Expanded(
child: Text(
TranslationBase.of(context).specialResult,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64, height: 25 / 16),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64, height: 25 / 16),
),
),
Icon(

@ -161,11 +161,11 @@ Widget myRichText(String title, String value) {
return RichText(
text: TextSpan(
text: title,
style: TextStyle(fontSize: 12, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff575757), letterSpacing: -0.4, height: 18 / 10),
style: TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xff575757), letterSpacing: -0.4, height: 18 / 10),
children: <TextSpan>[
TextSpan(
text: " $value",
style: TextStyle(fontSize: 14, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.48, height: 18 / 12),
style: TextStyle(fontSize: 14, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.48, height: 18 / 12),
)
]),
);

@ -92,7 +92,11 @@ class _AppDrawerState extends State<AppDrawer> {
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
SvgPicture.asset("assets/images/new/logo.svg"),
SvgPicture.asset(
"assets/images/new/logo.svg",
height: 60,
width: 60,
),
IconButton(
icon: Icon(Icons.clear),
onPressed: () {
@ -112,20 +116,15 @@ class _AppDrawerState extends State<AppDrawer> {
children: [
Text(
(user != null && projectProvider.isLogin) ? user.firstName + ' ' + user.lastName : TranslationBase.of(context).cantSeeProfile,
style: TextStyle(
color: Colors.black,
fontWeight: FontWeight.bold,
fontSize: 17,
letterSpacing: -1.2,
),
style: TextStyle(color: Color(0xff2E303A), fontWeight: FontWeight.bold, fontSize: 20, letterSpacing: -1.2, height: 35 / 20),
),
Text(
(user != null && projectProvider.isLogin)
? TranslationBase.of(context).fileno + ": " + user.patientID.toString()
? TranslationBase.of(context).fileNumber + ": " + user.patientID.toString()
: TranslationBase.of(context).loginRegisterNow,
style: TextStyle(
color: Colors.black,
fontSize: 13,
color: Color(0xff2E303A),
fontSize: 16,
letterSpacing: -0.96,
height: 1,
),
@ -219,17 +218,22 @@ class _AppDrawerState extends State<AppDrawer> {
children: <Widget>[
AppText(
mainUser.firstName + ' ' + mainUser.lastName,
color: Theme.of(context).textTheme.bodyText1.color,
color: Color(0xff2E303A), //Theme.of(context).textTheme.bodyText1.color,
fontWeight: FontWeight.w600,
fontSize: 12,
letterSpacing: -0.33,
),
AppText(
TranslationBase.of(context).fileno + ": " + mainUser.patientID.toString(),
color: Colors.grey[700],
color: Color(0xff989898),
fontSize: 12,
letterSpacing: -0.33,
),
Container(
height: 1,
margin: EdgeInsets.only(top: 7.5),
color: Color(0xffEDEDED),
),
],
),
),
@ -264,15 +268,15 @@ class _AppDrawerState extends State<AppDrawer> {
children: <Widget>[
AppText(
result.patientName,
color: result.responseID == user.patientID ? Color(0xFF40ACC9) : Colors.black,
color: result.responseID == user.patientID ? Color(0xFF40ACC9) : Color(0xff2B353E),
fontWeight: FontWeight.w600,
fontSize: 12,
fontSize: 11,
letterSpacing: -0.33,
),
AppText(
TranslationBase.of(context).fileno + ": " + result.responseID.toString(),
color: result.responseID == user.patientID ? Color(0xFF40ACC9) : Colors.grey[700],
fontSize: 12,
color: result.responseID == user.patientID ? Color(0xFF40ACC9) : Color(0xff989898),
fontSize: 11,
letterSpacing: -0.33,
),
Divider(
@ -448,7 +452,7 @@ class _AppDrawerState extends State<AppDrawer> {
Text(
"Cloud Solutions",
style: TextStyle(
color: Colors.black,
color: Color(0xff2E303A),
fontSize: 13,
letterSpacing: -0.54,
fontWeight: FontWeight.w600,

@ -22,15 +22,15 @@ class HabibLogoWidget extends StatelessWidget {
children: [
Text(
TranslationBase.of(context).welcomeTo,
style: TextStyle(fontSize: 12, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.72, height: 23 / 12),
style: TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.72, height: 23 / 12),
),
Text(
TranslationBase.of(context).drSulaimanText,
style: TextStyle(fontSize: 24, fontFamily: "Poppins", fontWeight: FontWeight.w700, color: Color(0xff2B353E), letterSpacing: -1.44, height: 23 / 24),
style: TextStyle(fontSize: 24, fontWeight: FontWeight.w700, color: Color(0xff2B353E), letterSpacing: -1.44, height: 23 / 24),
),
Text(
TranslationBase.of(context).patientApp,
style: TextStyle(fontSize: 12, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xffD02127), letterSpacing: -0.72),
style: TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xffD02127), letterSpacing: -0.72),
),
SizedBox(height: 2),
],

@ -83,7 +83,7 @@ class _PhoneNumberSelectorWidgetState extends State<PhoneNumberSelectorWidget> {
_labelText,
style: TextStyle(
fontSize: 11,
fontFamily: "Poppins",
fontWeight: FontWeight.w600,
color: Color(0xff2B353E),
letterSpacing: -0.44,
@ -96,7 +96,7 @@ class _PhoneNumberSelectorWidgetState extends State<PhoneNumberSelectorWidget> {
onChanged: (value) => widget.onNumberChange(value),
style: TextStyle(
fontSize: 14,
fontFamily: "Poppins",
height: 21 / 14,
fontWeight: FontWeight.w400,
color: Color(0xff2B353E),
@ -107,7 +107,7 @@ class _PhoneNumberSelectorWidgetState extends State<PhoneNumberSelectorWidget> {
hintText: _hintText,
hintStyle: TextStyle(
fontSize: 14,
fontFamily: "Poppins",
height: 21 / 14,
fontWeight: FontWeight.w400,
color: Color(0xff575757),
@ -120,7 +120,7 @@ class _PhoneNumberSelectorWidgetState extends State<PhoneNumberSelectorWidget> {
prefix,
style: TextStyle(
fontSize: 14,
fontFamily: "Poppins",
height: 21 / 14,
fontWeight: FontWeight.w500,
color: Color(0xff2E303A),

@ -27,7 +27,7 @@ class MyTabView extends StatelessWidget {
title,
style: TextStyle(
fontSize: 16,
fontFamily: "Poppins",
fontWeight: FontWeight.w600,
color: value == groupValue ? Color(0xff2B353E) : Color(0xff575757),
letterSpacing: -0.48,

@ -83,12 +83,12 @@ class _AppExpandableNotifier extends State<AppExpandableNotifier> {
if (_title.isNotEmpty)
Text(
_title,
style: TextStyle(fontSize: 12, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.72, height: 23 / 12),
style: TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.72, height: 23 / 12),
),
Text(
_subTitle,
maxLines: 1,
style: TextStyle(fontSize: 24, fontFamily: "Poppins", fontWeight: FontWeight.w700, color: Color(0xff2E303A), letterSpacing: -1.44, height: 25 / 24),
style: TextStyle(fontSize: 24, fontWeight: FontWeight.w700, color: Color(0xff2E303A), letterSpacing: -1.44, height: 25 / 24),
),
],
),

@ -61,11 +61,11 @@ class _NotAutPageState extends State<NotAutPage> {
SizedBox(height: 16),
Text(
widget.title,
style: TextStyle(fontSize: 24, fontFamily: "Poppins", fontWeight: FontWeight.w700, color: Color(0xff2B353E), letterSpacing: -1.44, height: 23 / 24),
style: TextStyle(fontSize: 24, fontWeight: FontWeight.w700, color: Color(0xff2B353E), letterSpacing: -1.44, height: 23 / 24),
),
Text(
widget.description,
style: TextStyle(fontSize: 14, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.56, height: 21 / 14),
style: TextStyle(fontSize: 14, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.56, height: 21 / 14),
),
SizedBox(
height: 14,
@ -107,7 +107,7 @@ class _NotAutPageState extends State<NotAutPage> {
},
child: Text(
TranslationBase.of(context).loginregister,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Colors.white, letterSpacing: -0.48),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Colors.white, letterSpacing: -0.48),
),
// color: Color(0xffD02127),
color: Color(0xffD02127),
@ -152,11 +152,11 @@ class _NotAutPageState extends State<NotAutPage> {
SizedBox(height: 16),
Text(
widget.title,
style: TextStyle(fontSize: 24, fontFamily: "Poppins", fontWeight: FontWeight.w700, color: Color(0xff2B353E), letterSpacing: -1.44, height: 23 / 24),
style: TextStyle(fontSize: 24, fontWeight: FontWeight.w700, color: Color(0xff2B353E), letterSpacing: -1.44, height: 23 / 24),
),
Text(
widget.description,
style: TextStyle(fontSize: 14, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.56, height: 21 / 14),
style: TextStyle(fontSize: 14, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.56, height: 21 / 14),
),
SizedBox(
height: 14,
@ -198,7 +198,7 @@ class _NotAutPageState extends State<NotAutPage> {
},
child: Text(
TranslationBase.of(context).loginregister,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Colors.white, letterSpacing: -0.48),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Colors.white, letterSpacing: -0.48),
),
// color: Color(0xffD02127),
color: Color(0xffD02127),

@ -5,6 +5,7 @@ import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/text/app_texts_widget.dart';
import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';
import 'dart:math';
import 'package:provider/provider.dart';
@ -86,8 +87,8 @@ class SMSOTP {
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Image.asset(
type == 1 ? 'assets/images/login/103.png' : 'assets/images/login/104.png',
SvgPicture.asset(
type == 1 ?"assets/images/new/verify_sms.svg":"assets/images/new/verify_whatsapp.svg",
height: 50,
width: 50,
),
@ -105,41 +106,43 @@ class SMSOTP {
SizedBox(height: 22),
Text(
TranslationBase.of(context).pleaseEnterTheVerificationCode + ' xxxxxxxx' + mobileNo.toString().substring(mobileNo.toString().length - 3),
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.48),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.48),
),
SizedBox(height: 18),
Directionality(
textDirection: TextDirection.ltr,
child: OTPWidget(
autoFocus: true,
controller: _pinPutController,
defaultBorderColor: Color(0xffD8D8D8),
maxLength: 4,
onTextChanged: (text) {},
pinBoxColor: Colors.white,
onDone: (code) => _onOtpCallBack(code, null),
textBorderColor: Color(0xffD8D8D8),
pinBoxWidth: 68,
pinBoxHeight: 75,
pinTextStyle: TextStyle(
fontSize: 24.0,
color: Color(0xff2B353E),
child: Center(
child: OTPWidget(
autoFocus: true,
controller: _pinPutController,
defaultBorderColor: Color(0xffD8D8D8),
maxLength: 4,
onTextChanged: (text) {},
pinBoxColor: Colors.white,
onDone: (code) => _onOtpCallBack(code, null),
textBorderColor: Color(0xffD8D8D8),
pinBoxWidth: 60,
pinBoxHeight: 60,
pinTextStyle: TextStyle(
fontSize: 24.0,
color: Color(0xff2B353E),
),
pinTextAnimatedSwitcherTransition: ProvidedPinBoxTextAnimation.scalingTransition,
pinTextAnimatedSwitcherDuration: Duration(milliseconds: 300),
pinBoxRadius: 10,
keyboardType: TextInputType.number,
),
pinTextAnimatedSwitcherTransition: ProvidedPinBoxTextAnimation.scalingTransition,
pinTextAnimatedSwitcherDuration: Duration(milliseconds: 300),
pinBoxRadius: 10,
keyboardType: TextInputType.number,
),
),
SizedBox(height: 30),
RichText(
text: TextSpan(
text: TranslationBase.of(context).validationMessage + '\n',
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.48),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.48),
children: <TextSpan>[
TextSpan(
text: displayTime,
style: TextStyle(fontSize: 16, fontFamily: "Poppins", fontWeight: FontWeight.w600, color: Color(0xffD02127), letterSpacing: -0.48),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xffD02127), letterSpacing: -0.48),
),
],
),

@ -295,7 +295,7 @@ class OTPWidgetState extends State<OTPWidget> with SingleTickerProviderStateMixi
List<Widget> pinCodes = List.generate(widget.maxLength, (int i) {
return _buildPinCode(i, context);
});
return Row(children: pinCodes, mainAxisSize: MainAxisSize.min);
return Row(children: pinCodes, mainAxisSize: MainAxisSize.min,mainAxisAlignment: MainAxisAlignment.spaceBetween,);
}
Widget _buildPinCode(int i, BuildContext context) {

Loading…
Cancel
Save