add duration to workflow block timeline (#3107)
This commit is contained in:
@@ -47,3 +47,33 @@ export const getInitialValues = (
|
||||
|
||||
return iv as Record<string, unknown>;
|
||||
};
|
||||
|
||||
export interface Duration {
|
||||
hour: number;
|
||||
minute: number;
|
||||
second: number;
|
||||
}
|
||||
|
||||
export const toDuration = (seconds: number): Duration => {
|
||||
let minutes = Math.floor(seconds / 60);
|
||||
let hours = Math.floor(minutes / 60);
|
||||
seconds = seconds % 60;
|
||||
minutes = minutes % 60;
|
||||
hours = hours % 24;
|
||||
|
||||
return {
|
||||
hour: Math.floor(hours),
|
||||
minute: Math.floor(minutes),
|
||||
second: Math.floor(seconds),
|
||||
};
|
||||
};
|
||||
|
||||
export const formatDuration = (duration: Duration): string => {
|
||||
if (duration.hour) {
|
||||
return `${duration.hour}h ${duration.minute}m ${duration.second}s`;
|
||||
} else if (duration.minute) {
|
||||
return `${duration.minute}m ${duration.second}s`;
|
||||
} else {
|
||||
return `${duration.second}s`;
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user