misc_pterodactyl-panel/resources/assets/scripts/helpers/index.ts

29 lines
723 B
TypeScript
Raw Normal View History

2018-12-17 02:57:34 +00:00
import { format } from 'date-fns';
/**
* Return the human readable filesize for a given number of bytes. This
* uses 1024 as the base, so the response is denoted accordingly.
*/
2018-12-17 02:57:34 +00:00
export function readableSize (bytes: number): string {
if (Math.abs(bytes) < 1024) {
return `${bytes} Bytes`;
}
2018-12-17 02:57:34 +00:00
let u: number = -1;
const units: Array<string> = ['KiB', 'MiB', 'GiB', 'TiB'];
do {
bytes /= 1024;
u++;
} while (Math.abs(bytes) >= 1024 && u < units.length - 1);
return `${bytes.toFixed(1)} ${units[u]}`;
}
/**
* Format the given date as a human readable string.
*/
2018-12-17 02:57:34 +00:00
export function formatDate (date: string): string {
return format(date, 'MMM D, YYYY [at] HH:MM');
}