feat: N1d/N2/N3 + قانون فلاتر وإعادة ضبط تطبيق السائق
الباك إند: - تعيين أول أدمن صار يُنشئ المستخدم إن لم يوجد — كان يشترط دخولاً سابقاً، وهي بيضة ودجاجة تمنع الدخول إلى لوحة أي مستأجر جديد أصلاً. - OTP_DEV_MODE كان يفشل مفتوحاً (`!== 'false'`): غياب المتغيّر أو خطأ مطبعي يترك الإنتاج برمز ثابت يفتح كل حساب، ويحرس السحب المالي كذلك. صار `=== 'true'` في الإعداد وفي قارئَيه، مع تحذير عند الإقلاع. - N2: التحقّق من اللوغو عند الرفع (PNG/JPEG · 512+ · مربّع · سقف 5MB) عبر قراءة الترويسة بلا اعتمادية — بدل اكتشاف أيقونة ممطوطة بعد النشر. N3: السكربت يولّد build_config.dart بأعلام const (طبقات docs/22 §1.5)، ويضبط bundle IDs واسم التطبيق والأيقونات/splash، و--build يشغّل Shorebird. فلاتر: - docs/23: قانون مُلزِم للتطبيقين (البنية · Cubit · طبقة الشبكة · الأعلام). - السائق: أُزيل Dart القديم (GetX) مع الإبقاء على الأصيل والإضافات وشهادات التوقيع وShorebird وFirebase الخاص به، وأُعيد هيكلته مطابقاً للراكب. - طبقة الشبكة ترسل x-device-id وتجدّد التوكن عند 401 مرة واحدة فقط. - الحزم موحّدة بين التطبيقين، والـAPI https حصراً في الاثنين. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
3ab74a13a8
commit
de4bbd00ac
+48
-118
@@ -1,135 +1,73 @@
|
||||
# تطبيق السائق — أُعيد بناء طبقة Dart بالكامل (Cubit+Bloc، لا GetX).
|
||||
# الاسم `sefer_driver` مُبقًى عمداً: تغييره يمسّ مراجع أصيلة قائمة.
|
||||
# الحزم محكومة بجدول docs/23 §9 — إضافة حزمة خارجه تُوثَّق هناك أولاً.
|
||||
name: sefer_driver
|
||||
description: A new Flutter project.
|
||||
publish_to: "none" # Remove this line if you wish to publish to pub.dev
|
||||
description: Tripz — تطبيق السائق
|
||||
publish_to: "none"
|
||||
|
||||
version: 1.0.0+1
|
||||
|
||||
environment:
|
||||
sdk: ">=3.0.5 <4.0.0"
|
||||
sdk: ">=3.5.0 <4.0.0"
|
||||
|
||||
dependencies:
|
||||
flutter:
|
||||
sdk: flutter
|
||||
flutter_localizations:
|
||||
sdk: flutter
|
||||
|
||||
# ---- الإضافات الأصيلة المُعاد استعمالها (docs/23 §7) — لا يُعاد بناؤها ----
|
||||
secure_string_operations:
|
||||
path: ./secure_string_operations
|
||||
trip_overlay_plugin:
|
||||
path: ./trip_overlay_plugin
|
||||
bubble_head:
|
||||
path: ./bubble-master
|
||||
# flutter_overlay_window: ^0.4.4
|
||||
cupertino_icons: ^1.0.2
|
||||
firebase_messaging: ^15.0.3
|
||||
firebase_core: ^3.2.0
|
||||
|
||||
# ---- البنية المعتمدة (docs/23 §9) ----
|
||||
flutter_bloc: ^9.1.1 # الحالة
|
||||
equatable: ^2.0.7
|
||||
get_it: ^8.0.3 # الحقن
|
||||
dio: ^5.7.0 # الشبكة — نقطة النداء الوحيدة
|
||||
go_router: ^14.6.2 # التنقّل
|
||||
flutter_secure_storage: ^9.2.2 # التوكنات (لا SharedPreferences)
|
||||
|
||||
# ---- الخرائط: flutter_map + بلاطات انطلق، لا google_maps_flutter ----
|
||||
flutter_map: ^7.0.2
|
||||
latlong2: ^0.9.1
|
||||
|
||||
# ---- الزمن الحقيقي والإشعارات ----
|
||||
socket_io_client: ^3.0.2
|
||||
firebase_core: ^4.1.1
|
||||
firebase_messaging: ^16.0.2
|
||||
flutter_local_notifications: ^18.0.1
|
||||
google_maps_flutter: ^2.10.1
|
||||
sqflite: ^2.3.0
|
||||
path: ^1.8.3
|
||||
# lottie: ^2.5.0
|
||||
intl: ^0.19.0
|
||||
google_fonts: ^6.2.1
|
||||
http: ^1.2.2
|
||||
get: ^4.6.5
|
||||
get_storage: ^2.1.1
|
||||
url_launcher: ^6.1.12
|
||||
location: ^8.0.0
|
||||
google_polyline_algorithm: ^3.1.0
|
||||
# custom_searchable_dropdown: ^2.1.1
|
||||
animated_text_kit: ^4.2.2
|
||||
flutter_secure_storage: ^9.0.0
|
||||
|
||||
# ---- خاصّ بالسائق: الموقع في الخلفية والعرض الطافي (docs/23 §10) ----
|
||||
geolocator: ^13.0.2
|
||||
flutter_paypal: ^0.2.0
|
||||
flutter_launcher_icons: ^0.14.2 #to be remove
|
||||
# crypto: ^3.0.3
|
||||
encrypt: ^5.0.3
|
||||
flutter_rating_bar: ^4.0.1
|
||||
flutter_font_icons: ^2.2.5
|
||||
image_picker: ^1.0.4
|
||||
flutter_stripe: ^11.3.0
|
||||
camera: ^0.11.0+1 #to be remove
|
||||
flutter_widget_from_html: ^0.15.1
|
||||
local_auth: ^2.1.7
|
||||
image: ^4.1.3 #to be remove
|
||||
image_cropper: ^8.1.0
|
||||
envied: ^1.0.0
|
||||
# cached_network_image: ^3.3.0 #to be remove
|
||||
calendar_builder: ^0.0.6
|
||||
fl_chart: ^0.70.0
|
||||
# agora_rtc_engine: ^6.2.6
|
||||
flutter_tts: ^4.0.2
|
||||
permission_handler: ^11.3.0
|
||||
# google_generative_ai: ^0.0.1-dev
|
||||
vibration: ^2.0.1
|
||||
wakelock_plus:
|
||||
# background_location: ^0.13.0
|
||||
# background_location:
|
||||
# git:
|
||||
# url: https://github.com/dharmik-dalwadi-seaflux/background_location.git
|
||||
# ref: master
|
||||
|
||||
# flutter_overlay_apps:
|
||||
# git:
|
||||
# url: https://github.com/Hamza-Ayed/flutter_overlay_apps.git
|
||||
# ref: main
|
||||
record: ^5.0.5
|
||||
dio: ^5.4.3+1
|
||||
webview_flutter: ^4.9.0
|
||||
just_audio: ^0.9.37
|
||||
# share: ^2.0.4
|
||||
|
||||
google_sign_in: ^6.2.1
|
||||
# google_mlkit_text_recognition: ^0.14.0
|
||||
sign_in_with_apple: ^6.1.0
|
||||
firebase_auth: ^5.1.2
|
||||
package_info_plus: ^8.0.0
|
||||
flutter_image_compress: ^2.3.0
|
||||
flutter_contacts: ^1.1.8
|
||||
flutter_overlay_window: ^0.4.4
|
||||
googleapis_auth: ^1.6.0
|
||||
video_player: ^2.9.2
|
||||
youtube_player_flutter: ^9.0.4
|
||||
flutter_confetti: ^0.3.0
|
||||
slide_to_act: ^2.0.2
|
||||
live_activities: ^2.3.0
|
||||
quick_actions: ^1.1.0
|
||||
jwt_decoder: ^2.0.1
|
||||
jailbreak_root_detection: ^1.1.5
|
||||
device_info_plus: ^11.3.0
|
||||
share_plus: ^11.0.0
|
||||
battery_plus: ^6.2.2
|
||||
connectivity_plus: ^7.0.0
|
||||
internet_connection_checker: ^1.0.0+1
|
||||
socket_io_client: ^3.1.4
|
||||
flutter_background_service_android: ^6.3.1
|
||||
flutter_background_service: ^5.1.0
|
||||
flutter_staggered_animations: ^1.1.1
|
||||
# flutter_isolate: ^2.1.0
|
||||
# lingo_hunter: ^1.0.3
|
||||
flutter_background_service_android: ^6.3.1
|
||||
flutter_overlay_window: ^0.4.5
|
||||
battery_plus: ^6.2.0 # متحكّم الموقع واعٍ للبطارية
|
||||
wakelock_plus: ^1.2.10
|
||||
vibration: ^3.1.2
|
||||
|
||||
# ---- أدوات مساعدة ----
|
||||
device_info_plus: ^11.2.0 # بصمة الجهاز (x-device-id — docs/17 D2)
|
||||
connectivity_plus: ^6.1.0
|
||||
permission_handler: ^11.3.1
|
||||
package_info_plus: ^8.1.2
|
||||
image_picker: ^1.1.2 # صور الوثائق
|
||||
local_auth: ^2.3.0 # حيوية/تحقّق السائق
|
||||
url_launcher: ^6.3.1
|
||||
intl: ^0.20.2
|
||||
cupertino_icons: ^1.0.8
|
||||
|
||||
dev_dependencies:
|
||||
flutter_test:
|
||||
sdk: flutter
|
||||
|
||||
flutter_lints: ^5.0.0
|
||||
envied_generator: ^1.0.0
|
||||
build_runner: ^2.4.6
|
||||
|
||||
flutter_launcher_icons:
|
||||
android: "launcher_icon"
|
||||
ios: true
|
||||
image_path: "assets/images/logo.png"
|
||||
min_sdk_android: 21
|
||||
web:
|
||||
generate: true
|
||||
image_path: "assets/images/logo.png"
|
||||
background_color: "#hexcode"
|
||||
theme_color: "#hexcode"
|
||||
windows:
|
||||
generate: true
|
||||
image_path: "assets/images/logo.png"
|
||||
icon_size: 48
|
||||
macos:
|
||||
generate: true
|
||||
image_path: "assets/images/logo.png"
|
||||
flutter_lints: ^6.0.0
|
||||
flutter_launcher_icons: ^0.14.2 # يستدعيها سكربت التوليد (N3)
|
||||
flutter_native_splash: ^2.4.3
|
||||
|
||||
flutter:
|
||||
uses-material-design: true
|
||||
@@ -141,14 +79,6 @@ flutter:
|
||||
- shorebird.yaml
|
||||
|
||||
fonts:
|
||||
# - family: mohanad
|
||||
# fonts:
|
||||
# - asset: assets/fonts/mohanad.ttf
|
||||
# - family: josefin
|
||||
# fonts:
|
||||
# - asset: assets/fonts/josefin.ttf
|
||||
- family: digit
|
||||
fonts:
|
||||
- asset: assets/fonts/digit.ttf
|
||||
dependency_overrides:
|
||||
record_platform_interface: "1.2.0"
|
||||
|
||||
Reference in New Issue
Block a user