UNPKG

prodap-lore-locale

Version:

Package used to carry out the internationalization of Lore

78 lines 3.73 kB
"use strict"; var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) { if (kind === "m") throw new TypeError("Private method is not writable"); if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter"); if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it"); return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value; }; var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) { if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter"); if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it"); return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); }; var _Locales_locale; Object.defineProperty(exports, "__esModule", { value: true }); exports.Locales = void 0; const translations_1 = require("./translations"); class Locales { constructor(props) { _Locales_locale.set(this, void 0); __classPrivateFieldSet(this, _Locales_locale, !props ? null : typeof props === 'string' ? props : props.locale, "f"); this.fecthTranslation(__classPrivateFieldGet(this, _Locales_locale, "f")); } fecthTranslation(newLocale) { try { translations_1.translations.map(({ data, locale }) => { if (!newLocale || newLocale.toLowerCase() === locale.toLowerCase() || newLocale.split('-')[0] === locale.split('-')[0]) { __classPrivateFieldSet(this, _Locales_locale, newLocale ? newLocale : locale, "f"); const translation = { [locale]: {} }; data.map((item) => { const { key, value } = item; return (translation[locale][key] = value); }); return (this[__classPrivateFieldGet(this, _Locales_locale, "f")] = translation[locale]); } return this[newLocale]; }); } catch (error) { console.error('Failed to fetch translation\n', error); } } getCurrentLocale() { return __classPrivateFieldGet(this, _Locales_locale, "f"); } getLocales() { try { return translations_1.translations.map(({ locale }) => locale); } catch (error) { console.error('Failed to fetch locales\n', error); } } translate(scope) { try { if (Array.isArray(scope) && scope.length >= 1) { return scope.map((value) => { try { return this[__classPrivateFieldGet(this, _Locales_locale, "f")][value]; } catch (error) { console.error(`Failed to translate - ${value} in ${__classPrivateFieldGet(this, _Locales_locale, "f")}\n`, error); } }); } else { return this[__classPrivateFieldGet(this, _Locales_locale, "f")][scope]; } } catch (error) { console.error(`Failed to translate - ${scope} in ${__classPrivateFieldGet(this, _Locales_locale, "f")}\n`, error); } } } exports.Locales = Locales; _Locales_locale = new WeakMap(); //# sourceMappingURL=locales.js.map