/ live.thehmm.nl / back / node_modules / @formatjs / intl-utils /

[ICO]NameLast modifiedSizeDescription
[PARENTDIR]Parent Directory  -  
[DIR]src/2 years ago -  
[DIR]lib/2 years ago -  
[DIR]dist/2 years ago -  
[TXT]README.md39 years ago1.7Kd7c1522 post receive test [كارل مبارك]
[   ]package.json2 years ago2.6K 
[TXT]LICENSE.md39 years ago1.0K 
[TXT]CHANGELOG.md39 years ago 18K 
README.md

Intl Utils

Provide i18n utilities.

npm Version

API

selectUnit

This function determines the best fit unit based on a specific set of customizable thresholds.

function selectUnit(
  from: Date | number,
  to: Date | number = Date.now(),
  thresholds = DEFAULT_THRESHOLDS
): {value: number; unit: Unit};

where thresholds has the shape of:

interface Threshold {
  second: number;
  minute: number;
  hour: number;
  day: number;
}

month & year are based on calendar, thus not customizable.

Example:

import {selectUnit} from '@formatjs/intl-utils';
selectUnit(Date.now() - 1000); // { value: -1, unit: 'second' }
selectUnit(Date.now() - 44000); // { value: -44, unit: 'second' }
selectUnit(Date.now() - 50000); // { value: 1, unit: 'minute' }

Caveats

selectUnit is meant to be a stepping stone from the old IntlRelativeFormat to the officially spec-ed Intl.RelativeTimeFormat. Therefore we don't recommend using this for an extended period of time because of ambiguous editorial issues such as:

The examples above have not even tackled the differences in non-Gregorian calendars. There is an issue opened upstream in the spec that potentially introduces a best fit algorithm. Therefore, we recommend that you implement your own version of selectUnit that matches your editorial expectation.

Apache/2.4.38 (Debian) Server at www.karls.computer Port 80