D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
usr
/
share
/
grafana
/
public
/
app
/
features
/
explore
/
Filename :
Time.tsx
back
Copy
import React from 'react'; import { toDuration } from '@grafana/data'; export interface TimeProps { timeInMs: number; className?: string; humanize?: boolean; } export const Time = ({ timeInMs, className, humanize }: TimeProps) => { return <span className={className}>{formatTime(timeInMs, humanize)}</span>; }; const formatTime = (timeInMs: number, humanize = false): string => { const inSeconds = timeInMs / 1000; if (!humanize) { return `${inSeconds.toFixed(1)}s`; } const duration = toDuration(inSeconds, 'seconds'); const hours = duration.hours(); const minutes = duration.minutes(); const seconds = duration.seconds(); if (hours) { return `${hours}h ${minutes}m ${seconds}s`; } if (minutes) { return `${minutes}m ${seconds}s`; } return `${seconds}s`; };