@tolgee/core 4.9.3-rc.d287ae9.0 → 4.9.4-rc.db88d02.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.
Files changed (54) hide show
  1. package/dist/tolgee.cjs.js +177 -57
  2. package/dist/tolgee.cjs.js.map +1 -1
  3. package/dist/tolgee.cjs.min.js +1 -1
  4. package/dist/tolgee.cjs.min.js.map +1 -1
  5. package/dist/{tolgee.esm.mjs → tolgee.esm.js} +178 -54
  6. package/dist/tolgee.esm.js.map +1 -0
  7. package/dist/tolgee.esm.min.mjs +1 -1
  8. package/dist/tolgee.esm.min.mjs.map +1 -1
  9. package/dist/tolgee.umd.js +177 -57
  10. package/dist/tolgee.umd.js.map +1 -1
  11. package/dist/tolgee.umd.min.js +1 -1
  12. package/dist/tolgee.umd.min.js.map +1 -1
  13. package/lib/Controller/Cache/Cache.d.ts +6 -5
  14. package/lib/Controller/Controller.d.ts +23 -62
  15. package/lib/Controller/Events/EventEmitter.d.ts +5 -5
  16. package/lib/Controller/Events/EventEmitterSelective.d.ts +7 -15
  17. package/lib/Controller/Events/Events.d.ts +10 -46
  18. package/lib/Controller/Plugins/Plugins.d.ts +4 -3
  19. package/lib/Controller/State/State.d.ts +8 -10
  20. package/lib/Controller/State/initState.d.ts +30 -9
  21. package/lib/Controller/ValueObserver.d.ts +5 -5
  22. package/lib/FormatSimple/FormatError.d.ts +7 -0
  23. package/lib/FormatSimple/FormatSimple.d.ts +3 -0
  24. package/lib/FormatSimple/formatParser.d.ts +1 -0
  25. package/lib/FormatSimple/formatter.d.ts +2 -0
  26. package/lib/Tolgee.d.ts +2 -2
  27. package/lib/index.d.ts +1 -1
  28. package/lib/types.d.ts +216 -78
  29. package/package.json +5 -4
  30. package/src/Controller/Cache/Cache.ts +13 -13
  31. package/src/Controller/Controller.ts +9 -9
  32. package/src/Controller/Events/EventEmitter.ts +5 -2
  33. package/src/Controller/Events/EventEmitterSelective.test.ts +7 -11
  34. package/src/Controller/Events/EventEmitterSelective.ts +29 -51
  35. package/src/Controller/Events/Events.ts +1 -1
  36. package/src/Controller/Plugins/Plugins.ts +10 -6
  37. package/src/Controller/State/State.ts +9 -9
  38. package/src/Controller/State/initState.ts +42 -10
  39. package/src/Controller/ValueObserver.ts +5 -2
  40. package/src/FormatSimple/FormatError.ts +26 -0
  41. package/src/FormatSimple/FormatSimple.ts +13 -0
  42. package/src/FormatSimple/formatParser.ts +133 -0
  43. package/src/FormatSimple/formatter.test.ts +190 -0
  44. package/src/FormatSimple/formatter.ts +19 -0
  45. package/src/Tolgee.ts +3 -3
  46. package/src/TranslateParams.test.ts +1 -4
  47. package/src/TranslateParams.ts +5 -4
  48. package/src/__test/cache.test.ts +22 -0
  49. package/src/__test/format.simple.test.ts +26 -0
  50. package/src/index.ts +1 -7
  51. package/src/types.ts +287 -104
  52. package/dist/tolgee.esm.mjs.map +0 -1
  53. package/lib/constants.d.ts +0 -5
  54. package/src/constants.ts +0 -7
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const e=()=>{let e=[];return Object.freeze({listen:n=>{const t=e=>{n(e)};return e.push(t),{unsubscribe:()=>{e=e.filter((e=>t!==e))}}},emit:n=>{e.forEach((e=>e({value:n})))}})};function n(e){return"string"==typeof e?[e]:Array.isArray(e)?e:void 0}function t(e){return n(e)||[]}function a(e,n){return"object"!=typeof(a=n)||Array.isArray(a)||null===a?t(n):t(null==n?void 0:n[e]);var a}function i(e){return Array.from(new Set(e))}function o(e,n){const t=e.get(n)||0;e.set(n,t+1)}function r(e,n){let t=e.get(n)||1;t-=1,t<=0?e.delete(n):e.set(n,t)}const s=e=>{const n=new Set,a=new Set,i=n=>{if(n.has(void 0)){const t=new Set(n.keys());return t.delete(void 0),e().forEach((e=>t.add(e))),t}return n};let s=[];const g=()=>{if(0===s.length)return;n.forEach((e=>{e({value:void 0})}));const e=new Set;let t=new Set;s.forEach((n=>{void 0===(null==n?void 0:n.ns)?e.add(void 0):n.ns.forEach((n=>e.add(n))),void 0===(null==n?void 0:n.key)?t=void 0:void 0!==t&&t.add(n.key)}));const o=Array.from(i(e).keys());(t||[void 0]).forEach((e=>{((e,n)=>{a.forEach((t=>{const a=i(t.namespaces),o=void 0===n||-1!==(null==n?void 0:n.findIndex((e=>a.has(e)))),r=void 0===e||t.keys.has(e)||0===t.keys.size;o&&r&&t.fn({value:void 0})}))})(e,o)})),s=[]};return Object.freeze({listenSome:e=>{const n={fn:n=>{e(n)},keys:new Map,namespaces:new Map};a.add(n);const i={unsubscribe:()=>{a.delete(n)},subscribeNs:e=>(t(e).forEach((e=>o(n.namespaces,e))),i),unsubscribeNs:e=>(t(e).forEach((e=>r(n.namespaces,e))),i),subscribeKey:e=>{const{key:a,ns:r}=e;return o(n.keys,a),t(r).forEach((e=>o(n.namespaces,e))),void 0===r&&o(n.namespaces,void 0),i},unsubscribeKey:e=>{const{key:a,ns:o}=e;return r(n.keys,a),t(o).forEach((e=>r(n.namespaces,e))),void 0===o&&r(n.namespaces,void 0),i}};return i},listen:e=>{n.add(e);return{unsubscribe:()=>{n.delete(e)}}},emit:(e,n)=>{s.push(e),n?Promise.resolve().then((()=>{g()})):g()}})},g=e=>{const n=new Map;return Object.entries(e).forEach((([e,t])=>{null!=t&&("object"!=typeof t?n.set(e,t):g(t).forEach(((t,a)=>{n.set(e+"."+a,t)})))})),n},c=e=>{const[n,t]=e.split(":");return{language:n,namespace:t||""}},u=({language:e,namespace:n})=>n?`${e}:${n}`:e,l=(e,n,a,i,o,r,s)=>{const l=new Map,d=new Map;let f={},p=0;function v(n,t,a){const i=u(n);d.set(i,{data:g(t),version:a}),e.emit(n)}function b(e,n){v(e,n,p)}function h(e,n=!1){const t=d.get(u(e));return t&&n?t.version===p:Boolean(t)}function m(e){var n;return null===(n=d.get(u(i(e))))||void 0===n?void 0:n.data}function y(e){let t;if(!t){const n=f[u(e)];"function"==typeof n&&(t=n())}return t||(t=n(e)),t||(t=Promise.resolve({})),t}return Object.freeze({addStaticData:function(e){e&&(f=Object.assign(Object.assign({},f),e),Object.entries(e).forEach((([e,n])=>{if("function"!=typeof n){const t=c(e),a=d.get(e);a&&0!==a.version||v(t,n,0)}})))},invalidate:function(){l.clear(),p+=1},addRecord:b,exists:h,getRecord:m,getTranslation:function(e,n){var t;return null===(t=d.get(u(e)))||void 0===t?void 0:t.data.get(n)},getTranslationNs:function(e,n,t){var a;for(const i of e)for(const e of n){const n=null===(a=d.get(u({language:e,namespace:i})))||void 0===a?void 0:a.data.get(t);if(null!=n)return i}return Array.from(new Set(e))},getTranslationFallback:function(e,n,t){var a;for(const i of e)for(const e of n){const n=null===(a=d.get(u({language:e,namespace:i})))||void 0===a?void 0:a.data.get(t);if(null!=n)return n}},changeTranslation:function(n,t,a){var i;const o=null===(i=d.get(u(n)))||void 0===i?void 0:i.data;null==o||o.set(t,a),e.emit(Object.assign(Object.assign({},n),{key:t}))},isFetching:function(e){if(o())return!0;if(void 0===e)return l.size>0;const n=t(e);return Boolean(Array.from(l.keys()).find((e=>n.includes(c(e).namespace))))},isLoading:function(e,n){const a=t(n);return Boolean(o()||Array.from(l.keys()).find((n=>{const t=c(n);return(!a.length||a.includes(t.namespace))&&!h({namespace:t.namespace,language:e})})))},loadRecords:async function(e,n){const t=e.map((e=>{const t=i(e),o=u(t),r=l.get(o);if(r)return{new:!1,promise:r,keyObject:t,cacheKey:o};const s=function(e,n){var t;let i;return n&&(i=null===(t=a(e))||void 0===t?void 0:t.catch((()=>(console.warn("Tolgee: Failed to fetch data from dev backend"),y(e))))),i||(i=y(e)),i}(t,n);return l.set(o,s),{new:!0,promise:s,keyObject:t,cacheKey:o}}));r.notify(),s.notify();const o=await Promise.all(t.map((e=>e.promise)));return t.forEach(((e,n)=>{const t=l.get(e.cacheKey)!==e.promise;if(e.new&&!t){l.delete(e.cacheKey);const t=o[n];t&&b(e.keyObject,t)}})),r.notify(),s.notify(),t.map((e=>m(e.keyObject)))},getAllRecords:function(){return Array.from(d.entries()).map((([e,n])=>Object.assign(Object.assign({},c(e)),{data:n.data})))}})};function d(e){return Boolean(e&&"function"==typeof e.then)}const f=(e,n)=>d(e)?Promise.resolve(e).then(n):n(e),p=e=>`Tolgee: You need to specify '${e}' option`,v=(e,n,a,i,o,r,s)=>{const g={ui:void 0,observer:void 0},c={formatters:[],finalFormatter:void 0,observer:void 0,devBackend:void 0,backends:[],ui:void 0,languageDetector:void 0,languageStorage:void 0},u=async(e,{keysAndDefaults:n})=>{var a;const i=n.map((({key:e,ns:n,defaultValue:a})=>({key:e,defaultValue:a,ns:t(o({key:e,ns:n,defaultValue:a})),translation:r({key:e,ns:n})})));null===(a=c.ui)||void 0===a||a.handleElementClick(e,i)},l=(e,n)=>{var t,a;return(null===(a=null===(t=c.observer)||void 0===t?void 0:t.highlight)||void 0===a?void 0:a.call(t,e,n))||{unhighlight(){}}},p=e=>{const n=r(e);return v(Object.assign(Object.assign({},e),{translation:n,formatEnabled:!0}))},v=({key:n,translation:t,defaultValue:a,noWrap:i,params:o,orEmpty:r,ns:s,formatEnabled:g})=>{var u;const l=t||a;let d=l||(r?"":n);c.observer&&!i&&(d=c.observer.wrap({key:n,translation:d,defaultValue:a,params:o,ns:s}));const f=e(),p=g||!(null===(u=c.observer)||void 0===u?void 0:u.outputNotFormattable);if(l&&f&&p)for(const e of c.formatters)d=e.format({translation:d,language:f,params:o});return c.finalFormatter&&l&&f&&p&&(d=c.finalFormatter.format({translation:d,language:f,params:o})),d};return Object.freeze({setFinalFormatter:e=>{c.finalFormatter=e},addFormatter:e=>{e&&c.formatters.push(e)},formatTranslation:v,setObserver:e=>{g.observer=e},hasObserver:()=>Boolean(g.observer),setUi:e=>{g.ui=(null==e?void 0:e.UI)||e},hasUi:()=>Boolean(g.ui),addBackend:e=>{e&&c.backends.push(e)},setDevBackend:e=>{c.devBackend=e},getDevBackend:()=>c.devBackend,getBackendRecord:({language:e,namespace:n})=>{for(const t of c.backends){const a=t.getRecord({language:e,namespace:n});if(d(a))return null==a?void 0:a.catch((e=>(console.error(e),{})));if(void 0!==a)return a}},getBackendDevRecord:({language:e,namespace:t})=>{var a;return null===(a=c.devBackend)||void 0===a?void 0:a.getRecord({apiKey:n().apiKey,apiUrl:n().apiUrl,language:e,namespace:t})},setLanguageDetector:e=>{c.languageDetector=e},getLanguageDetector:()=>c.languageDetector,setLanguageStorage:e=>{c.languageStorage=e},getLanguageStorage:()=>c.languageStorage,getInitialLanguage:()=>{var e;const n=i(),t=null===(e=c.languageStorage)||void 0===e?void 0:e.getLanguage();return f(t,(e=>n&&!n.includes(e)||!e?(()=>{if(!c.languageDetector)return;const e=i();return c.languageDetector.getLanguage({availableLanguages:e})})():e))},setStoredLanguage:e=>{var n;null===(n=c.languageStorage)||void 0===n||n.setLanguage(e)},run:e=>{var t,i;!c.ui&&g.ui&&(c.ui=new g.ui({apiKey:n().apiKey,apiUrl:n().apiUrl,highlight:l,changeTranslation:s})),c.observer||(c.observer=null===(t=g.observer)||void 0===t?void 0:t.call(g,{translate:p,onClick:u,options:a()})),null===(i=c.observer)||void 0===i||i.run({mouseHighlight:e})},stop:()=>{var e;c.ui=void 0,null===(e=c.observer)||void 0===e||e.stop()},retranslate:()=>{var e;null===(e=c.observer)||void 0===e||e.retranslate()},highlight:l,wrap:e=>{var n;return c.observer?null===(n=c.observer)||void 0===n?void 0:n.wrap(e):e.translation},unwrap:e=>{var n;return c.observer?null===(n=c.observer)||void 0===n?void 0:n.unwrap(e):{text:e,keys:[]}}})},b=(e,n,t)=>{let a=e;return Object.freeze({init:function(e){a=e},notify:function(){const e=n();a!==e&&t(e),a=e}})},h={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"]},m=e=>Object.assign(Object.assign({},h),e),y={defaultNs:""},O=(e,n)=>{const t=Object.assign(Object.assign(Object.assign({},y),null==n?void 0:n.initialOptions),e),a=t.apiUrl;return t.apiUrl=a?a.replace(/\/+$/,""):a,{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(e){var{ns:n,noWrap:t,orEmpty:a,params:i}=e,o=function(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}(e,["ns","noWrap","orEmpty","params"]);return{ns:n,noWrap:t,orEmpty:a,params:Object.assign(Object.assign({},o),i)}}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({},L(t)),a)),a},j=({options:n})=>{const o=(n=>{const t=e(),a=e(),i=e(),o=e(),r=e(),g=e(),c=s(n),u=e(),l=e();return g.listen((()=>c.emit())),a.listen((()=>c.emit())),u.listen((({value:e})=>{c.emit({ns:[e.namespace],key:e.key},!0)})),Object.freeze({onPendingLanguageChange:t,onLanguageChange:a,onKeyChange:i,onKeyUpdate:c,onLoadingChange:o,onFetchingChange:r,onInitialLoaded:g,onRunningChange:l,onCacheChange:u,on:(e,n)=>{switch(e){case"pendingLanguage":return t.listen(n);case"language":return a.listen(n);case"loading":return o.listen(n);case"fetching":return r.listen(n);case"initialLoad":return g.listen(n);case"running":return l.listen(n);case"cache":return u.listen(n);case"keyUpdate":return c.listen(n)}}})})((function(){return u.getFallbackNamespaces()})),r=b(!1,(()=>y.isFetching()),o.onFetchingChange.emit),g=b(!1,(()=>R()),o.onLoadingChange.emit),u=((e,n,o)=>{let r,s=O(),g=m();function u(){return s.language||s.initialOptions.language}function l(){return Object.assign(Object.assign({},s.initialOptions),r)}return Object.freeze({init:function(e){s=O(e,s)},isRunning:function(){return s.isRunning},setRunning:function(e){s.isRunning!==e&&(s.isRunning=e,o.emit(e))},isInitialLoading:function(){return s.isInitialLoading},setInitialLoading:function(e){s.isInitialLoading=e},getLanguage:u,setLanguage:function(n){s.language!==n&&(s.language=n,e.emit(n))},getPendingLanguage:function(){return s.pendingLanguage||u()},setPendingLanguage:function(e){s.pendingLanguage!==e&&(s.pendingLanguage=e,n.emit(e))},getInitialOptions:l,addActiveNs:function(e){t(e).forEach((e=>{const n=s.activeNamespaces.get(e);void 0!==n?s.activeNamespaces.set(e,n+1):s.activeNamespaces.set(e,1)}))},removeActiveNs:function(e){t(e).forEach((e=>{const n=s.activeNamespaces.get(e);void 0!==n&&n>1?s.activeNamespaces.set(e,n-1):s.activeNamespaces.delete(e)}))},getRequiredNamespaces:function(){return i([...s.initialOptions.ns||[s.initialOptions.defaultNs],...s.activeNamespaces.keys()])},getFallbackLangs:function(e){const n=e||u();return n?i([n,...a(n,s.initialOptions.fallbackLanguage)]):[]},getFallbackNamespaces:function(){const e=s.initialOptions.defaultNs;return i([..."string"==typeof e?[e]:[],...t(s.initialOptions.fallbackNs)])},getAvailableLanguages:function(){if(s.initialOptions.availableLanguages)return s.initialOptions.availableLanguages;if(s.initialOptions.staticData){const e=Object.keys(s.initialOptions.staticData).map((e=>c(e).language));return Array.from(new Set(e))}},withDefaultNs:function(e){return{namespace:void 0===e.namespace?l().defaultNs:e.namespace,language:e.language}},overrideCredentials:function(e){r=e},setObserverOptions:function(e){g=m(e)},getObserverOptions:function(){return g}})})(o.onLanguageChange,o.onPendingLanguageChange,o.onRunningChange),h=v(u.getLanguage,u.getInitialOptions,u.getObserverOptions,u.getAvailableLanguages,(function({key:e,ns:n}){const a=void 0!==n?t(n):u.getFallbackNamespaces(),i=u.getFallbackLangs();return y.getTranslationNs(a,i,e)}),N,L),y=l(o.onCacheChange,h.getBackendRecord,h.getBackendDevRecord,u.withDefaultNs,u.isInitialLoading,r,g);function L(e,n,t){const a=u.withDefaultNs(e),i=y.getTranslation(a,n);return y.changeTranslation(a,n,t),{revert:()=>{y.changeTranslation(a,n,i)}}}function j(e){u.init(e),y.addStaticData(u.getInitialOptions().staticData)}function R(e){return y.isLoading(u.getLanguage(),e)}function E(){return Boolean(u.getInitialOptions().apiKey&&u.getInitialOptions().apiUrl&&h.getDevBackend())}function w(e,n){const a=function(e,n){const a=u.getFallbackLangs(e),i=void 0!==n?t(n):u.getRequiredNamespaces(),o=[];return a.forEach((e=>{i.forEach((n=>{y.exists({language:e,namespace:n},!0)||o.push({language:e,namespace:n})}))})),o}(e,n);if(a.length)return f(T(a),(()=>{}))}function N({key:e,ns:n}){const a=void 0!==n?t(n):u.getFallbackNamespaces(),i=u.getFallbackLangs();return y.getTranslationFallback(a,i,e)}function A(){const e=f(function(){if(u.getLanguage())return;if(!u.getInitialOptions().defaultLanguage)throw new Error(p("defaultLanguage"));const e=h.getInitialLanguage();return f(e,(e=>{const n=e||u.getInitialOptions().defaultLanguage;n&&u.setLanguage(n)}))}(),(()=>w()));if(d(e))return u.setInitialLoading(!0),r.notify(),g.notify(),Promise.resolve(e).then((()=>{u.setInitialLoading(!1),r.notify(),g.notify(),o.onInitialLoaded.emit()}));o.onInitialLoaded.emit()}function T(e){return y.loadRecords(e,E())}n&&j(n),o.onKeyUpdate.listen((()=>{u.isRunning()&&h.retranslate()}));return Object.freeze(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},o),u),h),y),{init:j,changeLanguage:async function(e){u.getPendingLanguage()===e&&u.getLanguage()===e||(u.setPendingLanguage(e),u.isRunning()&&await w(e),e===u.getPendingLanguage()&&(u.setLanguage(e),h.setStoredLanguage(e)))},getTranslation:N,changeTranslation:L,addActiveNs:async function(e,n){n||u.addActiveNs(e),u.isRunning()&&await w(void 0,e)},loadRequiredRecords:w,loadRecords:T,loadRecord:async function(e){return(await T([e]))[0]},isLoading:R,isLoaded:function(e){const n=u.getLanguage();if(!n)return!1;const a=u.getFallbackLangs(n),i=void 0!==e?t(e):u.getRequiredNamespaces(),o=[];return a.forEach((e=>{i.forEach((n=>{y.exists({language:e,namespace:n})||o.push({language:e,namespace:n})}))})),0===o.length},t:(...e)=>{const n=k(...e),t=N(n);return h.formatTranslation(Object.assign(Object.assign({},n),{translation:t}))},isDev:E,run:function(){let e;return(()=>{const e=h.getLanguageDetector();if(e&&!u.getAvailableLanguages())throw new Error(p("availableLanguages"));if(!u.getLanguage()&&!u.getInitialOptions().defaultLanguage)throw e?new Error(p("defaultLanguage")):new Error(p("language"))})(),u.isRunning()||(E()&&y.invalidate(),u.setRunning(!0),h.run(E()),e=A()),Promise.resolve(e)},stop:function(){u.isRunning()&&(h.stop(),u.setRunning(!1))}}))};exports.DEVTOOLS_ID="__tolgee_dev_tools",exports.RESTRICTED_ASCENDANT_ATTRIBUTE="data-tolgee-restricted",exports.TOLGEE_ATTRIBUTE_NAME="_tolgee",exports.TOLGEE_HIGHLIGHTER_CLASS="_tolgee-highlighter",exports.TOLGEE_WRAPPED_ONLY_DATA_ATTRIBUTE="data-tolgee-key-only",exports.Tolgee=e=>{const n=j({options:e}),t=Object.freeze({setFinalFormatter:n.setFinalFormatter,addFormatter:n.addFormatter,setObserver:n.setObserver,hasObserver:n.hasObserver,setUi:n.setUi,hasUi:n.hasUi,setDevBackend:n.setDevBackend,addBackend:n.addBackend,setLanguageDetector:n.setLanguageDetector,setLanguageStorage:n.setLanguageStorage,overrideCredentials:n.overrideCredentials}),a=e=>{const t=n.isRunning();t&&n.stop(),e(),t&&n.run()},i=Object.freeze({on:n.on,onKeyUpdate:n.onKeyUpdate.listenSome,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,setObserverOptions:e=>(n.setObserverOptions(e),i),use:e=>(e&&a((()=>e(i,t))),i),init:e=>(a((()=>n.init(e))),i)});return i},exports.getFallback=n,exports.getFallbackArray=t,exports.getTranslateParams=k;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const e=()=>{let e=[];return Object.freeze({listen:n=>{const t=e=>{n(e)};return e.push(t),{unsubscribe:()=>{e=e.filter((e=>t!==e))}}},emit:n=>{e.forEach((e=>e({value:n})))}})};function n(e){return"string"==typeof e?[e]:Array.isArray(e)?e:void 0}function t(e){return n(e)||[]}function a(e,n){return"object"!=typeof(a=n)||Array.isArray(a)||null===a?t(n):t(null==n?void 0:n[e]);var a}function i(e){return Array.from(new Set(e))}const r=e=>{const n=new Set,a=new Set,i=n=>{if(n.has(void 0)){const t=new Set(n.keys());return t.delete(void 0),e().forEach((e=>t.add(e))),t}return n};let r=[];const o=()=>{if(0===r.length)return;n.forEach((e=>{e({value:void 0})}));const e=new Set;let t=new Set;r.forEach((n=>{void 0===(null==n?void 0:n.ns)?e.add(void 0):n.ns.forEach((n=>e.add(n))),void 0===(null==n?void 0:n.key)?t=void 0:void 0!==t&&t.add(n.key)}));const o=Array.from(i(e).keys());(t||[void 0]).forEach((e=>{((e,n)=>{a.forEach((t=>{const a=i(t.namespaces),r=void 0===n||-1!==(null==n?void 0:n.findIndex((e=>a.has(e)))),o=void 0===e||t.keys.has(e)||0===t.keys.size;r&&o&&t.fn({value:void 0})}))})(e,o)})),r=[]};return Object.freeze({listenSome:e=>{const n={fn:n=>{e(n)},keys:new Set,namespaces:new Set};a.add(n);const i={unsubscribe:()=>{a.delete(n)},subscribeNs:e=>(t(e).forEach((e=>n.namespaces.add(e))),void 0===e&&n.namespaces.add(void 0),i),subscribeKey:e=>{const{key:a,ns:r}=e;return n.keys.add(a),t(r).forEach((e=>n.namespaces.add(e))),void 0===r&&n.namespaces.add(void 0),i}};return i},listen:e=>{n.add(e);return{unsubscribe:()=>{n.delete(e)}}},emit:(e,n)=>{r.push(e),n?setTimeout(o,0):o()}})},o=e=>{const n=new Map;return Object.entries(e).forEach((([e,t])=>{null!=t&&("object"!=typeof t?n.set(e,t):o(t).forEach(((t,a)=>{n.set(e+"."+a,t)})))})),n},s=e=>{const[n,t]=e.split(":");return{language:n,namespace:t||""}},c=({language:e,namespace:n})=>n?`${e}:${n}`:e,g=(e,n,a,i,r,g,u)=>{const l=new Map,d=new Map;let f={},p=0;function v(n,t,a){const i=c(n);d.set(i,{data:o(t),version:a}),e.emit(n)}function h(e,n){v(e,n,p)}function b(e,n=!1){const t=d.get(c(e));return t&&n?t.version===p:Boolean(t)}function m(e){var n;return null===(n=d.get(c(i(e))))||void 0===n?void 0:n.data}function y(e){let t;if(!t){const n=f[c(e)];"function"==typeof n&&(t=n())}return t||(t=n(e)),t}return Object.freeze({addStaticData:function(e){e&&(f=Object.assign(Object.assign({},f),e),Object.entries(e).forEach((([e,n])=>{if("function"!=typeof n){const t=s(e),a=d.get(e);a&&0!==a.version||v(t,n,0)}})))},invalidate:function(){l.clear(),p+=1},addRecord:h,exists:b,getRecord:m,getTranslation:function(e,n){var t;return null===(t=d.get(c(e)))||void 0===t?void 0:t.data.get(n)},getTranslationNs:function(e,n,t){var a;for(const i of e)for(const e of n){const n=null===(a=d.get(c({language:e,namespace:i})))||void 0===a?void 0:a.data.get(t);if(null!=n)return i}return Array.from(new Set(e))},getTranslationFallback:function(e,n,t){var a;for(const i of e)for(const e of n){const n=null===(a=d.get(c({language:e,namespace:i})))||void 0===a?void 0:a.data.get(t);if(null!=n)return n}},changeTranslation:function(n,t,a){var i;const r=null===(i=d.get(c(n)))||void 0===i?void 0:i.data;null==r||r.set(t,a),e.emit(Object.assign(Object.assign({},n),{key:t}))},isFetching:function(e){if(r())return!0;if(void 0===e)return l.size>0;const n=t(e);return Boolean(Array.from(l.keys()).find((e=>n.includes(s(e).namespace))))},isLoading:function(e,n){const a=t(n);return Boolean(r()||Array.from(l.keys()).find((n=>{const t=s(n);return(!a.length||a.includes(t.namespace))&&!b({namespace:t.namespace,language:e})})))},loadRecords:async function(e,n){const t=e.map((e=>{const t=i(e),r=c(t),o=l.get(r);if(o)return{new:!1,promise:o,keyObject:t,cacheKey:r};const s=function(e,n){var t;let i;return n&&(i=null===(t=a(e))||void 0===t?void 0:t.catch((()=>(console.warn("Tolgee: Failed to fetch data from dev backend"),y(e))))),i||(i=y(e)),i}(t,n)||Promise.resolve(void 0);return l.set(r,s),{new:!0,promise:s,keyObject:t,cacheKey:r}}));g.notify(),u.notify();const r=await Promise.all(t.map((e=>e.promise)));return t.forEach(((e,n)=>{const t=l.get(e.cacheKey)!==e.promise;if(e.new&&!t){l.delete(e.cacheKey);const t=r[n];t?h(e.keyObject,t):m(e.keyObject)||h(e.keyObject,{})}})),g.notify(),u.notify(),t.map((e=>m(e.keyObject)))},getAllRecords:function(){return Array.from(d.entries()).map((([e,n])=>Object.assign(Object.assign({},s(e)),{data:n.data})))}})};function u(e){return Boolean(e&&"function"==typeof e.then)}const l=(e,n)=>u(e)?Promise.resolve(e).then(n):n(e),d=e=>`Tolgee: You need to specify '${e}' option`,f=(e,n,a,i,r,o,s)=>{const c={ui:void 0,observer:void 0},g={formatters:[],finalFormatter:void 0,observer:void 0,devBackend:void 0,backends:[],ui:void 0,languageDetector:void 0,languageStorage:void 0},d=async(e,{keysAndDefaults:n})=>{var a;const i=n.map((({key:e,ns:n,defaultValue:a})=>({key:e,defaultValue:a,ns:t(r({key:e,ns:n,defaultValue:a})),translation:o({key:e,ns:n})})));null===(a=g.ui)||void 0===a||a.handleElementClick(e,i)},f=(e,n)=>{var t,a;return(null===(a=null===(t=g.observer)||void 0===t?void 0:t.highlight)||void 0===a?void 0:a.call(t,e,n))||{unhighlight(){}}},p=e=>{const n=o(e);return v(Object.assign(Object.assign({},e),{translation:n,formatEnabled:!0}))},v=({key:n,translation:t,defaultValue:a,noWrap:i,params:r,orEmpty:o,ns:s,formatEnabled:c})=>{var u;const l=t||a;let d=l||(o?"":n);g.observer&&!i&&(d=g.observer.wrap({key:n,translation:d,defaultValue:a,params:r,ns:s}));const f=e(),p=c||!(null===(u=g.observer)||void 0===u?void 0:u.outputNotFormattable);if(l&&f&&p)for(const e of g.formatters)d=e.format({translation:d,language:f,params:r});return g.finalFormatter&&l&&f&&p&&(d=g.finalFormatter.format({translation:d,language:f,params:r})),d};return Object.freeze({setFinalFormatter:e=>{g.finalFormatter=e},addFormatter:e=>{e&&g.formatters.push(e)},formatTranslation:v,setObserver:e=>{c.observer=e},hasObserver:()=>Boolean(c.observer),setUi:e=>{c.ui=(null==e?void 0:e.UI)||e},hasUi:()=>Boolean(c.ui),addBackend:e=>{e&&g.backends.push(e)},setDevBackend:e=>{g.devBackend=e},getDevBackend:()=>g.devBackend,getBackendRecord:({language:e,namespace:n})=>{for(const t of g.backends){const a=t.getRecord({language:e,namespace:n});if(u(a))return null==a?void 0:a.catch((e=>(console.error(e),{})));if(void 0!==a)return a}},getBackendDevRecord:({language:e,namespace:t})=>{var a;const{apiKey:i,apiUrl:r,projectId:o}=n();return null===(a=g.devBackend)||void 0===a?void 0:a.getRecord({apiKey:i,apiUrl:r,projectId:o,language:e,namespace:t})},setLanguageDetector:e=>{g.languageDetector=e},getLanguageDetector:()=>g.languageDetector,setLanguageStorage:e=>{g.languageStorage=e},getLanguageStorage:()=>g.languageStorage,getInitialLanguage:()=>{var e;const n=i(),t=null===(e=g.languageStorage)||void 0===e?void 0:e.getLanguage();return l(t,(e=>n&&!n.includes(e)||!e?(()=>{if(!g.languageDetector)return;const e=i();return g.languageDetector.getLanguage({availableLanguages:e})})():e))},setStoredLanguage:e=>{var n;null===(n=g.languageStorage)||void 0===n||n.setLanguage(e)},run:e=>{var t,i;if(!g.ui&&c.ui){const{apiKey:e,apiUrl:t,projectId:a}=n();g.ui=new c.ui({apiKey:e,apiUrl:t,projectId:a,highlight:f,changeTranslation:s})}g.observer||(g.observer=null===(t=c.observer)||void 0===t?void 0:t.call(c,{translate:p,onClick:d,options:a()})),null===(i=g.observer)||void 0===i||i.run({mouseHighlight:e})},stop:()=>{var e;g.ui=void 0,null===(e=g.observer)||void 0===e||e.stop()},retranslate:()=>{var e;null===(e=g.observer)||void 0===e||e.retranslate()},highlight:f,wrap:e=>{var n;return g.observer?null===(n=g.observer)||void 0===n?void 0:n.wrap(e):e.translation},unwrap:e=>{var n;return g.observer?null===(n=g.observer)||void 0===n?void 0:n.unwrap(e):{text:e,keys:[]}}})},p=(e,n,t)=>{let a=e;return Object.freeze({init:function(e){a=e},notify:function(){const e=n();a!==e&&t(e),a=e}})},v={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"]},h=e=>Object.assign(Object.assign({},v),e),b={defaultNs:""},m=(e,n)=>{const t=Object.assign(Object.assign(Object.assign({},b),null==n?void 0:n.initialOptions),e),a=t.apiUrl;return t.apiUrl=a?a.replace(/\/+$/,""):a,{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 y(e){var{ns:n,noWrap:t,orEmpty:a,params:i}=e,r=function(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}(e,["ns","noWrap","orEmpty","params"]);const o={ns:n,noWrap:t,orEmpty:a};return Object.assign(Object.assign({},o),{params:Object.assign({},r)})}const O=(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({},y(t)),a)),a},L=({options:n})=>{const o=(n=>{const t=e(),a=e(),i=e(),o=e(),s=e(),c=e(),g=r(n),u=e(),l=e();return c.listen((()=>g.emit())),a.listen((()=>g.emit())),u.listen((({value:e})=>{g.emit({ns:[e.namespace],key:e.key},!0)})),Object.freeze({onPendingLanguageChange:t,onLanguageChange:a,onKeyChange:i,onKeyUpdate:g,onLoadingChange:o,onFetchingChange:s,onInitialLoaded:c,onRunningChange:l,onCacheChange:u,on:(e,n)=>{switch(e){case"pendingLanguage":return t.listen(n);case"language":return a.listen(n);case"loading":return o.listen(n);case"fetching":return s.listen(n);case"initialLoad":return c.listen(n);case"running":return l.listen(n);case"cache":return u.listen(n);case"keyUpdate":return g.listen(n)}}})})((function(){return b.getFallbackNamespaces()})),c=p(!1,(()=>L.isFetching()),o.onFetchingChange.emit),v=p(!1,(()=>w()),o.onLoadingChange.emit),b=((e,n,r)=>{let o,c=m(),g=h();function u(){return c.language||c.initialOptions.language}function l(){return Object.assign(Object.assign({},c.initialOptions),o)}return Object.freeze({init:function(e){c=m(e,c)},isRunning:function(){return c.isRunning},setRunning:function(e){c.isRunning!==e&&(c.isRunning=e,r.emit(e))},isInitialLoading:function(){return c.isInitialLoading},setInitialLoading:function(e){c.isInitialLoading=e},getLanguage:u,setLanguage:function(n){c.language!==n&&(c.language=n,e.emit(n))},getPendingLanguage:function(){return c.pendingLanguage||u()},setPendingLanguage:function(e){c.pendingLanguage!==e&&(c.pendingLanguage=e,n.emit(e))},getInitialOptions:l,addActiveNs:function(e){t(e).forEach((e=>{const n=c.activeNamespaces.get(e);void 0!==n?c.activeNamespaces.set(e,n+1):c.activeNamespaces.set(e,1)}))},removeActiveNs:function(e){t(e).forEach((e=>{const n=c.activeNamespaces.get(e);void 0!==n&&n>1?c.activeNamespaces.set(e,n-1):c.activeNamespaces.delete(e)}))},getRequiredNamespaces:function(){return i([...c.initialOptions.ns||[c.initialOptions.defaultNs],...c.activeNamespaces.keys()])},getFallbackLangs:function(e){const n=e||u();return n?i([n,...a(n,c.initialOptions.fallbackLanguage)]):[]},getFallbackNamespaces:function(){const e=c.initialOptions.defaultNs;return i([..."string"==typeof e?[e]:[],...t(c.initialOptions.fallbackNs)])},getAvailableLanguages:function(){if(c.initialOptions.availableLanguages)return c.initialOptions.availableLanguages;if(c.initialOptions.staticData){const e=Object.keys(c.initialOptions.staticData).map((e=>s(e).language));return Array.from(new Set(e))}},withDefaultNs:function(e){return{namespace:void 0===e.namespace?l().defaultNs:e.namespace,language:e.language}},overrideCredentials:function(e){o=e},setObserverOptions:function(e){g=h(e)},getObserverOptions:function(){return g}})})(o.onLanguageChange,o.onPendingLanguageChange,o.onRunningChange),y=f(b.getLanguage,b.getInitialOptions,b.getObserverOptions,b.getAvailableLanguages,(function({key:e,ns:n}){const a=void 0!==n?t(n):b.getFallbackNamespaces(),i=b.getFallbackLangs();return L.getTranslationNs(a,i,e)}),N,k),L=g(o.onCacheChange,y.getBackendRecord,y.getBackendDevRecord,b.withDefaultNs,b.isInitialLoading,c,v);function k(e,n,t){const a=b.withDefaultNs(e),i=L.getTranslation(a,n);return L.changeTranslation(a,n,t),{revert:()=>{L.changeTranslation(a,n,i)}}}function j(e){b.init(e),L.addStaticData(b.getInitialOptions().staticData)}function w(e){return L.isLoading(b.getLanguage(),e)}function R(){return Boolean(b.getInitialOptions().apiKey&&b.getInitialOptions().apiUrl&&y.getDevBackend())}function F(e,n){const a=function(e,n){const a=b.getFallbackLangs(e),i=void 0!==n?t(n):b.getRequiredNamespaces(),r=[];return a.forEach((e=>{i.forEach((n=>{L.exists({language:e,namespace:n},!0)||r.push({language:e,namespace:n})}))})),r}(e,n);if(a.length)return l(S(a),(()=>{}))}function N({key:e,ns:n}){const a=void 0!==n?t(n):b.getFallbackNamespaces(),i=b.getFallbackLangs();return L.getTranslationFallback(a,i,e)}function E(){const e=l(function(){if(b.getLanguage())return;if(!b.getInitialOptions().defaultLanguage)throw new Error(d("defaultLanguage"));const e=y.getInitialLanguage();return l(e,(e=>{const n=e||b.getInitialOptions().defaultLanguage;n&&b.setLanguage(n)}))}(),(()=>F()));if(u(e))return b.setInitialLoading(!0),c.notify(),v.notify(),Promise.resolve(e).then((()=>{b.setInitialLoading(!1),c.notify(),v.notify(),o.onInitialLoaded.emit()}));o.onInitialLoaded.emit()}function S(e){return L.loadRecords(e,R())}n&&j(n),o.onKeyUpdate.listen((()=>{b.isRunning()&&y.retranslate()}));return Object.freeze(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},o),b),y),L),{init:j,changeLanguage:async function(e){b.getPendingLanguage()===e&&b.getLanguage()===e||(b.setPendingLanguage(e),b.isRunning()&&await F(e),e===b.getPendingLanguage()&&(b.setLanguage(e),y.setStoredLanguage(e)))},getTranslation:N,changeTranslation:k,addActiveNs:async function(e,n){n||b.addActiveNs(e),b.isRunning()&&await F(void 0,e)},loadRequiredRecords:F,loadRecords:S,loadRecord:async function(e){return(await S([e]))[0]},isLoading:w,isLoaded:function(e){const n=b.getLanguage();if(!n)return!1;const a=b.getFallbackLangs(n),i=void 0!==e?t(e):b.getRequiredNamespaces(),r=[];return a.forEach((e=>{i.forEach((n=>{L.exists({language:e,namespace:n})||r.push({language:e,namespace:n})}))})),0===r.length},t:(...e)=>{const n=O(...e),t=N(n);return y.formatTranslation(Object.assign(Object.assign({},n),{translation:t}))},isDev:R,run:function(){let e;return(()=>{const e=y.getLanguageDetector();if(e&&!b.getAvailableLanguages())throw new Error(d("availableLanguages"));if(!b.getLanguage()&&!b.getInitialOptions().defaultLanguage)throw e?new Error(d("defaultLanguage")):new Error(d("language"))})(),b.isRunning()||(R()&&L.invalidate(),b.setRunning(!0),y.run(R()),e=E()),Promise.resolve(e)},stop:function(){b.isRunning()&&(y.stop(),b.setRunning(!1))}}))};class k extends Error{constructor(e,n,t){let a;a=0===e?"Empty parameter":1===e?"Unexpected character":"Unexpected end",super(`Tolgee parser: ${a} at ${n} in "${t}"`),this.code=e,this.index=n}}function j(e){return/\s/.test(e)}const w=new Set([2,1,0]),R=new Set(["{","}","'"]);function F(e,n){const[t,a]=function(e){let n=0,t="",a="",i="";const r=[],o=[];let s=0;function c(n){throw new k(n,s,e)}const g=()=>{r.push(t),t=""},u=()=>{""===a&&c(0),o.push(a),a=""};for(s=0;s<e.length;s++)switch(i=e[s],n){case 0:"'"===i?(t+=i,n=1):"{"===i?(g(),n=3):(t+=i,n=0);break;case 1:R.has(i)?(t=t.slice(0,-1)+i,n=2):(t+=i,n=0);break;case 2:"'"===i?n=0:(t+=i,n=2);break;case 3:"}"===i?(u(),n=0):j(i)?""!==a&&(u(),n=4):(/[0-9a-zA-Z_]/.test(i)||c(1),a+=i,n=3);break;case 4:"}"==i?n=0:j(i)?n=4:c(1)}return w.has(n)||c(2),g(),[r,o]}(e),i=[t[0]];for(let r=1;r<t.length;r++){const o=null==n?void 0:n[a[r-1]];if(void 0===o)throw new Error(`Missing parameter "${a[r-1]}" in "${e}"`);i.push(String(o)),i.push(t[r])}return i.join("")}exports.FormatSimple=()=>(e,n)=>(n.setFinalFormatter({format:({translation:e,params:n})=>F(e,n)}),e),exports.Tolgee=e=>{const n=L({options:e}),t=Object.freeze({setFinalFormatter:n.setFinalFormatter,addFormatter:n.addFormatter,setObserver:n.setObserver,hasObserver:n.hasObserver,setUi:n.setUi,hasUi:n.hasUi,setDevBackend:n.setDevBackend,addBackend:n.addBackend,setLanguageDetector:n.setLanguageDetector,setLanguageStorage:n.setLanguageStorage,overrideCredentials:n.overrideCredentials}),a=e=>{const t=n.isRunning();t&&n.stop(),e(),t&&n.run()},i=Object.freeze({on:n.on,onKeyUpdate:n.onKeyUpdate.listenSome,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,setObserverOptions:e=>(n.setObserverOptions(e),i),use:e=>(e&&a((()=>e(i,t))),i),init:e=>(a((()=>n.init(e))),i)});return i},exports.getFallback=n,exports.getFallbackArray=t,exports.getTranslateParams=O;
2
2
  //# sourceMappingURL=tolgee.cjs.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tolgee.cjs.min.js","sources":["../src/Controller/Events/EventEmitter.ts","../src/Controller/State/helpers.ts","../src/Controller/Events/EventEmitterSelective.ts","../src/Controller/Cache/helpers.ts","../src/Controller/Cache/Cache.ts","../src/helpers.ts","../src/Controller/Plugins/Plugins.ts","../src/Controller/ValueObserver.ts","../src/Controller/State/initObserverOptions.ts","../src/Controller/State/initState.ts","../src/TranslateParams.ts","../../../node_modules/tslib/tslib.es6.js","../src/Controller/Controller.ts","../src/Controller/Events/Events.ts","../src/Controller/State/State.ts","../src/constants.ts","../src/Tolgee.ts"],"sourcesContent":[null,null,null,null,null,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],"names":["EventEmitter","handlers","Object","freeze","listen","handler","handlerWrapper","e","push","unsubscribe","filter","i","emit","data","forEach","value","getFallback","Array","isArray","getFallbackArray","getFallbackFromStruct","language","fallbackLanguage","item","unique","arr","from","Set","incrementInMap","map","currNum","get","set","decrementInMap","delete","EventEmitterSelective","getFallbackNamespaces","listeners","partialListeners","namespacesWithFallbacks","namespaces","has","undefined","result","keys","ns","add","queue","solveQueue","length","descriptor","key","namespacesArray","handlerNamespaces","nsMatches","findIndex","keyMatches","size","fn","callHandlers","listenSome","Map","subscribeNs","val","unsubscribeNs","subscribeKey","unsubscribeKey","delayed","Promise","resolve","then","flattenTranslations","entries","flatValue","flatKey","decodeCacheKey","firstPart","secondPart","split","namespace","encodeCacheKey","Cache","onCacheChange","backendGetRecord","backendGetDevRecord","withDefaultNs","isInitialLoading","fetchingObserver","loadingObserver","asyncRequests","cache","staticData","version","addRecordInternal","recordVersion","cacheKey","addRecord","exists","strict","record","Boolean","getRecord","_a","fetchNormal","keyObject","dataPromise","staticDataValue","addStaticData","assign","existing","invalidate","clear","getTranslation","getTranslationNs","languages","getTranslationFallback","changeTranslation","isFetching","find","includes","isLoading","loadRecords","async","descriptors","isDev","withPromises","existingPromise","new","promise","catch","console","warn","fetchData","notify","results","all","promiseChanged","getAllRecords","entry","isPromise","valueOrPromise","callback","missingOptionError","option","PluginService","getLanguage","getInitialOptions","getObserverOptions","getAvailableLanguages","plugins","ui","observer","instances","formatters","finalFormatter","devBackend","backends","languageDetector","languageStorage","onClick","event","keysAndDefaults","withNs","defaultValue","translation","handleElementClick","highlight","_b","call","unhighlight","translate","props","formatTranslation","formatEnabled","noWrap","params","orEmpty","formattableTranslation","wrap","isFormatEnabled","outputNotFormattable","formatter","format","setFinalFormatter","addFormatter","setObserver","hasObserver","setUi","UI","hasUi","addBackend","backend","setDevBackend","getDevBackend","getBackendRecord","error","getBackendDevRecord","apiKey","apiUrl","setLanguageDetector","detector","getLanguageDetector","setLanguageStorage","storage","getLanguageStorage","getInitialLanguage","availableLanguages","languageOrPromise","detectLanguage","setStoredLanguage","setLanguage","run","options","mouseHighlight","stop","retranslate","unwrap","text","ValueObserver","initialValue","valueGetter","previousValue","init","defaultValues","tagAttributes","textarea","input","img","restrictedElements","highlightKeys","highlightColor","highlightWidth","inputPrefix","inputSuffix","passToParent","initObserverOptions","defaultNs","initState","previousState","initialOptions","replace","activeNamespaces","pendingLanguage","isRunning","parseCombinedOptions","rest","s","t","p","prototype","hasOwnProperty","indexOf","getOwnPropertySymbols","propertyIsEnumerable","__rest","getTranslateParams","keyOrProps","Controller","events","onPendingLanguageChange","onLanguageChange","onKeyChange","onLoadingChange","onFetchingChange","onInitialLoaded","onKeyUpdate","onRunningChange","on","Events","state","devCredentials","observerOptions","setRunning","setInitialLoading","getPendingLanguage","setPendingLanguage","addActiveNs","removeActiveNs","getRequiredNamespaces","getFallbackLangs","lang","fallbackNs","languagesFromStaticData","overrideCredentials","credentials","setObserverOptions","State","pluginService","revert","loadRequiredRecords","getRequiredRecords","loadInitial","defaultLanguage","Error","initializeLanguage","changeLanguage","forget","loadRecord","isLoaded","args","checkCorrectConfiguration","controller","pluginTools","withRestart","wasRunning","tolgee","use","plugin"],"mappings":"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"}
