1- import {
2- format ,
3- getYear ,
4- differenceInCalendarDays ,
5- differenceInHours ,
6- differenceInMinutes
7- } from 'date-fns' ;
1+ import { format , getYear } from 'date-fns' ;
82import type { LinkInfo } from '../../common' ;
93
4+ enum One {
5+ Minute = 60 * 1_000 ,
6+ Hour = 60 * 60 * 1_000 ,
7+ Day = 24 * 60 * 60 * 1_000
8+ }
9+
1010export const getDateTime = ( date : Date ) : string => format ( date , 'HH:mm:ss' ) ;
1111
1212export const getRelativeDate = ( dateInPast ?: string | null ) : string => {
@@ -40,13 +40,15 @@ export const getCurrentYear = (): number => getYear(new Date());
4040
4141export const dateDifference = ( start ?: Date ) : string => {
4242 if ( ! start ) {
43- return '0m' ;
43+ return '0d 0h 0m' ;
4444 }
4545 const end = new Date ( ) ;
46+ const ms = end . getTime ( ) - start . getTime ( ) ;
47+
4648 const [ d , h , m ] = [
47- differenceInCalendarDays ( end , start ) ,
48- differenceInHours ( end , start ) ,
49- differenceInMinutes ( end , start )
49+ Math . floor ( ms / One . Day ) ,
50+ Math . floor ( ms / One . Hour ) ,
51+ Math . floor ( ms / One . Minute )
5052 ] ;
5153 return `${ d } d ${ h } h ${ m } m` ;
5254} ;
@@ -56,5 +58,6 @@ export const dateDifferenceHours = (start?: Date): number => {
5658 return 0 ;
5759 }
5860 const end = new Date ( ) ;
59- return differenceInHours ( end , start ) ;
61+ const ms = end . getTime ( ) - start . getTime ( ) ;
62+ return Math . floor ( ms / One . Hour ) ;
6063} ;
0 commit comments