/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
/** * Wrapper over FluentReact. It encapsulates instantiation of the localization * bundles, and offers a simpler way of accessing `getString`.
*/ class FluentL10n { /** * Initializes the wrapper, generating the bundles for the given resource ids. * It can optionally add the right attributes to the document element. * @param {Array} resourceIds * @param {Object} [options] * @param {boolean} [options.setAttributesOnDocument]
*/
async init(resourceIds, { setAttributesOnDocument } = {}) { if (setAttributesOnDocument) { const primaryLocale = Services.locale.appLocalesAsBCP47[0];
document.documentElement.setAttribute("lang", primaryLocale); const direction = Services.locale.isAppLocaleRTL ? "rtl" : "ltr";
document.documentElement.setAttribute("dir", direction);
}
/** * Returns the localized string for the provided id, formatted using args.
*/
getString(...args) { // Forward arguments via .apply() so that the original method can: // - perform asserts based on the number of arguments // - add new arguments returnthis._reactLocalization.getString.apply( this._reactLocalization,
args
);
}
}
// Export the class
exports.FluentL10n = FluentL10n;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.