@tolgee/core 5.20.3 → 5.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- "use strict";function e(e){return Boolean(e&&"function"==typeof e.then)}function n(n,t){return e(n)?Promise.resolve(n).then(t):t(n)}function t(e){const n=(Array.isArray(e)?e:[e]).map((e=>`'${e}'`)),t=n.slice(-2).join(" or ");return`Tolgee: You need to specify ${[...n.slice(0,-2),t].join(", ")} option`}function a(e){return"string"==typeof e?[e]:Array.isArray(e)?e:void 0}function i(e){return a(e)||[]}function o(e,n){return"object"!=typeof(t=n)||Array.isArray(t)||null===t?i(n):i(null==n?void 0:n[e]);var t}function s(e){return Array.from(new Set(e))}function r(e){return e?e.replace(/\/+$/,""):e}Object.defineProperty(exports,"__esModule",{value:!0});const g=(e,n)=>fetch(e,n),c=(e=g)=>(n,t)=>e(n,Object.assign(Object.assign({},t),{headers:Object.assign({"X-Tolgee-SDK-Type":"JS","X-Tolgee-SDK-Version":process.env.TOLGEE_UI_VERSION||"prerelease"},null==t?void 0:t.headers)}));function l(e){let n=[];return Object.freeze({listen(e){const t=n=>{e(n)};return n.push(t),{unsubscribe(){n=n.filter((e=>t!==e))}}},emit(t){e()&&n.forEach((e=>e({value:t})))}})}function u(e,n,t){const a=new Set,o=new Set;let s=[];function r(){if(0===s.length)return;const e=s;s=[],a.forEach((e=>{e({value:void 0})}));let t=new Set;e.forEach((e=>{void 0===e?t=void 0:void 0!==t&&e.forEach((e=>t.add(e)))}));!function(e){const t=new Set(n());o.forEach((n=>{(void 0===e||-1!==(null==e?void 0:e.findIndex((e=>t.has(e)||n.namespaces.has(e)))))&&n.fn({value:void 0})}))}(t?Array.from(t.keys()):void 0)}return Object.freeze({emit(n,t){e()&&(s.push(n),t?setTimeout(r,0):r())},listen(e){a.add(e);return{unsubscribe:()=>{a.delete(e)}}},listenSome(e){const n={fn:n=>{e(n)},namespaces:new Set};o.add(n);const a={unsubscribe:()=>{o.delete(n)},subscribeNs:e=>(i(e).forEach((e=>n.namespaces.add(e))),void 0===e&&n.namespaces.add(t()),a)};return a}})}const d=e=>{const n=new Map;return Object.entries(e).forEach((([e,t])=>{null!=t&&("object"!=typeof t?n.set(e,t):d(t).forEach(((t,a)=>{n.set(e+"."+a,t)})))})),n},p=e=>{const[n,...t]=e.split(":");return{language:n,namespace:t.join(":")||""}},f=({language:e,namespace:n})=>n?`${e}:${n}`:e;function v(e,n,t,a,o,r,g){const c=new Map,l=new Map;let u={},v=0;function h(n,t,a){const i=f(n);l.set(i,{data:d(t),version:a}),e.emit(n)}function m(e){let t;if(!t){const n=u[f(e)];"function"==typeof n&&(t=n())}return t||(t=n(e)),t}const b=Object.freeze({addStaticData(e){e&&(u=Object.assign(Object.assign({},u),e),Object.entries(e).forEach((([e,n])=>{if("function"!=typeof n){const t=p(e),a=l.get(e);a&&0!==a.version||h(t,n,0)}})))},invalidate(){c.clear(),v+=1},addRecord(e,n){h(e,n,v)},exists(e,n=!1){const t=l.get(f(e));return t&&n?t.version===v:Boolean(t)},getRecord(e){var n;return null===(n=l.get(f(a(e))))||void 0===n?void 0:n.data},getTranslation(e,n){var t;return null===(t=l.get(f(e)))||void 0===t?void 0:t.data.get(n)},getTranslationNs(e,n,t){var a;for(const i of e)for(const e of n){const n=null===(a=l.get(f({language:e,namespace:i})))||void 0===a?void 0:a.data.get(t);if(null!=n)return[i]}return s(e)},getTranslationFallback(e,n,t){var a;for(const i of e)for(const e of n){const n=null===(a=l.get(f({language:e,namespace:i})))||void 0===a?void 0:a.data.get(t);if(null!=n)return n}},changeTranslation(n,t,a){var i;const o=null===(i=l.get(f(n)))||void 0===i?void 0:i.data;null==o||o.set(t,a),e.emit(Object.assign(Object.assign({},n),{key:t}))},isFetching(e){if(o())return!0;if(void 0===e)return c.size>0;const n=i(e);return Boolean(Array.from(c.keys()).find((e=>n.includes(p(e).namespace))))},isLoading(e,n){const t=i(n);return Boolean(o()||Array.from(c.keys()).find((n=>{const a=p(n);return(!t.length||t.includes(a.namespace))&&!b.exists({namespace:a.namespace,language:e})})))},async loadRecords(e,n){const i=e.map((e=>{const i=a(e),o=f(i),s=c.get(o);if(s)return{new:!1,promise:s,keyObject:i,cacheKey:o};const r=function(e,n){var a;let i;return n&&(i=null===(a=t(e))||void 0===a?void 0:a.catch((()=>(console.warn("Tolgee: Failed to fetch data from dev backend"),m(e))))),i||(i=m(e)),i}(i,n)||Promise.resolve(void 0);return c.set(o,r),{new:!0,promise:r,keyObject:i,cacheKey:o}}));r.notify(),g.notify();const o=await Promise.all(i.map((e=>e.promise)));return i.forEach(((e,n)=>{const t=c.get(e.cacheKey)!==e.promise;if(e.new&&!t){c.delete(e.cacheKey);const t=o[n];t?b.addRecord(e.keyObject,t):b.getRecord(e.keyObject)||b.addRecord(e.keyObject,{})}})),r.notify(),g.notify(),i.map((e=>b.getRecord(e.keyObject)))},getAllRecords:()=>Array.from(l.entries()).map((([e,n])=>Object.assign(Object.assign({},p(e)),{data:n.data})))});return b}function h(e,n){var t={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&n.indexOf(a)<0&&(t[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(a=Object.getOwnPropertySymbols(e);i<a.length;i++)n.indexOf(a[i])<0&&Object.prototype.propertyIsEnumerable.call(e,a[i])&&(t[a[i]]=e[a[i]])}return t}const m="invalid",b={defaultNs:"",observerOptions:{tagAttributes:{textarea:["placeholder"],input:["value","placeholder"],img:["alt"],"*":["aria-label","title"]},restrictedElements:["script","style"],highlightKeys:["Alt"],highlightColor:"rgb(255, 0, 0)",highlightWidth:5,inputPrefix:"%-%tolgee:",inputSuffix:"%-%",passToParent:["option","optgroup"],fullKeyEncode:!1},observerType:"invisible",onFormatError:m,apiUrl:"https://app.tolgee.io",fetch:c(),onTranslationMissing:({key:e})=>e},O=(...e)=>{let n={};return e.forEach((e=>{n=Object.assign(Object.assign(Object.assign({},n),e),{observerOptions:Object.assign(Object.assign({},n.observerOptions),null==e?void 0:e.observerOptions)})})),n};function y(e,n){const t=O(b,null==n?void 0:n.initialOptions,e);return t.apiUrl=r(t.apiUrl),(null==e?void 0:e.fetch)&&(t.fetch=c(e.fetch)),{initialOptions:t,activeNamespaces:(null==n?void 0:n.activeNamespaces)||new Map,language:null==n?void 0:n.language,pendingLanguage:null==n?void 0:n.language,isInitialLoading:!1,isRunning:!1}}function L(t,a,i,o,s,r,g,c){const l={ui:void 0},u={formatters:[],finalFormatter:void 0,observer:void 0,devBackend:void 0,backends:[],ui:void 0,languageDetector:void 0,languageStorage:void 0},d=async({keysAndDefaults:e,event:n})=>{var t;const a=e.map((({key:e,ns:n,defaultValue:t})=>({key:e,defaultValue:t,fallbackNamespaces:o(n),namespace:s({key:e,ns:n})[0],translation:r({key:e,ns:n})})));null===(t=u.ui)||void 0===t||t.handleElementClick(a,n)},p=(e,n)=>{var t;return(null===(t=u.observer)||void 0===t?void 0:t.findPositions(e,n))||[]};function f(e){const n=r({key:e.key,ns:e.ns});return D.formatTranslation(Object.assign(Object.assign({},e),{translation:n,formatEnabled:!0}))}function v(){return{fetch:a().fetch}}function b(e){u.observer=null==e?void 0:e()}function O(){return Boolean(u.observer)}function y(e){e&&u.formatters.push(e)}function L(e){u.finalFormatter=e}function j(e){l.ui=e}function k(){return Boolean(l.ui)}function R(e){u.languageStorage=e}function w(e){u.languageDetector=e}function E(e){e&&u.backends.push(e)}function N(e){u.devBackend=e}const D=Object.freeze({addPlugin:function(e,n){n(e,Object.freeze({setFinalFormatter:L,addFormatter:y,setObserver:b,hasObserver:O,setUi:j,hasUi:k,setDevBackend:N,addBackend:E,setLanguageDetector:w,setLanguageStorage:R}))},run(){var e,n;const{apiKey:t,apiUrl:i,projectId:o,observerOptions:s}=a();u.ui=null===(e=l.ui)||void 0===e?void 0:e.call(l,{apiKey:t,apiUrl:i,projectId:o,highlight:D.highlight,changeTranslation:g,findPositions:p,onPermanentChange:c}),null===(n=u.observer)||void 0===n||n.run({mouseHighlight:!0,options:s,translate:f,onClick:d})},stop(){var e;u.ui=void 0,null===(e=u.observer)||void 0===e||e.stop()},getLanguageStorage:()=>u.languageStorage,getInitialLanguage(){var e;const t=i();return n(null===(e=u.languageStorage)||void 0===e?void 0:e.getLanguage(v()),(e=>t&&!t.includes(e)||!e?function(){if(!u.languageDetector)return;const e=i();return u.languageDetector.getLanguage(Object.assign({availableLanguages:e},v()))}():e))},setStoredLanguage(e){var n;null===(n=u.languageStorage)||void 0===n||n.setLanguage(e,v())},getDevBackend:()=>u.devBackend,getBackendRecord:({language:n,namespace:t})=>{for(const a of u.backends){const i=a.getRecord(Object.assign({language:n,namespace:t},v()));if(e(i))return null==i?void 0:i.catch((e=>(console.error(e),{})));if(void 0!==i)return i}},getBackendDevRecord:({language:e,namespace:n})=>{var t;const{apiKey:i,apiUrl:o,projectId:s}=a();return null===(t=u.devBackend)||void 0===t?void 0:t.getRecord(Object.assign({apiKey:i,apiUrl:o,projectId:s,language:e,namespace:n},v()))},getLanguageDetector:()=>u.languageDetector,retranslate(){var e;null===(e=u.observer)||void 0===e||e.retranslate()},highlight:(e,n)=>{var t,a;return(null===(a=null===(t=u.observer)||void 0===t?void 0:t.highlight)||void 0===a?void 0:a.call(t,e,n))||{unhighlight(){}}},unwrap(e){var n;return u.observer?null===(n=u.observer)||void 0===n?void 0:n.unwrap(e):{text:e,keys:[]}},wrap(e){var n;return u.observer?null===(n=u.observer)||void 0===n?void 0:n.wrap(e):e.translation},hasDevBackend:()=>Boolean(D.getDevBackend()),formatTranslation(e){var n,{formatEnabled:i}=e,o=h(e,["formatEnabled"]);const{key:s,translation:r,defaultValue:g,noWrap:c,params:l,ns:d,orEmpty:p}=o,f=null!=r?r:g;let v="";null==r&&(v=a().onTranslationMissing(o));let b=null!=f?f:p?"":v;const O=t(),y=i||!(null===(n=u.observer)||void 0===n?void 0:n.outputNotFormattable),L=e=>u.observer&&!c?u.observer.wrap({key:s,translation:e,defaultValue:g,params:l,ns:d}):e;b=L(b);try{if(f&&O&&y)for(const e of u.formatters)b=e.format({translation:b,language:O,params:l});u.finalFormatter&&f&&O&&y&&(b=u.finalFormatter.format({translation:b,language:O,params:l}))}catch(e){console.error(e);const n=("string"==typeof(j=e)?j:"string"==typeof(null==j?void 0:j.message)?j.message:void 0)||m,t=a().onFormatError,i=typeof t;b="string"===i?t:"function"===i?t(n,o):m,b=L(b)}var j;return b}});return D}const j=(e,n,t)=>{let a=e;return Object.freeze({init(e){a=e},notify(){const e=n();a!==e&&t(e),a=e}})};const k=(e,...n)=>{let t,a={};return"object"==typeof e?a=e:(a.key=e,"string"==typeof n[0]?(a.defaultValue=n[0],t=n[1]):"object"==typeof n[0]&&(t=n[0])),t&&(a=Object.assign(Object.assign({},function(e){var{ns:n,noWrap:t,orEmpty:a,params:i,language:o}=e,s=h(e,["ns","noWrap","orEmpty","params","language"]);const r={ns:n,noWrap:t,orEmpty:a,language:o};return Object.assign(Object.assign({},r),{params:Object.assign({},s)})}(t)),a)),a};function R({options:a}){const g=function(e,n){let t=!0;function a(){return t}const i=Object.freeze({onPendingLanguageChange:l(a),onLanguageChange:l(a),onLoadingChange:l(a),onFetchingChange:l(a),onInitialLoaded:l(a),onRunningChange:l(a),onCacheChange:l(a),onUpdate:u(a,e,n),onPermanentChange:l(a),setEmitterActive(e){t=e},on:(e,n)=>{switch(e){case"pendingLanguage":return i.onPendingLanguageChange.listen(n);case"language":return i.onLanguageChange.listen(n);case"loading":return i.onLoadingChange.listen(n);case"fetching":return i.onFetchingChange.listen(n);case"initialLoad":return i.onInitialLoaded.listen(n);case"running":return i.onRunningChange.listen(n);case"cache":return i.onCacheChange.listen(n);case"update":return i.onUpdate.listen(n);case"permanentChange":return i.onPermanentChange.listen(n)}}});return i.onInitialLoaded.listen((()=>i.onUpdate.emit())),i.onLanguageChange.listen((()=>i.onUpdate.emit())),i.onCacheChange.listen((({value:e})=>i.onUpdate.emit([e.namespace],!0))),i}(O,R),c=j(!1,(()=>m.isFetching()),g.onFetchingChange.emit),d=j(!1,(()=>S.isLoading()),g.onLoadingChange.emit),f=function(e,n,t){let a,g=y();const c=Object.freeze({init(e){g=y(e,g)},isRunning:()=>g.isRunning,setRunning(e){g.isRunning!==e&&(g.isRunning=e,t.emit(e))},isInitialLoading:()=>g.isInitialLoading,setInitialLoading(e){g.isInitialLoading=e},getLanguage:()=>g.language||g.initialOptions.language,setLanguage(n){g.language!==n&&(g.language=n,e.emit(n))},getPendingLanguage:()=>g.pendingLanguage||c.getLanguage(),setPendingLanguage(e){g.pendingLanguage!==e&&(g.pendingLanguage=e,n.emit(e))},getInitialOptions:()=>Object.assign(Object.assign({},g.initialOptions),a),addActiveNs(e){i(e).forEach((e=>{const n=g.activeNamespaces.get(e);void 0!==n?g.activeNamespaces.set(e,n+1):g.activeNamespaces.set(e,1)}))},removeActiveNs(e){i(e).forEach((e=>{const n=g.activeNamespaces.get(e);void 0!==n&&n>1?g.activeNamespaces.set(e,n-1):g.activeNamespaces.delete(e)}))},getRequiredNamespaces:()=>s([...g.initialOptions.ns||[g.initialOptions.defaultNs],...i(g.initialOptions.fallbackNs),...g.activeNamespaces.keys()]),getFallbackLangs(e){const n=e||c.getLanguage();return n?s([n,...o(n,g.initialOptions.fallbackLanguage)]):[]},getFallbackNs:()=>i(g.initialOptions.fallbackNs),getDefaultNs:e=>void 0===e?g.initialOptions.defaultNs:e,getAvailableLanguages(){if(g.initialOptions.availableLanguages)return g.initialOptions.availableLanguages;if(g.initialOptions.staticData){const e=Object.keys(g.initialOptions.staticData).map((e=>p(e).language));return Array.from(new Set(e))}},withDefaultNs:e=>({namespace:void 0===e.namespace?c.getInitialOptions().defaultNs:e.namespace,language:e.language}),overrideCredentials(e){a=e?Object.assign(Object.assign({},e),{apiUrl:r(e.apiUrl)}):void 0}});return c}(g.onLanguageChange,g.onPendingLanguageChange,g.onRunningChange),h=L(f.getLanguage,f.getInitialOptions,f.getAvailableLanguages,w,A,F,N,(function(e){g.onPermanentChange.emit({key:e.key,namespace:e.namespace})})),m=v(g.onCacheChange,h.getBackendRecord,h.getBackendDevRecord,f.withDefaultNs,f.isInitialLoading,c,d);let b;function O(){return f.getFallbackNs()}function R(e){return f.getDefaultNs(e)}function w(e){return[...i(R(e)),...O()]}function E(e){return[...i(null!=e?e:R()),...f.getRequiredNamespaces()]}function N(e,n,t){const a=f.withDefaultNs(e),i=m.getTranslation(a,n);return m.changeTranslation(a,n,t),{revert(){m.changeTranslation(a,n,i)}}}function D(e){f.init(e),m.addStaticData(f.getInitialOptions().staticData)}function C(e,t){const a=function(e,n){const t=f.getFallbackLangs(e),a=E(n),i=[];return t.forEach((e=>{a.forEach((n=>{m.exists({language:e,namespace:n},!0)||i.push({language:e,namespace:n})}))})),i}(e,t);if(a.length)return n(S.loadRecords(a),(()=>{}))}function A({key:e,ns:n}){const t=f.getFallbackLangs(),a=w(null!=n?n:void 0);return m.getTranslationNs(a,t,e)}function F({key:e,ns:n,language:t}){const a=w(null!=n?n:void 0),i=f.getFallbackLangs(t);return m.getTranslationFallback(a,i,e)}function I(){const t=n(function(){if(f.getLanguage())return;return n(h.getInitialLanguage(),(e=>{const n=e||f.getInitialOptions().defaultLanguage;n&&f.setLanguage(n)}))}(),(()=>C()));if(e(t))return f.setInitialLoading(!0),c.notify(),d.notify(),Promise.resolve(t).then((()=>{f.setInitialLoading(!1),c.notify(),d.notify(),g.onInitialLoaded.emit()}));g.onInitialLoaded.emit()}a&&D(a),g.onUpdate.listen((()=>{f.isRunning()&&h.retranslate()}));const S=Object.freeze(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},g),f),h),m),{init:D,getTranslation:F,changeTranslation:N,getTranslationNs:A,getDefaultAndFallbackNs:w,async changeLanguage(e){f.getPendingLanguage()===e&&f.getLanguage()===e||(f.setPendingLanguage(e),f.isRunning()&&await C(e),e===f.getPendingLanguage()&&(f.setLanguage(e),h.setStoredLanguage(e)))},async addActiveNs(e,n){n||f.addActiveNs(e),f.isRunning()&&await C(void 0,e)},loadRecords:e=>m.loadRecords(e,S.isDev()),loadRecord:async e=>(await S.loadRecords([e]))[0],isLoading:e=>m.isLoading(f.getLanguage(),e),isLoaded(e){const n=f.getLanguage();if(!n)return!1;const t=f.getFallbackLangs(n),a=E(e),i=[];return t.forEach((e=>{a.forEach((n=>{m.exists({language:e,namespace:n})||i.push({language:e,namespace:n})}))})),0===i.length},t:(...e)=>{const n=k(...e),t=F(n);return h.formatTranslation(Object.assign(Object.assign({},n),{translation:t}))},isDev:()=>Boolean(f.getInitialOptions().apiKey&&f.getInitialOptions().apiUrl),run:()=>(function(){if((h.getLanguageDetector()||h.getLanguageStorage())&&!f.getAvailableLanguages())throw new Error(t("availableLanguages"));if(!f.getLanguage()&&!f.getInitialOptions().defaultLanguage)throw new Error(t(["defaultLanguage","language"]))}(),f.isRunning()||(f.setRunning(!0),h.run(),b=I()),Promise.resolve(b)),stop(){f.isRunning()&&(h.stop(),f.setRunning(!1))}}));return S}const w=0,E=1,N=2;class D extends Error{constructor(e,n,t){let a;a=e===w?"Empty parameter":e===E?"Unexpected character":"Unexpected end",super(`Tolgee parser: ${a} at ${n} in "${t}"`),this.code=e,this.index=n}}function C(e){return/\s/.test(e)}const A=0,F=1,I=2,S=3,P=4,T=new Set([I,F,A]),U="'",x=new Set(["{","}",U]),B=e=>/[0-9a-zA-Z_]/.test(e);function z(e,n){const[t,a]=function(e){let n=A,t="",a="",i="";const o=[],s=[];let r=0;function g(n){throw new D(n,r,e)}const c=()=>{o.push(t),t=""},l=()=>{""===a&&g(w),s.push(a),a=""};for(r=0;r<e.length;r++)switch(i=e[r],n){case A:i===U?(t+=i,n=F):"{"===i?(c(),n=S):(t+=i,n=A);break;case F:x.has(i)?(t=t.slice(0,-1)+i,n=I):(t+=i,n=A);break;case I:i===U?n=A:(t+=i,n=I);break;case S:"}"===i?(l(),n=A):C(i)?""!==a&&(l(),n=P):(B(i)||g(E),a+=i,n=S);break;case P:"}"==i?n=A:C(i)?n=P:g(E)}return T.has(n)||g(N),c(),[o,s]}(e),i=[t[0]];for(let o=1;o<t.length;o++){const s=null==n?void 0:n[a[o-1]];if(void 0===s)throw new Error(`Missing parameter "${a[o-1]}" in "${e}"`);i.push(String(s)),i.push(t[o])}return i.join("")}exports.FormatSimple=()=>(e,n)=>(n.setFinalFormatter({format:({translation:e,params:n})=>z(e,n)}),e),exports.TolgeeCore=()=>{const e={plugins:[],options:{}},n=Object.freeze({use:t=>(e.plugins.push(t),n),updateDefaults:t=>(e.options=O(e.options,t),n),init(n){const t=function(e){const n=R({options:e});function t(e){const t=n.isRunning();t&&n.stop(),e(),n.isDev()&&n.invalidate(),t&&n.run()}n.isDev()&&n.invalidate();const a=Object.freeze({on:n.on,onNsUpdate:n.onUpdate.listenSome,setEmitterActive:n.setEmitterActive,getLanguage:n.getLanguage,getPendingLanguage:n.getPendingLanguage,changeLanguage:n.changeLanguage,changeTranslation:n.changeTranslation,addActiveNs:n.addActiveNs,removeActiveNs:n.removeActiveNs,loadRecords:n.loadRecords,loadRecord:n.loadRecord,addStaticData:n.addStaticData,getRecord:n.getRecord,getAllRecords:n.getAllRecords,isLoaded:n.isLoaded,isInitialLoading:n.isInitialLoading,isLoading:n.isLoading,isFetching:n.isFetching,isRunning:n.isRunning,run:n.run,stop:n.stop,t:n.t,highlight:n.highlight,getInitialOptions:n.getInitialOptions,isDev:n.isDev,wrap:n.wrap,unwrap:n.unwrap,overrideCredentials(e){t((()=>n.overrideCredentials(e)))},addPlugin(e){e&&t((()=>n.addPlugin(a,e)))},updateOptions(e){e&&t((()=>n.init(e)))}});return a}(O(e.options,n));return e.plugins.forEach(t.addPlugin),t}});return n},exports.createFetchFunction=c,exports.getFallback=a,exports.getFallbackArray=i,exports.getTranslateProps=k;
1
+ "use strict";function e(e){return Boolean(e&&"function"==typeof e.then)}function n(n,t){return e(n)?Promise.resolve(n).then(t):t(n)}function t(n,t,a){function i(e){const a=t(e);throw n.emit(a),console.error(a),a}try{const n=a();return e(n)?n.catch(i):n}catch(e){i(e)}}function a(e){const n=(Array.isArray(e)?e:[e]).map((e=>`'${e}'`)),t=n.slice(-2).join(" or ");return`Tolgee: You need to specify ${[...n.slice(0,-2),t].join(", ")} option`}function i(e){return"string"==typeof e?[e]:Array.isArray(e)?e:void 0}function o(e){return i(e)||[]}function r(e,n){return"object"!=typeof(t=n)||Array.isArray(t)||null===t?o(n):o(null==n?void 0:n[e]);var t}function s(e){return Array.from(new Set(e))}function g(e){return e?e.replace(/\/+$/,""):e}Object.defineProperty(exports,"__esModule",{value:!0});const c=(e,n)=>fetch(e,n),l=(e=c)=>(n,t)=>e(n,Object.assign(Object.assign({},t),{headers:Object.assign({"X-Tolgee-SDK-Type":"JS","X-Tolgee-SDK-Version":process.env.TOLGEE_UI_VERSION||"prerelease"},null==t?void 0:t.headers)}));function u(e){let n=[];return Object.freeze({listen(e){const t=n=>{e(n)};return n.push(t),{unsubscribe(){n=n.filter((e=>t!==e))}}},emit(t){e()&&n.forEach((e=>e({value:t})))}})}function d(e,n,t){const a=new Set,i=new Set;let r=[];function s(){if(0===r.length)return;const e=r;r=[],a.forEach((e=>{e({value:void 0})}));let t=new Set;e.forEach((e=>{void 0===e?t=void 0:void 0!==t&&e.forEach((e=>t.add(e)))}));!function(e){const t=new Set(n());i.forEach((n=>{(void 0===e||-1!==(null==e?void 0:e.findIndex((e=>t.has(e)||n.namespaces.has(e)))))&&n.fn({value:void 0})}))}(t?Array.from(t.keys()):void 0)}return Object.freeze({emit(n,t){e()&&(r.push(n),t?setTimeout(s,0):s())},listen(e){a.add(e);return{unsubscribe:()=>{a.delete(e)}}},listenSome(e){const n={fn:n=>{e(n)},namespaces:new Set};i.add(n);const a={unsubscribe:()=>{i.delete(n)},subscribeNs:e=>(o(e).forEach((e=>n.namespaces.add(e))),void 0===e&&n.namespaces.add(t()),a)};return a}})}class p extends Error{constructor(e,n,t=!1){const{language:a,namespace:i}=e;super(`Tolgee: Failed to fetch record for "${a}"${i&&` and "${i}"`}`),this.cause=n,this.isDev=t,this.name="RecordFetchError",this.language=a,this.namespace=i}}class f extends Error{constructor(e,n){super(e),this.cause=n,this.name="LanguageDetectorError"}}class v extends Error{constructor(e,n){super(e),this.cause=n,this.name="LanguageStorageError"}}const h=e=>{const n=new Map;return Object.entries(e).forEach((([e,t])=>{null!=t&&("object"!=typeof t?n.set(e,t):h(t).forEach(((t,a)=>{n.set(e+"."+a,t)})))})),n},m=e=>{const[n,...t]=e.split(":");return{language:n,namespace:t.join(":")||""}},b=({language:e,namespace:n})=>n?`${e}:${n}`:e;function O(n,t,a,i,r,g,c){const l=new Map,u=new Map;let d={},f=0;function v(e,t,a){const i=b(e);u.set(i,{data:h(t),version:a}),n.onCacheChange.emit(e)}function O(a){let i;if(!i){const e=d[b(a)];"function"==typeof e&&(i=e())}return i||(i=t(a)),e(i)?null==i?void 0:i.catch((e=>{const t=new p(a,e);throw n.onError.emit(t),console.error(t),t})):i}const L=Object.freeze({addStaticData(e){e&&(d=Object.assign(Object.assign({},d),e),Object.entries(e).forEach((([e,n])=>{if("function"!=typeof n){const t=m(e),a=u.get(e);a&&0!==a.version||v(t,n,0)}})))},invalidate(){l.clear(),f+=1},addRecord(e,n){v(e,n,f)},exists(e,n=!1){const t=u.get(b(e));return t&&n?t.version===f:Boolean(t)},getRecord(e){var n;return null===(n=u.get(b(i(e))))||void 0===n?void 0:n.data},getTranslation(e,n){var t;return null===(t=u.get(b(e)))||void 0===t?void 0:t.data.get(n)},getTranslationNs(e,n,t){var a;for(const i of e)for(const e of n){const n=null===(a=u.get(b({language:e,namespace:i})))||void 0===a?void 0:a.data.get(t);if(null!=n)return[i]}return s(e)},getTranslationFallback(e,n,t){var a;for(const i of e)for(const e of n){const n=null===(a=u.get(b({language:e,namespace:i})))||void 0===a?void 0:a.data.get(t);if(null!=n)return n}},changeTranslation(e,t,a){var i;const o=null===(i=u.get(b(e)))||void 0===i?void 0:i.data;null==o||o.set(t,a),n.onCacheChange.emit(Object.assign(Object.assign({},e),{key:t}))},isFetching(e){if(r())return!0;if(void 0===e)return l.size>0;const n=o(e);return Boolean(Array.from(l.keys()).find((e=>n.includes(m(e).namespace))))},isLoading(e,n){const t=o(n);return Boolean(r()||Array.from(l.keys()).find((n=>{const a=m(n);return(!t.length||t.includes(a.namespace))&&!L.exists({namespace:a.namespace,language:e})})))},async loadRecords(e,t){const o=e.map((e=>{const o=i(e),r=b(o),s=l.get(r);if(s)return{new:!1,promise:s,keyObject:o,cacheKey:r};const g=function(e,t){var i;let o;return t&&(o=null===(i=a(e))||void 0===i?void 0:i.catch((t=>{const a=new p(e,t,!0);return n.onError.emit(a),console.warn(a),O(e)}))),o||(o=O(e)),o}(o,t)||Promise.resolve(void 0);return l.set(r,g),{new:!0,promise:g,keyObject:o,cacheKey:r}}));g.notify(),c.notify();const r=await Promise.all(o.map((e=>e.promise)));return o.forEach(((e,n)=>{const t=l.get(e.cacheKey)!==e.promise;if(e.new&&!t){l.delete(e.cacheKey);const t=r[n];t?L.addRecord(e.keyObject,t):L.getRecord(e.keyObject)||L.addRecord(e.keyObject,{})}})),g.notify(),c.notify(),o.map((e=>L.getRecord(e.keyObject)))},getAllRecords:()=>Array.from(u.entries()).map((([e,n])=>Object.assign(Object.assign({},m(e)),{data:n.data})))});return L}function L(e,n){var t={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&n.indexOf(a)<0&&(t[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(a=Object.getOwnPropertySymbols(e);i<a.length;i++)n.indexOf(a[i])<0&&Object.prototype.propertyIsEnumerable.call(e,a[i])&&(t[a[i]]=e[a[i]])}return t}const y="invalid",j={defaultNs:"",observerOptions:{tagAttributes:{textarea:["placeholder"],input:["value","placeholder"],img:["alt"],"*":["aria-label","title"]},restrictedElements:["script","style"],highlightKeys:["Alt"],highlightColor:"rgb(255, 0, 0)",highlightWidth:5,inputPrefix:"%-%tolgee:",inputSuffix:"%-%",passToParent:["option","optgroup"],fullKeyEncode:!1},observerType:"invisible",onFormatError:y,apiUrl:"https://app.tolgee.io",fetch:l(),onTranslationMissing:({key:e})=>e},k=(...e)=>{let n={};return e.forEach((e=>{n=Object.assign(Object.assign(Object.assign({},n),e),{observerOptions:Object.assign(Object.assign({},n.observerOptions),null==e?void 0:e.observerOptions)})})),n};function E(e,n){const t=k(j,null==n?void 0:n.initialOptions,e);return t.apiUrl=g(t.apiUrl),(null==e?void 0:e.fetch)&&(t.fetch=l(e.fetch)),{initialOptions:t,activeNamespaces:(null==n?void 0:n.activeNamespaces)||new Map,language:null==n?void 0:n.language,pendingLanguage:null==n?void 0:n.language,isInitialLoading:!1,isRunning:!1}}function w(e,a,i,o,r,s,g,c){const l={ui:void 0},u={formatters:[],finalFormatter:void 0,observer:void 0,devBackend:void 0,backends:[],ui:void 0,languageDetector:void 0,languageStorage:void 0},d=async({keysAndDefaults:e,event:n})=>{var t;const a=e.map((({key:e,ns:n,defaultValue:t})=>({key:e,defaultValue:t,fallbackNamespaces:o(n),namespace:r({key:e,ns:n})[0],translation:s({key:e,ns:n})})));null===(t=u.ui)||void 0===t||t.handleElementClick(a,n)},p=(e,n)=>{var t;return(null===(t=u.observer)||void 0===t?void 0:t.findPositions(e,n))||[]};function h(e){const n=s({key:e.key,ns:e.ns});return C.formatTranslation(Object.assign(Object.assign({},e),{translation:n,formatEnabled:!0}))}function m(){return{fetch:a().fetch}}function b(e){u.observer=null==e?void 0:e()}function O(){return Boolean(u.observer)}function j(e){e&&u.formatters.push(e)}function k(e){u.finalFormatter=e}function E(e){l.ui=e}function w(){return Boolean(l.ui)}function R(e){u.languageStorage=e}function N(e){u.languageDetector=e}function D(e){e&&u.backends.push(e)}function F(e){u.devBackend=e}const C=Object.freeze({addPlugin:function(e,n){n(e,Object.freeze({setFinalFormatter:k,addFormatter:j,setObserver:b,hasObserver:O,setUi:E,hasUi:w,setDevBackend:F,addBackend:D,setLanguageDetector:N,setLanguageStorage:R}))},run(){var e,n;const{apiKey:t,apiUrl:i,projectId:o,observerOptions:r}=a();u.ui=null===(e=l.ui)||void 0===e?void 0:e.call(l,{apiKey:t,apiUrl:i,projectId:o,highlight:C.highlight,changeTranslation:g,findPositions:p,onPermanentChange:e=>c.onPermanentChange.emit(e)}),null===(n=u.observer)||void 0===n||n.run({mouseHighlight:!0,options:r,translate:h,onClick:d})},stop(){var e;u.ui=void 0,null===(e=u.observer)||void 0===e||e.stop()},getLanguageStorage:()=>u.languageStorage,getInitialLanguage(){const e=i();return n(t(c.onError,(e=>new v("Tolgee: Failed to load language",e)),(()=>{var e;return null===(e=u.languageStorage)||void 0===e?void 0:e.getLanguage(m())})),(n=>e&&!e.includes(n)||!n?function(){if(!u.languageDetector)return;const e=i();return t(c.onError,(e=>new f("Tolgee: Failed to detect language",e)),(()=>{var n;return null===(n=u.languageDetector)||void 0===n?void 0:n.getLanguage(Object.assign({availableLanguages:e},m()))}))}():n))},setStoredLanguage:e=>t(c.onError,(e=>new v("Tolgee: Failed to store language",e)),(()=>{var n;return null===(n=u.languageStorage)||void 0===n?void 0:n.setLanguage(e,m())})),getDevBackend:()=>u.devBackend,getBackendRecord:({language:e,namespace:n})=>{for(const t of u.backends){const a=t.getRecord(Object.assign({language:e,namespace:n},m()));if(void 0!==a)return a}},getBackendDevRecord:({language:e,namespace:n})=>{var t;const{apiKey:i,apiUrl:o,projectId:r}=a();return null===(t=u.devBackend)||void 0===t?void 0:t.getRecord(Object.assign({apiKey:i,apiUrl:o,projectId:r,language:e,namespace:n},m()))},getLanguageDetector:()=>u.languageDetector,retranslate(){var e;null===(e=u.observer)||void 0===e||e.retranslate()},highlight:(e,n)=>{var t,a;return(null===(a=null===(t=u.observer)||void 0===t?void 0:t.highlight)||void 0===a?void 0:a.call(t,e,n))||{unhighlight(){}}},unwrap(e){var n;return u.observer?null===(n=u.observer)||void 0===n?void 0:n.unwrap(e):{text:e,keys:[]}},wrap(e){var n;return u.observer?null===(n=u.observer)||void 0===n?void 0:n.wrap(e):e.translation},hasDevBackend:()=>Boolean(C.getDevBackend()),formatTranslation(n){var t,{formatEnabled:i}=n,o=L(n,["formatEnabled"]);const{key:r,translation:s,defaultValue:g,noWrap:c,params:l,ns:d,orEmpty:p}=o,f=null!=s?s:g;let v="";null==s&&(v=a().onTranslationMissing(o));let h=null!=f?f:p?"":v;const m=e(),b=i||!(null===(t=u.observer)||void 0===t?void 0:t.outputNotFormattable),O=e=>u.observer&&!c?u.observer.wrap({key:r,translation:e,defaultValue:g,params:l,ns:d}):e;h=O(h);try{if(f&&m&&b)for(const e of u.formatters)h=e.format({translation:h,language:m,params:l});u.finalFormatter&&f&&m&&b&&(h=u.finalFormatter.format({translation:h,language:m,params:l}))}catch(e){console.error(e);const n=("string"==typeof(j=e)?j:"string"==typeof(null==j?void 0:j.message)?j.message:void 0)||y,t=a().onFormatError,i=typeof t;h="string"===i?t:"function"===i?t(n,o):y,h=O(h)}var j;return h}});return C}const R=(e,n,t)=>{let a=e;return Object.freeze({init(e){a=e},notify(){const e=n();a!==e&&t(e),a=e}})};const N=(e,...n)=>{let t,a={};return"object"==typeof e?a=e:(a.key=e,"string"==typeof n[0]?(a.defaultValue=n[0],t=n[1]):"object"==typeof n[0]&&(t=n[0])),t&&(a=Object.assign(Object.assign({},function(e){var{ns:n,noWrap:t,orEmpty:a,params:i,language:o}=e,r=L(e,["ns","noWrap","orEmpty","params","language"]);const s={ns:n,noWrap:t,orEmpty:a,language:o};return Object.assign(Object.assign({},s),{params:Object.assign({},r)})}(t)),a)),a};function D({options:t}){const i=function(e,n){let t=!0;function a(){return t}const i=Object.freeze({onPendingLanguageChange:u(a),onLanguageChange:u(a),onLoadingChange:u(a),onFetchingChange:u(a),onInitialLoaded:u(a),onRunningChange:u(a),onCacheChange:u(a),onUpdate:d(a,e,n),onPermanentChange:u(a),onError:u(a),setEmitterActive(e){t=e},on:(e,n)=>{switch(e){case"pendingLanguage":return i.onPendingLanguageChange.listen(n);case"language":return i.onLanguageChange.listen(n);case"loading":return i.onLoadingChange.listen(n);case"fetching":return i.onFetchingChange.listen(n);case"initialLoad":return i.onInitialLoaded.listen(n);case"running":return i.onRunningChange.listen(n);case"cache":return i.onCacheChange.listen(n);case"update":return i.onUpdate.listen(n);case"permanentChange":return i.onPermanentChange.listen(n);case"error":return i.onError.listen(n)}}});return i.onInitialLoaded.listen((()=>i.onUpdate.emit())),i.onLanguageChange.listen((()=>i.onUpdate.emit())),i.onCacheChange.listen((({value:e})=>i.onUpdate.emit([e.namespace],!0))),i}(b,L),c=R(!1,(()=>v.isFetching()),i.onFetchingChange.emit),l=R(!1,(()=>I.isLoading()),i.onLoadingChange.emit),p=function(e,n,t){let a,i=E();const c=Object.freeze({init(e){i=E(e,i)},isRunning:()=>i.isRunning,setRunning(e){i.isRunning!==e&&(i.isRunning=e,t.emit(e))},isInitialLoading:()=>i.isInitialLoading,setInitialLoading(e){i.isInitialLoading=e},getLanguage:()=>i.language||i.initialOptions.language,setLanguage(n){i.language!==n&&(i.language=n,e.emit(n))},getPendingLanguage:()=>i.pendingLanguage||c.getLanguage(),setPendingLanguage(e){i.pendingLanguage!==e&&(i.pendingLanguage=e,n.emit(e))},getInitialOptions:()=>Object.assign(Object.assign({},i.initialOptions),a),addActiveNs(e){o(e).forEach((e=>{const n=i.activeNamespaces.get(e);void 0!==n?i.activeNamespaces.set(e,n+1):i.activeNamespaces.set(e,1)}))},removeActiveNs(e){o(e).forEach((e=>{const n=i.activeNamespaces.get(e);void 0!==n&&n>1?i.activeNamespaces.set(e,n-1):i.activeNamespaces.delete(e)}))},getRequiredNamespaces:()=>s([...i.initialOptions.ns||[i.initialOptions.defaultNs],...o(i.initialOptions.fallbackNs),...i.activeNamespaces.keys()]),getFallbackLangs(e){const n=e||c.getLanguage();return n?s([n,...r(n,i.initialOptions.fallbackLanguage)]):[]},getFallbackNs:()=>o(i.initialOptions.fallbackNs),getDefaultNs:e=>void 0===e?i.initialOptions.defaultNs:e,getAvailableLanguages(){if(i.initialOptions.availableLanguages)return i.initialOptions.availableLanguages;if(i.initialOptions.staticData){const e=Object.keys(i.initialOptions.staticData).map((e=>m(e).language));return Array.from(new Set(e))}},withDefaultNs:e=>({namespace:void 0===e.namespace?c.getInitialOptions().defaultNs:e.namespace,language:e.language}),overrideCredentials(e){a=e?Object.assign(Object.assign({},e),{apiUrl:g(e.apiUrl)}):void 0}});return c}(i.onLanguageChange,i.onPendingLanguageChange,i.onRunningChange),f=w(p.getLanguage,p.getInitialOptions,p.getAvailableLanguages,y,C,S,k,i),v=O(i,f.getBackendRecord,f.getBackendDevRecord,p.withDefaultNs,p.isInitialLoading,c,l);let h;function b(){return p.getFallbackNs()}function L(e){return p.getDefaultNs(e)}function y(e){return[...o(L(e)),...b()]}function j(e){return[...o(null!=e?e:L()),...p.getRequiredNamespaces()]}function k(e,n,t){const a=p.withDefaultNs(e),i=v.getTranslation(a,n);return v.changeTranslation(a,n,t),{revert(){v.changeTranslation(a,n,i)}}}function D(e){p.init(e),v.addStaticData(p.getInitialOptions().staticData)}function F(e,t){const a=function(e,n){const t=p.getFallbackLangs(e),a=j(n),i=[];return t.forEach((e=>{a.forEach((n=>{v.exists({language:e,namespace:n},!0)||i.push({language:e,namespace:n})}))})),i}(e,t);if(a.length)return n(I.loadRecords(a),(()=>{}))}function C({key:e,ns:n}){const t=p.getFallbackLangs(),a=y(null!=n?n:void 0);return v.getTranslationNs(a,t,e)}function S({key:e,ns:n,language:t}){const a=y(null!=n?n:void 0),i=p.getFallbackLangs(t);return v.getTranslationFallback(a,i,e)}function A(){const t=n(function(){if(p.getLanguage())return;return n(f.getInitialLanguage(),(e=>{const n=e||p.getInitialOptions().defaultLanguage;n&&p.setLanguage(n)}))}(),(()=>F()));if(e(t))return p.setInitialLoading(!0),c.notify(),l.notify(),Promise.resolve(t).then((()=>{p.setInitialLoading(!1),c.notify(),l.notify(),i.onInitialLoaded.emit()}));i.onInitialLoaded.emit()}t&&D(t),i.onUpdate.listen((()=>{p.isRunning()&&f.retranslate()}));const I=Object.freeze(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},i),p),f),v),{init:D,getTranslation:S,changeTranslation:k,getTranslationNs:C,getDefaultAndFallbackNs:y,async changeLanguage(e){p.getPendingLanguage()===e&&p.getLanguage()===e||(p.setPendingLanguage(e),p.isRunning()&&await F(e),e===p.getPendingLanguage()&&(p.setLanguage(e),await f.setStoredLanguage(e)))},async addActiveNs(e,n){n||p.addActiveNs(e),p.isRunning()&&await F(void 0,e)},loadRecords:e=>v.loadRecords(e,I.isDev()),loadRecord:async e=>(await I.loadRecords([e]))[0],isLoading:e=>v.isLoading(p.getLanguage(),e),isLoaded(e){const n=p.getLanguage();if(!n)return!1;const t=p.getFallbackLangs(n),a=j(e),i=[];return t.forEach((e=>{a.forEach((n=>{v.exists({language:e,namespace:n})||i.push({language:e,namespace:n})}))})),0===i.length},t:(...e)=>{const n=N(...e),t=S(n);return f.formatTranslation(Object.assign(Object.assign({},n),{translation:t}))},isDev:()=>Boolean(p.getInitialOptions().apiKey&&p.getInitialOptions().apiUrl),run:()=>(function(){if((f.getLanguageDetector()||f.getLanguageStorage())&&!p.getAvailableLanguages())throw new Error(a("availableLanguages"));if(!p.getLanguage()&&!p.getInitialOptions().defaultLanguage)throw new Error(a(["defaultLanguage","language"]))}(),p.isRunning()||(p.setRunning(!0),f.run(),h=A()),Promise.resolve(h)),stop(){p.isRunning()&&(f.stop(),p.setRunning(!1))}}));return I}const F=0,C=1,S=2;class A extends Error{constructor(e,n,t){let a;a=e===F?"Empty parameter":e===C?"Unexpected character":"Unexpected end",super(`Tolgee parser: ${a} at ${n} in "${t}"`),this.code=e,this.index=n}}function I(e){return/\s/.test(e)}const T=0,P=1,x=2,U=3,B=4,z=new Set([x,P,T]),K="'",$=new Set(["{","}",K]),M=e=>/[0-9a-zA-Z_]/.test(e);function V(e,n){const[t,a]=function(e){let n=T,t="",a="",i="";const o=[],r=[];let s=0;function g(n){throw new A(n,s,e)}const c=()=>{o.push(t),t=""},l=()=>{""===a&&g(F),r.push(a),a=""};for(s=0;s<e.length;s++)switch(i=e[s],n){case T:i===K?(t+=i,n=P):"{"===i?(c(),n=U):(t+=i,n=T);break;case P:$.has(i)?(t=t.slice(0,-1)+i,n=x):(t+=i,n=T);break;case x:i===K?n=T:(t+=i,n=x);break;case U:"}"===i?(l(),n=T):I(i)?""!==a&&(l(),n=B):(M(i)||g(C),a+=i,n=U);break;case B:"}"==i?n=T:I(i)?n=B:g(C)}return z.has(n)||g(S),c(),[o,r]}(e),i=[t[0]];for(let o=1;o<t.length;o++){const r=null==n?void 0:n[a[o-1]];if(void 0===r)throw new Error(`Missing parameter "${a[o-1]}" in "${e}"`);i.push(String(r)),i.push(t[o])}return i.join("")}exports.FormatSimple=()=>(e,n)=>(n.setFinalFormatter({format:({translation:e,params:n})=>V(e,n)}),e),exports.LanguageDetectorError=f,exports.LanguageStorageError=v,exports.RecordFetchError=p,exports.TolgeeCore=()=>{const e={plugins:[],options:{}},n=Object.freeze({use:t=>(e.plugins.push(t),n),updateDefaults:t=>(e.options=k(e.options,t),n),init(n){const t=function(e){const n=D({options:e});function t(e){const t=n.isRunning();t&&n.stop(),e(),n.isDev()&&n.invalidate(),t&&n.run()}n.isDev()&&n.invalidate();const a=Object.freeze({on:n.on,onNsUpdate:n.onUpdate.listenSome,setEmitterActive:n.setEmitterActive,getLanguage:n.getLanguage,getPendingLanguage:n.getPendingLanguage,changeLanguage:n.changeLanguage,changeTranslation:n.changeTranslation,addActiveNs:n.addActiveNs,removeActiveNs:n.removeActiveNs,loadRecords:n.loadRecords,loadRecord:n.loadRecord,addStaticData:n.addStaticData,getRecord:n.getRecord,getAllRecords:n.getAllRecords,isLoaded:n.isLoaded,isInitialLoading:n.isInitialLoading,isLoading:n.isLoading,isFetching:n.isFetching,isRunning:n.isRunning,run:n.run,stop:n.stop,t:n.t,highlight:n.highlight,getInitialOptions:n.getInitialOptions,isDev:n.isDev,wrap:n.wrap,unwrap:n.unwrap,overrideCredentials(e){t((()=>n.overrideCredentials(e)))},addPlugin(e){e&&t((()=>n.addPlugin(a,e)))},updateOptions(e){e&&t((()=>n.init(e)))}});return a}(k(e.options,n));return e.plugins.forEach(t.addPlugin),t}});return n},exports.createFetchFunction=l,exports.getFallback=i,exports.getFallbackArray=o,exports.getTranslateProps=N;
2
2
  //# sourceMappingURL=tolgee.cjs.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tolgee.cjs.min.js","sources":["../src/helpers.ts","../src/Controller/Events/EventEmitter.ts","../src/Controller/Events/EventEmitterSelective.ts","../src/Controller/Cache/helpers.ts","../src/Controller/Cache/Cache.ts","../../../node_modules/tslib/tslib.es6.js","../src/Controller/State/observerOptions.ts","../src/Controller/State/initState.ts","../src/Controller/Plugins/Plugins.ts","../src/Controller/ValueObserver.ts","../src/TranslateParams.ts","../src/Controller/Controller.ts","../src/Controller/Events/Events.ts","../src/Controller/State/State.ts","../src/TolgeeCore.ts","../src/FormatSimple/FormatError.ts","../src/FormatSimple/formatParser.ts","../src/FormatSimple/formatter.ts","../src/FormatSimple/FormatSimple.ts"],"sourcesContent":[null,null,null,null,null,"/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n 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\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n 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\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n",null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["isPromise","value","Boolean","then","valueOrPromise","callback","Promise","resolve","missingOptionError","option","options","Array","isArray","map","val","lastPart","slice","join","getFallback","getFallbackArray","getFallbackFromStruct","language","fallbackLanguage","item","unique","arr","from","Set","sanitizeUrl","url","replace","defaultFetchFunction","input","fetch","createFetchFunction","fetchFn","init","headers","Object","assign","process","env","TOLGEE_UI_VERSION","EventEmitter","isActive","handlers","freeze","listen","handler","handlerWrapper","e","push","unsubscribe","filter","i","emit","data","forEach","EventEmitterSelective","getFallbackNs","getDefaultNs","listeners","partialListeners","queue","solveQueue","length","queueCopy","undefined","namespaces","ns","add","fallbackNamespaces","findIndex","has","fn","callHandlers","keys","delayed","setTimeout","delete","listenSome","result","subscribeNs","flattenTranslations","Map","entries","key","set","flatValue","flatKey","decodeCacheKey","firstPart","rest","split","namespace","encodeCacheKey","Cache","onCacheChange","backendGetRecord","backendGetDevRecord","withDefaultNs","isInitialLoading","fetchingObserver","loadingObserver","asyncRequests","cache","staticData","version","addRecordInternal","descriptor","recordVersion","cacheKey","fetchProd","keyObject","dataPromise","staticDataValue","self","addStaticData","existing","get","invalidate","clear","addRecord","exists","strict","record","getRecord","_a","getTranslation","getTranslationNs","languages","getTranslationFallback","changeTranslation","isFetching","size","find","includes","isLoading","async","descriptors","isDev","withPromises","existingPromise","new","promise","catch","console","warn","fetchData","notify","results","all","promiseChanged","getAllRecords","entry","__rest","s","t","p","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","propertyIsEnumerable","DEFAULT_FORMAT_ERROR","defaultValues","defaultNs","observerOptions","tagAttributes","textarea","img","restrictedElements","highlightKeys","highlightColor","highlightWidth","inputPrefix","inputSuffix","passToParent","fullKeyEncode","observerType","onFormatError","apiUrl","onTranslationMissing","combineOptions","states","state","initState","previousState","initialOptions","activeNamespaces","pendingLanguage","isRunning","Plugins","getLanguage","getInitialOptions","getAvailableLanguages","getFallbackNamespaces","onPermanentChange","plugins","ui","instances","formatters","finalFormatter","observer","devBackend","backends","languageDetector","languageStorage","onClick","keysAndDefaults","event","withNs","defaultValue","translation","handleElementClick","findPositions","translate","props","formatTranslation","formatEnabled","getCommonProps","setObserver","hasObserver","addFormatter","formatter","setFinalFormatter","setUi","hasUi","setLanguageStorage","storage","setLanguageDetector","detector","addBackend","backend","setDevBackend","addPlugin","tolgeeInstance","plugin","run","apiKey","projectId","highlight","_b","mouseHighlight","stop","getLanguageStorage","getInitialLanguage","availableLanguages","detectLanguage","setStoredLanguage","setLanguage","getDevBackend","getBackendRecord","error","getBackendDevRecord","getLanguageDetector","retranslate","unhighlight","unwrap","text","wrap","params","hasDevBackend","noWrap","orEmpty","formattableTranslation","translationMissingResult","isFormatEnabled","outputNotFormattable","format","errorMessage","message","formatErrorType","ValueObserver","initialValue","valueGetter","previousValue","getTranslateProps","keyOrProps","parseCombinedOptions","Controller","events","emitterActive","onPendingLanguageChange","onLanguageChange","onLoadingChange","onFetchingChange","onInitialLoaded","onRunningChange","onUpdate","setEmitterActive","active","on","Events","devCredentials","setRunning","setInitialLoading","getPendingLanguage","setPendingLanguage","addActiveNs","removeActiveNs","getRequiredNamespaces","fallbackNs","getFallbackLangs","lang","languagesFromStaticData","overrideCredentials","credentials","State","pluginService","getDefaultAndFallbackNs","runPromise","revert","loadRequiredRecords","getRequiredRecords","loadRecords","loadInitial","defaultLanguage","initializeLanguage","forget","isLoaded","args","Error","checkCorrectConfiguration","ERROR_PARAM_EMPTY","ERROR_UNEXPECTED_CHAR","ERROR_UNEXPECTED_END","FormatError","constructor","code","index","super","this","isWhitespace","ch","test","STATE_TEXT","STATE_ESCAPE_MAYBE","STATE_ESCAPE","STATE_PARAM","STATE_PARAM_AFTER","END_STATES","CHAR_ESCAPE","ESCAPABLE","isAllowedInParam","char","texts","pars","param","parsingError","addText","addParam","formatParser","parameter","String","tolgee","tools","tolgeeChain","use","updateDefaults","controller","withRestart","wasRunning","onNsUpdate","changeLanguage","loadRecord","updateOptions","createTolgee"],"mappings":"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"}
