Rev 5438 | Rev 5798 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
/* eslint-disable react/prop-types */
import React, { Suspense, useEffect } from 'react'
import { useDispatch } from 'react-redux'
import { setTimelineUrl } from '../../../redux/feed/feed.actions'
import { feedTypes } from '../../../redux/feed/feed.types'
import { setIntlLabels } from '../../../redux/intl/intl.action'
// Components
import SocialNetworks from './SocialNetworks'
import ShareFeed from '../share-feed/ShareFeed'
import PeopleYouMayKnow from '../../../shared/helpers/people-you-may-know/PeopleYouMayKnow'
import DailyPulse from '../../../shared/helpers/daily-pulse/DailyPulse'
import HomeNews from './HomeNews'
import Spinner from '../../../shared/loading-spinner/Spinner'
import SuggestWidget from '../../../shared/helpers/my-groups-helper/SuggestWidget'
// Lazy Components
const FeedSection = React.lazy(() => import('../feed-section/FeedSection'))
const HomeSection = ({ routeTimeline, routeDailyPulse, backendVars, labels }) => {
const { image, feed } = backendVars
const dispatch = useDispatch()
useEffect(() => {
dispatch(setIntlLabels(labels))
dispatch(setTimelineUrl(routeTimeline))
}, [])
return (
<main className='main-section-data container px-0'>
<aside className="main-left-sidebar d-none d-md-flex">
<SuggestWidget url="/helpers/my-groups" title={`${labels.MY_GROUPS}:`} />
<SuggestWidget url="/helpers/groups-suggestion" title={`${labels.GROUPS}:`} />
<SocialNetworks />
</aside>
<section className='feed-section'>
<ShareFeed
image={image}
feedType={feedTypes.DASHBOARD}
postUrl="/feed/add"
/>
<Suspense fallback={<Spinner />}>
<FeedSection
routeTimeline={routeTimeline}
feed={feed}
image={image}
/>
</Suspense>
</section>
<aside className='right-sidebar'>
{routeDailyPulse && <DailyPulse routeDailyPulse={routeDailyPulse} />}
<PeopleYouMayKnow />
<HomeNews />
</aside>
</main>
)
}
export default HomeSection