import { defineMessages, useIntl } from 'react-intl'; import Link from 'components/common/Link'; import WebsiteChart from 'components/metrics/WebsiteChart'; import Page from 'components/layout/Page'; import EmptyPlaceholder from 'components/common/EmptyPlaceholder'; import Arrow from 'assets/arrow-right.svg'; import styles from './WebsiteList.module.css'; import useDashboard from 'store/dashboard'; import { orderByWebsiteMap } from 'lib/format'; import { useMemo } from 'react'; const messages = defineMessages({ noWebsites: { id: 'message.no-websites-configured', defaultMessage: "You don't have any websites configured.", }, goToSettngs: { id: 'message.go-to-settings', defaultMessage: 'Go to settings', }, }); export default function WebsiteList({ data, showCharts, limit }) { const { websiteOrder } = useDashboard(); const { formatMessage } = useIntl(); const websites = useMemo(() => orderByWebsiteMap(data, websiteOrder), [data, websiteOrder]); if (websites.length === 0) { return ( } iconRight> {formatMessage(messages.goToSettngs)} ); } return (
{websites.map(({ website_id, name, domain }, index) => index < limit ? (
) : null, )}
); }