react-i18next 11.11.2 → 11.11.3

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ### 11.11.3
2
+
3
+ - Trans: parse first, then interpolate [1345](https://github.com/i18next/react-i18next/pull/1345)
4
+
1
5
  ### 11.11.2
2
6
 
3
7
  - feat(typings): support readonly namespaces in TFuncKey [1340](https://github.com/i18next/react-i18next/pull/1340)
@@ -565,8 +565,9 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
565
565
  }
566
566
 
567
567
  getData(children);
568
- var interpolatedString = i18n.services.interpolator.interpolate(targetString, _objectSpread2(_objectSpread2({}, data), combinedTOpts), i18n.language);
569
- var ast = c.parse("<0>".concat(interpolatedString, "</0>"));
568
+ var ast = c.parse("<0>".concat(targetString, "</0>"));
569
+
570
+ var opts = _objectSpread2(_objectSpread2({}, data), combinedTOpts);
570
571
 
571
572
  function renderInner(child, node, rootReactNode) {
572
573
  var childs = getChildren(child);
@@ -585,7 +586,7 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
585
586
  var reactNodes = getAsArray(reactNode);
586
587
  var astNodes = getAsArray(astNode);
587
588
  return astNodes.reduce(function (mem, node, i) {
588
- var translationContent = node.children && node.children[0] && node.children[0].content;
589
+ var translationContent = node.children && node.children[0] && node.children[0].content && i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);
589
590
 
590
591
  if (node.type === 'tag') {
591
592
  var tmp = reactNodes[parseInt(node.name, 10)];
@@ -600,7 +601,8 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
600
601
  var isKnownComponent = _typeof(children) === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);
601
602
 
602
603
  if (typeof child === 'string') {
603
- mem.push(child);
604
+ var value = i18n.services.interpolator.interpolate(child, opts, i18n.language);
605
+ mem.push(value);
604
606
  } else if (hasChildren(child) || isValidTranslationWithChildren) {
605
607
  var inner = renderInner(child, node, rootReactNode);
606
608
  pushTranslatedJSX(child, inner, mem, i);
@@ -649,12 +651,14 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
649
651
  } else if (node.type === 'text') {
650
652
  var wrapTextNodes = i18nOptions.transWrapTextNodes;
651
653
 
654
+ var _content = i18n.services.interpolator.interpolate(node.content, opts, i18n.language);
655
+
652
656
  if (wrapTextNodes) {
653
657
  mem.push(React__default.createElement(wrapTextNodes, {
654
658
  key: "".concat(node.name, "-").concat(i)
655
- }, node.content));
659
+ }, _content));
656
660
  } else {
657
- mem.push(node.content);
661
+ mem.push(_content);
658
662
  }
659
663
  }
660
664
 
