import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { Trans, withNamespaces } from 'react-i18next'; import Card from '../ui/Card'; import Line from '../ui/Line'; import { getPercent, normalizeHistory } from '../../helpers/helpers'; import { STATUS_COLORS } from '../../helpers/constants'; class Statistics extends Component { getNormalizedHistory = (data, interval, id) => [{ data: normalizeHistory(data, interval), id }]; render() { const { interval, dnsQueries, blockedFiltering, replacedSafebrowsing, replacedParental, numDnsQueries, numBlockedFiltering, numReplacedSafebrowsing, numReplacedParental, } = this.props; return (
{numDnsQueries}
dns_query
{numBlockedFiltering}
{getPercent(numDnsQueries, numBlockedFiltering)}
blocked_by
{numReplacedSafebrowsing}
{getPercent(numDnsQueries, numReplacedSafebrowsing)}
stats_malware_phishing
{numReplacedParental}
{getPercent(numDnsQueries, numReplacedParental)}
stats_adult
); } } Statistics.propTypes = { interval: PropTypes.number.isRequired, dnsQueries: PropTypes.array.isRequired, blockedFiltering: PropTypes.array.isRequired, replacedSafebrowsing: PropTypes.array.isRequired, replacedParental: PropTypes.array.isRequired, numDnsQueries: PropTypes.number.isRequired, numBlockedFiltering: PropTypes.number.isRequired, numReplacedSafebrowsing: PropTypes.number.isRequired, numReplacedParental: PropTypes.number.isRequired, refreshButton: PropTypes.node.isRequired, }; export default withNamespaces()(Statistics);