1
+ {"version":3,"file":"tolgee.cjs.min.js","sources":["../src/Controller/Events/EventEmitter.ts","../src/Controller/State/helpers.ts","../src/Controller/Events/EventEmitterSelective.ts","../src/Controller/Cache/helpers.ts","../src/Controller/Cache/Cache.ts","../src/helpers.ts","../src/Controller/Plugins/Plugins.ts","../src/Controller/ValueObserver.ts","../src/Controller/State/initObserverOptions.ts","../src/Controller/State/initState.ts","../src/TranslateParams.ts","../../../node_modules/tslib/tslib.es6.js","../src/Controller/Controller.ts","../src/Controller/Events/Events.ts","../src/Controller/State/State.ts","../src/FormatSimple/FormatError.ts","../src/FormatSimple/formatParser.ts","../src/FormatSimple/formatter.ts","../src/FormatSimple/FormatSimple.ts","../src/Tolgee.ts"],"sourcesContent":[null,null,null,null,null,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],"names":["EventEmitter","handlers","Object","freeze","listen","handler","handlerWrapper","e","push","unsubscribe","filter","i","emit","data","forEach","value","getFallback","Array","isArray","getFallbackArray","getFallbackFromStruct","language","fallbackLanguage","item","unique","arr","from","Set","EventEmitterSelective","getFallbackNamespaces","listeners","partialListeners","namespacesWithFallbacks","namespaces","has","undefined","result","keys","delete","ns","add","queue","solveQueue","length","descriptor","key","namespacesArray","handlerNamespaces","nsMatches","findIndex","keyMatches","size","fn","callHandlers","listenSome","subscribeNs","val","subscribeKey","delayed","setTimeout","flattenTranslations","Map","entries","set","flatValue","flatKey","decodeCacheKey","firstPart","secondPart","split","namespace","encodeCacheKey","Cache","onCacheChange","backendGetRecord","backendGetDevRecord","withDefaultNs","isInitialLoading","fetchingObserver","loadingObserver","asyncRequests","cache","staticData","version","addRecordInternal","recordVersion","cacheKey","addRecord","exists","strict","record","get","Boolean","getRecord","_a","fetchNormal","keyObject","dataPromise","staticDataValue","addStaticData","assign","existing","invalidate","clear","getTranslation","getTranslationNs","languages","getTranslationFallback","changeTranslation","isFetching","find","includes","isLoading","loadRecords","async","descriptors","isDev","withPromises","map","existingPromise","new","promise","catch","console","warn","fetchData","Promise","resolve","notify","results","all","promiseChanged","getAllRecords","entry","isPromise","then","valueOrPromise","callback","missingOptionError","option","PluginService","getLanguage","getInitialOptions","getObserverOptions","getAvailableLanguages","plugins","ui","observer","instances","formatters","finalFormatter","devBackend","backends","languageDetector","languageStorage","onClick","event","keysAndDefaults","withNs","defaultValue","translation","handleElementClick","highlight","_b","call","unhighlight","translate","props","formatTranslation","formatEnabled","noWrap","params","orEmpty","formattableTranslation","wrap","isFormatEnabled","outputNotFormattable","formatter","format","setFinalFormatter","addFormatter","setObserver","hasObserver","setUi","UI","hasUi","addBackend","backend","setDevBackend","getDevBackend","getBackendRecord","error","getBackendDevRecord","apiKey","apiUrl","projectId","setLanguageDetector","detector","getLanguageDetector","setLanguageStorage","storage","getLanguageStorage","getInitialLanguage","availableLanguages","languageOrPromise","detectLanguage","setStoredLanguage","setLanguage","run","options","mouseHighlight","stop","retranslate","unwrap","text","ValueObserver","initialValue","valueGetter","previousValue","init","defaultValues","tagAttributes","textarea","input","img","restrictedElements","highlightKeys","highlightColor","highlightWidth","inputPrefix","inputSuffix","passToParent","initObserverOptions","defaultNs","initState","previousState","initialOptions","replace","activeNamespaces","pendingLanguage","isRunning","parseCombinedOptions","rest","s","t","p","prototype","hasOwnProperty","indexOf","getOwnPropertySymbols","propertyIsEnumerable","__rest","getTranslateParams","keyOrProps","Controller","events","onPendingLanguageChange","onLanguageChange","onKeyChange","onLoadingChange","onFetchingChange","onInitialLoaded","onKeyUpdate","onRunningChange","on","Events","state","devCredentials","observerOptions","setRunning","setInitialLoading","getPendingLanguage","setPendingLanguage","addActiveNs","removeActiveNs","getRequiredNamespaces","getFallbackLangs","lang","fallbackNs","languagesFromStaticData","overrideCredentials","credentials","setObserverOptions","State","pluginService","revert","loadRequiredRecords","getRequiredRecords","loadInitial","defaultLanguage","Error","initializeLanguage","changeLanguage","forget","loadRecord","isLoaded","args","checkCorrectConfiguration","FormatError","constructor","code","index","super","this","isWhitespace","ch","test","END_STATES","ESCAPABLE","texts","pars","param","parsingError","addText","addParam","slice","formatParser","parameter","String","join","tolgee","tools","controller","pluginTools","withRestart","wasRunning","use","plugin"],"mappings":"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"}
@@ -44,20 +44,6 @@ function unique(arr) {
44
44
  return Array.from(new Set(arr));
45
45
  }
