1- import React , { useState , useEffect } from 'react' ;
1+ import React from 'react' ;
22import PT from 'prop-types' ;
3- import moment from 'moment' ;
4- import _ from 'lodash' ;
53import cn from 'classnames' ;
64import AddEvent from './add-event' ;
75import Events from './events' ;
@@ -22,41 +20,23 @@ function TimelineEvents({
2220 createNewEvent,
2321 getAvatar,
2422 userAvatars,
23+ onDoneAddEvent,
24+ uploading,
2525} ) {
26- const [ localEvents , setLocalEvents ] = useState ( [ ] ) ;
27-
28- useEffect ( ( ) => {
29- setLocalEvents ( _ . filter ( events , ( event ) => {
30- const eventDate = moment ( event . eventDate ) ;
31- if ( ! selectedFilterValue . year ) {
32- return true ;
33- }
34- if ( eventDate . year ( ) !== selectedFilterValue . year ) {
35- return false ;
36- }
37- if ( selectedFilterValue . month < 0 ) {
38- return true ;
39- }
40- if ( eventDate . month ( ) !== selectedFilterValue . month ) {
41- return false ;
42- }
43-
44- return true ;
45- } ) ) ;
46- } , [ events , selectedFilterValue ] ) ;
47-
4826 return (
4927 < div className = { className } styleName = "container" >
5028 < div styleName = "left-content" >
5129 < AddEvent
52- events = { localEvents }
30+ events = { events }
5331 isAuthenticated = { isAuthenticated }
5432 createNewEvent = { createNewEvent }
5533 isAdmin = { isAdmin }
34+ onDoneAddEvent = { onDoneAddEvent }
35+ uploading = { uploading }
5636 />
57- { localEvents . length ? (
37+ { events . length ? (
5838 < Events
59- events = { localEvents }
39+ events = { events }
6040 isAdmin = { isAdmin }
6141 isAuthenticated = { isAuthenticated }
6242 removeEvent = { ( event ) => {
@@ -67,15 +47,15 @@ function TimelineEvents({
6747 />
6848 )
6949 : null }
70- { ! localEvents . length && ! ! events . length && selectedFilterValue . month < 0 ? (
50+ { ! events . length && ! ! events . length && selectedFilterValue . month < 0 ? (
7151 < span styleName = "text-empty-result" > No events have been added for this year. Be the first who adds one.</ span >
7252 )
7353 : null }
74- { ! localEvents . length && ! ! events . length && selectedFilterValue . month >= 0 ? (
54+ { ! events . length && ! ! events . length && selectedFilterValue . month >= 0 ? (
7555 < span styleName = "text-empty-result" > No events have been added for this month. Be the first who adds one.</ span >
7656 )
7757 : null }
78- { ! localEvents . length && ! events . length ? (
58+ { ! events . length && ! events . length ? (
7959 < span styleName = "text-empty-result" > No events have been added. Be the first who adds one.</ span >
8060 )
8161 : null }
@@ -111,6 +91,7 @@ TimelineEvents.defaultProps = {
11191 isAuthenticated : false ,
11292 isAdmin : false ,
11393 userAvatars : { } ,
94+ uploading : false ,
11495} ;
11596
11697/**
@@ -128,7 +109,9 @@ TimelineEvents.propTypes = {
128109 isAdmin : PT . bool ,
129110 createNewEvent : PT . func . isRequired ,
130111 getAvatar : PT . func . isRequired ,
112+ onDoneAddEvent : PT . func . isRequired ,
131113 userAvatars : PT . shape ( ) ,
114+ uploading : PT . bool ,
132115} ;
133116
134117export default TimelineEvents ;
0 commit comments