UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

70 lines (68 loc) 2.79 kB
/** * DevExtreme (cjs/__internal/core/localization/globalize/message.js) * Version: 25.2.3 * Build date: Fri Dec 12 2025 * * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ "use strict"; require("../../../core/localization/globalize/core"); require("globalize/message"); var _core2 = _interopRequireDefault(require("../../../core/localization/core")); var _message2 = _interopRequireDefault(require("../../../core/localization/message")); var _globalize = _interopRequireDefault(require("globalize")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e } } if (null !== _globalize.default && void 0 !== _globalize.default && _globalize.default.formatMessage) { const DEFAULT_LOCALE = "en"; const originalLoadMessages = _globalize.default.loadMessages; _globalize.default.loadMessages = messages => { _message2.default.load(messages) }; const globalizeMessageLocalization = { engine: () => "globalize", ctor() { this.load(this._dictionary) }, load(messages) { this.callBase(messages); originalLoadMessages(messages) }, getMessagesByLocales: () => _globalize.default.cldr.get("globalize-messages"), getFormatter(key, locale) { const currentLocale = locale || _core2.default.locale(); let formatter = this._getFormatterBase(key, locale); if (!formatter) { formatter = this._formatterByGlobalize(key, locale) } if (!formatter && currentLocale !== DEFAULT_LOCALE) { formatter = this.getFormatter(key, DEFAULT_LOCALE) } return formatter }, _formatterByGlobalize(key, locale) { const currentGlobalize = !locale || locale === _core2.default.locale() ? _globalize.default : new _globalize.default(locale); let result; if (this._messageLoaded(key, locale)) { result = currentGlobalize.messageFormatter(key) } return result }, _messageLoaded(key, locale) { const currentCldr = locale ? new _globalize.default(locale).cldr : _globalize.default.locale(); const value = currentCldr.get(["globalize-messages/{bundle}", key]); return !!value }, _loadSingle(key, value, locale) { const data = {}; data[locale] = {}; data[locale][key] = value; this.load(data) } }; _message2.default.inject(globalizeMessageLocalization) }