@@ -2,56 +2,75 @@ import React from 'react';
22import { View , FlatList , Text } from 'react-native' ;
33import { Header } from '../../../atoms/Header' ;
44import { MovieCard } from '../../../atoms/MovieCard' ;
5+ import { MoviesModule } from '../../../module/MoviesModule' ;
56
67const data = [
78 {
89 title : 'Reprendre avec le profil de Thomas' ,
9- data : [ 'Pizza' , 'Burger' , 'Risotto' ] ,
10+ dataFilter : movie => movie . progress > 0 ,
1011 } ,
1112 {
1213 title : 'Ma Liste' ,
13- data : [ 'French Fries' , 'Onion Rings' , 'Fried Shrimps' ] ,
14+ dataFilter : movie => movie . myList ,
1415 } ,
1516 {
1617 title : 'Téléchargements' ,
17- data : [ 'French Fries' , 'Onion Rings' , 'Fried Shrimps' ] ,
18+ dataFilter : movie => movie . downloaded ,
1819 } ,
1920] ;
2021
21- export const HomeScreen = ( ) => (
22- < View >
23- < FlatList
24- contentContainerStyle = { { paddingBottom : 60 } }
25- ListHeaderComponent = {
26- < Header
27- onPress = { ( ) => { } }
28- title = "The Good Place"
29- subtitle = "Nouveaux épisodes disponibles"
30- />
31- }
32- data = { data }
33- keyExtractor = { item => item . title }
34- renderItem = { ( { item} ) => (
35- < >
36- < Text
37- style = { {
38- fontSize : 12 ,
39- color : '#FFFFFF' ,
40- fontWeight : '500' ,
41- marginLeft : 15 ,
42- } } >
43- { item . title }
44- </ Text >
45- < FlatList
46- keyExtractor = { item => item }
47- data = { item . data }
48- style = { { marginTop : 10 , marginBottom : 5 } }
49- contentContainerStyle = { { paddingHorizontal : 10 , paddingBottom : 10 } }
50- horizontal
51- renderItem = { ( { item} ) => < MovieCard /> }
22+ export const HomeScreen = ( ) => {
23+ const headerMovie = MoviesModule . movies . filter (
24+ movie => ! movie . downloaded && ! movie . myList ,
25+ ) [ 0 ] ;
26+ return (
27+ < View >
28+ < FlatList
29+ contentContainerStyle = { { paddingBottom : 60 } }
30+ ListHeaderComponent = {
31+ < Header
32+ onPress = { ( ) => { } }
33+ title = { headerMovie . title }
34+ subtitle = "Nouveaux épisodes disponibles"
35+ imageUri = { headerMovie . imageUri }
5236 />
53- </ >
54- ) }
55- />
56- </ View >
57- ) ;
37+ }
38+ data = { data }
39+ keyExtractor = { item => item . title }
40+ renderItem = { ( { item} ) => {
41+ const sectionMovies = MoviesModule . movies . filter ( item . dataFilter ) ;
42+ return (
43+ < >
44+ < Text
45+ style = { {
46+ fontSize : 12 ,
47+ color : '#FFFFFF' ,
48+ fontWeight : '500' ,
49+ marginLeft : 15 ,
50+ } } >
51+ { item . title }
52+ </ Text >
53+ < FlatList
54+ keyExtractor = { item => item . imageUri }
55+ data = { sectionMovies }
56+ style = { { marginTop : 10 , marginBottom : 5 } }
57+ contentContainerStyle = { {
58+ paddingHorizontal : 10 ,
59+ paddingBottom : 10 ,
60+ } }
61+ horizontal
62+ renderItem = { ( { item} ) => (
63+ < MovieCard
64+ imageUri = { item . imageUri }
65+ episode = { item . episode }
66+ progress = { item . progress }
67+ />
68+ ) }
69+ />
70+ </ >
71+ ) ;
72+ } }
73+ />
74+ </ View >
75+ ) ;
76+ } ;
0 commit comments