P0-NEW-21 — SPKI Pinning service avec rotation Firebase Remote Config - Remplace ancien check CN par digest SHA-256 SPKI - Liste pins dynamique depuis Firebase RC (clé 'spki_pins') - Multi-pin (leaf + backup + intermediate) - Câblé dans ApiClient._configureSslPinning() P0-NEW-22 — App Device Integrity (Play Integrity Android + App Attest iOS) - Token attestation court cache 60s - Bypass kDebugMode - Obligatoire audit BCEAO PI-SPI banking-grade pubspec.yaml : - freerasp 7.0.0 → 7.5.1 - +app_device_integrity 1.1.0 - +firebase_core 3.6.0 + firebase_remote_config 5.1.3
151 lines
3.8 KiB
YAML
151 lines
3.8 KiB
YAML
name: unionflow_mobile_apps
|
|
description: "Projet Union Flow pour la gestion d'associations, mutuelles d'épargne et de financement, et assimilés."
|
|
publish_to: 'none'
|
|
|
|
version: 1.0.0+1
|
|
|
|
environment:
|
|
sdk: ^3.9.0
|
|
|
|
dependencies:
|
|
flutter:
|
|
sdk: flutter
|
|
flutter_localizations:
|
|
sdk: flutter
|
|
|
|
# Dependencies de base testées
|
|
cupertino_icons: ^1.0.8
|
|
flutter_bloc: ^9.0.0
|
|
equatable: ^2.0.7
|
|
dio: ^5.8.0
|
|
fl_chart: ^0.70.2
|
|
intl: ^0.20.2
|
|
|
|
# Authentication (versions compatibles)
|
|
flutter_secure_storage: ^10.0.0
|
|
jwt_decoder: ^2.0.1
|
|
crypto: ^3.0.6
|
|
shared_preferences: ^2.3.5
|
|
flutter_appauth: ^8.0.0
|
|
webview_flutter: ^4.4.2
|
|
|
|
# HTTP
|
|
http: ^1.1.0
|
|
pretty_dio_logger: ^1.4.0
|
|
connectivity_plus: ^6.1.0
|
|
web_socket_channel: ^3.0.1
|
|
|
|
# DI (versions stables)
|
|
get_it: ^7.7.0
|
|
injectable: ^2.4.4
|
|
|
|
# JSON serialization
|
|
json_annotation: ^4.9.0
|
|
dartz: ^0.10.1
|
|
|
|
# UI Components
|
|
cached_network_image: ^3.4.1
|
|
flutter_svg: ^2.0.10+1
|
|
shimmer: ^3.0.0
|
|
pull_to_refresh: ^2.0.0
|
|
google_fonts: ^8.0.0
|
|
local_auth: ^2.3.0
|
|
|
|
# Utils
|
|
uuid: ^4.5.1
|
|
url_launcher: ^6.3.1
|
|
permission_handler: ^11.3.1
|
|
package_info_plus: ^8.0.2
|
|
flutter_staggered_animations: ^1.1.1
|
|
|
|
# Notifications
|
|
flutter_local_notifications: ^18.0.1
|
|
|
|
# Sécurité mobile MASVS v2.1 — détection reverse engineering/tampering + integrity attestation
|
|
freerasp: ^7.5.1
|
|
# Play Integrity (Android) + App Attest (iOS) — P0-NEW-22 audit BCEAO PI-SPI
|
|
app_device_integrity: ^1.1.0
|
|
# SPKI pinning rotation dynamique via Firebase Remote Config — P0-NEW-21
|
|
firebase_core: ^3.6.0
|
|
firebase_remote_config: ^5.1.3
|
|
|
|
# Crash reporting & performance monitoring
|
|
sentry_flutter: ^8.14.0
|
|
|
|
# Export/Import
|
|
excel: ^4.0.6
|
|
csv: ^6.0.0
|
|
pdf: ^3.11.1
|
|
path_provider: ^2.1.4
|
|
file_picker: ^8.1.2
|
|
image_picker: ^1.1.2
|
|
share_plus: ^10.0.2
|
|
go_router: ^15.1.2
|
|
provider: ^6.1.5+1
|
|
|
|
dev_dependencies:
|
|
flutter_test:
|
|
sdk: flutter
|
|
flutter_lints: ^4.0.0
|
|
injectable_generator: ^2.6.2
|
|
build_runner: ^2.4.13
|
|
json_serializable: ^6.8.0
|
|
mockito: ^5.4.4
|
|
bloc_test: ^10.0.0
|
|
integration_test:
|
|
sdk: flutter
|
|
flutter_launcher_icons: ^0.13.1
|
|
flutter_native_splash: ^2.4.1
|
|
|
|
# ─── Génération des icônes d'application (launcher) ──────────────────────────
|
|
# Source unique : assets/images/unionflow-logo.png
|
|
# Régénérer : dart run flutter_launcher_icons
|
|
flutter_launcher_icons:
|
|
android: "ic_launcher"
|
|
ios: true
|
|
remove_alpha_ios: true
|
|
image_path: "assets/images/unionflow-logo.png"
|
|
background_color_ios: "#FFFFFF"
|
|
min_sdk_android: 21
|
|
adaptive_icon_background: "#FFFFFF"
|
|
adaptive_icon_foreground: "assets/images/unionflow-logo.png"
|
|
web:
|
|
generate: false
|
|
windows:
|
|
generate: false
|
|
macos:
|
|
generate: false
|
|
|
|
# ─── Génération du splash screen natif (Android + iOS) ───────────────────────
|
|
# Régénérer : dart run flutter_native_splash:create
|
|
flutter_native_splash:
|
|
color: "#FFFFFF"
|
|
color_dark: "#0A0D1A"
|
|
image: "assets/images/unionflow-logo.png"
|
|
android_12:
|
|
image: "assets/images/unionflow-logo.png"
|
|
color: "#FFFFFF"
|
|
color_dark: "#0A0D1A"
|
|
android: true
|
|
ios: true
|
|
web: false
|
|
fullscreen: false
|
|
|
|
flutter:
|
|
uses-material-design: true
|
|
generate: true
|
|
assets:
|
|
- google_fonts/
|
|
- assets/images/
|
|
- assets/images/branding/
|
|
- assets/images/payment_methods/wave/
|
|
- assets/images/payment_methods/orange_money/
|
|
- assets/images/payment_methods/free_money/
|
|
- assets/images/payment_methods/mtn_money/
|
|
- assets/images/payment_methods/moov_money/
|
|
- assets/images/payment_methods/mobile_money/
|
|
- assets/images/payment_methods/especes/
|
|
- assets/images/payment_methods/virement/
|
|
- assets/images/payment_methods/cheque/
|
|
- assets/images/payment_methods/carte_bancaire/
|
|
- assets/images/payment_methods/autre/ |