javascript-i18n-library
v1.6.0
Published
This javascript library is used to format dates, numbers and currencies. It's compatible with Node and Browsers.
Downloads
288
Keywords
Readme
javascript-i18n-library
This javascript library is used to format dates, numbers and currencies. It's compatible with Node and Browsers. It depends on Moment.JS and Numbro.JS
Installation
npm install javascript-i18n-library --save
Test
npm test
To automatically launch the tests when a file is changed :
npm run-script watch-test
Configuration
The factory accept a config object to override default configuration.
{
referenceTimezone: 'Europe/Paris', // timezone used when no timezone is defined on the date to parse
timezone: 'Europe/Paris', // timezone used to format the date
offset: 120, // override the targetTimezone, add this offset (in minutes) to the parsed date
locale: 'fr-FR', // locale used to format numbers, currencies and long date format
currency: 'EUR', // the currency to use when formatting currencies values
dateFormat: 'DMY', // generic format date (DMY, MDY or YMD)
isMeridianTime: false // format the time in meridian time or 24 hours time
}
Configuration Node / Browserify
var i18nServiceFactory = require('javascript-i18n-library');
var config = {
referenceTimezone: 'Europe/Paris',
timezone: 'Europe/Paris',
locale: 'fr-FR',
currency: 'EUR',
dateFormat: 'DMY',
isMeridianTime: false
};
var i18nService = i18nServiceFactory(config);
Configuration Browser
var config = {
referenceTimezone: 'Europe/Paris',
timezone: 'Europe/Paris',
locale: 'fr-FR',
currency: 'EUR',
dateFormat: 'DMY',
isMeridianTime: false
};
var i18nService = window.iadvize.i18nServiceFactory(config);
Usage
var dateToFormat = "1990-11-26T23:21:00"; // also accepts "1990-11-26 23:21:00" format
// Dates
i18nService.formatDate(dateToFormat); // 26/11/1990
i18nService.formatDate(dateToFormat, i18nService.formats.SHORT); // 26/11/1990
i18nService.formatDate(dateToFormat, i18nService.formats.MEDIUM); // 26/11/1990
i18nService.formatDate(dateToFormat, i18nService.formats.LONG); // 26 novembre 1990
// Time
i18nService.formatTime(dateToFormat); // 23:21
i18nService.formatTime(dateToFormat, i18nService.formats.SHORT); // 23:21
i18nService.formatTime(dateToFormat, i18nService.formats.MEDIUM); // 23:21:00
i18nService.formatTime(dateToFormat, i18nService.formats.LONG); // 23:21:00
// DateTime
i18nService.formatDateTime(dateToFormat); // 26/11/1990 23:21
i18nService.formatDateTime(dateToFormat, i18nService.formats.SHORT); // 26/11/1990 23:21
i18nService.formatDateTime(dateToFormat, i18nService.formats.MEDIUM); // 26/11/1990 23:21:00
i18nService.formatDateTime(dateToFormat, i18nService.formats.LONG); // 26 novembre 1990 23:21:00
// TimeAgo
i18nService.getTimeAgoFromTimestamp(1444227494000 /* millis */);
i18nService.getTimeAgoFromDateTime(dateToFormat);
// Format numbers
i18nService.formatNumber(1000); // '1 000'
i18nService.unformat('1 000'); // 1000
i18nService.formatNumber(1000.1234); // '1 000,1234'
i18nService.formatNumber(1000.1234, 0); // '1 000'
i18nService.formatNumber(1000.1234, 1); // '1 000,1'
// Format currency
i18nService.formatCurrency(1000); // '1 000€'
i18nService.formatCurrency(1000, '$'), // 1 000$
i18nService.formatCurrency(1000.1234, 2, '$'), // 1 000,12$
i18nService.unformat('1 000€'); // 1000
// Format TimeAgo
i18nService.formatTimeAgoFromDateTime(dateToFormat); // il y a quelques secondes
i18nService.formatTimeAgoFromTimestamp(1444227494000 /* millis */); // il y a quelques secondes
// Libs exposition
i18nService.moment;
i18nService.momentTimezone;
i18nService.numbro;