UNPKG

nowjs-core

Version:

NowCanDo Javascript Core [nowjs-core] is a library written by TypeScript code maintains under Apache 2.0 licence

31 lines (30 loc) 1.32 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); class Translator { static configure(options) { Translator.activeOptions = options || {}; Translator.activeOptions.defaultLocale = Translator.activeOptions.defaultLocale || 'global'; Translator.activeOptions.globalLocaleKey = Translator.activeOptions.globalLocaleKey || 'global'; Translator.localeData = options.locales || {}; Translator.activeLocale = Translator.activeLocale || Translator.activeOptions.defaultLocale; } static setActiveLocale(locale) { Translator.activeLocale = locale; } static setLocaleData(locale, data) { Translator.localeData[locale] = data; } static translate(key, locale, options) { const localeData = Translator.localeData; const activeLocale = typeof locale === 'string' ? locale || Translator.activeLocale : Translator.activeLocale; if (!localeData || !localeData[activeLocale] || !localeData.global) { return key; } const ld = localeData[activeLocale || 'global']; const settings = typeof locale === 'object' ? locale : options; return ld[key] || key; } } exports.Translator = Translator; exports.t = Translator.translate; exports.translate = exports.t;