How to use the ilib.setLocale function in ilib

To help you get started, we’ve selected a few ilib examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github enactjs / enact / packages / i18n / src / glue.js View on Github external
* See the License for the specific language governing permissions and
 * limitations under the License.
 */

import ilib from 'ilib';

import './dates';

import Loader from './Loader';
import {updateLocale} from '../locale';

ilib.setLoaderCallback(new Loader());

if (typeof window === 'object' && typeof window.UILocale !== 'undefined') {
	// this is a hack until GF-1581 is fixed
	ilib.setLocale(window.UILocale);
}

// we go ahead and run this once during loading of iLib settings are valid
// during the loads of later libraries.
updateLocale(null, true);
github enactjs / enact / packages / i18n / locale / locale.js View on Github external
const updateLocale = function (locale) {
	// blow away the cache to force it to reload the manifest files for the new app
	// eslint-disable-next-line no-undefined
	if (ilib._load) ilib._load.manifest = undefined;
	// remove the cache of the platform name to allow transition between snapshot and browser
	delete ilib._platform;
	// load any external ilib/resbundle data
	ilib.data = global.ilibData || ilib.data;
	ilib.data.cache = ilib.data.cache || {};
	ilib.data.cache['ResBundle-strings'] = global.resBundleData || {};
	// ilib handles falsy values and automatically uses local locale when encountered which
	// is expected and desired
	ilib.setLocale(locale);
	const newLocale = ilib.getLocale();
	// Recreate the case mappers to use the just-recently-set locale
	initCaseMappers();

	return newLocale;
};