aboutsummaryrefslogtreecommitdiff
path: root/src/zenserver/frontend/html/util/friendly.js
blob: b27721964d5b6ba1fafdb6e2eb172a2157b5f4b4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Copyright Epic Games, Inc. All Rights Reserved.

"use strict";

////////////////////////////////////////////////////////////////////////////////
export class Friendly
{
	static sep(value, prec=0)
	{
		return (+value).toLocaleString("en", {
			style: "decimal",
			minimumFractionDigits : prec,
			maximumFractionDigits : prec,
		});
	}

	static k(x, p=0)	{ return Friendly.sep((x + 999)  / Math.pow(10, 3)|0, p) + "K"; }
	static m(x, p=1)	{ return Friendly.sep( x         / Math.pow(10, 6),   p) + "M"; }
	static g(x, p=2)	{ return Friendly.sep( x         / Math.pow(10, 9),   p) + "G"; }
	static kib(x, p=0)	{ return Friendly.sep((x + 1023) / (1 << 10)|0, p) + " KiB"; }
	static mib(x, p=1)	{ return Friendly.sep( x         / (1 << 20),   p) + " MiB"; }
	static gib(x, p=2)	{ return Friendly.sep( x         / (1 << 30),   p) + " GiB"; }
}