diff --git a/assets/icons/anouncement_icon.svg b/assets/icons/anouncement_icon.svg
new file mode 100644
index 0000000..dad55fd
--- /dev/null
+++ b/assets/icons/anouncement_icon.svg
@@ -0,0 +1,6 @@
+
diff --git a/assets/icons/appointments_icon.svg b/assets/icons/appointments_icon.svg
new file mode 100644
index 0000000..ebf91e9
--- /dev/null
+++ b/assets/icons/appointments_icon.svg
@@ -0,0 +1,5 @@
+
diff --git a/assets/icons/close_icon.svg b/assets/icons/close_icon.svg
new file mode 100644
index 0000000..0230942
--- /dev/null
+++ b/assets/icons/close_icon.svg
@@ -0,0 +1,3 @@
+
diff --git a/assets/icons/drawer_icon.svg b/assets/icons/drawer_icon.svg
new file mode 100644
index 0000000..363d413
--- /dev/null
+++ b/assets/icons/drawer_icon.svg
@@ -0,0 +1,6 @@
+
diff --git a/assets/icons/home_icon.svg b/assets/icons/home_icon.svg
new file mode 100644
index 0000000..758dd1b
--- /dev/null
+++ b/assets/icons/home_icon.svg
@@ -0,0 +1,3 @@
+
diff --git a/assets/icons/mini_clock.svg b/assets/icons/mini_clock.svg
new file mode 100644
index 0000000..d59971c
--- /dev/null
+++ b/assets/icons/mini_clock.svg
@@ -0,0 +1,3 @@
+
diff --git a/assets/icons/next_icon.svg b/assets/icons/next_icon.svg
new file mode 100644
index 0000000..0a3dc04
--- /dev/null
+++ b/assets/icons/next_icon.svg
@@ -0,0 +1,3 @@
+
diff --git a/assets/icons/notification_bell.svg b/assets/icons/notification_bell.svg
new file mode 100644
index 0000000..dd32254
--- /dev/null
+++ b/assets/icons/notification_bell.svg
@@ -0,0 +1,6 @@
+
diff --git a/assets/icons/providers_icon.svg b/assets/icons/providers_icon.svg
new file mode 100644
index 0000000..f4cc334
--- /dev/null
+++ b/assets/icons/providers_icon.svg
@@ -0,0 +1,7 @@
+
diff --git a/assets/icons/settings_icon.svg b/assets/icons/settings_icon.svg
new file mode 100644
index 0000000..6fe8da9
--- /dev/null
+++ b/assets/icons/settings_icon.svg
@@ -0,0 +1,3 @@
+
diff --git a/lib/views/dashboard/widgets/ad_widget.dart b/lib/views/dashboard/widgets/ad_widget.dart
new file mode 100644
index 0000000..4cf8920
--- /dev/null
+++ b/lib/views/dashboard/widgets/ad_widget.dart
@@ -0,0 +1,111 @@
+
+import 'package:flutter/material.dart';
+import 'package:mc_common_app/extensions/int_extensions.dart';
+import 'package:mc_common_app/extensions/string_extensions.dart';
+import 'package:mc_common_app/theme/colors.dart';
+import 'package:mc_common_app/widgets/extensions/extensions_widget.dart';
+
+class AdWidget extends StatelessWidget {
+ final int count;
+
+ const AdWidget({Key? key, required this.count}) : super(key: key);
+
+ @override
+ Widget build(BuildContext context) {
+ return ListView.builder(
+ itemCount: count,
+ shrinkWrap: true,
+ physics: const NeverScrollableScrollPhysics(),
+ itemBuilder: (BuildContext context, int index) {
+ return Padding(
+ padding: const EdgeInsets.only(bottom: 15),
+ child: buildAdContainer(),
+ );
+ });
+ }
+
+ Widget buildAdContainer() {
+ return Row(
+ children: [
+ Image.asset(
+ "assets/images/bn_car.jpeg",
+ width: 80,
+ height: 80,
+ fit: BoxFit.cover,
+ ),
+ 12.width,
+ Expanded(
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Row(
+ mainAxisAlignment: MainAxisAlignment.start,
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Expanded(
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ mainAxisAlignment: MainAxisAlignment.start,
+ children: [
+ "Toyota Crolla".toText(fontSize: 16, isBold: true),
+ Row(
+ children: [
+ "Model:".toText(
+ color: MyColors.lightTextColor,
+ ),
+ 2.width,
+ "2019".toText(),
+ ],
+ ),
+ Row(
+ children: [
+ "Mileage:".toText(
+ color: MyColors.lightTextColor,
+ ),
+ 2.width,
+ "73,000 km".toText(),
+ ],
+ ),
+ ],
+ ),
+ ),
+ Column(
+ crossAxisAlignment: CrossAxisAlignment.end,
+ mainAxisAlignment: MainAxisAlignment.start,
+ children: [
+ "Riyadh".toText(
+ color: MyColors.lightTextColor,
+ ),
+ "9 Hours Ago".toText(
+ color: MyColors.lightTextColor,
+ ),
+ ],
+ ),
+ ],
+ ),
+ 8.height,
+ Row(
+ children: [
+ Expanded(
+ child: Row(
+ mainAxisAlignment: MainAxisAlignment.start,
+ crossAxisAlignment: CrossAxisAlignment.end,
+ children: [
+ "30,000".toText(fontSize: 16, isBold: true),
+ 2.width,
+ "SAR:".toText(
+ color: MyColors.lightTextColor,
+ ),
+ ],
+ ),
+ ),
+ const Icon(Icons.arrow_forward)
+ ],
+ ),
+ ],
+ ),
+ ),
+ ],
+ ).toWhiteContainer(width: double.infinity, allPading: 12);
+ }
+}
diff --git a/lib/views/dashboard/widgets/appointment_slider_widget.dart b/lib/views/dashboard/widgets/appointment_slider_widget.dart
new file mode 100644
index 0000000..3e3b3ec
--- /dev/null
+++ b/lib/views/dashboard/widgets/appointment_slider_widget.dart
@@ -0,0 +1,90 @@
+
+import 'package:flutter/material.dart';
+import 'package:mc_common_app/extensions/int_extensions.dart';
+import 'package:mc_common_app/extensions/string_extensions.dart';
+import 'package:mc_common_app/theme/colors.dart';
+import 'package:mc_common_app/widgets/extensions/extensions_widget.dart';
+
+class AppointmentSliderWidget extends StatelessWidget {
+ const AppointmentSliderWidget({Key? key}) : super(key: key);
+
+ @override
+ Widget build(BuildContext context) {
+ return Column(
+ children: [
+ Row(
+ children: [
+ Expanded(
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ mainAxisAlignment: MainAxisAlignment.start,
+ children: [
+ "Olaya Brach".toText(
+ color: MyColors.lightTextColor,
+ isBold: true,
+ ),
+ "Abdullah Alhbas".toText(
+ isBold: true,
+ fontSize: 14,
+ ),
+ Row(
+ children: [
+ "Appt. On:".toText(
+ color: MyColors.lightTextColor,
+ ),
+ 2.width,
+ "19-Mar-2023 11:48 AM".toText(),
+ ],
+ ),
+ ],
+ ),
+ ),
+ "1+ Requests".toText(fontSize: 10).toContainer(
+ borderRadius: 15,
+ backgroundColor: MyColors.lightGreyEAColor,
+ padding: const EdgeInsets.symmetric(
+ vertical: 6,
+ horizontal: 12,
+ ),
+ ),
+ ],
+ ),
+ 8.height,
+ Row(
+ crossAxisAlignment: CrossAxisAlignment.end,
+ children: [
+ Expanded(
+ child: Column(
+ children: [
+ showServices("Maintenance"),
+ 2.height,
+ showServices("Accessories and Modification"),
+ ],
+ ),
+ ),
+ const Icon(
+ Icons.arrow_forward,
+ ),
+ ],
+ ),
+ ],
+ ).toWhiteContainer(width: double.infinity, allPading: 0);
+ }
+
+ Widget showServices(String title) {
+ return Row(
+ children: [
+ const Icon(
+ Icons.ac_unit,
+ color: MyColors.primaryColor,
+ size: 18,
+ ),
+ 8.width,
+ title.toText(
+ fontSize: 14,
+ isBold: true,
+ ),
+ ],
+ );
+ }
+}
diff --git a/lib/views/dashboard/widgets/my_branches_widget.dart b/lib/views/dashboard/widgets/my_branches_widget.dart
new file mode 100644
index 0000000..bb291b2
--- /dev/null
+++ b/lib/views/dashboard/widgets/my_branches_widget.dart
@@ -0,0 +1,39 @@
+
+import 'package:flutter/material.dart';
+import 'package:mc_common_app/extensions/int_extensions.dart';
+import 'package:mc_common_app/extensions/string_extensions.dart';
+import 'package:mc_common_app/widgets/extensions/extensions_widget.dart';
+
+class ServiceProviderWidget extends StatelessWidget {
+ const ServiceProviderWidget({Key? key}) : super(key: key);
+
+ @override
+ Widget build(BuildContext context) {
+ return SizedBox(
+ width: double.infinity,
+ height: 150,
+ child: ListView.builder(
+ itemCount: 9,
+ scrollDirection: Axis.horizontal,
+ shrinkWrap: true,
+ itemBuilder: (BuildContext context, int index) {
+ return SizedBox(
+ width: 90,
+ child: Column(
+ children: [
+ Image.asset(
+ "assets/images/bn_car.jpeg",
+ width: 80,
+ height: 80,
+ fit: BoxFit.cover,
+ ).toCircle(borderRadius: 100),
+ 8.height,
+ "Olaya Branch".toText(fontSize: 14, isBold: true, textAlign: TextAlign.center),
+ ],
+ ),
+ );
+ },
+ ),
+ );
+ }
+}
diff --git a/lib/views/dashboard/widgets/view_all_widget.dart b/lib/views/dashboard/widgets/view_all_widget.dart
new file mode 100644
index 0000000..5724eb8
--- /dev/null
+++ b/lib/views/dashboard/widgets/view_all_widget.dart
@@ -0,0 +1,30 @@
+
+import 'package:flutter/cupertino.dart';
+import 'package:mc_common_app/extensions/string_extensions.dart';
+import 'package:mc_common_app/theme/colors.dart';
+
+class ViewAllWidget extends StatelessWidget {
+ final String title;
+ final String subTitle;
+
+ const ViewAllWidget({Key? key, required this.title, required this.subTitle}) : super(key: key);
+
+ @override
+ Widget build(BuildContext context) {
+ return Container(
+ width: double.infinity,
+ padding: const EdgeInsets.only(bottom: 10),
+ child: Row(
+ children: [
+ Expanded(child: title.toText(isBold: true, fontSize: 18)),
+ subTitle.toText(
+ fontSize: 11,
+ isBold: true,
+ color: MyColors.primaryColor,
+ textDecoration: TextDecoration.underline,
+ )
+ ],
+ ),
+ );
+ }
+}
diff --git a/pubspec.yaml b/pubspec.yaml
index a7d4453..9f57ab6 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -36,7 +36,7 @@ dependencies:
cupertino_icons: ^1.0.2
mc_common_app:
- path: /Volumes/Data/Projects/Flutter/car_common_app
+ path: C:/Users/mirza.shafique/AndroidStudioProjects/mc_common_app
dev_dependencies:
flutter_test: