mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-19 22:24:11 +00:00
refactor: fix missed first update (#1031)
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
type MaybeNumber = number | null;
|
||||
import type { MaybeNumber } from 'ontime-types';
|
||||
|
||||
export const MILLIS_PER_SECOND = 1000;
|
||||
export const MILLIS_PER_MINUTE = 1000 * 60;
|
||||
@@ -7,26 +7,60 @@ export const MILLIS_PER_HOUR = 1000 * 60 * 60;
|
||||
export const dayInMs = 86400000;
|
||||
export const maxDuration = dayInMs - MILLIS_PER_SECOND;
|
||||
|
||||
function convertMillis(millis: MaybeNumber, conversion: number) {
|
||||
/**
|
||||
* Utility converts milliseconds to a specific unit
|
||||
* @param millis
|
||||
* @param conversion
|
||||
* @returns
|
||||
*/
|
||||
function convertMillis(millis: MaybeNumber, conversion: number): number {
|
||||
if (!millis) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
// for negative times, we want to round up
|
||||
if (millis < 0) {
|
||||
Math.ceil(millis / conversion);
|
||||
}
|
||||
return Math.floor(millis / conversion);
|
||||
}
|
||||
|
||||
export function millisToSeconds(millis: MaybeNumber) {
|
||||
/**
|
||||
* Converts value in milliseconds to seconds
|
||||
* @param millis
|
||||
* @returns
|
||||
*/
|
||||
export function millisToSeconds(millis: MaybeNumber): number {
|
||||
return convertMillis(millis, MILLIS_PER_SECOND);
|
||||
}
|
||||
|
||||
export function millisToMinutes(millis: MaybeNumber) {
|
||||
/**
|
||||
* Converts value in milliseconds to minutes
|
||||
* @param millis
|
||||
* @returns
|
||||
*/
|
||||
export function millisToMinutes(millis: MaybeNumber): number {
|
||||
return convertMillis(millis, MILLIS_PER_MINUTE);
|
||||
}
|
||||
|
||||
export function millisToHours(millis: MaybeNumber) {
|
||||
/**
|
||||
* Converts value in milliseconds to hours
|
||||
* @param millis
|
||||
* @returns
|
||||
*/
|
||||
export function millisToHours(millis: MaybeNumber): number {
|
||||
return convertMillis(millis, MILLIS_PER_HOUR);
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts value in seconds to minutes
|
||||
* @param seconds
|
||||
* @returns
|
||||
*/
|
||||
export function secondsToMinutes(seconds: number): number {
|
||||
return Math.floor(seconds / 60);
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts value in seconds to hours
|
||||
* @param seconds
|
||||
* @returns
|
||||
*/
|
||||
export function secondsToHours(seconds: number): number {
|
||||
return Math.floor(seconds / 3600);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user