@@ -1 +1 @@
1
- define(["exports","react"],(function(e,n){"use strict";var t="default"in n?n.default:n;function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function i(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?r(Object(t),!0).forEach((function(n){c(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):r(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function s(e,n){if(null==e)return{};var t,r,i=function(e,n){if(null==e)return{};var t,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||(i[t]=e[t]);return i}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}function u(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=e&&("undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null==t)return;var r,i,a=[],o=!0,c=!1;try{for(t=t.call(e);!(o=(r=t.next()).done)&&(a.push(r.value),!n||a.length!==n);o=!0);}catch(e){c=!0,i=e}finally{try{o||null==t.return||t.return()}finally{if(c)throw i}}return a}(e,n)||function(e,n){if(!e)return;if("string"==typeof e)return l(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(e);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return l(e,n)}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}var f={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},p=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function d(e){var n={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},t=e.match(/<\/?([^\s]+?)[/\s>]/);if(t&&(n.name=t[1],(f[t[1]]||"/"===e.charAt(e.length-2))&&(n.voidElement=!0),n.name.startsWith("!--"))){var r=e.indexOf("--\x3e");return{type:"comment",comment:-1!==r?e.slice(4,r):""}}for(var i=new RegExp(p),a=null;null!==(a=i.exec(e));)if(a[0].trim())if(a[1]){var o=a[1].trim(),c=[o,""];o.indexOf("=")>-1&&(c=o.split("=")),n.attrs[c[0]]=c[1],i.lastIndex--}else a[2]&&(n.attrs[a[2]]=a[3].trim().substring(1,a[3].length-1));return n}var m=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,h=/^\s*$/,g=Object.create(null);var v,y=function(e,n){n||(n={}),n.components||(n.components=g);var t,r=[],i=[],a=-1,o=!1;if(0!==e.indexOf("<")){var c=e.indexOf("<");r.push({type:"text",content:-1===c?e:e.substring(0,c)})}return e.replace(m,(function(c,s){if(o){if(c!=="</"+t.name+">")return;o=!1}var u,l="/"!==c.charAt(1),f=c.startsWith("\x3c!--"),p=s+c.length,m=e.charAt(p);if(f){var g=d(c);return a<0?(r.push(g),r):((u=i[a]).children.push(g),r)}if(l&&(a++,"tag"===(t=d(c)).type&&n.components[t.name]&&(t.type="component",o=!0),t.voidElement||o||!m||"<"===m||t.children.push({type:"text",content:e.slice(p,e.indexOf("<",p))}),0===a&&r.push(t),(u=i[a-1])&&u.children.push(t),i[a]=t),(!l||t.voidElement)&&(a>-1&&(t.voidElement||t.name===c.slice(2,-1))&&(a--,t=-1===a?r:i[a]),!o&&"<"!==m&&m)){u=-1===a?r:i[a].children;var v=e.indexOf("<",p),y=e.slice(p,-1===v?void 0:v);h.test(y)&&(y=" "),(v>-1&&a+u.length>=0||" "!==y)&&u.push({type:"text",content:y})}})),r},b={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0},O=t.createContext();function w(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};b=i(i({},b),e)}function j(){return b}var x=function(){function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.usedNamespaces={}}var n,t,r;return n=e,(t=[{key:"addUsedNamespaces",value:function(e){var n=this;e.forEach((function(e){n.usedNamespaces[e]||(n.usedNamespaces[e]=!0)}))}},{key:"getUsedNamespaces",value:function(){return Object.keys(this.usedNamespaces)}}])&&o(n.prototype,t),r&&o(n,r),e}();function E(e){v=e}function S(){return v}var N={type:"3rdParty",init:function(e){w(e.options.react),E(e)}};function I(e){return function(n){return new Promise((function(t){var r=k();e.getInitialProps?e.getInitialProps(n).then((function(e){t(i(i({},e),r))})):t(r)}))}}function k(){var e=S(),n=e.reportNamespaces?e.reportNamespaces.getUsedNamespaces():[],t={},r={};return e.languages.forEach((function(t){r[t]={},n.forEach((function(n){r[t][n]=e.getResourceBundle(t,n)||{}}))})),t.initialI18nStore=r,t.initialLanguage=e.language,t}function P(){if(console&&console.warn){for(var e,n=arguments.length,t=new Array(n),r=0;r<n;r++)t[r]=arguments[r];"string"==typeof t[0]&&(t[0]="react-i18next:: ".concat(t[0])),(e=console).warn.apply(e,t)}}var R={};function C(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];"string"==typeof n[0]&&R[n[0]]||("string"==typeof n[0]&&(R[n[0]]=new Date),P.apply(void 0,n))}function A(e,n,t){e.loadNamespaces(n,(function(){if(e.isInitialized)t();else{e.on("initialized",(function n(){setTimeout((function(){e.off("initialized",n)}),0),t()}))}}))}function T(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!n.languages||!n.languages.length)return C("i18n.languages were undefined or empty",n.languages),!0;var r=n.languages[0],i=!!n.options&&n.options.fallbackLng,a=n.languages[n.languages.length-1];if("cimode"===r.toLowerCase())return!0;var o=function(e,t){var r=n.services.backendConnector.state["".concat(e,"|").concat(t)];return-1===r||2===r};return!(t.bindI18n&&t.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!o(n.isLanguageChangingTo,e))&&(!!n.hasResourceBundle(r,e)||(!n.services.backendConnector.backend||!(!o(r,e)||i&&!o(a,e))))}function z(e){return e.displayName||e.name||("string"==typeof e&&e.length>0?e:"Unknown")}var L=["format"],D=["children","count","parent","i18nKey","tOptions","values","defaults","components","ns","i18n","t"];function B(e,n){if(!e)return!1;var t=e.props?e.props.children:e.children;return n?t.length>0:!!t}function U(e){return e?e&&e.children?e.children:e.props&&e.props.children:[]}function V(e){return Array.isArray(e)?e:[e]}function K(e,n,r,o,c){if(""===n)return[];var s=o.transKeepBasicHtmlNodesFor||[],u=n&&new RegExp(s.join("|")).test(n);if(!e&&!u)return[n];var l={};!function e(n){V(n).forEach((function(n){"string"!=typeof n&&(B(n)?e(U(n)):"object"!==a(n)||t.isValidElement(n)||Object.assign(l,n))}))}(e);var f=r.services.interpolator.interpolate(n,i(i({},l),c),r.language),p=y("<0>".concat(f,"</0>"));function d(e,n,r){var i=U(e),a=h(i,n.children,r);return function(e){return"[object Array]"===Object.prototype.toString.call(e)&&e.every((function(e){return t.isValidElement(e)}))}(i)&&0===a.length?i:a}function m(e,n,r,a,o){e.dummy&&(e.children=n),r.push(t.cloneElement(e,i(i({},e.props),{},{key:a}),o?void 0:n))}function h(n,r,c){var l=V(n);return V(r).reduce((function(n,r,f){var p,g,v,y=r.children&&r.children[0]&&r.children[0].content;if("tag"===r.type){var b=l[parseInt(r.name,10)];!b&&1===c.length&&c[0][r.name]&&(b=c[0][r.name]),b||(b={});var O=0!==Object.keys(r.attrs).length?(p={props:r.attrs},(v=i({},g=b)).props=Object.assign(p.props,g.props),v):b,w=t.isValidElement(O),j=w&&B(r,!0)&&!r.voidElement,x=u&&"object"===a(O)&&O.dummy&&!w,E="object"===a(e)&&null!==e&&Object.hasOwnProperty.call(e,r.name);if("string"==typeof O)n.push(O);else if(B(O)||j){m(O,d(O,r,c),n,f)}else if(x){var S=h(l,r.children,c);n.push(t.cloneElement(O,i(i({},O.props),{},{key:f}),S))}else if(Number.isNaN(parseFloat(r.name))){if(E)m(O,d(O,r,c),n,f,r.voidElement);else if(o.transSupportBasicHtmlNodes&&s.indexOf(r.name)>-1)if(r.voidElement)n.push(t.createElement(r.name,{key:"".concat(r.name,"-").concat(f)}));else{var N=h(l,r.children,c);n.push(t.createElement(r.name,{key:"".concat(r.name,"-").concat(f)},N))}else if(r.voidElement)n.push("<".concat(r.name," />"));else{var I=h(l,r.children,c);n.push("<".concat(r.name,">").concat(I,"</").concat(r.name,">"))}}else if("object"!==a(O)||w)1===r.children.length&&y?n.push(t.cloneElement(O,i(i({},O.props),{},{key:f}),y)):n.push(t.cloneElement(O,i(i({},O.props),{},{key:f})));else{var k=r.children[0]?y:null;k&&n.push(k)}}else if("text"===r.type){var P=o.transWrapTextNodes;P?n.push(t.createElement(P,{key:"".concat(r.name,"-").concat(f)},r.content)):n.push(r.content)}return n}),[])}return U(h([{dummy:!0,children:e}],p,V(e||[]))[0])}function W(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.i18n,a=n.useContext(O)||{},o=a.i18n,c=a.defaultNS,s=r||o||S();if(s&&!s.reportNamespaces&&(s.reportNamespaces=new x),!s){C("You will need to pass in an i18next instance by using initReactI18next");var l=function(e){return Array.isArray(e)?e[e.length-1]:e},f=[l,{},!1];return f.t=l,f.i18n={},f.ready=!1,f}s.options.react&&void 0!==s.options.react.wait&&C("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");var p=i(i(i({},j()),s.options.react),t),d=p.useSuspense,m=e||c||s.options&&s.options.defaultNS;m="string"==typeof m?[m]:m||["translation"],s.reportNamespaces.addUsedNamespaces&&s.reportNamespaces.addUsedNamespaces(m);var h=(s.isInitialized||s.initializedStoreOnce)&&m.every((function(e){return T(e,s,p)}));function g(){return s.getFixedT(null,"fallback"===p.nsMode?m:m[0])}var v=n.useState(g),y=u(v,2),b=y[0],w=y[1],E=n.useRef(!0);n.useEffect((function(){var e=p.bindI18n,n=p.bindI18nStore;function t(){E.current&&w(g)}return E.current=!0,h||d||A(s,m,(function(){E.current&&w(g)})),e&&s&&s.on(e,t),n&&s&&s.store.on(n,t),function(){E.current=!1,e&&s&&e.split(" ").forEach((function(e){return s.off(e,t)})),n&&s&&n.split(" ").forEach((function(e){return s.store.off(e,t)}))}}),[s,m.join()]);var N=n.useRef(!0);n.useEffect((function(){E.current&&!N.current&&w(g),N.current=!1}),[s]);var I=[b,s,h];if(I.t=b,I.i18n=s,I.ready=h,h)return I;if(!h&&!d)return I;throw new Promise((function(e){A(s,m,(function(){e()}))}))}var F=["forwardedRef"];var H=["ns","children"];function M(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=r.i18n,a=n.useContext(O)||{},o=a.i18n,c=i||o||S();c.options&&c.options.isClone||(e&&!c.initializedStoreOnce&&(c.services.resourceStore.data=e,c.options.ns=Object.values(e).reduce((function(e,n){return Object.keys(n).forEach((function(n){e.indexOf(n)<0&&e.push(n)})),e}),c.options.ns),c.initializedStoreOnce=!0,c.isInitialized=!0),t&&!c.initializedLanguageOnce&&(c.changeLanguage(t),c.initializedLanguageOnce=!0))}var $=["initialI18nStore","initialLanguage"];e.I18nContext=O,e.I18nextProvider=function(e){var t=e.i18n,r=e.defaultNS,i=e.children,a=n.useMemo((function(){return{i18n:t,defaultNS:r}}),[t,r]);return n.createElement(O.Provider,{value:a},i)},e.Trans=function(e){var r=e.children,o=e.count,c=e.parent,u=e.i18nKey,l=e.tOptions,f=void 0===l?{}:l,p=e.values,d=e.defaults,m=e.components,h=e.ns,g=e.i18n,v=e.t,y=s(e,D),b=n.useContext(O)||{},w=b.i18n,x=b.defaultNS,E=g||w||S();if(!E)return C("You will need to pass in an i18next instance by using i18nextReactModule"),r;var N=v||E.t.bind(E)||function(e){return e},I=i(i({},j()),E.options&&E.options.react),k=h||N.ns||x||E.options&&E.options.defaultNS;k="string"==typeof k?[k]:k||["translation"];var R=d||function e(n,r){if(!n)return"";var i="",o=V(n),c=r.transKeepBasicHtmlNodesFor||[];return o.forEach((function(n,o){if("string"==typeof n)i+="".concat(n);else if(t.isValidElement(n)){var u=Object.keys(n.props).length,l=c.indexOf(n.type)>-1,f=n.props.children;if(!f&&l&&0===u)i+="<".concat(n.type,"/>");else if(f||l&&0===u)if(n.props.i18nIsDynamicList)i+="<".concat(o,"></").concat(o,">");else if(l&&1===u&&"string"==typeof f)i+="<".concat(n.type,">").concat(f,"</").concat(n.type,">");else{var p=e(f,r);i+="<".concat(o,">").concat(p,"</").concat(o,">")}else i+="<".concat(o,"></").concat(o,">")}else if(null===n)P("Trans: the passed in value is invalid - seems you passed in a null child.");else if("object"===a(n)){var d=n.format,m=s(n,L),h=Object.keys(m);if(1===h.length){var g=d?"".concat(h[0],", ").concat(d):h[0];i+="{{".concat(g,"}}")}else P("react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.",n)}else P("Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.",n)})),i}(r,I)||I.transEmptyNodeValue||u,A=I.hashTransKey,T=u||(A?A(R):R),z=p?f.interpolation:{interpolation:i(i({},f.interpolation),{},{prefix:"#$?",suffix:"?$#"})},B=i(i(i(i({},f),{},{count:o},p),z),{},{defaultValue:R,ns:k}),U=K(m||r,T?N(T,B):R,E,I,B),W=void 0!==c?c:I.defaultTransParent;return W?t.createElement(W,y,U):U},e.Translation=function(e){var n=e.ns,t=e.children,r=u(W(n,s(e,H)),3),i=r[0],a=r[1],o=r[2];return t(i,{i18n:a,lng:a.language},o)},e.composeInitialProps=I,e.date=function(){return""},e.getDefaults=j,e.getI18n=S,e.getInitialProps=k,e.initReactI18next=N,e.number=function(){return""},e.plural=function(){return""},e.select=function(){return""},e.selectOrdinal=function(){return""},e.setDefaults=w,e.setI18n=E,e.time=function(){return""},e.useSSR=M,e.useTranslation=W,e.withSSR=function(){return function(e){function n(n){var r=n.initialI18nStore,a=n.initialLanguage,o=s(n,$);return M(r,a),t.createElement(e,i({},o))}return n.getInitialProps=I(e),n.displayName="withI18nextSSR(".concat(z(e),")"),n.WrappedComponent=e,n}},e.withTranslation=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(r){function a(a){var o=a.forwardedRef,c=s(a,F),l=u(W(e,c),3),f=l[0],p=l[1],d=l[2],m=i(i({},c),{},{t:f,i18n:p,tReady:d});return n.withRef&&o?m.ref=o:!n.withRef&&o&&(m.forwardedRef=o),t.createElement(r,m)}a.displayName="withI18nextTranslation(".concat(z(r),")"),a.WrappedComponent=r;return n.withRef?t.forwardRef((function(e,n){return t.createElement(a,Object.assign({},e,{forwardedRef:n}))})):a}},Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ define(["exports","react"],(function(e,n){"use strict";var t="default"in n?n.default:n;function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function i(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?r(Object(t),!0).forEach((function(n){c(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):r(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function s(e,n){if(null==e)return{};var t,r,i=function(e,n){if(null==e)return{};var t,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||(i[t]=e[t]);return i}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}function u(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=e&&("undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null==t)return;var r,i,a=[],o=!0,c=!1;try{for(t=t.call(e);!(o=(r=t.next()).done)&&(a.push(r.value),!n||a.length!==n);o=!0);}catch(e){c=!0,i=e}finally{try{o||null==t.return||t.return()}finally{if(c)throw i}}return a}(e,n)||function(e,n){if(!e)return;if("string"==typeof e)return l(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(e);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return l(e,n)}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}var f={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},p=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function d(e){var n={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},t=e.match(/<\/?([^\s]+?)[/\s>]/);if(t&&(n.name=t[1],(f[t[1]]||"/"===e.charAt(e.length-2))&&(n.voidElement=!0),n.name.startsWith("!--"))){var r=e.indexOf("--\x3e");return{type:"comment",comment:-1!==r?e.slice(4,r):""}}for(var i=new RegExp(p),a=null;null!==(a=i.exec(e));)if(a[0].trim())if(a[1]){var o=a[1].trim(),c=[o,""];o.indexOf("=")>-1&&(c=o.split("=")),n.attrs[c[0]]=c[1],i.lastIndex--}else a[2]&&(n.attrs[a[2]]=a[3].trim().substring(1,a[3].length-1));return n}var m=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,g=/^\s*$/,h=Object.create(null);var v,y=function(e,n){n||(n={}),n.components||(n.components=h);var t,r=[],i=[],a=-1,o=!1;if(0!==e.indexOf("<")){var c=e.indexOf("<");r.push({type:"text",content:-1===c?e:e.substring(0,c)})}return e.replace(m,(function(c,s){if(o){if(c!=="</"+t.name+">")return;o=!1}var u,l="/"!==c.charAt(1),f=c.startsWith("\x3c!--"),p=s+c.length,m=e.charAt(p);if(f){var h=d(c);return a<0?(r.push(h),r):((u=i[a]).children.push(h),r)}if(l&&(a++,"tag"===(t=d(c)).type&&n.components[t.name]&&(t.type="component",o=!0),t.voidElement||o||!m||"<"===m||t.children.push({type:"text",content:e.slice(p,e.indexOf("<",p))}),0===a&&r.push(t),(u=i[a-1])&&u.children.push(t),i[a]=t),(!l||t.voidElement)&&(a>-1&&(t.voidElement||t.name===c.slice(2,-1))&&(a--,t=-1===a?r:i[a]),!o&&"<"!==m&&m)){u=-1===a?r:i[a].children;var v=e.indexOf("<",p),y=e.slice(p,-1===v?void 0:v);g.test(y)&&(y=" "),(v>-1&&a+u.length>=0||" "!==y)&&u.push({type:"text",content:y})}})),r},b={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0},O=t.createContext();function w(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};b=i(i({},b),e)}function j(){return b}var x=function(){function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.usedNamespaces={}}var n,t,r;return n=e,(t=[{key:"addUsedNamespaces",value:function(e){var n=this;e.forEach((function(e){n.usedNamespaces[e]||(n.usedNamespaces[e]=!0)}))}},{key:"getUsedNamespaces",value:function(){return Object.keys(this.usedNamespaces)}}])&&o(n.prototype,t),r&&o(n,r),e}();function E(e){v=e}function S(){return v}var N={type:"3rdParty",init:function(e){w(e.options.react),E(e)}};function I(e){return function(n){return new Promise((function(t){var r=k();e.getInitialProps?e.getInitialProps(n).then((function(e){t(i(i({},e),r))})):t(r)}))}}function k(){var e=S(),n=e.reportNamespaces?e.reportNamespaces.getUsedNamespaces():[],t={},r={};return e.languages.forEach((function(t){r[t]={},n.forEach((function(n){r[t][n]=e.getResourceBundle(t,n)||{}}))})),t.initialI18nStore=r,t.initialLanguage=e.language,t}function P(){if(console&&console.warn){for(var e,n=arguments.length,t=new Array(n),r=0;r<n;r++)t[r]=arguments[r];"string"==typeof t[0]&&(t[0]="react-i18next:: ".concat(t[0])),(e=console).warn.apply(e,t)}}var R={};function C(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];"string"==typeof n[0]&&R[n[0]]||("string"==typeof n[0]&&(R[n[0]]=new Date),P.apply(void 0,n))}function A(e,n,t){e.loadNamespaces(n,(function(){if(e.isInitialized)t();else{e.on("initialized",(function n(){setTimeout((function(){e.off("initialized",n)}),0),t()}))}}))}function T(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!n.languages||!n.languages.length)return C("i18n.languages were undefined or empty",n.languages),!0;var r=n.languages[0],i=!!n.options&&n.options.fallbackLng,a=n.languages[n.languages.length-1];if("cimode"===r.toLowerCase())return!0;var o=function(e,t){var r=n.services.backendConnector.state["".concat(e,"|").concat(t)];return-1===r||2===r};return!(t.bindI18n&&t.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!o(n.isLanguageChangingTo,e))&&(!!n.hasResourceBundle(r,e)||(!n.services.backendConnector.backend||!(!o(r,e)||i&&!o(a,e))))}function z(e){return e.displayName||e.name||("string"==typeof e&&e.length>0?e:"Unknown")}var L=["format"],D=["children","count","parent","i18nKey","tOptions","values","defaults","components","ns","i18n","t"];function B(e,n){if(!e)return!1;var t=e.props?e.props.children:e.children;return n?t.length>0:!!t}function U(e){return e?e&&e.children?e.children:e.props&&e.props.children:[]}function V(e){return Array.isArray(e)?e:[e]}function K(e,n,r,o,c){if(""===n)return[];var s=o.transKeepBasicHtmlNodesFor||[],u=n&&new RegExp(s.join("|")).test(n);if(!e&&!u)return[n];var l={};!function e(n){V(n).forEach((function(n){"string"!=typeof n&&(B(n)?e(U(n)):"object"!==a(n)||t.isValidElement(n)||Object.assign(l,n))}))}(e);var f=y("<0>".concat(n,"</0>")),p=i(i({},l),c);function d(e,n,r){var i=U(e),a=g(i,n.children,r);return function(e){return"[object Array]"===Object.prototype.toString.call(e)&&e.every((function(e){return t.isValidElement(e)}))}(i)&&0===a.length?i:a}function m(e,n,r,a,o){e.dummy&&(e.children=n),r.push(t.cloneElement(e,i(i({},e.props),{},{key:a}),o?void 0:n))}function g(n,c,l){var f=V(n);return V(c).reduce((function(n,c,h){var v,y,b,O=c.children&&c.children[0]&&c.children[0].content&&r.services.interpolator.interpolate(c.children[0].content,p,r.language);if("tag"===c.type){var w=f[parseInt(c.name,10)];!w&&1===l.length&&l[0][c.name]&&(w=l[0][c.name]),w||(w={});var j=0!==Object.keys(c.attrs).length?(v={props:c.attrs},(b=i({},y=w)).props=Object.assign(v.props,y.props),b):w,x=t.isValidElement(j),E=x&&B(c,!0)&&!c.voidElement,S=u&&"object"===a(j)&&j.dummy&&!x,N="object"===a(e)&&null!==e&&Object.hasOwnProperty.call(e,c.name);if("string"==typeof j){var I=r.services.interpolator.interpolate(j,p,r.language);n.push(I)}else if(B(j)||E){m(j,d(j,c,l),n,h)}else if(S){var k=g(f,c.children,l);n.push(t.cloneElement(j,i(i({},j.props),{},{key:h}),k))}else if(Number.isNaN(parseFloat(c.name))){if(N)m(j,d(j,c,l),n,h,c.voidElement);else if(o.transSupportBasicHtmlNodes&&s.indexOf(c.name)>-1)if(c.voidElement)n.push(t.createElement(c.name,{key:"".concat(c.name,"-").concat(h)}));else{var P=g(f,c.children,l);n.push(t.createElement(c.name,{key:"".concat(c.name,"-").concat(h)},P))}else if(c.voidElement)n.push("<".concat(c.name," />"));else{var R=g(f,c.children,l);n.push("<".concat(c.name,">").concat(R,"</").concat(c.name,">"))}}else if("object"!==a(j)||x)1===c.children.length&&O?n.push(t.cloneElement(j,i(i({},j.props),{},{key:h}),O)):n.push(t.cloneElement(j,i(i({},j.props),{},{key:h})));else{var C=c.children[0]?O:null;C&&n.push(C)}}else if("text"===c.type){var A=o.transWrapTextNodes,T=r.services.interpolator.interpolate(c.content,p,r.language);A?n.push(t.createElement(A,{key:"".concat(c.name,"-").concat(h)},T)):n.push(T)}return n}),[])}return U(g([{dummy:!0,children:e}],f,V(e||[]))[0])}function W(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.i18n,a=n.useContext(O)||{},o=a.i18n,c=a.defaultNS,s=r||o||S();if(s&&!s.reportNamespaces&&(s.reportNamespaces=new x),!s){C("You will need to pass in an i18next instance by using initReactI18next");var l=function(e){return Array.isArray(e)?e[e.length-1]:e},f=[l,{},!1];return f.t=l,f.i18n={},f.ready=!1,f}s.options.react&&void 0!==s.options.react.wait&&C("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");var p=i(i(i({},j()),s.options.react),t),d=p.useSuspense,m=e||c||s.options&&s.options.defaultNS;m="string"==typeof m?[m]:m||["translation"],s.reportNamespaces.addUsedNamespaces&&s.reportNamespaces.addUsedNamespaces(m);var g=(s.isInitialized||s.initializedStoreOnce)&&m.every((function(e){return T(e,s,p)}));function h(){return s.getFixedT(null,"fallback"===p.nsMode?m:m[0])}var v=n.useState(h),y=u(v,2),b=y[0],w=y[1],E=n.useRef(!0);n.useEffect((function(){var e=p.bindI18n,n=p.bindI18nStore;function t(){E.current&&w(h)}return E.current=!0,g||d||A(s,m,(function(){E.current&&w(h)})),e&&s&&s.on(e,t),n&&s&&s.store.on(n,t),function(){E.current=!1,e&&s&&e.split(" ").forEach((function(e){return s.off(e,t)})),n&&s&&n.split(" ").forEach((function(e){return s.store.off(e,t)}))}}),[s,m.join()]);var N=n.useRef(!0);n.useEffect((function(){E.current&&!N.current&&w(h),N.current=!1}),[s]);var I=[b,s,g];if(I.t=b,I.i18n=s,I.ready=g,g)return I;if(!g&&!d)return I;throw new Promise((function(e){A(s,m,(function(){e()}))}))}var F=["forwardedRef"];var H=["ns","children"];function M(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=r.i18n,a=n.useContext(O)||{},o=a.i18n,c=i||o||S();c.options&&c.options.isClone||(e&&!c.initializedStoreOnce&&(c.services.resourceStore.data=e,c.options.ns=Object.values(e).reduce((function(e,n){return Object.keys(n).forEach((function(n){e.indexOf(n)<0&&e.push(n)})),e}),c.options.ns),c.initializedStoreOnce=!0,c.isInitialized=!0),t&&!c.initializedLanguageOnce&&(c.changeLanguage(t),c.initializedLanguageOnce=!0))}var $=["initialI18nStore","initialLanguage"];e.I18nContext=O,e.I18nextProvider=function(e){var t=e.i18n,r=e.defaultNS,i=e.children,a=n.useMemo((function(){return{i18n:t,defaultNS:r}}),[t,r]);return n.createElement(O.Provider,{value:a},i)},e.Trans=function(e){var r=e.children,o=e.count,c=e.parent,u=e.i18nKey,l=e.tOptions,f=void 0===l?{}:l,p=e.values,d=e.defaults,m=e.components,g=e.ns,h=e.i18n,v=e.t,y=s(e,D),b=n.useContext(O)||{},w=b.i18n,x=b.defaultNS,E=h||w||S();if(!E)return C("You will need to pass in an i18next instance by using i18nextReactModule"),r;var N=v||E.t.bind(E)||function(e){return e},I=i(i({},j()),E.options&&E.options.react),k=g||N.ns||x||E.options&&E.options.defaultNS;k="string"==typeof k?[k]:k||["translation"];var R=d||function e(n,r){if(!n)return"";var i="",o=V(n),c=r.transKeepBasicHtmlNodesFor||[];return o.forEach((function(n,o){if("string"==typeof n)i+="".concat(n);else if(t.isValidElement(n)){var u=Object.keys(n.props).length,l=c.indexOf(n.type)>-1,f=n.props.children;if(!f&&l&&0===u)i+="<".concat(n.type,"/>");else if(f||l&&0===u)if(n.props.i18nIsDynamicList)i+="<".concat(o,"></").concat(o,">");else if(l&&1===u&&"string"==typeof f)i+="<".concat(n.type,">").concat(f,"</").concat(n.type,">");else{var p=e(f,r);i+="<".concat(o,">").concat(p,"</").concat(o,">")}else i+="<".concat(o,"></").concat(o,">")}else if(null===n)P("Trans: the passed in value is invalid - seems you passed in a null child.");else if("object"===a(n)){var d=n.format,m=s(n,L),g=Object.keys(m);if(1===g.length){var h=d?"".concat(g[0],", ").concat(d):g[0];i+="{{".concat(h,"}}")}else P("react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.",n)}else P("Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.",n)})),i}(r,I)||I.transEmptyNodeValue||u,A=I.hashTransKey,T=u||(A?A(R):R),z=p?f.interpolation:{interpolation:i(i({},f.interpolation),{},{prefix:"#$?",suffix:"?$#"})},B=i(i(i(i({},f),{},{count:o},p),z),{},{defaultValue:R,ns:k}),U=K(m||r,T?N(T,B):R,E,I,B),W=void 0!==c?c:I.defaultTransParent;return W?t.createElement(W,y,U):U},e.Translation=function(e){var n=e.ns,t=e.children,r=u(W(n,s(e,H)),3),i=r[0],a=r[1],o=r[2];return t(i,{i18n:a,lng:a.language},o)},e.composeInitialProps=I,e.date=function(){return""},e.getDefaults=j,e.getI18n=S,e.getInitialProps=k,e.initReactI18next=N,e.number=function(){return""},e.plural=function(){return""},e.select=function(){return""},e.selectOrdinal=function(){return""},e.setDefaults=w,e.setI18n=E,e.time=function(){return""},e.useSSR=M,e.useTranslation=W,e.withSSR=function(){return function(e){function n(n){var r=n.initialI18nStore,a=n.initialLanguage,o=s(n,$);return M(r,a),t.createElement(e,i({},o))}return n.getInitialProps=I(e),n.displayName="withI18nextSSR(".concat(z(e),")"),n.WrappedComponent=e,n}},e.withTranslation=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(r){function a(a){var o=a.forwardedRef,c=s(a,F),l=u(W(e,c),3),f=l[0],p=l[1],d=l[2],m=i(i({},c),{},{t:f,i18n:p,tReady:d});return n.withRef&&o?m.ref=o:!n.withRef&&o&&(m.forwardedRef=o),t.createElement(r,m)}a.displayName="withI18nextTranslation(".concat(z(r),")"),a.WrappedComponent=r;return n.withRef?t.forwardRef((function(e,n){return t.createElement(a,Object.assign({},e,{forwardedRef:n}))})):a}},Object.defineProperty(e,"__esModule",{value:!0})}));
@@ -126,9 +126,10 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts) {
126
126
  }
127
127
 
128
128
  getData(children);
129
- var interpolatedString = i18n.services.interpolator.interpolate(targetString, _objectSpread(_objectSpread({}, data), combinedTOpts), i18n.language);
130
129
 
131
- var ast = _htmlParseStringify["default"].parse("<0>".concat(interpolatedString, "</0>"));
130
+ var ast = _htmlParseStringify["default"].parse("<0>".concat(targetString, "</0>"));
131
+
132
+ var opts = _objectSpread(_objectSpread({}, data), combinedTOpts);
132
133
 
133
134
  function renderInner(child, node, rootReactNode) {
134
135
  var childs = getChildren(child);
@@ -147,7 +148,7 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts) {
147
148
  var reactNodes = getAsArray(reactNode);
148
149
  var astNodes = getAsArray(astNode);
149
150
  return astNodes.reduce(function (mem, node, i) {
150
- var translationContent = node.children && node.children[0] && node.children[0].content;
151
+ var translationContent = node.children && node.children[0] && node.children[0].content && i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);
151
152
 
152
153
  if (node.type === 'tag') {
153
154
  var tmp = reactNodes[parseInt(node.name, 10)];
@@ -164,7 +165,8 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts) {
164
165
  var isKnownComponent = (0, _typeof2["default"])(children) === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);
165
166
 
166
167
  if (typeof child === 'string') {
167
- mem.push(child);
168
+ var value = i18n.services.interpolator.interpolate(child, opts, i18n.language);
169
+ mem.push(value);
168
170
  } else if (hasChildren(child) || isValidTranslationWithChildren) {
169
171
  var inner = renderInner(child, node, rootReactNode);
170
172
  pushTranslatedJSX(child, inner, mem, i);
@@ -213,12 +215,14 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts) {
213
215
  } else if (node.type === 'text') {
214
216
  var wrapTextNodes = i18nOptions.transWrapTextNodes;
215
217
 
218
+ var _content = i18n.services.interpolator.interpolate(node.content, opts, i18n.language);
219
+
216
220
  if (wrapTextNodes) {
217
221
  mem.push(_react["default"].createElement(wrapTextNodes, {
218
222
  key: "".concat(node.name, "-").concat(i)
219
- }, node.content));
223
+ }, _content));
220
224
  } else {
221
- mem.push(node.content);
225
+ mem.push(_content);
222
226
  }
223
227
  }
224
228
 
package/dist/es/Trans.js CHANGED
@@ -105,8 +105,9 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts) {
105
105
  }
106
106
 
107
107
  getData(children);
108
- var interpolatedString = i18n.services.interpolator.interpolate(targetString, _objectSpread(_objectSpread({}, data), combinedTOpts), i18n.language);
109
- var ast = HTML.parse("<0>".concat(interpolatedString, "</0>"));
108
+ var ast = HTML.parse("<0>".concat(targetString, "</0>"));
109
+
110
+ var opts = _objectSpread(_objectSpread({}, data), combinedTOpts);
110
111
 
111
112
  function renderInner(child, node, rootReactNode) {
112
113
  var childs = getChildren(child);
@@ -125,7 +126,7 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts) {
125
126
  var reactNodes = getAsArray(reactNode);
126
127
  var astNodes = getAsArray(astNode);
127
128
  return astNodes.reduce(function (mem, node, i) {
128
- var translationContent = node.children && node.children[0] && node.children[0].content;
129
+ var translationContent = node.children && node.children[0] && node.children[0].content && i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);
129
130
 
130
131
  if (node.type === 'tag') {
131
132
  var tmp = reactNodes[parseInt(node.name, 10)];
@@ -140,7 +141,8 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts) {
140
141
  var isKnownComponent = _typeof(children) === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);
141
142
 
142
143
  if (typeof child === 'string') {
143
- mem.push(child);
144
+ var value = i18n.services.interpolator.interpolate(child, opts, i18n.language);
145
+ mem.push(value);
144
146
  } else if (hasChildren(child) || isValidTranslationWithChildren) {
145
147
  var inner = renderInner(child, node, rootReactNode);
146
148
  pushTranslatedJSX(child, inner, mem, i);
@@ -189,12 +191,14 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts) {
189
191
  } else if (node.type === 'text') {
190
192
  var wrapTextNodes = i18nOptions.transWrapTextNodes;
191
193
 
194
+ var _content = i18n.services.interpolator.interpolate(node.content, opts, i18n.language);
195
+
192
196
  if (wrapTextNodes) {
193
197
  mem.push(React.createElement(wrapTextNodes, {
194
198
  key: "".concat(node.name, "-").concat(i)
195
- }, node.content));
199
+ }, _content));
196
200
  } else {
197
- mem.push(node.content);
201
+ mem.push(_content);
198
202
  }
199
203
  }
200
204
 
@@ -569,8 +569,9 @@
569
569
  }
570
570
 
571
571
  getData(children);
572
- var interpolatedString = i18n.services.interpolator.interpolate(targetString, _objectSpread2(_objectSpread2({}, data), combinedTOpts), i18n.language);
573
- var ast = c.parse("<0>".concat(interpolatedString, "</0>"));
572
+ var ast = c.parse("<0>".concat(targetString, "</0>"));
573
+
574
+ var opts = _objectSpread2(_objectSpread2({}, data), combinedTOpts);
574
575
 
575
576
  function renderInner(child, node, rootReactNode) {
576
577
  var childs = getChildren(child);
@@ -589,7 +590,7 @@
589
590
  var reactNodes = getAsArray(reactNode);
590
591
  var astNodes = getAsArray(astNode);
591
592
  return astNodes.reduce(function (mem, node, i) {
592
- var translationContent = node.children && node.children[0] && node.children[0].content;
593
+ var translationContent = node.children && node.children[0] && node.children[0].content && i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);
593
594
 
594
595
  if (node.type === 'tag') {
595
596
  var tmp = reactNodes[parseInt(node.name, 10)];
@@ -604,7 +605,8 @@
604
605
  var isKnownComponent = _typeof(children) === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);
605
606
 
606
607
  if (typeof child === 'string') {
607
- mem.push(child);
608
+ var value = i18n.services.interpolator.interpolate(child, opts, i18n.language);
609
+ mem.push(value);
608
610
  } else if (hasChildren(child) || isValidTranslationWithChildren) {
609
611
  var inner = renderInner(child, node, rootReactNode);
610
612
  pushTranslatedJSX(child, inner, mem, i);
@@ -653,12 +655,14 @@
653
655
  } else if (node.type === 'text') {
654
656
  var wrapTextNodes = i18nOptions.transWrapTextNodes;
655
657
 
658
+ var _content = i18n.services.interpolator.interpolate(node.content, opts, i18n.language);
659
+
656
660
  if (wrapTextNodes) {
657
661
  mem.push(React__default.createElement(wrapTextNodes, {
658
662
  key: "".concat(node.name, "-").concat(i)
659
- }, node.content));
663
+ }, _content));
660
664
  } else {
661
- mem.push(node.content);
665
+ mem.push(_content);
662
666
  }
663
667
  }
664
668
 
@@ -1 +1 @@
1
- !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],n):n((e=e||self).ReactI18next={},e.React)}(this,(function(e,n){"use strict";var t="default"in n?n.default:n;function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function i(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?r(Object(t),!0).forEach((function(n){c(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):r(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function s(e,n){if(null==e)return{};var t,r,i=function(e,n){if(null==e)return{};var t,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||(i[t]=e[t]);return i}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}function u(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=e&&("undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null==t)return;var r,i,a=[],o=!0,c=!1;try{for(t=t.call(e);!(o=(r=t.next()).done)&&(a.push(r.value),!n||a.length!==n);o=!0);}catch(e){c=!0,i=e}finally{try{o||null==t.return||t.return()}finally{if(c)throw i}}return a}(e,n)||function(e,n){if(!e)return;if("string"==typeof e)return l(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(e);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return l(e,n)}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}var f={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},p=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function d(e){var n={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},t=e.match(/<\/?([^\s]+?)[/\s>]/);if(t&&(n.name=t[1],(f[t[1]]||"/"===e.charAt(e.length-2))&&(n.voidElement=!0),n.name.startsWith("!--"))){var r=e.indexOf("--\x3e");return{type:"comment",comment:-1!==r?e.slice(4,r):""}}for(var i=new RegExp(p),a=null;null!==(a=i.exec(e));)if(a[0].trim())if(a[1]){var o=a[1].trim(),c=[o,""];o.indexOf("=")>-1&&(c=o.split("=")),n.attrs[c[0]]=c[1],i.lastIndex--}else a[2]&&(n.attrs[a[2]]=a[3].trim().substring(1,a[3].length-1));return n}var m=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,h=/^\s*$/,g=Object.create(null);var y,v=function(e,n){n||(n={}),n.components||(n.components=g);var t,r=[],i=[],a=-1,o=!1;if(0!==e.indexOf("<")){var c=e.indexOf("<");r.push({type:"text",content:-1===c?e:e.substring(0,c)})}return e.replace(m,(function(c,s){if(o){if(c!=="</"+t.name+">")return;o=!1}var u,l="/"!==c.charAt(1),f=c.startsWith("\x3c!--"),p=s+c.length,m=e.charAt(p);if(f){var g=d(c);return a<0?(r.push(g),r):((u=i[a]).children.push(g),r)}if(l&&(a++,"tag"===(t=d(c)).type&&n.components[t.name]&&(t.type="component",o=!0),t.voidElement||o||!m||"<"===m||t.children.push({type:"text",content:e.slice(p,e.indexOf("<",p))}),0===a&&r.push(t),(u=i[a-1])&&u.children.push(t),i[a]=t),(!l||t.voidElement)&&(a>-1&&(t.voidElement||t.name===c.slice(2,-1))&&(a--,t=-1===a?r:i[a]),!o&&"<"!==m&&m)){u=-1===a?r:i[a].children;var y=e.indexOf("<",p),v=e.slice(p,-1===y?void 0:y);h.test(v)&&(v=" "),(y>-1&&a+u.length>=0||" "!==v)&&u.push({type:"text",content:v})}})),r},b={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0},O=t.createContext();function w(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};b=i(i({},b),e)}function x(){return b}var j=function(){function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.usedNamespaces={}}var n,t,r;return n=e,(t=[{key:"addUsedNamespaces",value:function(e){var n=this;e.forEach((function(e){n.usedNamespaces[e]||(n.usedNamespaces[e]=!0)}))}},{key:"getUsedNamespaces",value:function(){return Object.keys(this.usedNamespaces)}}])&&o(n.prototype,t),r&&o(n,r),e}();function E(e){y=e}function S(){return y}var N={type:"3rdParty",init:function(e){w(e.options.react),E(e)}};function I(e){return function(n){return new Promise((function(t){var r=k();e.getInitialProps?e.getInitialProps(n).then((function(e){t(i(i({},e),r))})):t(r)}))}}function k(){var e=S(),n=e.reportNamespaces?e.reportNamespaces.getUsedNamespaces():[],t={},r={};return e.languages.forEach((function(t){r[t]={},n.forEach((function(n){r[t][n]=e.getResourceBundle(t,n)||{}}))})),t.initialI18nStore=r,t.initialLanguage=e.language,t}function P(){if(console&&console.warn){for(var e,n=arguments.length,t=new Array(n),r=0;r<n;r++)t[r]=arguments[r];"string"==typeof t[0]&&(t[0]="react-i18next:: ".concat(t[0])),(e=console).warn.apply(e,t)}}var R={};function C(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];"string"==typeof n[0]&&R[n[0]]||("string"==typeof n[0]&&(R[n[0]]=new Date),P.apply(void 0,n))}function A(e,n,t){e.loadNamespaces(n,(function(){if(e.isInitialized)t();else{e.on("initialized",(function n(){setTimeout((function(){e.off("initialized",n)}),0),t()}))}}))}function T(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!n.languages||!n.languages.length)return C("i18n.languages were undefined or empty",n.languages),!0;var r=n.languages[0],i=!!n.options&&n.options.fallbackLng,a=n.languages[n.languages.length-1];if("cimode"===r.toLowerCase())return!0;var o=function(e,t){var r=n.services.backendConnector.state["".concat(e,"|").concat(t)];return-1===r||2===r};return!(t.bindI18n&&t.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!o(n.isLanguageChangingTo,e))&&(!!n.hasResourceBundle(r,e)||(!n.services.backendConnector.backend||!(!o(r,e)||i&&!o(a,e))))}function z(e){return e.displayName||e.name||("string"==typeof e&&e.length>0?e:"Unknown")}var L=["format"],D=["children","count","parent","i18nKey","tOptions","values","defaults","components","ns","i18n","t"];function B(e,n){if(!e)return!1;var t=e.props?e.props.children:e.children;return n?t.length>0:!!t}function U(e){return e?e&&e.children?e.children:e.props&&e.props.children:[]}function V(e){return Array.isArray(e)?e:[e]}function K(e,n,r,o,c){if(""===n)return[];var s=o.transKeepBasicHtmlNodesFor||[],u=n&&new RegExp(s.join("|")).test(n);if(!e&&!u)return[n];var l={};!function e(n){V(n).forEach((function(n){"string"!=typeof n&&(B(n)?e(U(n)):"object"!==a(n)||t.isValidElement(n)||Object.assign(l,n))}))}(e);var f=r.services.interpolator.interpolate(n,i(i({},l),c),r.language),p=v("<0>".concat(f,"</0>"));function d(e,n,r){var i=U(e),a=h(i,n.children,r);return function(e){return"[object Array]"===Object.prototype.toString.call(e)&&e.every((function(e){return t.isValidElement(e)}))}(i)&&0===a.length?i:a}function m(e,n,r,a,o){e.dummy&&(e.children=n),r.push(t.cloneElement(e,i(i({},e.props),{},{key:a}),o?void 0:n))}function h(n,r,c){var l=V(n);return V(r).reduce((function(n,r,f){var p,g,y,v=r.children&&r.children[0]&&r.children[0].content;if("tag"===r.type){var b=l[parseInt(r.name,10)];!b&&1===c.length&&c[0][r.name]&&(b=c[0][r.name]),b||(b={});var O=0!==Object.keys(r.attrs).length?(p={props:r.attrs},(y=i({},g=b)).props=Object.assign(p.props,g.props),y):b,w=t.isValidElement(O),x=w&&B(r,!0)&&!r.voidElement,j=u&&"object"===a(O)&&O.dummy&&!w,E="object"===a(e)&&null!==e&&Object.hasOwnProperty.call(e,r.name);if("string"==typeof O)n.push(O);else if(B(O)||x){m(O,d(O,r,c),n,f)}else if(j){var S=h(l,r.children,c);n.push(t.cloneElement(O,i(i({},O.props),{},{key:f}),S))}else if(Number.isNaN(parseFloat(r.name))){if(E)m(O,d(O,r,c),n,f,r.voidElement);else if(o.transSupportBasicHtmlNodes&&s.indexOf(r.name)>-1)if(r.voidElement)n.push(t.createElement(r.name,{key:"".concat(r.name,"-").concat(f)}));else{var N=h(l,r.children,c);n.push(t.createElement(r.name,{key:"".concat(r.name,"-").concat(f)},N))}else if(r.voidElement)n.push("<".concat(r.name," />"));else{var I=h(l,r.children,c);n.push("<".concat(r.name,">").concat(I,"</").concat(r.name,">"))}}else if("object"!==a(O)||w)1===r.children.length&&v?n.push(t.cloneElement(O,i(i({},O.props),{},{key:f}),v)):n.push(t.cloneElement(O,i(i({},O.props),{},{key:f})));else{var k=r.children[0]?v:null;k&&n.push(k)}}else if("text"===r.type){var P=o.transWrapTextNodes;P?n.push(t.createElement(P,{key:"".concat(r.name,"-").concat(f)},r.content)):n.push(r.content)}return n}),[])}return U(h([{dummy:!0,children:e}],p,V(e||[]))[0])}function W(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.i18n,a=n.useContext(O)||{},o=a.i18n,c=a.defaultNS,s=r||o||S();if(s&&!s.reportNamespaces&&(s.reportNamespaces=new j),!s){C("You will need to pass in an i18next instance by using initReactI18next");var l=function(e){return Array.isArray(e)?e[e.length-1]:e},f=[l,{},!1];return f.t=l,f.i18n={},f.ready=!1,f}s.options.react&&void 0!==s.options.react.wait&&C("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");var p=i(i(i({},x()),s.options.react),t),d=p.useSuspense,m=e||c||s.options&&s.options.defaultNS;m="string"==typeof m?[m]:m||["translation"],s.reportNamespaces.addUsedNamespaces&&s.reportNamespaces.addUsedNamespaces(m);var h=(s.isInitialized||s.initializedStoreOnce)&&m.every((function(e){return T(e,s,p)}));function g(){return s.getFixedT(null,"fallback"===p.nsMode?m:m[0])}var y=n.useState(g),v=u(y,2),b=v[0],w=v[1],E=n.useRef(!0);n.useEffect((function(){var e=p.bindI18n,n=p.bindI18nStore;function t(){E.current&&w(g)}return E.current=!0,h||d||A(s,m,(function(){E.current&&w(g)})),e&&s&&s.on(e,t),n&&s&&s.store.on(n,t),function(){E.current=!1,e&&s&&e.split(" ").forEach((function(e){return s.off(e,t)})),n&&s&&n.split(" ").forEach((function(e){return s.store.off(e,t)}))}}),[s,m.join()]);var N=n.useRef(!0);n.useEffect((function(){E.current&&!N.current&&w(g),N.current=!1}),[s]);var I=[b,s,h];if(I.t=b,I.i18n=s,I.ready=h,h)return I;if(!h&&!d)return I;throw new Promise((function(e){A(s,m,(function(){e()}))}))}var F=["forwardedRef"];var H=["ns","children"];function M(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=r.i18n,a=n.useContext(O)||{},o=a.i18n,c=i||o||S();c.options&&c.options.isClone||(e&&!c.initializedStoreOnce&&(c.services.resourceStore.data=e,c.options.ns=Object.values(e).reduce((function(e,n){return Object.keys(n).forEach((function(n){e.indexOf(n)<0&&e.push(n)})),e}),c.options.ns),c.initializedStoreOnce=!0,c.isInitialized=!0),t&&!c.initializedLanguageOnce&&(c.changeLanguage(t),c.initializedLanguageOnce=!0))}var $=["initialI18nStore","initialLanguage"];e.I18nContext=O,e.I18nextProvider=function(e){var t=e.i18n,r=e.defaultNS,i=e.children,a=n.useMemo((function(){return{i18n:t,defaultNS:r}}),[t,r]);return n.createElement(O.Provider,{value:a},i)},e.Trans=function(e){var r=e.children,o=e.count,c=e.parent,u=e.i18nKey,l=e.tOptions,f=void 0===l?{}:l,p=e.values,d=e.defaults,m=e.components,h=e.ns,g=e.i18n,y=e.t,v=s(e,D),b=n.useContext(O)||{},w=b.i18n,j=b.defaultNS,E=g||w||S();if(!E)return C("You will need to pass in an i18next instance by using i18nextReactModule"),r;var N=y||E.t.bind(E)||function(e){return e},I=i(i({},x()),E.options&&E.options.react),k=h||N.ns||j||E.options&&E.options.defaultNS;k="string"==typeof k?[k]:k||["translation"];var R=d||function e(n,r){if(!n)return"";var i="",o=V(n),c=r.transKeepBasicHtmlNodesFor||[];return o.forEach((function(n,o){if("string"==typeof n)i+="".concat(n);else if(t.isValidElement(n)){var u=Object.keys(n.props).length,l=c.indexOf(n.type)>-1,f=n.props.children;if(!f&&l&&0===u)i+="<".concat(n.type,"/>");else if(f||l&&0===u)if(n.props.i18nIsDynamicList)i+="<".concat(o,"></").concat(o,">");else if(l&&1===u&&"string"==typeof f)i+="<".concat(n.type,">").concat(f,"</").concat(n.type,">");else{var p=e(f,r);i+="<".concat(o,">").concat(p,"</").concat(o,">")}else i+="<".concat(o,"></").concat(o,">")}else if(null===n)P("Trans: the passed in value is invalid - seems you passed in a null child.");else if("object"===a(n)){var d=n.format,m=s(n,L),h=Object.keys(m);if(1===h.length){var g=d?"".concat(h[0],", ").concat(d):h[0];i+="{{".concat(g,"}}")}else P("react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.",n)}else P("Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.",n)})),i}(r,I)||I.transEmptyNodeValue||u,A=I.hashTransKey,T=u||(A?A(R):R),z=p?f.interpolation:{interpolation:i(i({},f.interpolation),{},{prefix:"#$?",suffix:"?$#"})},B=i(i(i(i({},f),{},{count:o},p),z),{},{defaultValue:R,ns:k}),U=K(m||r,T?N(T,B):R,E,I,B),W=void 0!==c?c:I.defaultTransParent;return W?t.createElement(W,v,U):U},e.Translation=function(e){var n=e.ns,t=e.children,r=u(W(n,s(e,H)),3),i=r[0],a=r[1],o=r[2];return t(i,{i18n:a,lng:a.language},o)},e.composeInitialProps=I,e.date=function(){return""},e.getDefaults=x,e.getI18n=S,e.getInitialProps=k,e.initReactI18next=N,e.number=function(){return""},e.plural=function(){return""},e.select=function(){return""},e.selectOrdinal=function(){return""},e.setDefaults=w,e.setI18n=E,e.time=function(){return""},e.useSSR=M,e.useTranslation=W,e.withSSR=function(){return function(e){function n(n){var r=n.initialI18nStore,a=n.initialLanguage,o=s(n,$);return M(r,a),t.createElement(e,i({},o))}return n.getInitialProps=I(e),n.displayName="withI18nextSSR(".concat(z(e),")"),n.WrappedComponent=e,n}},e.withTranslation=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(r){function a(a){var o=a.forwardedRef,c=s(a,F),l=u(W(e,c),3),f=l[0],p=l[1],d=l[2],m=i(i({},c),{},{t:f,i18n:p,tReady:d});return n.withRef&&o?m.ref=o:!n.withRef&&o&&(m.forwardedRef=o),t.createElement(r,m)}a.displayName="withI18nextTranslation(".concat(z(r),")"),a.WrappedComponent=r;return n.withRef?t.forwardRef((function(e,n){return t.createElement(a,Object.assign({},e,{forwardedRef:n}))})):a}},Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],n):n((e=e||self).ReactI18next={},e.React)}(this,(function(e,n){"use strict";var t="default"in n?n.default:n;function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function i(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?r(Object(t),!0).forEach((function(n){c(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):r(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function s(e,n){if(null==e)return{};var t,r,i=function(e,n){if(null==e)return{};var t,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||(i[t]=e[t]);return i}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}function u(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=e&&("undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null==t)return;var r,i,a=[],o=!0,c=!1;try{for(t=t.call(e);!(o=(r=t.next()).done)&&(a.push(r.value),!n||a.length!==n);o=!0);}catch(e){c=!0,i=e}finally{try{o||null==t.return||t.return()}finally{if(c)throw i}}return a}(e,n)||function(e,n){if(!e)return;if("string"==typeof e)return l(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(e);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return l(e,n)}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}var f={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},p=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function d(e){var n={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},t=e.match(/<\/?([^\s]+?)[/\s>]/);if(t&&(n.name=t[1],(f[t[1]]||"/"===e.charAt(e.length-2))&&(n.voidElement=!0),n.name.startsWith("!--"))){var r=e.indexOf("--\x3e");return{type:"comment",comment:-1!==r?e.slice(4,r):""}}for(var i=new RegExp(p),a=null;null!==(a=i.exec(e));)if(a[0].trim())if(a[1]){var o=a[1].trim(),c=[o,""];o.indexOf("=")>-1&&(c=o.split("=")),n.attrs[c[0]]=c[1],i.lastIndex--}else a[2]&&(n.attrs[a[2]]=a[3].trim().substring(1,a[3].length-1));return n}var m=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,g=/^\s*$/,h=Object.create(null);var v,y=function(e,n){n||(n={}),n.components||(n.components=h);var t,r=[],i=[],a=-1,o=!1;if(0!==e.indexOf("<")){var c=e.indexOf("<");r.push({type:"text",content:-1===c?e:e.substring(0,c)})}return e.replace(m,(function(c,s){if(o){if(c!=="</"+t.name+">")return;o=!1}var u,l="/"!==c.charAt(1),f=c.startsWith("\x3c!--"),p=s+c.length,m=e.charAt(p);if(f){var h=d(c);return a<0?(r.push(h),r):((u=i[a]).children.push(h),r)}if(l&&(a++,"tag"===(t=d(c)).type&&n.components[t.name]&&(t.type="component",o=!0),t.voidElement||o||!m||"<"===m||t.children.push({type:"text",content:e.slice(p,e.indexOf("<",p))}),0===a&&r.push(t),(u=i[a-1])&&u.children.push(t),i[a]=t),(!l||t.voidElement)&&(a>-1&&(t.voidElement||t.name===c.slice(2,-1))&&(a--,t=-1===a?r:i[a]),!o&&"<"!==m&&m)){u=-1===a?r:i[a].children;var v=e.indexOf("<",p),y=e.slice(p,-1===v?void 0:v);g.test(y)&&(y=" "),(v>-1&&a+u.length>=0||" "!==y)&&u.push({type:"text",content:y})}})),r},b={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0},O=t.createContext();function w(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};b=i(i({},b),e)}function x(){return b}var j=function(){function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.usedNamespaces={}}var n,t,r;return n=e,(t=[{key:"addUsedNamespaces",value:function(e){var n=this;e.forEach((function(e){n.usedNamespaces[e]||(n.usedNamespaces[e]=!0)}))}},{key:"getUsedNamespaces",value:function(){return Object.keys(this.usedNamespaces)}}])&&o(n.prototype,t),r&&o(n,r),e}();function E(e){v=e}function S(){return v}var N={type:"3rdParty",init:function(e){w(e.options.react),E(e)}};function I(e){return function(n){return new Promise((function(t){var r=k();e.getInitialProps?e.getInitialProps(n).then((function(e){t(i(i({},e),r))})):t(r)}))}}function k(){var e=S(),n=e.reportNamespaces?e.reportNamespaces.getUsedNamespaces():[],t={},r={};return e.languages.forEach((function(t){r[t]={},n.forEach((function(n){r[t][n]=e.getResourceBundle(t,n)||{}}))})),t.initialI18nStore=r,t.initialLanguage=e.language,t}function P(){if(console&&console.warn){for(var e,n=arguments.length,t=new Array(n),r=0;r<n;r++)t[r]=arguments[r];"string"==typeof t[0]&&(t[0]="react-i18next:: ".concat(t[0])),(e=console).warn.apply(e,t)}}var R={};function C(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];"string"==typeof n[0]&&R[n[0]]||("string"==typeof n[0]&&(R[n[0]]=new Date),P.apply(void 0,n))}function A(e,n,t){e.loadNamespaces(n,(function(){if(e.isInitialized)t();else{e.on("initialized",(function n(){setTimeout((function(){e.off("initialized",n)}),0),t()}))}}))}function T(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!n.languages||!n.languages.length)return C("i18n.languages were undefined or empty",n.languages),!0;var r=n.languages[0],i=!!n.options&&n.options.fallbackLng,a=n.languages[n.languages.length-1];if("cimode"===r.toLowerCase())return!0;var o=function(e,t){var r=n.services.backendConnector.state["".concat(e,"|").concat(t)];return-1===r||2===r};return!(t.bindI18n&&t.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!o(n.isLanguageChangingTo,e))&&(!!n.hasResourceBundle(r,e)||(!n.services.backendConnector.backend||!(!o(r,e)||i&&!o(a,e))))}function z(e){return e.displayName||e.name||("string"==typeof e&&e.length>0?e:"Unknown")}var L=["format"],D=["children","count","parent","i18nKey","tOptions","values","defaults","components","ns","i18n","t"];function B(e,n){if(!e)return!1;var t=e.props?e.props.children:e.children;return n?t.length>0:!!t}function U(e){return e?e&&e.children?e.children:e.props&&e.props.children:[]}function V(e){return Array.isArray(e)?e:[e]}function K(e,n,r,o,c){if(""===n)return[];var s=o.transKeepBasicHtmlNodesFor||[],u=n&&new RegExp(s.join("|")).test(n);if(!e&&!u)return[n];var l={};!function e(n){V(n).forEach((function(n){"string"!=typeof n&&(B(n)?e(U(n)):"object"!==a(n)||t.isValidElement(n)||Object.assign(l,n))}))}(e);var f=y("<0>".concat(n,"</0>")),p=i(i({},l),c);function d(e,n,r){var i=U(e),a=g(i,n.children,r);return function(e){return"[object Array]"===Object.prototype.toString.call(e)&&e.every((function(e){return t.isValidElement(e)}))}(i)&&0===a.length?i:a}function m(e,n,r,a,o){e.dummy&&(e.children=n),r.push(t.cloneElement(e,i(i({},e.props),{},{key:a}),o?void 0:n))}function g(n,c,l){var f=V(n);return V(c).reduce((function(n,c,h){var v,y,b,O=c.children&&c.children[0]&&c.children[0].content&&r.services.interpolator.interpolate(c.children[0].content,p,r.language);if("tag"===c.type){var w=f[parseInt(c.name,10)];!w&&1===l.length&&l[0][c.name]&&(w=l[0][c.name]),w||(w={});var x=0!==Object.keys(c.attrs).length?(v={props:c.attrs},(b=i({},y=w)).props=Object.assign(v.props,y.props),b):w,j=t.isValidElement(x),E=j&&B(c,!0)&&!c.voidElement,S=u&&"object"===a(x)&&x.dummy&&!j,N="object"===a(e)&&null!==e&&Object.hasOwnProperty.call(e,c.name);if("string"==typeof x){var I=r.services.interpolator.interpolate(x,p,r.language);n.push(I)}else if(B(x)||E){m(x,d(x,c,l),n,h)}else if(S){var k=g(f,c.children,l);n.push(t.cloneElement(x,i(i({},x.props),{},{key:h}),k))}else if(Number.isNaN(parseFloat(c.name))){if(N)m(x,d(x,c,l),n,h,c.voidElement);else if(o.transSupportBasicHtmlNodes&&s.indexOf(c.name)>-1)if(c.voidElement)n.push(t.createElement(c.name,{key:"".concat(c.name,"-").concat(h)}));else{var P=g(f,c.children,l);n.push(t.createElement(c.name,{key:"".concat(c.name,"-").concat(h)},P))}else if(c.voidElement)n.push("<".concat(c.name," />"));else{var R=g(f,c.children,l);n.push("<".concat(c.name,">").concat(R,"</").concat(c.name,">"))}}else if("object"!==a(x)||j)1===c.children.length&&O?n.push(t.cloneElement(x,i(i({},x.props),{},{key:h}),O)):n.push(t.cloneElement(x,i(i({},x.props),{},{key:h})));else{var C=c.children[0]?O:null;C&&n.push(C)}}else if("text"===c.type){var A=o.transWrapTextNodes,T=r.services.interpolator.interpolate(c.content,p,r.language);A?n.push(t.createElement(A,{key:"".concat(c.name,"-").concat(h)},T)):n.push(T)}return n}),[])}return U(g([{dummy:!0,children:e}],f,V(e||[]))[0])}function W(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.i18n,a=n.useContext(O)||{},o=a.i18n,c=a.defaultNS,s=r||o||S();if(s&&!s.reportNamespaces&&(s.reportNamespaces=new j),!s){C("You will need to pass in an i18next instance by using initReactI18next");var l=function(e){return Array.isArray(e)?e[e.length-1]:e},f=[l,{},!1];return f.t=l,f.i18n={},f.ready=!1,f}s.options.react&&void 0!==s.options.react.wait&&C("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");var p=i(i(i({},x()),s.options.react),t),d=p.useSuspense,m=e||c||s.options&&s.options.defaultNS;m="string"==typeof m?[m]:m||["translation"],s.reportNamespaces.addUsedNamespaces&&s.reportNamespaces.addUsedNamespaces(m);var g=(s.isInitialized||s.initializedStoreOnce)&&m.every((function(e){return T(e,s,p)}));function h(){return s.getFixedT(null,"fallback"===p.nsMode?m:m[0])}var v=n.useState(h),y=u(v,2),b=y[0],w=y[1],E=n.useRef(!0);n.useEffect((function(){var e=p.bindI18n,n=p.bindI18nStore;function t(){E.current&&w(h)}return E.current=!0,g||d||A(s,m,(function(){E.current&&w(h)})),e&&s&&s.on(e,t),n&&s&&s.store.on(n,t),function(){E.current=!1,e&&s&&e.split(" ").forEach((function(e){return s.off(e,t)})),n&&s&&n.split(" ").forEach((function(e){return s.store.off(e,t)}))}}),[s,m.join()]);var N=n.useRef(!0);n.useEffect((function(){E.current&&!N.current&&w(h),N.current=!1}),[s]);var I=[b,s,g];if(I.t=b,I.i18n=s,I.ready=g,g)return I;if(!g&&!d)return I;throw new Promise((function(e){A(s,m,(function(){e()}))}))}var F=["forwardedRef"];var H=["ns","children"];function M(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=r.i18n,a=n.useContext(O)||{},o=a.i18n,c=i||o||S();c.options&&c.options.isClone||(e&&!c.initializedStoreOnce&&(c.services.resourceStore.data=e,c.options.ns=Object.values(e).reduce((function(e,n){return Object.keys(n).forEach((function(n){e.indexOf(n)<0&&e.push(n)})),e}),c.options.ns),c.initializedStoreOnce=!0,c.isInitialized=!0),t&&!c.initializedLanguageOnce&&(c.changeLanguage(t),c.initializedLanguageOnce=!0))}var $=["initialI18nStore","initialLanguage"];e.I18nContext=O,e.I18nextProvider=function(e){var t=e.i18n,r=e.defaultNS,i=e.children,a=n.useMemo((function(){return{i18n:t,defaultNS:r}}),[t,r]);return n.createElement(O.Provider,{value:a},i)},e.Trans=function(e){var r=e.children,o=e.count,c=e.parent,u=e.i18nKey,l=e.tOptions,f=void 0===l?{}:l,p=e.values,d=e.defaults,m=e.components,g=e.ns,h=e.i18n,v=e.t,y=s(e,D),b=n.useContext(O)||{},w=b.i18n,j=b.defaultNS,E=h||w||S();if(!E)return C("You will need to pass in an i18next instance by using i18nextReactModule"),r;var N=v||E.t.bind(E)||function(e){return e},I=i(i({},x()),E.options&&E.options.react),k=g||N.ns||j||E.options&&E.options.defaultNS;k="string"==typeof k?[k]:k||["translation"];var R=d||function e(n,r){if(!n)return"";var i="",o=V(n),c=r.transKeepBasicHtmlNodesFor||[];return o.forEach((function(n,o){if("string"==typeof n)i+="".concat(n);else if(t.isValidElement(n)){var u=Object.keys(n.props).length,l=c.indexOf(n.type)>-1,f=n.props.children;if(!f&&l&&0===u)i+="<".concat(n.type,"/>");else if(f||l&&0===u)if(n.props.i18nIsDynamicList)i+="<".concat(o,"></").concat(o,">");else if(l&&1===u&&"string"==typeof f)i+="<".concat(n.type,">").concat(f,"</").concat(n.type,">");else{var p=e(f,r);i+="<".concat(o,">").concat(p,"</").concat(o,">")}else i+="<".concat(o,"></").concat(o,">")}else if(null===n)P("Trans: the passed in value is invalid - seems you passed in a null child.");else if("object"===a(n)){var d=n.format,m=s(n,L),g=Object.keys(m);if(1===g.length){var h=d?"".concat(g[0],", ").concat(d):g[0];i+="{{".concat(h,"}}")}else P("react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.",n)}else P("Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.",n)})),i}(r,I)||I.transEmptyNodeValue||u,A=I.hashTransKey,T=u||(A?A(R):R),z=p?f.interpolation:{interpolation:i(i({},f.interpolation),{},{prefix:"#$?",suffix:"?$#"})},B=i(i(i(i({},f),{},{count:o},p),z),{},{defaultValue:R,ns:k}),U=K(m||r,T?N(T,B):R,E,I,B),W=void 0!==c?c:I.defaultTransParent;return W?t.createElement(W,y,U):U},e.Translation=function(e){var n=e.ns,t=e.children,r=u(W(n,s(e,H)),3),i=r[0],a=r[1],o=r[2];return t(i,{i18n:a,lng:a.language},o)},e.composeInitialProps=I,e.date=function(){return""},e.getDefaults=x,e.getI18n=S,e.getInitialProps=k,e.initReactI18next=N,e.number=function(){return""},e.plural=function(){return""},e.select=function(){return""},e.selectOrdinal=function(){return""},e.setDefaults=w,e.setI18n=E,e.time=function(){return""},e.useSSR=M,e.useTranslation=W,e.withSSR=function(){return function(e){function n(n){var r=n.initialI18nStore,a=n.initialLanguage,o=s(n,$);return M(r,a),t.createElement(e,i({},o))}return n.getInitialProps=I(e),n.displayName="withI18nextSSR(".concat(z(e),")"),n.WrappedComponent=e,n}},e.withTranslation=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(r){function a(a){var o=a.forwardedRef,c=s(a,F),l=u(W(e,c),3),f=l[0],p=l[1],d=l[2],m=i(i({},c),{},{t:f,i18n:p,tReady:d});return n.withRef&&o?m.ref=o:!n.withRef&&o&&(m.forwardedRef=o),t.createElement(r,m)}a.displayName="withI18nextTranslation(".concat(z(r),")"),a.WrappedComponent=r;return n.withRef?t.forwardRef((function(e,n){return t.createElement(a,Object.assign({},e,{forwardedRef:n}))})):a}},Object.defineProperty(e,"__esModule",{value:!0})}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-i18next",
3
- "version": "11.11.2",
3
+ "version": "11.11.3",
4
4
  "description": "Internationalization for react done right. Using the i18next i18n ecosystem.",
5
5
  "main": "dist/commonjs/index.js",
6
6
  "types": "./index.d.ts",
package/react-i18next.js CHANGED
@@ -569,8 +569,9 @@
569
569
  }
570
570
 
571
571
  getData(children);
572
- var interpolatedString = i18n.services.interpolator.interpolate(targetString, _objectSpread2(_objectSpread2({}, data), combinedTOpts), i18n.language);
573
- var ast = c.parse("<0>".concat(interpolatedString, "</0>"));
572
+ var ast = c.parse("<0>".concat(targetString, "</0>"));
573
+
574
+ var opts = _objectSpread2(_objectSpread2({}, data), combinedTOpts);
574
575
 
575
576
  function renderInner(child, node, rootReactNode) {
576
577
  var childs = getChildren(child);
@@ -589,7 +590,7 @@
589
590
  var reactNodes = getAsArray(reactNode);
590
591
  var astNodes = getAsArray(astNode);
591
592
  return astNodes.reduce(function (mem, node, i) {
592
- var translationContent = node.children && node.children[0] && node.children[0].content;
593
+ var translationContent = node.children && node.children[0] && node.children[0].content && i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);
593
594
 
594
595
  if (node.type === 'tag') {
595
596
  var tmp = reactNodes[parseInt(node.name, 10)];
@@ -604,7 +605,8 @@
604
605
  var isKnownComponent = _typeof(children) === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);
605
606
 
606
607
  if (typeof child === 'string') {
607
- mem.push(child);
608
+ var value = i18n.services.interpolator.interpolate(child, opts, i18n.language);
609
+ mem.push(value);
608
610
  } else if (hasChildren(child) || isValidTranslationWithChildren) {
609
611
  var inner = renderInner(child, node, rootReactNode);
610
612
  pushTranslatedJSX(child, inner, mem, i);
@@ -653,12 +655,14 @@
653
655
  } else if (node.type === 'text') {
654
656
  var wrapTextNodes = i18nOptions.transWrapTextNodes;
655
657
 
658
+ var _content = i18n.services.interpolator.interpolate(node.content, opts, i18n.language);
659
+
656
660
  if (wrapTextNodes) {
657
661
  mem.push(React__default.createElement(wrapTextNodes, {
658
662
  key: "".concat(node.name, "-").concat(i)
659
- }, node.content));
663
+ }, _content));
660
664
  } else {
661
- mem.push(node.content);
665
+ mem.push(_content);
662
666
  }
663
667
  }
664
668
 
@@ -1 +1 @@
1
- !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],n):n((e=e||self).ReactI18next={},e.React)}(this,(function(e,n){"use strict";var t="default"in n?n.default:n;function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function i(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?r(Object(t),!0).forEach((function(n){c(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):r(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function s(e,n){if(null==e)return{};var t,r,i=function(e,n){if(null==e)return{};var t,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||(i[t]=e[t]);return i}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}function u(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=e&&("undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null==t)return;var r,i,a=[],o=!0,c=!1;try{for(t=t.call(e);!(o=(r=t.next()).done)&&(a.push(r.value),!n||a.length!==n);o=!0);}catch(e){c=!0,i=e}finally{try{o||null==t.return||t.return()}finally{if(c)throw i}}return a}(e,n)||function(e,n){if(!e)return;if("string"==typeof e)return l(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(e);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return l(e,n)}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}var f={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},p=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function d(e){var n={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},t=e.match(/<\/?([^\s]+?)[/\s>]/);if(t&&(n.name=t[1],(f[t[1]]||"/"===e.charAt(e.length-2))&&(n.voidElement=!0),n.name.startsWith("!--"))){var r=e.indexOf("--\x3e");return{type:"comment",comment:-1!==r?e.slice(4,r):""}}for(var i=new RegExp(p),a=null;null!==(a=i.exec(e));)if(a[0].trim())if(a[1]){var o=a[1].trim(),c=[o,""];o.indexOf("=")>-1&&(c=o.split("=")),n.attrs[c[0]]=c[1],i.lastIndex--}else a[2]&&(n.attrs[a[2]]=a[3].trim().substring(1,a[3].length-1));return n}var m=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,h=/^\s*$/,g=Object.create(null);var y,v=function(e,n){n||(n={}),n.components||(n.components=g);var t,r=[],i=[],a=-1,o=!1;if(0!==e.indexOf("<")){var c=e.indexOf("<");r.push({type:"text",content:-1===c?e:e.substring(0,c)})}return e.replace(m,(function(c,s){if(o){if(c!=="</"+t.name+">")return;o=!1}var u,l="/"!==c.charAt(1),f=c.startsWith("\x3c!--"),p=s+c.length,m=e.charAt(p);if(f){var g=d(c);return a<0?(r.push(g),r):((u=i[a]).children.push(g),r)}if(l&&(a++,"tag"===(t=d(c)).type&&n.components[t.name]&&(t.type="component",o=!0),t.voidElement||o||!m||"<"===m||t.children.push({type:"text",content:e.slice(p,e.indexOf("<",p))}),0===a&&r.push(t),(u=i[a-1])&&u.children.push(t),i[a]=t),(!l||t.voidElement)&&(a>-1&&(t.voidElement||t.name===c.slice(2,-1))&&(a--,t=-1===a?r:i[a]),!o&&"<"!==m&&m)){u=-1===a?r:i[a].children;var y=e.indexOf("<",p),v=e.slice(p,-1===y?void 0:y);h.test(v)&&(v=" "),(y>-1&&a+u.length>=0||" "!==v)&&u.push({type:"text",content:v})}})),r},b={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0},O=t.createContext();function w(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};b=i(i({},b),e)}function x(){return b}var j=function(){function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.usedNamespaces={}}var n,t,r;return n=e,(t=[{key:"addUsedNamespaces",value:function(e){var n=this;e.forEach((function(e){n.usedNamespaces[e]||(n.usedNamespaces[e]=!0)}))}},{key:"getUsedNamespaces",value:function(){return Object.keys(this.usedNamespaces)}}])&&o(n.prototype,t),r&&o(n,r),e}();function E(e){y=e}function S(){return y}var N={type:"3rdParty",init:function(e){w(e.options.react),E(e)}};function I(e){return function(n){return new Promise((function(t){var r=k();e.getInitialProps?e.getInitialProps(n).then((function(e){t(i(i({},e),r))})):t(r)}))}}function k(){var e=S(),n=e.reportNamespaces?e.reportNamespaces.getUsedNamespaces():[],t={},r={};return e.languages.forEach((function(t){r[t]={},n.forEach((function(n){r[t][n]=e.getResourceBundle(t,n)||{}}))})),t.initialI18nStore=r,t.initialLanguage=e.language,t}function P(){if(console&&console.warn){for(var e,n=arguments.length,t=new Array(n),r=0;r<n;r++)t[r]=arguments[r];"string"==typeof t[0]&&(t[0]="react-i18next:: ".concat(t[0])),(e=console).warn.apply(e,t)}}var R={};function C(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];"string"==typeof n[0]&&R[n[0]]||("string"==typeof n[0]&&(R[n[0]]=new Date),P.apply(void 0,n))}function A(e,n,t){e.loadNamespaces(n,(function(){if(e.isInitialized)t();else{e.on("initialized",(function n(){setTimeout((function(){e.off("initialized",n)}),0),t()}))}}))}function T(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!n.languages||!n.languages.length)return C("i18n.languages were undefined or empty",n.languages),!0;var r=n.languages[0],i=!!n.options&&n.options.fallbackLng,a=n.languages[n.languages.length-1];if("cimode"===r.toLowerCase())return!0;var o=function(e,t){var r=n.services.backendConnector.state["".concat(e,"|").concat(t)];return-1===r||2===r};return!(t.bindI18n&&t.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!o(n.isLanguageChangingTo,e))&&(!!n.hasResourceBundle(r,e)||(!n.services.backendConnector.backend||!(!o(r,e)||i&&!o(a,e))))}function z(e){return e.displayName||e.name||("string"==typeof e&&e.length>0?e:"Unknown")}var L=["format"],D=["children","count","parent","i18nKey","tOptions","values","defaults","components","ns","i18n","t"];function B(e,n){if(!e)return!1;var t=e.props?e.props.children:e.children;return n?t.length>0:!!t}function U(e){return e?e&&e.children?e.children:e.props&&e.props.children:[]}function V(e){return Array.isArray(e)?e:[e]}function K(e,n,r,o,c){if(""===n)return[];var s=o.transKeepBasicHtmlNodesFor||[],u=n&&new RegExp(s.join("|")).test(n);if(!e&&!u)return[n];var l={};!function e(n){V(n).forEach((function(n){"string"!=typeof n&&(B(n)?e(U(n)):"object"!==a(n)||t.isValidElement(n)||Object.assign(l,n))}))}(e);var f=r.services.interpolator.interpolate(n,i(i({},l),c),r.language),p=v("<0>".concat(f,"</0>"));function d(e,n,r){var i=U(e),a=h(i,n.children,r);return function(e){return"[object Array]"===Object.prototype.toString.call(e)&&e.every((function(e){return t.isValidElement(e)}))}(i)&&0===a.length?i:a}function m(e,n,r,a,o){e.dummy&&(e.children=n),r.push(t.cloneElement(e,i(i({},e.props),{},{key:a}),o?void 0:n))}function h(n,r,c){var l=V(n);return V(r).reduce((function(n,r,f){var p,g,y,v=r.children&&r.children[0]&&r.children[0].content;if("tag"===r.type){var b=l[parseInt(r.name,10)];!b&&1===c.length&&c[0][r.name]&&(b=c[0][r.name]),b||(b={});var O=0!==Object.keys(r.attrs).length?(p={props:r.attrs},(y=i({},g=b)).props=Object.assign(p.props,g.props),y):b,w=t.isValidElement(O),x=w&&B(r,!0)&&!r.voidElement,j=u&&"object"===a(O)&&O.dummy&&!w,E="object"===a(e)&&null!==e&&Object.hasOwnProperty.call(e,r.name);if("string"==typeof O)n.push(O);else if(B(O)||x){m(O,d(O,r,c),n,f)}else if(j){var S=h(l,r.children,c);n.push(t.cloneElement(O,i(i({},O.props),{},{key:f}),S))}else if(Number.isNaN(parseFloat(r.name))){if(E)m(O,d(O,r,c),n,f,r.voidElement);else if(o.transSupportBasicHtmlNodes&&s.indexOf(r.name)>-1)if(r.voidElement)n.push(t.createElement(r.name,{key:"".concat(r.name,"-").concat(f)}));else{var N=h(l,r.children,c);n.push(t.createElement(r.name,{key:"".concat(r.name,"-").concat(f)},N))}else if(r.voidElement)n.push("<".concat(r.name," />"));else{var I=h(l,r.children,c);n.push("<".concat(r.name,">").concat(I,"</").concat(r.name,">"))}}else if("object"!==a(O)||w)1===r.children.length&&v?n.push(t.cloneElement(O,i(i({},O.props),{},{key:f}),v)):n.push(t.cloneElement(O,i(i({},O.props),{},{key:f})));else{var k=r.children[0]?v:null;k&&n.push(k)}}else if("text"===r.type){var P=o.transWrapTextNodes;P?n.push(t.createElement(P,{key:"".concat(r.name,"-").concat(f)},r.content)):n.push(r.content)}return n}),[])}return U(h([{dummy:!0,children:e}],p,V(e||[]))[0])}function W(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.i18n,a=n.useContext(O)||{},o=a.i18n,c=a.defaultNS,s=r||o||S();if(s&&!s.reportNamespaces&&(s.reportNamespaces=new j),!s){C("You will need to pass in an i18next instance by using initReactI18next");var l=function(e){return Array.isArray(e)?e[e.length-1]:e},f=[l,{},!1];return f.t=l,f.i18n={},f.ready=!1,f}s.options.react&&void 0!==s.options.react.wait&&C("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");var p=i(i(i({},x()),s.options.react),t),d=p.useSuspense,m=e||c||s.options&&s.options.defaultNS;m="string"==typeof m?[m]:m||["translation"],s.reportNamespaces.addUsedNamespaces&&s.reportNamespaces.addUsedNamespaces(m);var h=(s.isInitialized||s.initializedStoreOnce)&&m.every((function(e){return T(e,s,p)}));function g(){return s.getFixedT(null,"fallback"===p.nsMode?m:m[0])}var y=n.useState(g),v=u(y,2),b=v[0],w=v[1],E=n.useRef(!0);n.useEffect((function(){var e=p.bindI18n,n=p.bindI18nStore;function t(){E.current&&w(g)}return E.current=!0,h||d||A(s,m,(function(){E.current&&w(g)})),e&&s&&s.on(e,t),n&&s&&s.store.on(n,t),function(){E.current=!1,e&&s&&e.split(" ").forEach((function(e){return s.off(e,t)})),n&&s&&n.split(" ").forEach((function(e){return s.store.off(e,t)}))}}),[s,m.join()]);var N=n.useRef(!0);n.useEffect((function(){E.current&&!N.current&&w(g),N.current=!1}),[s]);var I=[b,s,h];if(I.t=b,I.i18n=s,I.ready=h,h)return I;if(!h&&!d)return I;throw new Promise((function(e){A(s,m,(function(){e()}))}))}var F=["forwardedRef"];var H=["ns","children"];function M(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=r.i18n,a=n.useContext(O)||{},o=a.i18n,c=i||o||S();c.options&&c.options.isClone||(e&&!c.initializedStoreOnce&&(c.services.resourceStore.data=e,c.options.ns=Object.values(e).reduce((function(e,n){return Object.keys(n).forEach((function(n){e.indexOf(n)<0&&e.push(n)})),e}),c.options.ns),c.initializedStoreOnce=!0,c.isInitialized=!0),t&&!c.initializedLanguageOnce&&(c.changeLanguage(t),c.initializedLanguageOnce=!0))}var $=["initialI18nStore","initialLanguage"];e.I18nContext=O,e.I18nextProvider=function(e){var t=e.i18n,r=e.defaultNS,i=e.children,a=n.useMemo((function(){return{i18n:t,defaultNS:r}}),[t,r]);return n.createElement(O.Provider,{value:a},i)},e.Trans=function(e){var r=e.children,o=e.count,c=e.parent,u=e.i18nKey,l=e.tOptions,f=void 0===l?{}:l,p=e.values,d=e.defaults,m=e.components,h=e.ns,g=e.i18n,y=e.t,v=s(e,D),b=n.useContext(O)||{},w=b.i18n,j=b.defaultNS,E=g||w||S();if(!E)return C("You will need to pass in an i18next instance by using i18nextReactModule"),r;var N=y||E.t.bind(E)||function(e){return e},I=i(i({},x()),E.options&&E.options.react),k=h||N.ns||j||E.options&&E.options.defaultNS;k="string"==typeof k?[k]:k||["translation"];var R=d||function e(n,r){if(!n)return"";var i="",o=V(n),c=r.transKeepBasicHtmlNodesFor||[];return o.forEach((function(n,o){if("string"==typeof n)i+="".concat(n);else if(t.isValidElement(n)){var u=Object.keys(n.props).length,l=c.indexOf(n.type)>-1,f=n.props.children;if(!f&&l&&0===u)i+="<".concat(n.type,"/>");else if(f||l&&0===u)if(n.props.i18nIsDynamicList)i+="<".concat(o,"></").concat(o,">");else if(l&&1===u&&"string"==typeof f)i+="<".concat(n.type,">").concat(f,"</").concat(n.type,">");else{var p=e(f,r);i+="<".concat(o,">").concat(p,"</").concat(o,">")}else i+="<".concat(o,"></").concat(o,">")}else if(null===n)P("Trans: the passed in value is invalid - seems you passed in a null child.");else if("object"===a(n)){var d=n.format,m=s(n,L),h=Object.keys(m);if(1===h.length){var g=d?"".concat(h[0],", ").concat(d):h[0];i+="{{".concat(g,"}}")}else P("react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.",n)}else P("Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.",n)})),i}(r,I)||I.transEmptyNodeValue||u,A=I.hashTransKey,T=u||(A?A(R):R),z=p?f.interpolation:{interpolation:i(i({},f.interpolation),{},{prefix:"#$?",suffix:"?$#"})},B=i(i(i(i({},f),{},{count:o},p),z),{},{defaultValue:R,ns:k}),U=K(m||r,T?N(T,B):R,E,I,B),W=void 0!==c?c:I.defaultTransParent;return W?t.createElement(W,v,U):U},e.Translation=function(e){var n=e.ns,t=e.children,r=u(W(n,s(e,H)),3),i=r[0],a=r[1],o=r[2];return t(i,{i18n:a,lng:a.language},o)},e.composeInitialProps=I,e.date=function(){return""},e.getDefaults=x,e.getI18n=S,e.getInitialProps=k,e.initReactI18next=N,e.number=function(){return""},e.plural=function(){return""},e.select=function(){return""},e.selectOrdinal=function(){return""},e.setDefaults=w,e.setI18n=E,e.time=function(){return""},e.useSSR=M,e.useTranslation=W,e.withSSR=function(){return function(e){function n(n){var r=n.initialI18nStore,a=n.initialLanguage,o=s(n,$);return M(r,a),t.createElement(e,i({},o))}return n.getInitialProps=I(e),n.displayName="withI18nextSSR(".concat(z(e),")"),n.WrappedComponent=e,n}},e.withTranslation=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(r){function a(a){var o=a.forwardedRef,c=s(a,F),l=u(W(e,c),3),f=l[0],p=l[1],d=l[2],m=i(i({},c),{},{t:f,i18n:p,tReady:d});return n.withRef&&o?m.ref=o:!n.withRef&&o&&(m.forwardedRef=o),t.createElement(r,m)}a.displayName="withI18nextTranslation(".concat(z(r),")"),a.WrappedComponent=r;return n.withRef?t.forwardRef((function(e,n){return t.createElement(a,Object.assign({},e,{forwardedRef:n}))})):a}},Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],n):n((e=e||self).ReactI18next={},e.React)}(this,(function(e,n){"use strict";var t="default"in n?n.default:n;function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function i(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?r(Object(t),!0).forEach((function(n){c(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):r(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function s(e,n){if(null==e)return{};var t,r,i=function(e,n){if(null==e)return{};var t,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||(i[t]=e[t]);return i}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}function u(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t=e&&("undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null==t)return;var r,i,a=[],o=!0,c=!1;try{for(t=t.call(e);!(o=(r=t.next()).done)&&(a.push(r.value),!n||a.length!==n);o=!0);}catch(e){c=!0,i=e}finally{try{o||null==t.return||t.return()}finally{if(c)throw i}}return a}(e,n)||function(e,n){if(!e)return;if("string"==typeof e)return l(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(e);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return l(e,n)}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}var f={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},p=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function d(e){var n={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},t=e.match(/<\/?([^\s]+?)[/\s>]/);if(t&&(n.name=t[1],(f[t[1]]||"/"===e.charAt(e.length-2))&&(n.voidElement=!0),n.name.startsWith("!--"))){var r=e.indexOf("--\x3e");return{type:"comment",comment:-1!==r?e.slice(4,r):""}}for(var i=new RegExp(p),a=null;null!==(a=i.exec(e));)if(a[0].trim())if(a[1]){var o=a[1].trim(),c=[o,""];o.indexOf("=")>-1&&(c=o.split("=")),n.attrs[c[0]]=c[1],i.lastIndex--}else a[2]&&(n.attrs[a[2]]=a[3].trim().substring(1,a[3].length-1));return n}var m=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,g=/^\s*$/,h=Object.create(null);var v,y=function(e,n){n||(n={}),n.components||(n.components=h);var t,r=[],i=[],a=-1,o=!1;if(0!==e.indexOf("<")){var c=e.indexOf("<");r.push({type:"text",content:-1===c?e:e.substring(0,c)})}return e.replace(m,(function(c,s){if(o){if(c!=="</"+t.name+">")return;o=!1}var u,l="/"!==c.charAt(1),f=c.startsWith("\x3c!--"),p=s+c.length,m=e.charAt(p);if(f){var h=d(c);return a<0?(r.push(h),r):((u=i[a]).children.push(h),r)}if(l&&(a++,"tag"===(t=d(c)).type&&n.components[t.name]&&(t.type="component",o=!0),t.voidElement||o||!m||"<"===m||t.children.push({type:"text",content:e.slice(p,e.indexOf("<",p))}),0===a&&r.push(t),(u=i[a-1])&&u.children.push(t),i[a]=t),(!l||t.voidElement)&&(a>-1&&(t.voidElement||t.name===c.slice(2,-1))&&(a--,t=-1===a?r:i[a]),!o&&"<"!==m&&m)){u=-1===a?r:i[a].children;var v=e.indexOf("<",p),y=e.slice(p,-1===v?void 0:v);g.test(y)&&(y=" "),(v>-1&&a+u.length>=0||" "!==y)&&u.push({type:"text",content:y})}})),r},b={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0},O=t.createContext();function w(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};b=i(i({},b),e)}function x(){return b}var j=function(){function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.usedNamespaces={}}var n,t,r;return n=e,(t=[{key:"addUsedNamespaces",value:function(e){var n=this;e.forEach((function(e){n.usedNamespaces[e]||(n.usedNamespaces[e]=!0)}))}},{key:"getUsedNamespaces",value:function(){return Object.keys(this.usedNamespaces)}}])&&o(n.prototype,t),r&&o(n,r),e}();function E(e){v=e}function S(){return v}var N={type:"3rdParty",init:function(e){w(e.options.react),E(e)}};function I(e){return function(n){return new Promise((function(t){var r=k();e.getInitialProps?e.getInitialProps(n).then((function(e){t(i(i({},e),r))})):t(r)}))}}function k(){var e=S(),n=e.reportNamespaces?e.reportNamespaces.getUsedNamespaces():[],t={},r={};return e.languages.forEach((function(t){r[t]={},n.forEach((function(n){r[t][n]=e.getResourceBundle(t,n)||{}}))})),t.initialI18nStore=r,t.initialLanguage=e.language,t}function P(){if(console&&console.warn){for(var e,n=arguments.length,t=new Array(n),r=0;r<n;r++)t[r]=arguments[r];"string"==typeof t[0]&&(t[0]="react-i18next:: ".concat(t[0])),(e=console).warn.apply(e,t)}}var R={};function C(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];"string"==typeof n[0]&&R[n[0]]||("string"==typeof n[0]&&(R[n[0]]=new Date),P.apply(void 0,n))}function A(e,n,t){e.loadNamespaces(n,(function(){if(e.isInitialized)t();else{e.on("initialized",(function n(){setTimeout((function(){e.off("initialized",n)}),0),t()}))}}))}function T(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!n.languages||!n.languages.length)return C("i18n.languages were undefined or empty",n.languages),!0;var r=n.languages[0],i=!!n.options&&n.options.fallbackLng,a=n.languages[n.languages.length-1];if("cimode"===r.toLowerCase())return!0;var o=function(e,t){var r=n.services.backendConnector.state["".concat(e,"|").concat(t)];return-1===r||2===r};return!(t.bindI18n&&t.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!o(n.isLanguageChangingTo,e))&&(!!n.hasResourceBundle(r,e)||(!n.services.backendConnector.backend||!(!o(r,e)||i&&!o(a,e))))}function z(e){return e.displayName||e.name||("string"==typeof e&&e.length>0?e:"Unknown")}var L=["format"],D=["children","count","parent","i18nKey","tOptions","values","defaults","components","ns","i18n","t"];function B(e,n){if(!e)return!1;var t=e.props?e.props.children:e.children;return n?t.length>0:!!t}function U(e){return e?e&&e.children?e.children:e.props&&e.props.children:[]}function V(e){return Array.isArray(e)?e:[e]}function K(e,n,r,o,c){if(""===n)return[];var s=o.transKeepBasicHtmlNodesFor||[],u=n&&new RegExp(s.join("|")).test(n);if(!e&&!u)return[n];var l={};!function e(n){V(n).forEach((function(n){"string"!=typeof n&&(B(n)?e(U(n)):"object"!==a(n)||t.isValidElement(n)||Object.assign(l,n))}))}(e);var f=y("<0>".concat(n,"</0>")),p=i(i({},l),c);function d(e,n,r){var i=U(e),a=g(i,n.children,r);return function(e){return"[object Array]"===Object.prototype.toString.call(e)&&e.every((function(e){return t.isValidElement(e)}))}(i)&&0===a.length?i:a}function m(e,n,r,a,o){e.dummy&&(e.children=n),r.push(t.cloneElement(e,i(i({},e.props),{},{key:a}),o?void 0:n))}function g(n,c,l){var f=V(n);return V(c).reduce((function(n,c,h){var v,y,b,O=c.children&&c.children[0]&&c.children[0].content&&r.services.interpolator.interpolate(c.children[0].content,p,r.language);if("tag"===c.type){var w=f[parseInt(c.name,10)];!w&&1===l.length&&l[0][c.name]&&(w=l[0][c.name]),w||(w={});var x=0!==Object.keys(c.attrs).length?(v={props:c.attrs},(b=i({},y=w)).props=Object.assign(v.props,y.props),b):w,j=t.isValidElement(x),E=j&&B(c,!0)&&!c.voidElement,S=u&&"object"===a(x)&&x.dummy&&!j,N="object"===a(e)&&null!==e&&Object.hasOwnProperty.call(e,c.name);if("string"==typeof x){var I=r.services.interpolator.interpolate(x,p,r.language);n.push(I)}else if(B(x)||E){m(x,d(x,c,l),n,h)}else if(S){var k=g(f,c.children,l);n.push(t.cloneElement(x,i(i({},x.props),{},{key:h}),k))}else if(Number.isNaN(parseFloat(c.name))){if(N)m(x,d(x,c,l),n,h,c.voidElement);else if(o.transSupportBasicHtmlNodes&&s.indexOf(c.name)>-1)if(c.voidElement)n.push(t.createElement(c.name,{key:"".concat(c.name,"-").concat(h)}));else{var P=g(f,c.children,l);n.push(t.createElement(c.name,{key:"".concat(c.name,"-").concat(h)},P))}else if(c.voidElement)n.push("<".concat(c.name," />"));else{var R=g(f,c.children,l);n.push("<".concat(c.name,">").concat(R,"</").concat(c.name,">"))}}else if("object"!==a(x)||j)1===c.children.length&&O?n.push(t.cloneElement(x,i(i({},x.props),{},{key:h}),O)):n.push(t.cloneElement(x,i(i({},x.props),{},{key:h})));else{var C=c.children[0]?O:null;C&&n.push(C)}}else if("text"===c.type){var A=o.transWrapTextNodes,T=r.services.interpolator.interpolate(c.content,p,r.language);A?n.push(t.createElement(A,{key:"".concat(c.name,"-").concat(h)},T)):n.push(T)}return n}),[])}return U(g([{dummy:!0,children:e}],f,V(e||[]))[0])}function W(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.i18n,a=n.useContext(O)||{},o=a.i18n,c=a.defaultNS,s=r||o||S();if(s&&!s.reportNamespaces&&(s.reportNamespaces=new j),!s){C("You will need to pass in an i18next instance by using initReactI18next");var l=function(e){return Array.isArray(e)?e[e.length-1]:e},f=[l,{},!1];return f.t=l,f.i18n={},f.ready=!1,f}s.options.react&&void 0!==s.options.react.wait&&C("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");var p=i(i(i({},x()),s.options.react),t),d=p.useSuspense,m=e||c||s.options&&s.options.defaultNS;m="string"==typeof m?[m]:m||["translation"],s.reportNamespaces.addUsedNamespaces&&s.reportNamespaces.addUsedNamespaces(m);var g=(s.isInitialized||s.initializedStoreOnce)&&m.every((function(e){return T(e,s,p)}));function h(){return s.getFixedT(null,"fallback"===p.nsMode?m:m[0])}var v=n.useState(h),y=u(v,2),b=y[0],w=y[1],E=n.useRef(!0);n.useEffect((function(){var e=p.bindI18n,n=p.bindI18nStore;function t(){E.current&&w(h)}return E.current=!0,g||d||A(s,m,(function(){E.current&&w(h)})),e&&s&&s.on(e,t),n&&s&&s.store.on(n,t),function(){E.current=!1,e&&s&&e.split(" ").forEach((function(e){return s.off(e,t)})),n&&s&&n.split(" ").forEach((function(e){return s.store.off(e,t)}))}}),[s,m.join()]);var N=n.useRef(!0);n.useEffect((function(){E.current&&!N.current&&w(h),N.current=!1}),[s]);var I=[b,s,g];if(I.t=b,I.i18n=s,I.ready=g,g)return I;if(!g&&!d)return I;throw new Promise((function(e){A(s,m,(function(){e()}))}))}var F=["forwardedRef"];var H=["ns","children"];function M(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=r.i18n,a=n.useContext(O)||{},o=a.i18n,c=i||o||S();c.options&&c.options.isClone||(e&&!c.initializedStoreOnce&&(c.services.resourceStore.data=e,c.options.ns=Object.values(e).reduce((function(e,n){return Object.keys(n).forEach((function(n){e.indexOf(n)<0&&e.push(n)})),e}),c.options.ns),c.initializedStoreOnce=!0,c.isInitialized=!0),t&&!c.initializedLanguageOnce&&(c.changeLanguage(t),c.initializedLanguageOnce=!0))}var $=["initialI18nStore","initialLanguage"];e.I18nContext=O,e.I18nextProvider=function(e){var t=e.i18n,r=e.defaultNS,i=e.children,a=n.useMemo((function(){return{i18n:t,defaultNS:r}}),[t,r]);return n.createElement(O.Provider,{value:a},i)},e.Trans=function(e){var r=e.children,o=e.count,c=e.parent,u=e.i18nKey,l=e.tOptions,f=void 0===l?{}:l,p=e.values,d=e.defaults,m=e.components,g=e.ns,h=e.i18n,v=e.t,y=s(e,D),b=n.useContext(O)||{},w=b.i18n,j=b.defaultNS,E=h||w||S();if(!E)return C("You will need to pass in an i18next instance by using i18nextReactModule"),r;var N=v||E.t.bind(E)||function(e){return e},I=i(i({},x()),E.options&&E.options.react),k=g||N.ns||j||E.options&&E.options.defaultNS;k="string"==typeof k?[k]:k||["translation"];var R=d||function e(n,r){if(!n)return"";var i="",o=V(n),c=r.transKeepBasicHtmlNodesFor||[];return o.forEach((function(n,o){if("string"==typeof n)i+="".concat(n);else if(t.isValidElement(n)){var u=Object.keys(n.props).length,l=c.indexOf(n.type)>-1,f=n.props.children;if(!f&&l&&0===u)i+="<".concat(n.type,"/>");else if(f||l&&0===u)if(n.props.i18nIsDynamicList)i+="<".concat(o,"></").concat(o,">");else if(l&&1===u&&"string"==typeof f)i+="<".concat(n.type,">").concat(f,"</").concat(n.type,">");else{var p=e(f,r);i+="<".concat(o,">").concat(p,"</").concat(o,">")}else i+="<".concat(o,"></").concat(o,">")}else if(null===n)P("Trans: the passed in value is invalid - seems you passed in a null child.");else if("object"===a(n)){var d=n.format,m=s(n,L),g=Object.keys(m);if(1===g.length){var h=d?"".concat(g[0],", ").concat(d):g[0];i+="{{".concat(h,"}}")}else P("react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.",n)}else P("Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.",n)})),i}(r,I)||I.transEmptyNodeValue||u,A=I.hashTransKey,T=u||(A?A(R):R),z=p?f.interpolation:{interpolation:i(i({},f.interpolation),{},{prefix:"#$?",suffix:"?$#"})},B=i(i(i(i({},f),{},{count:o},p),z),{},{defaultValue:R,ns:k}),U=K(m||r,T?N(T,B):R,E,I,B),W=void 0!==c?c:I.defaultTransParent;return W?t.createElement(W,y,U):U},e.Translation=function(e){var n=e.ns,t=e.children,r=u(W(n,s(e,H)),3),i=r[0],a=r[1],o=r[2];return t(i,{i18n:a,lng:a.language},o)},e.composeInitialProps=I,e.date=function(){return""},e.getDefaults=x,e.getI18n=S,e.getInitialProps=k,e.initReactI18next=N,e.number=function(){return""},e.plural=function(){return""},e.select=function(){return""},e.selectOrdinal=function(){return""},e.setDefaults=w,e.setI18n=E,e.time=function(){return""},e.useSSR=M,e.useTranslation=W,e.withSSR=function(){return function(e){function n(n){var r=n.initialI18nStore,a=n.initialLanguage,o=s(n,$);return M(r,a),t.createElement(e,i({},o))}return n.getInitialProps=I(e),n.displayName="withI18nextSSR(".concat(z(e),")"),n.WrappedComponent=e,n}},e.withTranslation=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(r){function a(a){var o=a.forwardedRef,c=s(a,F),l=u(W(e,c),3),f=l[0],p=l[1],d=l[2],m=i(i({},c),{},{t:f,i18n:p,tReady:d});return n.withRef&&o?m.ref=o:!n.withRef&&o&&(m.forwardedRef=o),t.createElement(r,m)}a.displayName="withI18nextTranslation(".concat(z(r),")"),a.WrappedComponent=r;return n.withRef?t.forwardRef((function(e,n){return t.createElement(a,Object.assign({},e,{forwardedRef:n}))})):a}},Object.defineProperty(e,"__esModule",{value:!0})}));
package/src/Trans.js CHANGED
@@ -127,15 +127,10 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts) {
127
127
 
128
128
  getData(children);
129
129
 
130
- const interpolatedString = i18n.services.interpolator.interpolate(
131
- targetString,
132
- { ...data, ...combinedTOpts },
133
- i18n.language,
134
- );
135
-
136
130
  // parse ast from string with additional wrapper tag
137
131
  // -> avoids issues in parser removing prepending text nodes
138
- const ast = HTML.parse(`<0>${interpolatedString}</0>`);
132
+ const ast = HTML.parse(`<0>${targetString}</0>`);
133
+ const opts = { ...data, ...combinedTOpts };
139
134
 
140
135
  function renderInner(child, node, rootReactNode) {
141
136
  const childs = getChildren(child);
@@ -157,7 +152,12 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts) {
157
152
  const astNodes = getAsArray(astNode);
158
153
 
159
154
  return astNodes.reduce((mem, node, i) => {
160
- const translationContent = node.children && node.children[0] && node.children[0].content;
155
+ const translationContent =
156
+ node.children &&
157
+ node.children[0] &&
158
+ node.children[0].content &&
159
+ i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);
160
+
161
161
  if (node.type === 'tag') {
162
162
  let tmp = reactNodes[parseInt(node.name, 10)]; // regular array (components or children)
163
163
  if (!tmp && rootReactNode.length === 1 && rootReactNode[0][node.name])
@@ -182,7 +182,8 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts) {
182
182
  // console.warn('CHILD', node.name, node, isElement, child);
183
183
 
184
184
  if (typeof child === 'string') {
185
- mem.push(child);
185
+ const value = i18n.services.interpolator.interpolate(child, opts, i18n.language);
186
+ mem.push(value);
186
187
  } else if (
187
188
  hasChildren(child) || // the jsx element has children -> loop
188
189
  isValidTranslationWithChildren // valid jsx element with no children but the translation has -> loop
@@ -243,10 +244,11 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts) {
243
244
  }
244
245
  } else if (node.type === 'text') {
245
246
  const wrapTextNodes = i18nOptions.transWrapTextNodes;
247
+ const content = i18n.services.interpolator.interpolate(node.content, opts, i18n.language);
246
248
  if (wrapTextNodes) {
247
- mem.push(React.createElement(wrapTextNodes, { key: `${node.name}-${i}` }, node.content));
249
+ mem.push(React.createElement(wrapTextNodes, { key: `${node.name}-${i}` }, content));
248
250
  } else {
249
- mem.push(node.content);
251
+ mem.push(content);
250
252
  }
251
253
  }
252
254
  return mem;