mirror of
https://github.com/maelgangloff/domain-watchdog.git
synced 2025-12-18 10:15:41 +00:00
feat: update stats page
This commit is contained in:
parent
26ae674117
commit
68bd35e10e
@ -18,7 +18,7 @@ export default function StatisticsPage() {
|
|||||||
getStatistics().then(setStats)
|
getStatistics().then(setStats)
|
||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
const successRatio = stats !== undefined ?
|
const successRate = stats !== undefined ?
|
||||||
(stats.domainPurchaseFailed === 0 ? undefined : stats.domainPurchased / stats.domainPurchaseFailed)
|
(stats.domainPurchaseFailed === 0 ? undefined : stats.domainPurchased / stats.domainPurchaseFailed)
|
||||||
: undefined
|
: undefined
|
||||||
|
|
||||||
@ -38,7 +38,7 @@ export default function StatisticsPage() {
|
|||||||
<Card bordered={false}>
|
<Card bordered={false}>
|
||||||
<Statistic
|
<Statistic
|
||||||
loading={stats === undefined}
|
loading={stats === undefined}
|
||||||
title={t`Alert sent`}
|
title={t`Alerts sent`}
|
||||||
prefix={<NotificationOutlined/>}
|
prefix={<NotificationOutlined/>}
|
||||||
value={stats?.alertSent}
|
value={stats?.alertSent}
|
||||||
valueStyle={{color: 'blueviolet'}}
|
valueStyle={{color: 'blueviolet'}}
|
||||||
@ -52,7 +52,7 @@ export default function StatisticsPage() {
|
|||||||
<Card bordered={false}>
|
<Card bordered={false}>
|
||||||
<Statistic
|
<Statistic
|
||||||
loading={stats === undefined}
|
loading={stats === undefined}
|
||||||
title={t`Domain name in database`}
|
title={t`Domain names in database`}
|
||||||
prefix={<DatabaseOutlined/>}
|
prefix={<DatabaseOutlined/>}
|
||||||
value={stats?.rdapQueries}
|
value={stats?.rdapQueries}
|
||||||
valueStyle={{color: 'darkblue'}}
|
valueStyle={{color: 'darkblue'}}
|
||||||
@ -63,7 +63,7 @@ export default function StatisticsPage() {
|
|||||||
<Card bordered={false}>
|
<Card bordered={false}>
|
||||||
<Statistic
|
<Statistic
|
||||||
loading={stats === undefined}
|
loading={stats === undefined}
|
||||||
title={t`Domain name tracked`}
|
title={t`Tracked domain names`}
|
||||||
prefix={<AimOutlined/>}
|
prefix={<AimOutlined/>}
|
||||||
value={stats?.domainTracked}
|
value={stats?.domainTracked}
|
||||||
valueStyle={{color: 'darkviolet'}}
|
valueStyle={{color: 'darkviolet'}}
|
||||||
@ -77,7 +77,7 @@ export default function StatisticsPage() {
|
|||||||
<Card bordered={false}>
|
<Card bordered={false}>
|
||||||
<Statistic
|
<Statistic
|
||||||
loading={stats === undefined}
|
loading={stats === undefined}
|
||||||
title={t`Domain name purchased`}
|
title={t`Purchased domain names`}
|
||||||
prefix={<FieldTimeOutlined/>}
|
prefix={<FieldTimeOutlined/>}
|
||||||
value={stats?.domainPurchased}
|
value={stats?.domainPurchased}
|
||||||
valueStyle={{color: '#3f8600'}}
|
valueStyle={{color: '#3f8600'}}
|
||||||
@ -87,31 +87,33 @@ export default function StatisticsPage() {
|
|||||||
<Col span={12}>
|
<Col span={12}>
|
||||||
<Card bordered={false}>
|
<Card bordered={false}>
|
||||||
<Tooltip
|
<Tooltip
|
||||||
title={t`This value is based on the status code of the HTTP response from the providers following the order.`}>
|
title={t`This value is based on the status code of the HTTP response from the providers following the domain order.`}>
|
||||||
<Statistic
|
<Statistic
|
||||||
loading={stats === undefined}
|
loading={stats === undefined}
|
||||||
title={t`Success ratio`}
|
title={t`Success rate`}
|
||||||
value={successRatio === undefined ? '-' : successRatio * 100}
|
value={successRate === undefined ? '-' : successRate * 100}
|
||||||
suffix='%'
|
suffix='%'
|
||||||
precision={2}
|
precision={2}
|
||||||
valueStyle={{color: successRatio === undefined ? 'black' : successRatio >= 0.5 ? 'darkgreen' : 'orange'}}
|
valueStyle={{color: successRate === undefined ? 'grey' : successRate >= 0.5 ? 'darkgreen' : 'orange'}}
|
||||||
/>
|
/>
|
||||||
</Tooltip>
|
</Tooltip>
|
||||||
</Card>
|
</Card>
|
||||||
</Col>
|
</Col>
|
||||||
</Row>
|
</Row>
|
||||||
<Divider/>
|
<Divider/>
|
||||||
<Row gutter={16}>
|
<Row gutter={16} justify='center' align='middle'>
|
||||||
{stats?.domainCount.map(({domain, tld}) => <Col span={4}>
|
{stats?.domainCount
|
||||||
<Card bordered={false}>
|
.sort((a, b) => b.domain - a.domain)
|
||||||
<Statistic
|
.map(({domain, tld}) => <Col span={4}>
|
||||||
loading={stats === undefined}
|
<Card bordered={false}>
|
||||||
title={`.${tld}`}
|
<Statistic
|
||||||
value={domain}
|
loading={stats === undefined}
|
||||||
valueStyle={{color: 'darkblue'}}
|
title={`.${tld}`}
|
||||||
/>
|
value={domain}
|
||||||
</Card>
|
valueStyle={{color: 'darkblue'}}
|
||||||
</Col>)}
|
/>
|
||||||
|
</Card>
|
||||||
|
</Col>)}
|
||||||
</Row>
|
</Row>
|
||||||
</>
|
</>
|
||||||
}
|
}
|
||||||
@ -722,7 +722,7 @@ msgid "Domain Finder"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/components/Sider.tsx:48
|
#: assets/components/Sider.tsx:48
|
||||||
#: assets/pages/info/TldPage.tsx:65
|
#: assets/pages/search/TldPage.tsx:65
|
||||||
msgid "TLD"
|
msgid "TLD"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -763,7 +763,7 @@ msgid "Statistics"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/components/Sider.tsx:105
|
#: assets/components/Sider.tsx:105
|
||||||
#: assets/pages/watchdog/UserPage.tsx:16
|
#: assets/pages/UserPage.tsx:16
|
||||||
msgid "My Account"
|
msgid "My Account"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -796,23 +796,23 @@ msgid ""
|
|||||||
"WHOIS by its registrar."
|
"WHOIS by its registrar."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/info/TldPage.tsx:71
|
#: assets/pages/search/TldPage.tsx:71
|
||||||
msgid "Flag"
|
msgid "Flag"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/info/TldPage.tsx:74
|
#: assets/pages/search/TldPage.tsx:74
|
||||||
msgid "Country"
|
msgid "Country"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/info/TldPage.tsx:79
|
#: assets/pages/search/TldPage.tsx:79
|
||||||
msgid "Registry Operator"
|
msgid "Registry Operator"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/info/TldPage.tsx:106
|
#: assets/pages/search/TldPage.tsx:106
|
||||||
msgid "This page presents all active TLDs in the root zone database."
|
msgid "This page presents all active TLDs in the root zone database."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/info/TldPage.tsx:109
|
#: assets/pages/search/TldPage.tsx:109
|
||||||
msgid ""
|
msgid ""
|
||||||
"IANA provides the list of currently active TLDs, regardless of their type, "
|
"IANA provides the list of currently active TLDs, regardless of their type, "
|
||||||
"and ICANN provides the list of gTLDs.\n"
|
"and ICANN provides the list of gTLDs.\n"
|
||||||
@ -824,55 +824,47 @@ msgid ""
|
|||||||
"At the same time, the list of root RDAP servers is updated."
|
"At the same time, the list of root RDAP servers is updated."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/info/TldPage.tsx:120
|
#: assets/pages/search/TldPage.tsx:120
|
||||||
msgid "Sponsored Top-Level-Domains"
|
msgid "Sponsored Top-Level-Domains"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/info/TldPage.tsx:122
|
#: assets/pages/search/TldPage.tsx:122
|
||||||
msgid ""
|
msgid ""
|
||||||
"Top-level domains sponsored by specific organizations that set rules for "
|
"Top-level domains sponsored by specific organizations that set rules for "
|
||||||
"registration and use, often related to particular interest groups or "
|
"registration and use, often related to particular interest groups or "
|
||||||
"industries."
|
"industries."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/info/TldPage.tsx:129
|
#: assets/pages/search/TldPage.tsx:129
|
||||||
msgid "Generic Top-Level-Domains"
|
msgid "Generic Top-Level-Domains"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/info/TldPage.tsx:131
|
#: assets/pages/search/TldPage.tsx:131
|
||||||
msgid ""
|
msgid ""
|
||||||
"Generic top-level domains open to everyone, not restricted by specific "
|
"Generic top-level domains open to everyone, not restricted by specific "
|
||||||
"criteria, representing various themes or industries."
|
"criteria, representing various themes or industries."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/info/TldPage.tsx:138
|
#: assets/pages/search/TldPage.tsx:138
|
||||||
msgid "Brand Generic Top-Level-Domains"
|
msgid "Brand Generic Top-Level-Domains"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/info/TldPage.tsx:140
|
#: assets/pages/search/TldPage.tsx:140
|
||||||
msgid ""
|
msgid ""
|
||||||
"Generic top-level domains associated with specific brands, allowing "
|
"Generic top-level domains associated with specific brands, allowing "
|
||||||
"companies to use their own brand names as domains."
|
"companies to use their own brand names as domains."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/info/TldPage.tsx:147
|
#: assets/pages/search/TldPage.tsx:147
|
||||||
msgid "Country-Code Top-Level-Domains"
|
msgid "Country-Code Top-Level-Domains"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/info/TldPage.tsx:149
|
#: assets/pages/search/TldPage.tsx:149
|
||||||
msgid ""
|
msgid ""
|
||||||
"Top-level domains based on country codes, identifying websites according to "
|
"Top-level domains based on country codes, identifying websites according to "
|
||||||
"their country of origin."
|
"their country of origin."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/watchdog/UserPage.tsx:18
|
|
||||||
msgid "Username"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: assets/pages/watchdog/UserPage.tsx:21
|
|
||||||
msgid "Roles"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: assets/pages/tracking/ConnectorsPage.tsx:20
|
#: assets/pages/tracking/ConnectorsPage.tsx:20
|
||||||
msgid "Connector created !"
|
msgid "Connector created !"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -897,10 +889,48 @@ msgstr ""
|
|||||||
msgid "Sorry, the page you visited does not exist."
|
msgid "Sorry, the page you visited does not exist."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: assets/pages/StatisticsPage.tsx:32
|
||||||
|
msgid "RDAP queries"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: assets/pages/StatisticsPage.tsx:41
|
||||||
|
msgid "Alerts sent"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: assets/pages/StatisticsPage.tsx:55
|
||||||
|
msgid "Domain names in database"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: assets/pages/StatisticsPage.tsx:66
|
||||||
|
msgid "Tracked domain names"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: assets/pages/StatisticsPage.tsx:80
|
||||||
|
msgid "Purchased domain names"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: assets/pages/StatisticsPage.tsx:90
|
||||||
|
msgid ""
|
||||||
|
"This value is based on the status code of the HTTP response from the "
|
||||||
|
"providers following the domain order."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: assets/pages/StatisticsPage.tsx:93
|
||||||
|
msgid "Success rate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: assets/pages/LoginPage.tsx:33
|
#: assets/pages/LoginPage.tsx:33
|
||||||
msgid "Create an account"
|
msgid "Create an account"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: assets/pages/UserPage.tsx:18
|
||||||
|
msgid "Username"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: assets/pages/UserPage.tsx:21
|
||||||
|
msgid "Roles"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: assets/utils/functions/showErrorAPI.tsx:19
|
#: assets/utils/functions/showErrorAPI.tsx:19
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Please retry after ${ duration } seconds"
|
msgid "Please retry after ${ duration } seconds"
|
||||||
@ -953,23 +983,23 @@ msgid ""
|
|||||||
"another"
|
"another"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/App.tsx:101
|
#: assets/App.tsx:100
|
||||||
msgid "TOS"
|
msgid "TOS"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/App.tsx:102
|
#: assets/App.tsx:101
|
||||||
msgid "Privacy Policy"
|
msgid "Privacy Policy"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/App.tsx:103
|
#: assets/App.tsx:102
|
||||||
msgid "FAQ"
|
msgid "FAQ"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/App.tsx:105
|
#: assets/App.tsx:104
|
||||||
msgid "Documentation"
|
msgid "Documentation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: assets/App.tsx:108
|
#: assets/App.tsx:107
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"${ ProjectLink } is an open source project distributed under the ${ "
|
"${ ProjectLink } is an open source project distributed under the ${ "
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user