shuftipro_flutter_sdk 1.0.1 shuftipro_flutter_sdk: ^1.0.1 copied to clipboard
ShuftiPro Flutter Package.
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter/foundation.dart';
import 'package:shuftipro_flutter_sdk/ShuftiPro.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
String clientId = "";
String secretKey = "";
typedef CalbackFunction = void Function(String value);
var response = "null";
bool isDoc = false;
Map<String, Object> secondPayload;
var secondAuthObject, asyncVar;
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
scaffoldBackgroundColor: Colors.white,
fontFamily: 'OpenSans'),
home: MyHomePage(title: 'ShuftPro'),
routes: <String, WidgetBuilder>{
"/ConsentScreen": (BuildContext context) => new ShuftiPro(),
});
}
}
class MyHomePage extends StatefulWidget {
MyHomePage({Key key, this.title}) : super(key: key);
final String title;
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
bool isFace = false,
isDoc = false,
isDoc2 = false,
isAddress = false,
isConsent = false,
isBackground = false,
isPhone = false;
var authObject = {
"auth_type": "basic_auth",
"client_id": clientId,
"secret_key": secretKey,
// "access_token": accessToken,
};
Map<String, Object> createdPayload = {
"country": "PK",
"language": "EN",
"email": "",
"callback_url": "http://www.example.com",
"redirect_url": "https://www.dummyurl.com/",
"show_consent": 1,
"show_results": 1,
"show_privacy_policy": 1,
"open_webView": false,
};
Map<String, Object> verificationObj = {
"face": {},
"background_checks": {},
"phone": {},
"document": {
"supported_types": [
"passport",
"id_card",
"driving_license",
"credit_or_debit_card",
],
"name": {
"first_name": "frstName",
"last_name": "",
"middle_name": "",
},
"dob": "",
"document_number": "",
"expiry_date": "",
"issue_date": "",
"fetch_enhanced_data": "",
"gender": "",
"backside_proof_required": "1",
},
"document_two": {
"supported_types": [
"passport",
"id_card",
"driving_license",
"credit_or_debit_card"
],
"name": {"first_name": "", "last_name": "", "middle_name": ""},
"dob": "",
"document_number": "",
"expiry_date": "",
"issue_date": "",
"fetch_enhanced_data": "",
"gender": "",
"backside_proof_required": "0",
},
"address": {
"full_address": "",
"name": {
"first_name": "",
"last_name": "",
"middle_name": "",
"fuzzy_match": "",
},
"supported_types": ["id_card", "utility_bill", "bank_statement"],
},
"consent": {
"supported_types": ["printed", "handwritten"],
"text": "My name is John Doe and I authorize this transaction of \$100/-",
},
};
void faceChk(bool newVal) => setState(() {
isFace = newVal;
if (isFace) {
createdPayload["face"] = verificationObj['face'];
} else if (!isFace) {
createdPayload.remove('face');
}
});
void docChk(bool newVal) => setState(() {
isDoc = newVal;
if (isDoc) {
createdPayload["document"] = verificationObj['document'];
} else if (!isDoc) {
createdPayload.remove('document');
}
});
void docChk2(bool newVal) => setState(() {
isDoc2 = newVal;
if (isDoc2) {
createdPayload["document_two"] = verificationObj['document_two'];
} else if (!isDoc2) {
createdPayload.remove('document_two');
}
});
void addressChk(bool newVal) => setState(() {
isAddress = newVal;
if (isAddress) {
createdPayload["address"] = verificationObj['address'];
} else if (!isAddress) {
createdPayload.remove('address');
}
});
void consentChk(bool newVal) => setState(() {
isConsent = newVal;
if (isConsent) {
createdPayload["consent"] = verificationObj['consent'];
} else if (!isConsent) {
createdPayload.remove('consent');
}
});
void backgroundChk(bool newVal) => setState(() {
isBackground = newVal;
if (isBackground) {
createdPayload["background_checks"] =
verificationObj['background_checks'];
} else if (!isBackground) {
createdPayload.remove('background_checks');
}
});
void phoneChk(bool newVal) => setState(() {
isPhone = newVal;
if (isPhone) {
createdPayload["phone"] = verificationObj['phone'];
} else if (!isPhone) {
createdPayload.remove('phone');
}
});
void continueFun() {
if (isFace ||
isDoc ||
isDoc2 ||
isAddress ||
isConsent ||
isBackground ||
isPhone) {
var v = DateTime.now();
var reference = "ShuftiPro_Flutter_$v";
createdPayload["reference"] = reference;
print('continue: $createdPayload');
Navigator.push(
context,
// MaterialPageRoute(builder: (context) => new SecondScreen(authObject: authObject, asyncval: asyncVar,
// createdPayload: createdPayload)),
MaterialPageRoute(
builder: (context) => new MySecond(
authObject: authObject,
asyncval: asyncVar,
createdPayload: createdPayload)),
);
} else {
ScaffoldMessenger.of(context).showSnackBar(SnackBar(
content: Text('Select atleast one method of verification.'),
));
}
}
BoxDecoration myBoxDecoration() {
return BoxDecoration(
border: Border.all(
color: Colors.black45,
width: 0.5,
),
);
}
int web = 0, syn = 0, consnt = 1, privcy = 1, reslt = 1, backs = 0;
var asyncVar = false;
Map<String, Object> docObjTemp;
@override
Widget build(BuildContext context) {
// ScreenUtil.init(new BoxConstraints.loose(Size(360, 690)));
return ScreenUtilInit(
builder: () => Scaffold(
backgroundColor: Colors.white,
body: Center(
child: Column(
children: <Widget>[
Padding(
padding: EdgeInsets.only(
top: 45.w,
left: 15.w,
bottom: 35.w,
right: 15.w,
),
child: new Text(
"Verification",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 18.sp,
fontWeight: FontWeight.bold,
color: Colors.black,
),
),
),
Padding(
padding: EdgeInsets.only(
left: 20.w,
right: 20.w,
bottom: 20.w,
),
child: Container(
alignment: Alignment.topLeft,
child: new Text(
"Choose your method \nof Verification",
style: new TextStyle(
fontSize: 18.sp,
fontWeight: FontWeight.bold,
color: Colors.black,
),
),
),
),
Row(
children: [
Padding(
padding: EdgeInsets.only(
top: 5.w,
left: 20.w,
bottom: 2.w,
right: 7.w,
),
child: Container(
child: OutlinedButton(
onPressed: () {
if (web == 1) {
createdPayload["open_webView"] = false;
setState(() => web = 0);
} else {
createdPayload["open_webView"] = true;
setState(() => web = 1);
}
},
style: OutlinedButton.styleFrom(
backgroundColor: Colors.blueAccent),
child: new Container(
alignment: Alignment.center,
height: 45.h,
width: 0.2.sw,
child: web == 0
? new Text(
"open_webview: 0",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 10.sp,
fontWeight: FontWeight.bold,
color: Colors.white,
fontFamily: 'OpenSans',
),
)
: new Text(
"open_webview: 1",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 10.sp,
fontWeight: FontWeight.bold,
color: Colors.white,
fontFamily: 'OpenSans',
),
),
),
),
),
),
Padding(
padding: EdgeInsets.only(
top: 5.w,
left: 0.w,
bottom: 2.w,
right: 7.w,
),
child: Container(
child: OutlinedButton(
onPressed: () {
if (syn == 1) {
asyncVar = false;
setState(() => syn = 0);
} else {
asyncVar = true;
setState(() => syn = 1);
}
},
style: OutlinedButton.styleFrom(
backgroundColor: Colors.blueAccent),
child: new Container(
alignment: Alignment.center,
height: 45.h,
width: 0.2.sw,
child: syn == 0
? new Text(
"async: 0",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 10.sp,
fontWeight: FontWeight.bold,
color: Colors.white,
fontFamily: 'OpenSans',
),
)
: new Text(
"async: 1",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 10.sp,
fontWeight: FontWeight.bold,
color: Colors.white,
fontFamily: 'OpenSans',
),
),
),
),
),
),
Padding(
padding: EdgeInsets.only(
top: 5.w,
left: 0.w,
bottom: 2.w,
right: 5.w,
),
child: Container(
child: OutlinedButton(
onPressed: () {
if (consnt == 1) {
createdPayload["show_consent"] = 0;
setState(() => consnt = 0);
} else {
createdPayload["show_consent"] = 1;
setState(() => consnt = 1);
}
},
style: OutlinedButton.styleFrom(
backgroundColor: Colors.blueAccent),
child: new Container(
alignment: Alignment.center,
height: 45.h,
width: 0.2.sw,
child: consnt == 0
? new Text(
"show_consent: 0",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 10.sp,
fontWeight: FontWeight.bold,
color: Colors.white,
fontFamily: 'OpenSans',
),
)
: new Text(
"show_consent: 1",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 10.sp,
fontWeight: FontWeight.bold,
color: Colors.white,
fontFamily: 'OpenSans',
),
),
),
),
),
),
],
),
Row(
children: [
Padding(
padding: EdgeInsets.only(
top: 5.w,
left: 20.w,
bottom: 2.w,
right: 7.w,
),
child: Container(
child: OutlinedButton(
onPressed: () {
if (privcy == 1) {
createdPayload["show_privacy_policy"] = 0;
setState(() => privcy = 0);
} else {
createdPayload["show_privacy_policy"] = 1;
setState(() => privcy = 1);
}
},
style: OutlinedButton.styleFrom(
backgroundColor: Colors.blueAccent),
child: new Container(
alignment: Alignment.center,
height: 45.h,
width: 0.2.sw,
child: privcy == 0
? new Text(
"privacy_policy: 0",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 10.sp,
fontWeight: FontWeight.bold,
color: Colors.white,
fontFamily: 'OpenSans',
),
)
: new Text(
"privacy_policy: 1",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 10.sp,
fontWeight: FontWeight.bold,
color: Colors.white,
fontFamily: 'OpenSans',
),
),
),
),
),
),
Padding(
padding: EdgeInsets.only(
top: 5.w,
left: 0.w,
bottom: 2.w,
right: 5.w,
),
child: Container(
child: OutlinedButton(
onPressed: () {
if (reslt == 1) {
createdPayload["show_results"] = 0;
setState(() => reslt = 0);
} else {
createdPayload["show_results"] = 1;
setState(() => reslt = 1);
}
},
style: OutlinedButton.styleFrom(
backgroundColor: Colors.blueAccent),
child: new Container(
alignment: Alignment.center,
height: 45.h,
width: 0.2.sw,
child: reslt == 0
? new Text(
"show_results: 0",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 10.sp,
fontWeight: FontWeight.bold,
color: Colors.white,
fontFamily: 'OpenSans',
),
)
: new Text(
"show_results: 1",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 10.sp,
fontWeight: FontWeight.bold,
color: Colors.white,
fontFamily: 'OpenSans',
),
),
),
),
),
),
Padding(
padding: EdgeInsets.only(
top: 5.w,
left: 0.w,
bottom: 2.w,
right: 5.w,
),
child: Container(
child: OutlinedButton(
onPressed: () {
docObjTemp = verificationObj["document"];
if (backs == 1) {
docObjTemp["backside_proof_required"] = 0;
setState(() => backs = 0);
} else {
docObjTemp["backside_proof_required"] = 1;
setState(() => backs = 1);
}
},
style: OutlinedButton.styleFrom(
backgroundColor: Colors.blueAccent),
child: new Container(
alignment: Alignment.center,
height: 45.h,
width: 0.2.sw,
child: backs == 0
? new Text(
"backside: 0",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 10.sp,
fontWeight: FontWeight.bold,
color: Colors.white,
fontFamily: 'OpenSans',
),
)
: new Text(
"backside: 1",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 10.sp,
fontWeight: FontWeight.bold,
color: Colors.white,
fontFamily: 'OpenSans',
),
),
),
),
),
),
],
),
Container(
height: 295.h,
child: ListView(shrinkWrap: true, children: <Widget>[
Padding(
padding: EdgeInsets.only(
left: 20.w,
bottom: 5.w,
right: 20.w,
top: 0.w,
),
child: new GestureDetector(
onTap: () {
faceChk(!isFace);
},
child: new Container(
decoration: myBoxDecoration(),
child: Row(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new IconButton(
icon:
Image.asset('assets/images/face.png'),
onPressed: null,
)),
),
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new Text(
"Face Verification",
style: new TextStyle(
fontSize: 14.sp,
color: Colors.black,
),
),
),
),
Spacer(),
Container(
child: Checkbox(
value: isFace,
onChanged: faceChk,
),
),
],
),
),
),
),
Padding(
padding: EdgeInsets.only(
left: 20.w,
bottom: 5.w,
right: 20.w,
),
child: new GestureDetector(
onTap: () {
docChk(!isDoc);
},
child: new Container(
decoration: myBoxDecoration(),
child: Row(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new IconButton(
icon: Image.asset(
'assets/images/document.png'),
onPressed: null,
),
),
),
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new Text(
"Document Verification",
style: new TextStyle(
fontSize: 14.sp,
color: Colors.black,
),
),
),
),
Spacer(),
Container(
alignment: Alignment.centerRight,
child: Checkbox(
value: isDoc,
onChanged: docChk,
),
),
],
),
),
),
),
Padding(
padding: EdgeInsets.only(
left: 20.w,
bottom: 5.w,
right: 20.w,
),
child: new GestureDetector(
onTap: () {
docChk2(!isDoc2);
},
child: new Container(
decoration: myBoxDecoration(),
child: Row(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new IconButton(
icon: Image.asset(
'assets/images/document.png'),
onPressed: null,
),
),
),
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new Text(
"Document Two Verification",
style: new TextStyle(
fontSize: 14.sp,
color: Colors.black,
),
),
),
),
Spacer(),
Container(
alignment: Alignment.centerRight,
child: Checkbox(
value: isDoc2,
onChanged: docChk2,
),
),
],
),
),
),
),
Padding(
padding: EdgeInsets.only(
left: 20.w,
bottom: 5.w,
right: 20.w,
),
child: new GestureDetector(
onTap: () {
addressChk(!isAddress);
},
child: new Container(
decoration: myBoxDecoration(),
child: Row(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new IconButton(
// color: themeData.primaryColor,
icon: Image.asset(
'assets/images/address.png'),
onPressed: null,
),
),
),
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new Text(
"Address Verification",
style: new TextStyle(
fontSize: 14.sp,
color: Colors.black,
),
),
),
),
Spacer(),
Container(
alignment: Alignment.centerRight,
child: Checkbox(
value: isAddress,
onChanged: addressChk,
),
),
],
),
),
),
),
Padding(
padding: EdgeInsets.only(
left: 20.w,
bottom: 5.w,
right: 20.w,
),
child: new GestureDetector(
onTap: () {
consentChk(!isConsent);
},
child: new Container(
decoration: myBoxDecoration(),
child: Row(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new IconButton(
icon: Image.asset(
'assets/images/consent.png'),
onPressed: null,
),
),
),
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new Text(
"Consent Verification",
style: new TextStyle(
fontSize: 14.sp,
color: Colors.black,
),
),
),
),
Spacer(),
Container(
alignment: Alignment.centerRight,
child: Checkbox(
value: isConsent,
onChanged: consentChk,
),
),
],
),
),
),
),
Padding(
padding: EdgeInsets.only(
left: 20.w,
bottom: 5.w,
right: 20.w,
),
child: new GestureDetector(
onTap: () {
backgroundChk(!isBackground);
},
child: new Container(
decoration: myBoxDecoration(),
child: Row(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new IconButton(
icon: Image.asset(
'assets/images/bgChecks.png'),
onPressed: null,
),
),
),
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new Text(
"Background Verification",
style: new TextStyle(
fontSize: 14.sp,
color: Colors.black,
),
),
),
),
Spacer(),
Container(
alignment: Alignment.centerRight,
child: Checkbox(
value: isBackground,
onChanged: backgroundChk,
),
),
],
),
),
),
),
Padding(
padding: EdgeInsets.only(
left: 20.w,
bottom: 5.w,
right: 20.w,
),
child: new GestureDetector(
onTap: () {
phoneChk(!isPhone);
},
child: new Container(
decoration: myBoxDecoration(),
child: Row(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new IconButton(
icon: Image.asset(
'assets/images/2fa.png'),
onPressed: null,
),
),
),
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new Text(
"Two Factor Verification",
style: new TextStyle(
fontSize: 14.sp,
color: Colors.black,
),
),
),
),
Spacer(),
Container(
alignment: Alignment.centerRight,
child: Checkbox(
value: isPhone,
onChanged: phoneChk,
),
),
],
),
),
),
),
]),
),
Spacer(),
Padding(
padding: EdgeInsets.only(
top: 5.w,
left: 10.w,
bottom: 20.w,
right: 10.w,
),
child: Container(
child: OutlinedButton(
onPressed: continueFun,
style: OutlinedButton.styleFrom(
backgroundColor: Colors.blueAccent),
child: new Container(
alignment: Alignment.center,
height: 45.h,
width: 1.sw,
child: new Text(
"Continue",
textAlign: TextAlign.center,
style: new TextStyle(
fontSize: 17.sp,
fontWeight: FontWeight.bold,
color: Colors.white,
fontFamily: 'OpenSans',
),
),
),
),
),
),
],
),
),
));
}
}
class MySecond extends StatefulWidget {
// MySecond({Key key, this.title, this.callback}) : super(key: key);
final String title;
final CalbackFunction callback;
MySecond(
{Key key,
this.title,
var authObject,
var asyncval,
Map<String, Object> createdPayload,
this.callback}) {
asyncVar = asyncval;
secondAuthObject = authObject;
secondPayload = createdPayload;
}
@override
SecondScreen createState() => new SecondScreen();
}
class SecondScreen extends State<MySecond> {
@override
Widget build(BuildContext context) {
// ScreenUtil.init(new BoxConstraints.loose(Size(360, 690)));
return Scaffold(
backgroundColor: Colors.white,
appBar: AppBar(
elevation: 0.0,
backgroundColor: Colors.white,
automaticallyImplyLeading: true,
leading: GestureDetector(
onTap: () {
Navigator.of(context).pop();
},
child: Container(
height: 27,
width: 27,
alignment: Alignment.centerLeft,
margin: const EdgeInsets.fromLTRB(20, 0, 0, 0),
child: Image(
image: AssetImage("assets/images/back_icon.png"),
height: 20,
width: 20,
),
),
),
),
body: Center(
child: Column(
children: <Widget>[
Padding(
padding: EdgeInsets.only(
top: 65.w,
left: 15.w,
bottom: 25.w,
right: 15.w,
),
child: Image(
image: AssetImage("assets/images/selectTypeIcon.png"),
height: 100.h,
),
),
Padding(
padding: EdgeInsets.only(
top: 10.w,
left: 15.w,
bottom: 5.w,
right: 15.w,
),
child: Text(
'Choose Verification Type',
textAlign: TextAlign.center,
style: TextStyle(
fontWeight: FontWeight.bold,
fontSize: 18.sp,
),
),
),
Padding(
padding: EdgeInsets.only(
top: 15.w,
left: 10.w,
bottom: 5.w,
right: 10.w,
),
child: GestureDetector(
onTap: () {
secondPayload["verification_mode"] = "image_only";
Navigator.push(
context,
new MaterialPageRoute(
builder: (context) => new ShuftiPro(
authObject: secondAuthObject,
createdPayload: secondPayload,
async: asyncVar,
callback: (res) {
response = res.toString();
ScaffoldMessenger.of(this.context)
.showSnackBar(SnackBar(
content: Text(res.toString()),
));
},
homeClass: MyHomePage())));
},
child: Container(
height: 40.h,
decoration:
BoxDecoration(border: Border.all(color: Colors.black12)),
child: Row(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
height: 40.h,
width: 0.11.sw,
child: new IconButton(
icon: Image.asset('assets/images/imageCam.png'),
onPressed: null,
),
),
),
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new Text(
"Image Proof",
style: new TextStyle(
fontSize: 16.sp,
color: Colors.black,
fontWeight: FontWeight.w400),
),
),
),
Spacer(),
Padding(
padding: EdgeInsets.only(
right: 6.w,
),
child: Container(
height: 18.h,
width: 0.06.sw,
decoration: BoxDecoration(
border: Border.all(color: Colors.black12)),
alignment: Alignment.centerRight,
child: Image(
image: AssetImage("assets/sdk/continue_next.png"),
height: 18.h,
width: 0.06.sw,
),
),
),
],
),
),
),
),
Padding(
padding: EdgeInsets.only(
left: 10.w,
bottom: 5.w,
right: 10.w,
),
child: GestureDetector(
onTap: () {
// _MyHomePageState().createdPayload["verification_mode"] = "video_only";
secondPayload["verification_mode"] = "video_only";
Navigator.push(
context,
new MaterialPageRoute(
builder: (context) => new ShuftiPro(
authObject: secondAuthObject,
createdPayload: secondPayload,
// async: false,
async: asyncVar,
callback: (res) {
print("\n\nHomeScreen: " + res.toString());
ScaffoldMessenger.of(this.context)
.showSnackBar(SnackBar(
content: Text(res.toString()),
));
},
homeClass: MyHomePage())));
},
child: Container(
height: 40.h,
decoration:
BoxDecoration(border: Border.all(color: Colors.black12)),
child: Row(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
height: 40.h,
width: 0.11.sw,
child: new IconButton(
icon: Image.asset('assets/images/videoCam.png'),
onPressed: null,
),
),
),
Padding(
padding: EdgeInsets.only(
left: 5.w,
),
child: Container(
child: new Text(
"Video Proof ",
style: new TextStyle(
fontSize: 16.sp,
color: Colors.black,
fontWeight: FontWeight.w400),
),
),
),
Spacer(),
Padding(
padding: EdgeInsets.only(
right: 6.w,
),
child: Container(
height: 18.h,
width: 0.06.sw,
decoration: BoxDecoration(
border: Border.all(color: Colors.black12)),
alignment: Alignment.centerRight,
child: Image(
image: AssetImage("assets/sdk/continue_next.png"),
height: 18.h,
width: 0.06.sw,
),
),
),
],
),
),
),
),
Spacer(),
Padding(
padding: EdgeInsets.only(
bottom: 9.w,
),
child: Container(
height: 13.h,
child: Image.asset("assets/images/footerImage.png")),
),
],
),
),
);
}
}