0.2.1 • Published 4 years ago

human-readable v0.2.1

Weekly downloads
94
License
MIT
Repository
github
Last release
4 years ago

human-readable

Presenting values in human-readable form.

npm no dependencies


Installation

npm add human-readable

Usage

Size formatter

import { sizeFormatter } from 'human-readable'

const format = sizeFormatter({
    std: 'JEDEC', // 'SI' (default) | 'IEC' | 'JEDEC'
    decimalPlaces: 2,
    keepTrailingZeroes: false,
    render: (literal, symbol) => `${literal} ${symbol}B`,
})

format(4096) // '4 KB'

const defaults = sizeFormatter()

defaults(4096) // '4.1 kB'

Duration formatter

import { durationFormatter } from 'human-readable'

const span = Date.now() - Date.parse('2019-01-01T09:00:00.000+0200')

const format = durationFormatter({
    // 'y' | 'mo' | 'w' | 'd' | 'h' | 'm' | 's' | 'ms'
    allowMultiples: ['y', 'mo', 'd'],
    keepNonLeadingZeroes: false, // E.g. '1y 0mo 0d'
})

format(span) // '1y 1mo 19d'

const defaults = durationFormatter()

defaults(span) // '1y 1mo 19d 19h 41m 48s'

Disk size units

DecimalSIBinaryIECJEDEC
(103)1kB(210)1KiBKB
(103)2MB(210)2MiBMB
(103)3GB(210)3GiBGB
(103)4TB(210)4TiBTB
(103)5PB(210)5PiBPB

License

MIT