Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
2fd7df9
feat(SCRUM-87): implement initial order deatils ui page with static data
mariam-mohamed00 Feb 17, 2026
cc3027e
chore(API-1): handel CA
alibesar7 Feb 18, 2026
5b724c0
chore(API-1): make unite test
alibesar7 Feb 18, 2026
581c7d2
chore(API-1): fin u w test
alibesar7 Feb 18, 2026
cd6c485
feat(SCRUM-88): start my order feature
nouran2005 Feb 18, 2026
aac89d4
chore(API-1): fin u w testt
alibesar7 Feb 18, 2026
c1b4c06
feat(SCRUM-87): adding data&domain layers to get data from firebase c…
mariam-mohamed00 Feb 18, 2026
54ab985
feat(SCRUM-87): Unit test and wigdet test for order deatils feature
mariam-mohamed00 Feb 18, 2026
efc019e
fix(SCRUM-87): update versions
mariam-mohamed00 Feb 18, 2026
991e344
fix(SCRUM-87): update ver
mariam-mohamed00 Feb 18, 2026
2ae336d
feat(SCRUM-88): finish datasource and models
nouran2005 Feb 19, 2026
1c72f13
refactor(SCRUM-87): refactor functions by using api result in return …
mariam-mohamed00 Feb 19, 2026
a3ede73
chore(API-1): add driver order
alibesar7 Feb 19, 2026
f86d235
chore(API-1): fin accept
alibesar7 Feb 19, 2026
63e6b87
chore(API-1): fin acceptt
alibesar7 Feb 19, 2026
cfad3a3
feat(SCRUM-88): finish data and domain layers
nouran2005 Feb 19, 2026
2bbb02a
feat(SCRUM-88): finish cubit and ui of my order screen
nouran2005 Feb 20, 2026
38d1fe0
feat(SCRUM-88): comment a widget test in app section
nouran2005 Feb 20, 2026
46b88b8
feat(SCRUM-88): finish my orders screen UI with cubit integration
nouran2005 Feb 20, 2026
391cf65
feat(SCRUM-88): finish unit test
nouran2005 Feb 20, 2026
8c7e7b1
feat(SCRUM-88): finish the widget test
nouran2005 Feb 20, 2026
e3fd8f7
feat(SCRUM-88): finish ui of my order details
nouran2005 Feb 21, 2026
be808e0
feat(SCRUM-88): finish widget test for oder details
nouran2005 Feb 21, 2026
336bb2a
feat(SCRUM-88): change version of retrofit_generator in pubspect
nouran2005 Feb 21, 2026
558c9f3
feat(SCRUM-88): finish
nouran2005 Feb 21, 2026
c0f790a
feat(SCRUM-87): update models and mapper, refactor unit tests
mariam-mohamed00 Feb 21, 2026
f7958e6
Merge branch 'dev' into feature/SCRUM-87-drivers-orders-details
mariam-mohamed00 Feb 21, 2026
57d80e4
feat(SCRUM-88): refactor pubspec yaml
nouran2005 Feb 21, 2026
17e718f
feat(SCRUM-88): refactor pubspect
nouran2005 Feb 22, 2026
9bd0611
feat(SCRUM-88): fix
nouran2005 Feb 22, 2026
7a6e240
Merge pull request #9 from alibesar7/feature/SCRUM-85-accept
alibesar7 Feb 27, 2026
c798e93
feat(SCRUM-88): Merge branch 'feature/SCRUM-88-my-orders' into featur…
nouran2005 Feb 27, 2026
ccd6fb8
feat(SCRUM-87): enhance order details with new status translations an…
mariam-mohamed00 Feb 27, 2026
bfcc5a4
test(SCRUM-87): enhance OrderDetailsCubit tests with additional mock …
mariam-mohamed00 Feb 27, 2026
8279e06
feat(SCRUM-87): Merge branch 'feature/SCRUM-80-home-order' into featu…
mariam-mohamed00 Feb 28, 2026
f8ca783
refactor(SCRUM-87): remove OrderDetailsCubit test file as part of cle…
mariam-mohamed00 Feb 28, 2026
f75374f
Merge pull request #8 from alibesar7/feature/SCRUM-87-drivers-orders-…
mariam-mohamed00 Feb 28, 2026
12ef52c
chore(API-1): fix stream snapshot
alibesar7 Feb 28, 2026
71eea36
chore(API-1): fix stream snapshots
alibesar7 Feb 28, 2026
ed903af
chore(API-1): add location permissions to AndroidManifest.xml
mariam-mohamed00 Feb 28, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions android/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/>
<application
android:label="tracking_app"
android:name="${applicationName}"
Expand Down
Binary file added assets/images/Flowery logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/flower_logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/whatsapp.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
36 changes: 29 additions & 7 deletions assets/translations/ar.json
Original file line number Diff line number Diff line change
Expand Up @@ -179,13 +179,13 @@
"failed_to_save_address": "فشل حفظ العنوان",
"addNewAddress": "إضافة عنوان جديد",
"savedAddress": "تم حفظ العنوان",
"discount": "خصم",
"sortBy": "الترتيب حسب",
"lowestPrice": "السعر الأدنى",
"highestPrice": "السعر الأعلى",
"sortBy": "ترتيب حسب",
"lowestPrice": "أدنى سعر",
"highestPrice": "أعلى سعر",
"newest": "الأحدث",
"oldest": "الأقدم",
"filter": "تصفية",
"discount": "الخصومات",
"filter": "فلتر",
"active": "نشط",
"completed": "مكتمل",
"no_orders_found": "لا توجد طلبات",
Expand Down Expand Up @@ -238,6 +238,28 @@
"vehicle_license": "رخصة المركبة",
"editDriverProfile": "تعديل الملف الشخصي",
"editVehicle": "تعديل المركبة",
"cannotBeSame": "كلمة المرور الجديدة لا يجب أن تطابق الحالية"

