From 1b8a470a7dd45116958dac494eb5c8d86199d463 Mon Sep 17 00:00:00 2001 From: fallenbagel <98979876+Fallenbagel@users.noreply.github.com> Date: Sun, 23 Feb 2025 08:54:28 +0800 Subject: [PATCH] refactor: use date-fns for formatting age and remove useless code --- .../Settings/SettingsJobsCache/index.tsx | 61 +++---------------- 1 file changed, 10 insertions(+), 51 deletions(-) diff --git a/src/components/Settings/SettingsJobsCache/index.tsx b/src/components/Settings/SettingsJobsCache/index.tsx index ae7a3e349..88df76d4d 100644 --- a/src/components/Settings/SettingsJobsCache/index.tsx +++ b/src/components/Settings/SettingsJobsCache/index.tsx @@ -21,6 +21,7 @@ import type { } from '@server/interfaces/api/settingsInterfaces'; import type { JobId } from '@server/lib/settings'; import cronstrue from 'cronstrue/i18n'; +import { formatDuration, intervalToDuration } from 'date-fns'; import { Fragment, useReducer, useState } from 'react'; import type { MessageDescriptor } from 'react-intl'; import { FormattedRelativeTime, useIntl } from 'react-intl'; @@ -321,10 +322,15 @@ const SettingsJobs = () => { }; const formatAge = (milliseconds: number): string => { - const seconds = Math.floor(milliseconds / 1000); - const minutes = Math.floor(seconds / 60); - const remainingSeconds = seconds % 60; - return `${minutes}m ${remainingSeconds}s`; + const duration = intervalToDuration({ + start: 0, + end: milliseconds, + }); + + return formatDuration(duration, { + format: ['minutes', 'seconds'], + zero: false, + }); }; return ( @@ -674,53 +680,6 @@ const SettingsJobs = () => { - {/* - - - - {intl.formatMessage(messages.dnscacheglobalsize)} - - - {intl.formatMessage(messages.dnscacheglobalhits)} - - - {intl.formatMessage(messages.dnscacheglobalmisses)} - - - {intl.formatMessage(messages.dnscacheglobalhitrate)} - - - {intl.formatMessage(messages.dnscacheglobalfailures)} - - - {intl.formatMessage(messages.dnscacheglobalipv4fallbacks)} - - - - - {Object.entries(cacheData?.dnsCache.stats || {}).map( - ([key, value]) => ( - - {hostname} - {data.activeAddress} - {intl.formatNumber(data.hits)} - {intl.formatNumber(data.misses)} - {formatAge(data.age)} - {intl.formatNumber(data.networkErrors)} - - - - - ) - )} - -
*/}

{intl.formatMessage(messages.imagecache)}