feat: Release version 3.1.4 - Mode terrain et génération PDF

 Nouvelles fonctionnalités:
- Ajout du mode terrain pour utilisation mobile hors connexion
- Génération automatique de reçus PDF avec template personnalisé
- Révision complète du système de cartes avec amélioration des performances

🔧 Améliorations techniques:
- Refactoring du module chat avec architecture simplifiée
- Optimisation du système de sécurité NIST SP 800-63B
- Amélioration de la gestion des secteurs géographiques
- Support UTF-8 étendu pour les noms d'utilisateurs

📱 Application mobile:
- Nouveau mode terrain dans user_field_mode_page
- Interface utilisateur adaptative pour conditions difficiles
- Synchronisation offline améliorée

🗺️ Cartographie:
- Optimisation des performances MapBox
- Meilleure gestion des tuiles hors ligne
- Amélioration de l'affichage des secteurs

📄 Documentation:
- Ajout guide Android (ANDROID-GUIDE.md)
- Documentation sécurité API (API-SECURITY.md)
- Guide module chat (CHAT_MODULE.md)

🐛 Corrections:
- Résolution des erreurs 400 lors de la création d'utilisateurs
- Correction de la validation des noms d'utilisateurs
- Fix des problèmes de synchronisation chat

🤖 Generated with Claude Code (https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-08-19 19:38:03 +02:00
parent c1f23c4345
commit 5ab03751e1
1823 changed files with 272663 additions and 198438 deletions

View File

@@ -5,7 +5,7 @@
"packages": [
{
"name": "geosector_app",
"version": "3.0.8+308",
"version": "3.1.4+314",
"dependencies": [
"connectivity_plus",
"cupertino_icons",
@@ -26,15 +26,16 @@
"image_picker",
"intl",
"latlong2",
"mqtt5_client",
"package_info_plus",
"path_provider",
"retry",
"sensors_plus",
"shared_preferences",
"syncfusion_flutter_charts",
"universal_html",
"url_launcher",
"uuid"
"uuid",
"yaml"
],
"devDependencies": [
"build_runner",
@@ -104,17 +105,12 @@
]
},
{
"name": "image_picker",
"version": "1.1.2",
"name": "sensors_plus",
"version": "6.1.2",
"dependencies": [
"flutter",
"image_picker_android",
"image_picker_for_web",
"image_picker_ios",
"image_picker_linux",
"image_picker_macos",
"image_picker_platform_interface",
"image_picker_windows"
"flutter_web_plugins",
"sensors_plus_platform_interface"
]
},
{
@@ -390,6 +386,28 @@
"meta"
]
},
{
"name": "sensors_plus_platform_interface",
"version": "2.0.1",
"dependencies": [
"flutter",
"logging",
"meta",
"plugin_platform_interface"
]
},
{
"name": "flutter_web_plugins",
"version": "0.0.0",
"dependencies": [
"characters",
"collection",
"flutter",
"material_color_utilities",
"meta",
"vector_math"
]
},
{
"name": "universal_io",
"version": "2.2.2",
@@ -411,6 +429,14 @@
"package_info_plus"
]
},
{
"name": "geoclue",
"version": "0.1.1",
"dependencies": [
"dbus",
"meta"
]
},
{
"name": "equatable",
"version": "2.0.7",
@@ -425,11 +451,94 @@
"dependencies": []
},
{
"name": "geoclue",
"version": "0.1.1",
"name": "yaml",
"version": "3.1.3",
"dependencies": [
"dbus",
"meta"
"collection",
"source_span",
"string_scanner"
]
},
{
"name": "image_picker",
"version": "1.2.0",
"dependencies": [
"flutter",
"image_picker_android",
"image_picker_for_web",
"image_picker_ios",
"image_picker_linux",
"image_picker_macos",
"image_picker_platform_interface",
"image_picker_windows"
]
},
{
"name": "image_picker_windows",
"version": "0.2.2",
"dependencies": [
"file_selector_platform_interface",
"file_selector_windows",
"flutter",
"image_picker_platform_interface"
]
},
{
"name": "image_picker_platform_interface",
"version": "2.11.0",
"dependencies": [
"cross_file",
"flutter",
"http",
"plugin_platform_interface"
]
},
{
"name": "image_picker_macos",
"version": "0.2.2",
"dependencies": [
"file_selector_macos",
"file_selector_platform_interface",
"flutter",
"image_picker_platform_interface"
]
},
{
"name": "image_picker_linux",
"version": "0.2.2",
"dependencies": [
"file_selector_linux",
"file_selector_platform_interface",
"flutter",
"image_picker_platform_interface"
]
},
{
"name": "image_picker_ios",
"version": "0.8.13",
"dependencies": [
"flutter",
"image_picker_platform_interface"
]
},
{
"name": "image_picker_for_web",
"version": "3.1.0",
"dependencies": [
"flutter",
"flutter_web_plugins",
"image_picker_platform_interface",
"mime",
"web"
]
},
{
"name": "image_picker_android",
"version": "0.8.13",
"dependencies": [
"flutter",
"flutter_plugin_android_lifecycle",
"image_picker_platform_interface"
]
},
{
@@ -441,6 +550,11 @@
"synchronized"
]
},
{
"name": "sprintf",
"version": "7.0.0",
"dependencies": []
},
{
"name": "flutter_map_cache",
"version": "2.0.0+1",
@@ -465,6 +579,16 @@
"url_launcher_windows"
]
},
{
"name": "uuid",
"version": "4.5.1",
"dependencies": [
"crypto",
"fixnum",
"meta",
"sprintf"
]
},
{
"name": "package_info_plus",
"version": "8.3.1",
@@ -490,43 +614,11 @@
"plugin_platform_interface"
]
},
{
"name": "flutter_web_plugins",
"version": "0.0.0",
"dependencies": [
"characters",
"collection",
"flutter",
"material_color_utilities",
"meta",
"vector_math"
]
},
{
"name": "go_router",
"version": "16.1.0",
"dependencies": [
"collection",
"flutter",
"flutter_web_plugins",
"logging",
"meta"
]
},
{
"name": "cupertino_icons",
"version": "1.0.8",
"dependencies": []
},
{
"name": "yaml",
"version": "3.1.3",
"dependencies": [
"collection",
"source_span",
"string_scanner"
]
},
{
"name": "cli_util",
"version": "0.4.2",
@@ -545,15 +637,17 @@
]
},
{
"name": "image_picker_windows",
"version": "0.2.1+1",
"name": "plugin_platform_interface",
"version": "2.1.8",
"dependencies": [
"file_selector_platform_interface",
"file_selector_windows",
"flutter",
"image_picker_platform_interface"
"meta"
]
},
{
"name": "logging",
"version": "1.3.0",
"dependencies": []
},
{
"name": "typed_data",
"version": "1.4.0",
@@ -570,21 +664,6 @@
"uuid"
]
},
{
"name": "uuid",
"version": "4.5.1",
"dependencies": [
"crypto",
"fixnum",
"meta",
"sprintf"
]
},
{
"name": "sprintf",
"version": "7.0.0",
"dependencies": []
},
{
"name": "fixnum",
"version": "1.1.1",
@@ -680,24 +759,6 @@
"meta"
]
},
{
"name": "syncfusion_flutter_charts",
"version": "30.2.5",
"dependencies": [
"flutter",
"intl",
"syncfusion_flutter_core",
"vector_math"
]
},
{
"name": "syncfusion_flutter_core",
"version": "30.2.5",
"dependencies": [
"flutter",
"vector_math"
]
},
{
"name": "connectivity_plus",
"version": "6.1.5",
@@ -728,46 +789,20 @@
]
},
{
"name": "args",
"version": "2.7.0",
"dependencies": []
},
{
"name": "image_picker_platform_interface",
"version": "2.11.0",
"name": "go_router",
"version": "16.2.0",
"dependencies": [
"cross_file",
"collection",
"flutter",
"http",
"plugin_platform_interface"
]
},
{
"name": "plugin_platform_interface",
"version": "2.1.8",
"dependencies": [
"flutter_web_plugins",
"logging",
"meta"
]
},
{
"name": "image_picker_macos",
"version": "0.2.1+2",
"dependencies": [
"file_selector_macos",
"file_selector_platform_interface",
"flutter",
"image_picker_platform_interface"
]
},
{
"name": "image_picker_linux",
"version": "0.2.1+2",
"dependencies": [
"file_selector_linux",
"file_selector_platform_interface",
"flutter",
"image_picker_platform_interface"
]
"name": "args",
"version": "2.7.0",
"dependencies": []
},
{
"name": "csslib",
@@ -794,14 +829,6 @@
"web"
]
},
{
"name": "url_launcher_platform_interface",
"version": "2.3.2",
"dependencies": [
"flutter",
"plugin_platform_interface"
]
},
{
"name": "web",
"version": "1.1.1",
@@ -817,6 +844,14 @@
"web"
]
},
{
"name": "url_launcher_platform_interface",
"version": "2.3.2",
"dependencies": [
"flutter",
"plugin_platform_interface"
]
},
{
"name": "path_provider_windows",
"version": "2.3.0",
@@ -837,11 +872,21 @@
]
},
{
"name": "path_provider_foundation",
"version": "2.4.1",
"name": "syncfusion_flutter_charts",
"version": "30.2.6",
"dependencies": [
"flutter",
"path_provider_platform_interface"
"intl",
"syncfusion_flutter_core",
"vector_math"
]
},
{
"name": "syncfusion_flutter_core",
"version": "30.2.6",
"dependencies": [
"flutter",
"vector_math"
]
},
{
@@ -897,6 +942,11 @@
"xml"
]
},
{
"name": "mime",
"version": "2.0.0",
"dependencies": []
},
{
"name": "dio_cache_interceptor",
"version": "4.0.3",
@@ -906,19 +956,19 @@
]
},
{
"name": "url_launcher_macos",
"version": "3.2.2",
"name": "url_launcher_linux",
"version": "3.2.1",
"dependencies": [
"flutter",
"url_launcher_platform_interface"
]
},
{
"name": "url_launcher_linux",
"version": "3.2.1",
"name": "path_provider_foundation",
"version": "2.4.2",
"dependencies": [
"flutter",
"url_launcher_platform_interface"
"path_provider_platform_interface"
]
},
{
@@ -937,6 +987,14 @@
"url_launcher_platform_interface"
]
},
{
"name": "url_launcher_macos",
"version": "3.2.3",
"dependencies": [
"flutter",
"url_launcher_platform_interface"
]
},
{
"name": "flutter_local_notifications",
"version": "19.4.0",
@@ -980,15 +1038,6 @@
"xdg_directories"
]
},
{
"name": "xml",
"version": "6.5.0",
"dependencies": [
"collection",
"meta",
"petitparser"
]
},
{
"name": "timezone",
"version": "0.10.1",
@@ -1002,14 +1051,59 @@
"version": "2.1.4",
"dependencies": []
},
{
"name": "xml",
"version": "6.6.1",
"dependencies": [
"collection",
"meta",
"petitparser"
]
},
{
"name": "petitparser",
"version": "6.1.0",
"version": "7.0.1",
"dependencies": [
"collection",
"meta"
]
},
{
"name": "flutter_svg",
"version": "2.0.13",
"dependencies": [
"flutter",
"http",
"vector_graphics",
"vector_graphics_codec",
"vector_graphics_compiler"
]
},
{
"name": "vector_graphics_compiler",
"version": "1.1.11+1",
"dependencies": [
"args",
"meta",
"path",
"path_parsing",
"vector_graphics_codec",
"xml"
]
},
{
"name": "vector_graphics_codec",
"version": "1.1.11+1",
"dependencies": []
},
{
"name": "path_parsing",
"version": "1.1.0",
"dependencies": [
"meta",
"vector_math"
]
},
{
"name": "geolocator_apple",
"version": "2.3.13",
@@ -1018,22 +1112,6 @@
"geolocator_platform_interface"
]
},
{
"name": "url_launcher_ios",
"version": "6.3.3",
"dependencies": [
"flutter",
"url_launcher_platform_interface"
]
},
{
"name": "xdg_directories",
"version": "1.1.0",
"dependencies": [
"meta",
"path"
]
},
{
"name": "file_selector_linux",
"version": "0.9.3+2",
@@ -1063,6 +1141,14 @@
"typed_data"
]
},
{
"name": "xdg_directories",
"version": "1.1.0",
"dependencies": [
"meta",
"path"
]
},
{
"name": "crypto",
"version": "3.0.6",
@@ -1071,9 +1157,12 @@
]
},
{
"name": "logging",
"version": "1.3.0",
"dependencies": []
"name": "url_launcher_ios",
"version": "6.3.4",
"dependencies": [
"flutter",
"url_launcher_platform_interface"
]
},
{
"name": "shared_preferences",
@@ -1166,45 +1255,25 @@
]
},
{
"name": "image_picker_for_web",
"version": "3.0.6",
"name": "source_helper",
"version": "1.3.5",
"dependencies": [
"flutter",
"flutter_web_plugins",
"image_picker_platform_interface",
"mime",
"web"
"analyzer",
"collection",
"source_gen"
]
},
{
"name": "mime",
"version": "2.0.0",
"dependencies": []
},
{
"name": "mqtt5_client",
"version": "4.14.0",
"name": "glob",
"version": "2.1.3",
"dependencies": [
"characters",
"crypto",
"event_bus",
"meta",
"async",
"collection",
"file",
"path",
"typed_data",
"universal_html",
"web"
"string_scanner"
]
},
{
"name": "event_bus",
"version": "2.0.1",
"dependencies": []
},
{
"name": "platform",
"version": "3.1.6",
"dependencies": []
},
{
"name": "file",
"version": "7.0.1",
@@ -1214,31 +1283,17 @@
]
},
{
"name": "url_launcher_web",
"version": "2.4.1",
"name": "platform",
"version": "3.1.6",
"dependencies": []
},
{
"name": "vector_graphics",
"version": "1.1.19",
"dependencies": [
"flutter",
"flutter_web_plugins",
"url_launcher_platform_interface",
"web"
]
},
{
"name": "file_selector_macos",
"version": "0.9.4+3",
"dependencies": [
"cross_file",
"file_selector_platform_interface",
"flutter"
]
},
{
"name": "source_helper",
"version": "1.3.5",
"dependencies": [
"analyzer",
"collection",
"source_gen"
"http",
"vector_graphics_codec"
]
},
{
@@ -1256,14 +1311,22 @@
]
},
{
"name": "glob",
"version": "2.1.3",
"name": "url_launcher_web",
"version": "2.4.1",
"dependencies": [
"async",
"collection",
"file",
"path",
"string_scanner"
"flutter",
"flutter_web_plugins",
"url_launcher_platform_interface",
"web"
]
},
{
"name": "file_selector_macos",
"version": "0.9.4+4",
"dependencies": [
"cross_file",
"file_selector_platform_interface",
"flutter"
]
},
{
@@ -1273,51 +1336,6 @@
"meta"
]
},
{
"name": "flutter_svg",
"version": "2.2.0",
"dependencies": [
"flutter",
"http",
"vector_graphics",
"vector_graphics_codec",
"vector_graphics_compiler"
]
},
{
"name": "vector_graphics_codec",
"version": "1.1.13",
"dependencies": []
},
{
"name": "vector_graphics_compiler",
"version": "1.1.17",
"dependencies": [
"args",
"meta",
"path",
"path_parsing",
"vector_graphics_codec",
"xml"
]
},
{
"name": "path_parsing",
"version": "1.1.0",
"dependencies": [
"meta",
"vector_math"
]
},
{
"name": "vector_graphics",
"version": "1.1.19",
"dependencies": [
"flutter",
"http",
"vector_graphics_codec"
]
},
{
"name": "path_provider_android",
"version": "2.2.17",
@@ -1713,21 +1731,6 @@
"stream_channel"
]
},
{
"name": "image_picker_ios",
"version": "0.8.12+2",
"dependencies": [
"flutter",
"image_picker_platform_interface"
]
},
{
"name": "win32",
"version": "5.14.0",
"dependencies": [
"ffi"
]
},
{
"name": "file_selector_windows",
"version": "0.9.3+4",
@@ -1745,6 +1748,13 @@
"web"
]
},
{
"name": "win32",
"version": "5.14.0",
"dependencies": [
"ffi"
]
},
{
"name": "url_launcher_android",
"version": "6.3.17",
@@ -1753,15 +1763,6 @@
"url_launcher_platform_interface"
]
},
{
"name": "image_picker_android",
"version": "0.8.12+25",
"dependencies": [
"flutter",
"flutter_plugin_android_lifecycle",
"image_picker_platform_interface"
]
},
{
"name": "flutter_plugin_android_lifecycle",
"version": "2.0.29",