diff --git a/CHANGELOG.md b/CHANGELOG.md index c4b9f685..ccb98bf7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,6 +26,12 @@ NOTE: Add new changes BELOW THIS COMMENT. - The `GET /clients/find` HTTP API is deprecated. Use the new `POST /clients/search` API. +### Fixed + +- The formatting of large numbers on the dashboard ([#7329]). + +[#7329]: https://github.com/AdguardTeam/AdGuardHome/issues/7329 + diff --git a/client/src/components/Dashboard/Counters.tsx b/client/src/components/Dashboard/Counters.tsx index e68ce417..d281086d 100644 --- a/client/src/components/Dashboard/Counters.tsx +++ b/client/src/components/Dashboard/Counters.tsx @@ -23,7 +23,7 @@ interface RowProps { const Row = ({ label, count, response_status, tooltipTitle, translationComponents }: RowProps) => { const content = response_status ? ( - {formatNumber(count)} + {count} ) : ( count ); @@ -77,16 +77,16 @@ const Counters = ({ refreshButton, subtitle }: CountersProps) => { ? t('number_of_dns_query_hours', { count: msToHours(interval) }) : t('number_of_dns_query_days', { count: msToDays(interval) }); - const rows = [ + const rows: RowProps[] = [ { label: 'dns_query', - count: numDnsQueries.toString(), + count: formatNumber(numDnsQueries), tooltipTitle: dnsQueryTooltip, response_status: RESPONSE_FILTER.ALL.QUERY, }, { label: 'blocked_by', - count: numBlockedFiltering.toString(), + count: formatNumber(numBlockedFiltering), tooltipTitle: 'number_of_dns_query_blocked_24_hours', response_status: RESPONSE_FILTER.BLOCKED.QUERY, @@ -98,19 +98,19 @@ const Counters = ({ refreshButton, subtitle }: CountersProps) => { }, { label: 'stats_malware_phishing', - count: numReplacedSafebrowsing.toString(), + count: formatNumber(numReplacedSafebrowsing), tooltipTitle: 'number_of_dns_query_blocked_24_hours_by_sec', response_status: RESPONSE_FILTER.BLOCKED_THREATS.QUERY, }, { label: 'stats_adult', - count: numReplacedParental.toString(), + count: formatNumber(numReplacedParental), tooltipTitle: 'number_of_dns_query_blocked_24_hours_adult', response_status: RESPONSE_FILTER.BLOCKED_ADULT_WEBSITES.QUERY, }, { label: 'enforced_save_search', - count: numReplacedSafesearch.toString(), + count: formatNumber(numReplacedSafesearch), tooltipTitle: 'number_of_dns_query_to_safe_search', response_status: RESPONSE_FILTER.SAFE_SEARCH.QUERY, }, diff --git a/client/src/helpers/helpers.tsx b/client/src/helpers/helpers.tsx index 0ad9e9e2..d04676c4 100644 --- a/client/src/helpers/helpers.tsx +++ b/client/src/helpers/helpers.tsx @@ -521,7 +521,7 @@ export const getObjDiff = (initialValues: any, values: any) => * @param num {number} to format * @returns {string} Returns a string with a language-sensitive representation of this number */ -export const formatNumber = (num: any) => { +export const formatNumber = (num: number): string => { const currentLanguage = i18n.languages[0] || DEFAULT_LANGUAGE; return num.toLocaleString(currentLanguage); }; diff --git a/scripts/make/go-lint.sh b/scripts/make/go-lint.sh index 2eb60a2d..56569da3 100644 --- a/scripts/make/go-lint.sh +++ b/scripts/make/go-lint.sh @@ -223,6 +223,12 @@ run_linter ineffassign ./... run_linter unparam ./... find . \ + '(' \ + -name 'node_modules' \ + -type 'd' \ + -prune \ + ')' \ + -o \ -type 'f' \ '(' \ -name 'Makefile' \