diff options
-rw-r--r-- | mod.ts | 3 | ||||
-rw-r--r-- | src/show.ts | 17 |
2 files changed, 19 insertions, 1 deletions
@@ -5,6 +5,7 @@ */ import { e } from "./src/element.ts"; import { OVar } from "./src/observable.ts"; +import * as show from "./src/show.ts"; -export { OVar, e }; +export { OVar, e, show }; diff --git a/src/show.ts b/src/show.ts new file mode 100644 index 0000000..193a93b --- /dev/null +++ b/src/show.ts @@ -0,0 +1,17 @@ + +export function byte_size(x: number): string { + if (x > 1000000000) return (x / 1000000000).toFixed(1) + "G" + if (x > 1000000) return (x / 1000000).toFixed(1) + "M" + if (x > 1000) return (x / 1000).toFixed(1) + "k" + return x.toString() +} + +export function duration(t: number): string { + if (t < 0) return "-" + duration(-t) + let h = 0, m = 0, s = 0; + while (t > 3600) t -= 3600, h++; + while (t > 60) t -= 60, m++; + while (t > 1) t -= 1, s++; + return (h ? h + "h" : "") + (m ? m + "m" : "") + (s ? s + "s" : "") +} + |