@f-fjs/intl-relativetimeformat
TypeScript icon, indicating that this package has built-in type declarations

4.5.10 • Public • Published

Intl RelativeTimeFormat

A spec-compliant polyfill/ponyfill for Intl.RelativeTimeFormat fully tested by the official ECMAScript Conformance test suite

npm Version size

Installation

npm install @f-fjs/intl-relativetimeformat

Requirements

This package requires the following capabilities:

  1. Intl.PluralRules

NOTE: formatToParts only works on Node 10+ due to lack of Intl.NumberFormat.prototype.formatToParts natively

Usage

Ponyfill

To use the ponyfill, import it along with its data:

import IntlRelativeTimeFormat from '@f-fjs/intl-relativetimeformat';
// locale-data for zh
IntlRelativeTimeFormat.__addLocaleData(
  require('@f-fjs/intl-relativetimeformat/dist/locale-data/zh.json')
);

// locale-data for zh
IntlRelativeTimeFormat.__addLocaleData(
  require('@f-fjs/intl-relativetimeformat/dist/locale-data/en.json')
);

new IntlRelativeTimeFormat('zh-CN').format(-1, 'second'); // '1秒钟前'

Polyfill

To use the polyfill, just import it to make sure that a fully functional Intl.RelativeTimeFormat is available in your environment:

import '@f-fjs/intl-relativetimeformat/polyfill';
import '@f-fjs/intl-relativetimeformat/dist/locale-data/de'; // Add locale data for de

If you want to polyfill all locales (e.g for Node):

import '@f-fjs/intl-relativetimeformat/polyfill-locales';

Tests

This library is fully test262-compliant.

Dependents (0)

Package Sidebar

Install

npm i @f-fjs/intl-relativetimeformat

Weekly Downloads

98

Version

4.5.10

License

MIT

Unpacked Size

18.9 MB

Total Files

480

Last publish

Collaborators

  • hitko