Force callers of getTimeAgo
to pass in the value for "now" (#4560)
* Remove icky hook for now * Force callers of getTimeAgo to pass in the 'now' value * Update usage in Newskie dialog
This commit is contained in:
parent
fb76265fcc
commit
983d85384b
4 changed files with 15 additions and 19 deletions
|
@ -1,4 +1,4 @@
|
|||
import {useCallback, useMemo} from 'react'
|
||||
import {useCallback} from 'react'
|
||||
import {msg, plural} from '@lingui/macro'
|
||||
import {I18nContext, useLingui} from '@lingui/react'
|
||||
import {differenceInSeconds} from 'date-fns'
|
||||
|
@ -12,25 +12,16 @@ export function useGetTimeAgo() {
|
|||
const {_} = useLingui()
|
||||
return useCallback(
|
||||
(
|
||||
date: number | string | Date,
|
||||
earlier: number | string | Date,
|
||||
later: number | string | Date,
|
||||
options?: Omit<TimeAgoOptions, 'lingui'>,
|
||||
) => {
|
||||
return dateDiff(date, Date.now(), {lingui: _, format: options?.format})
|
||||
return dateDiff(earlier, later, {lingui: _, format: options?.format})
|
||||
},
|
||||
[_],
|
||||
)
|
||||
}
|
||||
|
||||
export function useTimeAgo(
|
||||
date: number | string | Date,
|
||||
options?: Omit<TimeAgoOptions, 'lingui'>,
|
||||
): string {
|
||||
const timeAgo = useGetTimeAgo()
|
||||
return useMemo(() => {
|
||||
return timeAgo(date, {...options})
|
||||
}, [date, options, timeAgo])
|
||||
}
|
||||
|
||||
const NOW = 5
|
||||
const MINUTE = 60
|
||||
const HOUR = MINUTE * 60
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue