UNPKG

@mongez/localization

Version:

A simple i18n localization handler for browsers and nodejs

37 lines (36 loc) 1.71 kB
'use strict';var reinforcements=require('@mongez/reinforcements'),placeholderPatternConfig=require('./placeholder-pattern-config.js'),translator=require('./translator.js');let localesConfig = {}; /** * Initiate localization configurations */ function setLocalizationConfigurations(configurationsList) { localesConfig = reinforcements.merge(localesConfig, configurationsList); if (configurationsList.translations) { translator.setTranslationsList(configurationsList.translations); } if (configurationsList.converter) { translator.setConverter(configurationsList.converter); } if (configurationsList.fallback) { translator.setFallbackLocaleCode(configurationsList.fallback); } if (configurationsList.defaultLocaleCode) { translator.setCurrentLocaleCode(configurationsList.defaultLocaleCode); } if (configurationsList.placeholderPattern) { placeholderPatternConfig.setPlaceholderPattern(typeof configurationsList.placeholderPattern === "string" ? placeholderPatternConfig.placeholderPatterns[configurationsList.placeholderPattern] : configurationsList.placeholderPattern); } } /** * Get current localization configurations list */ function getLocalizationConfigurations() { return localesConfig; } /** * Get single value of the localization configurations list */ function getLocaleConfig(key, defaultValue = null) { return reinforcements.get(localesConfig, key, defaultValue); }exports.getLocaleConfig=getLocaleConfig;exports.getLocalizationConfigurations=getLocalizationConfigurations;exports.setLocalizationConfigurations=setLocalizationConfigurations;//# sourceMappingURL=config.js.map