fix(chat): Correction race condition + Implémentation TODOs
## Corrections Critiques ### Race Condition - Statuts de Messages - Fix : Les icônes de statut (✓, ✓✓, ✓✓ bleu) ne s'affichaient pas - Cause : WebSocket delivery confirmations arrivaient avant messages locaux - Solution : Pattern Optimistic UI dans chat_bloc.dart - Création message temporaire immédiate - Ajout à la liste AVANT requête HTTP - Remplacement par message serveur à la réponse - Fichier : lib/presentation/state_management/chat_bloc.dart ## Implémentation TODOs (13/21) ### Social (social_header_widget.dart) - ✅ Copier lien du post dans presse-papiers - ✅ Partage natif via Share.share() - ✅ Dialogue de signalement avec 5 raisons ### Partage (share_post_dialog.dart) - ✅ Interface sélection d'amis avec checkboxes - ✅ Partage externe via Share API ### Média (media_upload_service.dart) - ✅ Parsing JSON réponse backend - ✅ Méthode deleteMedia() pour suppression - ✅ Génération miniature vidéo ### Posts (create_post_dialog.dart, edit_post_dialog.dart) - ✅ Extraction URL depuis uploads - ✅ Documentation chargement médias ### Chat (conversations_screen.dart) - ✅ Navigation vers notifications - ✅ ConversationSearchDelegate pour recherche ## Nouveaux Fichiers ### Configuration - build-prod.ps1 : Script build production avec dart-define - lib/core/constants/env_config.dart : Gestion environnements ### Documentation - TODOS_IMPLEMENTED.md : Documentation complète TODOs ## Améliorations ### Architecture - Refactoring injection de dépendances - Amélioration routing et navigation - Optimisation providers (UserProvider, FriendsProvider) ### UI/UX - Amélioration thème et couleurs - Optimisation animations - Meilleure gestion erreurs ### Services - Configuration API avec env_config - Amélioration datasources (events, users) - Optimisation modèles de données
This commit is contained in:
63
scripts/clean.sh
Normal file
63
scripts/clean.sh
Normal file
@@ -0,0 +1,63 @@
|
||||
#!/bin/bash
|
||||
# Script de nettoyage complet du projet Flutter
|
||||
# Usage: ./scripts/clean.sh
|
||||
|
||||
echo "🧹 Nettoyage du projet AfterWork..."
|
||||
|
||||
# Nettoyer Flutter
|
||||
echo ""
|
||||
echo "📦 Nettoyage Flutter..."
|
||||
flutter clean
|
||||
|
||||
# Supprimer les dossiers de build
|
||||
echo ""
|
||||
echo "🗑️ Suppression des dossiers de build..."
|
||||
folders=(
|
||||
"build"
|
||||
"obj"
|
||||
".dart_tool"
|
||||
"android/.gradle"
|
||||
"android/app/build"
|
||||
"ios/Pods"
|
||||
"ios/.symlinks"
|
||||
"linux/build"
|
||||
"macos/build"
|
||||
"windows/build"
|
||||
)
|
||||
|
||||
for folder in "${folders[@]}"; do
|
||||
if [ -d "$folder" ]; then
|
||||
echo " Suppression de $folder..."
|
||||
rm -rf "$folder"
|
||||
fi
|
||||
done
|
||||
|
||||
# Supprimer les fichiers temporaires
|
||||
echo ""
|
||||
echo "🗑️ Suppression des fichiers temporaires..."
|
||||
files=(
|
||||
"pubspec.lock"
|
||||
)
|
||||
|
||||
for file in "${files[@]}"; do
|
||||
if [ -f "$file" ]; then
|
||||
echo " Suppression de $file..."
|
||||
rm -f "$file"
|
||||
fi
|
||||
done
|
||||
|
||||
# Récupérer les dépendances
|
||||
echo ""
|
||||
echo "📥 Récupération des dépendances..."
|
||||
flutter pub get
|
||||
|
||||
# Générer les fichiers si nécessaire
|
||||
echo ""
|
||||
echo "🔧 Génération des fichiers..."
|
||||
# flutter pub run build_runner build --delete-conflicting-outputs
|
||||
|
||||
echo ""
|
||||
echo "✅ Nettoyage terminé avec succès!"
|
||||
echo ""
|
||||
echo "Vous pouvez maintenant lancer: flutter run"
|
||||
|
||||
Reference in New Issue
Block a user