"cannotBeSame": "كلمة المرور الجديدة لا يجب أن تطابق الحالية",
"orderDetails": "بيانات الطلب",
"status": "الحالة",
"orderId": "رقم الطلب : ",
"pickupAddress": "عنوان الاستلام",
"floweryStore": "متجر فلوري",
"userAddress": "عنوان المستخدم",
"arrivedAtPickupPoint": "وصلت الى نقطة الالتقاء",
"startDelivery": "بدء التوصيل",
"arriverAtDestination": "وصلت إلى نقطة التسليم",
"confirmDelivery": "تأكيد التسليم",
"deliveryConfirmed": "تم تأكيد التسليم",
"orderCompleted": "تم إكمال الطلب",
"accepted": "مقبول",
"pickedUp": "تم الاستلام",
"outForDelivery": "في الطريق للتسليم",
"arrived": "وصلت",
"driverOrderTitle": "طلب زهور",
"unknownStore": "متجر غير معروف",
"noAddress": "لا يوجد عنوان",
"accept": "قبول",
"reject": "رفض",
"noPendingOrders": "لا توجد طلبات معلقة",
"floweryRider": "سائق فلاوري"
}
31 changes: 27 additions & 4 deletions assets/translations/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,8 @@
"no_products_found": "No products found",
"change_language": "Change Language",
"arabic": "Arabic",
"initialSearchMsg" : "Search For Any Product You Want",
"english": "English",
"initialSearchMsg": "Search For Any Product You Want",
"welcomeMessage": "Welcome to Flowery Shop",
"home": "Home",
"profile": "Profile",
Expand Down Expand Up @@ -181,7 +182,6 @@
"addNewAddress": "Add New Address",
"savedAddress": "Saved Address",
"recipient_phone": "Recipient phone",
"english": "English",
"sortBy": "Sort By",
"lowestPrice": "Lowest Price",
"highestPrice": "Highest Price",
Expand All @@ -198,7 +198,7 @@
"notification_deleted_successfully": "Notification deleted successfully",
"clear_all": "Clear all",
"no_notifications_yet": "No Notifications Yet",
"orders" : "Orders",
"orders": "Orders",
"onboardingTitle": "Welcome to ",
"onboardingDescription": "Flowery rider app ",
"applyNow": "Apply Now",
Expand Down Expand Up @@ -241,5 +241,28 @@
"vehicle_license": "Vehicle License",
"editDriverProfile": "Edit Driver Profile",
"editVehicle": "Edit Vehicle",
"cannotBeSame": "New password cann't be same"
"cannotBeSame": "New password cann't be same",
"orderDetails": "Order details",
"status": "Status : ",
"orderId": "Order ID : # ",
"pickupAddress": "Pickup address",
"floweryStore": "Flowery Store",
"userAddress": "User address",
"arrivedAtPickupPoint": "Arrived at pickup point",
"startDelivery": "Start delivery",
"arriverAtDestination": "Arrived at destination",
"confirmDelivery": "Confirm delivery",
"deliveryConfirmed": "Delivery confirmed",
"orderCompleted": "Order completed",
"accepted": "Accepted",
"pickedUp": "Picked up",
"outForDelivery": "Out for delivery",
"arrived": "Arrived",
"driverOrderTitle": "Flower order",
"unknownStore": "Unknown Store",
"noAddress": "No address",
"accept": "Accept",
"reject": "Reject",
"noPendingOrders": "No pending orders",
"floweryRider": "Flowery Rider"
}
17 changes: 17 additions & 0 deletions lib/app/config/auth_storage/auth_storage.dart
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,26 @@ class AuthStorage {
static const _tokenKey = 'auth_token';
static const _userKey = 'user_data';
static const _rememberMeKey = 'remember_me';
static const _orderIdKey = 'order_id';

Future<SharedPreferences> get _prefs async =>
await SharedPreferences.getInstance();

Future<void> saveOrderId(String orderId) async {
final prefs = await _prefs;
await prefs.setString(_orderIdKey, orderId);
}

Future<String?> getOrderId() async {
final prefs = await _prefs;
return prefs.getString(_orderIdKey);
}

Future<void> clearOrderId() async {
final prefs = await _prefs;
await prefs.remove(_orderIdKey);
}

Future<void> saveToken(String token) async {
final prefs = await _prefs;
await prefs.setString(_tokenKey, token);
Expand Down Expand Up @@ -54,5 +70,6 @@ class AuthStorage {
await clearToken();
await clearUser();
await setRememberMe(false);
await clearOrderId();
}
}
103 changes: 103 additions & 0 deletions lib/app/config/di/di.config.dart

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions lib/app/config/network/firebase_module.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:injectable/injectable.dart';

@module
abstract class FirebaseModule {
@lazySingleton
FirebaseFirestore get firestore => FirebaseFirestore.instance;
}
5 changes: 5 additions & 0 deletions lib/app/config/network/network_module.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import 'package:dio/dio.dart';
import 'package:tracking_app/app/config/auth_storage/auth_storage.dart';
import 'package:tracking_app/app/config/network/interceptor.dart';
import 'package:injectable/injectable.dart';
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:pretty_dio_logger/pretty_dio_logger.dart';

import '../../core/api_manger/api_client.dart';
Expand Down Expand Up @@ -37,4 +38,8 @@ abstract class NetworkModule {

@lazySingleton
ApiClient authApiClient(Dio dio) => ApiClient(dio);

@lazySingleton
@Named('firestore')
FirebaseFirestore get firestore => FirebaseFirestore.instance;
}
Loading