1
+ {"version":3,"file":"tolgee.cjs.min.js","sources":["../src/helpers.ts","../src/Controller/Events/EventEmitter.ts","../src/Controller/Events/EventEmitterSelective.ts","../src/types/errors.ts","../src/Controller/Cache/helpers.ts","../src/Controller/Cache/Cache.ts","../../../node_modules/tslib/tslib.es6.js","../src/Controller/State/observerOptions.ts","../src/Controller/State/initState.ts","../src/Controller/Plugins/Plugins.ts","../src/Controller/ValueObserver.ts","../src/TranslateParams.ts","../src/Controller/Controller.ts","../src/Controller/Events/Events.ts","../src/Controller/State/State.ts","../src/TolgeeCore.ts","../src/FormatSimple/FormatError.ts","../src/FormatSimple/formatParser.ts","../src/FormatSimple/formatter.ts","../src/FormatSimple/FormatSimple.ts"],"sourcesContent":[null,null,null,null,null,null,"/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n 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\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n 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\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n",null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["isPromise","value","Boolean","then","valueOrPromise","callback","Promise","resolve","handleRegularOrAsyncErr","onError","createError","handle","e","error","emit","console","result","catch","missingOptionError","option","options","Array","isArray","map","val","lastPart","slice","join","getFallback","getFallbackArray","getFallbackFromStruct","language","fallbackLanguage","item","unique","arr","from","Set","sanitizeUrl","url","replace","defaultFetchFunction","input","fetch","createFetchFunction","fetchFn","init","headers","Object","assign","process","env","TOLGEE_UI_VERSION","EventEmitter","isActive","handlers","freeze","listen","handler","handlerWrapper","push","unsubscribe","filter","i","data","forEach","EventEmitterSelective","getFallbackNs","getDefaultNs","listeners","partialListeners","queue","solveQueue","length","queueCopy","undefined","namespaces","ns","add","fallbackNamespaces","findIndex","has","fn","callHandlers","keys","delayed","setTimeout","delete","listenSome","subscribeNs","RecordFetchError","Error","constructor","descriptor","cause","isDev","namespace","super","this","name","LanguageDetectorError","message","LanguageStorageError","flattenTranslations","Map","entries","key","set","flatValue","flatKey","decodeCacheKey","firstPart","rest","split","encodeCacheKey","Cache","events","backendGetRecord","backendGetDevRecord","withDefaultNs","isInitialLoading","fetchingObserver","loadingObserver","asyncRequests","cache","staticData","version","addRecordInternal","recordVersion","cacheKey","onCacheChange","fetchProd","keyObject","dataOrPromise","staticDataValue","self","addStaticData","existing","get","invalidate","clear","addRecord","exists","strict","record","getRecord","_a","getTranslation","getTranslationNs","languages","getTranslationFallback","changeTranslation","isFetching","size","find","includes","isLoading","async","descriptors","withPromises","existingPromise","new","promise","dataPromise","warn","fetchData","notify","results","all","promiseChanged","getAllRecords","entry","__rest","s","t","p","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","propertyIsEnumerable","DEFAULT_FORMAT_ERROR","defaultValues","defaultNs","observerOptions","tagAttributes","textarea","img","restrictedElements","highlightKeys","highlightColor","highlightWidth","inputPrefix","inputSuffix","passToParent","fullKeyEncode","observerType","onFormatError","apiUrl","onTranslationMissing","combineOptions","states","state","initState","previousState","initialOptions","activeNamespaces","pendingLanguage","isRunning","Plugins","getLanguage","getInitialOptions","getAvailableLanguages","getFallbackNamespaces","plugins","ui","instances","formatters","finalFormatter","observer","devBackend","backends","languageDetector","languageStorage","onClick","keysAndDefaults","event","withNs","defaultValue","translation","handleElementClick","findPositions","translate","props","formatTranslation","formatEnabled","getCommonProps","setObserver","hasObserver","addFormatter","formatter","setFinalFormatter","setUi","hasUi","setLanguageStorage","storage","setLanguageDetector","detector","addBackend","backend","setDevBackend","addPlugin","tolgeeInstance","plugin","run","apiKey","projectId","highlight","onPermanentChange","_b","mouseHighlight","stop","getLanguageStorage","getInitialLanguage","availableLanguages","detectLanguage","setStoredLanguage","setLanguage","getDevBackend","getBackendRecord","getBackendDevRecord","getLanguageDetector","retranslate","unhighlight","unwrap","text","wrap","params","hasDevBackend","noWrap","orEmpty","formattableTranslation","translationMissingResult","isFormatEnabled","outputNotFormattable","format","errorMessage","formatErrorType","ValueObserver","initialValue","valueGetter","previousValue","getTranslateProps","keyOrProps","parseCombinedOptions","Controller","emitterActive","onPendingLanguageChange","onLanguageChange","onLoadingChange","onFetchingChange","onInitialLoaded","onRunningChange","onUpdate","setEmitterActive","active","on","Events","devCredentials","setRunning","setInitialLoading","getPendingLanguage","setPendingLanguage","addActiveNs","removeActiveNs","getRequiredNamespaces","fallbackNs","getFallbackLangs","lang","languagesFromStaticData","overrideCredentials","credentials","State","pluginService","getDefaultAndFallbackNs","runPromise","revert","loadRequiredRecords","getRequiredRecords","loadRecords","loadInitial","defaultLanguage","initializeLanguage","forget","isLoaded","args","checkCorrectConfiguration","ERROR_PARAM_EMPTY","ERROR_UNEXPECTED_CHAR","ERROR_UNEXPECTED_END","FormatError","code","index","isWhitespace","ch","test","STATE_TEXT","STATE_ESCAPE_MAYBE","STATE_ESCAPE","STATE_PARAM","STATE_PARAM_AFTER","END_STATES","CHAR_ESCAPE","ESCAPABLE","isAllowedInParam","char","texts","pars","param","parsingError","addText","addParam","formatParser","parameter","String","tolgee","tools","tolgeeChain","use","updateDefaults","controller","withRestart","wasRunning","onNsUpdate","changeLanguage","loadRecord","updateOptions","createTolgee"],"mappings":"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"}
@@ -9,6 +9,25 @@ function valueOrPromise(value, callback) {
9
9
  return callback(value);
10
10
  }
11
11
  }
