This commit is contained in:
Hamza-Ayed
2024-05-29 01:36:53 +03:00
parent 79c4dd32da
commit 93adf15874
4 changed files with 51 additions and 31 deletions

View File

@@ -1,14 +1,30 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
class AppColor { class AppColor {
static const Color primaryColor = Colors.black; static const Color primaryColor = Colors.black; // Slightly softer red
static const Color secondaryColor = Colors.white; static const Color secondaryColor = Colors.white;
static const Color accentColor = Colors.grey; static const Color accentColor = Color(0xFFD81F26); // Google Green
static const Color pink = Colors.purpleAccent; static const Color backgroundColor =
Color(0xFFF5F5F5); // Light grey background
static const Color redColor = Color(0xFFEA4335); // Google Red static const Color redColor = Color(0xFFEA4335); // Google Red
static const Color greenColor = Color(0xFF34A853); // Google Green static const Color greenColor = Color(0xFF34A853); // Google Green
static const Color blueColor = Color(0xFF4285F4); // Google Blue static const Color blueColor = Color(0xFF4285F4); // Google Blue
static const Color yellowColor = Color(0xFFFBBC05); // Google Yellow static const Color yellowColor = Color(0xFFFBBC05); // Google Yellow
static Color deepPurpleAccent = static Color deepPurpleAccent =
const Color.fromARGB(255, 123, 76, 254).withOpacity(0.3); const Color.fromARGB(255, 123, 76, 254).withOpacity(0.3);
static const Color greyColor =
Color(0xFF9E9E9E); // Light grey for text and dividers
static const Color darkGreyColor =
Color(0xFF333333); // Dark grey for headings
// For dynamic elements like gradients
static List<Color> gradientStartEnd = [
const Color(0xFFD81F26), // Start with primary color
const Color(0xFFEF5350), // End with a slightly darker shade
];
static List<Color> secondaryGradientStartEnd = [
const Color(0xFF34A853), // Start with green
const Color(0xFF4CAF50), // End with a slightly darker shade of green
];
} }

View File

