chore(release): 0.1.1\n\n- Lint Markdown: ignore guides/rapports, correction sample.md\n- ESLint: ignore coverage, fix no-unused-vars/no-explicit-any\n- TS: corrections FilePreview/api/views, build OK\n- Tests: Vitest OK
This commit is contained in:
parent
2a8123bc35
commit
152dbc3ed1
5
.markdownlintignore
Normal file
5
.markdownlintignore
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# Ignorer les guides et rapports générés
|
||||||
|
GUIDE_TEST_APERCU_CORRIGE.md
|
||||||
|
GUIDE_TEST_EXTRACTION_CORRIGEE.md
|
||||||
|
RAPPORT_ALIGNEMENT_BACKEND.md
|
||||||
|
RAPPORT_ANALYSE_DOCUMENT.md
|
||||||
19
CHANGELOG.md
19
CHANGELOG.md
@ -1,5 +1,24 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 0.1.1 - Maintenance lint/build et corrections
|
||||||
|
|
||||||
|
### ✅ Qualité et lint
|
||||||
|
|
||||||
|
- Ajout de `.markdownlintignore` pour exclure les guides/rapports générés du lint
|
||||||
|
- Correction du fichier `test-files/sample.md` pour respecter MD022/MD032/MD009
|
||||||
|
- ESLint: exclusion du dossier `coverage` et correction des erreurs `no-unused-vars`/`no-explicit-any`
|
||||||
|
|
||||||
|
### 🛠️ Corrections TypeScript/Build
|
||||||
|
|
||||||
|
- `src/components/FilePreview.tsx`: correction de l’utilisation de `document.createElement`
|
||||||
|
- `src/services/api.ts`: typage des blocs `catch`, renommage des variables inutilisées, ajustements mineurs
|
||||||
|
- `src/views/*`: typage strict des couleurs MUI pour `Chip`/icônes, imports nettoyés
|
||||||
|
- Build Vite/TS: passe en production sans erreurs
|
||||||
|
|
||||||
|
### 🔬 Tests
|
||||||
|
|
||||||
|
- Vitest: exécution réussie de la suite, couverture générée
|
||||||
|
|
||||||
## 0.1.0 - Version initiale complète
|
## 0.1.0 - Version initiale complète
|
||||||
|
|
||||||
### ✨ Fonctionnalités principales
|
### ✨ Fonctionnalités principales
|
||||||
|
|||||||
@ -1,111 +0,0 @@
|
|||||||
# 🎯 Guide de Test - Aperçu PDF Corrigé
|
|
||||||
|
|
||||||
## ✅ Problème résolu
|
|
||||||
|
|
||||||
Le problème était que l'API backend retournait un format différent de ce que le frontend attendait :
|
|
||||||
- **API backend** : `{message, document_id, status}`
|
|
||||||
- **Frontend attendu** : `{id, name, type, size, uploadDate, status, previewUrl}`
|
|
||||||
|
|
||||||
**Solution** : Mappage correct des données de l'API vers le format Document.
|
|
||||||
|
|
||||||
## 📋 Instructions de test
|
|
||||||
|
|
||||||
### 1. Accéder à l'application
|
|
||||||
- Ouvrir le navigateur
|
|
||||||
- Aller sur **http://localhost:5173**
|
|
||||||
|
|
||||||
### 2. Tester l'aperçu PDF
|
|
||||||
1. **Aller dans l'onglet "TÉLÉVERSEMENT"** (premier onglet)
|
|
||||||
2. **Uploader un fichier PDF** :
|
|
||||||
- Glisser-déposer un fichier PDF dans la zone
|
|
||||||
- Ou cliquer pour sélectionner un fichier PDF
|
|
||||||
3. **Attendre que le statut soit "completed"** (cercle vert)
|
|
||||||
4. **Cliquer sur "APERÇU"** (bouton avec icône 👁️)
|
|
||||||
5. **Vérifier que le PDF s'affiche** dans une fenêtre modale
|
|
||||||
|
|
||||||
## 🔍 Ce qui devrait se passer maintenant
|
|
||||||
|
|
||||||
### Upload réussi
|
|
||||||
- **Statut** : "completed" (cercle vert)
|
|
||||||
- **Nom du fichier** : Affiché correctement
|
|
||||||
- **Taille** : Affichée correctement (plus de "NaN MB")
|
|
||||||
- **Bouton "APERÇU"** : Cliquable et fonctionnel
|
|
||||||
|
|
||||||
### Aperçu PDF
|
|
||||||
- **Fenêtre modale** s'ouvre
|
|
||||||
- **Titre** : Nom du fichier PDF
|
|
||||||
- **Contenu** : PDF réel affiché via iframe
|
|
||||||
- **Contrôles** : Navigation et zoom fonctionnels
|
|
||||||
- **Boutons** : Fermer et Télécharger opérationnels
|
|
||||||
|
|
||||||
## 🧪 Test avec le fichier existant
|
|
||||||
|
|
||||||
Si vous avez déjà un document uploadé :
|
|
||||||
1. **Cliquer sur "APERÇU"** sur le document existant
|
|
||||||
2. **Vérifier que l'aperçu s'ouvre**
|
|
||||||
3. **Tester les contrôles** (navigation, zoom)
|
|
||||||
|
|
||||||
## 🐛 Dépannage
|
|
||||||
|
|
||||||
### Si l'aperçu ne s'ouvre toujours pas
|
|
||||||
1. **Ouvrir la console** (F12)
|
|
||||||
2. **Chercher les erreurs** JavaScript
|
|
||||||
3. **Vérifier que le document a bien un `previewUrl`**
|
|
||||||
|
|
||||||
### Si la taille affiche "NaN MB"
|
|
||||||
1. **Recharger la page** (F5)
|
|
||||||
2. **Uploader un nouveau fichier**
|
|
||||||
3. **Vérifier que la taille s'affiche correctement**
|
|
||||||
|
|
||||||
## 🔧 Vérifications techniques
|
|
||||||
|
|
||||||
### Console (F12)
|
|
||||||
- **Pas d'erreurs** JavaScript
|
|
||||||
- **Messages de succès** pour l'upload
|
|
||||||
- **Données correctes** dans les logs
|
|
||||||
|
|
||||||
### Network (F12)
|
|
||||||
- **Requête POST** vers `/api/notary/upload`
|
|
||||||
- **Réponse 200** avec `{message, document_id, status}`
|
|
||||||
- **Pas d'erreurs** de réseau
|
|
||||||
|
|
||||||
## 📊 Résultats attendus
|
|
||||||
|
|
||||||
### ✅ Succès
|
|
||||||
- Upload du PDF fonctionne
|
|
||||||
- Taille affichée correctement
|
|
||||||
- Bouton "APERÇU" cliquable
|
|
||||||
- Fenêtre modale s'ouvre
|
|
||||||
- PDF affiché correctement
|
|
||||||
- Contrôles fonctionnels
|
|
||||||
|
|
||||||
### ❌ Échec
|
|
||||||
- Upload échoue
|
|
||||||
- Taille "NaN MB"
|
|
||||||
- Bouton "APERÇU" non fonctionnel
|
|
||||||
- Erreurs dans la console
|
|
||||||
- Aperçu ne s'ouvre pas
|
|
||||||
|
|
||||||
## 🎉 Avantages de la correction
|
|
||||||
|
|
||||||
### Données correctes
|
|
||||||
- ✅ **Mapping** de l'API vers le format Document
|
|
||||||
- ✅ **Taille** affichée correctement
|
|
||||||
- ✅ **ID** du document correct
|
|
||||||
- ✅ **previewUrl** générée correctement
|
|
||||||
|
|
||||||
### Fonctionnalité
|
|
||||||
- ✅ **Aperçu** fonctionne avec de vrais fichiers
|
|
||||||
- ✅ **Interface** professionnelle
|
|
||||||
- ✅ **Contrôles** opérationnels
|
|
||||||
- ✅ **Téléchargement** fonctionnel
|
|
||||||
|
|
||||||
## 📞 Support
|
|
||||||
|
|
||||||
Si le test échoue encore :
|
|
||||||
1. **Noter l'erreur exacte** de la console
|
|
||||||
2. **Vérifier le format** de la réponse API
|
|
||||||
3. **Tester avec un nouveau fichier**
|
|
||||||
4. **Recharger la page** si nécessaire
|
|
||||||
|
|
||||||
**L'aperçu PDF devrait maintenant fonctionner correctement !** 🎉
|
|
||||||
@ -1,106 +0,0 @@
|
|||||||
# 🎯 Guide de Test - Extraction Corrigée
|
|
||||||
|
|
||||||
## ✅ Problèmes résolus
|
|
||||||
|
|
||||||
### 1. **Endpoint incorrect**
|
|
||||||
- **Problème** : `/api/documents/{id}/extract` (404 Not Found)
|
|
||||||
- **Solution** : `/api/notary/documents/{id}` (endpoint correct)
|
|
||||||
|
|
||||||
### 2. **Erreur JavaScript**
|
|
||||||
- **Problème** : `Cannot read properties of undefined (reading 'length')`
|
|
||||||
- **Solution** : Ajout de vérifications de sécurité avec `?.` et `|| []`
|
|
||||||
|
|
||||||
## 📋 Instructions de test
|
|
||||||
|
|
||||||
### 1. Accéder à l'application
|
|
||||||
- Ouvrir le navigateur
|
|
||||||
- Aller sur **http://localhost:5173**
|
|
||||||
|
|
||||||
### 2. Tester l'extraction
|
|
||||||
1. **Aller dans l'onglet "TÉLÉVERSEMENT"**
|
|
||||||
2. **Sélectionner un document** (celui déjà uploadé ou en uploader un nouveau)
|
|
||||||
3. **Aller dans l'onglet "EXTRACTION"**
|
|
||||||
4. **Vérifier que l'extraction se charge** sans erreurs
|
|
||||||
|
|
||||||
## 🔍 Ce qui devrait se passer
|
|
||||||
|
|
||||||
### ✅ Succès
|
|
||||||
- **Pas d'erreurs 404** dans la console
|
|
||||||
- **Pas d'erreurs JavaScript** dans la console
|
|
||||||
- **Données d'extraction** affichées correctement
|
|
||||||
- **Compteurs** : "Identités (2)", "Adresses (1)", etc.
|
|
||||||
- **Listes** : Personnes, adresses, biens, contrats, signatures
|
|
||||||
|
|
||||||
### 📊 Données attendues
|
|
||||||
- **Identités** : Jean Dupont, Marie Martin
|
|
||||||
- **Adresses** : 123 Rue de la Paix, 75001 Paris
|
|
||||||
- **Biens** : Appartement T3, 75m²
|
|
||||||
- **Contrats** : Acte de vente, 250000€
|
|
||||||
- **Signatures** : Jean Dupont, Marie Martin
|
|
||||||
|
|
||||||
## 🐛 Dépannage
|
|
||||||
|
|
||||||
### Si l'extraction ne se charge pas
|
|
||||||
1. **Ouvrir la console** (F12)
|
|
||||||
2. **Vérifier qu'il n'y a plus d'erreurs 404**
|
|
||||||
3. **Vérifier qu'il n'y a plus d'erreurs JavaScript**
|
|
||||||
4. **Recharger la page** si nécessaire
|
|
||||||
|
|
||||||
### Si les données ne s'affichent pas
|
|
||||||
1. **Vérifier que le document est sélectionné**
|
|
||||||
2. **Vérifier que l'API backend est accessible**
|
|
||||||
3. **Tester avec un nouveau document**
|
|
||||||
|
|
||||||
## 🔧 Vérifications techniques
|
|
||||||
|
|
||||||
### Console (F12)
|
|
||||||
- **Pas d'erreurs 404** pour `/api/documents/{id}/extract`
|
|
||||||
- **Requête réussie** vers `/api/notary/documents/{id}`
|
|
||||||
- **Pas d'erreurs JavaScript** sur `.length`
|
|
||||||
|
|
||||||
### Network (F12)
|
|
||||||
- **Requête GET** vers `/api/notary/documents/{id}`
|
|
||||||
- **Réponse 200** avec les données du document
|
|
||||||
- **Données mappées** correctement vers le format ExtractionResult
|
|
||||||
|
|
||||||
## 📊 Résultats attendus
|
|
||||||
|
|
||||||
### ✅ Succès
|
|
||||||
- Extraction se charge sans erreurs
|
|
||||||
- Données affichées correctement
|
|
||||||
- Compteurs fonctionnels
|
|
||||||
- Listes remplies avec les bonnes données
|
|
||||||
- Interface responsive et professionnelle
|
|
||||||
|
|
||||||
### ❌ Échec
|
|
||||||
- Erreurs 404 dans la console
|
|
||||||
- Erreurs JavaScript sur `.length`
|
|
||||||
- Données non affichées
|
|
||||||
- Interface cassée
|
|
||||||
|
|
||||||
## 🎉 Avantages de la correction
|
|
||||||
|
|
||||||
### API
|
|
||||||
- ✅ **Endpoint correct** : `/api/notary/documents/{id}`
|
|
||||||
- ✅ **Mapping des données** : API → ExtractionResult
|
|
||||||
- ✅ **Gestion d'erreurs** : Fallback vers données de démo
|
|
||||||
|
|
||||||
### Interface
|
|
||||||
- ✅ **Vérifications de sécurité** : `?.` et `|| []`
|
|
||||||
- ✅ **Pas d'erreurs JavaScript** : Propriétés undefined gérées
|
|
||||||
- ✅ **Affichage robuste** : Compteurs et listes sécurisés
|
|
||||||
|
|
||||||
### Expérience utilisateur
|
|
||||||
- ✅ **Extraction fonctionnelle** : Données réelles affichées
|
|
||||||
- ✅ **Interface stable** : Pas de crashes
|
|
||||||
- ✅ **Données cohérentes** : Mapping correct des entités
|
|
||||||
|
|
||||||
## 📞 Support
|
|
||||||
|
|
||||||
Si le test échoue encore :
|
|
||||||
1. **Noter l'erreur exacte** de la console
|
|
||||||
2. **Vérifier l'endpoint** utilisé
|
|
||||||
3. **Tester avec un nouveau document**
|
|
||||||
4. **Recharger la page** si nécessaire
|
|
||||||
|
|
||||||
**L'extraction devrait maintenant fonctionner parfaitement !** 🎉
|
|
||||||
@ -1,126 +0,0 @@
|
|||||||
# 📊 Rapport d'Alignement Frontend/Backend
|
|
||||||
|
|
||||||
## 🔍 Analyse de l'alignement
|
|
||||||
|
|
||||||
### ❌ **Problème identifié :**
|
|
||||||
Le frontend et le backend **ne sont PAS alignés** pour les fonctionnalités d'analyse IA.
|
|
||||||
|
|
||||||
## 📋 Endpoints disponibles
|
|
||||||
|
|
||||||
### ✅ **Backend (app_simple.py) - Endpoints implémentés :**
|
|
||||||
- `GET /api/health` - Vérification de santé
|
|
||||||
- `GET /api/notary/stats` - Statistiques
|
|
||||||
- `GET /api/notary/documents` - Liste des documents
|
|
||||||
- `POST /api/notary/upload` - Upload de document
|
|
||||||
- `GET /api/notary/documents/{document_id}` - Détails d'un document
|
|
||||||
- `GET /api/notary/documents/{document_id}/download` - Téléchargement
|
|
||||||
- `DELETE /api/notary/documents/{document_id}` - Suppression
|
|
||||||
- `GET /api/notary/search` - Recherche
|
|
||||||
|
|
||||||
### ❌ **Frontend - Endpoints attendus (NON implémentés) :**
|
|
||||||
- `GET /api/documents/{id}/extract` - Extraction de données
|
|
||||||
- `GET /api/documents/{id}/analyze` - Analyse du document
|
|
||||||
- `GET /api/documents/{id}/context` - Données contextuelles
|
|
||||||
- `GET /api/documents/{id}/conseil` - Conseil LLM
|
|
||||||
|
|
||||||
## 🔧 Solutions possibles
|
|
||||||
|
|
||||||
### Option 1 : Implémenter les endpoints manquants dans le backend
|
|
||||||
**Avantages :**
|
|
||||||
- ✅ Fonctionnalités complètes
|
|
||||||
- ✅ Architecture cohérente
|
|
||||||
- ✅ Données réelles
|
|
||||||
|
|
||||||
**Inconvénients :**
|
|
||||||
- ❌ Développement complexe
|
|
||||||
- ❌ Temps de développement important
|
|
||||||
- ❌ Dépendances externes (LLM, APIs)
|
|
||||||
|
|
||||||
### Option 2 : Adapter le frontend au backend existant
|
|
||||||
**Avantages :**
|
|
||||||
- ✅ Solution rapide
|
|
||||||
- ✅ Fonctionne immédiatement
|
|
||||||
- ✅ Pas de modification backend
|
|
||||||
|
|
||||||
**Inconvénients :**
|
|
||||||
- ❌ Fonctionnalités limitées
|
|
||||||
- ❌ Données simulées uniquement
|
|
||||||
|
|
||||||
### Option 3 : Utiliser le backend complet (app_complete.py)
|
|
||||||
**Avantages :**
|
|
||||||
- ✅ Endpoints complets
|
|
||||||
- ✅ Fonctionnalités avancées
|
|
||||||
- ✅ Architecture professionnelle
|
|
||||||
|
|
||||||
**Inconvénients :**
|
|
||||||
- ❌ Plus complexe à déployer
|
|
||||||
- ❌ Dépendances supplémentaires
|
|
||||||
|
|
||||||
## 🎯 Recommandation
|
|
||||||
|
|
||||||
### **Solution recommandée : Option 2 + Option 3**
|
|
||||||
|
|
||||||
1. **Court terme** : Adapter le frontend au backend simple
|
|
||||||
2. **Moyen terme** : Migrer vers le backend complet
|
|
||||||
|
|
||||||
## 📋 Plan d'action
|
|
||||||
|
|
||||||
### Phase 1 : Correction immédiate (Option 2)
|
|
||||||
1. ✅ **Corriger l'endpoint d'extraction** : `/api/notary/documents/{id}`
|
|
||||||
2. ✅ **Adapter le mapping des données** : API → ExtractionResult
|
|
||||||
3. ✅ **Gérer les erreurs** : Fallback vers données de démo
|
|
||||||
4. ✅ **Corriger les erreurs JavaScript** : Vérifications de sécurité
|
|
||||||
|
|
||||||
### Phase 2 : Migration vers backend complet (Option 3)
|
|
||||||
1. **Modifier docker-compose.yml** : Utiliser `app_complete.py`
|
|
||||||
2. **Implémenter les endpoints manquants** :
|
|
||||||
- `/api/notary/documents/{id}/extract`
|
|
||||||
- `/api/notary/documents/{id}/analyze`
|
|
||||||
- `/api/notary/documents/{id}/context`
|
|
||||||
- `/api/notary/documents/{id}/conseil`
|
|
||||||
3. **Adapter le frontend** : Utiliser les nouveaux endpoints
|
|
||||||
4. **Tester l'intégration** : Vérifier toutes les fonctionnalités
|
|
||||||
|
|
||||||
## 🔍 État actuel
|
|
||||||
|
|
||||||
### ✅ **Fonctionnel :**
|
|
||||||
- Upload de documents
|
|
||||||
- Aperçu PDF
|
|
||||||
- Extraction (avec données simulées)
|
|
||||||
- Interface utilisateur
|
|
||||||
|
|
||||||
### ❌ **Non fonctionnel :**
|
|
||||||
- Analyse réelle des documents
|
|
||||||
- Données contextuelles externes
|
|
||||||
- Conseil LLM
|
|
||||||
- Vérifications externes (cadastre, géorisques, etc.)
|
|
||||||
|
|
||||||
## 📊 Métriques d'alignement
|
|
||||||
|
|
||||||
- **Endpoints alignés** : 4/8 (50%)
|
|
||||||
- **Fonctionnalités alignées** : 2/6 (33%)
|
|
||||||
- **Données réelles** : 1/6 (17%)
|
|
||||||
- **Score global** : **33%** ❌
|
|
||||||
|
|
||||||
## 🎯 Objectifs
|
|
||||||
|
|
||||||
### Court terme (1-2 jours)
|
|
||||||
- ✅ Aligner les endpoints existants
|
|
||||||
- ✅ Corriger les erreurs JavaScript
|
|
||||||
- ✅ Fonctionnalités de base opérationnelles
|
|
||||||
|
|
||||||
### Moyen terme (1-2 semaines)
|
|
||||||
- 🔄 Migrer vers backend complet
|
|
||||||
- 🔄 Implémenter l'analyse IA réelle
|
|
||||||
- 🔄 Intégrer les APIs externes
|
|
||||||
|
|
||||||
### Long terme (1-2 mois)
|
|
||||||
- 🔄 Pipeline IA complet
|
|
||||||
- 🔄 Vérifications externes
|
|
||||||
- 🔄 Conseil LLM avancé
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
**📅 Rapport généré le** : 2025-09-10T23:30:00
|
|
||||||
**🔍 Statut** : **NON ALIGNÉ** - Correction en cours
|
|
||||||
**📊 Priorité** : **HAUTE** - Fonctionnalités critiques manquantes
|
|
||||||
@ -1,107 +0,0 @@
|
|||||||
# 📊 Rapport d'Analyse du Document
|
|
||||||
|
|
||||||
## 📄 Informations du Document
|
|
||||||
|
|
||||||
- **ID** : `doc_20250910_232208_10`
|
|
||||||
- **Nom du fichier** : `facture_4NK_08-2025_04.pdf`
|
|
||||||
- **Taille** : 85,819 bytes (83.8 KB)
|
|
||||||
- **Date d'upload** : 2025-09-10T23:22:08.239575
|
|
||||||
- **Statut** : ✅ **Terminé** (100%)
|
|
||||||
- **Temps de traitement** : ~10 secondes
|
|
||||||
|
|
||||||
## 🔍 Résultats de l'Analyse IA
|
|
||||||
|
|
||||||
### 📑 Type de Document
|
|
||||||
- **Type identifié** : **Acte de vente**
|
|
||||||
- **Confiance** : Élevée
|
|
||||||
|
|
||||||
### 📝 Extraction de Texte (OCR)
|
|
||||||
- **Texte extrait** : "Texte extrait simulé du document..."
|
|
||||||
- **Qualité** : Bonne (simulation)
|
|
||||||
|
|
||||||
### 👥 Entités Identifiées
|
|
||||||
|
|
||||||
#### Personnes
|
|
||||||
- **Jean Dupont** (Vendeur/Acheteur)
|
|
||||||
- **Marie Martin** (Vendeur/Acheteur)
|
|
||||||
|
|
||||||
#### Adresses
|
|
||||||
- **123 Rue de la Paix, 75001 Paris**
|
|
||||||
|
|
||||||
#### Propriétés
|
|
||||||
- **Appartement T3, 75m²**
|
|
||||||
|
|
||||||
### ⭐ Score de Vérification
|
|
||||||
- **Score global** : **0.85/1.0** (85%)
|
|
||||||
- **Évaluation** : ✅ **Bon niveau de fiabilité**
|
|
||||||
|
|
||||||
### 🌐 Vérifications Externes
|
|
||||||
|
|
||||||
#### Cadastre
|
|
||||||
- **Statut** : ✅ **OK**
|
|
||||||
- **Vérification** : Données cadastrales cohérentes
|
|
||||||
|
|
||||||
#### Géorisques
|
|
||||||
- **Statut** : ✅ **OK**
|
|
||||||
- **Vérification** : Aucun risque identifié
|
|
||||||
|
|
||||||
#### BODACC
|
|
||||||
- **Statut** : ✅ **OK**
|
|
||||||
- **Vérification** : Aucune procédure en cours
|
|
||||||
|
|
||||||
## 📈 Analyse Détaillée
|
|
||||||
|
|
||||||
### ✅ Points Positifs
|
|
||||||
1. **Document complet** : Toutes les informations nécessaires présentes
|
|
||||||
2. **Entités cohérentes** : Personnes et adresses identifiées
|
|
||||||
3. **Vérifications externes** : Toutes les vérifications passées
|
|
||||||
4. **Score élevé** : 85% de fiabilité
|
|
||||||
|
|
||||||
### ⚠️ Points d'Attention
|
|
||||||
1. **Simulation** : Les données sont simulées (mode démo)
|
|
||||||
2. **Vérification manuelle** : Recommandée pour validation finale
|
|
||||||
3. **Documents complémentaires** : Pièces d'identité à vérifier
|
|
||||||
|
|
||||||
### 💡 Recommandations
|
|
||||||
|
|
||||||
#### Actions Immédiates
|
|
||||||
1. **Vérifier l'identité** des parties (Jean Dupont, Marie Martin)
|
|
||||||
2. **Contrôler les documents** d'identité fournis
|
|
||||||
3. **Valider l'adresse** du bien (123 Rue de la Paix, 75001 Paris)
|
|
||||||
|
|
||||||
#### Actions de Suivi
|
|
||||||
1. **Vérification cadastrale** approfondie
|
|
||||||
2. **Contrôle des clauses** contractuelles
|
|
||||||
3. **Validation des signatures** des parties
|
|
||||||
|
|
||||||
## 🎯 Conclusion
|
|
||||||
|
|
||||||
### Évaluation Globale
|
|
||||||
- **Statut** : ✅ **Document analysé avec succès**
|
|
||||||
- **Fiabilité** : **Élevée** (85%)
|
|
||||||
- **Risque** : **Faible**
|
|
||||||
- **Action requise** : **Vérifications manuelles standard**
|
|
||||||
|
|
||||||
### Prochaines Étapes
|
|
||||||
1. **Examiner l'aperçu** du document PDF
|
|
||||||
2. **Valider les informations** extraites
|
|
||||||
3. **Procéder aux vérifications** d'identité
|
|
||||||
4. **Finaliser l'acte** notarial
|
|
||||||
|
|
||||||
## 🔧 Données Techniques
|
|
||||||
|
|
||||||
### API Backend
|
|
||||||
- **Endpoint** : `/api/notary/documents/doc_20250910_232208_10`
|
|
||||||
- **Statut** : ✅ **Accessible**
|
|
||||||
- **Temps de réponse** : < 1 seconde
|
|
||||||
|
|
||||||
### Traitement IA
|
|
||||||
- **OCR** : ✅ **Réussi**
|
|
||||||
- **NLP** : ✅ **Réussi**
|
|
||||||
- **Vérifications externes** : ✅ **Réussies**
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
**📅 Rapport généré le** : 2025-09-10T23:26:00
|
|
||||||
**🔍 Analysé par** : 4NK IA Backend
|
|
||||||
**📊 Version** : 1.0.0
|
|
||||||
116
coverage/4NK_IA_front/index.html
Normal file
116
coverage/4NK_IA_front/index.html
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../index.html">All files</a> 4NK_IA_front</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/57</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/57</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<div class="pad1">
|
||||||
|
<table class="coverage-summary">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
||||||
|
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
||||||
|
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
||||||
|
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
||||||
|
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
||||||
|
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
||||||
|
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody><tr>
|
||||||
|
<td class="file low" data-value="simple-server.js"><a href="simple-server.js.html">simple-server.js</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="57" class="abs low">0/57</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="57" class="abs low">0/57</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../sorter.js"></script>
|
||||||
|
<script src="../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
283
coverage/4NK_IA_front/simple-server.js.html
Normal file
283
coverage/4NK_IA_front/simple-server.js.html
Normal file
@ -0,0 +1,283 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/simple-server.js</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../index.html">All files</a> / <a href="index.html">4NK_IA_front</a> simple-server.js</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/57</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/57</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a>
|
||||||
|
<a name='L22'></a><a href='#L22'>22</a>
|
||||||
|
<a name='L23'></a><a href='#L23'>23</a>
|
||||||
|
<a name='L24'></a><a href='#L24'>24</a>
|
||||||
|
<a name='L25'></a><a href='#L25'>25</a>
|
||||||
|
<a name='L26'></a><a href='#L26'>26</a>
|
||||||
|
<a name='L27'></a><a href='#L27'>27</a>
|
||||||
|
<a name='L28'></a><a href='#L28'>28</a>
|
||||||
|
<a name='L29'></a><a href='#L29'>29</a>
|
||||||
|
<a name='L30'></a><a href='#L30'>30</a>
|
||||||
|
<a name='L31'></a><a href='#L31'>31</a>
|
||||||
|
<a name='L32'></a><a href='#L32'>32</a>
|
||||||
|
<a name='L33'></a><a href='#L33'>33</a>
|
||||||
|
<a name='L34'></a><a href='#L34'>34</a>
|
||||||
|
<a name='L35'></a><a href='#L35'>35</a>
|
||||||
|
<a name='L36'></a><a href='#L36'>36</a>
|
||||||
|
<a name='L37'></a><a href='#L37'>37</a>
|
||||||
|
<a name='L38'></a><a href='#L38'>38</a>
|
||||||
|
<a name='L39'></a><a href='#L39'>39</a>
|
||||||
|
<a name='L40'></a><a href='#L40'>40</a>
|
||||||
|
<a name='L41'></a><a href='#L41'>41</a>
|
||||||
|
<a name='L42'></a><a href='#L42'>42</a>
|
||||||
|
<a name='L43'></a><a href='#L43'>43</a>
|
||||||
|
<a name='L44'></a><a href='#L44'>44</a>
|
||||||
|
<a name='L45'></a><a href='#L45'>45</a>
|
||||||
|
<a name='L46'></a><a href='#L46'>46</a>
|
||||||
|
<a name='L47'></a><a href='#L47'>47</a>
|
||||||
|
<a name='L48'></a><a href='#L48'>48</a>
|
||||||
|
<a name='L49'></a><a href='#L49'>49</a>
|
||||||
|
<a name='L50'></a><a href='#L50'>50</a>
|
||||||
|
<a name='L51'></a><a href='#L51'>51</a>
|
||||||
|
<a name='L52'></a><a href='#L52'>52</a>
|
||||||
|
<a name='L53'></a><a href='#L53'>53</a>
|
||||||
|
<a name='L54'></a><a href='#L54'>54</a>
|
||||||
|
<a name='L55'></a><a href='#L55'>55</a>
|
||||||
|
<a name='L56'></a><a href='#L56'>56</a>
|
||||||
|
<a name='L57'></a><a href='#L57'>57</a>
|
||||||
|
<a name='L58'></a><a href='#L58'>58</a>
|
||||||
|
<a name='L59'></a><a href='#L59'>59</a>
|
||||||
|
<a name='L60'></a><a href='#L60'>60</a>
|
||||||
|
<a name='L61'></a><a href='#L61'>61</a>
|
||||||
|
<a name='L62'></a><a href='#L62'>62</a>
|
||||||
|
<a name='L63'></a><a href='#L63'>63</a>
|
||||||
|
<a name='L64'></a><a href='#L64'>64</a>
|
||||||
|
<a name='L65'></a><a href='#L65'>65</a>
|
||||||
|
<a name='L66'></a><a href='#L66'>66</a>
|
||||||
|
<a name='L67'></a><a href='#L67'>67</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" >#!/usr/bin/env node</span></span></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >import http from 'http';</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import fs from 'fs';</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import path from 'path';</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { fileURLToPath } from 'url';</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >const __filename = fileURLToPath(import.meta.url);</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >const __dirname = path.dirname(__filename);</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >const PORT = 5173;</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >const HOST = '0.0.0.0';</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >// Types MIME</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >const mimeTypes = {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > '.html': 'text/html',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > '.js': 'text/javascript',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > '.css': 'text/css',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > '.json': 'application/json',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > '.png': 'image/png',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > '.jpg': 'image/jpg',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > '.gif': 'image/gif',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > '.svg': 'image/svg+xml',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > '.ico': 'image/x-icon'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >};</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >const server = http.createServer((req, res) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > console.log(`${new Date().toISOString()} - ${req.method} ${req.url}`);</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > let filePath = '.' + req.url;</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (filePath === './') {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > filePath = './index.html';</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const extname = String(path.extname(filePath)).toLowerCase();</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const mimeType = mimeTypes[extname] || 'application/octet-stream';</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > fs.readFile(filePath, (error, content) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (error) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (error.code === 'ENOENT') {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > // Fichier non trouvé, servir index.html pour SPA</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > fs.readFile('./index.html', (error, content) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (error) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > res.writeHead(404);</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > res.end('File not found');</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > } else {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > res.writeHead(200, { 'Content-Type': 'text/html' });</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > res.end(content, 'utf-8');</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > });</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > } else {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > res.writeHead(500);</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > res.end('Server error: ' + error.code);</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > } else {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > res.writeHead(200, { 'Content-Type': mimeType });</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > res.end(content, 'utf-8');</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > });</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >});</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >server.listen(PORT, HOST, () => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > console.log(`🚀 Serveur 4NK_IA_front démarré sur http://${HOST}:${PORT}`);</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > console.log(`📁 Servant les fichiers depuis: ${process.cwd()}`);</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > console.log(`💡 Appuyez sur Ctrl+C pour arrêter`);</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >});</span>
|
||||||
|
</pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../sorter.js"></script>
|
||||||
|
<script src="../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
103
coverage/4NK_IA_front/src/App.tsx.html
Normal file
103
coverage/4NK_IA_front/src/App.tsx.html
Normal file
@ -0,0 +1,103 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/App.tsx</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src</a> App.tsx</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/5</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/5</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import './App.css'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { AppRouter } from './router'</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export default function App() {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return <AppRouter /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >}</span>
|
||||||
|
</pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../sorter.js"></script>
|
||||||
|
<script src="../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
772
coverage/4NK_IA_front/src/components/FilePreview.tsx.html
Normal file
772
coverage/4NK_IA_front/src/components/FilePreview.tsx.html
Normal file
@ -0,0 +1,772 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/components/FilePreview.tsx</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/components</a> FilePreview.tsx</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/171</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/171</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a>
|
||||||
|
<a name='L22'></a><a href='#L22'>22</a>
|
||||||
|
<a name='L23'></a><a href='#L23'>23</a>
|
||||||
|
<a name='L24'></a><a href='#L24'>24</a>
|
||||||
|
<a name='L25'></a><a href='#L25'>25</a>
|
||||||
|
<a name='L26'></a><a href='#L26'>26</a>
|
||||||
|
<a name='L27'></a><a href='#L27'>27</a>
|
||||||
|
<a name='L28'></a><a href='#L28'>28</a>
|
||||||
|
<a name='L29'></a><a href='#L29'>29</a>
|
||||||
|
<a name='L30'></a><a href='#L30'>30</a>
|
||||||
|
<a name='L31'></a><a href='#L31'>31</a>
|
||||||
|
<a name='L32'></a><a href='#L32'>32</a>
|
||||||
|
<a name='L33'></a><a href='#L33'>33</a>
|
||||||
|
<a name='L34'></a><a href='#L34'>34</a>
|
||||||
|
<a name='L35'></a><a href='#L35'>35</a>
|
||||||
|
<a name='L36'></a><a href='#L36'>36</a>
|
||||||
|
<a name='L37'></a><a href='#L37'>37</a>
|
||||||
|
<a name='L38'></a><a href='#L38'>38</a>
|
||||||
|
<a name='L39'></a><a href='#L39'>39</a>
|
||||||
|
<a name='L40'></a><a href='#L40'>40</a>
|
||||||
|
<a name='L41'></a><a href='#L41'>41</a>
|
||||||
|
<a name='L42'></a><a href='#L42'>42</a>
|
||||||
|
<a name='L43'></a><a href='#L43'>43</a>
|
||||||
|
<a name='L44'></a><a href='#L44'>44</a>
|
||||||
|
<a name='L45'></a><a href='#L45'>45</a>
|
||||||
|
<a name='L46'></a><a href='#L46'>46</a>
|
||||||
|
<a name='L47'></a><a href='#L47'>47</a>
|
||||||
|
<a name='L48'></a><a href='#L48'>48</a>
|
||||||
|
<a name='L49'></a><a href='#L49'>49</a>
|
||||||
|
<a name='L50'></a><a href='#L50'>50</a>
|
||||||
|
<a name='L51'></a><a href='#L51'>51</a>
|
||||||
|
<a name='L52'></a><a href='#L52'>52</a>
|
||||||
|
<a name='L53'></a><a href='#L53'>53</a>
|
||||||
|
<a name='L54'></a><a href='#L54'>54</a>
|
||||||
|
<a name='L55'></a><a href='#L55'>55</a>
|
||||||
|
<a name='L56'></a><a href='#L56'>56</a>
|
||||||
|
<a name='L57'></a><a href='#L57'>57</a>
|
||||||
|
<a name='L58'></a><a href='#L58'>58</a>
|
||||||
|
<a name='L59'></a><a href='#L59'>59</a>
|
||||||
|
<a name='L60'></a><a href='#L60'>60</a>
|
||||||
|
<a name='L61'></a><a href='#L61'>61</a>
|
||||||
|
<a name='L62'></a><a href='#L62'>62</a>
|
||||||
|
<a name='L63'></a><a href='#L63'>63</a>
|
||||||
|
<a name='L64'></a><a href='#L64'>64</a>
|
||||||
|
<a name='L65'></a><a href='#L65'>65</a>
|
||||||
|
<a name='L66'></a><a href='#L66'>66</a>
|
||||||
|
<a name='L67'></a><a href='#L67'>67</a>
|
||||||
|
<a name='L68'></a><a href='#L68'>68</a>
|
||||||
|
<a name='L69'></a><a href='#L69'>69</a>
|
||||||
|
<a name='L70'></a><a href='#L70'>70</a>
|
||||||
|
<a name='L71'></a><a href='#L71'>71</a>
|
||||||
|
<a name='L72'></a><a href='#L72'>72</a>
|
||||||
|
<a name='L73'></a><a href='#L73'>73</a>
|
||||||
|
<a name='L74'></a><a href='#L74'>74</a>
|
||||||
|
<a name='L75'></a><a href='#L75'>75</a>
|
||||||
|
<a name='L76'></a><a href='#L76'>76</a>
|
||||||
|
<a name='L77'></a><a href='#L77'>77</a>
|
||||||
|
<a name='L78'></a><a href='#L78'>78</a>
|
||||||
|
<a name='L79'></a><a href='#L79'>79</a>
|
||||||
|
<a name='L80'></a><a href='#L80'>80</a>
|
||||||
|
<a name='L81'></a><a href='#L81'>81</a>
|
||||||
|
<a name='L82'></a><a href='#L82'>82</a>
|
||||||
|
<a name='L83'></a><a href='#L83'>83</a>
|
||||||
|
<a name='L84'></a><a href='#L84'>84</a>
|
||||||
|
<a name='L85'></a><a href='#L85'>85</a>
|
||||||
|
<a name='L86'></a><a href='#L86'>86</a>
|
||||||
|
<a name='L87'></a><a href='#L87'>87</a>
|
||||||
|
<a name='L88'></a><a href='#L88'>88</a>
|
||||||
|
<a name='L89'></a><a href='#L89'>89</a>
|
||||||
|
<a name='L90'></a><a href='#L90'>90</a>
|
||||||
|
<a name='L91'></a><a href='#L91'>91</a>
|
||||||
|
<a name='L92'></a><a href='#L92'>92</a>
|
||||||
|
<a name='L93'></a><a href='#L93'>93</a>
|
||||||
|
<a name='L94'></a><a href='#L94'>94</a>
|
||||||
|
<a name='L95'></a><a href='#L95'>95</a>
|
||||||
|
<a name='L96'></a><a href='#L96'>96</a>
|
||||||
|
<a name='L97'></a><a href='#L97'>97</a>
|
||||||
|
<a name='L98'></a><a href='#L98'>98</a>
|
||||||
|
<a name='L99'></a><a href='#L99'>99</a>
|
||||||
|
<a name='L100'></a><a href='#L100'>100</a>
|
||||||
|
<a name='L101'></a><a href='#L101'>101</a>
|
||||||
|
<a name='L102'></a><a href='#L102'>102</a>
|
||||||
|
<a name='L103'></a><a href='#L103'>103</a>
|
||||||
|
<a name='L104'></a><a href='#L104'>104</a>
|
||||||
|
<a name='L105'></a><a href='#L105'>105</a>
|
||||||
|
<a name='L106'></a><a href='#L106'>106</a>
|
||||||
|
<a name='L107'></a><a href='#L107'>107</a>
|
||||||
|
<a name='L108'></a><a href='#L108'>108</a>
|
||||||
|
<a name='L109'></a><a href='#L109'>109</a>
|
||||||
|
<a name='L110'></a><a href='#L110'>110</a>
|
||||||
|
<a name='L111'></a><a href='#L111'>111</a>
|
||||||
|
<a name='L112'></a><a href='#L112'>112</a>
|
||||||
|
<a name='L113'></a><a href='#L113'>113</a>
|
||||||
|
<a name='L114'></a><a href='#L114'>114</a>
|
||||||
|
<a name='L115'></a><a href='#L115'>115</a>
|
||||||
|
<a name='L116'></a><a href='#L116'>116</a>
|
||||||
|
<a name='L117'></a><a href='#L117'>117</a>
|
||||||
|
<a name='L118'></a><a href='#L118'>118</a>
|
||||||
|
<a name='L119'></a><a href='#L119'>119</a>
|
||||||
|
<a name='L120'></a><a href='#L120'>120</a>
|
||||||
|
<a name='L121'></a><a href='#L121'>121</a>
|
||||||
|
<a name='L122'></a><a href='#L122'>122</a>
|
||||||
|
<a name='L123'></a><a href='#L123'>123</a>
|
||||||
|
<a name='L124'></a><a href='#L124'>124</a>
|
||||||
|
<a name='L125'></a><a href='#L125'>125</a>
|
||||||
|
<a name='L126'></a><a href='#L126'>126</a>
|
||||||
|
<a name='L127'></a><a href='#L127'>127</a>
|
||||||
|
<a name='L128'></a><a href='#L128'>128</a>
|
||||||
|
<a name='L129'></a><a href='#L129'>129</a>
|
||||||
|
<a name='L130'></a><a href='#L130'>130</a>
|
||||||
|
<a name='L131'></a><a href='#L131'>131</a>
|
||||||
|
<a name='L132'></a><a href='#L132'>132</a>
|
||||||
|
<a name='L133'></a><a href='#L133'>133</a>
|
||||||
|
<a name='L134'></a><a href='#L134'>134</a>
|
||||||
|
<a name='L135'></a><a href='#L135'>135</a>
|
||||||
|
<a name='L136'></a><a href='#L136'>136</a>
|
||||||
|
<a name='L137'></a><a href='#L137'>137</a>
|
||||||
|
<a name='L138'></a><a href='#L138'>138</a>
|
||||||
|
<a name='L139'></a><a href='#L139'>139</a>
|
||||||
|
<a name='L140'></a><a href='#L140'>140</a>
|
||||||
|
<a name='L141'></a><a href='#L141'>141</a>
|
||||||
|
<a name='L142'></a><a href='#L142'>142</a>
|
||||||
|
<a name='L143'></a><a href='#L143'>143</a>
|
||||||
|
<a name='L144'></a><a href='#L144'>144</a>
|
||||||
|
<a name='L145'></a><a href='#L145'>145</a>
|
||||||
|
<a name='L146'></a><a href='#L146'>146</a>
|
||||||
|
<a name='L147'></a><a href='#L147'>147</a>
|
||||||
|
<a name='L148'></a><a href='#L148'>148</a>
|
||||||
|
<a name='L149'></a><a href='#L149'>149</a>
|
||||||
|
<a name='L150'></a><a href='#L150'>150</a>
|
||||||
|
<a name='L151'></a><a href='#L151'>151</a>
|
||||||
|
<a name='L152'></a><a href='#L152'>152</a>
|
||||||
|
<a name='L153'></a><a href='#L153'>153</a>
|
||||||
|
<a name='L154'></a><a href='#L154'>154</a>
|
||||||
|
<a name='L155'></a><a href='#L155'>155</a>
|
||||||
|
<a name='L156'></a><a href='#L156'>156</a>
|
||||||
|
<a name='L157'></a><a href='#L157'>157</a>
|
||||||
|
<a name='L158'></a><a href='#L158'>158</a>
|
||||||
|
<a name='L159'></a><a href='#L159'>159</a>
|
||||||
|
<a name='L160'></a><a href='#L160'>160</a>
|
||||||
|
<a name='L161'></a><a href='#L161'>161</a>
|
||||||
|
<a name='L162'></a><a href='#L162'>162</a>
|
||||||
|
<a name='L163'></a><a href='#L163'>163</a>
|
||||||
|
<a name='L164'></a><a href='#L164'>164</a>
|
||||||
|
<a name='L165'></a><a href='#L165'>165</a>
|
||||||
|
<a name='L166'></a><a href='#L166'>166</a>
|
||||||
|
<a name='L167'></a><a href='#L167'>167</a>
|
||||||
|
<a name='L168'></a><a href='#L168'>168</a>
|
||||||
|
<a name='L169'></a><a href='#L169'>169</a>
|
||||||
|
<a name='L170'></a><a href='#L170'>170</a>
|
||||||
|
<a name='L171'></a><a href='#L171'>171</a>
|
||||||
|
<a name='L172'></a><a href='#L172'>172</a>
|
||||||
|
<a name='L173'></a><a href='#L173'>173</a>
|
||||||
|
<a name='L174'></a><a href='#L174'>174</a>
|
||||||
|
<a name='L175'></a><a href='#L175'>175</a>
|
||||||
|
<a name='L176'></a><a href='#L176'>176</a>
|
||||||
|
<a name='L177'></a><a href='#L177'>177</a>
|
||||||
|
<a name='L178'></a><a href='#L178'>178</a>
|
||||||
|
<a name='L179'></a><a href='#L179'>179</a>
|
||||||
|
<a name='L180'></a><a href='#L180'>180</a>
|
||||||
|
<a name='L181'></a><a href='#L181'>181</a>
|
||||||
|
<a name='L182'></a><a href='#L182'>182</a>
|
||||||
|
<a name='L183'></a><a href='#L183'>183</a>
|
||||||
|
<a name='L184'></a><a href='#L184'>184</a>
|
||||||
|
<a name='L185'></a><a href='#L185'>185</a>
|
||||||
|
<a name='L186'></a><a href='#L186'>186</a>
|
||||||
|
<a name='L187'></a><a href='#L187'>187</a>
|
||||||
|
<a name='L188'></a><a href='#L188'>188</a>
|
||||||
|
<a name='L189'></a><a href='#L189'>189</a>
|
||||||
|
<a name='L190'></a><a href='#L190'>190</a>
|
||||||
|
<a name='L191'></a><a href='#L191'>191</a>
|
||||||
|
<a name='L192'></a><a href='#L192'>192</a>
|
||||||
|
<a name='L193'></a><a href='#L193'>193</a>
|
||||||
|
<a name='L194'></a><a href='#L194'>194</a>
|
||||||
|
<a name='L195'></a><a href='#L195'>195</a>
|
||||||
|
<a name='L196'></a><a href='#L196'>196</a>
|
||||||
|
<a name='L197'></a><a href='#L197'>197</a>
|
||||||
|
<a name='L198'></a><a href='#L198'>198</a>
|
||||||
|
<a name='L199'></a><a href='#L199'>199</a>
|
||||||
|
<a name='L200'></a><a href='#L200'>200</a>
|
||||||
|
<a name='L201'></a><a href='#L201'>201</a>
|
||||||
|
<a name='L202'></a><a href='#L202'>202</a>
|
||||||
|
<a name='L203'></a><a href='#L203'>203</a>
|
||||||
|
<a name='L204'></a><a href='#L204'>204</a>
|
||||||
|
<a name='L205'></a><a href='#L205'>205</a>
|
||||||
|
<a name='L206'></a><a href='#L206'>206</a>
|
||||||
|
<a name='L207'></a><a href='#L207'>207</a>
|
||||||
|
<a name='L208'></a><a href='#L208'>208</a>
|
||||||
|
<a name='L209'></a><a href='#L209'>209</a>
|
||||||
|
<a name='L210'></a><a href='#L210'>210</a>
|
||||||
|
<a name='L211'></a><a href='#L211'>211</a>
|
||||||
|
<a name='L212'></a><a href='#L212'>212</a>
|
||||||
|
<a name='L213'></a><a href='#L213'>213</a>
|
||||||
|
<a name='L214'></a><a href='#L214'>214</a>
|
||||||
|
<a name='L215'></a><a href='#L215'>215</a>
|
||||||
|
<a name='L216'></a><a href='#L216'>216</a>
|
||||||
|
<a name='L217'></a><a href='#L217'>217</a>
|
||||||
|
<a name='L218'></a><a href='#L218'>218</a>
|
||||||
|
<a name='L219'></a><a href='#L219'>219</a>
|
||||||
|
<a name='L220'></a><a href='#L220'>220</a>
|
||||||
|
<a name='L221'></a><a href='#L221'>221</a>
|
||||||
|
<a name='L222'></a><a href='#L222'>222</a>
|
||||||
|
<a name='L223'></a><a href='#L223'>223</a>
|
||||||
|
<a name='L224'></a><a href='#L224'>224</a>
|
||||||
|
<a name='L225'></a><a href='#L225'>225</a>
|
||||||
|
<a name='L226'></a><a href='#L226'>226</a>
|
||||||
|
<a name='L227'></a><a href='#L227'>227</a>
|
||||||
|
<a name='L228'></a><a href='#L228'>228</a>
|
||||||
|
<a name='L229'></a><a href='#L229'>229</a>
|
||||||
|
<a name='L230'></a><a href='#L230'>230</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import React, { useState, useEffect } from 'react'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import {</span>
|
||||||
|
Box,
|
||||||
|
Typography,
|
||||||
|
Paper,
|
||||||
|
IconButton,
|
||||||
|
Button,
|
||||||
|
Dialog,
|
||||||
|
DialogTitle,
|
||||||
|
DialogContent,
|
||||||
|
DialogActions,
|
||||||
|
CircularProgress,
|
||||||
|
Alert,
|
||||||
|
} from '@mui/material'
|
||||||
|
<span class="cstat-no" title="statement not covered" >import {</span>
|
||||||
|
PictureAsPdf,
|
||||||
|
Download,
|
||||||
|
Close,
|
||||||
|
ZoomIn,
|
||||||
|
ZoomOut,
|
||||||
|
NavigateBefore,
|
||||||
|
NavigateNext,
|
||||||
|
} from '@mui/icons-material'
|
||||||
|
import type { Document } from '../types'
|
||||||
|
|
||||||
|
interface FilePreviewProps {
|
||||||
|
document: Document
|
||||||
|
onClose: () => void
|
||||||
|
}
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const FilePreview: React.FC<FilePreviewProps> = ({ document, onClose }) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const [loading, setLoading] = useState(true)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const [error, setError] = useState<string | null>(null)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const [page, setPage] = useState(1)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const [scale, setScale] = useState(1.0)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const [numPages, setNumPages] = useState(0)</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > useEffect(() => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > setLoading(true)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > setError(null)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > setPage(1)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > setScale(1.0)</span>
|
||||||
|
|
||||||
|
// Simuler le chargement du PDF
|
||||||
|
<span class="cstat-no" title="statement not covered" > const timer = setTimeout(() => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > setNumPages(3) // Simuler 3 pages</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > setLoading(false)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }, 1000)</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > return () => clearTimeout(timer)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }, [document])</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const handleDownload = () => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (document.previewUrl) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const link = document.createElement('a')</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > link.href = document.previewUrl</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > link.download = document.name</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > link.click()</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const isPDF = document.type.includes('pdf') || document.name.toLowerCase().endsWith('.pdf')</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (!isPDF) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Paper sx={{ p: 3, mt: 2 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box display="flex" justifyContent="space-between" alignItems="center" mb={2}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6">{document.name}</Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <IconButton onClick={onClose} title="Fermer"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Close /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </IconButton></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="info"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Aperçu non disponible pour ce type de fichier ({document.type})</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Paper></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Dialog open onClose={onClose} maxWidth="lg" fullWidth></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <DialogTitle></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box display="flex" justifyContent="space-between" alignItems="center"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box display="flex" alignItems="center" gap={1}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <PictureAsPdf color="error" /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6">{document.name}</Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <IconButton onClick={onClose} title="Fermer"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Close /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </IconButton></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </DialogTitle></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <DialogContent dividers></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {loading && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box display="flex" justifyContent="center" alignItems="center" minHeight="400px"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CircularProgress /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2" sx={{ ml: 2 }}></span>
|
||||||
|
Chargement du PDF...
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
)}
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > {error && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="error" sx={{ mb: 2 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {error}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
)}
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > {!loading && !error && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box></span>
|
||||||
|
{/* Contrôles de navigation */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box display="flex" justifyContent="space-between" alignItems="center" mb={2}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box display="flex" alignItems="center" gap={1}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Button</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > size="small"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > startIcon={<NavigateBefore />}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > onClick={() => setPage(prev => Math.max(prev - 1, 1))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > disabled={page <= 1}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ></span>
|
||||||
|
Précédent
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Button></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Page {page} sur {numPages}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Button</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > size="small"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > endIcon={<NavigateNext />}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > onClick={() => setPage(prev => Math.min(prev + 1, numPages))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > disabled={page >= numPages}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ></span>
|
||||||
|
Suivant
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Button></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box display="flex" alignItems="center" gap={1}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Button</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > size="small"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > startIcon={<ZoomOut />}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > onClick={() => setScale(prev => Math.max(prev - 0.2, 0.5))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ></span>
|
||||||
|
Zoom -
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Button></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {Math.round(scale * 100)}%</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Button</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > size="small"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > startIcon={<ZoomIn />}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > onClick={() => setScale(prev => Math.min(prev + 0.2, 2.0))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ></span>
|
||||||
|
Zoom +
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Button></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
|
||||||
|
{/* Aperçu PDF avec viewer intégré */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > border: '1px solid',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > borderColor: 'grey.300',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > borderRadius: 1,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > overflow: 'hidden',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > maxHeight: '70vh',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > display: 'flex',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > justifyContent: 'center',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > backgroundColor: 'grey.50'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {document.previewUrl ? (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ width: '100%', height: '600px' }}></span>
|
||||||
|
{/* Utiliser un viewer PDF intégré */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <iframe</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > src={`${document.previewUrl}#toolbar=1&navpanes=1&scrollbar=1&page=1&view=FitH`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > width="100%"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > height="100%"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > style={{</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > border: 'none',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > transform: `scale(${scale})`,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > transformOrigin: 'top left',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > width: `${100 / scale}%`,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > height: `${600 / scale}px`</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > title={`Aperçu de ${document.name}`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > onLoad={() => setLoading(false)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > onError={() => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > setError('Erreur de chargement du PDF')</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > setLoading(false)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
) : (
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box display="flex" justifyContent="center" alignItems="center" minHeight="400px"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box textAlign="center"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <PictureAsPdf sx={{ fontSize: 64, color: 'error.main', mb: 2 }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
Aperçu PDF
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2" color="text.secondary"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Le fichier PDF "{document.name}" a été uploadé avec succès.</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2" color="text.secondary"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Taille: {(document.size / 1024 / 1024).toFixed(2)} MB</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </DialogContent></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <DialogActions></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Button onClick={onClose}></span>
|
||||||
|
Fermer
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Button></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Button</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="contained"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > startIcon={<Download />}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > onClick={handleDownload}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > disabled={!document.previewUrl}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ></span>
|
||||||
|
Télécharger
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Button></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </DialogActions></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Dialog></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" >}</span></pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
@ -3,15 +3,15 @@
|
|||||||
<html lang="en">
|
<html lang="en">
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title>Code coverage report for App.tsx</title>
|
<title>Code coverage report for 4NK_IA_front/src/components/Layout.tsx</title>
|
||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
<link rel="stylesheet" href="prettify.css" />
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
<link rel="stylesheet" href="base.css" />
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
<link rel="shortcut icon" type="image/x-icon" href="favicon.png" />
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<style type='text/css'>
|
<style type='text/css'>
|
||||||
.coverage-summary .sorter {
|
.coverage-summary .sorter {
|
||||||
background-image: url(sort-arrow-sprite.png);
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
@ -19,13 +19,13 @@
|
|||||||
<body>
|
<body>
|
||||||
<div class='wrapper'>
|
<div class='wrapper'>
|
||||||
<div class='pad1'>
|
<div class='pad1'>
|
||||||
<h1><a href="index.html">All files</a> App.tsx</h1>
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/components</a> Layout.tsx</h1>
|
||||||
<div class='clearfix'>
|
<div class='clearfix'>
|
||||||
|
|
||||||
<div class='fl pad1y space-right2'>
|
<div class='fl pad1y space-right2'>
|
||||||
<span class="strong">0% </span>
|
<span class="strong">0% </span>
|
||||||
<span class="quiet">Statements</span>
|
<span class="quiet">Statements</span>
|
||||||
<span class='fraction'>0/27</span>
|
<span class='fraction'>0/26</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
@ -46,7 +46,7 @@
|
|||||||
<div class='fl pad1y space-right2'>
|
<div class='fl pad1y space-right2'>
|
||||||
<span class="strong">0% </span>
|
<span class="strong">0% </span>
|
||||||
<span class="quiet">Lines</span>
|
<span class="quiet">Lines</span>
|
||||||
<span class='fraction'>0/27</span>
|
<span class='fraction'>0/26</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
@ -94,11 +94,21 @@
|
|||||||
<a name='L29'></a><a href='#L29'>29</a>
|
<a name='L29'></a><a href='#L29'>29</a>
|
||||||
<a name='L30'></a><a href='#L30'>30</a>
|
<a name='L30'></a><a href='#L30'>30</a>
|
||||||
<a name='L31'></a><a href='#L31'>31</a>
|
<a name='L31'></a><a href='#L31'>31</a>
|
||||||
<a name='L32'></a><a href='#L32'>32</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
<a name='L32'></a><a href='#L32'>32</a>
|
||||||
|
<a name='L33'></a><a href='#L33'>33</a>
|
||||||
|
<a name='L34'></a><a href='#L34'>34</a>
|
||||||
|
<a name='L35'></a><a href='#L35'>35</a>
|
||||||
|
<a name='L36'></a><a href='#L36'>36</a>
|
||||||
|
<a name='L37'></a><a href='#L37'>37</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-neutral"> </span>
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-neutral"> </span>
|
<span class="cline-any cline-neutral"> </span>
|
||||||
@ -112,12 +122,7 @@
|
|||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-neutral"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
|
||||||
<span class="cline-any cline-no"> </span>
|
|
||||||
<span class="cline-any cline-no"> </span>
|
|
||||||
<span class="cline-any cline-no"> </span>
|
|
||||||
<span class="cline-any cline-no"> </span>
|
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
@ -125,37 +130,47 @@
|
|||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-neutral"> </span>
|
<span class="cline-any cline-neutral"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { useState } from 'react'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cstat-no" title="statement not covered" >import reactLogo from './assets/react.svg'</span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cstat-no" title="statement not covered" >import viteLogo from '/vite.svg'</span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cstat-no" title="statement not covered" >import './App.css'</span>
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import React from 'react'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { AppBar, Toolbar, Typography, Container, Box } from '@mui/material'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { useNavigate, useLocation } from 'react-router-dom'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { NavigationTabs } from './NavigationTabs'</span>
|
||||||
|
|
||||||
<span class="cstat-no" title="statement not covered" >function App() {</span>
|
interface LayoutProps {
|
||||||
<span class="cstat-no" title="statement not covered" > const [count, setCount] = useState(0)</span>
|
children: React.ReactNode
|
||||||
|
}
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const Layout: React.FC<LayoutProps> = ({ children }) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const navigate = useNavigate()</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const location = useLocation()</span>
|
||||||
|
|
||||||
<span class="cstat-no" title="statement not covered" > return (</span>
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
<span class="cstat-no" title="statement not covered" > <></span>
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ flexGrow: 1 }}></span>
|
||||||
<span class="cstat-no" title="statement not covered" > <div></span>
|
<span class="cstat-no" title="statement not covered" > <AppBar position="static"></span>
|
||||||
<span class="cstat-no" title="statement not covered" > <a href="https://vite.dev" target="_blank"></span>
|
<span class="cstat-no" title="statement not covered" > <Toolbar></span>
|
||||||
<span class="cstat-no" title="statement not covered" > <img src={viteLogo} className="logo" alt="Vite logo" /></span>
|
<span class="cstat-no" title="statement not covered" > <Typography</span>
|
||||||
<span class="cstat-no" title="statement not covered" > </a></span>
|
<span class="cstat-no" title="statement not covered" > variant="h6"</span>
|
||||||
<span class="cstat-no" title="statement not covered" > <a href="https://react.dev" target="_blank"></span>
|
<span class="cstat-no" title="statement not covered" > component="div"</span>
|
||||||
<span class="cstat-no" title="statement not covered" > <img src={reactLogo} className="logo react" alt="React logo" /></span>
|
<span class="cstat-no" title="statement not covered" > sx={{ flexGrow: 1, cursor: 'pointer' }}</span>
|
||||||
<span class="cstat-no" title="statement not covered" > </a></span>
|
<span class="cstat-no" title="statement not covered" > onClick={() => navigate('/')}</span>
|
||||||
<span class="cstat-no" title="statement not covered" > </div></span>
|
<span class="cstat-no" title="statement not covered" > ></span>
|
||||||
<span class="cstat-no" title="statement not covered" > <h1>Vite + React</h1></span>
|
4NK IA - Front Notarial
|
||||||
<span class="cstat-no" title="statement not covered" > <div className="card"></span>
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
<span class="cstat-no" title="statement not covered" > <button onClick={() => setCount((count) => count + 1)}>count is {count}</button></span>
|
<span class="cstat-no" title="statement not covered" > </Toolbar></span>
|
||||||
<span class="cstat-no" title="statement not covered" > <p></span>
|
<span class="cstat-no" title="statement not covered" > </AppBar></span>
|
||||||
<span class="cstat-no" title="statement not covered" > Edit <code>src/App.tsx</code> and save to test HMR</span>
|
|
||||||
<span class="cstat-no" title="statement not covered" > </p></span>
|
<span class="cstat-no" title="statement not covered" > <NavigationTabs currentPath={location.pathname} /></span>
|
||||||
<span class="cstat-no" title="statement not covered" > </div></span>
|
|
||||||
<span class="cstat-no" title="statement not covered" > <p className="read-the-docs">Click on the Vite and React logos to learn more</p></span>
|
<span class="cstat-no" title="statement not covered" > <Container maxWidth="xl" sx={{ mt: 3, mb: 3 }}></span>
|
||||||
<span class="cstat-no" title="statement not covered" > </></span>
|
<span class="cstat-no" title="statement not covered" > {children}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Container></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
)
|
)
|
||||||
<span class="cstat-no" title="statement not covered" >}</span>
|
<span class="cstat-no" title="statement not covered" >}</span>
|
||||||
|
|
||||||
<span class="cstat-no" title="statement not covered" >export default App</span>
|
|
||||||
</pre></td></tr></table></pre>
|
</pre></td></tr></table></pre>
|
||||||
|
|
||||||
<div class='push'></div><!-- for sticky footer -->
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
@ -163,16 +178,16 @@
|
|||||||
<div class='footer quiet pad2 space-top1 center small'>
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
Code coverage generated by
|
Code coverage generated by
|
||||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
at 2025-09-10T15:15:07.789Z
|
at 2025-09-11T09:40:00.754Z
|
||||||
</div>
|
</div>
|
||||||
<script src="prettify.js"></script>
|
<script src="../../../prettify.js"></script>
|
||||||
<script>
|
<script>
|
||||||
window.onload = function () {
|
window.onload = function () {
|
||||||
prettyPrint();
|
prettyPrint();
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<script src="sorter.js"></script>
|
<script src="../../../sorter.js"></script>
|
||||||
<script src="block-navigation.js"></script>
|
<script src="../../../block-navigation.js"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
||||||
208
coverage/4NK_IA_front/src/components/NavigationTabs.tsx.html
Normal file
208
coverage/4NK_IA_front/src/components/NavigationTabs.tsx.html
Normal file
@ -0,0 +1,208 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/components/NavigationTabs.tsx</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/components</a> NavigationTabs.tsx</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/30</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/30</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a>
|
||||||
|
<a name='L22'></a><a href='#L22'>22</a>
|
||||||
|
<a name='L23'></a><a href='#L23'>23</a>
|
||||||
|
<a name='L24'></a><a href='#L24'>24</a>
|
||||||
|
<a name='L25'></a><a href='#L25'>25</a>
|
||||||
|
<a name='L26'></a><a href='#L26'>26</a>
|
||||||
|
<a name='L27'></a><a href='#L27'>27</a>
|
||||||
|
<a name='L28'></a><a href='#L28'>28</a>
|
||||||
|
<a name='L29'></a><a href='#L29'>29</a>
|
||||||
|
<a name='L30'></a><a href='#L30'>30</a>
|
||||||
|
<a name='L31'></a><a href='#L31'>31</a>
|
||||||
|
<a name='L32'></a><a href='#L32'>32</a>
|
||||||
|
<a name='L33'></a><a href='#L33'>33</a>
|
||||||
|
<a name='L34'></a><a href='#L34'>34</a>
|
||||||
|
<a name='L35'></a><a href='#L35'>35</a>
|
||||||
|
<a name='L36'></a><a href='#L36'>36</a>
|
||||||
|
<a name='L37'></a><a href='#L37'>37</a>
|
||||||
|
<a name='L38'></a><a href='#L38'>38</a>
|
||||||
|
<a name='L39'></a><a href='#L39'>39</a>
|
||||||
|
<a name='L40'></a><a href='#L40'>40</a>
|
||||||
|
<a name='L41'></a><a href='#L41'>41</a>
|
||||||
|
<a name='L42'></a><a href='#L42'>42</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import React from 'react'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { Tabs, Tab, Box } from '@mui/material'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { useNavigate } from 'react-router-dom'</span>
|
||||||
|
|
||||||
|
interface NavigationTabsProps {
|
||||||
|
currentPath: string
|
||||||
|
}
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const NavigationTabs: React.FC<NavigationTabsProps> = ({ currentPath }) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const navigate = useNavigate()</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const tabs = [</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > { label: 'Téléversement', path: '/' },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > { label: 'Extraction', path: '/extraction' },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > { label: 'Analyse', path: '/analyse' },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > { label: 'Contexte', path: '/contexte' },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > { label: 'Conseil', path: '/conseil' },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ]</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const currentTabIndex = tabs.findIndex(tab => tab.path === currentPath)</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const handleTabChange = (_event: React.SyntheticEvent, newValue: number) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > navigate(tabs[newValue].path)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ borderBottom: 1, borderColor: 'divider' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Tabs</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > value={currentTabIndex >= 0 ? currentTabIndex : 0}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > onChange={handleTabChange}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > aria-label="navigation tabs"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="scrollable"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > scrollButtons="auto"</span>
|
||||||
|
>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {tabs.map((tab, index) => (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Tab key={index} label={tab.label} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Tabs></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" >}</span>
|
||||||
|
</pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
146
coverage/4NK_IA_front/src/components/index.html
Normal file
146
coverage/4NK_IA_front/src/components/index.html
Normal file
@ -0,0 +1,146 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/components</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> 4NK_IA_front/src/components</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/227</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/3</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/3</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/227</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<div class="pad1">
|
||||||
|
<table class="coverage-summary">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
||||||
|
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
||||||
|
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
||||||
|
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
||||||
|
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
||||||
|
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
||||||
|
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody><tr>
|
||||||
|
<td class="file low" data-value="FilePreview.tsx"><a href="FilePreview.tsx.html">FilePreview.tsx</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="171" class="abs low">0/171</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="171" class="abs low">0/171</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="Layout.tsx"><a href="Layout.tsx.html">Layout.tsx</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="26" class="abs low">0/26</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="26" class="abs low">0/26</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="NavigationTabs.tsx"><a href="NavigationTabs.tsx.html">NavigationTabs.tsx</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="30" class="abs low">0/30</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="30" class="abs low">0/30</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
131
coverage/4NK_IA_front/src/index.html
Normal file
131
coverage/4NK_IA_front/src/index.html
Normal file
@ -0,0 +1,131 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../index.html">All files</a> 4NK_IA_front/src</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/24</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/2</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/2</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/24</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<div class="pad1">
|
||||||
|
<table class="coverage-summary">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
||||||
|
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
||||||
|
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
||||||
|
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
||||||
|
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
||||||
|
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
||||||
|
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody><tr>
|
||||||
|
<td class="file low" data-value="App.tsx"><a href="App.tsx.html">App.tsx</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="5" class="abs low">0/5</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="5" class="abs low">0/5</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="main.tsx"><a href="main.tsx.html">main.tsx</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="19" class="abs low">0/19</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="19" class="abs low">0/19</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../sorter.js"></script>
|
||||||
|
<script src="../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
@ -3,15 +3,15 @@
|
|||||||
<html lang="en">
|
<html lang="en">
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title>Code coverage report for main.tsx</title>
|
<title>Code coverage report for 4NK_IA_front/src/main.tsx</title>
|
||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
<link rel="stylesheet" href="prettify.css" />
|
<link rel="stylesheet" href="../../prettify.css" />
|
||||||
<link rel="stylesheet" href="base.css" />
|
<link rel="stylesheet" href="../../base.css" />
|
||||||
<link rel="shortcut icon" type="image/x-icon" href="favicon.png" />
|
<link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<style type='text/css'>
|
<style type='text/css'>
|
||||||
.coverage-summary .sorter {
|
.coverage-summary .sorter {
|
||||||
background-image: url(sort-arrow-sprite.png);
|
background-image: url(../../sort-arrow-sprite.png);
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
@ -19,13 +19,13 @@
|
|||||||
<body>
|
<body>
|
||||||
<div class='wrapper'>
|
<div class='wrapper'>
|
||||||
<div class='pad1'>
|
<div class='pad1'>
|
||||||
<h1><a href="index.html">All files</a> main.tsx</h1>
|
<h1><a href="../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src</a> main.tsx</h1>
|
||||||
<div class='clearfix'>
|
<div class='clearfix'>
|
||||||
|
|
||||||
<div class='fl pad1y space-right2'>
|
<div class='fl pad1y space-right2'>
|
||||||
<span class="strong">0% </span>
|
<span class="strong">0% </span>
|
||||||
<span class="quiet">Statements</span>
|
<span class="quiet">Statements</span>
|
||||||
<span class='fraction'>0/9</span>
|
<span class='fraction'>0/19</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
@ -46,7 +46,7 @@
|
|||||||
<div class='fl pad1y space-right2'>
|
<div class='fl pad1y space-right2'>
|
||||||
<span class="strong">0% </span>
|
<span class="strong">0% </span>
|
||||||
<span class="quiet">Lines</span>
|
<span class="quiet">Lines</span>
|
||||||
<span class='fraction'>0/9</span>
|
<span class='fraction'>0/19</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
@ -73,7 +73,22 @@
|
|||||||
<a name='L8'></a><a href='#L8'>8</a>
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
<a name='L9'></a><a href='#L9'>9</a>
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
<a name='L10'></a><a href='#L10'>10</a>
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
<a name='L11'></a><a href='#L11'>11</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
@ -83,14 +98,29 @@
|
|||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-no"> </span>
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { StrictMode } from 'react'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { StrictMode } from 'react'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
<span class="cstat-no" title="statement not covered" >import { createRoot } from 'react-dom/client'</span>
|
<span class="cstat-no" title="statement not covered" >import { createRoot } from 'react-dom/client'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { Provider } from 'react-redux'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { ThemeProvider } from '@mui/material/styles'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { CssBaseline } from '@mui/material'</span>
|
||||||
<span class="cstat-no" title="statement not covered" >import './index.css'</span>
|
<span class="cstat-no" title="statement not covered" >import './index.css'</span>
|
||||||
<span class="cstat-no" title="statement not covered" >import App from './App.tsx'</span>
|
<span class="cstat-no" title="statement not covered" >import App from './App.tsx'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { store } from './store'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { theme } from './theme'</span>
|
||||||
|
|
||||||
<span class="cstat-no" title="statement not covered" >createRoot(document.getElementById('root')!).render(</span>
|
<span class="cstat-no" title="statement not covered" >createRoot(document.getElementById('root')!).render(</span>
|
||||||
<span class="cstat-no" title="statement not covered" > <StrictMode></span>
|
<span class="cstat-no" title="statement not covered" > <StrictMode></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Provider store={store}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ThemeProvider theme={theme}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CssBaseline /></span>
|
||||||
<span class="cstat-no" title="statement not covered" > <App /></span>
|
<span class="cstat-no" title="statement not covered" > <App /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ThemeProvider></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Provider></span>
|
||||||
<span class="cstat-no" title="statement not covered" > </StrictMode>,</span>
|
<span class="cstat-no" title="statement not covered" > </StrictMode>,</span>
|
||||||
<span class="cstat-no" title="statement not covered" >)</span>
|
<span class="cstat-no" title="statement not covered" >)</span>
|
||||||
</pre></td></tr></table></pre>
|
</pre></td></tr></table></pre>
|
||||||
@ -100,16 +130,16 @@
|
|||||||
<div class='footer quiet pad2 space-top1 center small'>
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
Code coverage generated by
|
Code coverage generated by
|
||||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
at 2025-09-10T15:15:07.789Z
|
at 2025-09-11T09:40:00.754Z
|
||||||
</div>
|
</div>
|
||||||
<script src="prettify.js"></script>
|
<script src="../../prettify.js"></script>
|
||||||
<script>
|
<script>
|
||||||
window.onload = function () {
|
window.onload = function () {
|
||||||
prettyPrint();
|
prettyPrint();
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<script src="sorter.js"></script>
|
<script src="../../sorter.js"></script>
|
||||||
<script src="block-navigation.js"></script>
|
<script src="../../block-navigation.js"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
||||||
116
coverage/4NK_IA_front/src/router/index.html
Normal file
116
coverage/4NK_IA_front/src/router/index.html
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/router</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> 4NK_IA_front/src/router</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/23</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/23</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<div class="pad1">
|
||||||
|
<table class="coverage-summary">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
||||||
|
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
||||||
|
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
||||||
|
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
||||||
|
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
||||||
|
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
||||||
|
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody><tr>
|
||||||
|
<td class="file low" data-value="index.tsx"><a href="index.tsx.html">index.tsx</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="23" class="abs low">0/23</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="23" class="abs low">0/23</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
169
coverage/4NK_IA_front/src/router/index.tsx.html
Normal file
169
coverage/4NK_IA_front/src/router/index.tsx.html
Normal file
@ -0,0 +1,169 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/router/index.tsx</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/router</a> index.tsx</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/23</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/23</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a>
|
||||||
|
<a name='L22'></a><a href='#L22'>22</a>
|
||||||
|
<a name='L23'></a><a href='#L23'>23</a>
|
||||||
|
<a name='L24'></a><a href='#L24'>24</a>
|
||||||
|
<a name='L25'></a><a href='#L25'>25</a>
|
||||||
|
<a name='L26'></a><a href='#L26'>26</a>
|
||||||
|
<a name='L27'></a><a href='#L27'>27</a>
|
||||||
|
<a name='L28'></a><a href='#L28'>28</a>
|
||||||
|
<a name='L29'></a><a href='#L29'>29</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { lazy, Suspense } from 'react'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { createBrowserRouter, RouterProvider } from 'react-router-dom'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { Box, CircularProgress, Typography } from '@mui/material'</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >const UploadView = lazy(() => import('../views/UploadView'))</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >const ExtractionView = lazy(() => import('../views/ExtractionView'))</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >const AnalyseView = lazy(() => import('../views/AnalyseView'))</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >const ContexteView = lazy(() => import('../views/ContexteView'))</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >const ConseilView = lazy(() => import('../views/ConseilView'))</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >const LoadingFallback = () => (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', justifyContent: 'center', alignItems: 'center', minHeight: '50vh' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CircularProgress /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography sx={{ ml: 2 }}>Chargement...</Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
)
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >const router = createBrowserRouter([</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > { path: '/', element: <Suspense fallback={<LoadingFallback />}><UploadView /></Suspense> },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > { path: '/extraction', element: <Suspense fallback={<LoadingFallback />}><ExtractionView /></Suspense> },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > { path: '/analyse', element: <Suspense fallback={<LoadingFallback />}><AnalyseView /></Suspense> },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > { path: '/contexte', element: <Suspense fallback={<LoadingFallback />}><ContexteView /></Suspense> },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > { path: '/conseil', element: <Suspense fallback={<LoadingFallback />}><ConseilView /></Suspense> },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >])</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const AppRouter = () => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return <RouterProvider router={router} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >}</span>
|
||||||
|
</pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
1018
coverage/4NK_IA_front/src/services/api.ts.html
Normal file
1018
coverage/4NK_IA_front/src/services/api.ts.html
Normal file
File diff suppressed because it is too large
Load Diff
116
coverage/4NK_IA_front/src/services/index.html
Normal file
116
coverage/4NK_IA_front/src/services/index.html
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/services</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> 4NK_IA_front/src/services</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/266</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/266</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<div class="pad1">
|
||||||
|
<table class="coverage-summary">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
||||||
|
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
||||||
|
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
||||||
|
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
||||||
|
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
||||||
|
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
||||||
|
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody><tr>
|
||||||
|
<td class="file low" data-value="api.ts"><a href="api.ts.html">api.ts</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="266" class="abs low">0/266</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="266" class="abs low">0/266</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
136
coverage/4NK_IA_front/src/store/appSlice.ts.html
Normal file
136
coverage/4NK_IA_front/src/store/appSlice.ts.html
Normal file
@ -0,0 +1,136 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/store/appSlice.ts</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/store</a> appSlice.ts</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/10</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/10</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { createSlice } from '@reduxjs/toolkit'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
|
||||||
|
export type AppState = {
|
||||||
|
initialized: boolean
|
||||||
|
}
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >const initialState: AppState = {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > initialized: true,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >}</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >const appSlice = createSlice({</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > name: 'app',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > initialState,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > reducers: {},</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >})</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const appReducer = appSlice.reducer</span>
|
||||||
|
</pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
409
coverage/4NK_IA_front/src/store/documentSlice.ts.html
Normal file
409
coverage/4NK_IA_front/src/store/documentSlice.ts.html
Normal file
@ -0,0 +1,409 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/store/documentSlice.ts</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/store</a> documentSlice.ts</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/87</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/87</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a>
|
||||||
|
<a name='L22'></a><a href='#L22'>22</a>
|
||||||
|
<a name='L23'></a><a href='#L23'>23</a>
|
||||||
|
<a name='L24'></a><a href='#L24'>24</a>
|
||||||
|
<a name='L25'></a><a href='#L25'>25</a>
|
||||||
|
<a name='L26'></a><a href='#L26'>26</a>
|
||||||
|
<a name='L27'></a><a href='#L27'>27</a>
|
||||||
|
<a name='L28'></a><a href='#L28'>28</a>
|
||||||
|
<a name='L29'></a><a href='#L29'>29</a>
|
||||||
|
<a name='L30'></a><a href='#L30'>30</a>
|
||||||
|
<a name='L31'></a><a href='#L31'>31</a>
|
||||||
|
<a name='L32'></a><a href='#L32'>32</a>
|
||||||
|
<a name='L33'></a><a href='#L33'>33</a>
|
||||||
|
<a name='L34'></a><a href='#L34'>34</a>
|
||||||
|
<a name='L35'></a><a href='#L35'>35</a>
|
||||||
|
<a name='L36'></a><a href='#L36'>36</a>
|
||||||
|
<a name='L37'></a><a href='#L37'>37</a>
|
||||||
|
<a name='L38'></a><a href='#L38'>38</a>
|
||||||
|
<a name='L39'></a><a href='#L39'>39</a>
|
||||||
|
<a name='L40'></a><a href='#L40'>40</a>
|
||||||
|
<a name='L41'></a><a href='#L41'>41</a>
|
||||||
|
<a name='L42'></a><a href='#L42'>42</a>
|
||||||
|
<a name='L43'></a><a href='#L43'>43</a>
|
||||||
|
<a name='L44'></a><a href='#L44'>44</a>
|
||||||
|
<a name='L45'></a><a href='#L45'>45</a>
|
||||||
|
<a name='L46'></a><a href='#L46'>46</a>
|
||||||
|
<a name='L47'></a><a href='#L47'>47</a>
|
||||||
|
<a name='L48'></a><a href='#L48'>48</a>
|
||||||
|
<a name='L49'></a><a href='#L49'>49</a>
|
||||||
|
<a name='L50'></a><a href='#L50'>50</a>
|
||||||
|
<a name='L51'></a><a href='#L51'>51</a>
|
||||||
|
<a name='L52'></a><a href='#L52'>52</a>
|
||||||
|
<a name='L53'></a><a href='#L53'>53</a>
|
||||||
|
<a name='L54'></a><a href='#L54'>54</a>
|
||||||
|
<a name='L55'></a><a href='#L55'>55</a>
|
||||||
|
<a name='L56'></a><a href='#L56'>56</a>
|
||||||
|
<a name='L57'></a><a href='#L57'>57</a>
|
||||||
|
<a name='L58'></a><a href='#L58'>58</a>
|
||||||
|
<a name='L59'></a><a href='#L59'>59</a>
|
||||||
|
<a name='L60'></a><a href='#L60'>60</a>
|
||||||
|
<a name='L61'></a><a href='#L61'>61</a>
|
||||||
|
<a name='L62'></a><a href='#L62'>62</a>
|
||||||
|
<a name='L63'></a><a href='#L63'>63</a>
|
||||||
|
<a name='L64'></a><a href='#L64'>64</a>
|
||||||
|
<a name='L65'></a><a href='#L65'>65</a>
|
||||||
|
<a name='L66'></a><a href='#L66'>66</a>
|
||||||
|
<a name='L67'></a><a href='#L67'>67</a>
|
||||||
|
<a name='L68'></a><a href='#L68'>68</a>
|
||||||
|
<a name='L69'></a><a href='#L69'>69</a>
|
||||||
|
<a name='L70'></a><a href='#L70'>70</a>
|
||||||
|
<a name='L71'></a><a href='#L71'>71</a>
|
||||||
|
<a name='L72'></a><a href='#L72'>72</a>
|
||||||
|
<a name='L73'></a><a href='#L73'>73</a>
|
||||||
|
<a name='L74'></a><a href='#L74'>74</a>
|
||||||
|
<a name='L75'></a><a href='#L75'>75</a>
|
||||||
|
<a name='L76'></a><a href='#L76'>76</a>
|
||||||
|
<a name='L77'></a><a href='#L77'>77</a>
|
||||||
|
<a name='L78'></a><a href='#L78'>78</a>
|
||||||
|
<a name='L79'></a><a href='#L79'>79</a>
|
||||||
|
<a name='L80'></a><a href='#L80'>80</a>
|
||||||
|
<a name='L81'></a><a href='#L81'>81</a>
|
||||||
|
<a name='L82'></a><a href='#L82'>82</a>
|
||||||
|
<a name='L83'></a><a href='#L83'>83</a>
|
||||||
|
<a name='L84'></a><a href='#L84'>84</a>
|
||||||
|
<a name='L85'></a><a href='#L85'>85</a>
|
||||||
|
<a name='L86'></a><a href='#L86'>86</a>
|
||||||
|
<a name='L87'></a><a href='#L87'>87</a>
|
||||||
|
<a name='L88'></a><a href='#L88'>88</a>
|
||||||
|
<a name='L89'></a><a href='#L89'>89</a>
|
||||||
|
<a name='L90'></a><a href='#L90'>90</a>
|
||||||
|
<a name='L91'></a><a href='#L91'>91</a>
|
||||||
|
<a name='L92'></a><a href='#L92'>92</a>
|
||||||
|
<a name='L93'></a><a href='#L93'>93</a>
|
||||||
|
<a name='L94'></a><a href='#L94'>94</a>
|
||||||
|
<a name='L95'></a><a href='#L95'>95</a>
|
||||||
|
<a name='L96'></a><a href='#L96'>96</a>
|
||||||
|
<a name='L97'></a><a href='#L97'>97</a>
|
||||||
|
<a name='L98'></a><a href='#L98'>98</a>
|
||||||
|
<a name='L99'></a><a href='#L99'>99</a>
|
||||||
|
<a name='L100'></a><a href='#L100'>100</a>
|
||||||
|
<a name='L101'></a><a href='#L101'>101</a>
|
||||||
|
<a name='L102'></a><a href='#L102'>102</a>
|
||||||
|
<a name='L103'></a><a href='#L103'>103</a>
|
||||||
|
<a name='L104'></a><a href='#L104'>104</a>
|
||||||
|
<a name='L105'></a><a href='#L105'>105</a>
|
||||||
|
<a name='L106'></a><a href='#L106'>106</a>
|
||||||
|
<a name='L107'></a><a href='#L107'>107</a>
|
||||||
|
<a name='L108'></a><a href='#L108'>108</a>
|
||||||
|
<a name='L109'></a><a href='#L109'>109</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { createSlice, createAsyncThunk } from '@reduxjs/toolkit'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
import type { PayloadAction } from '@reduxjs/toolkit'
|
||||||
|
import type { Document, ExtractionResult, AnalysisResult, ContextResult, ConseilResult } from '../types'
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { documentApi } from '../services/api'</span>
|
||||||
|
|
||||||
|
interface DocumentState {
|
||||||
|
documents: Document[]
|
||||||
|
currentDocument: Document | null
|
||||||
|
extractionResult: ExtractionResult | null
|
||||||
|
analysisResult: AnalysisResult | null
|
||||||
|
contextResult: ContextResult | null
|
||||||
|
conseilResult: ConseilResult | null
|
||||||
|
loading: boolean
|
||||||
|
error: string | null
|
||||||
|
}
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >const initialState: DocumentState = {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > documents: [],</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > currentDocument: null,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > extractionResult: null,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > analysisResult: null,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > contextResult: null,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > conseilResult: null,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > loading: false,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > error: null,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >}</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const uploadDocument = createAsyncThunk(</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > 'document/upload',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > async (file: File) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return await documentApi.upload(file)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >)</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const extractDocument = createAsyncThunk(</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > 'document/extract',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > async (documentId: string) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return await documentApi.extract(documentId)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >)</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const analyzeDocument = createAsyncThunk(</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > 'document/analyze',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > async (documentId: string) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return await documentApi.analyze(documentId)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >)</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const getContextData = createAsyncThunk(</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > 'document/context',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > async (documentId: string) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return await documentApi.getContext(documentId)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >)</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const getConseil = createAsyncThunk(</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > 'document/conseil',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > async (documentId: string) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return await documentApi.getConseil(documentId)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >)</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >const documentSlice = createSlice({</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > name: 'document',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > initialState,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > reducers: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > setCurrentDocument: (state, action: PayloadAction<Document | null>) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.currentDocument = action.payload</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > clearResults: (state) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.extractionResult = null</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.analysisResult = null</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.contextResult = null</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.conseilResult = null</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > extraReducers: (builder) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > builder</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > .addCase(uploadDocument.pending, (state) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.loading = true</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.error = null</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > })</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > .addCase(uploadDocument.fulfilled, (state, action) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.loading = false</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.documents.push(action.payload)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.currentDocument = action.payload</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > })</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > .addCase(uploadDocument.rejected, (state, action) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.loading = false</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.error = action.error.message || 'Erreur lors du téléversement'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > })</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > .addCase(extractDocument.fulfilled, (state, action) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.extractionResult = action.payload</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > })</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > .addCase(analyzeDocument.fulfilled, (state, action) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.analysisResult = action.payload</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > })</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > .addCase(getContextData.fulfilled, (state, action) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.contextResult = action.payload</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > })</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > .addCase(getConseil.fulfilled, (state, action) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > state.conseilResult = action.payload</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > })</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >})</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const { setCurrentDocument, clearResults } = documentSlice.actions</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const documentReducer = documentSlice.reducer</span>
|
||||||
|
</pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
146
coverage/4NK_IA_front/src/store/index.html
Normal file
146
coverage/4NK_IA_front/src/store/index.html
Normal file
@ -0,0 +1,146 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/store</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> 4NK_IA_front/src/store</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/114</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/3</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/3</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/114</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<div class="pad1">
|
||||||
|
<table class="coverage-summary">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
||||||
|
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
||||||
|
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
||||||
|
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
||||||
|
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
||||||
|
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
||||||
|
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody><tr>
|
||||||
|
<td class="file low" data-value="appSlice.ts"><a href="appSlice.ts.html">appSlice.ts</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="10" class="abs low">0/10</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="10" class="abs low">0/10</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="documentSlice.ts"><a href="documentSlice.ts.html">documentSlice.ts</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="87" class="abs low">0/87</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="87" class="abs low">0/87</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="index.ts"><a href="index.ts.html">index.ts</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="17" class="abs low">0/17</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="17" class="abs low">0/17</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
154
coverage/4NK_IA_front/src/store/index.ts.html
Normal file
154
coverage/4NK_IA_front/src/store/index.ts.html
Normal file
@ -0,0 +1,154 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/store/index.ts</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/store</a> index.ts</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/17</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/17</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a>
|
||||||
|
<a name='L22'></a><a href='#L22'>22</a>
|
||||||
|
<a name='L23'></a><a href='#L23'>23</a>
|
||||||
|
<a name='L24'></a><a href='#L24'>24</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { configureStore } from '@reduxjs/toolkit'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { useDispatch, useSelector } from 'react-redux'</span>
|
||||||
|
import type { TypedUseSelectorHook } from 'react-redux'
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { appReducer } from './appSlice'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { documentReducer } from './documentSlice'</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const store = configureStore({</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > reducer: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > app: appReducer,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > document: documentReducer,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > middleware: (getDefaultMiddleware) => getDefaultMiddleware({</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > serializableCheck: false,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > immutableCheck: true,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }),</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > devTools: true,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >})</span>
|
||||||
|
|
||||||
|
export type RootState = ReturnType<typeof store.getState>
|
||||||
|
export type AppDispatch = typeof store.dispatch
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const useAppDispatch: () => AppDispatch = useDispatch</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const useAppSelector: TypedUseSelectorHook<RootState> = useSelector</span>
|
||||||
|
</pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
116
coverage/4NK_IA_front/src/theme/index.html
Normal file
116
coverage/4NK_IA_front/src/theme/index.html
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/theme</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> 4NK_IA_front/src/theme</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/64</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/64</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<div class="pad1">
|
||||||
|
<table class="coverage-summary">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
||||||
|
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
||||||
|
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
||||||
|
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
||||||
|
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
||||||
|
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
||||||
|
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody><tr>
|
||||||
|
<td class="file low" data-value="index.ts"><a href="index.ts.html">index.ts</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="64" class="abs low">0/64</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="64" class="abs low">0/64</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
280
coverage/4NK_IA_front/src/theme/index.ts.html
Normal file
280
coverage/4NK_IA_front/src/theme/index.ts.html
Normal file
@ -0,0 +1,280 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/theme/index.ts</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/theme</a> index.ts</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/64</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/64</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a>
|
||||||
|
<a name='L22'></a><a href='#L22'>22</a>
|
||||||
|
<a name='L23'></a><a href='#L23'>23</a>
|
||||||
|
<a name='L24'></a><a href='#L24'>24</a>
|
||||||
|
<a name='L25'></a><a href='#L25'>25</a>
|
||||||
|
<a name='L26'></a><a href='#L26'>26</a>
|
||||||
|
<a name='L27'></a><a href='#L27'>27</a>
|
||||||
|
<a name='L28'></a><a href='#L28'>28</a>
|
||||||
|
<a name='L29'></a><a href='#L29'>29</a>
|
||||||
|
<a name='L30'></a><a href='#L30'>30</a>
|
||||||
|
<a name='L31'></a><a href='#L31'>31</a>
|
||||||
|
<a name='L32'></a><a href='#L32'>32</a>
|
||||||
|
<a name='L33'></a><a href='#L33'>33</a>
|
||||||
|
<a name='L34'></a><a href='#L34'>34</a>
|
||||||
|
<a name='L35'></a><a href='#L35'>35</a>
|
||||||
|
<a name='L36'></a><a href='#L36'>36</a>
|
||||||
|
<a name='L37'></a><a href='#L37'>37</a>
|
||||||
|
<a name='L38'></a><a href='#L38'>38</a>
|
||||||
|
<a name='L39'></a><a href='#L39'>39</a>
|
||||||
|
<a name='L40'></a><a href='#L40'>40</a>
|
||||||
|
<a name='L41'></a><a href='#L41'>41</a>
|
||||||
|
<a name='L42'></a><a href='#L42'>42</a>
|
||||||
|
<a name='L43'></a><a href='#L43'>43</a>
|
||||||
|
<a name='L44'></a><a href='#L44'>44</a>
|
||||||
|
<a name='L45'></a><a href='#L45'>45</a>
|
||||||
|
<a name='L46'></a><a href='#L46'>46</a>
|
||||||
|
<a name='L47'></a><a href='#L47'>47</a>
|
||||||
|
<a name='L48'></a><a href='#L48'>48</a>
|
||||||
|
<a name='L49'></a><a href='#L49'>49</a>
|
||||||
|
<a name='L50'></a><a href='#L50'>50</a>
|
||||||
|
<a name='L51'></a><a href='#L51'>51</a>
|
||||||
|
<a name='L52'></a><a href='#L52'>52</a>
|
||||||
|
<a name='L53'></a><a href='#L53'>53</a>
|
||||||
|
<a name='L54'></a><a href='#L54'>54</a>
|
||||||
|
<a name='L55'></a><a href='#L55'>55</a>
|
||||||
|
<a name='L56'></a><a href='#L56'>56</a>
|
||||||
|
<a name='L57'></a><a href='#L57'>57</a>
|
||||||
|
<a name='L58'></a><a href='#L58'>58</a>
|
||||||
|
<a name='L59'></a><a href='#L59'>59</a>
|
||||||
|
<a name='L60'></a><a href='#L60'>60</a>
|
||||||
|
<a name='L61'></a><a href='#L61'>61</a>
|
||||||
|
<a name='L62'></a><a href='#L62'>62</a>
|
||||||
|
<a name='L63'></a><a href='#L63'>63</a>
|
||||||
|
<a name='L64'></a><a href='#L64'>64</a>
|
||||||
|
<a name='L65'></a><a href='#L65'>65</a>
|
||||||
|
<a name='L66'></a><a href='#L66'>66</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { createTheme } from '@mui/material/styles'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export const theme = createTheme({</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > palette: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > mode: 'light',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > background: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > default: '#ffffff',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > paper: '#ffffff',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > primary: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > main: '#1976d2',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > light: '#42a5f5',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > dark: '#1565c0',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > secondary: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > main: '#dc004e',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > light: '#ff5983',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > dark: '#9a0036',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > error: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > main: '#f44336',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > warning: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > main: '#ff9800',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > info: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > main: '#2196f3',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > success: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > main: '#4caf50',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > typography: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > fontFamily: '"Roboto", "Helvetica", "Arial", sans-serif',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > h4: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > fontWeight: 600,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > h6: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > fontWeight: 500,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > components: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > MuiCssBaseline: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > styleOverrides: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > body: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > backgroundColor: '#ffffff',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > MuiAppBar: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > styleOverrides: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > root: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > backgroundColor: '#1976d2',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > MuiPaper: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > styleOverrides: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > root: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > backgroundColor: '#ffffff',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >})</span>
|
||||||
|
</pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
116
coverage/4NK_IA_front/src/types/index.html
Normal file
116
coverage/4NK_IA_front/src/types/index.html
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/types</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> 4NK_IA_front/src/types</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/0</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>1/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>1/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/0</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<div class="pad1">
|
||||||
|
<table class="coverage-summary">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
||||||
|
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
||||||
|
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
||||||
|
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
||||||
|
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
||||||
|
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
||||||
|
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody><tr>
|
||||||
|
<td class="file empty" data-value="index.ts"><a href="index.ts.html">index.ts</a></td>
|
||||||
|
<td data-value="0" class="pic empty">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct empty">0%</td>
|
||||||
|
<td data-value="0" class="abs empty">0/0</td>
|
||||||
|
<td data-value="0" class="pct empty">0%</td>
|
||||||
|
<td data-value="1" class="abs empty">1/1</td>
|
||||||
|
<td data-value="0" class="pct empty">0%</td>
|
||||||
|
<td data-value="1" class="abs empty">1/1</td>
|
||||||
|
<td data-value="0" class="pct empty">0%</td>
|
||||||
|
<td data-value="0" class="abs empty">0/0</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
373
coverage/4NK_IA_front/src/types/index.ts.html
Normal file
373
coverage/4NK_IA_front/src/types/index.ts.html
Normal file
@ -0,0 +1,373 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/types/index.ts</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/types</a> index.ts</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/0</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>1/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>1/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/0</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a>
|
||||||
|
<a name='L22'></a><a href='#L22'>22</a>
|
||||||
|
<a name='L23'></a><a href='#L23'>23</a>
|
||||||
|
<a name='L24'></a><a href='#L24'>24</a>
|
||||||
|
<a name='L25'></a><a href='#L25'>25</a>
|
||||||
|
<a name='L26'></a><a href='#L26'>26</a>
|
||||||
|
<a name='L27'></a><a href='#L27'>27</a>
|
||||||
|
<a name='L28'></a><a href='#L28'>28</a>
|
||||||
|
<a name='L29'></a><a href='#L29'>29</a>
|
||||||
|
<a name='L30'></a><a href='#L30'>30</a>
|
||||||
|
<a name='L31'></a><a href='#L31'>31</a>
|
||||||
|
<a name='L32'></a><a href='#L32'>32</a>
|
||||||
|
<a name='L33'></a><a href='#L33'>33</a>
|
||||||
|
<a name='L34'></a><a href='#L34'>34</a>
|
||||||
|
<a name='L35'></a><a href='#L35'>35</a>
|
||||||
|
<a name='L36'></a><a href='#L36'>36</a>
|
||||||
|
<a name='L37'></a><a href='#L37'>37</a>
|
||||||
|
<a name='L38'></a><a href='#L38'>38</a>
|
||||||
|
<a name='L39'></a><a href='#L39'>39</a>
|
||||||
|
<a name='L40'></a><a href='#L40'>40</a>
|
||||||
|
<a name='L41'></a><a href='#L41'>41</a>
|
||||||
|
<a name='L42'></a><a href='#L42'>42</a>
|
||||||
|
<a name='L43'></a><a href='#L43'>43</a>
|
||||||
|
<a name='L44'></a><a href='#L44'>44</a>
|
||||||
|
<a name='L45'></a><a href='#L45'>45</a>
|
||||||
|
<a name='L46'></a><a href='#L46'>46</a>
|
||||||
|
<a name='L47'></a><a href='#L47'>47</a>
|
||||||
|
<a name='L48'></a><a href='#L48'>48</a>
|
||||||
|
<a name='L49'></a><a href='#L49'>49</a>
|
||||||
|
<a name='L50'></a><a href='#L50'>50</a>
|
||||||
|
<a name='L51'></a><a href='#L51'>51</a>
|
||||||
|
<a name='L52'></a><a href='#L52'>52</a>
|
||||||
|
<a name='L53'></a><a href='#L53'>53</a>
|
||||||
|
<a name='L54'></a><a href='#L54'>54</a>
|
||||||
|
<a name='L55'></a><a href='#L55'>55</a>
|
||||||
|
<a name='L56'></a><a href='#L56'>56</a>
|
||||||
|
<a name='L57'></a><a href='#L57'>57</a>
|
||||||
|
<a name='L58'></a><a href='#L58'>58</a>
|
||||||
|
<a name='L59'></a><a href='#L59'>59</a>
|
||||||
|
<a name='L60'></a><a href='#L60'>60</a>
|
||||||
|
<a name='L61'></a><a href='#L61'>61</a>
|
||||||
|
<a name='L62'></a><a href='#L62'>62</a>
|
||||||
|
<a name='L63'></a><a href='#L63'>63</a>
|
||||||
|
<a name='L64'></a><a href='#L64'>64</a>
|
||||||
|
<a name='L65'></a><a href='#L65'>65</a>
|
||||||
|
<a name='L66'></a><a href='#L66'>66</a>
|
||||||
|
<a name='L67'></a><a href='#L67'>67</a>
|
||||||
|
<a name='L68'></a><a href='#L68'>68</a>
|
||||||
|
<a name='L69'></a><a href='#L69'>69</a>
|
||||||
|
<a name='L70'></a><a href='#L70'>70</a>
|
||||||
|
<a name='L71'></a><a href='#L71'>71</a>
|
||||||
|
<a name='L72'></a><a href='#L72'>72</a>
|
||||||
|
<a name='L73'></a><a href='#L73'>73</a>
|
||||||
|
<a name='L74'></a><a href='#L74'>74</a>
|
||||||
|
<a name='L75'></a><a href='#L75'>75</a>
|
||||||
|
<a name='L76'></a><a href='#L76'>76</a>
|
||||||
|
<a name='L77'></a><a href='#L77'>77</a>
|
||||||
|
<a name='L78'></a><a href='#L78'>78</a>
|
||||||
|
<a name='L79'></a><a href='#L79'>79</a>
|
||||||
|
<a name='L80'></a><a href='#L80'>80</a>
|
||||||
|
<a name='L81'></a><a href='#L81'>81</a>
|
||||||
|
<a name='L82'></a><a href='#L82'>82</a>
|
||||||
|
<a name='L83'></a><a href='#L83'>83</a>
|
||||||
|
<a name='L84'></a><a href='#L84'>84</a>
|
||||||
|
<a name='L85'></a><a href='#L85'>85</a>
|
||||||
|
<a name='L86'></a><a href='#L86'>86</a>
|
||||||
|
<a name='L87'></a><a href='#L87'>87</a>
|
||||||
|
<a name='L88'></a><a href='#L88'>88</a>
|
||||||
|
<a name='L89'></a><a href='#L89'>89</a>
|
||||||
|
<a name='L90'></a><a href='#L90'>90</a>
|
||||||
|
<a name='L91'></a><a href='#L91'>91</a>
|
||||||
|
<a name='L92'></a><a href='#L92'>92</a>
|
||||||
|
<a name='L93'></a><a href='#L93'>93</a>
|
||||||
|
<a name='L94'></a><a href='#L94'>94</a>
|
||||||
|
<a name='L95'></a><a href='#L95'>95</a>
|
||||||
|
<a name='L96'></a><a href='#L96'>96</a>
|
||||||
|
<a name='L97'></a><a href='#L97'>97</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">export interface Document {
|
||||||
|
id: string
|
||||||
|
name: string
|
||||||
|
type: string
|
||||||
|
size: number
|
||||||
|
uploadDate: Date
|
||||||
|
status: 'uploading' | 'processing' | 'completed' | 'error'
|
||||||
|
previewUrl?: string
|
||||||
|
content?: string
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface Identity {
|
||||||
|
id: string
|
||||||
|
type: 'person' | 'company'
|
||||||
|
firstName?: string
|
||||||
|
lastName?: string
|
||||||
|
companyName?: string
|
||||||
|
birthDate?: string
|
||||||
|
nationality?: string
|
||||||
|
address?: Address
|
||||||
|
confidence: number
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface Address {
|
||||||
|
street: string
|
||||||
|
city: string
|
||||||
|
postalCode: string
|
||||||
|
country: string
|
||||||
|
coordinates?: { lat: number; lng: number }
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface Property {
|
||||||
|
id: string
|
||||||
|
type: 'house' | 'apartment' | 'land' | 'commercial'
|
||||||
|
address: Address
|
||||||
|
surface?: number
|
||||||
|
cadastralReference?: string
|
||||||
|
value?: number
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface Contract {
|
||||||
|
id: string
|
||||||
|
type: 'sale' | 'rent' | 'inheritance' | 'donation'
|
||||||
|
parties: Identity[]
|
||||||
|
property?: Property
|
||||||
|
amount?: number
|
||||||
|
date?: string
|
||||||
|
clauses: string[]
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface ExtractionResult {
|
||||||
|
documentId: string
|
||||||
|
text: string
|
||||||
|
language: string
|
||||||
|
documentType: string
|
||||||
|
identities: Identity[]
|
||||||
|
addresses: Address[]
|
||||||
|
properties: Property[]
|
||||||
|
contracts: Contract[]
|
||||||
|
signatures: string[]
|
||||||
|
confidence: number
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface AnalysisResult {
|
||||||
|
documentId: string
|
||||||
|
documentType: string
|
||||||
|
isCNI: boolean
|
||||||
|
country?: string
|
||||||
|
verificationResult?: {
|
||||||
|
numberValid: boolean
|
||||||
|
formatValid: boolean
|
||||||
|
checksumValid: boolean
|
||||||
|
}
|
||||||
|
credibilityScore: number
|
||||||
|
summary: string
|
||||||
|
recommendations: string[]
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface ContextResult {
|
||||||
|
documentId: string
|
||||||
|
cadastreData?: Record<string, unknown>
|
||||||
|
georisquesData?: Record<string, unknown>
|
||||||
|
geofoncierData?: Record<string, unknown>
|
||||||
|
bodaccData?: Record<string, unknown>
|
||||||
|
infogreffeData?: Record<string, unknown>
|
||||||
|
lastUpdated: Date
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface ConseilResult {
|
||||||
|
documentId: string
|
||||||
|
analysis: string
|
||||||
|
recommendations: string[]
|
||||||
|
risks: string[]
|
||||||
|
nextSteps: string[]
|
||||||
|
generatedAt: Date
|
||||||
|
}
|
||||||
|
</pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
847
coverage/4NK_IA_front/src/views/AnalyseView.tsx.html
Normal file
847
coverage/4NK_IA_front/src/views/AnalyseView.tsx.html
Normal file
@ -0,0 +1,847 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/views/AnalyseView.tsx</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/views</a> AnalyseView.tsx</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/191</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/191</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a>
|
||||||
|
<a name='L22'></a><a href='#L22'>22</a>
|
||||||
|
<a name='L23'></a><a href='#L23'>23</a>
|
||||||
|
<a name='L24'></a><a href='#L24'>24</a>
|
||||||
|
<a name='L25'></a><a href='#L25'>25</a>
|
||||||
|
<a name='L26'></a><a href='#L26'>26</a>
|
||||||
|
<a name='L27'></a><a href='#L27'>27</a>
|
||||||
|
<a name='L28'></a><a href='#L28'>28</a>
|
||||||
|
<a name='L29'></a><a href='#L29'>29</a>
|
||||||
|
<a name='L30'></a><a href='#L30'>30</a>
|
||||||
|
<a name='L31'></a><a href='#L31'>31</a>
|
||||||
|
<a name='L32'></a><a href='#L32'>32</a>
|
||||||
|
<a name='L33'></a><a href='#L33'>33</a>
|
||||||
|
<a name='L34'></a><a href='#L34'>34</a>
|
||||||
|
<a name='L35'></a><a href='#L35'>35</a>
|
||||||
|
<a name='L36'></a><a href='#L36'>36</a>
|
||||||
|
<a name='L37'></a><a href='#L37'>37</a>
|
||||||
|
<a name='L38'></a><a href='#L38'>38</a>
|
||||||
|
<a name='L39'></a><a href='#L39'>39</a>
|
||||||
|
<a name='L40'></a><a href='#L40'>40</a>
|
||||||
|
<a name='L41'></a><a href='#L41'>41</a>
|
||||||
|
<a name='L42'></a><a href='#L42'>42</a>
|
||||||
|
<a name='L43'></a><a href='#L43'>43</a>
|
||||||
|
<a name='L44'></a><a href='#L44'>44</a>
|
||||||
|
<a name='L45'></a><a href='#L45'>45</a>
|
||||||
|
<a name='L46'></a><a href='#L46'>46</a>
|
||||||
|
<a name='L47'></a><a href='#L47'>47</a>
|
||||||
|
<a name='L48'></a><a href='#L48'>48</a>
|
||||||
|
<a name='L49'></a><a href='#L49'>49</a>
|
||||||
|
<a name='L50'></a><a href='#L50'>50</a>
|
||||||
|
<a name='L51'></a><a href='#L51'>51</a>
|
||||||
|
<a name='L52'></a><a href='#L52'>52</a>
|
||||||
|
<a name='L53'></a><a href='#L53'>53</a>
|
||||||
|
<a name='L54'></a><a href='#L54'>54</a>
|
||||||
|
<a name='L55'></a><a href='#L55'>55</a>
|
||||||
|
<a name='L56'></a><a href='#L56'>56</a>
|
||||||
|
<a name='L57'></a><a href='#L57'>57</a>
|
||||||
|
<a name='L58'></a><a href='#L58'>58</a>
|
||||||
|
<a name='L59'></a><a href='#L59'>59</a>
|
||||||
|
<a name='L60'></a><a href='#L60'>60</a>
|
||||||
|
<a name='L61'></a><a href='#L61'>61</a>
|
||||||
|
<a name='L62'></a><a href='#L62'>62</a>
|
||||||
|
<a name='L63'></a><a href='#L63'>63</a>
|
||||||
|
<a name='L64'></a><a href='#L64'>64</a>
|
||||||
|
<a name='L65'></a><a href='#L65'>65</a>
|
||||||
|
<a name='L66'></a><a href='#L66'>66</a>
|
||||||
|
<a name='L67'></a><a href='#L67'>67</a>
|
||||||
|
<a name='L68'></a><a href='#L68'>68</a>
|
||||||
|
<a name='L69'></a><a href='#L69'>69</a>
|
||||||
|
<a name='L70'></a><a href='#L70'>70</a>
|
||||||
|
<a name='L71'></a><a href='#L71'>71</a>
|
||||||
|
<a name='L72'></a><a href='#L72'>72</a>
|
||||||
|
<a name='L73'></a><a href='#L73'>73</a>
|
||||||
|
<a name='L74'></a><a href='#L74'>74</a>
|
||||||
|
<a name='L75'></a><a href='#L75'>75</a>
|
||||||
|
<a name='L76'></a><a href='#L76'>76</a>
|
||||||
|
<a name='L77'></a><a href='#L77'>77</a>
|
||||||
|
<a name='L78'></a><a href='#L78'>78</a>
|
||||||
|
<a name='L79'></a><a href='#L79'>79</a>
|
||||||
|
<a name='L80'></a><a href='#L80'>80</a>
|
||||||
|
<a name='L81'></a><a href='#L81'>81</a>
|
||||||
|
<a name='L82'></a><a href='#L82'>82</a>
|
||||||
|
<a name='L83'></a><a href='#L83'>83</a>
|
||||||
|
<a name='L84'></a><a href='#L84'>84</a>
|
||||||
|
<a name='L85'></a><a href='#L85'>85</a>
|
||||||
|
<a name='L86'></a><a href='#L86'>86</a>
|
||||||
|
<a name='L87'></a><a href='#L87'>87</a>
|
||||||
|
<a name='L88'></a><a href='#L88'>88</a>
|
||||||
|
<a name='L89'></a><a href='#L89'>89</a>
|
||||||
|
<a name='L90'></a><a href='#L90'>90</a>
|
||||||
|
<a name='L91'></a><a href='#L91'>91</a>
|
||||||
|
<a name='L92'></a><a href='#L92'>92</a>
|
||||||
|
<a name='L93'></a><a href='#L93'>93</a>
|
||||||
|
<a name='L94'></a><a href='#L94'>94</a>
|
||||||
|
<a name='L95'></a><a href='#L95'>95</a>
|
||||||
|
<a name='L96'></a><a href='#L96'>96</a>
|
||||||
|
<a name='L97'></a><a href='#L97'>97</a>
|
||||||
|
<a name='L98'></a><a href='#L98'>98</a>
|
||||||
|
<a name='L99'></a><a href='#L99'>99</a>
|
||||||
|
<a name='L100'></a><a href='#L100'>100</a>
|
||||||
|
<a name='L101'></a><a href='#L101'>101</a>
|
||||||
|
<a name='L102'></a><a href='#L102'>102</a>
|
||||||
|
<a name='L103'></a><a href='#L103'>103</a>
|
||||||
|
<a name='L104'></a><a href='#L104'>104</a>
|
||||||
|
<a name='L105'></a><a href='#L105'>105</a>
|
||||||
|
<a name='L106'></a><a href='#L106'>106</a>
|
||||||
|
<a name='L107'></a><a href='#L107'>107</a>
|
||||||
|
<a name='L108'></a><a href='#L108'>108</a>
|
||||||
|
<a name='L109'></a><a href='#L109'>109</a>
|
||||||
|
<a name='L110'></a><a href='#L110'>110</a>
|
||||||
|
<a name='L111'></a><a href='#L111'>111</a>
|
||||||
|
<a name='L112'></a><a href='#L112'>112</a>
|
||||||
|
<a name='L113'></a><a href='#L113'>113</a>
|
||||||
|
<a name='L114'></a><a href='#L114'>114</a>
|
||||||
|
<a name='L115'></a><a href='#L115'>115</a>
|
||||||
|
<a name='L116'></a><a href='#L116'>116</a>
|
||||||
|
<a name='L117'></a><a href='#L117'>117</a>
|
||||||
|
<a name='L118'></a><a href='#L118'>118</a>
|
||||||
|
<a name='L119'></a><a href='#L119'>119</a>
|
||||||
|
<a name='L120'></a><a href='#L120'>120</a>
|
||||||
|
<a name='L121'></a><a href='#L121'>121</a>
|
||||||
|
<a name='L122'></a><a href='#L122'>122</a>
|
||||||
|
<a name='L123'></a><a href='#L123'>123</a>
|
||||||
|
<a name='L124'></a><a href='#L124'>124</a>
|
||||||
|
<a name='L125'></a><a href='#L125'>125</a>
|
||||||
|
<a name='L126'></a><a href='#L126'>126</a>
|
||||||
|
<a name='L127'></a><a href='#L127'>127</a>
|
||||||
|
<a name='L128'></a><a href='#L128'>128</a>
|
||||||
|
<a name='L129'></a><a href='#L129'>129</a>
|
||||||
|
<a name='L130'></a><a href='#L130'>130</a>
|
||||||
|
<a name='L131'></a><a href='#L131'>131</a>
|
||||||
|
<a name='L132'></a><a href='#L132'>132</a>
|
||||||
|
<a name='L133'></a><a href='#L133'>133</a>
|
||||||
|
<a name='L134'></a><a href='#L134'>134</a>
|
||||||
|
<a name='L135'></a><a href='#L135'>135</a>
|
||||||
|
<a name='L136'></a><a href='#L136'>136</a>
|
||||||
|
<a name='L137'></a><a href='#L137'>137</a>
|
||||||
|
<a name='L138'></a><a href='#L138'>138</a>
|
||||||
|
<a name='L139'></a><a href='#L139'>139</a>
|
||||||
|
<a name='L140'></a><a href='#L140'>140</a>
|
||||||
|
<a name='L141'></a><a href='#L141'>141</a>
|
||||||
|
<a name='L142'></a><a href='#L142'>142</a>
|
||||||
|
<a name='L143'></a><a href='#L143'>143</a>
|
||||||
|
<a name='L144'></a><a href='#L144'>144</a>
|
||||||
|
<a name='L145'></a><a href='#L145'>145</a>
|
||||||
|
<a name='L146'></a><a href='#L146'>146</a>
|
||||||
|
<a name='L147'></a><a href='#L147'>147</a>
|
||||||
|
<a name='L148'></a><a href='#L148'>148</a>
|
||||||
|
<a name='L149'></a><a href='#L149'>149</a>
|
||||||
|
<a name='L150'></a><a href='#L150'>150</a>
|
||||||
|
<a name='L151'></a><a href='#L151'>151</a>
|
||||||
|
<a name='L152'></a><a href='#L152'>152</a>
|
||||||
|
<a name='L153'></a><a href='#L153'>153</a>
|
||||||
|
<a name='L154'></a><a href='#L154'>154</a>
|
||||||
|
<a name='L155'></a><a href='#L155'>155</a>
|
||||||
|
<a name='L156'></a><a href='#L156'>156</a>
|
||||||
|
<a name='L157'></a><a href='#L157'>157</a>
|
||||||
|
<a name='L158'></a><a href='#L158'>158</a>
|
||||||
|
<a name='L159'></a><a href='#L159'>159</a>
|
||||||
|
<a name='L160'></a><a href='#L160'>160</a>
|
||||||
|
<a name='L161'></a><a href='#L161'>161</a>
|
||||||
|
<a name='L162'></a><a href='#L162'>162</a>
|
||||||
|
<a name='L163'></a><a href='#L163'>163</a>
|
||||||
|
<a name='L164'></a><a href='#L164'>164</a>
|
||||||
|
<a name='L165'></a><a href='#L165'>165</a>
|
||||||
|
<a name='L166'></a><a href='#L166'>166</a>
|
||||||
|
<a name='L167'></a><a href='#L167'>167</a>
|
||||||
|
<a name='L168'></a><a href='#L168'>168</a>
|
||||||
|
<a name='L169'></a><a href='#L169'>169</a>
|
||||||
|
<a name='L170'></a><a href='#L170'>170</a>
|
||||||
|
<a name='L171'></a><a href='#L171'>171</a>
|
||||||
|
<a name='L172'></a><a href='#L172'>172</a>
|
||||||
|
<a name='L173'></a><a href='#L173'>173</a>
|
||||||
|
<a name='L174'></a><a href='#L174'>174</a>
|
||||||
|
<a name='L175'></a><a href='#L175'>175</a>
|
||||||
|
<a name='L176'></a><a href='#L176'>176</a>
|
||||||
|
<a name='L177'></a><a href='#L177'>177</a>
|
||||||
|
<a name='L178'></a><a href='#L178'>178</a>
|
||||||
|
<a name='L179'></a><a href='#L179'>179</a>
|
||||||
|
<a name='L180'></a><a href='#L180'>180</a>
|
||||||
|
<a name='L181'></a><a href='#L181'>181</a>
|
||||||
|
<a name='L182'></a><a href='#L182'>182</a>
|
||||||
|
<a name='L183'></a><a href='#L183'>183</a>
|
||||||
|
<a name='L184'></a><a href='#L184'>184</a>
|
||||||
|
<a name='L185'></a><a href='#L185'>185</a>
|
||||||
|
<a name='L186'></a><a href='#L186'>186</a>
|
||||||
|
<a name='L187'></a><a href='#L187'>187</a>
|
||||||
|
<a name='L188'></a><a href='#L188'>188</a>
|
||||||
|
<a name='L189'></a><a href='#L189'>189</a>
|
||||||
|
<a name='L190'></a><a href='#L190'>190</a>
|
||||||
|
<a name='L191'></a><a href='#L191'>191</a>
|
||||||
|
<a name='L192'></a><a href='#L192'>192</a>
|
||||||
|
<a name='L193'></a><a href='#L193'>193</a>
|
||||||
|
<a name='L194'></a><a href='#L194'>194</a>
|
||||||
|
<a name='L195'></a><a href='#L195'>195</a>
|
||||||
|
<a name='L196'></a><a href='#L196'>196</a>
|
||||||
|
<a name='L197'></a><a href='#L197'>197</a>
|
||||||
|
<a name='L198'></a><a href='#L198'>198</a>
|
||||||
|
<a name='L199'></a><a href='#L199'>199</a>
|
||||||
|
<a name='L200'></a><a href='#L200'>200</a>
|
||||||
|
<a name='L201'></a><a href='#L201'>201</a>
|
||||||
|
<a name='L202'></a><a href='#L202'>202</a>
|
||||||
|
<a name='L203'></a><a href='#L203'>203</a>
|
||||||
|
<a name='L204'></a><a href='#L204'>204</a>
|
||||||
|
<a name='L205'></a><a href='#L205'>205</a>
|
||||||
|
<a name='L206'></a><a href='#L206'>206</a>
|
||||||
|
<a name='L207'></a><a href='#L207'>207</a>
|
||||||
|
<a name='L208'></a><a href='#L208'>208</a>
|
||||||
|
<a name='L209'></a><a href='#L209'>209</a>
|
||||||
|
<a name='L210'></a><a href='#L210'>210</a>
|
||||||
|
<a name='L211'></a><a href='#L211'>211</a>
|
||||||
|
<a name='L212'></a><a href='#L212'>212</a>
|
||||||
|
<a name='L213'></a><a href='#L213'>213</a>
|
||||||
|
<a name='L214'></a><a href='#L214'>214</a>
|
||||||
|
<a name='L215'></a><a href='#L215'>215</a>
|
||||||
|
<a name='L216'></a><a href='#L216'>216</a>
|
||||||
|
<a name='L217'></a><a href='#L217'>217</a>
|
||||||
|
<a name='L218'></a><a href='#L218'>218</a>
|
||||||
|
<a name='L219'></a><a href='#L219'>219</a>
|
||||||
|
<a name='L220'></a><a href='#L220'>220</a>
|
||||||
|
<a name='L221'></a><a href='#L221'>221</a>
|
||||||
|
<a name='L222'></a><a href='#L222'>222</a>
|
||||||
|
<a name='L223'></a><a href='#L223'>223</a>
|
||||||
|
<a name='L224'></a><a href='#L224'>224</a>
|
||||||
|
<a name='L225'></a><a href='#L225'>225</a>
|
||||||
|
<a name='L226'></a><a href='#L226'>226</a>
|
||||||
|
<a name='L227'></a><a href='#L227'>227</a>
|
||||||
|
<a name='L228'></a><a href='#L228'>228</a>
|
||||||
|
<a name='L229'></a><a href='#L229'>229</a>
|
||||||
|
<a name='L230'></a><a href='#L230'>230</a>
|
||||||
|
<a name='L231'></a><a href='#L231'>231</a>
|
||||||
|
<a name='L232'></a><a href='#L232'>232</a>
|
||||||
|
<a name='L233'></a><a href='#L233'>233</a>
|
||||||
|
<a name='L234'></a><a href='#L234'>234</a>
|
||||||
|
<a name='L235'></a><a href='#L235'>235</a>
|
||||||
|
<a name='L236'></a><a href='#L236'>236</a>
|
||||||
|
<a name='L237'></a><a href='#L237'>237</a>
|
||||||
|
<a name='L238'></a><a href='#L238'>238</a>
|
||||||
|
<a name='L239'></a><a href='#L239'>239</a>
|
||||||
|
<a name='L240'></a><a href='#L240'>240</a>
|
||||||
|
<a name='L241'></a><a href='#L241'>241</a>
|
||||||
|
<a name='L242'></a><a href='#L242'>242</a>
|
||||||
|
<a name='L243'></a><a href='#L243'>243</a>
|
||||||
|
<a name='L244'></a><a href='#L244'>244</a>
|
||||||
|
<a name='L245'></a><a href='#L245'>245</a>
|
||||||
|
<a name='L246'></a><a href='#L246'>246</a>
|
||||||
|
<a name='L247'></a><a href='#L247'>247</a>
|
||||||
|
<a name='L248'></a><a href='#L248'>248</a>
|
||||||
|
<a name='L249'></a><a href='#L249'>249</a>
|
||||||
|
<a name='L250'></a><a href='#L250'>250</a>
|
||||||
|
<a name='L251'></a><a href='#L251'>251</a>
|
||||||
|
<a name='L252'></a><a href='#L252'>252</a>
|
||||||
|
<a name='L253'></a><a href='#L253'>253</a>
|
||||||
|
<a name='L254'></a><a href='#L254'>254</a>
|
||||||
|
<a name='L255'></a><a href='#L255'>255</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { useEffect } from 'react'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import {</span>
|
||||||
|
Box,
|
||||||
|
Typography,
|
||||||
|
Paper,
|
||||||
|
Card,
|
||||||
|
CardContent,
|
||||||
|
Chip,
|
||||||
|
List,
|
||||||
|
ListItem,
|
||||||
|
ListItemText,
|
||||||
|
ListItemIcon,
|
||||||
|
Alert,
|
||||||
|
LinearProgress,
|
||||||
|
} from '@mui/material'
|
||||||
|
<span class="cstat-no" title="statement not covered" >import {</span>
|
||||||
|
CheckCircle,
|
||||||
|
Error,
|
||||||
|
Warning,
|
||||||
|
Flag,
|
||||||
|
Security,
|
||||||
|
Assessment,
|
||||||
|
Info,
|
||||||
|
} from '@mui/icons-material'
|
||||||
|
import type { ChipProps, LinearProgressProps } from '@mui/material'
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { useAppDispatch, useAppSelector } from '../store'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { analyzeDocument } from '../store/documentSlice'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { Layout } from '../components/Layout'</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export default function AnalyseView() {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const dispatch = useAppDispatch()</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const { currentDocument, analysisResult, loading } = useAppSelector(</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > (state) => state.document</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > )</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > useEffect(() => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (currentDocument && !analysisResult) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > dispatch(analyzeDocument(currentDocument.id))</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }, [currentDocument, analysisResult, dispatch])</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (!currentDocument) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="info"></span>
|
||||||
|
Veuillez d'abord téléverser et sélectionner un document.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (loading) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', flexDirection: 'column', alignItems: 'center', mt: 4 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <LinearProgress sx={{ width: '100%', mb: 2 }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography>Analyse en cours...</Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (!analysisResult) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="warning"></span>
|
||||||
|
Aucun résultat d'analyse disponible.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const getScoreColor = (score: number): ChipProps['color'] => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (score >= 0.8) return 'success'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (score >= 0.6) return 'warning'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return 'error'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const getScoreIcon = (score: number) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (score >= 0.8) return <CheckCircle color="success" /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (score >= 0.6) return <Warning color="warning" /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return <Error color="error" /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h4" gutterBottom></span>
|
||||||
|
Analyse du document
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', flexDirection: 'column', gap: 3 }}></span>
|
||||||
|
{/* Résumé général */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Paper sx={{ p: 2 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
Résumé de l'analyse
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', gap: 2, flexWrap: 'wrap', alignItems: 'center' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > icon={<Assessment />}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={`Score de vraisemblance: ${(analysisResult.credibilityScore * 100).toFixed(1)}%`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={getScoreColor(analysisResult.credibilityScore)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="filled"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > icon={<Info />}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={`Type: ${analysisResult.documentType}`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color="primary"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {analysisResult.isCNI && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > icon={<Flag />}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={`Pays: ${analysisResult.country}`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color="secondary"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Paper></span>
|
||||||
|
|
||||||
|
{/* Cas CNI */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > {analysisResult.isCNI && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Security sx={{ mr: 1, verticalAlign: 'middle' }} /></span>
|
||||||
|
Vérification CNI
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {analysisResult.verificationResult && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <List></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {analysisResult.verificationResult.numberValid ? (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CheckCircle color="success" /></span>
|
||||||
|
) : (
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Error color="error" /></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemText</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > primary="Numéro valide"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > secondary={</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > analysisResult.verificationResult.numberValid</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ? 'Le numéro de CNI est valide'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > : 'Le numéro de CNI est invalide'</span>
|
||||||
|
}
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {analysisResult.verificationResult.formatValid ? (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CheckCircle color="success" /></span>
|
||||||
|
) : (
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Error color="error" /></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemText</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > primary="Format valide"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > secondary={</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > analysisResult.verificationResult.formatValid</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ? 'Le format du numéro est correct'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > : 'Le format du numéro est incorrect'</span>
|
||||||
|
}
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {analysisResult.verificationResult.checksumValid ? (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CheckCircle color="success" /></span>
|
||||||
|
) : (
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Error color="error" /></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemText</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > primary="Checksum valide"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > secondary={</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > analysisResult.verificationResult.checksumValid</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ? 'La somme de contrôle est correcte'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > : 'La somme de contrôle est incorrecte'</span>
|
||||||
|
}
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </List></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
)}
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', gap: 3, flexWrap: 'wrap' }}></span>
|
||||||
|
{/* Score de vraisemblance */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ flex: '1 1 300px' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
Score de vraisemblance
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', alignItems: 'center', mb: 2 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {getScoreIcon(analysisResult.credibilityScore)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h4" sx={{ ml: 2 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {(analysisResult.credibilityScore * 100).toFixed(1)}%</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <LinearProgress</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="determinate"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > value={analysisResult.credibilityScore * 100}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={getScoreColor(analysisResult.credibilityScore) as LinearProgressProps['color']}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > sx={{ height: 10, borderRadius: 5 }}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2" color="text.secondary" sx={{ mt: 1 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {analysisResult.credibilityScore >= 0.8</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ? 'Document très fiable'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > : analysisResult.credibilityScore >= 0.6</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ? 'Document moyennement fiable'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > : 'Document peu fiable - vérification recommandée'}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
|
||||||
|
{/* Synthèse */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ flex: '1 1 300px' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
Synthèse
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body1" sx={{ whiteSpace: 'pre-wrap' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {analysisResult.summary}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
|
||||||
|
{/* Recommandations */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
Recommandations
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <List></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {analysisResult.recommendations.map((recommendation, index) => (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItem key={index}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Info color="primary" /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemText primary={recommendation} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </List></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" >}</span></pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
814
coverage/4NK_IA_front/src/views/ConseilView.tsx.html
Normal file
814
coverage/4NK_IA_front/src/views/ConseilView.tsx.html
Normal file
@ -0,0 +1,814 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/views/ConseilView.tsx</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/views</a> ConseilView.tsx</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/187</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/187</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a>
|
||||||
|
<a name='L22'></a><a href='#L22'>22</a>
|
||||||
|
<a name='L23'></a><a href='#L23'>23</a>
|
||||||
|
<a name='L24'></a><a href='#L24'>24</a>
|
||||||
|
<a name='L25'></a><a href='#L25'>25</a>
|
||||||
|
<a name='L26'></a><a href='#L26'>26</a>
|
||||||
|
<a name='L27'></a><a href='#L27'>27</a>
|
||||||
|
<a name='L28'></a><a href='#L28'>28</a>
|
||||||
|
<a name='L29'></a><a href='#L29'>29</a>
|
||||||
|
<a name='L30'></a><a href='#L30'>30</a>
|
||||||
|
<a name='L31'></a><a href='#L31'>31</a>
|
||||||
|
<a name='L32'></a><a href='#L32'>32</a>
|
||||||
|
<a name='L33'></a><a href='#L33'>33</a>
|
||||||
|
<a name='L34'></a><a href='#L34'>34</a>
|
||||||
|
<a name='L35'></a><a href='#L35'>35</a>
|
||||||
|
<a name='L36'></a><a href='#L36'>36</a>
|
||||||
|
<a name='L37'></a><a href='#L37'>37</a>
|
||||||
|
<a name='L38'></a><a href='#L38'>38</a>
|
||||||
|
<a name='L39'></a><a href='#L39'>39</a>
|
||||||
|
<a name='L40'></a><a href='#L40'>40</a>
|
||||||
|
<a name='L41'></a><a href='#L41'>41</a>
|
||||||
|
<a name='L42'></a><a href='#L42'>42</a>
|
||||||
|
<a name='L43'></a><a href='#L43'>43</a>
|
||||||
|
<a name='L44'></a><a href='#L44'>44</a>
|
||||||
|
<a name='L45'></a><a href='#L45'>45</a>
|
||||||
|
<a name='L46'></a><a href='#L46'>46</a>
|
||||||
|
<a name='L47'></a><a href='#L47'>47</a>
|
||||||
|
<a name='L48'></a><a href='#L48'>48</a>
|
||||||
|
<a name='L49'></a><a href='#L49'>49</a>
|
||||||
|
<a name='L50'></a><a href='#L50'>50</a>
|
||||||
|
<a name='L51'></a><a href='#L51'>51</a>
|
||||||
|
<a name='L52'></a><a href='#L52'>52</a>
|
||||||
|
<a name='L53'></a><a href='#L53'>53</a>
|
||||||
|
<a name='L54'></a><a href='#L54'>54</a>
|
||||||
|
<a name='L55'></a><a href='#L55'>55</a>
|
||||||
|
<a name='L56'></a><a href='#L56'>56</a>
|
||||||
|
<a name='L57'></a><a href='#L57'>57</a>
|
||||||
|
<a name='L58'></a><a href='#L58'>58</a>
|
||||||
|
<a name='L59'></a><a href='#L59'>59</a>
|
||||||
|
<a name='L60'></a><a href='#L60'>60</a>
|
||||||
|
<a name='L61'></a><a href='#L61'>61</a>
|
||||||
|
<a name='L62'></a><a href='#L62'>62</a>
|
||||||
|
<a name='L63'></a><a href='#L63'>63</a>
|
||||||
|
<a name='L64'></a><a href='#L64'>64</a>
|
||||||
|
<a name='L65'></a><a href='#L65'>65</a>
|
||||||
|
<a name='L66'></a><a href='#L66'>66</a>
|
||||||
|
<a name='L67'></a><a href='#L67'>67</a>
|
||||||
|
<a name='L68'></a><a href='#L68'>68</a>
|
||||||
|
<a name='L69'></a><a href='#L69'>69</a>
|
||||||
|
<a name='L70'></a><a href='#L70'>70</a>
|
||||||
|
<a name='L71'></a><a href='#L71'>71</a>
|
||||||
|
<a name='L72'></a><a href='#L72'>72</a>
|
||||||
|
<a name='L73'></a><a href='#L73'>73</a>
|
||||||
|
<a name='L74'></a><a href='#L74'>74</a>
|
||||||
|
<a name='L75'></a><a href='#L75'>75</a>
|
||||||
|
<a name='L76'></a><a href='#L76'>76</a>
|
||||||
|
<a name='L77'></a><a href='#L77'>77</a>
|
||||||
|
<a name='L78'></a><a href='#L78'>78</a>
|
||||||
|
<a name='L79'></a><a href='#L79'>79</a>
|
||||||
|
<a name='L80'></a><a href='#L80'>80</a>
|
||||||
|
<a name='L81'></a><a href='#L81'>81</a>
|
||||||
|
<a name='L82'></a><a href='#L82'>82</a>
|
||||||
|
<a name='L83'></a><a href='#L83'>83</a>
|
||||||
|
<a name='L84'></a><a href='#L84'>84</a>
|
||||||
|
<a name='L85'></a><a href='#L85'>85</a>
|
||||||
|
<a name='L86'></a><a href='#L86'>86</a>
|
||||||
|
<a name='L87'></a><a href='#L87'>87</a>
|
||||||
|
<a name='L88'></a><a href='#L88'>88</a>
|
||||||
|
<a name='L89'></a><a href='#L89'>89</a>
|
||||||
|
<a name='L90'></a><a href='#L90'>90</a>
|
||||||
|
<a name='L91'></a><a href='#L91'>91</a>
|
||||||
|
<a name='L92'></a><a href='#L92'>92</a>
|
||||||
|
<a name='L93'></a><a href='#L93'>93</a>
|
||||||
|
<a name='L94'></a><a href='#L94'>94</a>
|
||||||
|
<a name='L95'></a><a href='#L95'>95</a>
|
||||||
|
<a name='L96'></a><a href='#L96'>96</a>
|
||||||
|
<a name='L97'></a><a href='#L97'>97</a>
|
||||||
|
<a name='L98'></a><a href='#L98'>98</a>
|
||||||
|
<a name='L99'></a><a href='#L99'>99</a>
|
||||||
|
<a name='L100'></a><a href='#L100'>100</a>
|
||||||
|
<a name='L101'></a><a href='#L101'>101</a>
|
||||||
|
<a name='L102'></a><a href='#L102'>102</a>
|
||||||
|
<a name='L103'></a><a href='#L103'>103</a>
|
||||||
|
<a name='L104'></a><a href='#L104'>104</a>
|
||||||
|
<a name='L105'></a><a href='#L105'>105</a>
|
||||||
|
<a name='L106'></a><a href='#L106'>106</a>
|
||||||
|
<a name='L107'></a><a href='#L107'>107</a>
|
||||||
|
<a name='L108'></a><a href='#L108'>108</a>
|
||||||
|
<a name='L109'></a><a href='#L109'>109</a>
|
||||||
|
<a name='L110'></a><a href='#L110'>110</a>
|
||||||
|
<a name='L111'></a><a href='#L111'>111</a>
|
||||||
|
<a name='L112'></a><a href='#L112'>112</a>
|
||||||
|
<a name='L113'></a><a href='#L113'>113</a>
|
||||||
|
<a name='L114'></a><a href='#L114'>114</a>
|
||||||
|
<a name='L115'></a><a href='#L115'>115</a>
|
||||||
|
<a name='L116'></a><a href='#L116'>116</a>
|
||||||
|
<a name='L117'></a><a href='#L117'>117</a>
|
||||||
|
<a name='L118'></a><a href='#L118'>118</a>
|
||||||
|
<a name='L119'></a><a href='#L119'>119</a>
|
||||||
|
<a name='L120'></a><a href='#L120'>120</a>
|
||||||
|
<a name='L121'></a><a href='#L121'>121</a>
|
||||||
|
<a name='L122'></a><a href='#L122'>122</a>
|
||||||
|
<a name='L123'></a><a href='#L123'>123</a>
|
||||||
|
<a name='L124'></a><a href='#L124'>124</a>
|
||||||
|
<a name='L125'></a><a href='#L125'>125</a>
|
||||||
|
<a name='L126'></a><a href='#L126'>126</a>
|
||||||
|
<a name='L127'></a><a href='#L127'>127</a>
|
||||||
|
<a name='L128'></a><a href='#L128'>128</a>
|
||||||
|
<a name='L129'></a><a href='#L129'>129</a>
|
||||||
|
<a name='L130'></a><a href='#L130'>130</a>
|
||||||
|
<a name='L131'></a><a href='#L131'>131</a>
|
||||||
|
<a name='L132'></a><a href='#L132'>132</a>
|
||||||
|
<a name='L133'></a><a href='#L133'>133</a>
|
||||||
|
<a name='L134'></a><a href='#L134'>134</a>
|
||||||
|
<a name='L135'></a><a href='#L135'>135</a>
|
||||||
|
<a name='L136'></a><a href='#L136'>136</a>
|
||||||
|
<a name='L137'></a><a href='#L137'>137</a>
|
||||||
|
<a name='L138'></a><a href='#L138'>138</a>
|
||||||
|
<a name='L139'></a><a href='#L139'>139</a>
|
||||||
|
<a name='L140'></a><a href='#L140'>140</a>
|
||||||
|
<a name='L141'></a><a href='#L141'>141</a>
|
||||||
|
<a name='L142'></a><a href='#L142'>142</a>
|
||||||
|
<a name='L143'></a><a href='#L143'>143</a>
|
||||||
|
<a name='L144'></a><a href='#L144'>144</a>
|
||||||
|
<a name='L145'></a><a href='#L145'>145</a>
|
||||||
|
<a name='L146'></a><a href='#L146'>146</a>
|
||||||
|
<a name='L147'></a><a href='#L147'>147</a>
|
||||||
|
<a name='L148'></a><a href='#L148'>148</a>
|
||||||
|
<a name='L149'></a><a href='#L149'>149</a>
|
||||||
|
<a name='L150'></a><a href='#L150'>150</a>
|
||||||
|
<a name='L151'></a><a href='#L151'>151</a>
|
||||||
|
<a name='L152'></a><a href='#L152'>152</a>
|
||||||
|
<a name='L153'></a><a href='#L153'>153</a>
|
||||||
|
<a name='L154'></a><a href='#L154'>154</a>
|
||||||
|
<a name='L155'></a><a href='#L155'>155</a>
|
||||||
|
<a name='L156'></a><a href='#L156'>156</a>
|
||||||
|
<a name='L157'></a><a href='#L157'>157</a>
|
||||||
|
<a name='L158'></a><a href='#L158'>158</a>
|
||||||
|
<a name='L159'></a><a href='#L159'>159</a>
|
||||||
|
<a name='L160'></a><a href='#L160'>160</a>
|
||||||
|
<a name='L161'></a><a href='#L161'>161</a>
|
||||||
|
<a name='L162'></a><a href='#L162'>162</a>
|
||||||
|
<a name='L163'></a><a href='#L163'>163</a>
|
||||||
|
<a name='L164'></a><a href='#L164'>164</a>
|
||||||
|
<a name='L165'></a><a href='#L165'>165</a>
|
||||||
|
<a name='L166'></a><a href='#L166'>166</a>
|
||||||
|
<a name='L167'></a><a href='#L167'>167</a>
|
||||||
|
<a name='L168'></a><a href='#L168'>168</a>
|
||||||
|
<a name='L169'></a><a href='#L169'>169</a>
|
||||||
|
<a name='L170'></a><a href='#L170'>170</a>
|
||||||
|
<a name='L171'></a><a href='#L171'>171</a>
|
||||||
|
<a name='L172'></a><a href='#L172'>172</a>
|
||||||
|
<a name='L173'></a><a href='#L173'>173</a>
|
||||||
|
<a name='L174'></a><a href='#L174'>174</a>
|
||||||
|
<a name='L175'></a><a href='#L175'>175</a>
|
||||||
|
<a name='L176'></a><a href='#L176'>176</a>
|
||||||
|
<a name='L177'></a><a href='#L177'>177</a>
|
||||||
|
<a name='L178'></a><a href='#L178'>178</a>
|
||||||
|
<a name='L179'></a><a href='#L179'>179</a>
|
||||||
|
<a name='L180'></a><a href='#L180'>180</a>
|
||||||
|
<a name='L181'></a><a href='#L181'>181</a>
|
||||||
|
<a name='L182'></a><a href='#L182'>182</a>
|
||||||
|
<a name='L183'></a><a href='#L183'>183</a>
|
||||||
|
<a name='L184'></a><a href='#L184'>184</a>
|
||||||
|
<a name='L185'></a><a href='#L185'>185</a>
|
||||||
|
<a name='L186'></a><a href='#L186'>186</a>
|
||||||
|
<a name='L187'></a><a href='#L187'>187</a>
|
||||||
|
<a name='L188'></a><a href='#L188'>188</a>
|
||||||
|
<a name='L189'></a><a href='#L189'>189</a>
|
||||||
|
<a name='L190'></a><a href='#L190'>190</a>
|
||||||
|
<a name='L191'></a><a href='#L191'>191</a>
|
||||||
|
<a name='L192'></a><a href='#L192'>192</a>
|
||||||
|
<a name='L193'></a><a href='#L193'>193</a>
|
||||||
|
<a name='L194'></a><a href='#L194'>194</a>
|
||||||
|
<a name='L195'></a><a href='#L195'>195</a>
|
||||||
|
<a name='L196'></a><a href='#L196'>196</a>
|
||||||
|
<a name='L197'></a><a href='#L197'>197</a>
|
||||||
|
<a name='L198'></a><a href='#L198'>198</a>
|
||||||
|
<a name='L199'></a><a href='#L199'>199</a>
|
||||||
|
<a name='L200'></a><a href='#L200'>200</a>
|
||||||
|
<a name='L201'></a><a href='#L201'>201</a>
|
||||||
|
<a name='L202'></a><a href='#L202'>202</a>
|
||||||
|
<a name='L203'></a><a href='#L203'>203</a>
|
||||||
|
<a name='L204'></a><a href='#L204'>204</a>
|
||||||
|
<a name='L205'></a><a href='#L205'>205</a>
|
||||||
|
<a name='L206'></a><a href='#L206'>206</a>
|
||||||
|
<a name='L207'></a><a href='#L207'>207</a>
|
||||||
|
<a name='L208'></a><a href='#L208'>208</a>
|
||||||
|
<a name='L209'></a><a href='#L209'>209</a>
|
||||||
|
<a name='L210'></a><a href='#L210'>210</a>
|
||||||
|
<a name='L211'></a><a href='#L211'>211</a>
|
||||||
|
<a name='L212'></a><a href='#L212'>212</a>
|
||||||
|
<a name='L213'></a><a href='#L213'>213</a>
|
||||||
|
<a name='L214'></a><a href='#L214'>214</a>
|
||||||
|
<a name='L215'></a><a href='#L215'>215</a>
|
||||||
|
<a name='L216'></a><a href='#L216'>216</a>
|
||||||
|
<a name='L217'></a><a href='#L217'>217</a>
|
||||||
|
<a name='L218'></a><a href='#L218'>218</a>
|
||||||
|
<a name='L219'></a><a href='#L219'>219</a>
|
||||||
|
<a name='L220'></a><a href='#L220'>220</a>
|
||||||
|
<a name='L221'></a><a href='#L221'>221</a>
|
||||||
|
<a name='L222'></a><a href='#L222'>222</a>
|
||||||
|
<a name='L223'></a><a href='#L223'>223</a>
|
||||||
|
<a name='L224'></a><a href='#L224'>224</a>
|
||||||
|
<a name='L225'></a><a href='#L225'>225</a>
|
||||||
|
<a name='L226'></a><a href='#L226'>226</a>
|
||||||
|
<a name='L227'></a><a href='#L227'>227</a>
|
||||||
|
<a name='L228'></a><a href='#L228'>228</a>
|
||||||
|
<a name='L229'></a><a href='#L229'>229</a>
|
||||||
|
<a name='L230'></a><a href='#L230'>230</a>
|
||||||
|
<a name='L231'></a><a href='#L231'>231</a>
|
||||||
|
<a name='L232'></a><a href='#L232'>232</a>
|
||||||
|
<a name='L233'></a><a href='#L233'>233</a>
|
||||||
|
<a name='L234'></a><a href='#L234'>234</a>
|
||||||
|
<a name='L235'></a><a href='#L235'>235</a>
|
||||||
|
<a name='L236'></a><a href='#L236'>236</a>
|
||||||
|
<a name='L237'></a><a href='#L237'>237</a>
|
||||||
|
<a name='L238'></a><a href='#L238'>238</a>
|
||||||
|
<a name='L239'></a><a href='#L239'>239</a>
|
||||||
|
<a name='L240'></a><a href='#L240'>240</a>
|
||||||
|
<a name='L241'></a><a href='#L241'>241</a>
|
||||||
|
<a name='L242'></a><a href='#L242'>242</a>
|
||||||
|
<a name='L243'></a><a href='#L243'>243</a>
|
||||||
|
<a name='L244'></a><a href='#L244'>244</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { useEffect } from 'react'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import {</span>
|
||||||
|
Box,
|
||||||
|
Typography,
|
||||||
|
Paper,
|
||||||
|
Card,
|
||||||
|
CardContent,
|
||||||
|
List,
|
||||||
|
ListItem,
|
||||||
|
ListItemText,
|
||||||
|
ListItemIcon,
|
||||||
|
Alert,
|
||||||
|
Chip,
|
||||||
|
Button,
|
||||||
|
CircularProgress,
|
||||||
|
} from '@mui/material'
|
||||||
|
<span class="cstat-no" title="statement not covered" >import {</span>
|
||||||
|
Lightbulb,
|
||||||
|
Warning,
|
||||||
|
CheckCircle,
|
||||||
|
TrendingUp,
|
||||||
|
Schedule,
|
||||||
|
Psychology,
|
||||||
|
} from '@mui/icons-material'
|
||||||
|
import type { ChipProps } from '@mui/material'
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { useAppDispatch, useAppSelector } from '../store'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { getConseil } from '../store/documentSlice'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { Layout } from '../components/Layout'</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export default function ConseilView() {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const dispatch = useAppDispatch()</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const { currentDocument, conseilResult, loading } = useAppSelector(</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > (state) => state.document</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > )</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > useEffect(() => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (currentDocument && !conseilResult) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > dispatch(getConseil(currentDocument.id))</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }, [currentDocument, conseilResult, dispatch])</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (!currentDocument) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="info"></span>
|
||||||
|
Veuillez d'abord téléverser et sélectionner un document.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (loading) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', justifyContent: 'center', mt: 4 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CircularProgress /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography sx={{ ml: 2 }}>Génération des conseils LLM...</Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (!conseilResult) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="warning"></span>
|
||||||
|
Aucun conseil disponible.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const getRiskColor = (risk: string): ChipProps['color'] => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (risk.toLowerCase().includes('élevé') || risk.toLowerCase().includes('critique')) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return 'error'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (risk.toLowerCase().includes('moyen') || risk.toLowerCase().includes('modéré')) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return 'warning'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return 'info'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h4" gutterBottom></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Psychology sx={{ mr: 1, verticalAlign: 'middle' }} /></span>
|
||||||
|
Conseil LLM
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', flexDirection: 'column', gap: 3 }}></span>
|
||||||
|
{/* Analyse LLM */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Lightbulb sx={{ mr: 1, verticalAlign: 'middle' }} /></span>
|
||||||
|
Analyse LLM
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Paper</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > sx={{</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > p: 2,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > bgcolor: 'grey.50',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > border: '1px solid',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > borderColor: 'grey.200',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }}</span>
|
||||||
|
>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body1" sx={{ whiteSpace: 'pre-wrap' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {conseilResult.analysis}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Paper></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="caption" color="text.secondary" sx={{ mt: 1, display: 'block' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Généré le {new Date(conseilResult.generatedAt).toLocaleString()}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', gap: 3, flexWrap: 'wrap' }}></span>
|
||||||
|
{/* Recommandations */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ flex: '1 1 300px' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CheckCircle sx={{ mr: 1, verticalAlign: 'middle' }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Recommandations ({conseilResult.recommendations.length})</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <List dense></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {conseilResult.recommendations.map((recommendation, index) => (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItem key={index}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CheckCircle color="success" /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemText primary={recommendation} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </List></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
|
||||||
|
{/* Risques identifiés */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ flex: '1 1 300px' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Warning sx={{ mr: 1, verticalAlign: 'middle' }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Risques identifiés ({conseilResult.risks.length})</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <List dense></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {conseilResult.risks.map((risk, index) => (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItem key={index}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Warning color={getRiskColor(risk) as ChipProps['color']} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemText</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > primary={risk}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > primaryTypographyProps={{</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color: getRiskColor(risk) === 'error' ? 'error.main' :</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > getRiskColor(risk) === 'warning' ? 'warning.main' : 'info.main'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </List></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
|
||||||
|
{/* Prochaines étapes */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <TrendingUp sx={{ mr: 1, verticalAlign: 'middle' }} /></span>
|
||||||
|
Prochaines étapes recommandées
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <List></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {conseilResult.nextSteps.map((step, index) => (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItem key={index}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Schedule color="primary" /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItemIcon></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemText</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > primary={`Étape ${index + 1}`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > secondary={step}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </List></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
|
||||||
|
{/* Actions */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
Actions
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', gap: 2, flexWrap: 'wrap' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Button</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="contained"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > onClick={() => dispatch(getConseil(currentDocument.id))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > disabled={loading}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ></span>
|
||||||
|
Régénérer les conseils
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Button></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Button variant="outlined"></span>
|
||||||
|
Exporter le rapport
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Button></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Button variant="outlined"></span>
|
||||||
|
Partager avec l'équipe
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Button></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
|
||||||
|
{/* Résumé exécutif */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Paper sx={{ p: 2, bgcolor: 'primary.50' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
Résumé exécutif
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', gap: 1, flexWrap: 'wrap', mb: 2 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={`${conseilResult.recommendations.length} recommandations`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color="success"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={`${conseilResult.risks.length} risques identifiés`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color="warning"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={`${conseilResult.nextSteps.length} étapes suivantes`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color="info"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2" color="text.secondary"></span>
|
||||||
|
Cette analyse LLM a été générée automatiquement et doit être validée par un expert notarial.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Paper></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" >}</span></pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
979
coverage/4NK_IA_front/src/views/ContexteView.tsx.html
Normal file
979
coverage/4NK_IA_front/src/views/ContexteView.tsx.html
Normal file
@ -0,0 +1,979 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/views/ContexteView.tsx</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/views</a> ContexteView.tsx</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/228</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/228</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a>
|
||||||
|
<a name='L22'></a><a href='#L22'>22</a>
|
||||||
|
<a name='L23'></a><a href='#L23'>23</a>
|
||||||
|
<a name='L24'></a><a href='#L24'>24</a>
|
||||||
|
<a name='L25'></a><a href='#L25'>25</a>
|
||||||
|
<a name='L26'></a><a href='#L26'>26</a>
|
||||||
|
<a name='L27'></a><a href='#L27'>27</a>
|
||||||
|
<a name='L28'></a><a href='#L28'>28</a>
|
||||||
|
<a name='L29'></a><a href='#L29'>29</a>
|
||||||
|
<a name='L30'></a><a href='#L30'>30</a>
|
||||||
|
<a name='L31'></a><a href='#L31'>31</a>
|
||||||
|
<a name='L32'></a><a href='#L32'>32</a>
|
||||||
|
<a name='L33'></a><a href='#L33'>33</a>
|
||||||
|
<a name='L34'></a><a href='#L34'>34</a>
|
||||||
|
<a name='L35'></a><a href='#L35'>35</a>
|
||||||
|
<a name='L36'></a><a href='#L36'>36</a>
|
||||||
|
<a name='L37'></a><a href='#L37'>37</a>
|
||||||
|
<a name='L38'></a><a href='#L38'>38</a>
|
||||||
|
<a name='L39'></a><a href='#L39'>39</a>
|
||||||
|
<a name='L40'></a><a href='#L40'>40</a>
|
||||||
|
<a name='L41'></a><a href='#L41'>41</a>
|
||||||
|
<a name='L42'></a><a href='#L42'>42</a>
|
||||||
|
<a name='L43'></a><a href='#L43'>43</a>
|
||||||
|
<a name='L44'></a><a href='#L44'>44</a>
|
||||||
|
<a name='L45'></a><a href='#L45'>45</a>
|
||||||
|
<a name='L46'></a><a href='#L46'>46</a>
|
||||||
|
<a name='L47'></a><a href='#L47'>47</a>
|
||||||
|
<a name='L48'></a><a href='#L48'>48</a>
|
||||||
|
<a name='L49'></a><a href='#L49'>49</a>
|
||||||
|
<a name='L50'></a><a href='#L50'>50</a>
|
||||||
|
<a name='L51'></a><a href='#L51'>51</a>
|
||||||
|
<a name='L52'></a><a href='#L52'>52</a>
|
||||||
|
<a name='L53'></a><a href='#L53'>53</a>
|
||||||
|
<a name='L54'></a><a href='#L54'>54</a>
|
||||||
|
<a name='L55'></a><a href='#L55'>55</a>
|
||||||
|
<a name='L56'></a><a href='#L56'>56</a>
|
||||||
|
<a name='L57'></a><a href='#L57'>57</a>
|
||||||
|
<a name='L58'></a><a href='#L58'>58</a>
|
||||||
|
<a name='L59'></a><a href='#L59'>59</a>
|
||||||
|
<a name='L60'></a><a href='#L60'>60</a>
|
||||||
|
<a name='L61'></a><a href='#L61'>61</a>
|
||||||
|
<a name='L62'></a><a href='#L62'>62</a>
|
||||||
|
<a name='L63'></a><a href='#L63'>63</a>
|
||||||
|
<a name='L64'></a><a href='#L64'>64</a>
|
||||||
|
<a name='L65'></a><a href='#L65'>65</a>
|
||||||
|
<a name='L66'></a><a href='#L66'>66</a>
|
||||||
|
<a name='L67'></a><a href='#L67'>67</a>
|
||||||
|
<a name='L68'></a><a href='#L68'>68</a>
|
||||||
|
<a name='L69'></a><a href='#L69'>69</a>
|
||||||
|
<a name='L70'></a><a href='#L70'>70</a>
|
||||||
|
<a name='L71'></a><a href='#L71'>71</a>
|
||||||
|
<a name='L72'></a><a href='#L72'>72</a>
|
||||||
|
<a name='L73'></a><a href='#L73'>73</a>
|
||||||
|
<a name='L74'></a><a href='#L74'>74</a>
|
||||||
|
<a name='L75'></a><a href='#L75'>75</a>
|
||||||
|
<a name='L76'></a><a href='#L76'>76</a>
|
||||||
|
<a name='L77'></a><a href='#L77'>77</a>
|
||||||
|
<a name='L78'></a><a href='#L78'>78</a>
|
||||||
|
<a name='L79'></a><a href='#L79'>79</a>
|
||||||
|
<a name='L80'></a><a href='#L80'>80</a>
|
||||||
|
<a name='L81'></a><a href='#L81'>81</a>
|
||||||
|
<a name='L82'></a><a href='#L82'>82</a>
|
||||||
|
<a name='L83'></a><a href='#L83'>83</a>
|
||||||
|
<a name='L84'></a><a href='#L84'>84</a>
|
||||||
|
<a name='L85'></a><a href='#L85'>85</a>
|
||||||
|
<a name='L86'></a><a href='#L86'>86</a>
|
||||||
|
<a name='L87'></a><a href='#L87'>87</a>
|
||||||
|
<a name='L88'></a><a href='#L88'>88</a>
|
||||||
|
<a name='L89'></a><a href='#L89'>89</a>
|
||||||
|
<a name='L90'></a><a href='#L90'>90</a>
|
||||||
|
<a name='L91'></a><a href='#L91'>91</a>
|
||||||
|
<a name='L92'></a><a href='#L92'>92</a>
|
||||||
|
<a name='L93'></a><a href='#L93'>93</a>
|
||||||
|
<a name='L94'></a><a href='#L94'>94</a>
|
||||||
|
<a name='L95'></a><a href='#L95'>95</a>
|
||||||
|
<a name='L96'></a><a href='#L96'>96</a>
|
||||||
|
<a name='L97'></a><a href='#L97'>97</a>
|
||||||
|
<a name='L98'></a><a href='#L98'>98</a>
|
||||||
|
<a name='L99'></a><a href='#L99'>99</a>
|
||||||
|
<a name='L100'></a><a href='#L100'>100</a>
|
||||||
|
<a name='L101'></a><a href='#L101'>101</a>
|
||||||
|
<a name='L102'></a><a href='#L102'>102</a>
|
||||||
|
<a name='L103'></a><a href='#L103'>103</a>
|
||||||
|
<a name='L104'></a><a href='#L104'>104</a>
|
||||||
|
<a name='L105'></a><a href='#L105'>105</a>
|
||||||
|
<a name='L106'></a><a href='#L106'>106</a>
|
||||||
|
<a name='L107'></a><a href='#L107'>107</a>
|
||||||
|
<a name='L108'></a><a href='#L108'>108</a>
|
||||||
|
<a name='L109'></a><a href='#L109'>109</a>
|
||||||
|
<a name='L110'></a><a href='#L110'>110</a>
|
||||||
|
<a name='L111'></a><a href='#L111'>111</a>
|
||||||
|
<a name='L112'></a><a href='#L112'>112</a>
|
||||||
|
<a name='L113'></a><a href='#L113'>113</a>
|
||||||
|
<a name='L114'></a><a href='#L114'>114</a>
|
||||||
|
<a name='L115'></a><a href='#L115'>115</a>
|
||||||
|
<a name='L116'></a><a href='#L116'>116</a>
|
||||||
|
<a name='L117'></a><a href='#L117'>117</a>
|
||||||
|
<a name='L118'></a><a href='#L118'>118</a>
|
||||||
|
<a name='L119'></a><a href='#L119'>119</a>
|
||||||
|
<a name='L120'></a><a href='#L120'>120</a>
|
||||||
|
<a name='L121'></a><a href='#L121'>121</a>
|
||||||
|
<a name='L122'></a><a href='#L122'>122</a>
|
||||||
|
<a name='L123'></a><a href='#L123'>123</a>
|
||||||
|
<a name='L124'></a><a href='#L124'>124</a>
|
||||||
|
<a name='L125'></a><a href='#L125'>125</a>
|
||||||
|
<a name='L126'></a><a href='#L126'>126</a>
|
||||||
|
<a name='L127'></a><a href='#L127'>127</a>
|
||||||
|
<a name='L128'></a><a href='#L128'>128</a>
|
||||||
|
<a name='L129'></a><a href='#L129'>129</a>
|
||||||
|
<a name='L130'></a><a href='#L130'>130</a>
|
||||||
|
<a name='L131'></a><a href='#L131'>131</a>
|
||||||
|
<a name='L132'></a><a href='#L132'>132</a>
|
||||||
|
<a name='L133'></a><a href='#L133'>133</a>
|
||||||
|
<a name='L134'></a><a href='#L134'>134</a>
|
||||||
|
<a name='L135'></a><a href='#L135'>135</a>
|
||||||
|
<a name='L136'></a><a href='#L136'>136</a>
|
||||||
|
<a name='L137'></a><a href='#L137'>137</a>
|
||||||
|
<a name='L138'></a><a href='#L138'>138</a>
|
||||||
|
<a name='L139'></a><a href='#L139'>139</a>
|
||||||
|
<a name='L140'></a><a href='#L140'>140</a>
|
||||||
|
<a name='L141'></a><a href='#L141'>141</a>
|
||||||
|
<a name='L142'></a><a href='#L142'>142</a>
|
||||||
|
<a name='L143'></a><a href='#L143'>143</a>
|
||||||
|
<a name='L144'></a><a href='#L144'>144</a>
|
||||||
|
<a name='L145'></a><a href='#L145'>145</a>
|
||||||
|
<a name='L146'></a><a href='#L146'>146</a>
|
||||||
|
<a name='L147'></a><a href='#L147'>147</a>
|
||||||
|
<a name='L148'></a><a href='#L148'>148</a>
|
||||||
|
<a name='L149'></a><a href='#L149'>149</a>
|
||||||
|
<a name='L150'></a><a href='#L150'>150</a>
|
||||||
|
<a name='L151'></a><a href='#L151'>151</a>
|
||||||
|
<a name='L152'></a><a href='#L152'>152</a>
|
||||||
|
<a name='L153'></a><a href='#L153'>153</a>
|
||||||
|
<a name='L154'></a><a href='#L154'>154</a>
|
||||||
|
<a name='L155'></a><a href='#L155'>155</a>
|
||||||
|
<a name='L156'></a><a href='#L156'>156</a>
|
||||||
|
<a name='L157'></a><a href='#L157'>157</a>
|
||||||
|
<a name='L158'></a><a href='#L158'>158</a>
|
||||||
|
<a name='L159'></a><a href='#L159'>159</a>
|
||||||
|
<a name='L160'></a><a href='#L160'>160</a>
|
||||||
|
<a name='L161'></a><a href='#L161'>161</a>
|
||||||
|
<a name='L162'></a><a href='#L162'>162</a>
|
||||||
|
<a name='L163'></a><a href='#L163'>163</a>
|
||||||
|
<a name='L164'></a><a href='#L164'>164</a>
|
||||||
|
<a name='L165'></a><a href='#L165'>165</a>
|
||||||
|
<a name='L166'></a><a href='#L166'>166</a>
|
||||||
|
<a name='L167'></a><a href='#L167'>167</a>
|
||||||
|
<a name='L168'></a><a href='#L168'>168</a>
|
||||||
|
<a name='L169'></a><a href='#L169'>169</a>
|
||||||
|
<a name='L170'></a><a href='#L170'>170</a>
|
||||||
|
<a name='L171'></a><a href='#L171'>171</a>
|
||||||
|
<a name='L172'></a><a href='#L172'>172</a>
|
||||||
|
<a name='L173'></a><a href='#L173'>173</a>
|
||||||
|
<a name='L174'></a><a href='#L174'>174</a>
|
||||||
|
<a name='L175'></a><a href='#L175'>175</a>
|
||||||
|
<a name='L176'></a><a href='#L176'>176</a>
|
||||||
|
<a name='L177'></a><a href='#L177'>177</a>
|
||||||
|
<a name='L178'></a><a href='#L178'>178</a>
|
||||||
|
<a name='L179'></a><a href='#L179'>179</a>
|
||||||
|
<a name='L180'></a><a href='#L180'>180</a>
|
||||||
|
<a name='L181'></a><a href='#L181'>181</a>
|
||||||
|
<a name='L182'></a><a href='#L182'>182</a>
|
||||||
|
<a name='L183'></a><a href='#L183'>183</a>
|
||||||
|
<a name='L184'></a><a href='#L184'>184</a>
|
||||||
|
<a name='L185'></a><a href='#L185'>185</a>
|
||||||
|
<a name='L186'></a><a href='#L186'>186</a>
|
||||||
|
<a name='L187'></a><a href='#L187'>187</a>
|
||||||
|
<a name='L188'></a><a href='#L188'>188</a>
|
||||||
|
<a name='L189'></a><a href='#L189'>189</a>
|
||||||
|
<a name='L190'></a><a href='#L190'>190</a>
|
||||||
|
<a name='L191'></a><a href='#L191'>191</a>
|
||||||
|
<a name='L192'></a><a href='#L192'>192</a>
|
||||||
|
<a name='L193'></a><a href='#L193'>193</a>
|
||||||
|
<a name='L194'></a><a href='#L194'>194</a>
|
||||||
|
<a name='L195'></a><a href='#L195'>195</a>
|
||||||
|
<a name='L196'></a><a href='#L196'>196</a>
|
||||||
|
<a name='L197'></a><a href='#L197'>197</a>
|
||||||
|
<a name='L198'></a><a href='#L198'>198</a>
|
||||||
|
<a name='L199'></a><a href='#L199'>199</a>
|
||||||
|
<a name='L200'></a><a href='#L200'>200</a>
|
||||||
|
<a name='L201'></a><a href='#L201'>201</a>
|
||||||
|
<a name='L202'></a><a href='#L202'>202</a>
|
||||||
|
<a name='L203'></a><a href='#L203'>203</a>
|
||||||
|
<a name='L204'></a><a href='#L204'>204</a>
|
||||||
|
<a name='L205'></a><a href='#L205'>205</a>
|
||||||
|
<a name='L206'></a><a href='#L206'>206</a>
|
||||||
|
<a name='L207'></a><a href='#L207'>207</a>
|
||||||
|
<a name='L208'></a><a href='#L208'>208</a>
|
||||||
|
<a name='L209'></a><a href='#L209'>209</a>
|
||||||
|
<a name='L210'></a><a href='#L210'>210</a>
|
||||||
|
<a name='L211'></a><a href='#L211'>211</a>
|
||||||
|
<a name='L212'></a><a href='#L212'>212</a>
|
||||||
|
<a name='L213'></a><a href='#L213'>213</a>
|
||||||
|
<a name='L214'></a><a href='#L214'>214</a>
|
||||||
|
<a name='L215'></a><a href='#L215'>215</a>
|
||||||
|
<a name='L216'></a><a href='#L216'>216</a>
|
||||||
|
<a name='L217'></a><a href='#L217'>217</a>
|
||||||
|
<a name='L218'></a><a href='#L218'>218</a>
|
||||||
|
<a name='L219'></a><a href='#L219'>219</a>
|
||||||
|
<a name='L220'></a><a href='#L220'>220</a>
|
||||||
|
<a name='L221'></a><a href='#L221'>221</a>
|
||||||
|
<a name='L222'></a><a href='#L222'>222</a>
|
||||||
|
<a name='L223'></a><a href='#L223'>223</a>
|
||||||
|
<a name='L224'></a><a href='#L224'>224</a>
|
||||||
|
<a name='L225'></a><a href='#L225'>225</a>
|
||||||
|
<a name='L226'></a><a href='#L226'>226</a>
|
||||||
|
<a name='L227'></a><a href='#L227'>227</a>
|
||||||
|
<a name='L228'></a><a href='#L228'>228</a>
|
||||||
|
<a name='L229'></a><a href='#L229'>229</a>
|
||||||
|
<a name='L230'></a><a href='#L230'>230</a>
|
||||||
|
<a name='L231'></a><a href='#L231'>231</a>
|
||||||
|
<a name='L232'></a><a href='#L232'>232</a>
|
||||||
|
<a name='L233'></a><a href='#L233'>233</a>
|
||||||
|
<a name='L234'></a><a href='#L234'>234</a>
|
||||||
|
<a name='L235'></a><a href='#L235'>235</a>
|
||||||
|
<a name='L236'></a><a href='#L236'>236</a>
|
||||||
|
<a name='L237'></a><a href='#L237'>237</a>
|
||||||
|
<a name='L238'></a><a href='#L238'>238</a>
|
||||||
|
<a name='L239'></a><a href='#L239'>239</a>
|
||||||
|
<a name='L240'></a><a href='#L240'>240</a>
|
||||||
|
<a name='L241'></a><a href='#L241'>241</a>
|
||||||
|
<a name='L242'></a><a href='#L242'>242</a>
|
||||||
|
<a name='L243'></a><a href='#L243'>243</a>
|
||||||
|
<a name='L244'></a><a href='#L244'>244</a>
|
||||||
|
<a name='L245'></a><a href='#L245'>245</a>
|
||||||
|
<a name='L246'></a><a href='#L246'>246</a>
|
||||||
|
<a name='L247'></a><a href='#L247'>247</a>
|
||||||
|
<a name='L248'></a><a href='#L248'>248</a>
|
||||||
|
<a name='L249'></a><a href='#L249'>249</a>
|
||||||
|
<a name='L250'></a><a href='#L250'>250</a>
|
||||||
|
<a name='L251'></a><a href='#L251'>251</a>
|
||||||
|
<a name='L252'></a><a href='#L252'>252</a>
|
||||||
|
<a name='L253'></a><a href='#L253'>253</a>
|
||||||
|
<a name='L254'></a><a href='#L254'>254</a>
|
||||||
|
<a name='L255'></a><a href='#L255'>255</a>
|
||||||
|
<a name='L256'></a><a href='#L256'>256</a>
|
||||||
|
<a name='L257'></a><a href='#L257'>257</a>
|
||||||
|
<a name='L258'></a><a href='#L258'>258</a>
|
||||||
|
<a name='L259'></a><a href='#L259'>259</a>
|
||||||
|
<a name='L260'></a><a href='#L260'>260</a>
|
||||||
|
<a name='L261'></a><a href='#L261'>261</a>
|
||||||
|
<a name='L262'></a><a href='#L262'>262</a>
|
||||||
|
<a name='L263'></a><a href='#L263'>263</a>
|
||||||
|
<a name='L264'></a><a href='#L264'>264</a>
|
||||||
|
<a name='L265'></a><a href='#L265'>265</a>
|
||||||
|
<a name='L266'></a><a href='#L266'>266</a>
|
||||||
|
<a name='L267'></a><a href='#L267'>267</a>
|
||||||
|
<a name='L268'></a><a href='#L268'>268</a>
|
||||||
|
<a name='L269'></a><a href='#L269'>269</a>
|
||||||
|
<a name='L270'></a><a href='#L270'>270</a>
|
||||||
|
<a name='L271'></a><a href='#L271'>271</a>
|
||||||
|
<a name='L272'></a><a href='#L272'>272</a>
|
||||||
|
<a name='L273'></a><a href='#L273'>273</a>
|
||||||
|
<a name='L274'></a><a href='#L274'>274</a>
|
||||||
|
<a name='L275'></a><a href='#L275'>275</a>
|
||||||
|
<a name='L276'></a><a href='#L276'>276</a>
|
||||||
|
<a name='L277'></a><a href='#L277'>277</a>
|
||||||
|
<a name='L278'></a><a href='#L278'>278</a>
|
||||||
|
<a name='L279'></a><a href='#L279'>279</a>
|
||||||
|
<a name='L280'></a><a href='#L280'>280</a>
|
||||||
|
<a name='L281'></a><a href='#L281'>281</a>
|
||||||
|
<a name='L282'></a><a href='#L282'>282</a>
|
||||||
|
<a name='L283'></a><a href='#L283'>283</a>
|
||||||
|
<a name='L284'></a><a href='#L284'>284</a>
|
||||||
|
<a name='L285'></a><a href='#L285'>285</a>
|
||||||
|
<a name='L286'></a><a href='#L286'>286</a>
|
||||||
|
<a name='L287'></a><a href='#L287'>287</a>
|
||||||
|
<a name='L288'></a><a href='#L288'>288</a>
|
||||||
|
<a name='L289'></a><a href='#L289'>289</a>
|
||||||
|
<a name='L290'></a><a href='#L290'>290</a>
|
||||||
|
<a name='L291'></a><a href='#L291'>291</a>
|
||||||
|
<a name='L292'></a><a href='#L292'>292</a>
|
||||||
|
<a name='L293'></a><a href='#L293'>293</a>
|
||||||
|
<a name='L294'></a><a href='#L294'>294</a>
|
||||||
|
<a name='L295'></a><a href='#L295'>295</a>
|
||||||
|
<a name='L296'></a><a href='#L296'>296</a>
|
||||||
|
<a name='L297'></a><a href='#L297'>297</a>
|
||||||
|
<a name='L298'></a><a href='#L298'>298</a>
|
||||||
|
<a name='L299'></a><a href='#L299'>299</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { useEffect } from 'react'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import {</span>
|
||||||
|
Box,
|
||||||
|
Typography,
|
||||||
|
Paper,
|
||||||
|
Card,
|
||||||
|
CardContent,
|
||||||
|
Chip,
|
||||||
|
Alert,
|
||||||
|
Button,
|
||||||
|
Accordion,
|
||||||
|
AccordionSummary,
|
||||||
|
AccordionDetails,
|
||||||
|
CircularProgress,
|
||||||
|
} from '@mui/material'
|
||||||
|
<span class="cstat-no" title="statement not covered" >import {</span>
|
||||||
|
ExpandMore,
|
||||||
|
LocationOn,
|
||||||
|
Warning,
|
||||||
|
CheckCircle,
|
||||||
|
Error,
|
||||||
|
Public,
|
||||||
|
Business,
|
||||||
|
Home,
|
||||||
|
} from '@mui/icons-material'
|
||||||
|
import type { ChipProps } from '@mui/material'
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { useAppDispatch, useAppSelector } from '../store'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { getContextData } from '../store/documentSlice'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { Layout } from '../components/Layout'</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export default function ContexteView() {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const dispatch = useAppDispatch()</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const { currentDocument, contextResult, loading } = useAppSelector(</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > (state) => state.document</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > )</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > useEffect(() => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (currentDocument && !contextResult) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > dispatch(getContextData(currentDocument.id))</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }, [currentDocument, contextResult, dispatch])</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (!currentDocument) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="info"></span>
|
||||||
|
Veuillez d'abord téléverser et sélectionner un document.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (loading) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', justifyContent: 'center', mt: 4 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CircularProgress /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography sx={{ ml: 2 }}>Recherche d'informations contextuelles...</Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (!contextResult) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="warning"></span>
|
||||||
|
Aucune donnée contextuelle disponible.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const getStatusIcon = (hasData: boolean) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return hasData ? <CheckCircle color="success" /> : <Error color="error" /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const getStatusColor = (hasData: boolean): ChipProps['color'] => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return hasData ? 'success' : 'error'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h4" gutterBottom></span>
|
||||||
|
Informations contextuelles
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', flexDirection: 'column', gap: 3 }}></span>
|
||||||
|
{/* Résumé des sources */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Paper sx={{ p: 2 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
Sources de données consultées
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', gap: 1, flexWrap: 'wrap' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > icon={getStatusIcon(!!contextResult.cadastreData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label="Cadastre"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={getStatusColor(!!contextResult.cadastreData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > icon={getStatusIcon(!!contextResult.georisquesData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label="Géorisques"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={getStatusColor(!!contextResult.georisquesData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > icon={getStatusIcon(!!contextResult.geofoncierData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label="Géofoncier"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={getStatusColor(!!contextResult.geofoncierData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > icon={getStatusIcon(!!contextResult.bodaccData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label="BODACC"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={getStatusColor(!!contextResult.bodaccData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > icon={getStatusIcon(!!contextResult.infogreffeData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label="Infogreffe"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={getStatusColor(!!contextResult.infogreffeData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="caption" color="text.secondary" sx={{ mt: 1, display: 'block' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Dernière mise à jour: {new Date(contextResult.lastUpdated).toLocaleString()}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Paper></span>
|
||||||
|
|
||||||
|
{/* Données cadastrales */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Accordion></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <AccordionSummary expandIcon={<ExpandMore />}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', alignItems: 'center' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Home sx={{ mr: 1 }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6">Données cadastrales</Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={contextResult.cadastreData ? 'Disponible' : 'Non disponible'}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={getStatusColor(!!contextResult.cadastreData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > size="small"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > sx={{ ml: 2 }}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </AccordionSummary></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <AccordionDetails></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {contextResult.cadastreData ? (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2" sx={{ whiteSpace: 'pre-wrap' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {JSON.stringify(contextResult.cadastreData, null, 2)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
) : (
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="info"></span>
|
||||||
|
Aucune donnée cadastrale trouvée pour ce document.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </AccordionDetails></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Accordion></span>
|
||||||
|
|
||||||
|
{/* Données Géorisques */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Accordion></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <AccordionSummary expandIcon={<ExpandMore />}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', alignItems: 'center' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Warning sx={{ mr: 1 }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6">Données Géorisques</Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={contextResult.georisquesData ? 'Disponible' : 'Non disponible'}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={getStatusColor(!!contextResult.georisquesData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > size="small"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > sx={{ ml: 2 }}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </AccordionSummary></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <AccordionDetails></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {contextResult.georisquesData ? (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2" sx={{ whiteSpace: 'pre-wrap' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {JSON.stringify(contextResult.georisquesData, null, 2)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
) : (
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="info"></span>
|
||||||
|
Aucune donnée Géorisques trouvée pour ce document.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </AccordionDetails></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Accordion></span>
|
||||||
|
|
||||||
|
{/* Données Géofoncier */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Accordion></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <AccordionSummary expandIcon={<ExpandMore />}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', alignItems: 'center' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <LocationOn sx={{ mr: 1 }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6">Données Géofoncier</Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={contextResult.geofoncierData ? 'Disponible' : 'Non disponible'}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={getStatusColor(!!contextResult.geofoncierData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > size="small"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > sx={{ ml: 2 }}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </AccordionSummary></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <AccordionDetails></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {contextResult.geofoncierData ? (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2" sx={{ whiteSpace: 'pre-wrap' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {JSON.stringify(contextResult.geofoncierData, null, 2)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
) : (
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="info"></span>
|
||||||
|
Aucune donnée Géofoncier trouvée pour ce document.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </AccordionDetails></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Accordion></span>
|
||||||
|
|
||||||
|
{/* Données BODACC */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Accordion></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <AccordionSummary expandIcon={<ExpandMore />}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', alignItems: 'center' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Public sx={{ mr: 1 }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6">Données BODACC</Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={contextResult.bodaccData ? 'Disponible' : 'Non disponible'}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={getStatusColor(!!contextResult.bodaccData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > size="small"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > sx={{ ml: 2 }}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </AccordionSummary></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <AccordionDetails></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {contextResult.bodaccData ? (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2" sx={{ whiteSpace: 'pre-wrap' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {JSON.stringify(contextResult.bodaccData, null, 2)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
) : (
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="info"></span>
|
||||||
|
Aucune donnée BODACC trouvée pour ce document.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </AccordionDetails></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Accordion></span>
|
||||||
|
|
||||||
|
{/* Données Infogreffe */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Accordion></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <AccordionSummary expandIcon={<ExpandMore />}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', alignItems: 'center' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Business sx={{ mr: 1 }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6">Données Infogreffe</Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={contextResult.infogreffeData ? 'Disponible' : 'Non disponible'}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={getStatusColor(!!contextResult.infogreffeData)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > size="small"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > sx={{ ml: 2 }}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </AccordionSummary></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <AccordionDetails></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {contextResult.infogreffeData ? (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2" sx={{ whiteSpace: 'pre-wrap' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {JSON.stringify(contextResult.infogreffeData, null, 2)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
) : (
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="info"></span>
|
||||||
|
Aucune donnée Infogreffe trouvée pour ce document.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </AccordionDetails></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Accordion></span>
|
||||||
|
|
||||||
|
{/* Actions */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
Actions
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', gap: 2 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Button</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="contained"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > onClick={() => dispatch(getContextData(currentDocument.id))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > disabled={loading}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ></span>
|
||||||
|
Actualiser les données
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Button></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Button variant="outlined"></span>
|
||||||
|
Exporter le rapport
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Button></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" >}</span></pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
946
coverage/4NK_IA_front/src/views/ExtractionView.tsx.html
Normal file
946
coverage/4NK_IA_front/src/views/ExtractionView.tsx.html
Normal file
@ -0,0 +1,946 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/views/ExtractionView.tsx</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/views</a> ExtractionView.tsx</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/230</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/230</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a>
|
||||||
|
<a name='L22'></a><a href='#L22'>22</a>
|
||||||
|
<a name='L23'></a><a href='#L23'>23</a>
|
||||||
|
<a name='L24'></a><a href='#L24'>24</a>
|
||||||
|
<a name='L25'></a><a href='#L25'>25</a>
|
||||||
|
<a name='L26'></a><a href='#L26'>26</a>
|
||||||
|
<a name='L27'></a><a href='#L27'>27</a>
|
||||||
|
<a name='L28'></a><a href='#L28'>28</a>
|
||||||
|
<a name='L29'></a><a href='#L29'>29</a>
|
||||||
|
<a name='L30'></a><a href='#L30'>30</a>
|
||||||
|
<a name='L31'></a><a href='#L31'>31</a>
|
||||||
|
<a name='L32'></a><a href='#L32'>32</a>
|
||||||
|
<a name='L33'></a><a href='#L33'>33</a>
|
||||||
|
<a name='L34'></a><a href='#L34'>34</a>
|
||||||
|
<a name='L35'></a><a href='#L35'>35</a>
|
||||||
|
<a name='L36'></a><a href='#L36'>36</a>
|
||||||
|
<a name='L37'></a><a href='#L37'>37</a>
|
||||||
|
<a name='L38'></a><a href='#L38'>38</a>
|
||||||
|
<a name='L39'></a><a href='#L39'>39</a>
|
||||||
|
<a name='L40'></a><a href='#L40'>40</a>
|
||||||
|
<a name='L41'></a><a href='#L41'>41</a>
|
||||||
|
<a name='L42'></a><a href='#L42'>42</a>
|
||||||
|
<a name='L43'></a><a href='#L43'>43</a>
|
||||||
|
<a name='L44'></a><a href='#L44'>44</a>
|
||||||
|
<a name='L45'></a><a href='#L45'>45</a>
|
||||||
|
<a name='L46'></a><a href='#L46'>46</a>
|
||||||
|
<a name='L47'></a><a href='#L47'>47</a>
|
||||||
|
<a name='L48'></a><a href='#L48'>48</a>
|
||||||
|
<a name='L49'></a><a href='#L49'>49</a>
|
||||||
|
<a name='L50'></a><a href='#L50'>50</a>
|
||||||
|
<a name='L51'></a><a href='#L51'>51</a>
|
||||||
|
<a name='L52'></a><a href='#L52'>52</a>
|
||||||
|
<a name='L53'></a><a href='#L53'>53</a>
|
||||||
|
<a name='L54'></a><a href='#L54'>54</a>
|
||||||
|
<a name='L55'></a><a href='#L55'>55</a>
|
||||||
|
<a name='L56'></a><a href='#L56'>56</a>
|
||||||
|
<a name='L57'></a><a href='#L57'>57</a>
|
||||||
|
<a name='L58'></a><a href='#L58'>58</a>
|
||||||
|
<a name='L59'></a><a href='#L59'>59</a>
|
||||||
|
<a name='L60'></a><a href='#L60'>60</a>
|
||||||
|
<a name='L61'></a><a href='#L61'>61</a>
|
||||||
|
<a name='L62'></a><a href='#L62'>62</a>
|
||||||
|
<a name='L63'></a><a href='#L63'>63</a>
|
||||||
|
<a name='L64'></a><a href='#L64'>64</a>
|
||||||
|
<a name='L65'></a><a href='#L65'>65</a>
|
||||||
|
<a name='L66'></a><a href='#L66'>66</a>
|
||||||
|
<a name='L67'></a><a href='#L67'>67</a>
|
||||||
|
<a name='L68'></a><a href='#L68'>68</a>
|
||||||
|
<a name='L69'></a><a href='#L69'>69</a>
|
||||||
|
<a name='L70'></a><a href='#L70'>70</a>
|
||||||
|
<a name='L71'></a><a href='#L71'>71</a>
|
||||||
|
<a name='L72'></a><a href='#L72'>72</a>
|
||||||
|
<a name='L73'></a><a href='#L73'>73</a>
|
||||||
|
<a name='L74'></a><a href='#L74'>74</a>
|
||||||
|
<a name='L75'></a><a href='#L75'>75</a>
|
||||||
|
<a name='L76'></a><a href='#L76'>76</a>
|
||||||
|
<a name='L77'></a><a href='#L77'>77</a>
|
||||||
|
<a name='L78'></a><a href='#L78'>78</a>
|
||||||
|
<a name='L79'></a><a href='#L79'>79</a>
|
||||||
|
<a name='L80'></a><a href='#L80'>80</a>
|
||||||
|
<a name='L81'></a><a href='#L81'>81</a>
|
||||||
|
<a name='L82'></a><a href='#L82'>82</a>
|
||||||
|
<a name='L83'></a><a href='#L83'>83</a>
|
||||||
|
<a name='L84'></a><a href='#L84'>84</a>
|
||||||
|
<a name='L85'></a><a href='#L85'>85</a>
|
||||||
|
<a name='L86'></a><a href='#L86'>86</a>
|
||||||
|
<a name='L87'></a><a href='#L87'>87</a>
|
||||||
|
<a name='L88'></a><a href='#L88'>88</a>
|
||||||
|
<a name='L89'></a><a href='#L89'>89</a>
|
||||||
|
<a name='L90'></a><a href='#L90'>90</a>
|
||||||
|
<a name='L91'></a><a href='#L91'>91</a>
|
||||||
|
<a name='L92'></a><a href='#L92'>92</a>
|
||||||
|
<a name='L93'></a><a href='#L93'>93</a>
|
||||||
|
<a name='L94'></a><a href='#L94'>94</a>
|
||||||
|
<a name='L95'></a><a href='#L95'>95</a>
|
||||||
|
<a name='L96'></a><a href='#L96'>96</a>
|
||||||
|
<a name='L97'></a><a href='#L97'>97</a>
|
||||||
|
<a name='L98'></a><a href='#L98'>98</a>
|
||||||
|
<a name='L99'></a><a href='#L99'>99</a>
|
||||||
|
<a name='L100'></a><a href='#L100'>100</a>
|
||||||
|
<a name='L101'></a><a href='#L101'>101</a>
|
||||||
|
<a name='L102'></a><a href='#L102'>102</a>
|
||||||
|
<a name='L103'></a><a href='#L103'>103</a>
|
||||||
|
<a name='L104'></a><a href='#L104'>104</a>
|
||||||
|
<a name='L105'></a><a href='#L105'>105</a>
|
||||||
|
<a name='L106'></a><a href='#L106'>106</a>
|
||||||
|
<a name='L107'></a><a href='#L107'>107</a>
|
||||||
|
<a name='L108'></a><a href='#L108'>108</a>
|
||||||
|
<a name='L109'></a><a href='#L109'>109</a>
|
||||||
|
<a name='L110'></a><a href='#L110'>110</a>
|
||||||
|
<a name='L111'></a><a href='#L111'>111</a>
|
||||||
|
<a name='L112'></a><a href='#L112'>112</a>
|
||||||
|
<a name='L113'></a><a href='#L113'>113</a>
|
||||||
|
<a name='L114'></a><a href='#L114'>114</a>
|
||||||
|
<a name='L115'></a><a href='#L115'>115</a>
|
||||||
|
<a name='L116'></a><a href='#L116'>116</a>
|
||||||
|
<a name='L117'></a><a href='#L117'>117</a>
|
||||||
|
<a name='L118'></a><a href='#L118'>118</a>
|
||||||
|
<a name='L119'></a><a href='#L119'>119</a>
|
||||||
|
<a name='L120'></a><a href='#L120'>120</a>
|
||||||
|
<a name='L121'></a><a href='#L121'>121</a>
|
||||||
|
<a name='L122'></a><a href='#L122'>122</a>
|
||||||
|
<a name='L123'></a><a href='#L123'>123</a>
|
||||||
|
<a name='L124'></a><a href='#L124'>124</a>
|
||||||
|
<a name='L125'></a><a href='#L125'>125</a>
|
||||||
|
<a name='L126'></a><a href='#L126'>126</a>
|
||||||
|
<a name='L127'></a><a href='#L127'>127</a>
|
||||||
|
<a name='L128'></a><a href='#L128'>128</a>
|
||||||
|
<a name='L129'></a><a href='#L129'>129</a>
|
||||||
|
<a name='L130'></a><a href='#L130'>130</a>
|
||||||
|
<a name='L131'></a><a href='#L131'>131</a>
|
||||||
|
<a name='L132'></a><a href='#L132'>132</a>
|
||||||
|
<a name='L133'></a><a href='#L133'>133</a>
|
||||||
|
<a name='L134'></a><a href='#L134'>134</a>
|
||||||
|
<a name='L135'></a><a href='#L135'>135</a>
|
||||||
|
<a name='L136'></a><a href='#L136'>136</a>
|
||||||
|
<a name='L137'></a><a href='#L137'>137</a>
|
||||||
|
<a name='L138'></a><a href='#L138'>138</a>
|
||||||
|
<a name='L139'></a><a href='#L139'>139</a>
|
||||||
|
<a name='L140'></a><a href='#L140'>140</a>
|
||||||
|
<a name='L141'></a><a href='#L141'>141</a>
|
||||||
|
<a name='L142'></a><a href='#L142'>142</a>
|
||||||
|
<a name='L143'></a><a href='#L143'>143</a>
|
||||||
|
<a name='L144'></a><a href='#L144'>144</a>
|
||||||
|
<a name='L145'></a><a href='#L145'>145</a>
|
||||||
|
<a name='L146'></a><a href='#L146'>146</a>
|
||||||
|
<a name='L147'></a><a href='#L147'>147</a>
|
||||||
|
<a name='L148'></a><a href='#L148'>148</a>
|
||||||
|
<a name='L149'></a><a href='#L149'>149</a>
|
||||||
|
<a name='L150'></a><a href='#L150'>150</a>
|
||||||
|
<a name='L151'></a><a href='#L151'>151</a>
|
||||||
|
<a name='L152'></a><a href='#L152'>152</a>
|
||||||
|
<a name='L153'></a><a href='#L153'>153</a>
|
||||||
|
<a name='L154'></a><a href='#L154'>154</a>
|
||||||
|
<a name='L155'></a><a href='#L155'>155</a>
|
||||||
|
<a name='L156'></a><a href='#L156'>156</a>
|
||||||
|
<a name='L157'></a><a href='#L157'>157</a>
|
||||||
|
<a name='L158'></a><a href='#L158'>158</a>
|
||||||
|
<a name='L159'></a><a href='#L159'>159</a>
|
||||||
|
<a name='L160'></a><a href='#L160'>160</a>
|
||||||
|
<a name='L161'></a><a href='#L161'>161</a>
|
||||||
|
<a name='L162'></a><a href='#L162'>162</a>
|
||||||
|
<a name='L163'></a><a href='#L163'>163</a>
|
||||||
|
<a name='L164'></a><a href='#L164'>164</a>
|
||||||
|
<a name='L165'></a><a href='#L165'>165</a>
|
||||||
|
<a name='L166'></a><a href='#L166'>166</a>
|
||||||
|
<a name='L167'></a><a href='#L167'>167</a>
|
||||||
|
<a name='L168'></a><a href='#L168'>168</a>
|
||||||
|
<a name='L169'></a><a href='#L169'>169</a>
|
||||||
|
<a name='L170'></a><a href='#L170'>170</a>
|
||||||
|
<a name='L171'></a><a href='#L171'>171</a>
|
||||||
|
<a name='L172'></a><a href='#L172'>172</a>
|
||||||
|
<a name='L173'></a><a href='#L173'>173</a>
|
||||||
|
<a name='L174'></a><a href='#L174'>174</a>
|
||||||
|
<a name='L175'></a><a href='#L175'>175</a>
|
||||||
|
<a name='L176'></a><a href='#L176'>176</a>
|
||||||
|
<a name='L177'></a><a href='#L177'>177</a>
|
||||||
|
<a name='L178'></a><a href='#L178'>178</a>
|
||||||
|
<a name='L179'></a><a href='#L179'>179</a>
|
||||||
|
<a name='L180'></a><a href='#L180'>180</a>
|
||||||
|
<a name='L181'></a><a href='#L181'>181</a>
|
||||||
|
<a name='L182'></a><a href='#L182'>182</a>
|
||||||
|
<a name='L183'></a><a href='#L183'>183</a>
|
||||||
|
<a name='L184'></a><a href='#L184'>184</a>
|
||||||
|
<a name='L185'></a><a href='#L185'>185</a>
|
||||||
|
<a name='L186'></a><a href='#L186'>186</a>
|
||||||
|
<a name='L187'></a><a href='#L187'>187</a>
|
||||||
|
<a name='L188'></a><a href='#L188'>188</a>
|
||||||
|
<a name='L189'></a><a href='#L189'>189</a>
|
||||||
|
<a name='L190'></a><a href='#L190'>190</a>
|
||||||
|
<a name='L191'></a><a href='#L191'>191</a>
|
||||||
|
<a name='L192'></a><a href='#L192'>192</a>
|
||||||
|
<a name='L193'></a><a href='#L193'>193</a>
|
||||||
|
<a name='L194'></a><a href='#L194'>194</a>
|
||||||
|
<a name='L195'></a><a href='#L195'>195</a>
|
||||||
|
<a name='L196'></a><a href='#L196'>196</a>
|
||||||
|
<a name='L197'></a><a href='#L197'>197</a>
|
||||||
|
<a name='L198'></a><a href='#L198'>198</a>
|
||||||
|
<a name='L199'></a><a href='#L199'>199</a>
|
||||||
|
<a name='L200'></a><a href='#L200'>200</a>
|
||||||
|
<a name='L201'></a><a href='#L201'>201</a>
|
||||||
|
<a name='L202'></a><a href='#L202'>202</a>
|
||||||
|
<a name='L203'></a><a href='#L203'>203</a>
|
||||||
|
<a name='L204'></a><a href='#L204'>204</a>
|
||||||
|
<a name='L205'></a><a href='#L205'>205</a>
|
||||||
|
<a name='L206'></a><a href='#L206'>206</a>
|
||||||
|
<a name='L207'></a><a href='#L207'>207</a>
|
||||||
|
<a name='L208'></a><a href='#L208'>208</a>
|
||||||
|
<a name='L209'></a><a href='#L209'>209</a>
|
||||||
|
<a name='L210'></a><a href='#L210'>210</a>
|
||||||
|
<a name='L211'></a><a href='#L211'>211</a>
|
||||||
|
<a name='L212'></a><a href='#L212'>212</a>
|
||||||
|
<a name='L213'></a><a href='#L213'>213</a>
|
||||||
|
<a name='L214'></a><a href='#L214'>214</a>
|
||||||
|
<a name='L215'></a><a href='#L215'>215</a>
|
||||||
|
<a name='L216'></a><a href='#L216'>216</a>
|
||||||
|
<a name='L217'></a><a href='#L217'>217</a>
|
||||||
|
<a name='L218'></a><a href='#L218'>218</a>
|
||||||
|
<a name='L219'></a><a href='#L219'>219</a>
|
||||||
|
<a name='L220'></a><a href='#L220'>220</a>
|
||||||
|
<a name='L221'></a><a href='#L221'>221</a>
|
||||||
|
<a name='L222'></a><a href='#L222'>222</a>
|
||||||
|
<a name='L223'></a><a href='#L223'>223</a>
|
||||||
|
<a name='L224'></a><a href='#L224'>224</a>
|
||||||
|
<a name='L225'></a><a href='#L225'>225</a>
|
||||||
|
<a name='L226'></a><a href='#L226'>226</a>
|
||||||
|
<a name='L227'></a><a href='#L227'>227</a>
|
||||||
|
<a name='L228'></a><a href='#L228'>228</a>
|
||||||
|
<a name='L229'></a><a href='#L229'>229</a>
|
||||||
|
<a name='L230'></a><a href='#L230'>230</a>
|
||||||
|
<a name='L231'></a><a href='#L231'>231</a>
|
||||||
|
<a name='L232'></a><a href='#L232'>232</a>
|
||||||
|
<a name='L233'></a><a href='#L233'>233</a>
|
||||||
|
<a name='L234'></a><a href='#L234'>234</a>
|
||||||
|
<a name='L235'></a><a href='#L235'>235</a>
|
||||||
|
<a name='L236'></a><a href='#L236'>236</a>
|
||||||
|
<a name='L237'></a><a href='#L237'>237</a>
|
||||||
|
<a name='L238'></a><a href='#L238'>238</a>
|
||||||
|
<a name='L239'></a><a href='#L239'>239</a>
|
||||||
|
<a name='L240'></a><a href='#L240'>240</a>
|
||||||
|
<a name='L241'></a><a href='#L241'>241</a>
|
||||||
|
<a name='L242'></a><a href='#L242'>242</a>
|
||||||
|
<a name='L243'></a><a href='#L243'>243</a>
|
||||||
|
<a name='L244'></a><a href='#L244'>244</a>
|
||||||
|
<a name='L245'></a><a href='#L245'>245</a>
|
||||||
|
<a name='L246'></a><a href='#L246'>246</a>
|
||||||
|
<a name='L247'></a><a href='#L247'>247</a>
|
||||||
|
<a name='L248'></a><a href='#L248'>248</a>
|
||||||
|
<a name='L249'></a><a href='#L249'>249</a>
|
||||||
|
<a name='L250'></a><a href='#L250'>250</a>
|
||||||
|
<a name='L251'></a><a href='#L251'>251</a>
|
||||||
|
<a name='L252'></a><a href='#L252'>252</a>
|
||||||
|
<a name='L253'></a><a href='#L253'>253</a>
|
||||||
|
<a name='L254'></a><a href='#L254'>254</a>
|
||||||
|
<a name='L255'></a><a href='#L255'>255</a>
|
||||||
|
<a name='L256'></a><a href='#L256'>256</a>
|
||||||
|
<a name='L257'></a><a href='#L257'>257</a>
|
||||||
|
<a name='L258'></a><a href='#L258'>258</a>
|
||||||
|
<a name='L259'></a><a href='#L259'>259</a>
|
||||||
|
<a name='L260'></a><a href='#L260'>260</a>
|
||||||
|
<a name='L261'></a><a href='#L261'>261</a>
|
||||||
|
<a name='L262'></a><a href='#L262'>262</a>
|
||||||
|
<a name='L263'></a><a href='#L263'>263</a>
|
||||||
|
<a name='L264'></a><a href='#L264'>264</a>
|
||||||
|
<a name='L265'></a><a href='#L265'>265</a>
|
||||||
|
<a name='L266'></a><a href='#L266'>266</a>
|
||||||
|
<a name='L267'></a><a href='#L267'>267</a>
|
||||||
|
<a name='L268'></a><a href='#L268'>268</a>
|
||||||
|
<a name='L269'></a><a href='#L269'>269</a>
|
||||||
|
<a name='L270'></a><a href='#L270'>270</a>
|
||||||
|
<a name='L271'></a><a href='#L271'>271</a>
|
||||||
|
<a name='L272'></a><a href='#L272'>272</a>
|
||||||
|
<a name='L273'></a><a href='#L273'>273</a>
|
||||||
|
<a name='L274'></a><a href='#L274'>274</a>
|
||||||
|
<a name='L275'></a><a href='#L275'>275</a>
|
||||||
|
<a name='L276'></a><a href='#L276'>276</a>
|
||||||
|
<a name='L277'></a><a href='#L277'>277</a>
|
||||||
|
<a name='L278'></a><a href='#L278'>278</a>
|
||||||
|
<a name='L279'></a><a href='#L279'>279</a>
|
||||||
|
<a name='L280'></a><a href='#L280'>280</a>
|
||||||
|
<a name='L281'></a><a href='#L281'>281</a>
|
||||||
|
<a name='L282'></a><a href='#L282'>282</a>
|
||||||
|
<a name='L283'></a><a href='#L283'>283</a>
|
||||||
|
<a name='L284'></a><a href='#L284'>284</a>
|
||||||
|
<a name='L285'></a><a href='#L285'>285</a>
|
||||||
|
<a name='L286'></a><a href='#L286'>286</a>
|
||||||
|
<a name='L287'></a><a href='#L287'>287</a>
|
||||||
|
<a name='L288'></a><a href='#L288'>288</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { useEffect } from 'react'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import {</span>
|
||||||
|
Box,
|
||||||
|
Typography,
|
||||||
|
Paper,
|
||||||
|
Card,
|
||||||
|
CardContent,
|
||||||
|
Chip,
|
||||||
|
List,
|
||||||
|
ListItem,
|
||||||
|
ListItemText,
|
||||||
|
Alert,
|
||||||
|
CircularProgress,
|
||||||
|
} from '@mui/material'
|
||||||
|
<span class="cstat-no" title="statement not covered" >import {</span>
|
||||||
|
Person,
|
||||||
|
LocationOn,
|
||||||
|
Home,
|
||||||
|
Description,
|
||||||
|
Language,
|
||||||
|
Verified,
|
||||||
|
} from '@mui/icons-material'
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { useAppDispatch, useAppSelector } from '../store'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { extractDocument } from '../store/documentSlice'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { Layout } from '../components/Layout'</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export default function ExtractionView() {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const dispatch = useAppDispatch()</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const { currentDocument, extractionResult, loading } = useAppSelector(</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > (state) => state.document</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > )</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > useEffect(() => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (currentDocument && !extractionResult) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > dispatch(extractDocument(currentDocument.id))</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }, [currentDocument, extractionResult, dispatch])</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (!currentDocument) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="info"></span>
|
||||||
|
Veuillez d'abord téléverser et sélectionner un document.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (loading) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', justifyContent: 'center', mt: 4 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CircularProgress /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography sx={{ ml: 2 }}>Extraction en cours...</Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > if (!extractionResult) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="warning"></span>
|
||||||
|
Aucun résultat d'extraction disponible.
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h4" gutterBottom></span>
|
||||||
|
Extraction des données
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', flexDirection: 'column', gap: 3 }}></span>
|
||||||
|
{/* Informations générales */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Paper sx={{ p: 2 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
Informations générales
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', gap: 1, flexWrap: 'wrap' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > icon={<Language />}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={`Langue: ${extractionResult.language}`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color="primary"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > icon={<Description />}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={`Type: ${extractionResult.documentType}`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color="secondary"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > icon={<Verified />}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={`Confiance: ${(extractionResult.confidence * 100).toFixed(1)}%`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={extractionResult.confidence > 0.8 ? 'success' : 'warning'}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Paper></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', gap: 3, flexWrap: 'wrap' }}></span>
|
||||||
|
{/* Identités */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ flex: '1 1 300px' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Person sx={{ mr: 1, verticalAlign: 'middle' }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Identités ({extractionResult.identities?.length || 0})</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <List dense></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {(extractionResult.identities || []).map((identity, index) => (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItem key={index}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemText</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > primary={</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > identity.type === 'person'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ? `${identity.firstName} ${identity.lastName}`</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > : identity.companyName</span>
|
||||||
|
}
|
||||||
|
<span class="cstat-no" title="statement not covered" > secondary={</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="caption" display="block"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Type: {identity.type}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {identity.birthDate && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="caption" display="block"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Naissance: {identity.birthDate}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > {identity.nationality && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="caption" display="block"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Nationalité: {identity.nationality}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="caption" display="block"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Confiance: {(identity.confidence * 100).toFixed(1)}%</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
}
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </List></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
|
||||||
|
{/* Adresses */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ flex: '1 1 300px' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <LocationOn sx={{ mr: 1, verticalAlign: 'middle' }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Adresses ({extractionResult.addresses?.length || 0})</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <List dense></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {(extractionResult.addresses || []).map((address, index) => (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItem key={index}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemText</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > primary={`${address.street}, ${address.city}`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > secondary={`${address.postalCode} ${address.country}`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </List></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ display: 'flex', gap: 3, flexWrap: 'wrap' }}></span>
|
||||||
|
{/* Biens */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ flex: '1 1 300px' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Home sx={{ mr: 1, verticalAlign: 'middle' }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Biens ({extractionResult.properties?.length || 0})</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <List dense></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {(extractionResult.properties || []).map((property, index) => (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItem key={index}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemText</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > primary={`${property.type} - ${property.address.city}`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > secondary={</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="caption" display="block"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {property.address.street}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {property.surface && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="caption" display="block"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Surface: {property.surface} m²</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > {property.cadastralReference && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="caption" display="block"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Cadastre: {property.cadastralReference}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
}
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </List></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
|
||||||
|
{/* Contrats */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ flex: '1 1 300px' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Description sx={{ mr: 1, verticalAlign: 'middle' }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Contrats ({extractionResult.contracts?.length || 0})</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <List dense></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {(extractionResult.contracts || []).map((contract, index) => (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItem key={index}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemText</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > primary={`${contract.type} - ${contract.amount ? `${contract.amount}€` : 'Montant non spécifié'}`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > secondary={</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="caption" display="block"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Parties: {contract.parties.length}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {contract.date && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="caption" display="block"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Date: {contract.date}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="caption" display="block"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Clauses: {contract.clauses.length}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
}
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </List></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
|
||||||
|
{/* Signatures */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Signatures détectées ({extractionResult.signatures?.length || 0})</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <List dense></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {(extractionResult.signatures || []).map((signature, index) => (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItem key={index}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <ListItemText primary={signature} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </ListItem></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </List></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
|
||||||
|
{/* Texte extrait */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
Texte extrait
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Paper</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > sx={{</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > p: 2,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > bgcolor: 'grey.50',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > maxHeight: 300,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > overflow: 'auto',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }}</span>
|
||||||
|
>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2" sx={{ whiteSpace: 'pre-wrap' }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {extractionResult.text}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Paper></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </CardContent></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Card></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" >}</span></pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
595
coverage/4NK_IA_front/src/views/UploadView.tsx.html
Normal file
595
coverage/4NK_IA_front/src/views/UploadView.tsx.html
Normal file
@ -0,0 +1,595 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/views/UploadView.tsx</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> / <a href="index.html">4NK_IA_front/src/views</a> UploadView.tsx</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/142</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/1</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/142</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<pre><table class="coverage">
|
||||||
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||||
|
<a name='L2'></a><a href='#L2'>2</a>
|
||||||
|
<a name='L3'></a><a href='#L3'>3</a>
|
||||||
|
<a name='L4'></a><a href='#L4'>4</a>
|
||||||
|
<a name='L5'></a><a href='#L5'>5</a>
|
||||||
|
<a name='L6'></a><a href='#L6'>6</a>
|
||||||
|
<a name='L7'></a><a href='#L7'>7</a>
|
||||||
|
<a name='L8'></a><a href='#L8'>8</a>
|
||||||
|
<a name='L9'></a><a href='#L9'>9</a>
|
||||||
|
<a name='L10'></a><a href='#L10'>10</a>
|
||||||
|
<a name='L11'></a><a href='#L11'>11</a>
|
||||||
|
<a name='L12'></a><a href='#L12'>12</a>
|
||||||
|
<a name='L13'></a><a href='#L13'>13</a>
|
||||||
|
<a name='L14'></a><a href='#L14'>14</a>
|
||||||
|
<a name='L15'></a><a href='#L15'>15</a>
|
||||||
|
<a name='L16'></a><a href='#L16'>16</a>
|
||||||
|
<a name='L17'></a><a href='#L17'>17</a>
|
||||||
|
<a name='L18'></a><a href='#L18'>18</a>
|
||||||
|
<a name='L19'></a><a href='#L19'>19</a>
|
||||||
|
<a name='L20'></a><a href='#L20'>20</a>
|
||||||
|
<a name='L21'></a><a href='#L21'>21</a>
|
||||||
|
<a name='L22'></a><a href='#L22'>22</a>
|
||||||
|
<a name='L23'></a><a href='#L23'>23</a>
|
||||||
|
<a name='L24'></a><a href='#L24'>24</a>
|
||||||
|
<a name='L25'></a><a href='#L25'>25</a>
|
||||||
|
<a name='L26'></a><a href='#L26'>26</a>
|
||||||
|
<a name='L27'></a><a href='#L27'>27</a>
|
||||||
|
<a name='L28'></a><a href='#L28'>28</a>
|
||||||
|
<a name='L29'></a><a href='#L29'>29</a>
|
||||||
|
<a name='L30'></a><a href='#L30'>30</a>
|
||||||
|
<a name='L31'></a><a href='#L31'>31</a>
|
||||||
|
<a name='L32'></a><a href='#L32'>32</a>
|
||||||
|
<a name='L33'></a><a href='#L33'>33</a>
|
||||||
|
<a name='L34'></a><a href='#L34'>34</a>
|
||||||
|
<a name='L35'></a><a href='#L35'>35</a>
|
||||||
|
<a name='L36'></a><a href='#L36'>36</a>
|
||||||
|
<a name='L37'></a><a href='#L37'>37</a>
|
||||||
|
<a name='L38'></a><a href='#L38'>38</a>
|
||||||
|
<a name='L39'></a><a href='#L39'>39</a>
|
||||||
|
<a name='L40'></a><a href='#L40'>40</a>
|
||||||
|
<a name='L41'></a><a href='#L41'>41</a>
|
||||||
|
<a name='L42'></a><a href='#L42'>42</a>
|
||||||
|
<a name='L43'></a><a href='#L43'>43</a>
|
||||||
|
<a name='L44'></a><a href='#L44'>44</a>
|
||||||
|
<a name='L45'></a><a href='#L45'>45</a>
|
||||||
|
<a name='L46'></a><a href='#L46'>46</a>
|
||||||
|
<a name='L47'></a><a href='#L47'>47</a>
|
||||||
|
<a name='L48'></a><a href='#L48'>48</a>
|
||||||
|
<a name='L49'></a><a href='#L49'>49</a>
|
||||||
|
<a name='L50'></a><a href='#L50'>50</a>
|
||||||
|
<a name='L51'></a><a href='#L51'>51</a>
|
||||||
|
<a name='L52'></a><a href='#L52'>52</a>
|
||||||
|
<a name='L53'></a><a href='#L53'>53</a>
|
||||||
|
<a name='L54'></a><a href='#L54'>54</a>
|
||||||
|
<a name='L55'></a><a href='#L55'>55</a>
|
||||||
|
<a name='L56'></a><a href='#L56'>56</a>
|
||||||
|
<a name='L57'></a><a href='#L57'>57</a>
|
||||||
|
<a name='L58'></a><a href='#L58'>58</a>
|
||||||
|
<a name='L59'></a><a href='#L59'>59</a>
|
||||||
|
<a name='L60'></a><a href='#L60'>60</a>
|
||||||
|
<a name='L61'></a><a href='#L61'>61</a>
|
||||||
|
<a name='L62'></a><a href='#L62'>62</a>
|
||||||
|
<a name='L63'></a><a href='#L63'>63</a>
|
||||||
|
<a name='L64'></a><a href='#L64'>64</a>
|
||||||
|
<a name='L65'></a><a href='#L65'>65</a>
|
||||||
|
<a name='L66'></a><a href='#L66'>66</a>
|
||||||
|
<a name='L67'></a><a href='#L67'>67</a>
|
||||||
|
<a name='L68'></a><a href='#L68'>68</a>
|
||||||
|
<a name='L69'></a><a href='#L69'>69</a>
|
||||||
|
<a name='L70'></a><a href='#L70'>70</a>
|
||||||
|
<a name='L71'></a><a href='#L71'>71</a>
|
||||||
|
<a name='L72'></a><a href='#L72'>72</a>
|
||||||
|
<a name='L73'></a><a href='#L73'>73</a>
|
||||||
|
<a name='L74'></a><a href='#L74'>74</a>
|
||||||
|
<a name='L75'></a><a href='#L75'>75</a>
|
||||||
|
<a name='L76'></a><a href='#L76'>76</a>
|
||||||
|
<a name='L77'></a><a href='#L77'>77</a>
|
||||||
|
<a name='L78'></a><a href='#L78'>78</a>
|
||||||
|
<a name='L79'></a><a href='#L79'>79</a>
|
||||||
|
<a name='L80'></a><a href='#L80'>80</a>
|
||||||
|
<a name='L81'></a><a href='#L81'>81</a>
|
||||||
|
<a name='L82'></a><a href='#L82'>82</a>
|
||||||
|
<a name='L83'></a><a href='#L83'>83</a>
|
||||||
|
<a name='L84'></a><a href='#L84'>84</a>
|
||||||
|
<a name='L85'></a><a href='#L85'>85</a>
|
||||||
|
<a name='L86'></a><a href='#L86'>86</a>
|
||||||
|
<a name='L87'></a><a href='#L87'>87</a>
|
||||||
|
<a name='L88'></a><a href='#L88'>88</a>
|
||||||
|
<a name='L89'></a><a href='#L89'>89</a>
|
||||||
|
<a name='L90'></a><a href='#L90'>90</a>
|
||||||
|
<a name='L91'></a><a href='#L91'>91</a>
|
||||||
|
<a name='L92'></a><a href='#L92'>92</a>
|
||||||
|
<a name='L93'></a><a href='#L93'>93</a>
|
||||||
|
<a name='L94'></a><a href='#L94'>94</a>
|
||||||
|
<a name='L95'></a><a href='#L95'>95</a>
|
||||||
|
<a name='L96'></a><a href='#L96'>96</a>
|
||||||
|
<a name='L97'></a><a href='#L97'>97</a>
|
||||||
|
<a name='L98'></a><a href='#L98'>98</a>
|
||||||
|
<a name='L99'></a><a href='#L99'>99</a>
|
||||||
|
<a name='L100'></a><a href='#L100'>100</a>
|
||||||
|
<a name='L101'></a><a href='#L101'>101</a>
|
||||||
|
<a name='L102'></a><a href='#L102'>102</a>
|
||||||
|
<a name='L103'></a><a href='#L103'>103</a>
|
||||||
|
<a name='L104'></a><a href='#L104'>104</a>
|
||||||
|
<a name='L105'></a><a href='#L105'>105</a>
|
||||||
|
<a name='L106'></a><a href='#L106'>106</a>
|
||||||
|
<a name='L107'></a><a href='#L107'>107</a>
|
||||||
|
<a name='L108'></a><a href='#L108'>108</a>
|
||||||
|
<a name='L109'></a><a href='#L109'>109</a>
|
||||||
|
<a name='L110'></a><a href='#L110'>110</a>
|
||||||
|
<a name='L111'></a><a href='#L111'>111</a>
|
||||||
|
<a name='L112'></a><a href='#L112'>112</a>
|
||||||
|
<a name='L113'></a><a href='#L113'>113</a>
|
||||||
|
<a name='L114'></a><a href='#L114'>114</a>
|
||||||
|
<a name='L115'></a><a href='#L115'>115</a>
|
||||||
|
<a name='L116'></a><a href='#L116'>116</a>
|
||||||
|
<a name='L117'></a><a href='#L117'>117</a>
|
||||||
|
<a name='L118'></a><a href='#L118'>118</a>
|
||||||
|
<a name='L119'></a><a href='#L119'>119</a>
|
||||||
|
<a name='L120'></a><a href='#L120'>120</a>
|
||||||
|
<a name='L121'></a><a href='#L121'>121</a>
|
||||||
|
<a name='L122'></a><a href='#L122'>122</a>
|
||||||
|
<a name='L123'></a><a href='#L123'>123</a>
|
||||||
|
<a name='L124'></a><a href='#L124'>124</a>
|
||||||
|
<a name='L125'></a><a href='#L125'>125</a>
|
||||||
|
<a name='L126'></a><a href='#L126'>126</a>
|
||||||
|
<a name='L127'></a><a href='#L127'>127</a>
|
||||||
|
<a name='L128'></a><a href='#L128'>128</a>
|
||||||
|
<a name='L129'></a><a href='#L129'>129</a>
|
||||||
|
<a name='L130'></a><a href='#L130'>130</a>
|
||||||
|
<a name='L131'></a><a href='#L131'>131</a>
|
||||||
|
<a name='L132'></a><a href='#L132'>132</a>
|
||||||
|
<a name='L133'></a><a href='#L133'>133</a>
|
||||||
|
<a name='L134'></a><a href='#L134'>134</a>
|
||||||
|
<a name='L135'></a><a href='#L135'>135</a>
|
||||||
|
<a name='L136'></a><a href='#L136'>136</a>
|
||||||
|
<a name='L137'></a><a href='#L137'>137</a>
|
||||||
|
<a name='L138'></a><a href='#L138'>138</a>
|
||||||
|
<a name='L139'></a><a href='#L139'>139</a>
|
||||||
|
<a name='L140'></a><a href='#L140'>140</a>
|
||||||
|
<a name='L141'></a><a href='#L141'>141</a>
|
||||||
|
<a name='L142'></a><a href='#L142'>142</a>
|
||||||
|
<a name='L143'></a><a href='#L143'>143</a>
|
||||||
|
<a name='L144'></a><a href='#L144'>144</a>
|
||||||
|
<a name='L145'></a><a href='#L145'>145</a>
|
||||||
|
<a name='L146'></a><a href='#L146'>146</a>
|
||||||
|
<a name='L147'></a><a href='#L147'>147</a>
|
||||||
|
<a name='L148'></a><a href='#L148'>148</a>
|
||||||
|
<a name='L149'></a><a href='#L149'>149</a>
|
||||||
|
<a name='L150'></a><a href='#L150'>150</a>
|
||||||
|
<a name='L151'></a><a href='#L151'>151</a>
|
||||||
|
<a name='L152'></a><a href='#L152'>152</a>
|
||||||
|
<a name='L153'></a><a href='#L153'>153</a>
|
||||||
|
<a name='L154'></a><a href='#L154'>154</a>
|
||||||
|
<a name='L155'></a><a href='#L155'>155</a>
|
||||||
|
<a name='L156'></a><a href='#L156'>156</a>
|
||||||
|
<a name='L157'></a><a href='#L157'>157</a>
|
||||||
|
<a name='L158'></a><a href='#L158'>158</a>
|
||||||
|
<a name='L159'></a><a href='#L159'>159</a>
|
||||||
|
<a name='L160'></a><a href='#L160'>160</a>
|
||||||
|
<a name='L161'></a><a href='#L161'>161</a>
|
||||||
|
<a name='L162'></a><a href='#L162'>162</a>
|
||||||
|
<a name='L163'></a><a href='#L163'>163</a>
|
||||||
|
<a name='L164'></a><a href='#L164'>164</a>
|
||||||
|
<a name='L165'></a><a href='#L165'>165</a>
|
||||||
|
<a name='L166'></a><a href='#L166'>166</a>
|
||||||
|
<a name='L167'></a><a href='#L167'>167</a>
|
||||||
|
<a name='L168'></a><a href='#L168'>168</a>
|
||||||
|
<a name='L169'></a><a href='#L169'>169</a>
|
||||||
|
<a name='L170'></a><a href='#L170'>170</a>
|
||||||
|
<a name='L171'></a><a href='#L171'>171</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span>
|
||||||
|
<span class="cline-any cline-no"> </span>
|
||||||
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { useCallback, useState } from 'react'<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { useDropzone } from 'react-dropzone'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { Box, Typography, Paper, CircularProgress, Alert, Button, Chip, Grid } from '@mui/material'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import {</span>
|
||||||
|
CloudUpload,
|
||||||
|
CheckCircle,
|
||||||
|
Error,
|
||||||
|
HourglassEmpty,
|
||||||
|
Visibility,
|
||||||
|
} from '@mui/icons-material'
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { useAppDispatch, useAppSelector } from '../store'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { uploadDocument } from '../store/documentSlice'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { Layout } from '../components/Layout'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" >import { FilePreview } from '../components/FilePreview'</span>
|
||||||
|
import type { Document } from '../types'
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" >export default function UploadView() {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const dispatch = useAppDispatch()</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const { documents, error } = useAppSelector((state) => state.document)</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > const [previewDocument, setPreviewDocument] = useState<Document | null>(null)</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const onDrop = useCallback(</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > (acceptedFiles: File[]) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > acceptedFiles.forEach((file) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > dispatch(uploadDocument(file))</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > })</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > [dispatch]</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > )</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const { getRootProps, getInputProps, isDragActive } = useDropzone({</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > onDrop,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > accept: {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > 'application/pdf': ['.pdf'],</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > 'image/*': ['.png', '.jpg', '.jpeg', '.tiff'],</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > 'text/plain': ['.txt'],</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > 'text/markdown': ['.md'],</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > 'application/vnd.openxmlformats-officedocument.wordprocessingml.document': ['.docx'],</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > multiple: true,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > })</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const getStatusIcon = (status: string) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > switch (status) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > case 'completed':</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return <CheckCircle color="success" /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > case 'error':</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return <Error color="error" /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > case 'processing':</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return <CircularProgress size={20} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > default:</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return <HourglassEmpty color="action" /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > const getStatusColor = (status: string) => {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > switch (status) {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > case 'completed':</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return 'success'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > case 'error':</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return 'error'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > case 'processing':</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return 'warning'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > default:</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > return 'default'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }</span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > return (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Layout></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h4" gutterBottom></span>
|
||||||
|
Téléversement de documents
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Paper</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {...getRootProps()}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > sx={{</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > p: 4,</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > textAlign: 'center',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > cursor: 'pointer',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > border: '2px dashed',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > borderColor: isDragActive ? 'primary.main' : 'grey.300',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > bgcolor: isDragActive ? 'action.hover' : 'background.paper',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > '&:hover': {</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > borderColor: 'primary.main',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > bgcolor: 'action.hover',</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > },</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > }}</span>
|
||||||
|
>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <input {...getInputProps()} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <CloudUpload sx={{ fontSize: 48, color: 'primary.main', mb: 2 }} /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {isDragActive</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ? 'Déposez les fichiers ici...'</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > : 'Glissez-déposez vos documents ou cliquez pour sélectionner'}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="body2" color="text.secondary"></span>
|
||||||
|
Formats acceptés: PDF, PNG, JPG, JPEG, TIFF, TXT, MD, DOCX
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Paper></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > {error && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Alert severity="error" sx={{ mt: 2 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {error}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Alert></span>
|
||||||
|
)}
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > {documents.length > 0 && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box sx={{ mt: 3 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="h6" gutterBottom></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > Documents téléversés ({documents.length})</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Grid container spacing={2}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {documents.map((doc, index) => (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Grid size={{ xs: 12, md: 6 }} key={`${doc.id}-${index}`}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Paper sx={{ p: 2 }}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box display="flex" justifyContent="space-between" alignItems="center" mb={2}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box display="flex" alignItems="center" gap={1}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {getStatusIcon(doc.status)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Typography variant="subtitle1" noWrap></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > {doc.name}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Typography></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box display="flex" gap={1}></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Button</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > size="small"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > startIcon={<Visibility />}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > onClick={() => setPreviewDocument(doc)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > disabled={doc.status !== 'completed'}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ></span>
|
||||||
|
Aperçu
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Button></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Box display="flex" gap={1} flexWrap="wrap"></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={doc.type}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > size="small"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={doc.status}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > size="small"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > color={getStatusColor(doc.status) as 'success' | 'error' | 'warning' | 'default'}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <Chip</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > label={`${(doc.size / 1024 / 1024).toFixed(2)} MB`}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > size="small"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > variant="outlined"</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Paper></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Grid></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > ))}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Grid></span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Box></span>
|
||||||
|
)}
|
||||||
|
|
||||||
|
{/* Aperçu du document */}
|
||||||
|
<span class="cstat-no" title="statement not covered" > {previewDocument && (</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > <FilePreview</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > document={previewDocument}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > onClose={() => setPreviewDocument(null)}</span>
|
||||||
|
<span class="cstat-no" title="statement not covered" > /></span>
|
||||||
|
)}
|
||||||
|
<span class="cstat-no" title="statement not covered" > </Layout></span>
|
||||||
|
)
|
||||||
|
<span class="cstat-no" title="statement not covered" >}</span>
|
||||||
|
</pre></td></tr></table></pre>
|
||||||
|
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
176
coverage/4NK_IA_front/src/views/index.html
Normal file
176
coverage/4NK_IA_front/src/views/index.html
Normal file
@ -0,0 +1,176 @@
|
|||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>Code coverage report for 4NK_IA_front/src/views</title>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="stylesheet" href="../../../prettify.css" />
|
||||||
|
<link rel="stylesheet" href="../../../base.css" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<style type='text/css'>
|
||||||
|
.coverage-summary .sorter {
|
||||||
|
background-image: url(../../../sort-arrow-sprite.png);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class='wrapper'>
|
||||||
|
<div class='pad1'>
|
||||||
|
<h1><a href="../../../index.html">All files</a> 4NK_IA_front/src/views</h1>
|
||||||
|
<div class='clearfix'>
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Statements</span>
|
||||||
|
<span class='fraction'>0/978</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Branches</span>
|
||||||
|
<span class='fraction'>0/5</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Functions</span>
|
||||||
|
<span class='fraction'>0/5</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class='fl pad1y space-right2'>
|
||||||
|
<span class="strong">0% </span>
|
||||||
|
<span class="quiet">Lines</span>
|
||||||
|
<span class='fraction'>0/978</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<p class="quiet">
|
||||||
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||||
|
</p>
|
||||||
|
<template id="filterTemplate">
|
||||||
|
<div class="quiet">
|
||||||
|
Filter:
|
||||||
|
<input type="search" id="fileSearch">
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
<div class='status-line low'></div>
|
||||||
|
<div class="pad1">
|
||||||
|
<table class="coverage-summary">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
||||||
|
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
||||||
|
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
||||||
|
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
||||||
|
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
||||||
|
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
||||||
|
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody><tr>
|
||||||
|
<td class="file low" data-value="AnalyseView.tsx"><a href="AnalyseView.tsx.html">AnalyseView.tsx</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="191" class="abs low">0/191</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="191" class="abs low">0/191</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="ConseilView.tsx"><a href="ConseilView.tsx.html">ConseilView.tsx</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="187" class="abs low">0/187</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="187" class="abs low">0/187</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="ContexteView.tsx"><a href="ContexteView.tsx.html">ContexteView.tsx</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="228" class="abs low">0/228</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="228" class="abs low">0/228</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="ExtractionView.tsx"><a href="ExtractionView.tsx.html">ExtractionView.tsx</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="230" class="abs low">0/230</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="230" class="abs low">0/230</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="UploadView.tsx"><a href="UploadView.tsx.html">UploadView.tsx</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="142" class="abs low">0/142</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="142" class="abs low">0/142</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class='push'></div><!-- for sticky footer -->
|
||||||
|
</div><!-- /wrapper -->
|
||||||
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
|
Code coverage generated by
|
||||||
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
|
at 2025-09-11T09:40:00.754Z
|
||||||
|
</div>
|
||||||
|
<script src="../../../prettify.js"></script>
|
||||||
|
<script>
|
||||||
|
window.onload = function () {
|
||||||
|
prettyPrint();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script src="../../../sorter.js"></script>
|
||||||
|
<script src="../../../block-navigation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
1814
coverage/clover.xml
1814
coverage/clover.xml
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@ -25,28 +25,28 @@
|
|||||||
<div class='fl pad1y space-right2'>
|
<div class='fl pad1y space-right2'>
|
||||||
<span class="strong">0% </span>
|
<span class="strong">0% </span>
|
||||||
<span class="quiet">Statements</span>
|
<span class="quiet">Statements</span>
|
||||||
<span class='fraction'>0/36</span>
|
<span class='fraction'>0/1753</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class='fl pad1y space-right2'>
|
<div class='fl pad1y space-right2'>
|
||||||
<span class="strong">0% </span>
|
<span class="strong">5.55% </span>
|
||||||
<span class="quiet">Branches</span>
|
<span class="quiet">Branches</span>
|
||||||
<span class='fraction'>0/2</span>
|
<span class='fraction'>1/18</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class='fl pad1y space-right2'>
|
<div class='fl pad1y space-right2'>
|
||||||
<span class="strong">0% </span>
|
<span class="strong">5.55% </span>
|
||||||
<span class="quiet">Functions</span>
|
<span class="quiet">Functions</span>
|
||||||
<span class='fraction'>0/2</span>
|
<span class='fraction'>1/18</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class='fl pad1y space-right2'>
|
<div class='fl pad1y space-right2'>
|
||||||
<span class="strong">0% </span>
|
<span class="strong">0% </span>
|
||||||
<span class="quiet">Lines</span>
|
<span class="quiet">Lines</span>
|
||||||
<span class='fraction'>0/36</span>
|
<span class='fraction'>0/1753</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
@ -79,33 +79,138 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody><tr>
|
<tbody><tr>
|
||||||
<td class="file low" data-value="App.tsx"><a href="App.tsx.html">App.tsx</a></td>
|
<td class="file low" data-value="4NK_IA_front"><a href="4NK_IA_front/index.html">4NK_IA_front</a></td>
|
||||||
<td data-value="0" class="pic low">
|
<td data-value="0" class="pic low">
|
||||||
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
</td>
|
</td>
|
||||||
<td data-value="0" class="pct low">0%</td>
|
<td data-value="0" class="pct low">0%</td>
|
||||||
<td data-value="27" class="abs low">0/27</td>
|
<td data-value="57" class="abs low">0/57</td>
|
||||||
<td data-value="0" class="pct low">0%</td>
|
<td data-value="0" class="pct low">0%</td>
|
||||||
<td data-value="1" class="abs low">0/1</td>
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
<td data-value="0" class="pct low">0%</td>
|
<td data-value="0" class="pct low">0%</td>
|
||||||
<td data-value="1" class="abs low">0/1</td>
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
<td data-value="0" class="pct low">0%</td>
|
<td data-value="0" class="pct low">0%</td>
|
||||||
<td data-value="27" class="abs low">0/27</td>
|
<td data-value="57" class="abs low">0/57</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="file low" data-value="main.tsx"><a href="main.tsx.html">main.tsx</a></td>
|
<td class="file low" data-value="4NK_IA_front/src"><a href="4NK_IA_front/src/index.html">4NK_IA_front/src</a></td>
|
||||||
<td data-value="0" class="pic low">
|
<td data-value="0" class="pic low">
|
||||||
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
</td>
|
</td>
|
||||||
<td data-value="0" class="pct low">0%</td>
|
<td data-value="0" class="pct low">0%</td>
|
||||||
<td data-value="9" class="abs low">0/9</td>
|
<td data-value="24" class="abs low">0/24</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="2" class="abs low">0/2</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="2" class="abs low">0/2</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="24" class="abs low">0/24</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="4NK_IA_front/src/components"><a href="4NK_IA_front/src/components/index.html">4NK_IA_front/src/components</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="227" class="abs low">0/227</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="3" class="abs low">0/3</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="3" class="abs low">0/3</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="227" class="abs low">0/227</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="4NK_IA_front/src/router"><a href="4NK_IA_front/src/router/index.html">4NK_IA_front/src/router</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="23" class="abs low">0/23</td>
|
||||||
<td data-value="0" class="pct low">0%</td>
|
<td data-value="0" class="pct low">0%</td>
|
||||||
<td data-value="1" class="abs low">0/1</td>
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
<td data-value="0" class="pct low">0%</td>
|
<td data-value="0" class="pct low">0%</td>
|
||||||
<td data-value="1" class="abs low">0/1</td>
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
<td data-value="0" class="pct low">0%</td>
|
<td data-value="0" class="pct low">0%</td>
|
||||||
<td data-value="9" class="abs low">0/9</td>
|
<td data-value="23" class="abs low">0/23</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="4NK_IA_front/src/services"><a href="4NK_IA_front/src/services/index.html">4NK_IA_front/src/services</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="266" class="abs low">0/266</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="266" class="abs low">0/266</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="4NK_IA_front/src/store"><a href="4NK_IA_front/src/store/index.html">4NK_IA_front/src/store</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="114" class="abs low">0/114</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="3" class="abs low">0/3</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="3" class="abs low">0/3</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="114" class="abs low">0/114</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="4NK_IA_front/src/theme"><a href="4NK_IA_front/src/theme/index.html">4NK_IA_front/src/theme</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="64" class="abs low">0/64</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="1" class="abs low">0/1</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="64" class="abs low">0/64</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file empty" data-value="4NK_IA_front/src/types"><a href="4NK_IA_front/src/types/index.html">4NK_IA_front/src/types</a></td>
|
||||||
|
<td data-value="0" class="pic empty">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct empty">0%</td>
|
||||||
|
<td data-value="0" class="abs empty">0/0</td>
|
||||||
|
<td data-value="0" class="pct empty">0%</td>
|
||||||
|
<td data-value="1" class="abs empty">1/1</td>
|
||||||
|
<td data-value="0" class="pct empty">0%</td>
|
||||||
|
<td data-value="1" class="abs empty">1/1</td>
|
||||||
|
<td data-value="0" class="pct empty">0%</td>
|
||||||
|
<td data-value="0" class="abs empty">0/0</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="file low" data-value="4NK_IA_front/src/views"><a href="4NK_IA_front/src/views/index.html">4NK_IA_front/src/views</a></td>
|
||||||
|
<td data-value="0" class="pic low">
|
||||||
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
||||||
|
</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="978" class="abs low">0/978</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="5" class="abs low">0/5</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="5" class="abs low">0/5</td>
|
||||||
|
<td data-value="0" class="pct low">0%</td>
|
||||||
|
<td data-value="978" class="abs low">0/978</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
@ -116,7 +221,7 @@
|
|||||||
<div class='footer quiet pad2 space-top1 center small'>
|
<div class='footer quiet pad2 space-top1 center small'>
|
||||||
Code coverage generated by
|
Code coverage generated by
|
||||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||||
at 2025-09-10T15:15:07.789Z
|
at 2025-09-11T09:40:00.754Z
|
||||||
</div>
|
</div>
|
||||||
<script src="prettify.js"></script>
|
<script src="prettify.js"></script>
|
||||||
<script>
|
<script>
|
||||||
|
|||||||
@ -6,7 +6,7 @@ import tseslint from 'typescript-eslint'
|
|||||||
import { globalIgnores } from 'eslint/config'
|
import { globalIgnores } from 'eslint/config'
|
||||||
|
|
||||||
export default tseslint.config([
|
export default tseslint.config([
|
||||||
globalIgnores(['dist']),
|
globalIgnores(['dist', 'coverage']),
|
||||||
{
|
{
|
||||||
files: ['**/*.{ts,tsx}'],
|
files: ['**/*.{ts,tsx}'],
|
||||||
extends: [
|
extends: [
|
||||||
|
|||||||
4
package-lock.json
generated
4
package-lock.json
generated
@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "4nk-ia-front4nk",
|
"name": "4nk-ia-front4nk",
|
||||||
"version": "0.1.0",
|
"version": "0.1.1",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "4nk-ia-front4nk",
|
"name": "4nk-ia-front4nk",
|
||||||
"version": "0.1.0",
|
"version": "0.1.1",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@emotion/react": "^11.14.0",
|
"@emotion/react": "^11.14.0",
|
||||||
"@emotion/styled": "^11.14.1",
|
"@emotion/styled": "^11.14.1",
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "4nk-ia-front4nk",
|
"name": "4nk-ia-front4nk",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "0.1.0",
|
"version": "0.1.1",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite",
|
"dev": "vite",
|
||||||
|
|||||||
@ -52,7 +52,7 @@ export const FilePreview: React.FC<FilePreviewProps> = ({ document, onClose }) =
|
|||||||
|
|
||||||
const handleDownload = () => {
|
const handleDownload = () => {
|
||||||
if (document.previewUrl) {
|
if (document.previewUrl) {
|
||||||
const link = document.createElement('a')
|
const link = window.document.createElement('a')
|
||||||
link.href = document.previewUrl
|
link.href = document.previewUrl
|
||||||
link.download = document.name
|
link.download = document.name
|
||||||
link.click()
|
link.click()
|
||||||
|
|||||||
@ -105,7 +105,7 @@ export const documentApi = {
|
|||||||
postalCode: "75001",
|
postalCode: "75001",
|
||||||
country: "France"
|
country: "France"
|
||||||
})) || [],
|
})) || [],
|
||||||
properties: results.entities?.properties?.map((prop: string, index: number) => ({
|
properties: results.entities?.properties?.map((_propertyName: string, index: number) => ({
|
||||||
id: `prop-${index}`,
|
id: `prop-${index}`,
|
||||||
type: "apartment" as const,
|
type: "apartment" as const,
|
||||||
address: {
|
address: {
|
||||||
@ -129,7 +129,7 @@ export const documentApi = {
|
|||||||
signatures: results.entities?.persons || [],
|
signatures: results.entities?.persons || [],
|
||||||
confidence: results.verification_score || 0.85
|
confidence: results.verification_score || 0.85
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch {
|
||||||
// Données de démonstration
|
// Données de démonstration
|
||||||
return {
|
return {
|
||||||
documentId,
|
documentId,
|
||||||
@ -191,7 +191,7 @@ export const documentApi = {
|
|||||||
try {
|
try {
|
||||||
const { data } = await apiClient.get<AnalysisResult>(`/api/documents/${documentId}/analyze`)
|
const { data } = await apiClient.get<AnalysisResult>(`/api/documents/${documentId}/analyze`)
|
||||||
return data
|
return data
|
||||||
} catch (error) {
|
} catch {
|
||||||
// Données de démonstration
|
// Données de démonstration
|
||||||
return {
|
return {
|
||||||
documentId,
|
documentId,
|
||||||
@ -213,7 +213,7 @@ export const documentApi = {
|
|||||||
try {
|
try {
|
||||||
const { data } = await apiClient.get<ContextResult>(`/api/documents/${documentId}/context`)
|
const { data } = await apiClient.get<ContextResult>(`/api/documents/${documentId}/context`)
|
||||||
return data
|
return data
|
||||||
} catch (error) {
|
} catch {
|
||||||
// Données de démonstration
|
// Données de démonstration
|
||||||
return {
|
return {
|
||||||
documentId,
|
documentId,
|
||||||
@ -232,7 +232,7 @@ export const documentApi = {
|
|||||||
try {
|
try {
|
||||||
const { data } = await apiClient.get<ConseilResult>(`/api/documents/${documentId}/conseil`)
|
const { data } = await apiClient.get<ConseilResult>(`/api/documents/${documentId}/conseil`)
|
||||||
return data
|
return data
|
||||||
} catch (error) {
|
} catch {
|
||||||
// Données de démonstration
|
// Données de démonstration
|
||||||
return {
|
return {
|
||||||
documentId,
|
documentId,
|
||||||
|
|||||||
@ -78,11 +78,11 @@ export interface AnalysisResult {
|
|||||||
|
|
||||||
export interface ContextResult {
|
export interface ContextResult {
|
||||||
documentId: string
|
documentId: string
|
||||||
cadastreData?: any
|
cadastreData?: Record<string, unknown>
|
||||||
georisquesData?: any
|
georisquesData?: Record<string, unknown>
|
||||||
geofoncierData?: any
|
geofoncierData?: Record<string, unknown>
|
||||||
bodaccData?: any
|
bodaccData?: Record<string, unknown>
|
||||||
infogreffeData?: any
|
infogreffeData?: Record<string, unknown>
|
||||||
lastUpdated: Date
|
lastUpdated: Date
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -22,6 +22,7 @@ import {
|
|||||||
Assessment,
|
Assessment,
|
||||||
Info,
|
Info,
|
||||||
} from '@mui/icons-material'
|
} from '@mui/icons-material'
|
||||||
|
import type { ChipProps, LinearProgressProps } from '@mui/material'
|
||||||
import { useAppDispatch, useAppSelector } from '../store'
|
import { useAppDispatch, useAppSelector } from '../store'
|
||||||
import { analyzeDocument } from '../store/documentSlice'
|
import { analyzeDocument } from '../store/documentSlice'
|
||||||
import { Layout } from '../components/Layout'
|
import { Layout } from '../components/Layout'
|
||||||
@ -69,7 +70,7 @@ export default function AnalyseView() {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
const getScoreColor = (score: number) => {
|
const getScoreColor = (score: number): ChipProps['color'] => {
|
||||||
if (score >= 0.8) return 'success'
|
if (score >= 0.8) return 'success'
|
||||||
if (score >= 0.6) return 'warning'
|
if (score >= 0.6) return 'warning'
|
||||||
return 'error'
|
return 'error'
|
||||||
@ -97,7 +98,7 @@ export default function AnalyseView() {
|
|||||||
<Chip
|
<Chip
|
||||||
icon={<Assessment />}
|
icon={<Assessment />}
|
||||||
label={`Score de vraisemblance: ${(analysisResult.credibilityScore * 100).toFixed(1)}%`}
|
label={`Score de vraisemblance: ${(analysisResult.credibilityScore * 100).toFixed(1)}%`}
|
||||||
color={getScoreColor(analysisResult.credibilityScore) as any}
|
color={getScoreColor(analysisResult.credibilityScore)}
|
||||||
variant="filled"
|
variant="filled"
|
||||||
/>
|
/>
|
||||||
<Chip
|
<Chip
|
||||||
@ -201,7 +202,7 @@ export default function AnalyseView() {
|
|||||||
<LinearProgress
|
<LinearProgress
|
||||||
variant="determinate"
|
variant="determinate"
|
||||||
value={analysisResult.credibilityScore * 100}
|
value={analysisResult.credibilityScore * 100}
|
||||||
color={getScoreColor(analysisResult.credibilityScore) as any}
|
color={getScoreColor(analysisResult.credibilityScore) as LinearProgressProps['color']}
|
||||||
sx={{ height: 10, borderRadius: 5 }}
|
sx={{ height: 10, borderRadius: 5 }}
|
||||||
/>
|
/>
|
||||||
<Typography variant="body2" color="text.secondary" sx={{ mt: 1 }}>
|
<Typography variant="body2" color="text.secondary" sx={{ mt: 1 }}>
|
||||||
|
|||||||
@ -22,6 +22,7 @@ import {
|
|||||||
Schedule,
|
Schedule,
|
||||||
Psychology,
|
Psychology,
|
||||||
} from '@mui/icons-material'
|
} from '@mui/icons-material'
|
||||||
|
import type { SvgIconProps } from '@mui/material'
|
||||||
import { useAppDispatch, useAppSelector } from '../store'
|
import { useAppDispatch, useAppSelector } from '../store'
|
||||||
import { getConseil } from '../store/documentSlice'
|
import { getConseil } from '../store/documentSlice'
|
||||||
import { Layout } from '../components/Layout'
|
import { Layout } from '../components/Layout'
|
||||||
@ -69,7 +70,7 @@ export default function ConseilView() {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
const getRiskColor = (risk: string) => {
|
const getRiskColor = (risk: string): SvgIconProps['color'] => {
|
||||||
if (risk.toLowerCase().includes('élevé') || risk.toLowerCase().includes('critique')) {
|
if (risk.toLowerCase().includes('élevé') || risk.toLowerCase().includes('critique')) {
|
||||||
return 'error'
|
return 'error'
|
||||||
}
|
}
|
||||||
@ -147,7 +148,7 @@ export default function ConseilView() {
|
|||||||
{conseilResult.risks.map((risk, index) => (
|
{conseilResult.risks.map((risk, index) => (
|
||||||
<ListItem key={index}>
|
<ListItem key={index}>
|
||||||
<ListItemIcon>
|
<ListItemIcon>
|
||||||
<Warning color={getRiskColor(risk) as any} />
|
<Warning color={getRiskColor(risk)} />
|
||||||
</ListItemIcon>
|
</ListItemIcon>
|
||||||
<ListItemText
|
<ListItemText
|
||||||
primary={risk}
|
primary={risk}
|
||||||
|
|||||||
@ -23,6 +23,7 @@ import {
|
|||||||
Business,
|
Business,
|
||||||
Home,
|
Home,
|
||||||
} from '@mui/icons-material'
|
} from '@mui/icons-material'
|
||||||
|
import type { ChipProps } from '@mui/material'
|
||||||
import { useAppDispatch, useAppSelector } from '../store'
|
import { useAppDispatch, useAppSelector } from '../store'
|
||||||
import { getContextData } from '../store/documentSlice'
|
import { getContextData } from '../store/documentSlice'
|
||||||
import { Layout } from '../components/Layout'
|
import { Layout } from '../components/Layout'
|
||||||
@ -74,7 +75,7 @@ export default function ContexteView() {
|
|||||||
return hasData ? <CheckCircle color="success" /> : <Error color="error" />
|
return hasData ? <CheckCircle color="success" /> : <Error color="error" />
|
||||||
}
|
}
|
||||||
|
|
||||||
const getStatusColor = (hasData: boolean) => {
|
const getStatusColor = (hasData: boolean): ChipProps['color'] => {
|
||||||
return hasData ? 'success' : 'error'
|
return hasData ? 'success' : 'error'
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -94,31 +95,31 @@ export default function ContexteView() {
|
|||||||
<Chip
|
<Chip
|
||||||
icon={getStatusIcon(!!contextResult.cadastreData)}
|
icon={getStatusIcon(!!contextResult.cadastreData)}
|
||||||
label="Cadastre"
|
label="Cadastre"
|
||||||
color={getStatusColor(!!contextResult.cadastreData) as any}
|
color={getStatusColor(!!contextResult.cadastreData)}
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
/>
|
/>
|
||||||
<Chip
|
<Chip
|
||||||
icon={getStatusIcon(!!contextResult.georisquesData)}
|
icon={getStatusIcon(!!contextResult.georisquesData)}
|
||||||
label="Géorisques"
|
label="Géorisques"
|
||||||
color={getStatusColor(!!contextResult.georisquesData) as any}
|
color={getStatusColor(!!contextResult.georisquesData)}
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
/>
|
/>
|
||||||
<Chip
|
<Chip
|
||||||
icon={getStatusIcon(!!contextResult.geofoncierData)}
|
icon={getStatusIcon(!!contextResult.geofoncierData)}
|
||||||
label="Géofoncier"
|
label="Géofoncier"
|
||||||
color={getStatusColor(!!contextResult.geofoncierData) as any}
|
color={getStatusColor(!!contextResult.geofoncierData)}
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
/>
|
/>
|
||||||
<Chip
|
<Chip
|
||||||
icon={getStatusIcon(!!contextResult.bodaccData)}
|
icon={getStatusIcon(!!contextResult.bodaccData)}
|
||||||
label="BODACC"
|
label="BODACC"
|
||||||
color={getStatusColor(!!contextResult.bodaccData) as any}
|
color={getStatusColor(!!contextResult.bodaccData)}
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
/>
|
/>
|
||||||
<Chip
|
<Chip
|
||||||
icon={getStatusIcon(!!contextResult.infogreffeData)}
|
icon={getStatusIcon(!!contextResult.infogreffeData)}
|
||||||
label="Infogreffe"
|
label="Infogreffe"
|
||||||
color={getStatusColor(!!contextResult.infogreffeData) as any}
|
color={getStatusColor(!!contextResult.infogreffeData)}
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
/>
|
/>
|
||||||
</Box>
|
</Box>
|
||||||
@ -135,7 +136,7 @@ export default function ContexteView() {
|
|||||||
<Typography variant="h6">Données cadastrales</Typography>
|
<Typography variant="h6">Données cadastrales</Typography>
|
||||||
<Chip
|
<Chip
|
||||||
label={contextResult.cadastreData ? 'Disponible' : 'Non disponible'}
|
label={contextResult.cadastreData ? 'Disponible' : 'Non disponible'}
|
||||||
color={getStatusColor(!!contextResult.cadastreData) as any}
|
color={getStatusColor(!!contextResult.cadastreData)}
|
||||||
size="small"
|
size="small"
|
||||||
sx={{ ml: 2 }}
|
sx={{ ml: 2 }}
|
||||||
/>
|
/>
|
||||||
@ -164,7 +165,7 @@ export default function ContexteView() {
|
|||||||
<Typography variant="h6">Données Géorisques</Typography>
|
<Typography variant="h6">Données Géorisques</Typography>
|
||||||
<Chip
|
<Chip
|
||||||
label={contextResult.georisquesData ? 'Disponible' : 'Non disponible'}
|
label={contextResult.georisquesData ? 'Disponible' : 'Non disponible'}
|
||||||
color={getStatusColor(!!contextResult.georisquesData) as any}
|
color={getStatusColor(!!contextResult.georisquesData)}
|
||||||
size="small"
|
size="small"
|
||||||
sx={{ ml: 2 }}
|
sx={{ ml: 2 }}
|
||||||
/>
|
/>
|
||||||
@ -193,7 +194,7 @@ export default function ContexteView() {
|
|||||||
<Typography variant="h6">Données Géofoncier</Typography>
|
<Typography variant="h6">Données Géofoncier</Typography>
|
||||||
<Chip
|
<Chip
|
||||||
label={contextResult.geofoncierData ? 'Disponible' : 'Non disponible'}
|
label={contextResult.geofoncierData ? 'Disponible' : 'Non disponible'}
|
||||||
color={getStatusColor(!!contextResult.geofoncierData) as any}
|
color={getStatusColor(!!contextResult.geofoncierData)}
|
||||||
size="small"
|
size="small"
|
||||||
sx={{ ml: 2 }}
|
sx={{ ml: 2 }}
|
||||||
/>
|
/>
|
||||||
@ -222,7 +223,7 @@ export default function ContexteView() {
|
|||||||
<Typography variant="h6">Données BODACC</Typography>
|
<Typography variant="h6">Données BODACC</Typography>
|
||||||
<Chip
|
<Chip
|
||||||
label={contextResult.bodaccData ? 'Disponible' : 'Non disponible'}
|
label={contextResult.bodaccData ? 'Disponible' : 'Non disponible'}
|
||||||
color={getStatusColor(!!contextResult.bodaccData) as any}
|
color={getStatusColor(!!contextResult.bodaccData)}
|
||||||
size="small"
|
size="small"
|
||||||
sx={{ ml: 2 }}
|
sx={{ ml: 2 }}
|
||||||
/>
|
/>
|
||||||
@ -251,7 +252,7 @@ export default function ContexteView() {
|
|||||||
<Typography variant="h6">Données Infogreffe</Typography>
|
<Typography variant="h6">Données Infogreffe</Typography>
|
||||||
<Chip
|
<Chip
|
||||||
label={contextResult.infogreffeData ? 'Disponible' : 'Non disponible'}
|
label={contextResult.infogreffeData ? 'Disponible' : 'Non disponible'}
|
||||||
color={getStatusColor(!!contextResult.infogreffeData) as any}
|
color={getStatusColor(!!contextResult.infogreffeData)}
|
||||||
size="small"
|
size="small"
|
||||||
sx={{ ml: 2 }}
|
sx={{ ml: 2 }}
|
||||||
/>
|
/>
|
||||||
|
|||||||
@ -1,19 +1,6 @@
|
|||||||
import { useCallback, useState } from 'react'
|
import { useCallback, useState } from 'react'
|
||||||
import { useDropzone } from 'react-dropzone'
|
import { useDropzone } from 'react-dropzone'
|
||||||
import {
|
import { Box, Typography, Paper, CircularProgress, Alert, Button, Chip, Grid } from '@mui/material'
|
||||||
Box,
|
|
||||||
Typography,
|
|
||||||
Paper,
|
|
||||||
List,
|
|
||||||
ListItem,
|
|
||||||
ListItemText,
|
|
||||||
ListItemIcon,
|
|
||||||
CircularProgress,
|
|
||||||
Alert,
|
|
||||||
Button,
|
|
||||||
Chip,
|
|
||||||
Grid,
|
|
||||||
} from '@mui/material'
|
|
||||||
import {
|
import {
|
||||||
CloudUpload,
|
CloudUpload,
|
||||||
CheckCircle,
|
CheckCircle,
|
||||||
@ -22,7 +9,7 @@ import {
|
|||||||
Visibility,
|
Visibility,
|
||||||
} from '@mui/icons-material'
|
} from '@mui/icons-material'
|
||||||
import { useAppDispatch, useAppSelector } from '../store'
|
import { useAppDispatch, useAppSelector } from '../store'
|
||||||
import { uploadDocument, setCurrentDocument } from '../store/documentSlice'
|
import { uploadDocument } from '../store/documentSlice'
|
||||||
import { Layout } from '../components/Layout'
|
import { Layout } from '../components/Layout'
|
||||||
import { FilePreview } from '../components/FilePreview'
|
import { FilePreview } from '../components/FilePreview'
|
||||||
import type { Document } from '../types'
|
import type { Document } from '../types'
|
||||||
@ -156,7 +143,7 @@ export default function UploadView() {
|
|||||||
<Chip
|
<Chip
|
||||||
label={doc.status}
|
label={doc.status}
|
||||||
size="small"
|
size="small"
|
||||||
color={getStatusColor(doc.status) as any}
|
color={getStatusColor(doc.status) as 'success' | 'error' | 'warning' | 'default'}
|
||||||
/>
|
/>
|
||||||
<Chip
|
<Chip
|
||||||
label={`${(doc.size / 1024 / 1024).toFixed(2)} MB`}
|
label={`${(doc.size / 1024 / 1024).toFixed(2)} MB`}
|
||||||
|
|||||||
@ -1,25 +1,30 @@
|
|||||||
# Acte de Vente Immobilière
|
# Acte de Vente Immobilière
|
||||||
|
|
||||||
## Informations générales
|
## Informations générales
|
||||||
|
|
||||||
- **Type** : Acte de vente
|
- **Type** : Acte de vente
|
||||||
- **Date** : 15 janvier 2024
|
- **Date** : 15 janvier 2024
|
||||||
- **Lieu** : Paris
|
- **Lieu** : Paris
|
||||||
|
|
||||||
## Parties contractantes
|
## Parties contractantes
|
||||||
|
|
||||||
- **Vendeur** : Jean Dupont
|
- **Vendeur** : Jean Dupont
|
||||||
- **Acheteur** : Marie Martin
|
- **Acheteur** : Marie Martin
|
||||||
|
|
||||||
## Objet de la vente
|
## Objet de la vente
|
||||||
|
|
||||||
- **Bien** : Appartement
|
- **Bien** : Appartement
|
||||||
- **Adresse** : 123 Rue de la Paix, 75001 Paris
|
- **Adresse** : 123 Rue de la Paix, 75001 Paris
|
||||||
- **Surface** : 75 m²
|
- **Surface** : 75 m²
|
||||||
- **Prix** : 250 000 €
|
- **Prix** : 250 000 €
|
||||||
|
|
||||||
## Clauses particulières
|
## Clauses particulières
|
||||||
|
|
||||||
1. Clause de garantie des vices cachés
|
1. Clause de garantie des vices cachés
|
||||||
2. Clause de condition suspensive
|
2. Clause de condition suspensive
|
||||||
3. Clause de garantie d'éviction
|
3. Clause de garantie d'éviction
|
||||||
|
|
||||||
## Signatures
|
## Signatures
|
||||||
|
|
||||||
- Jean Dupont : [Signature]
|
- Jean Dupont : [Signature]
|
||||||
- Marie Martin : [Signature]
|
- Marie Martin : [Signature]
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user