12
+ function handleRegularOrAsyncErr(onError, createError, callback) {
13
+ function handle(e) {
14
+ const error = createError(e);
15
+ onError.emit(error);
16
+ // eslint-disable-next-line no-console
17
+ console.error(error);
18
+ throw error;
19
+ }
20
+ try {
21
+ const result = callback();
22
+ if (isPromise(result)) {
23
+ return result.catch(handle);
24
+ }
25
+ return result;
26
+ }
27
+ catch (e) {
28
+ handle(e);
29
+ }
30
+ }
12
31
  function missingOptionError(option) {
13
32
  const options = (Array.isArray(option) ? option : [option]).map((val) => `'${val}'`);
14
33
  const lastPart = options.slice(-2).join(' or ');
@@ -183,6 +202,7 @@ function Events(getFallbackNs, getDefaultNs) {
183
202
  onCacheChange: EventEmitter(isActive),
184
203
  onUpdate: EventEmitterSelective(isActive, getFallbackNs, getDefaultNs),
185
204
  onPermanentChange: EventEmitter(isActive),
205
+ onError: EventEmitter(isActive),
186
206
  setEmitterActive(active) {
187
207
  emitterActive = active;
188
208
  },
@@ -206,6 +226,8 @@ function Events(getFallbackNs, getDefaultNs) {
206
226
  return self.onUpdate.listen(handler);
207
227
  case 'permanentChange':
208
228
  return self.onPermanentChange.listen(handler);
229
+ case 'error':
230
+ return self.onError.listen(handler);
209
231
  }
210
232
  }),
