import React, {useEffect, useState} from 'react' import type { Statistics} from '../utils/api' import {getStatistics} from '../utils/api' import {Card, Col, Divider, Flex, Row, Statistic, Tooltip} from 'antd' import {t} from 'ttag' import { AimOutlined, CompassOutlined, DatabaseOutlined, FieldTimeOutlined, NotificationOutlined } from '@ant-design/icons' export default function StatisticsPage() { const [stats, setStats] = useState() useEffect(() => { getStatistics().then(setStats) }, []) const totalDomainPurchase = (stats?.domainPurchased ?? 0) + (stats?.domainPurchaseFailed ?? 0) const successRate = stats !== undefined ? (totalDomainPurchase === 0 ? undefined : stats.domainPurchased / totalDomainPurchase) : undefined return ( <> } title={t`RDAP queries`} value={stats?.rdapQueries} /> } value={stats?.alertSent} valueStyle={{color: 'violet'}} /> } value={stats?.domainCountTotal} valueStyle={{color: 'orange'}} /> } value={stats?.domainTracked} valueStyle={{color: 'violet'}} /> } value={stats?.domainPurchased} valueStyle={{color: 'green'}} /> = 0.5 ? 'darkgreen' : 'orange'}} /> {stats?.domainCount .sort((a, b) => b.domain - a.domain) .map(({domain, tld}) => )} ) }