Provider wireframe completed
parent
5dd5bd742f
commit
9e5c623184
Binary file not shown.
|
After Width: | Height: | Size: 43 KiB |
@ -0,0 +1,78 @@
|
||||
import 'package:car_provider_app/config/routes.dart';
|
||||
import 'package:car_provider_app/utils/navigator.dart';
|
||||
import 'package:car_provider_app/utils/utils.dart';
|
||||
import 'package:car_provider_app/widgets/app_bar.dart';
|
||||
import 'package:car_provider_app/widgets/show_fill_button.dart';
|
||||
import 'package:car_provider_app/widgets/txt.dart';
|
||||
import 'package:car_provider_app/widgets/txt_field.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class Profile1Page extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
appBar: appBar(title: "Sign Up"),
|
||||
body: Container(
|
||||
width: double.infinity,
|
||||
height: double.infinity,
|
||||
child: SingleChildScrollView(
|
||||
child: Padding(
|
||||
padding: EdgeInsets.all(40),
|
||||
child: Column(
|
||||
children: [
|
||||
Txt(
|
||||
"Complete Profile 1/3",
|
||||
txtType: TxtType.heading3,
|
||||
),
|
||||
Txt(
|
||||
"User Information",
|
||||
),
|
||||
mHeight(12),
|
||||
TxtField(
|
||||
hint: "Provider",
|
||||
),
|
||||
mHeight(12),
|
||||
TxtField(
|
||||
hint: "First Name",
|
||||
),
|
||||
mHeight(12),
|
||||
TxtField(
|
||||
hint: "Surname",
|
||||
),
|
||||
mHeight(12),
|
||||
TxtField(
|
||||
hint: "Email",
|
||||
),
|
||||
mHeight(12),
|
||||
TxtField(
|
||||
hint: "Create Password",
|
||||
),
|
||||
mHeight(12),
|
||||
TxtField(
|
||||
hint: "Confirm Password",
|
||||
),
|
||||
mHeight(12),
|
||||
TxtField(
|
||||
hint: "Phone Number",
|
||||
),
|
||||
mHeight(50),
|
||||
Txt(
|
||||
"By creating an account you agree to our Terms of Service and Privacy Policy",
|
||||
textAlign: TextAlign.center,
|
||||
),
|
||||
mHeight(16),
|
||||
ShowFillButton(
|
||||
title: "Continue",
|
||||
width: double.infinity,
|
||||
onPressed: () {
|
||||
navigateWithName(context, AppRoutes.profile2);
|
||||
},
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,64 @@
|
||||
import 'package:car_provider_app/config/routes.dart';
|
||||
import 'package:car_provider_app/utils/navigator.dart';
|
||||
import 'package:car_provider_app/utils/utils.dart';
|
||||
import 'package:car_provider_app/widgets/app_bar.dart';
|
||||
import 'package:car_provider_app/widgets/show_fill_button.dart';
|
||||
import 'package:car_provider_app/widgets/txt.dart';
|
||||
import 'package:car_provider_app/widgets/txt_field.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class Profile2Page extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
appBar: appBar(title: "Sign Up"),
|
||||
body: Container(
|
||||
width: double.infinity,
|
||||
height: double.infinity,
|
||||
child: SingleChildScrollView(
|
||||
child: Padding(
|
||||
padding: EdgeInsets.all(40),
|
||||
child: Column(
|
||||
children: [
|
||||
Txt(
|
||||
"Complete Profile 2/3",
|
||||
txtType: TxtType.heading3,
|
||||
),
|
||||
Txt(
|
||||
"licenses & certificatoins",
|
||||
),
|
||||
mHeight(12),
|
||||
TxtField(
|
||||
hint: "Commercial Record N.O",
|
||||
// isButtonEnable: true,
|
||||
isNeedFilterButton: true,
|
||||
postfixData: Icons.attach_file,
|
||||
),
|
||||
mHeight(12),
|
||||
TxtField(
|
||||
hint: "Chamber of Commerce N.O",
|
||||
isNeedFilterButton: true,
|
||||
postfixData: Icons.attach_file,
|
||||
),
|
||||
mHeight(12),
|
||||
TxtField(
|
||||
hint: "VET Certificate N.O",
|
||||
isNeedFilterButton: true,
|
||||
postfixData: Icons.attach_file,
|
||||
),
|
||||
mHeight(30),
|
||||
ShowFillButton(
|
||||
title: "Save",
|
||||
width: double.infinity,
|
||||
onPressed: () {
|
||||
navigateWithName(context, AppRoutes.profile3);
|
||||
},
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,67 @@
|
||||
import 'package:car_provider_app/utils/utils.dart';
|
||||
import 'package:car_provider_app/widgets/app_bar.dart';
|
||||
import 'package:car_provider_app/widgets/dialog/dialogs.dart';
|
||||
import 'package:car_provider_app/widgets/dialog/message_dialog.dart';
|
||||
import 'package:car_provider_app/widgets/dropdown/dropdow_field.dart';
|
||||
import 'package:car_provider_app/widgets/show_fill_button.dart';
|
||||
import 'package:car_provider_app/widgets/txt.dart';
|
||||
import 'package:car_provider_app/widgets/txt_field.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class Profile3Page extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
appBar: appBar(title: "Sign Up"),
|
||||
body: Container(
|
||||
width: double.infinity,
|
||||
height: double.infinity,
|
||||
child: SingleChildScrollView(
|
||||
child: Padding(
|
||||
padding: EdgeInsets.all(40),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Txt(
|
||||
"Complete Profile 3/3",
|
||||
txtType: TxtType.heading3,
|
||||
),
|
||||
Txt(
|
||||
"Branch Info and Services",
|
||||
),
|
||||
mHeight(12),
|
||||
DropdownField(
|
||||
hint: "Country",
|
||||
),
|
||||
mHeight(12),
|
||||
DropdownField(
|
||||
hint: "City",
|
||||
),
|
||||
mHeight(12),
|
||||
TxtField(
|
||||
hint: "Address",
|
||||
maxLines: 5,
|
||||
),
|
||||
mHeight(12),
|
||||
Txt("Select Location Map"),
|
||||
mHeight(12),
|
||||
Image.asset("assets/images/bn_map.png"),
|
||||
mHeight(50),
|
||||
ShowFillButton(
|
||||
title: "Save",
|
||||
width: double.infinity,
|
||||
onPressed: () {
|
||||
showMDialog(context,
|
||||
child: MessageDialog(
|
||||
title: "Profile Completed",
|
||||
));
|
||||
},
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,78 @@
|
||||
import 'package:car_provider_app/theme/colors.dart';
|
||||
import 'package:car_provider_app/utils/utils.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:car_provider_app/theme/colors.dart';
|
||||
import 'package:car_provider_app/utils/utils.dart';
|
||||
|
||||
import '../txt.dart';
|
||||
|
||||
class DropdownField extends StatefulWidget {
|
||||
String? hint;
|
||||
List<String>? list;
|
||||
|
||||
DropdownField({this.hint, this.list});
|
||||
|
||||
@override
|
||||
State<DropdownField> createState() => _DropdownFieldState();
|
||||
}
|
||||
|
||||
class _DropdownFieldState extends State<DropdownField> {
|
||||
String? dropdownValue;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
decoration: containerColorRadiusBorderWidth(
|
||||
Colors.transparent,
|
||||
4,
|
||||
borderColor,
|
||||
0.5,
|
||||
),
|
||||
margin: EdgeInsets.all(2),
|
||||
padding: EdgeInsets.only(left: 8, right: 8),
|
||||
child: DropdownButton<String>(
|
||||
value: dropdownValue,
|
||||
icon: const Icon(Icons.keyboard_arrow_down_sharp),
|
||||
elevation: 16,
|
||||
iconSize: 16,
|
||||
iconEnabledColor: borderColor,
|
||||
iconDisabledColor: borderColor,
|
||||
isExpanded: true,
|
||||
style: const TextStyle(color: Colors.black),
|
||||
hint: Txt(
|
||||
widget.hint ?? "",
|
||||
txtType: TxtType.heading1,
|
||||
bold: false,
|
||||
color: borderColor,
|
||||
),
|
||||
underline: Container(
|
||||
height: 0,
|
||||
),
|
||||
onChanged: (String? newValue) {
|
||||
setState(() {
|
||||
dropdownValue = newValue!;
|
||||
});
|
||||
},
|
||||
items: (widget.list ??
|
||||
<String>[
|
||||
'One',
|
||||
'Two',
|
||||
'Free',
|
||||
'Four',
|
||||
])
|
||||
.map<DropdownMenuItem<String>>(
|
||||
(String value) {
|
||||
return DropdownMenuItem<String>(
|
||||
value: value,
|
||||
child: Txt(
|
||||
value,
|
||||
txtType: TxtType.heading1,
|
||||
bold: false,
|
||||
),
|
||||
);
|
||||
},
|
||||
).toList(),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,33 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_svg/flutter_svg.dart';
|
||||
import 'package:car_provider_app/config/constants.dart';
|
||||
import 'package:car_provider_app/theme/colors.dart';
|
||||
import 'package:car_provider_app/utils/utils.dart';
|
||||
import 'package:car_provider_app/widgets/txt.dart';
|
||||
|
||||
class DropDownText extends StatelessWidget {
|
||||
String title;
|
||||
|
||||
DropDownText(this.title);
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Row(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Txt(
|
||||
title,
|
||||
txtType: TxtType.heading3,
|
||||
color: accentColor,
|
||||
),
|
||||
mWidth(16),
|
||||
SvgPicture.asset(
|
||||
svgIcons + "ic_arrow_down.svg",
|
||||
width: 10,
|
||||
height: 10,
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue