name: geosector_app
description: 'GEOSECTOR - Gestion de distribution des calendriers par secteurs géographiques pour les amicales de pompiers'
publish_to: 'none'
version: 3.5.9+359

environment:
  sdk: '>=3.0.0 <4.0.0'

dependencies:
  flutter:
    sdk: flutter
  flutter_localizations:
    sdk: flutter
  cupertino_icons: ^1.0.6

  # Navigation
  go_router: ^15.1.2 # ⬇️ Compatible Flutter 3.24.5 LTS (depuis 16.0.0)

  # État et gestion des données
  hive: ^2.2.3
  hive_flutter: ^1.1.0

  # API & Réseau
  dio: ^5.3.3
  cookie_jar: ^4.0.8 # Gestion des cookies pour sessions PHP
  dio_cookie_manager: ^3.1.1 # Interceptor cookies pour Dio
  connectivity_plus: 6.0.5 # ⬇️ Compatible Flutter 3.24.5 LTS (fix Gradle)
  retry: ^3.1.2

  # UI et animations
  google_fonts: ^6.1.0
  flutter_svg: ^2.0.9
  # package_info_plus: ^4.2.0 # ❌ SUPPRIMÉ - Remplacé par AppInfoService auto-généré (13/10/2025)

  # Utilitaires
  intl: 0.19.0 # Version requise par flutter_localizations Flutter 3.24.5 LTS
  uuid: ^4.2.1
  syncfusion_flutter_charts: 27.2.5 # ⬇️ Compatible Flutter 3.24.5 LTS (sweet spot)
  # shared_preferences: ^2.3.3  # Remplacé par Hive pour cohérence architecturale

  # Cartes et géolocalisation
  url_launcher: ^6.1.14 # ⬇️ Version stable (depuis 6.3.1)
  flutter_map: ^7.0.2 # ⬇️ Compatible Flutter 3.24.5 LTS (depuis 8.2.2)
  flutter_map_cache: ^1.5.1 # Compatible Flutter 3.24.5 LTS (Dart 3.5.4)
  dio_cache_interceptor_hive_store: ^3.2.1 # ✅ Compatible flutter_map_cache 1.5.1
  path_provider: ^2.1.2 # Requis pour le cache
  latlong2: ^0.9.1
  geolocator: ^13.0.3 # ⬇️ Downgrade depuis 14.0.2 (Flutter 3.24.5 LTS)
  geolocator_android: 4.6.1 # ✅ Force version sans toARGB32()
  universal_html: ^2.2.4 # Pour accéder à la localisation du navigateur (detection env)
  # sensors_plus: ^3.1.0 # ❌ SUPPRIMÉ - Mode boussole retiré (feature optionnelle peu utilisée) (13/10/2025)

  # Chat et notifications
  # mqtt5_client: ^4.11.0
  flutter_local_notifications: ^19.0.1

  # Upload d'images
  image_picker: ^0.8.9 # ⬇️ Avant SwiftPM (depuis 1.1.2)

  # Configuration YAML
  yaml: ^3.1.2

  # Stripe Terminal et détection device (V2)
  device_info_plus: ^11.3.0 # ✅ Compatible Flutter 3.24.5 LTS (depuis 12.1.0)
  battery_plus: 6.0.3 # ⬇️ Compatible Flutter 3.24.5 LTS (fix Gradle)
  # network_info_plus: ^4.1.0 # ❌ SUPPRIMÉ - Remplacé par NetworkInterface natif Dart (13/10/2025)
  nfc_manager: 3.3.0 # ✅ Version stable - Nécessite patch AndroidManifest (fix-nfc-manager.sh)
  mek_stripe_terminal: ^4.6.0
  flutter_stripe: ^11.5.0 # ⬇️ Compatible Flutter 3.24.5 LTS (depuis 12.0.0)
  permission_handler: ^12.0.1
  qr_flutter: ^4.1.0 # Génération de QR codes pour paiements Stripe

dev_dependencies:
  flutter_test:
    sdk: flutter
  flutter_lints: ^5.0.0 # ⬇️ Compatible Flutter 3.24.5 LTS (depuis 6.0.0)
  hive_generator: ^2.0.1
  build_runner: ^2.4.6
  flutter_launcher_icons: ^0.14.4

flutter_launcher_icons:
  android: true
  ios: true
  image_path: 'assets/images/icons/icon-1024.png'
  min_sdk_android: 21
  adaptive_icon_background: '#FFFFFF'
  adaptive_icon_foreground: 'assets/images/icons/icon-1024.png'
  remove_alpha_ios: true
  web:
    generate: true
    image_path: 'assets/images/icons/icon-1024.png'
    background_color: '#FFFFFF'
    theme_color: '#4B77BE'
  windows:
    generate: true
    image_path: 'assets/images/icons/icon-1024.png'
    icon_size: 48

flutter:
  uses-material-design: true

  assets:
    - assets/images/
    - assets/icons/
    - assets/animations/
    - lib/chat/chat_config.yaml

  fonts:
    - family: Inter
      fonts:
        - asset: assets/fonts/InterVariable.ttf
        - asset: assets/fonts/InterVariable-Italic.ttf
          style: italic
