Rev 2966 | Rev 2969 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
import React, { Suspense } from "react";
import { connect } from "react-redux";
import { setTimelineUrl } from "../../../redux/feed/feed.actions";
import { feedTypes } from "../../../redux/feed/feed.types";
import { addNotification } from "../../../redux/notification/notification.actions";
import Spinner from "../../../shared/loading-spinner/Spinner";
import NotificationAlert from "../../../shared/notification/NotificationAlert";
import ShareModal from "../share-modal/ShareModal";
import SuggestedGroupsHelper from "../../../shared/helpers/suggested-groups-helper/SuggestedGroupsHelper";
import SocialNetworks from "./SocialNetworks";
import ShareFeed from "../share-feed/ShareFeed";
import PeopleYouMayKnow from "../../../shared/helpers/people-you-may-know/PeopleYouMayKnow";
import HomeNews from "./HomeNews";
const FeedSection = React.lazy(() => import("../feed-section/FeedSection"));
import styles from "./HomeSection.module.scss";
const HomeSection = (props) => {
// props destructuring
const { routeTimeline, addNotification } = props;
// backendVars destructuring
const { image, fullName, country, visits, connections, description, feed } = props.backendVars;
// redux destructuring
const { setTimelineUrl } = props;
setTimelineUrl(routeTimeline);
return (
<div>
<div className="main-section">
<div className={styles.mainSection}>
<div className="d-none d-sm-none d-md-block d-lg-block">
<div className={styles.sectionHeader}>
<SuggestedGroupsHelper />
<SocialNetworks />
</div>
</div>
<div className={styles.feedSection}>
<ShareFeed image={image} feedType={feedTypes.DASHBOARD} postUrl="/feed/add" />
<Suspense
fallback={
<div className="w-100 h-100" style={{ display: "flex", placeItems: 'center' }}>
<Spinner />
</div>
}
>
<FeedSection
routeTimeline={routeTimeline}
feed={feed}
image={image}
/>
</Suspense>
</div>
<div className={styles.peopleYouMayKnow}>
<PeopleYouMayKnow />
<HomeNews />
</div>
</div>
</div>
<ShareModal />
<NotificationAlert />
</div>
);
};
const mapDispatchToProps = {
setTimelineUrl: (url) => setTimelineUrl(url),
addNotification: (notification) => addNotification(notification),
};
export default connect(null, mapDispatchToProps)(HomeSection);