@rtorcato/js-common / i18n
i18n
Functions
detectLanguage()
detectLanguage(
defaultLang?):string
Defined in: i18n/index.ts:12
Detects the user's preferred language from the browser or Node.js environment.
Example
detectLanguage() // 'en' (from navigator.language 'en-GB' or LANG 'en_US.UTF-8')
detectLanguage('fr') // 'fr' when nothing can be detected
Parameters
defaultLang?
string = 'en'
Returns
string
The language code (e.g., 'en', 'fr').
formatNumber()
formatNumber(
value,locale?,options?):string
Defined in: i18n/index.ts:37
Formats a number as a localized string.
Example
formatNumber(1234.5, 'en-US') // '1,234.5'
formatNumber(1234.5, 'de-DE') // '1.234,5'
formatNumber(0.42, 'en-US', { style: 'percent' }) // '42%'
Parameters
value
number
The number to format.
locale?
string
The locale code (e.g., 'en-US').
options?
NumberFormatOptions
Intl.NumberFormat options.
Returns
string
formatDateI18n()
formatDateI18n(
date,locale?,options?):string
Defined in: i18n/index.ts:60
Formats a date as a localized string.
Example
const d = new Date('2026-08-11T12:00:00Z')
formatDateI18n(d, 'en-US', { timeZone: 'UTC' }) // '8/11/2026'
formatDateI18n(d, 'en-GB', { timeZone: 'UTC' }) // '11/08/2026'
Parameters
date
Date
The date to format.
locale?
string
The locale code (e.g., 'en-US').
options?
DateTimeFormatOptions
Intl.DateTimeFormat options.
Returns
string
t()
t(
key,dict,lang?):string
Defined in: i18n/index.ts:75
Simple translation function using a dictionary object.
Parameters
key
string
The translation key.
dict
Record<string, Record<string, string>>
The dictionary object (e.g., { en: { hello: 'Hello' }, fr: { hello: 'Bonjour' } }).
lang?
string
The language code (optional, defaults to detected language).
Returns
string