Files
tripz-llc/apps/driver_new/pubspec.yaml
T
Hamza-AyedandClaude Opus 5 ca766a2d4e feat(apps): الدراور على نمط سيرو — المكافآت والدعوات والمساعدة
جُرد دراور سيرو: 14 مدخلاً للراكب (map_menu_widget) و23 للسائق
(drawer_captain). بُني ما له نقطة فعلية على NestJS، والباقي مذكور صراحةً.

## مبنيّ
- **المكافآت** (features/rewards): GET /rewards/referrals و /rewards/coupons —
  كلاهما مُتحقَّق حيّاً. كود الدعوة يُنسخ ويُشارك، وعدّادات دعوتَهم/قيد
  التأكيد/مدفوعة. يقابل Promos + Invite Driver في سيرو
- **شارك التطبيق · قيّم التطبيق · سياسة الخصوصية · تطبيق الطرف الآخر** —
  أفعال محليّة بلا نقطة خادم (share_plus + url_launcher)
- **المساعدة** وُسّعت: أسئلة شائعة قابلة للطيّ · واتساب الدعم ·
  **فحص توافق الجهاز** (نمط سيرو) يفحص ما يُعطّل التطبيق فعلاً: خدمة الموقع
  وإذنها وإذن الإشعارات — أسباب حقيقية لشكوى «التطبيق لا يعمل»
- روابط المتجر والخصوصية والدعم صارت قيم بناء لكل مستأجر في BuildConfig

## غير مبنيّ — ولا نقطة خادم له
الشكاوى (R3 في الباكلوج) · الإحصاءات · التحدّيات ولوحة المتصدّرين · مركز
الصيانة · جدولي · التأمين الصحي (مؤجَّل بقرار المالك) · الطعام والمواصلات
(خارج النطاق، docs/39 §1). بناء واجهة بلا خادم يعني شاشة تكذب على المستخدم.

## سجلّ الإشعارات
سيرو يعرض قائمة إشعارات؛ الخادم يوفّر POST /notifications/token فقط بلا نقطة
سرد. لم تُبنَ شاشة قائمة على فراغ.

flutter analyze نظيف في التطبيقين.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-05 01:34:23 +03:00

104 lines
3.0 KiB
YAML

name: driver_new
description: "تطبيق السائق — Tripz. مبنيّ من الصفر على Bloc/Cubit وباك إند NestJS (docs/37)."
publish_to: "none"
# يطابق هوية النشر في android/app/build.gradle — لا يُغيَّر إلا مع رفع إصدار
# حقيقي في المتجر (docs/37 §2.ج).
version: 2.0.152+152
environment:
sdk: ^3.11.0
dependencies:
flutter:
sdk: flutter
flutter_localizations:
sdk: flutter
# الحالة والتوجيه والحقن — الإصدارات موحّدة حرفياً مع rider_new (docs/23 §9):
# تباعدهما يعني سلوكاً مختلفاً في كود مشترك.
flutter_bloc: ^9.1.1
equatable: ^2.0.7
get_it: ^8.0.3
go_router: ^14.6.2
# الشبكة
dio: ^5.9.1
# التخزين — الرموز في التخزين الآمن، والتفضيلات في العادي
flutter_secure_storage: ^10.0.0
shared_preferences: ^2.3.3
intl: ^0.20.2
# م4: الخريطة والموقع والواقع اللحظي
intaleq_maps: ^2.3.0
geolocator: ^14.0.2
socket_io_client: ^3.0.2
# الدراور: المشاركة وفتح الروابط
share_plus: ^12.0.1
url_launcher: ^6.3.2
# م6: الإشعارات — الإعداد الأصلي (google-services) منقول مع الطبقة الأصلية
firebase_core: ^4.4.0
firebase_messaging: ^16.1.1
# تسجيل السائق: تصوير الوثائق
image_picker: ^1.2.1
# م3: الأذونات وبصمة الجهاز
permission_handler: ^12.0.1
device_info_plus: 12.3.0
cupertino_icons: ^1.0.8
# باقي الحزم تُضاف في مرحلتها لا قبلها (docs/37 §1.7):
# م3 لاحقاً: crypto (توقيع طلبات النقاط المالية)
# م4: الخريطة · geolocator · socket_io_client
# م5: التقييم والمحفظة م6: الإشعارات والدردشة
dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^6.0.0
flutter:
uses-material-design: true
# توليد الترجمة من ARB (docs/26 §4)
generate: true
assets:
- assets/
- assets/images/
- shorebird.yaml
fonts:
# عربية — تايبوغرافيا نظام التصميم (docs/26)
- family: IBMPlexSansArabic
fonts:
- asset: assets/fonts/IBMPlexSansArabic-Regular.ttf
weight: 400
- asset: assets/fonts/IBMPlexSansArabic-Medium.ttf
weight: 500
- asset: assets/fonts/IBMPlexSansArabic-SemiBold.ttf
weight: 600
- asset: assets/fonts/IBMPlexSansArabic-Bold.ttf
weight: 700
# لاتينية
- family: Inter
fonts:
- asset: assets/fonts/Inter-Regular.ttf
weight: 400
- asset: assets/fonts/Inter-Medium.ttf
weight: 500
- asset: assets/fonts/Inter-SemiBold.ttf
weight: 600
- asset: assets/fonts/Inter-Bold.ttf
weight: 700
# أرقام العدّادات (الأجرة/المؤقّت)
- family: Digit
fonts:
- asset: assets/fonts/digit.ttf