// @flow import type { RowDataItem } from 'homepage'; import * as ICONS from 'constants/icons'; import * as PAGES from 'constants/pages'; import { SITE_NAME } from 'config'; import React from 'react'; import Page from 'component/page'; import Button from 'component/button'; import ClaimTilesDiscover from 'component/claimTilesDiscover'; import getHomepage from 'homepage'; import Icon from 'component/common/icon'; type Props = { authenticated: boolean, followedTags: Array, subscribedChannels: Array, showNsfw: boolean, }; function HomePage(props: Props) { const { followedTags, subscribedChannels, authenticated, showNsfw } = props; const showPersonalizedChannels = (authenticated || !IS_WEB) && subscribedChannels && subscribedChannels.length > 0; const showPersonalizedTags = (authenticated || !IS_WEB) && followedTags && followedTags.length > 0; const showIndividualTags = showPersonalizedTags && followedTags.length < 5; const rowData: Array = getHomepage( authenticated, showPersonalizedChannels, showPersonalizedTags, subscribedChannels, followedTags, showIndividualTags, showNsfw ); return ( {(authenticated || !IS_WEB) && !subscribedChannels.length && (

{__("%SITE_NAME% is more fun if you're following channels", { SITE_NAME })}

)} {rowData.map(({ title, link, icon, help, options = {} }) => (

{link && (
))}
); } export default HomePage;