@telerik/kendo-intl
Version:
A package exporting functions for date and number parsing and formatting
158 lines (106 loc) • 5.85 kB
Markdown
[](http://commitizen.github.io/cz-cli/)
[](https://travis-ci.org/telerik/kendo-intl)
[](https://badge.fury.io/js/%40telerik%2Fkendo-intl)
This repository contains the source code and documentation of the Kendo UI Internationalization package.
It includes methods for parsing and formatting dates and numbers by using [Unicode Common Locale Data Repository (CLDR)](http://cldr.unicode.org/) data. These methods are split into the following modules:
* [CLDR](#cldr-data)
* [Date Parsing](#date-parsing)
* [Date Formatting](#date-formatting)
* [Number Parsing](#number-parsing)
* [Number Formatting](#number-formatting)
* [General Formatting](#general-formatting)
## Basic Usage
### CLDR Data
To download the full CDLR database, you need to install the [cldr-data module](https://www.npmjs.com/package/cldr-data) by running the following command.
```sh
npm install --save cldr-data
```
To apply the methods for different locales, load the `likelySubtags` and the locale data by using the [`load`](https://github.com/telerik/kendo-intl/blob/master/docs/cldr/api.md#load) method.
Additionally, the library requires you to load:
* The supplemental `currencyData` for the default currency formatting.
* The `weekData` for the day of week formatting.
```javascript
import { load } from '@telerik/kendo-intl';
load(
require("cldr-data/supplemental/likelySubtags.json"),
require("cldr-data/supplemental/currencyData.json"),
require("cldr-data/supplemental/weekData.json"),
require("cldr-data/main/bg/numbers.json"),
require("cldr-data/main/bg/currencies.json"),
require("cldr-data/main/bg/ca-gregorian.json"),
require("cldr-data/main/bg/dateFields.json"),
require("cldr-data/main/bg/timeZoneNames.json")
);
```
For more examples and available configuration options, refer to the article on [CLDR Data](https://github.com/telerik/kendo-intl/blob/master/docs/cldr/index.md).
Date parsing converts a string into a `Date` object by using the specific settings of the locale.
```js
import { parseDate } from '@telerik/kendo-intl';
parseDate("11/6/2000", ["G", "d"]); // Mon Nov 06 2000
parseDate("Montag, 6.11.2000", "EEEE, d.MM.y", "de"); // Mon Nov 06 2000
parseDate("2000-11-06T10:30Z"); // Mon Nov 06 2000 12:30
```
For more examples and available configuration options, refer to the article on [date parsing](https://github.com/telerik/kendo-intl/blob/master/docs/date-parsing/index.md).
Date formatting converts a `Date` object into a human-readable string by using the specific settings of the locale.
```js
import { formatDate } from '@telerik/kendo-intl';
formatDate(new Date(2000, 10, 6), "d"); // 11/6/2000
formatDate(new Date(2000, 10, 6), "yMd", "de"); // 6.11.2000
formatDate(new Date(2000, 10, 6), "EEEE, d.MM.y", "bg"); // понеделник, 6.11.2000
```
For more examples and available configuration options, refer to the article on [date formatting](https://github.com/telerik/kendo-intl/blob/master/docs/date-formatting/index.md).
Number parsing converts a string into a `Number` object by using the specific settings of the locale.
```js
import { parseNumber } from '@telerik/kendo-intl';
parseNumber("12.22"); // 12.22
parseNumber("1.212,22 €", "de"); // 1212.22
parseNumber("10.22 %"); // 0.1022
parseNumber("1,0000123e+4", "bg"); // 10000.123
```
For more examples and available configuration options, refer to the article on [number parsing](https://github.com/telerik/kendo-intl/blob/master/docs/num-parsing/index.md).
Number formatting converts a `Number` object into a human-readable string using the specific settings of the locale.
```js
import { formatNumber } from '@telerik/kendo-intl';
formatNumber(1234.567, "n2"); // 1,234.57
formatNumber(1234.567, "c", "de"); // 1.234,57 €
formatNumber(1234.567, {
style: "currency",
currency: "USD",
currencyDisplay: "displayName"
}, "bg"); // 1 234,57 щатски долара
formatNumber(2345678, "##,#.00"); // 2,345,678.00
```
For more examples and available configuration options, refer to the article on [number formatting](https://github.com/telerik/kendo-intl/blob/master/docs/num-formatting/index.md).
General formatting provides methods for independent placeholder and type formatting by using the specific settings of the locale.
```js
import { format, toString } from '@telerik/kendo-intl';
format('Date: {0:d} - Price: {1:c}', [new Date(), 10.5], "en") // Date: 1/5/2017 - Price: $10.50
toString(10.5, "c", "bg"); // 10,50 лв.
toString(new Date(), "d"); // 1/5/2017
```
For more examples and available configuration options, refer to the article on [general formatting](https://github.com/telerik/kendo-intl/blob/master/docs/general-formatting/index.md).
1. The Internationalization library is published as a [scoped NPM package](https://docs.npmjs.com/misc/scope) in the [NPMJS Telerik account](https://www.npmjs.com/~telerik).
2. Download and install the module:
```bash
npm install --save '@telerik/kendo-intl';
```
3. Once installed, import the Internationalization in your application root module:
```javascript
// ES2015 module syntax
import { formatDate, parseDate } from '@telerik/kendo-intl';
//or
import { formatNumber, parseNumber } from '@telerik/kendo-intl';
```
```javascript
// CommonJS format
var numbers = require('@telerik/kendo-intl/number').numbers;
//or
var dates = require('@telerik/kendo-intl/dates').dates;
```