@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
- !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self)["@tolgee/core"]={})}(this,(function(e){"use strict";function n(e){return Boolean(e&&"function"==typeof e.then)}function t(e,t){return n(e)?Promise.resolve(e).then(t):t(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 s(e,n){return"object"!=typeof(t=n)||Array.isArray(t)||null===t?o(n):o(null==n?void 0:n[e]);var t}function r(e){return Array.from(new Set(e))}function g(e){return e?e.replace(/\/+$/,""):e}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 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());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()&&(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};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}})}const f=e=>{const n=new Map;return Object.entries(e).forEach((([e,t])=>{null!=t&&("object"!=typeof t?n.set(e,t):f(t).forEach(((t,a)=>{n.set(e+"."+a,t)})))})),n},p=e=>{const[n,...t]=e.split(":");return{language:n,namespace:t.join(":")||""}},v=({language:e,namespace:n})=>n?`${e}:${n}`:e;function h(e,n,t,a,i,s,g){const c=new Map,l=new Map;let u={},d=0;function h(n,t,a){const i=v(n);l.set(i,{data:f(t),version:a}),e.emit(n)}function m(e){let t;if(!t){const n=u[v(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(),d+=1},addRecord(e,n){h(e,n,d)},exists(e,n=!1){const t=l.get(v(e));return t&&n?t.version===d:Boolean(t)},getRecord(e){var n;return null===(n=l.get(v(a(e))))||void 0===n?void 0:n.data},getTranslation(e,n){var t;return null===(t=l.get(v(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(v({language:e,namespace:i})))||void 0===a?void 0:a.data.get(t);if(null!=n)return[i]}return r(e)},getTranslationFallback(e,n,t){var a;for(const i of e)for(const e of n){const n=null===(a=l.get(v({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(v(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(i())return!0;if(void 0===e)return c.size>0;const n=o(e);return Boolean(Array.from(c.keys()).find((e=>n.includes(p(e).namespace))))},isLoading(e,n){const t=o(n);return Boolean(i()||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=v(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}}));s.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,{})}})),s.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 m(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 b="invalid",y={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:b,apiUrl:"https://app.tolgee.io",fetch:l(),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 L(e,n){const t=O(y,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 j(e,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)},f=(e,n)=>{var t;return(null===(t=u.observer)||void 0===t?void 0:t.findPositions(e,n))||[]};function p(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 h(e){u.observer=null==e?void 0:e()}function y(){return Boolean(u.observer)}function O(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:O,setObserver:h,hasObserver:y,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:f,onPermanentChange:c}),null===(n=u.observer)||void 0===n||n.run({mouseHighlight:!0,options:s,translate:p,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 n=i();return t(null===(e=u.languageStorage)||void 0===e?void 0:e.getLanguage(v()),(e=>n&&!n.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:e,namespace:t})=>{for(const a of u.backends){const i=a.getRecord(Object.assign({language:e,namespace:t},v()));if(n(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(n){var t,{formatEnabled:i}=n,o=m(n,["formatEnabled"]);const{key:s,translation:r,defaultValue:g,noWrap:c,params:l,ns:d,orEmpty:f}=o,p=null!=r?r:g;let v="";null==r&&(v=a().onTranslationMissing(o));let h=null!=p?p:f?"":v;const y=e(),O=i||!(null===(t=u.observer)||void 0===t?void 0:t.outputNotFormattable),L=e=>u.observer&&!c?u.observer.wrap({key:s,translation:e,defaultValue:g,params:l,ns:d}):e;h=L(h);try{if(p&&y&&O)for(const e of u.formatters)h=e.format({translation:h,language:y,params:l});u.finalFormatter&&p&&y&&O&&(h=u.finalFormatter.format({translation:h,language:y,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)||b,t=a().onFormatError,i=typeof t;h="string"===i?t:"function"===i?t(n,o):b,h=L(h)}var j;return h}});return D}const k=(e,n,t)=>{let a=e;return Object.freeze({init(e){a=e},notify(){const e=n();a!==e&&t(e),a=e}})};const R=(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=m(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 w({options:e}){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),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}(y,O),c=k(!1,(()=>m.isFetching()),i.onFetchingChange.emit),l=k(!1,(()=>S.isLoading()),i.onLoadingChange.emit),f=function(e,n,t){let a,i=L();const c=Object.freeze({init(e){i=L(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:()=>r([...i.initialOptions.ns||[i.initialOptions.defaultNs],...o(i.initialOptions.fallbackNs),...i.activeNamespaces.keys()]),getFallbackLangs(e){const n=e||c.getLanguage();return n?r([n,...s(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=>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:g(e.apiUrl)}):void 0}});return c}(i.onLanguageChange,i.onPendingLanguageChange,i.onRunningChange),v=j(f.getLanguage,f.getInitialOptions,f.getAvailableLanguages,w,A,F,N,(function(e){i.onPermanentChange.emit({key:e.key,namespace:e.namespace})})),m=h(i.onCacheChange,v.getBackendRecord,v.getBackendDevRecord,f.withDefaultNs,f.isInitialLoading,c,l);let b;function y(){return f.getFallbackNs()}function O(e){return f.getDefaultNs(e)}function w(e){return[...o(O(e)),...y()]}function E(e){return[...o(null!=e?e:O()),...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,n){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,n);if(a.length)return t(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 e=t(function(){if(f.getLanguage())return;return t(v.getInitialLanguage(),(e=>{const n=e||f.getInitialOptions().defaultLanguage;n&&f.setLanguage(n)}))}(),(()=>C()));if(n(e))return f.setInitialLoading(!0),c.notify(),l.notify(),Promise.resolve(e).then((()=>{f.setInitialLoading(!1),c.notify(),l.notify(),i.onInitialLoaded.emit()}));i.onInitialLoaded.emit()}e&&D(e),i.onUpdate.listen((()=>{f.isRunning()&&v.retranslate()}));const S=Object.freeze(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},i),f),v),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),v.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=R(...e),t=F(n);return v.formatTranslation(Object.assign(Object.assign({},n),{translation:t}))},isDev:()=>Boolean(f.getInitialOptions().apiKey&&f.getInitialOptions().apiUrl),run:()=>(function(){if((v.getLanguageDetector()||v.getLanguageStorage())&&!f.getAvailableLanguages())throw new Error(a("availableLanguages"));if(!f.getLanguage()&&!f.getInitialOptions().defaultLanguage)throw new Error(a(["defaultLanguage","language"]))}(),f.isRunning()||(f.setRunning(!0),v.run(),b=I()),Promise.resolve(b)),stop(){f.isRunning()&&(v.stop(),f.setRunning(!1))}}));return S}const E=0,N=1,D=2;class C extends Error{constructor(e,n,t){let a;a=e===E?"Empty parameter":e===N?"Unexpected character":"Unexpected end",super(`Tolgee parser: ${a} at ${n} in "${t}"`),this.code=e,this.index=n}}function A(e){return/\s/.test(e)}const F=0,I=1,S=2,T=3,P=4,U=new Set([S,I,F]),B="'",x=new Set(["{","}",B]),z=e=>/[0-9a-zA-Z_]/.test(e);function K(e,n){const[t,a]=function(e){let n=F,t="",a="",i="";const o=[],s=[];let r=0;function g(n){throw new C(n,r,e)}const c=()=>{o.push(t),t=""},l=()=>{""===a&&g(E),s.push(a),a=""};for(r=0;r<e.length;r++)switch(i=e[r],n){case F:i===B?(t+=i,n=I):"{"===i?(c(),n=T):(t+=i,n=F);break;case I:x.has(i)?(t=t.slice(0,-1)+i,n=S):(t+=i,n=F);break;case S:i===B?n=F:(t+=i,n=S);break;case T:"}"===i?(l(),n=F):A(i)?""!==a&&(l(),n=P):(z(i)||g(N),a+=i,n=T);break;case P:"}"==i?n=F:A(i)?n=P:g(N)}return U.has(n)||g(D),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("")}e.FormatSimple=()=>(e,n)=>(n.setFinalFormatter({format:({translation:e,params:n})=>K(e,n)}),e),e.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=w({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},e.createFetchFunction=l,e.getFallback=i,e.getFallbackArray=o,e.getTranslateProps=R,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self)["@tolgee/core"]={})}(this,(function(e){"use strict";function n(e){return Boolean(e&&"function"==typeof e.then)}function t(e,t){return n(e)?Promise.resolve(e).then(t):t(e)}function a(e,t,a){function i(n){const a=t(n);throw e.emit(a),console.error(a),a}try{const e=a();return n(e)?e.catch(i):e}catch(e){i(e)}}function i(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 o(e){return"string"==typeof e?[e]:Array.isArray(e)?e:void 0}function r(e){return o(e)||[]}function s(e,n){return"object"!=typeof(t=n)||Array.isArray(t)||null===t?r(n):r(null==n?void 0:n[e]);var t}function g(e){return Array.from(new Set(e))}function c(e){return e?e.replace(/\/+$/,""):e}const l=(e,n)=>fetch(e,n),u=(e=l)=>(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 d(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 f(e,n,t){const a=new Set,i=new Set;let o=[];function s(){if(0===o.length)return;const e=o;o=[],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()&&(o.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=>(r(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 v extends Error{constructor(e,n){super(e),this.cause=n,this.name="LanguageDetectorError"}}class h extends Error{constructor(e,n){super(e),this.cause=n,this.name="LanguageStorageError"}}const m=e=>{const n=new Map;return Object.entries(e).forEach((([e,t])=>{null!=t&&("object"!=typeof t?n.set(e,t):m(t).forEach(((t,a)=>{n.set(e+"."+a,t)})))})),n},b=e=>{const[n,...t]=e.split(":");return{language:n,namespace:t.join(":")||""}},y=({language:e,namespace:n})=>n?`${e}:${n}`:e;function O(e,t,a,i,o,s,c){const l=new Map,u=new Map;let d={},f=0;function v(n,t,a){const i=y(n);u.set(i,{data:m(t),version:a}),e.onCacheChange.emit(n)}function h(a){let i;if(!i){const e=d[y(a)];"function"==typeof e&&(i=e())}return i||(i=t(a)),n(i)?null==i?void 0:i.catch((n=>{const t=new p(a,n);throw e.onError.emit(t),console.error(t),t})):i}const O=Object.freeze({addStaticData(e){e&&(d=Object.assign(Object.assign({},d),e),Object.entries(e).forEach((([e,n])=>{if("function"!=typeof n){const t=b(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(y(e));return t&&n?t.version===f:Boolean(t)},getRecord(e){var n;return null===(n=u.get(y(i(e))))||void 0===n?void 0:n.data},getTranslation(e,n){var t;return null===(t=u.get(y(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(y({language:e,namespace:i})))||void 0===a?void 0:a.data.get(t);if(null!=n)return[i]}return g(e)},getTranslationFallback(e,n,t){var a;for(const i of e)for(const e of n){const n=null===(a=u.get(y({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=u.get(y(n)))||void 0===i?void 0:i.data;null==o||o.set(t,a),e.onCacheChange.emit(Object.assign(Object.assign({},n),{key:t}))},isFetching(e){if(o())return!0;if(void 0===e)return l.size>0;const n=r(e);return Boolean(Array.from(l.keys()).find((e=>n.includes(b(e).namespace))))},isLoading(e,n){const t=r(n);return Boolean(o()||Array.from(l.keys()).find((n=>{const a=b(n);return(!t.length||t.includes(a.namespace))&&!O.exists({namespace:a.namespace,language:e})})))},async loadRecords(n,t){const o=n.map((n=>{const o=i(n),r=y(o),s=l.get(r);if(s)return{new:!1,promise:s,keyObject:o,cacheKey:r};const g=function(n,t){var i;let o;return t&&(o=null===(i=a(n))||void 0===i?void 0:i.catch((t=>{const a=new p(n,t,!0);return e.onError.emit(a),console.warn(a),h(n)}))),o||(o=h(n)),o}(o,t)||Promise.resolve(void 0);return l.set(r,g),{new:!0,promise:g,keyObject:o,cacheKey:r}}));s.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?O.addRecord(e.keyObject,t):O.getRecord(e.keyObject)||O.addRecord(e.keyObject,{})}})),s.notify(),c.notify(),o.map((e=>O.getRecord(e.keyObject)))},getAllRecords:()=>Array.from(u.entries()).map((([e,n])=>Object.assign(Object.assign({},b(e)),{data:n.data})))});return O}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 j="invalid",k={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:j,apiUrl:"https://app.tolgee.io",fetch:u(),onTranslationMissing:({key:e})=>e},E=(...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 w(e,n){const t=E(k,null==n?void 0:n.initialOptions,e);return t.apiUrl=c(t.apiUrl),(null==e?void 0:e.fetch)&&(t.fetch=u(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 R(e,n,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)},f=(e,n)=>{var t;return(null===(t=u.observer)||void 0===t?void 0:t.findPositions(e,n))||[]};function p(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:n().fetch}}function b(e){u.observer=null==e?void 0:e()}function y(){return Boolean(u.observer)}function O(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:O,setObserver:b,hasObserver:y,setUi:E,hasUi:w,setDevBackend:F,addBackend:D,setLanguageDetector:N,setLanguageStorage:R}))},run(){var e,t;const{apiKey:a,apiUrl:i,projectId:o,observerOptions:r}=n();u.ui=null===(e=l.ui)||void 0===e?void 0:e.call(l,{apiKey:a,apiUrl:i,projectId:o,highlight:C.highlight,changeTranslation:g,findPositions:f,onPermanentChange:e=>c.onPermanentChange.emit(e)}),null===(t=u.observer)||void 0===t||t.run({mouseHighlight:!0,options:r,translate:p,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 t(a(c.onError,(e=>new h("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 a(c.onError,(e=>new v("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=>a(c.onError,(e=>new h("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:t})=>{var a;const{apiKey:i,apiUrl:o,projectId:r}=n();return null===(a=u.devBackend)||void 0===a?void 0:a.getRecord(Object.assign({apiKey:i,apiUrl:o,projectId:r,language:e,namespace:t},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(t){var a,{formatEnabled:i}=t,o=L(t,["formatEnabled"]);const{key:r,translation:s,defaultValue:g,noWrap:c,params:l,ns:d,orEmpty:f}=o,p=null!=s?s:g;let v="";null==s&&(v=n().onTranslationMissing(o));let h=null!=p?p:f?"":v;const m=e(),b=i||!(null===(a=u.observer)||void 0===a?void 0:a.outputNotFormattable),y=e=>u.observer&&!c?u.observer.wrap({key:r,translation:e,defaultValue:g,params:l,ns:d}):e;h=y(h);try{if(p&&m&&b)for(const e of u.formatters)h=e.format({translation:h,language:m,params:l});u.finalFormatter&&p&&m&&b&&(h=u.finalFormatter.format({translation:h,language:m,params:l}))}catch(e){console.error(e);const t=("string"==typeof(O=e)?O:"string"==typeof(null==O?void 0:O.message)?O.message:void 0)||j,a=n().onFormatError,i=typeof a;h="string"===i?a:"function"===i?a(t,o):j,h=y(h)}var O;return h}});return C}const N=(e,n,t)=>{let a=e;return Object.freeze({init(e){a=e},notify(){const e=n();a!==e&&t(e),a=e}})};const D=(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 F({options:e}){const a=function(e,n){let t=!0;function a(){return t}const i=Object.freeze({onPendingLanguageChange:d(a),onLanguageChange:d(a),onLoadingChange:d(a),onFetchingChange:d(a),onInitialLoaded:d(a),onRunningChange:d(a),onCacheChange:d(a),onUpdate:f(a,e,n),onPermanentChange:d(a),onError:d(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}(m,y),o=N(!1,(()=>v.isFetching()),a.onFetchingChange.emit),l=N(!1,(()=>A.isLoading()),a.onLoadingChange.emit),u=function(e,n,t){let a,i=w();const o=Object.freeze({init(e){i=w(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||o.getLanguage(),setPendingLanguage(e){i.pendingLanguage!==e&&(i.pendingLanguage=e,n.emit(e))},getInitialOptions:()=>Object.assign(Object.assign({},i.initialOptions),a),addActiveNs(e){r(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){r(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:()=>g([...i.initialOptions.ns||[i.initialOptions.defaultNs],...r(i.initialOptions.fallbackNs),...i.activeNamespaces.keys()]),getFallbackLangs(e){const n=e||o.getLanguage();return n?g([n,...s(n,i.initialOptions.fallbackLanguage)]):[]},getFallbackNs:()=>r(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=>b(e).language));return Array.from(new Set(e))}},withDefaultNs:e=>({namespace:void 0===e.namespace?o.getInitialOptions().defaultNs:e.namespace,language:e.language}),overrideCredentials(e){a=e?Object.assign(Object.assign({},e),{apiUrl:c(e.apiUrl)}):void 0}});return o}(a.onLanguageChange,a.onPendingLanguageChange,a.onRunningChange),p=R(u.getLanguage,u.getInitialOptions,u.getAvailableLanguages,L,C,T,k,a),v=O(a,p.getBackendRecord,p.getBackendDevRecord,u.withDefaultNs,u.isInitialLoading,o,l);let h;function m(){return u.getFallbackNs()}function y(e){return u.getDefaultNs(e)}function L(e){return[...r(y(e)),...m()]}function j(e){return[...r(null!=e?e:y()),...u.getRequiredNamespaces()]}function k(e,n,t){const a=u.withDefaultNs(e),i=v.getTranslation(a,n);return v.changeTranslation(a,n,t),{revert(){v.changeTranslation(a,n,i)}}}function E(e){u.init(e),v.addStaticData(u.getInitialOptions().staticData)}function F(e,n){const a=function(e,n){const t=u.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,n);if(a.length)return t(A.loadRecords(a),(()=>{}))}function C({key:e,ns:n}){const t=u.getFallbackLangs(),a=L(null!=n?n:void 0);return v.getTranslationNs(a,t,e)}function T({key:e,ns:n,language:t}){const a=L(null!=n?n:void 0),i=u.getFallbackLangs(t);return v.getTranslationFallback(a,i,e)}function S(){const e=t(function(){if(u.getLanguage())return;return t(p.getInitialLanguage(),(e=>{const n=e||u.getInitialOptions().defaultLanguage;n&&u.setLanguage(n)}))}(),(()=>F()));if(n(e))return u.setInitialLoading(!0),o.notify(),l.notify(),Promise.resolve(e).then((()=>{u.setInitialLoading(!1),o.notify(),l.notify(),a.onInitialLoaded.emit()}));a.onInitialLoaded.emit()}e&&E(e),a.onUpdate.listen((()=>{u.isRunning()&&p.retranslate()}));const A=Object.freeze(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},a),u),p),v),{init:E,getTranslation:T,changeTranslation:k,getTranslationNs:C,getDefaultAndFallbackNs:L,async changeLanguage(e){u.getPendingLanguage()===e&&u.getLanguage()===e||(u.setPendingLanguage(e),u.isRunning()&&await F(e),e===u.getPendingLanguage()&&(u.setLanguage(e),await p.setStoredLanguage(e)))},async addActiveNs(e,n){n||u.addActiveNs(e),u.isRunning()&&await F(void 0,e)},loadRecords:e=>v.loadRecords(e,A.isDev()),loadRecord:async e=>(await A.loadRecords([e]))[0],isLoading:e=>v.isLoading(u.getLanguage(),e),isLoaded(e){const n=u.getLanguage();if(!n)return!1;const t=u.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=D(...e),t=T(n);return p.formatTranslation(Object.assign(Object.assign({},n),{translation:t}))},isDev:()=>Boolean(u.getInitialOptions().apiKey&&u.getInitialOptions().apiUrl),run:()=>(function(){if((p.getLanguageDetector()||p.getLanguageStorage())&&!u.getAvailableLanguages())throw new Error(i("availableLanguages"));if(!u.getLanguage()&&!u.getInitialOptions().defaultLanguage)throw new Error(i(["defaultLanguage","language"]))}(),u.isRunning()||(u.setRunning(!0),p.run(),h=S()),Promise.resolve(h)),stop(){u.isRunning()&&(p.stop(),u.setRunning(!1))}}));return A}const C=0,T=1,S=2;class A extends Error{constructor(e,n,t){let a;a=e===C?"Empty parameter":e===T?"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 P=0,U=1,x=2,B=3,z=4,K=new Set([x,U,P]),$="'",M=new Set(["{","}",$]),V=e=>/[0-9a-zA-Z_]/.test(e);function W(e,n){const[t,a]=function(e){let n=P,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(C),r.push(a),a=""};for(s=0;s<e.length;s++)switch(i=e[s],n){case P:i===$?(t+=i,n=U):"{"===i?(c(),n=B):(t+=i,n=P);break;case U:M.has(i)?(t=t.slice(0,-1)+i,n=x):(t+=i,n=P);break;case x:i===$?n=P:(t+=i,n=x);break;case B:"}"===i?(l(),n=P):I(i)?""!==a&&(l(),n=z):(V(i)||g(T),a+=i,n=B);break;case z:"}"==i?n=P:I(i)?n=z:g(T)}return K.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("")}e.FormatSimple=()=>(e,n)=>(n.setFinalFormatter({format:({translation:e,params:n})=>W(e,n)}),e),e.LanguageDetectorError=v,e.LanguageStorageError=h,e.RecordFetchError=p,e.TolgeeCore=()=>{const e={plugins:[],options:{}},n=Object.freeze({use:t=>(e.plugins.push(t),n),updateDefaults:t=>(e.options=E(e.options,t),n),init(n){const t=function(e){const n=F({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}(E(e.options,n));return e.plugins.forEach(t.addPlugin),t}});return n},e.createFetchFunction=u,e.getFallback=o,e.getFallbackArray=r,e.getTranslateProps=D,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=tolgee.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tolgee.umd.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.umd.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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"}
@@ -1,8 +1,8 @@
1
- import { CacheDescriptor, CacheDescriptorInternal, CacheDescriptorWithKey, NsFallback, TranslationsFlat, TranslationValue, TreeTranslationsData, BackendGetRecordInternal } from '../../types';
2
- import { EventEmitterInstance } from '../Events/EventEmitter';
1
+ import { CacheDescriptor, CacheDescriptorInternal, NsFallback, TranslationsFlat, TranslationValue, TreeTranslationsData, BackendGetRecordInternal } from '../../types';
3
2
  import { TolgeeStaticData } from '../State/initState';
4
3
  import { ValueObserverInstance } from '../ValueObserver';
5
- export declare function Cache(onCacheChange: EventEmitterInstance<CacheDescriptorWithKey>, backendGetRecord: BackendGetRecordInternal, backendGetDevRecord: BackendGetRecordInternal, withDefaultNs: (descriptor: CacheDescriptor) => CacheDescriptorInternal, isInitialLoading: () => boolean, fetchingObserver: ValueObserverInstance<boolean>, loadingObserver: ValueObserverInstance<boolean>): Readonly<{
4
+ import { EventsInstance } from '../Events/Events';
5
+ export declare function Cache(events: EventsInstance, backendGetRecord: BackendGetRecordInternal, backendGetDevRecord: BackendGetRecordInternal, withDefaultNs: (descriptor: CacheDescriptor) => CacheDescriptorInternal, isInitialLoading: () => boolean, fetchingObserver: ValueObserverInstance<boolean>, loadingObserver: ValueObserverInstance<boolean>): Readonly<{
6
6
  addStaticData(data: TolgeeStaticData | undefined): void;
7
7
  invalidate(): void;
8
8
  addRecord(descriptor: CacheDescriptorInternal, data: TreeTranslationsData): void;
@@ -1,4 +1,4 @@
1
- import { CacheDescriptor, NsFallback, TolgeeOptions, TFnType, NsType, KeyAndNamespacesInternal, TranslationDescriptor } from '../types';
1
+ import { CacheDescriptor, NsFallback, TolgeeOptions, TFnType, NsType, KeyAndNamespacesInternal } from '../types';
2
2
  type StateServiceProps = {
3
3
  options?: Partial<TolgeeOptions>;
4
4
  };
@@ -35,7 +35,7 @@ export declare function Controller({ options }: StateServiceProps): Readonly<{
35
35
  addPlugin: (tolgeeInstance: import("../TolgeeCore").TolgeeInstance, plugin: import("../types").TolgeePlugin) => void;
36
36
  getLanguageStorage: () => import("../types").LanguageStorageMiddleware | undefined;
37
37
  getInitialLanguage: () => string | Promise<string | undefined> | Promise<string | Promise<string | undefined> | undefined> | undefined;
38
- setStoredLanguage: (language: string) => void;
38
+ setStoredLanguage: (language: string) => void | Promise<void | undefined> | undefined;
39
39
  getDevBackend: () => import("../types").BackendDevMiddleware | undefined;
40
40
  getBackendRecord: import("../types").BackendGetRecordInternal;
41
41
  getBackendDevRecord: import("../types").BackendGetRecordInternal;
@@ -96,7 +96,8 @@ export declare function Controller({ options }: StateServiceProps): Readonly<{
96
96
  onRunningChange: import("./Events/EventEmitter").EventEmitterInstance<boolean>;
97
97
  onCacheChange: import("./Events/EventEmitter").EventEmitterInstance<import("../types").CacheDescriptorWithKey>;
98
98
  onUpdate: import("./Events/EventEmitterSelective").EventEmitterSelectiveInstance;
99
- onPermanentChange: import("./Events/EventEmitter").EventEmitterInstance<TranslationDescriptor>;
99
+ onPermanentChange: import("./Events/EventEmitter").EventEmitterInstance<import("../types").TranslationDescriptor>;
100
+ onError: import("./Events/EventEmitter").EventEmitterInstance<import("../types").TolgeeError>;
100
101
  setEmitterActive: (active: boolean) => void;
101
102
  on: import("../types").TolgeeOn<keyof import("../types").EventType>;
102
103
  }>;
@@ -1,4 +1,4 @@
1
- import { CacheDescriptorWithKey, TolgeeOn, TranslationDescriptor } from '../../types';
1
+ import { CacheDescriptorWithKey, TolgeeError, TolgeeOn, TranslationDescriptor } from '../../types';
2
2
  export declare function Events(getFallbackNs: () => string[], getDefaultNs: () => string): Readonly<{
3
3
  onPendingLanguageChange: import("./EventEmitter").EventEmitterInstance<string>;
4
4
  onLanguageChange: import("./EventEmitter").EventEmitterInstance<string>;
@@ -9,6 +9,7 @@ export declare function Events(getFallbackNs: () => string[], getDefaultNs: () =
9
9
  onCacheChange: import("./EventEmitter").EventEmitterInstance<CacheDescriptorWithKey>;
10
10
  onUpdate: import("./EventEmitterSelective").EventEmitterSelectiveInstance;
11
11
  onPermanentChange: import("./EventEmitter").EventEmitterInstance<TranslationDescriptor>;
12
+ onError: import("./EventEmitter").EventEmitterInstance<TolgeeError>;
12
13
  setEmitterActive(active: boolean): void;
13
14
  on: TolgeeOn<keyof import("../../types").EventType>;
14
15
  }>;
@@ -1,11 +1,12 @@
1
- import { BackendDevMiddleware, TranslatePropsInternal, HighlightInterface, LanguageDetectorMiddleware, LanguageStorageMiddleware, ChangeTranslationInterface, WrapperWrapProps, Unwrapped, KeyAndNamespacesInternal, TolgeePlugin, TolgeeInstance, TolgeeOptionsInternal, BackendGetRecordInternal, TranslationDescriptor } from '../../types';
2
- export declare function Plugins(getLanguage: () => string | undefined, getInitialOptions: () => TolgeeOptionsInternal, getAvailableLanguages: () => string[] | undefined, getFallbackNamespaces: (ns: string | undefined) => string[], getTranslationNs: (props: KeyAndNamespacesInternal) => string[], getTranslation: (props: KeyAndNamespacesInternal) => string | undefined, changeTranslation: ChangeTranslationInterface, onPermanentChange: (props: TranslationDescriptor) => void): Readonly<{
1
+ import { BackendDevMiddleware, TranslatePropsInternal, HighlightInterface, LanguageDetectorMiddleware, LanguageStorageMiddleware, ChangeTranslationInterface, WrapperWrapProps, Unwrapped, KeyAndNamespacesInternal, TolgeePlugin, TolgeeInstance, TolgeeOptionsInternal, BackendGetRecordInternal } from '../../types';
2
+ import { EventsInstance } from '../Events/Events';
3
+ export declare function Plugins(getLanguage: () => string | undefined, getInitialOptions: () => TolgeeOptionsInternal, getAvailableLanguages: () => string[] | undefined, getFallbackNamespaces: (ns: string | undefined) => string[], getTranslationNs: (props: KeyAndNamespacesInternal) => string[], getTranslation: (props: KeyAndNamespacesInternal) => string | undefined, changeTranslation: ChangeTranslationInterface, events: EventsInstance): Readonly<{
3
4
  addPlugin: (tolgeeInstance: TolgeeInstance, plugin: TolgeePlugin) => void;
4
5
  run(): void;
5
6
  stop(): void;
6
7
  getLanguageStorage(): LanguageStorageMiddleware | undefined;
7
8
  getInitialLanguage(): string | Promise<string | undefined> | Promise<string | Promise<string | undefined> | undefined> | undefined;
8
- setStoredLanguage(language: string): void;
9
+ setStoredLanguage(language: string): void | Promise<void | undefined> | undefined;
9
10
  getDevBackend(): BackendDevMiddleware | undefined;
10
11
  getBackendRecord: BackendGetRecordInternal;
11
12
  getBackendDevRecord: BackendGetRecordInternal;
package/lib/helpers.d.ts CHANGED
@@ -1,6 +1,8 @@
1
- import { FallbackGeneral, FallbackLanguageOption, FetchFn } from './types';
2
- export declare function isPromise(value: any): boolean;
1
+ import { FallbackGeneral, FallbackLanguageOption, FetchFn, TolgeeError } from './types';
2
+ import { EventEmitterInstance } from './Controller/Events/EventEmitter';
3
+ export declare function isPromise(value: unknown): value is Promise<unknown>;
3
4
  export declare function valueOrPromise<T, R>(value: T | Promise<T>, callback: (value: T) => R): R | Promise<R>;
5
+ export declare function handleRegularOrAsyncErr<T>(onError: EventEmitterInstance<TolgeeError>, createError: (e: any) => TolgeeError, callback: () => Promise<T> | T): Promise<T> | T;
4
6
  export declare function missingOptionError(option: string | string[]): string;
5
7
  export declare function isObject(item: any): boolean;
6
8
  export declare function getFallback(value: FallbackGeneral): string[] | undefined;
@@ -0,0 +1,20 @@
1
+ import { CacheDescriptorInternal } from './cache';
2
+ export declare class RecordFetchError extends Error {
3
+ cause: any;
4
+ isDev: boolean;
5
+ name: "RecordFetchError";
6
+ language: string;
7
+ namespace: string | undefined;
8
+ constructor(descriptor: CacheDescriptorInternal, cause: any, isDev?: boolean);
9
+ }
10
+ export declare class LanguageDetectorError extends Error {
11
+ cause: any;
12
+ name: "LanguageDetectorError";
13
+ constructor(message: string, cause: any);
14
+ }
15
+ export declare class LanguageStorageError extends Error {
16
+ cause: any;
17
+ name: "LanguageStorageError";
18
+ constructor(message: string, cause: any);
19
+ }
20
+ export type TolgeeError = RecordFetchError | LanguageDetectorError | LanguageStorageError;
@@ -1,5 +1,6 @@
1
1
  import type { NsFallback } from './general';
2
2
  import type { CacheDescriptorWithKey } from './cache';
3
+ import { TolgeeError } from './errors';
3
4
  export type Subscription = {
4
5
  unsubscribe: () => void;
5
6
  };
@@ -27,6 +28,7 @@ export interface EventType {
27
28
  running: boolean;
28
29
  cache: CacheDescriptorWithKey;
29
30
  update: void;
31
+ error: TolgeeError;
30
32
  permanentChange: CacheDescriptorWithKey;
31
33
  }
32
34
  export type TolgeeOn<E extends keyof EventType = keyof EventType> = {
@@ -63,6 +65,10 @@ export type TolgeeOn<E extends keyof EventType = keyof EventType> = {
63
65
  * Emitted when cache changes.
64
66
  */
65
67
  (event: 'cache', handler: Listener<CacheDescriptorWithKey>): Subscription;
68
+ /**
69
+ * Emitted on errors
70
+ */
71
+ (event: 'error', handler: Listener<TolgeeError>): Subscription;
66
72
  /**
67
73
  * Translation was changed or created via dev tools
68
74
  */
@@ -2,6 +2,7 @@ export * from './general';
2
2
  export * from './events';
3
3
  export * from './cache';
4
4
  export * from './plugin';
5
+ export * from './errors';
5
6
  export type { State, TolgeeOptions, TolgeeOptionsInternal, TolgeeStaticData, } from '../Controller/State/initState';
6
7
  export type { ObserverOptions, ObserverOptionsInternal, ModifierKey, } from '../Controller/State/observerOptions';
7
8
  export type { TolgeeChainer, TolgeeInstance } from '../TolgeeCore';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tolgee/core",
3
- "version": "5.20.3",
3
+ "version": "5.21.0",
4
4
  "description": "Library providing ability to translate messages directly in context of developed application.",
5
5
  "main": "./dist/tolgee.cjs.js",
6
6
  "module": "./dist/tolgee.esm.js",
@@ -69,5 +69,5 @@
69
69
  "access": "public"
70
70
  },
71
71
  "sideEffects": false,
72
- "gitHead": "457db47891e93a6d431cfc76c737f9fe79f81813"
72
+ "gitHead": "21c60e0f134760239dba2dc03ff68660bc863031"
73
73
  }
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  CacheDescriptor,
3
3
  CacheDescriptorInternal,
4
- CacheDescriptorWithKey,
5
4
  NsFallback,
6
5
  TranslationsFlat,
7
6
  TranslationValue,
8
7
  TreeTranslationsData,
9
8
  BackendGetRecordInternal,
9
+ RecordFetchError,
10
10
  } from '../../types';
11
- import { getFallbackArray, unique } from '../../helpers';
12
- import { EventEmitterInstance } from '../Events/EventEmitter';
11
+ import { getFallbackArray, isPromise, unique } from '../../helpers';
13
12
  import { TolgeeStaticData } from '../State/initState';
14
13
  import { ValueObserverInstance } from '../ValueObserver';
15
14
 
16
15
  import { decodeCacheKey, encodeCacheKey, flattenTranslations } from './helpers';
16
+ import { EventsInstance } from '../Events/Events';
17
17
 
18
18
  type CacheAsyncRequests = Map<
19
19
  string,
@@ -28,7 +28,7 @@ type CacheRecord = {
28
28
  type StateCache = Map<string, CacheRecord>;
29
29
 
30
30
  export function Cache(
31
- onCacheChange: EventEmitterInstance<CacheDescriptorWithKey>,
31
+ events: EventsInstance,
32
32
  backendGetRecord: BackendGetRecordInternal,
33
33
  backendGetDevRecord: BackendGetRecordInternal,
34
34
  withDefaultNs: (descriptor: CacheDescriptor) => CacheDescriptorInternal,
@@ -51,48 +51,60 @@ export function Cache(
51
51
  data: flattenTranslations(data),
52
52
  version: recordVersion,
53
53
  });
54
- onCacheChange.emit(descriptor);
54
+ events.onCacheChange.emit(descriptor);
55
55
  }
56
56
 
57
57
  /**
58
58
  * Fetches production data
59
59
  */
60
60
  function fetchProd(keyObject: CacheDescriptorInternal) {
61
- let dataPromise = undefined as
61
+ let dataOrPromise = undefined as
62
62
  | Promise<TreeTranslationsData | undefined>
63
63
  | undefined;
64
- if (!dataPromise) {
64
+ if (!dataOrPromise) {
65
65
  const staticDataValue = staticData[encodeCacheKey(keyObject)];
66
66
  if (typeof staticDataValue === 'function') {
67
- dataPromise = staticDataValue();
67
+ dataOrPromise = staticDataValue();
68
68
  }
69
69
  }
70
70
 
71
- if (!dataPromise) {
72
- dataPromise = backendGetRecord(keyObject);
71
+ if (!dataOrPromise) {
72
+ dataOrPromise = backendGetRecord(keyObject);
73
73
  }
74
74
 
75
- return dataPromise;
75
+ if (isPromise(dataOrPromise)) {
76
+ return dataOrPromise?.catch((e) => {
77
+ const error = new RecordFetchError(keyObject, e);
78
+ events.onError.emit(error);
79
+ // eslint-disable-next-line no-console
80
+ console.error(error);
81
+ throw error;
82
+ });
83
+ } else {
84
+ return dataOrPromise;
85
+ }
76
86
  }
77
87
 
78
88
  function fetchData(keyObject: CacheDescriptorInternal, isDev: boolean) {
79
- let dataPromise = undefined as
89
+ let dataOrPromise = undefined as
80
90
  | Promise<TreeTranslationsData | undefined>
81
91
  | undefined;
82
92
  if (isDev) {
83
- dataPromise = backendGetDevRecord(keyObject)?.catch(() => {
93
+ dataOrPromise = backendGetDevRecord(keyObject)?.catch((e) => {
94
+ const error = new RecordFetchError(keyObject, e, true);
95
+ events.onError.emit(error);
84
96
  // eslint-disable-next-line no-console
85
- console.warn(`Tolgee: Failed to fetch data from dev backend`);
97
+ console.warn(error);
86
98
  // fallback to prod fetch if dev fails
87
99
  return fetchProd(keyObject);
88
100
  });
89
101
  }
90
102
 
91
- if (!dataPromise) {
92
- dataPromise = fetchProd(keyObject);
103
+ if (!dataOrPromise) {
104
+ dataOrPromise = fetchProd(keyObject);
93
105
  }
94
106
 
95
- return dataPromise;
107
+ return dataOrPromise;
96
108
  }
97
109
 
98
110
  const self = Object.freeze({
@@ -175,7 +187,7 @@ export function Cache(
175
187
  ) {
176
188
  const record = cache.get(encodeCacheKey(descriptor))?.data;
177
189
  record?.set(key, value);
178
- onCacheChange.emit({ ...descriptor, key });
190
+ events.onCacheChange.emit({ ...descriptor, key });
179
191
  },
180
192
 
181
193
  isFetching(ns?: NsFallback) {