UNPKG

devegram-ml

Version:

Devegram multi-language translation for web development

47 lines (45 loc) 1.38 kB
export const ml = { on: false, lang: null, langs: {}, getM(t, d, translate) { if (!translate) return d return this.langs[this.lang][t] || d || console.error('Devegram ML: Missing Translations for ', t) }, getFrom(l, t, d) { if (!this.on) return t return this.langs[l][t] || d || console.error('Devegram ML: Missing Translations for ', t, 'in ' + l + ' language') }, get: function (t, d) { if (!this.on) return t return this.langs[this.lang][t] || d || console.error('Devegram ML: Missing Translations for ', t) }, hasLang: function (l) { return this.langs.hasOwnProperty(l) }, hasTrans: function (t) { return this.langs[this.lang].hasOwnProperty(t) }, addTrans: function (c) { this.langs[c.lang][c.key] = c.value }, addLang: function (lang, trans) { if (lang.constructor === Array) { lang.forEach((config) => { this.langs[config.lang] = config.translation }) } else { this.langs[lang] = trans } }, setLang: function (l) { this.lang = l }, getLangs: function () { return Object.keys(this.langs) }, getLang: function (l) { return this.langs[l] } } export default ml