211
233
  });
@@ -215,6 +237,32 @@ function Events(getFallbackNs, getDefaultNs) {
215
237
  return self;
216
238
  }
217
239
 
240
+ class RecordFetchError extends Error {
241
+ constructor(descriptor, cause, isDev = false) {
242
+ const { language, namespace } = descriptor;
243
+ super(`Tolgee: Failed to fetch record for "${language}"${namespace && ` and "${namespace}"`}`);
244
+ this.cause = cause;
245
+ this.isDev = isDev;
246
+ this.name = 'RecordFetchError';
247
+ this.language = language;
248
+ this.namespace = namespace;
249
+ }
250
+ }
251
+ class LanguageDetectorError extends Error {
252
+ constructor(message, cause) {
253
+ super(message);
254
+ this.cause = cause;
255
+ this.name = 'LanguageDetectorError';
256
+ }
257
+ }
258
+ class LanguageStorageError extends Error {
259
+ constructor(message, cause) {
260
+ super(message);
261
+ this.cause = cause;
262
+ this.name = 'LanguageStorageError';
263
+ }
264
+ }
265
+
218
266
  const flattenTranslations = (data) => {
219
267
  const result = new Map();
220
268
  Object.entries(data).forEach(([key, value]) => {
@@ -247,7 +295,7 @@ const encodeCacheKey = ({ language, namespace, }) => {
247
295
  }
248
296
  };
249
297
 
250
- function Cache(onCacheChange, backendGetRecord, backendGetDevRecord, withDefaultNs, isInitialLoading, fetchingObserver, loadingObserver) {
298
+ function Cache(events, backendGetRecord, backendGetDevRecord, withDefaultNs, isInitialLoading, fetchingObserver, loadingObserver) {
251
299
  const asyncRequests = new Map();
252
300
  const cache = new Map();
253
301
  let staticData = {};
@@ -258,39 +306,52 @@ function Cache(onCacheChange, backendGetRecord, backendGetDevRecord, withDefault
258
306
  data: flattenTranslations(data),
259
307
  version: recordVersion,
260
308
  });
261
- onCacheChange.emit(descriptor);
309
+ events.onCacheChange.emit(descriptor);
262
310
  }
263
311
  /**
264
312
  * Fetches production data
265
313
  */
266
314
  function fetchProd(keyObject) {
267
- let dataPromise = undefined;
268
- if (!dataPromise) {
315
+ let dataOrPromise = undefined;
316
+ if (!dataOrPromise) {
269
317
  const staticDataValue = staticData[encodeCacheKey(keyObject)];
270
318
  if (typeof staticDataValue === 'function') {
271
- dataPromise = staticDataValue();
319
+ dataOrPromise = staticDataValue();
272
320
  }
273
321
  }
274
- if (!dataPromise) {
275
- dataPromise = backendGetRecord(keyObject);
322
+ if (!dataOrPromise) {
323
+ dataOrPromise = backendGetRecord(keyObject);
324
+ }
325
+ if (isPromise(dataOrPromise)) {
326
+ return dataOrPromise === null || dataOrPromise === void 0 ? void 0 : dataOrPromise.catch((e) => {
327
+ const error = new RecordFetchError(keyObject, e);
328
+ events.onError.emit(error);
329
+ // eslint-disable-next-line no-console
330
+ console.error(error);
331
+ throw error;
332
+ });
333
+ }
334
+ else {
335
+ return dataOrPromise;
276
336
  }
277
- return dataPromise;
278
337
  }
279
338
  function fetchData(keyObject, isDev) {
280
339
  var _a;
281
- let dataPromise = undefined;
340
+ let dataOrPromise = undefined;
282
341
  if (isDev) {
283
- dataPromise = (_a = backendGetDevRecord(keyObject)) === null || _a === void 0 ? void 0 : _a.catch(() => {
342
+ dataOrPromise = (_a = backendGetDevRecord(keyObject)) === null || _a === void 0 ? void 0 : _a.catch((e) => {
343
+ const error = new RecordFetchError(keyObject, e, true);
344
+ events.onError.emit(error);
284
345
  // eslint-disable-next-line no-console
285
- console.warn(`Tolgee: Failed to fetch data from dev backend`);
346
+ console.warn(error);
286
347
  // fallback to prod fetch if dev fails
287
348
  return fetchProd(keyObject);
288
349
  });
289
350
  }
290
- if (!dataPromise) {
291
- dataPromise = fetchProd(keyObject);
351
+ if (!dataOrPromise) {
352
+ dataOrPromise = fetchProd(keyObject);
292
353
  }
293
- return dataPromise;
354
+ return dataOrPromise;
294
355
  }
295
356
  const self = Object.freeze({
296
357
  addStaticData(data) {
@@ -359,7 +420,7 @@ function Cache(onCacheChange, backendGetRecord, backendGetDevRecord, withDefault
359
420
  var _a;
360
421
  const record = (_a = cache.get(encodeCacheKey(descriptor))) === null || _a === void 0 ? void 0 : _a.data;
361
422
  record === null || record === void 0 ? void 0 : record.set(key, value);
362
- onCacheChange.emit(Object.assign(Object.assign({}, descriptor), { key }));
423
+ events.onCacheChange.emit(Object.assign(Object.assign({}, descriptor), { key }));
363
424
  },
364
425
  isFetching(ns) {
365
426
  if (isInitialLoading()) {
@@ -519,7 +580,7 @@ function initState(options, previousState) {
519
580
  };
520
581
  }
521
582
 
522
- function Plugins(getLanguage, getInitialOptions, getAvailableLanguages, getFallbackNamespaces, getTranslationNs, getTranslation, changeTranslation, onPermanentChange) {
583
+ function Plugins(getLanguage, getInitialOptions, getAvailableLanguages, getFallbackNamespaces, getTranslationNs, getTranslation, changeTranslation, events) {
523
584
  const plugins = {
524
585
  ui: undefined,
525
586
  };
@@ -589,12 +650,18 @@ function Plugins(getLanguage, getInitialOptions, getAvailableLanguages, getFallb
589
650
  function setLanguageDetector(detector) {
590
651
  instances.languageDetector = detector;
591
652
  }
653
+ function storageLoadLanguage() {
654
+ return handleRegularOrAsyncErr(events.onError, (e) => new LanguageStorageError('Tolgee: Failed to load language', e), () => { var _a; return (_a = instances.languageStorage) === null || _a === void 0 ? void 0 : _a.getLanguage(getCommonProps()); });
655
+ }
592
656
  function detectLanguage() {
593
657
  if (!instances.languageDetector) {
594
658
  return undefined;
595
659
  }
596
660
  const availableLanguages = getAvailableLanguages();
597
- return instances.languageDetector.getLanguage(Object.assign({ availableLanguages }, getCommonProps()));
661
+ return handleRegularOrAsyncErr(events.onError, (e) => new LanguageDetectorError('Tolgee: Failed to detect language', e), () => {
662
+ var _a;
663
+ return (_a = instances.languageDetector) === null || _a === void 0 ? void 0 : _a.getLanguage(Object.assign({ availableLanguages }, getCommonProps()));
664
+ });
598
665
  }
599
666
  function addBackend(backend) {
600
667
  if (backend) {
@@ -631,7 +698,7 @@ function Plugins(getLanguage, getInitialOptions, getAvailableLanguages, getFallb
631
698
  highlight: self.highlight,
632
699
  changeTranslation,
633
700
  findPositions,
634
- onPermanentChange,
701
+ onPermanentChange: (data) => events.onPermanentChange.emit(data),
635
702
  });
636
703
  (_b = instances.observer) === null || _b === void 0 ? void 0 : _b.run({
637
704
  mouseHighlight: true,
@@ -649,9 +716,8 @@ function Plugins(getLanguage, getInitialOptions, getAvailableLanguages, getFallb
649
716
  return instances.languageStorage;
650
717
  },
651
718
  getInitialLanguage() {
652
- var _a;
653
719
  const availableLanguages = getAvailableLanguages();
654
- const languageOrPromise = (_a = instances.languageStorage) === null || _a === void 0 ? void 0 : _a.getLanguage(getCommonProps());
720
+ const languageOrPromise = storageLoadLanguage();
655
721
  return valueOrPromise(languageOrPromise, (language) => {
656
722
  if ((!availableLanguages || availableLanguages.includes(language)) &&
657
723
  language) {
@@ -661,8 +727,7 @@ function Plugins(getLanguage, getInitialOptions, getAvailableLanguages, getFallb
661
727
  });
662
728
  },
663
729
  setStoredLanguage(language) {
664
- var _a;
665
- (_a = instances.languageStorage) === null || _a === void 0 ? void 0 : _a.setLanguage(language, getCommonProps());
730
+ return handleRegularOrAsyncErr(events.onError, (e) => new LanguageStorageError('Tolgee: Failed to store language', e), () => { var _a; return (_a = instances.languageStorage) === null || _a === void 0 ? void 0 : _a.setLanguage(language, getCommonProps()); });
666
731
  },
667
732
  getDevBackend() {
668
733
  return instances.devBackend;
@@ -671,13 +736,6 @@ function Plugins(getLanguage, getInitialOptions, getAvailableLanguages, getFallb
671
736
  for (const backend of instances.backends) {
672
737
  const data = backend.getRecord(Object.assign({ language,
673
738
  namespace }, getCommonProps()));
674
- if (isPromise(data)) {
675
- return data === null || data === void 0 ? void 0 : data.catch((e) => {
676
- // eslint-disable-next-line no-console
677
- console.error(e);
678
- return {};
679
- });
680
- }
681
739
  if (data !== undefined) {
682
740
  return data;
683
741
  }
@@ -966,8 +1024,8 @@ function Controller({ options }) {
966
1024
  const fetchingObserver = ValueObserver(false, () => cache.isFetching(), events.onFetchingChange.emit);
967
1025
  const loadingObserver = ValueObserver(false, () => self.isLoading(), events.onLoadingChange.emit);
968
1026
  const state = State(events.onLanguageChange, events.onPendingLanguageChange, events.onRunningChange);
969
- const pluginService = Plugins(state.getLanguage, state.getInitialOptions, state.getAvailableLanguages, getDefaultAndFallbackNs, getTranslationNs, getTranslation, changeTranslation, onPermanentChange);
970
- const cache = Cache(events.onCacheChange, pluginService.getBackendRecord, pluginService.getBackendDevRecord, state.withDefaultNs, state.isInitialLoading, fetchingObserver, loadingObserver);
1027
+ const pluginService = Plugins(state.getLanguage, state.getInitialOptions, state.getAvailableLanguages, getDefaultAndFallbackNs, getTranslationNs, getTranslation, changeTranslation, events);
1028
+ const cache = Cache(events, pluginService.getBackendRecord, pluginService.getBackendDevRecord, state.withDefaultNs, state.isInitialLoading, fetchingObserver, loadingObserver);
971
1029
  if (options) {
972
1030
  init(options);
973
1031
  }
@@ -1006,12 +1064,6 @@ function Controller({ options }) {
1006
1064
  },
1007
1065
  };
1008
1066
  }
1009
- function onPermanentChange(props) {
1010
- events.onPermanentChange.emit({
1011
- key: props.key,
1012
- namespace: props.namespace,
1013
- });
1014
- }
1015
1067
  function init(options) {
1016
1068
  state.init(options);
1017
1069
  cache.addStaticData(state.getInitialOptions().staticData);
@@ -1102,7 +1154,7 @@ function Controller({ options }) {
1102
1154
  // there might be parallel language change
1103
1155
  // we only want to apply latest
1104
1156
  state.setLanguage(language);
1105
- pluginService.setStoredLanguage(language);
1157
+ await pluginService.setStoredLanguage(language);
1106
1158
  }
1107
1159
  },
1108
1160
  async addActiveNs(ns, forget) {
@@ -1534,5 +1586,5 @@ const FormatSimple = () => (tolgee, tools) => {
1534
1586
  return tolgee;
1535
1587
  };
1536
1588
 
1537
- export { FormatSimple, TolgeeCore, createFetchFunction, getFallback, getFallbackArray, getTranslateProps };
1589
+ export { FormatSimple, LanguageDetectorError, LanguageStorageError, RecordFetchError, TolgeeCore, createFetchFunction, getFallback, getFallbackArray, getTranslateProps };
1538
1590
  //# sourceMappingURL=tolgee.esm.js.map