renovate/lib/util/date.ts
2023-01-20 09:19:08 +00:00

28 lines
725 B
TypeScript

import { DateTime } from 'luxon';
const ONE_MINUTE_MS = 60 * 1000;
const ONE_DAY_MS = 24 * 60 * ONE_MINUTE_MS;
export function getElapsedDays(timestamp: string): number {
return Math.floor(
(new Date().getTime() - new Date(timestamp).getTime()) / ONE_DAY_MS
);
}
export function getElapsedMinutes(date: Date): number {
return Math.floor((new Date().getTime() - date.getTime()) / ONE_MINUTE_MS);
}
export function getElapsedHours(date: Date | string): number {
const lastDate =
typeof date === 'string'
? DateTime.fromISO(date)
: DateTime.fromJSDate(date);
if (!lastDate.isValid) {
return 0;
}
const diff = DateTime.now().diff(lastDate, 'hours');
return Math.floor(diff.hours);
}