UNPKG

@opentiny/fluent-editor

Version:

A rich text editor based on Quill 2.0, which extends rich modules and formats on the basis of Quill. It's powerful and out-of-the-box.

40 lines (39 loc) 1.33 kB
import "../config/index.es.js"; import { isUndefined } from "../utils/is.es.js"; import { LANG_CONF, defaultLanguage, CHANGE_LANGUAGE_EVENT } from "../config/editor.config.es.js"; class I18N { constructor(quill, options) { this.quill = quill; this.isFullscreen = false; this.options = { lang: "en-US", langText: LANG_CONF["en-US"] }; this.options = Object.assign({}, options, this.resolveLanguageOption(options || {})); this.changeLanguage(this.options); } resolveLanguageOption(options) { if (isUndefined(options.lang)) { options.lang = defaultLanguage; } if (!(options.lang in LANG_CONF)) { console.warn(`The language ${options.lang} is not supported. Use the default language: ${defaultLanguage}`); options.lang = defaultLanguage; } return { lang: options.lang, langText: Object.assign({}, LANG_CONF[options.lang], options.langText || {}) }; } changeLanguage(options) { const langOps = this.resolveLanguageOption(options); if (langOps.lang === this.quill.lang) return; this.options.lang = langOps.lang; this.options.langText = langOps.langText; this.quill.emitter.emit(CHANGE_LANGUAGE_EVENT, this.options.lang, this.options.langText); } } export { I18N as default }; //# sourceMappingURL=i18n.es.js.map