46
46
 
47
- function incrementInMap(map, value) {
48
- const currNum = map.get(value) || 0;
49
- map.set(value, currNum + 1);
50
- }
51
- function decrementInMap(map, value) {
52
- let currNum = map.get(value) || 1;
53
- currNum -= 1;
54
- if (currNum <= 0) {
55
- map.delete(value);
56
- }
57
- else {
58
- map.set(value, currNum);
59
- }
60
- }
61
47
  const EventEmitterSelective = (getFallbackNamespaces) => {
62
48
  const listeners = new Set();
63
49
  const partialListeners = new Set();
@@ -75,8 +61,8 @@ const EventEmitterSelective = (getFallbackNamespaces) => {
75
61
  fn: (e) => {
76
62
  handler(e);
77
63
  },
78
- keys: new Map(),
79
- namespaces: new Map(),
64
+ keys: new Set(),
65
+ namespaces: new Set(),
80
66
  };
81
67
  partialListeners.add(handlerWrapper);
82
68
  const result = {
@@ -84,30 +70,20 @@ const EventEmitterSelective = (getFallbackNamespaces) => {
84
70
  partialListeners.delete(handlerWrapper);
85
71
  },
86
72
  subscribeNs: (ns) => {
87
- getFallbackArray(ns).forEach((val) => incrementInMap(handlerWrapper.namespaces, val));
88
- return result;
89
- },
90
- unsubscribeNs: (ns) => {
91
- getFallbackArray(ns).forEach((val) => decrementInMap(handlerWrapper.namespaces, val));
92
- return result;
93
- },
94
- subscribeKey: (descriptor) => {
95
- const { key, ns } = descriptor;
96
- incrementInMap(handlerWrapper.keys, key);
97
- getFallbackArray(ns).forEach((val) => incrementInMap(handlerWrapper.namespaces, val));
73
+ getFallbackArray(ns).forEach((val) => handlerWrapper.namespaces.add(val));
98
74
  if (ns === undefined) {
99
75
  // subscribing to all namespaces
100
- incrementInMap(handlerWrapper.namespaces, undefined);
76
+ handlerWrapper.namespaces.add(undefined);
101
77
  }
102
78
  return result;
103
79
  },
104
- unsubscribeKey: (descriptor) => {
80
+ subscribeKey: (descriptor) => {
105
81
  const { key, ns } = descriptor;
106
- decrementInMap(handlerWrapper.keys, key);
107
- getFallbackArray(ns).forEach((val) => decrementInMap(handlerWrapper.namespaces, val));
82
+ handlerWrapper.keys.add(key);
83
+ getFallbackArray(ns).forEach((val) => handlerWrapper.namespaces.add(val));
108
84
  if (ns === undefined) {
109
85
  // subscribing to all namespaces
110
- decrementInMap(handlerWrapper.namespaces, undefined);
86
+ handlerWrapper.namespaces.add(undefined);
111
87
  }
112
88
  return result;
113
89
  },
@@ -173,9 +149,7 @@ const EventEmitterSelective = (getFallbackNamespaces) => {
173
149
  solveQueue();
174
150
  }
175
151
  else {
176
- Promise.resolve().then(() => {
177
- solveQueue();
178
- });
152
+ setTimeout(solveQueue, 0);
179
153
  }
180
154
  };
181
155
  return Object.freeze({ listenSome, listen, emit });
@@ -374,10 +348,6 @@ const Cache = (onCacheChange, backendGetRecord, backendGetDevRecord, withDefault
374
348
  if (!dataPromise) {
375
349
  dataPromise = backendGetRecord(keyObject);
376
350
  }
377
- if (!dataPromise) {
378
- // return empty data, so we know it has already been attempted to fetch
379
- dataPromise = Promise.resolve({});
380
- }
381
351
  return dataPromise;
382
352
  }
383
353
  function fetchData(keyObject, isDev) {
@@ -409,7 +379,7 @@ const Cache = (onCacheChange, backendGetRecord, backendGetDevRecord, withDefault
409
379
  cacheKey,
410
380
  };
411
381
  }
412
- const dataPromise = fetchData(keyObject, isDev);
382
+ const dataPromise = fetchData(keyObject, isDev) || Promise.resolve(undefined);
413
383
  asyncRequests.set(cacheKey, dataPromise);
414
384
  return {
415
385
  new: true,
@@ -431,6 +401,10 @@ const Cache = (onCacheChange, backendGetRecord, backendGetDevRecord, withDefault
431
401
  if (data) {
432
402
  addRecord(value.keyObject, data);
433
403
  }
404
+ else if (!getRecord(value.keyObject)) {
405
+ // if no data exist, put empty object
406
+ addRecord(value.keyObject, {});
407
+ }
434
408
  }
435
409
  });
436
410
  fetchingObserver.notify();
@@ -504,9 +478,11 @@ const PluginService = (getLanguage, getInitialOptions, getObserverOptions, getAv
504
478
  const run = (isDev) => {
505
479
  var _a, _b;
506
480
  if (!instances.ui && plugins.ui) {
481
+ const { apiKey, apiUrl, projectId } = getInitialOptions();
507
482
  instances.ui = new plugins.ui({
508
- apiKey: getInitialOptions().apiKey,
509
- apiUrl: getInitialOptions().apiUrl,
483
+ apiKey: apiKey,
484
+ apiUrl: apiUrl,
485
+ projectId,
510
486
  highlight,
511
487
  changeTranslation,
512
488
  });
@@ -603,9 +579,11 @@ const PluginService = (getLanguage, getInitialOptions, getObserverOptions, getAv
603
579
  };
604
580
  const getBackendDevRecord = ({ language, namespace }) => {
605
581
  var _a;
582
+ const { apiKey, apiUrl, projectId } = getInitialOptions();
606
583
  return (_a = instances.devBackend) === null || _a === void 0 ? void 0 : _a.getRecord({
607
- apiKey: getInitialOptions().apiKey,
608
- apiUrl: getInitialOptions().apiUrl,
584
+ apiKey,
585
+ apiUrl,
586
+ projectId,
609
587
  language,
610
588
  namespace,
611
589
  });
@@ -935,9 +913,8 @@ function parseCombinedOptions(_a) {
935
913
  ns: ns,
936
914
  noWrap: noWrap,
937
915
  orEmpty: orEmpty,
938
- params: Object.assign(Object.assign({}, rest), params),
939
916
  };
940
- return options;
917
+ return Object.assign(Object.assign({}, options), { params: Object.assign({}, rest) });
941
918
  }
942
919
  const getTranslateParams = (keyOrProps, ...params) => {
943
920
  let result = {};
@@ -1241,12 +1218,159 @@ const Tolgee = (options) => {
1241
1218
  return tolgee;
1242
1219
  };
1243
1220
 
1244
- const RESTRICTED_ASCENDANT_ATTRIBUTE = 'data-tolgee-restricted';
1245
- const TOLGEE_ATTRIBUTE_NAME = '_tolgee';
1246
- const TOLGEE_HIGHLIGHTER_CLASS = '_tolgee-highlighter';
1247
- const TOLGEE_WRAPPED_ONLY_DATA_ATTRIBUTE = 'data-tolgee-key-only';
1248
- // needs to be same as in @tolgee/ui package
1249
- const DEVTOOLS_ID = '__tolgee_dev_tools';
1221
+ const ERROR_PARAM_EMPTY = 0, ERROR_UNEXPECTED_CHAR = 1, ERROR_UNEXPECTED_END = 2;
1222
+ class FormatError extends Error {
1223
+ constructor(code, index, text) {
1224
+ let error;
1225
+ if (code === ERROR_PARAM_EMPTY) {
1226
+ error = 'Empty parameter';
1227
+ }
1228
+ else if (code === ERROR_UNEXPECTED_CHAR) {
1229
+ error = 'Unexpected character';
1230
+ }
1231
+ else {
1232
+ error = 'Unexpected end';
1233
+ }
1234
+ super(`Tolgee parser: ${error} at ${index} in "${text}"`);
1235
+ this.code = code;
1236
+ this.index = index;
1237
+ }
1238
+ }
1239
+
1240
+ function isWhitespace(ch) {
1241
+ return /\s/.test(ch);
1242
+ }
1243
+ const STATE_TEXT = 0, STATE_ESCAPE_MAYBE = 1, STATE_ESCAPE = 2, STATE_PARAM = 3, STATE_PARAM_AFTER = 4;
1244
+ const END_STATES = new Set([
1245
+ STATE_ESCAPE,
1246
+ STATE_ESCAPE_MAYBE,
1247
+ STATE_TEXT,
1248
+ ]);
1249
+ const CHAR_ESCAPE = "'";
1250
+ const ESCAPABLE = new Set(['{', '}', CHAR_ESCAPE]);
1251
+ const isAllowedInParam = (char) => {
1252
+ return /[0-9a-zA-Z_]/.test(char);
1253
+ };
1254
+ function formatParser(translation) {
1255
+ let state = STATE_TEXT;
1256
+ let text = '';
1257
+ let param = '';
1258
+ let ch = '';
1259
+ const texts = [];
1260
+ const params = [];
1261
+ let i = 0;
1262
+ function parsingError(code) {
1263
+ throw new FormatError(code, i, translation);
1264
+ }
1265
+ const addText = () => {
1266
+ texts.push(text);
1267
+ text = '';
1268
+ };
1269
+ const addParamChar = () => {
1270
+ if (!isAllowedInParam(ch)) {
1271
+ parsingError(ERROR_UNEXPECTED_CHAR);
1272
+ }
1273
+ param += ch;
1274
+ };
1275
+ const addParam = () => {
1276
+ if (param === '') {
1277
+ parsingError(ERROR_PARAM_EMPTY);
1278
+ }
1279
+ params.push(param);
1280
+ param = '';
1281
+ };
1282
+ for (i = 0; i < translation.length; i++) {
1283
+ ch = translation[i];
1284
+ switch (state) {
1285
+ case STATE_TEXT:
1286
+ if (ch === CHAR_ESCAPE) {
1287
+ text += ch;
1288
+ state = STATE_ESCAPE_MAYBE;
1289
+ }
1290
+ else if (ch === '{') {
1291
+ addText();
1292
+ state = STATE_PARAM;
1293
+ }
1294
+ else {
1295
+ text += ch;
1296
+ state = STATE_TEXT;
1297
+ }
1298
+ break;
1299
+ case STATE_ESCAPE_MAYBE:
1300
+ if (ESCAPABLE.has(ch)) {
1301
+ text = text.slice(0, -1) + ch;
1302
+ state = STATE_ESCAPE;
1303
+ }
1304
+ else {
1305
+ text += ch;
1306
+ state = STATE_TEXT;
1307
+ }
1308
+ break;
1309
+ case STATE_ESCAPE:
1310
+ if (ch === CHAR_ESCAPE) {
1311
+ state = STATE_TEXT;
1312
+ }
1313
+ else {
1314
+ text += ch;
1315
+ state = STATE_ESCAPE;
1316
+ }
1317
+ break;
1318
+ case STATE_PARAM:
1319
+ if (ch === '}') {
1320
+ addParam();
1321
+ state = STATE_TEXT;
1322
+ }
1323
+ else if (!isWhitespace(ch)) {
1324
+ addParamChar();
1325
+ state = STATE_PARAM;
1326
+ }
1327
+ else if (param !== '') {
1328
+ addParam();
1329
+ state = STATE_PARAM_AFTER;
1330
+ }
1331
+ break;
1332
+ case STATE_PARAM_AFTER:
1333
+ if (ch == '}') {
1334
+ state = STATE_TEXT;
1335
+ }
1336
+ else if (isWhitespace(ch)) {
1337
+ state = STATE_PARAM_AFTER;
1338
+ }
1339
+ else {
1340
+ parsingError(ERROR_UNEXPECTED_CHAR);
1341
+ }
1342
+ }
1343
+ }
1344
+ if (!END_STATES.has(state)) {
1345
+ parsingError(ERROR_UNEXPECTED_END);
1346
+ }
1347
+ addText();
1348
+ return [texts, params];
1349
+ }
1350
+
1351
+ function formatter(translation, params) {
1352
+ const [texts, pars] = formatParser(translation);
1353
+ const result = [texts[0]];
1354
+ for (let i = 1; i < texts.length; i++) {
1355
+ const parameter = params === null || params === void 0 ? void 0 : params[pars[i - 1]];
1356
+ if (parameter === undefined) {
1357
+ throw new Error(`Missing parameter "${pars[i - 1]}" in "${translation}"`);
1358
+ }
1359
+ result.push(String(parameter));
1360
+ result.push(texts[i]);
1361
+ }
1362
+ return result.join('');
1363
+ }
1364
+
1365
+ function FormatSimpleCreator() {
1366
+ return {
1367
+ format: ({ translation, params }) => formatter(translation, params),
1368
+ };
1369
+ }
1370
+ const FormatSimple = () => (tolgee, tools) => {
1371
+ tools.setFinalFormatter(FormatSimpleCreator());
1372
+ return tolgee;
1373
+ };
1250
1374
 
1251
- export { DEVTOOLS_ID, RESTRICTED_ASCENDANT_ATTRIBUTE, TOLGEE_ATTRIBUTE_NAME, TOLGEE_HIGHLIGHTER_CLASS, TOLGEE_WRAPPED_ONLY_DATA_ATTRIBUTE, Tolgee, getFallback, getFallbackArray, getTranslateParams };
1252
- //# sourceMappingURL=tolgee.esm.mjs.map
1375
+ export { FormatSimple, Tolgee, getFallback, getFallbackArray, getTranslateParams };
1376
+ //# sourceMappingURL=tolgee.esm.js.map