# Étape 18.7 - Page chaîne riche + tri réellement fonctionnel La capture montrait deux problèmes distincts : ```text durée 0:00 0 vues ``` et une grande zone vide à droite. Le tri local utilisait donc des valeurs identiques (0 vues / dates absentes), ce qui explique pourquoi "Plus récentes", "Plus vues" et "Plus anciennes" semblaient ne rien changer. ## Correction des métadonnées La liste de chaîne donne d'abord les IDs des uploads. YouTube Personal enrichit maintenant chaque vidéo avec : ```text youtube.videos.get(videoId) ``` pour récupérer la vraie fiche : ```text durée vues likes date de publication description ``` L'enrichissement se fait par lots de 6 pour ne pas lancer toutes les requêtes en même temps. ## Tri Le menu devient : ```text Plus récentes Plus vues Plus aimées Plus anciennes ``` Les tris utilisent désormais les vraies métadonnées. Pour le fallback public, la demande de chaîne utilise également le tri natif : ```text VideoSorting.newest VideoSorting.popularity VideoSorting.oldest ``` ## Nouvelle présentation desktop Au lieu d'une petite ligne collée à gauche avec beaucoup de vide : ```text [ miniature ] texte [ grand vide ] ``` la page utilise maintenant une grille responsive : ```text [ vidéo 1 ] [ vidéo 2 ] [ vidéo 3 ] [ vidéo 4 ] [ vidéo 5 ] [ vidéo 6 ] [ vidéo 7 ] [ vidéo 8 ] ``` Selon la largeur : ```text >= 1500 px : 4 colonnes >= 1080 px : 3 colonnes >= 720 px : 2 colonnes mobile : 1 colonne ``` Chaque carte affiche : ```text miniature durée titre vues likes commentaires si disponibles date de publication description ``` ## Résumé du catalogue Au-dessus du tri apparaissent maintenant : ```text Vidéos chargées Vues cumulées Moyenne vues / vidéo Likes cumulés Durée totale chargée Période des vidéos ``` ## Test Après extraction : ```powershell cd "D:\07-Logiciels\23-youtube_personal" flutter run -d windows ``` Pas besoin de `flutter clean`. Dans PowerShell, le fallback public doit aussi afficher : ```text [CHANNEL-VIDEOS][18.7] channel=UC... sort=newest uploads=... ``` Puis vérifier visuellement que `Plus vues` place réellement les vidéos les plus vues en premier et que `Plus anciennes` inverse clairement les dates.