@@ -8,38 +8,22 @@ class AppStyle {
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
fontSize: 40, fontSize: 40,
color: AppColor.accentColor, color: AppColor.accentColor,
fontFamily: box.read(BoxName.lang) == 'en' fontFamily: box.read(BoxName.lang) == 'ar' ? 'mohanad' : 'josefin');
? 'josefin'
: box.read(BoxName.lang) == 'ar'
? 'mohanad'
: 'josefin');
static TextStyle headTitle2 = TextStyle( static TextStyle headTitle2 = TextStyle(
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
fontSize: 26, fontSize: 26,
color: AppColor.primaryColor, color: AppColor.primaryColor,
fontFamily: box.read(BoxName.lang) == 'en' fontFamily: box.read(BoxName.lang) == 'ar' ? 'mohanad' : 'josefin');
? 'josefin'
: box.read(BoxName.lang) == 'ar'
? 'mohanad'
: 'josefin');
static TextStyle title = TextStyle( static TextStyle title = TextStyle(
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
fontSize: 14, fontSize: 14,
color: AppColor.primaryColor, color: AppColor.primaryColor,
fontFamily: box.read(BoxName.lang) == 'en' fontFamily: box.read(BoxName.lang) == 'ar' ? 'mohanad' : 'josefin');
? 'josefin'
: box.read(BoxName.lang) == 'ar'
? 'mohanad'
: 'josefin');
static TextStyle subtitle = TextStyle( static TextStyle subtitle = TextStyle(
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
fontSize: 13, fontSize: 13,
color: AppColor.primaryColor, color: AppColor.primaryColor,
fontFamily: box.read(BoxName.lang) == 'en' fontFamily: box.read(BoxName.lang) == 'ar' ? 'mohanad' : 'josefin');
? 'josefin'
: box.read(BoxName.lang) == 'ar'
? 'mohanad'
: 'josefin');
static TextStyle number = const TextStyle( static TextStyle number = const TextStyle(
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
fontSize: 14, fontSize: 14,

View File

@@ -4,6 +4,14 @@ class MyTranslation extends Translations {
@override @override
Map<String, Map<String, String>> get keys => { Map<String, Map<String, String>> get keys => {
"ar": { "ar": {
'About Us': "نبذة عنا",
"Most Secure Methods": "أساليب الأمان الأكثر فاعلية",
"In-App VOIP Calls": "مكالمات VOIP داخل التطبيق",
"Recorded Trips for Safety": "تسجيل الرحلات من أجل السلامة",
"\nWe also prioritize affordability, offering competitive pricing to make your rides accessible.":
"\nكما أننا نضع توفير التكاليف في أولوية اهتماماتنا، ونقدم أسعاراً منافسة لجعل رحلاتك في متناول اليد.",
'SEFER is a ride-sharing app designed with your safety and affordability in mind. We connect you with reliable drivers in your area, ensuring a convenient and stress-free travel experience.\n\nHere are some of the key features that set us apart:':
"SEFER: تطبيق مشاركة الرحلات يضع سلامتك وادخارك في المقدمة SEFER هو تطبيق مشاركة رحلات مصمم مع وضع سلامتك وتوفيرك في الاعتبار. نربطك بسائقين موثوقين في منطقتك، ونضمن لك تجربة سفر مريحة وخالية من الضغوط.فيما يلي بعض الميزات الرئيسية التي تميزنا:",
'Sign In by Apple': 'تسجيل الدخول باستخدام Apple', 'Sign In by Apple': 'تسجيل الدخول باستخدام Apple',
'Sign In by Google': 'تسجيل الدخول باستخدام Google', 'Sign In by Google': 'تسجيل الدخول باستخدام Google',
"How do I request a ride?": "كيف أطلب رحلة؟", "How do I request a ride?": "كيف أطلب رحلة؟",

View File

@@ -33,7 +33,10 @@ class HomePage extends StatelessWidget {
'Language'.tr, 'Language'.tr,
style: AppStyle.headTitle2, style: AppStyle.headTitle2,
), ),
subtitle: Text('To change Language the App'.tr), subtitle: Text(
'To change Language the App'.tr,
style: AppStyle.title,
),
trailing: const Icon( trailing: const Icon(
Icons.arrow_forward_ios, Icons.arrow_forward_ios,
size: 30, size: 30,
@@ -50,8 +53,10 @@ class HomePage extends StatelessWidget {
'Change Country'.tr, 'Change Country'.tr,
style: AppStyle.headTitle2, style: AppStyle.headTitle2,
), ),
subtitle: subtitle: Text(
Text('You can change the Country to get all features'.tr), 'You can change the Country to get all features'.tr,
style: AppStyle.title,
),
onTap: () => Get.to(MyScafolld( onTap: () => Get.to(MyScafolld(
title: 'Change Country'.tr, title: 'Change Country'.tr,
body: [CountryPickerFromSetting()], body: [CountryPickerFromSetting()],
@@ -63,8 +68,10 @@ class HomePage extends StatelessWidget {
'Frequently Questions'.tr, 'Frequently Questions'.tr,
style: AppStyle.headTitle2, style: AppStyle.headTitle2,
), ),
subtitle: subtitle: Text(
Text('You can change the Country to get all features'.tr), 'You can change the Country to get all features'.tr,
style: AppStyle.title,
),
onTap: () => Get.to(() => const FrequentlyQuestionsPage()), onTap: () => Get.to(() => const FrequentlyQuestionsPage()),
), ),
ListTile( ListTile(
@@ -73,7 +80,10 @@ class HomePage extends StatelessWidget {
'Trips recorded'.tr, 'Trips recorded'.tr,
style: AppStyle.headTitle2, style: AppStyle.headTitle2,
), ),
subtitle: Text('Here recorded trips audio'.tr), subtitle: Text(
'Here recorded trips audio'.tr,
style: AppStyle.title,
),
onTap: () async { onTap: () async {
Get.defaultDialog( Get.defaultDialog(
title: 'Select recorded trip'.tr, title: 'Select recorded trip'.tr,
@@ -197,8 +207,10 @@ class HomePage extends StatelessWidget {
'About Us'.tr, 'About Us'.tr,
style: AppStyle.headTitle2, style: AppStyle.headTitle2,
), ),
subtitle: subtitle: Text(
Text('You can change the Country to get all features'.tr), 'You can change the Country to get all features'.tr,
style: AppStyle.title,
),
onTap: () => Get.to(() => const AboutPage()), onTap: () => Get.to(() => const AboutPage()),
), ),
], ],