{"version":3,"file":"i18next.js","names":["normalizeData","value","Number","toString","JSON","parse","decodeURIComponent","_unused","extractOptionsFromString","string","options","regex","test","values","exec","val","split","key","replace","trim","geti18nOptions","element","data","dataset","coreuiI18n","coreuiI18nDate","i18nKeys","Object","keys","filter","startsWith","pureKey","charAt","toLowerCase","slice","translate","language","currentLanguage","document","documentElement","lang","setAttribute","btnToActive","querySelector","querySelectorAll","classList","remove","add","innerHTML","i18next","t","date","dateFormat","Date","formatParams","use","i18nextHttpBackend","i18nextBrowserLanguageDetector","init","fallbackLng","backend","loadPath","detection","order","on","loadNamespaces","then"],"sources":["../../src/js/i18next.js"],"sourcesContent":["/* global i18next, i18nextBrowserLanguageDetector, i18nextHttpBackend */\n\nconst normalizeData = value => {\n if (value === 'true') {\n return true\n }\n\n if (value === 'false') {\n return false\n }\n\n if (value === Number(value).toString()) {\n return Number(value)\n }\n\n if (value === '' || value === 'null') {\n return null\n }\n\n if (typeof value !== 'string') {\n return value\n }\n\n try {\n return JSON.parse(decodeURIComponent(value))\n } catch {\n return value\n }\n}\n\nconst extractOptionsFromString = string => {\n const options = {}\n const regex = /{([^}]+)}/\n\n if (regex.test(string)) {\n const values = regex.exec(string)[1]\n\n if (values) {\n for (const val of values.split(/,(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)(?=(?:[^']*'[^']*')*[^']*$)(?![^()[\\]{}]*[)\\]}])/g)) {\n const [key, value] = val.replace(/'/g, '').split(':')\n options[key.trim()] = normalizeData(value.trim())\n }\n }\n }\n\n return options\n}\n\nconst geti18nOptions = element => {\n const data = element.dataset.coreuiI18n || element.dataset.coreuiI18nDate\n const options = extractOptionsFromString(data)\n\n const i18nKeys = Object.keys(element.dataset).filter(key => key.startsWith('coreuiI18n') && key !== 'coreuiI18n' && key !== 'coreuiI18nDate')\n\n for (const key of i18nKeys) {\n let pureKey = key.replace(/^coreuiI18n/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1)\n options[pureKey] = extractOptionsFromString(element.dataset[key])\n }\n\n return options\n}\n\nconst translate = language => {\n const currentLanguage = language || document.documentElement.lang\n document.documentElement.setAttribute('lang', currentLanguage)\n\n const btnToActive = document.querySelector(`[data-coreui-language-value=\"${currentLanguage}\"]`)\n\n for (const element of document.querySelectorAll('[data-coreui-language-value]')) {\n element.classList.remove('active')\n }\n\n btnToActive.classList.add('active')\n\n for (const element of document.querySelectorAll('[data-coreui-i18n]')) {\n const key = element.dataset.coreuiI18n.split(',')[0].toString()\n element.innerHTML = i18next.t(key, geti18nOptions(element))\n }\n\n for (const element of document.querySelectorAll('[data-coreui-i18n-date]')) {\n const key = element.dataset.coreuiI18nDate.split(',')[0].toString()\n const { date, dateFormat } = geti18nOptions(element)\n\n element.innerHTML = i18next.t(\n key, {\n date: new Date(Date.parse(date)),\n ...dateFormat && {\n formatParams: {\n date: dateFormat\n }\n }\n })\n }\n}\n\ni18next\n .use(i18nextHttpBackend)\n .use(i18nextBrowserLanguageDetector)\n .init({\n fallbackLng: 'en',\n backend: {\n loadPath: './locales/{{lng}}/{{ns}}.json'\n },\n detection: {\n order: ['querystring', 'cookie', 'localStorage', 'sessionStorage']\n }\n }, () => {\n translate()\n })\n\ni18next.on('languageChanged', language => {\n i18next\n .loadNamespaces('translation')\n .then(() => {\n translate(language)\n })\n})\n"],"mappings":"AAAA;;AAEA,MAAMA,aAAa,GAAGC,KAAK,IAAI;EAC7B,IAAIA,KAAK,KAAK,MAAM,EAAE;IACpB,OAAO,IAAI;EACb;EAEA,IAAIA,KAAK,KAAK,OAAO,EAAE;IACrB,OAAO,KAAK;EACd;EAEA,IAAIA,KAAK,KAAKC,MAAM,CAACD,KAAK,CAAC,CAACE,QAAQ,CAAC,CAAC,EAAE;IACtC,OAAOD,MAAM,CAACD,KAAK,CAAC;EACtB;EAEA,IAAIA,KAAK,KAAK,EAAE,IAAIA,KAAK,KAAK,MAAM,EAAE;IACpC,OAAO,IAAI;EACb;EAEA,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7B,OAAOA,KAAK;EACd;EAEA,IAAI;IACF,OAAOG,IAAI,CAACC,KAAK,CAACC,kBAAkB,CAACL,KAAK,CAAC,CAAC;EAC9C,CAAC,CAAC,OAAAM,OAAA,EAAM;IACN,OAAON,KAAK;EACd;AACF,CAAC;AAED,MAAMO,wBAAwB,GAAGC,MAAM,IAAI;EACzC,MAAMC,OAAO,GAAG,CAAC,CAAC;EAClB,MAAMC,KAAK,GAAG,WAAW;EAEzB,IAAIA,KAAK,CAACC,IAAI,CAACH,MAAM,CAAC,EAAE;IACtB,MAAMI,MAAM,GAAGF,KAAK,CAACG,IAAI,CAACL,MAAM,CAAC,CAAC,CAAC,CAAC;IAEpC,IAAII,MAAM,EAAE;MACV,KAAK,MAAME,GAAG,IAAIF,MAAM,CAACG,KAAK,CAAC,+EAA+E,CAAC,EAAE;QAC/G,MAAM,CAACC,GAAG,EAAEhB,KAAK,CAAC,GAAGc,GAAG,CAACG,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAACF,KAAK,CAAC,GAAG,CAAC;QACrDN,OAAO,CAACO,GAAG,CAACE,IAAI,CAAC,CAAC,CAAC,GAAGnB,aAAa,CAACC,KAAK,CAACkB,IAAI,CAAC,CAAC,CAAC;MACnD;IACF;EACF;EAEA,OAAOT,OAAO;AAChB,CAAC;AAED,MAAMU,cAAc,GAAGC,OAAO,IAAI;EAChC,MAAMC,IAAI,GAAGD,OAAO,CAACE,OAAO,CAACC,UAAU,IAAIH,OAAO,CAACE,OAAO,CAACE,cAAc;EACzE,MAAMf,OAAO,GAAGF,wBAAwB,CAACc,IAAI,CAAC;EAE9C,MAAMI,QAAQ,GAAGC,MAAM,CAACC,IAAI,CAACP,OAAO,CAACE,OAAO,CAAC,CAACM,MAAM,CAACZ,GAAG,IAAIA,GAAG,CAACa,UAAU,CAAC,YAAY,CAAC,IAAIb,GAAG,KAAK,YAAY,IAAIA,GAAG,KAAK,gBAAgB,CAAC;EAE7I,KAAK,MAAMA,GAAG,IAAIS,QAAQ,EAAE;IAC1B,IAAIK,OAAO,GAAGd,GAAG,CAACC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;IAC5Ca,OAAO,GAAGA,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC,GAAGF,OAAO,CAACG,KAAK,CAAC,CAAC,CAAC;IAC5DxB,OAAO,CAACqB,OAAO,CAAC,GAAGvB,wBAAwB,CAACa,OAAO,CAACE,OAAO,CAACN,GAAG,CAAC,CAAC;EACnE;EAEA,OAAOP,OAAO;AAChB,CAAC;AAED,MAAMyB,SAAS,GAAGC,QAAQ,IAAI;EAC5B,MAAMC,eAAe,GAAGD,QAAQ,IAAIE,QAAQ,CAACC,eAAe,CAACC,IAAI;EACjEF,QAAQ,CAACC,eAAe,CAACE,YAAY,CAAC,MAAM,EAAEJ,eAAe,CAAC;EAE9D,MAAMK,WAAW,GAAGJ,QAAQ,CAACK,aAAa,CAAC,gCAAgCN,eAAe,IAAI,CAAC;EAE/F,KAAK,MAAMhB,OAAO,IAAIiB,QAAQ,CAACM,gBAAgB,CAAC,8BAA8B,CAAC,EAAE;IAC/EvB,OAAO,CAACwB,SAAS,CAACC,MAAM,CAAC,QAAQ,CAAC;EACpC;EAEAJ,WAAW,CAACG,SAAS,CAACE,GAAG,CAAC,QAAQ,CAAC;EAEnC,KAAK,MAAM1B,OAAO,IAAIiB,QAAQ,CAACM,gBAAgB,CAAC,oBAAoB,CAAC,EAAE;IACrE,MAAM3B,GAAG,GAAGI,OAAO,CAACE,OAAO,CAACC,UAAU,CAACR,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAACb,QAAQ,CAAC,CAAC;IAC/DkB,OAAO,CAAC2B,SAAS,GAAGC,OAAO,CAACC,CAAC,CAACjC,GAAG,EAAEG,cAAc,CAACC,OAAO,CAAC,CAAC;EAC7D;EAEA,KAAK,MAAMA,OAAO,IAAIiB,QAAQ,CAACM,gBAAgB,CAAC,yBAAyB,CAAC,EAAE;IAC1E,MAAM3B,GAAG,GAAGI,OAAO,CAACE,OAAO,CAACE,cAAc,CAACT,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAACb,QAAQ,CAAC,CAAC;IACnE,MAAM;MAAEgD,IAAI;MAAEC;IAAW,CAAC,GAAGhC,cAAc,CAACC,OAAO,CAAC;IAEpDA,OAAO,CAAC2B,SAAS,GAAGC,OAAO,CAACC,CAAC,CAC3BjC,GAAG,EAAE;MACHkC,IAAI,EAAE,IAAIE,IAAI,CAACA,IAAI,CAAChD,KAAK,CAAC8C,IAAI,CAAC,CAAC;MAChC,IAAGC,UAAU,IAAI;QACfE,YAAY,EAAE;UACZH,IAAI,EAAEC;QACR;MACF,CAAC;IACH,CAAC,CAAC;EACN;AACF,CAAC;AAEDH,OAAO,CACJM,GAAG,CAACC,kBAAkB,CAAC,CACvBD,GAAG,CAACE,8BAA8B,CAAC,CACnCC,IAAI,CAAC;EACJC,WAAW,EAAE,IAAI;EACjBC,OAAO,EAAE;IACPC,QAAQ,EAAE;EACZ,CAAC;EACDC,SAAS,EAAE;IACTC,KAAK,EAAE,CAAC,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,gBAAgB;EACnE;AACF,CAAC,EAAE,MAAM;EACP5B,SAAS,CAAC,CAAC;AACb,CAAC,CAAC;AAEJc,OAAO,CAACe,EAAE,CAAC,iBAAiB,EAAE5B,QAAQ,IAAI;EACxCa,OAAO,CACJgB,cAAc,CAAC,aAAa,CAAC,CAC7BC,IAAI,CAAC,MAAM;IACV/B,SAAS,CAACC,QAAQ,CAAC;EACrB,CAAC,CAAC;AACN,CAAC,CAAC","ignoreList":[]}