react-i18next 11.17.2 → 11.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ ### 11.18.0
2
+
3
+ - ability to add custom unescape function [1529](https://github.com/i18next/react-i18next/pull/1529)
4
+
5
+ ### 11.17.4
6
+
7
+ - fix: UMD build [1527](https://github.com/i18next/react-i18next/issues/1527)
8
+
9
+ ### 11.17.3
10
+
11
+ - style: explicit React imports [1525](https://github.com/i18next/react-i18next/pull/1525)
12
+
1
13
  ### 11.17.2
2
14
 
3
15
  - reset t if ns changes in useTranslation [1518](https://github.com/i18next/react-i18next/pull/1518)
@@ -1,6 +1,4 @@
1
- define(['exports', 'react'], function (exports, React) { 'use strict';
2
-
3
- var React__default = 'default' in React ? React['default'] : React;
1
+ define(['exports', 'react'], function (exports, react) { 'use strict';
4
2
 
5
3
  function ownKeys(object, enumerableOnly) {
6
4
  var keys = Object.keys(object);
@@ -316,9 +314,8 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
316
314
  }
317
315
  };
318
316
 
319
- var replace = ''.replace;
320
- var es = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34);/g;
321
- var unes = {
317
+ var matchHtmlEntity = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34);/g;
318
+ var htmlEntities = {
322
319
  '&': '&',
323
320
  '&': '&',
324
321
  '&lt;': '<',
@@ -330,13 +327,14 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
330
327
  '&quot;': '"',
331
328
  '&#34;': '"'
332
329
  };
333
- function unescape(un) {
334
- return replace.call(un, es, cape);
335
- }
336
330
 
337
- function cape(m) {
338
- return unes[m];
339
- }
331
+ var unescapeHtmlEntity = function unescapeHtmlEntity(m) {
332
+ return htmlEntities[m];
333
+ };
334
+
335
+ var unescape = function unescape(text) {
336
+ return text.replace(matchHtmlEntity, unescapeHtmlEntity);
337
+ };
340
338
 
341
339
  var defaultOptions = {
342
340
  bindI18n: 'languageChanged',
@@ -345,10 +343,11 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
345
343
  transSupportBasicHtmlNodes: true,
346
344
  transWrapTextNodes: '',
347
345
  transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'p'],
348
- useSuspense: true
346
+ useSuspense: true,
347
+ unescape: unescape
349
348
  };
350
349
  var i18nInstance;
351
- var I18nContext = React__default.createContext();
350
+ var I18nContext = react.createContext();
352
351
  function setDefaults() {
353
352
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
354
353
  defaultOptions = _objectSpread2(_objectSpread2({}, defaultOptions), options);
@@ -526,7 +525,7 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
526
525
  function hasValidReactChildren(children) {
527
526
  if (Object.prototype.toString.call(children) !== '[object Array]') return false;
528
527
  return children.every(function (child) {
529
- return React__default.isValidElement(child);
528
+ return react.isValidElement(child);
530
529
  });
531
530
  }
532
531
 
@@ -549,7 +548,7 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
549
548
  childrenArray.forEach(function (child, childIndex) {
550
549
  if (typeof child === 'string') {
551
550
  stringNode += "".concat(child);
552
- } else if (React__default.isValidElement(child)) {
551
+ } else if (react.isValidElement(child)) {
553
552
  var childPropsCount = Object.keys(child.props).length;
554
553
  var shouldKeepChild = keepArray.indexOf(child.type) > -1;
555
554
  var childChildren = child.props.children;
@@ -598,7 +597,7 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
598
597
  var childrenArray = getAsArray(childs);
599
598
  childrenArray.forEach(function (child) {
600
599
  if (typeof child === 'string') return;
601
- if (hasChildren(child)) getData(getChildren(child));else if (_typeof(child) === 'object' && !React__default.isValidElement(child)) Object.assign(data, child);
600
+ if (hasChildren(child)) getData(getChildren(child));else if (_typeof(child) === 'object' && !react.isValidElement(child)) Object.assign(data, child);
602
601
  });
603
602
  }
604
603
 
@@ -615,7 +614,7 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
615
614
 
616
615
  function pushTranslatedJSX(child, inner, mem, i, isVoid) {
617
616
  if (child.dummy) child.children = inner;
618
- mem.push(React__default.cloneElement(child, _objectSpread2(_objectSpread2({}, child.props), {}, {
617
+ mem.push(react.cloneElement(child, _objectSpread2(_objectSpread2({}, child.props), {}, {
619
618
  key: i
620
619
  }), isVoid ? undefined : inner));
621
620
  }
@@ -633,7 +632,7 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
633
632
  var child = Object.keys(node.attrs).length !== 0 ? mergeProps({
634
633
  props: node.attrs
635
634
  }, tmp) : tmp;
636
- var isElement = React__default.isValidElement(child);
635
+ var isElement = react.isValidElement(child);
637
636
  var isValidTranslationWithChildren = isElement && hasChildren(node, true) && !node.voidElement;
638
637
  var isEmptyTransWithHTML = emptyChildrenButNeedsHandling && _typeof(child) === 'object' && child.dummy && !isElement;
639
638
  var isKnownComponent = _typeof(children) === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);
@@ -647,7 +646,7 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
647
646
  } else if (isEmptyTransWithHTML) {
648
647
  var _inner = mapAST(reactNodes, node.children, rootReactNode);
649
648
 
650
- mem.push(React__default.cloneElement(child, _objectSpread2(_objectSpread2({}, child.props), {}, {
649
+ mem.push(react.cloneElement(child, _objectSpread2(_objectSpread2({}, child.props), {}, {
651
650
  key: i
652
651
  }), _inner));
653
652
  } else if (Number.isNaN(parseFloat(node.name))) {
@@ -657,13 +656,13 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
657
656
  pushTranslatedJSX(child, _inner2, mem, i, node.voidElement);
658
657
  } else if (i18nOptions.transSupportBasicHtmlNodes && keepArray.indexOf(node.name) > -1) {
659
658
  if (node.voidElement) {
660
- mem.push(React__default.createElement(node.name, {
659
+ mem.push(react.createElement(node.name, {
661
660
  key: "".concat(node.name, "-").concat(i)
662
661
  }));
663
662
  } else {
664
663
  var _inner3 = mapAST(reactNodes, node.children, rootReactNode);
665
664
 
666
- mem.push(React__default.createElement(node.name, {
665
+ mem.push(react.createElement(node.name, {
667
666
  key: "".concat(node.name, "-").concat(i)
668
667
  }, _inner3));
669
668
  }
@@ -678,21 +677,21 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
678
677
  var content = node.children[0] ? translationContent : null;
679
678
  if (content) mem.push(content);
680
679
  } else if (node.children.length === 1 && translationContent) {
681
- mem.push(React__default.cloneElement(child, _objectSpread2(_objectSpread2({}, child.props), {}, {
680
+ mem.push(react.cloneElement(child, _objectSpread2(_objectSpread2({}, child.props), {}, {
682
681
  key: i
683
682
  }), translationContent));
684
683
  } else {
685
- mem.push(React__default.cloneElement(child, _objectSpread2(_objectSpread2({}, child.props), {}, {
684
+ mem.push(react.cloneElement(child, _objectSpread2(_objectSpread2({}, child.props), {}, {
686
685
  key: i
687
686
  })));
688
687
  }
689
688
  } else if (node.type === 'text') {
690
689
  var wrapTextNodes = i18nOptions.transWrapTextNodes;
691
690
 
692
- var _content = shouldUnescape ? unescape(i18n.services.interpolator.interpolate(node.content, opts, i18n.language)) : i18n.services.interpolator.interpolate(node.content, opts, i18n.language);
691
+ var _content = shouldUnescape ? i18nOptions.unescape(i18n.services.interpolator.interpolate(node.content, opts, i18n.language)) : i18n.services.interpolator.interpolate(node.content, opts, i18n.language);
693
692
 
694
693
  if (wrapTextNodes) {
695
- mem.push(React__default.createElement(wrapTextNodes, {
694
+ mem.push(react.createElement(wrapTextNodes, {
696
695
  key: "".concat(node.name, "-").concat(i)
697
696
  }, _content));
698
697
  } else {
@@ -728,7 +727,7 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
728
727
  shouldUnescape = _ref.shouldUnescape,
729
728
  additionalProps = _objectWithoutProperties(_ref, _excluded2);
730
729
 
731
- var _ref2 = React.useContext(I18nContext) || {},
730
+ var _ref2 = react.useContext(I18nContext) || {},
732
731
  i18nFromContext = _ref2.i18n,
733
732
  defaultNSFromContext = _ref2.defaultNS;
734
733
 
@@ -769,12 +768,12 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
769
768
  var translation = key ? t(key, combinedTOpts) : defaultValue;
770
769
  var content = renderNodes(components || children, translation, i18n, reactI18nextOptions, combinedTOpts, shouldUnescape);
771
770
  var useAsParent = parent !== undefined ? parent : reactI18nextOptions.defaultTransParent;
772
- return useAsParent ? React__default.createElement(useAsParent, additionalProps, content) : content;
771
+ return useAsParent ? react.createElement(useAsParent, additionalProps, content) : content;
773
772
  }
774
773
 
775
774
  var usePrevious = function usePrevious(value, ignore) {
776
- var ref = React.useRef();
777
- React.useEffect(function () {
775
+ var ref = react.useRef();
776
+ react.useEffect(function () {
778
777
  ref.current = ignore ? ref.current : value;
779
778
  }, [value, ignore]);
780
779
  return ref.current;
@@ -784,7 +783,7 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
784
783
  var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
785
784
  var i18nFromProps = props.i18n;
786
785
 
787
- var _ref = React.useContext(I18nContext) || {},
786
+ var _ref = react.useContext(I18nContext) || {},
788
787
  i18nFromContext = _ref.i18n,
789
788
  defaultNSFromContext = _ref.defaultNS;
790
789
 
@@ -822,15 +821,15 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
822
821
  return i18n.getFixedT(null, i18nOptions.nsMode === 'fallback' ? namespaces : namespaces[0], keyPrefix);
823
822
  }
824
823
 
825
- var _useState = React.useState(getT),
824
+ var _useState = react.useState(getT),
826
825
  _useState2 = _slicedToArray(_useState, 2),
827
826
  t = _useState2[0],
828
827
  setT = _useState2[1];
829
828
 
830
829
  var joinedNS = namespaces.join();
831
830
  var previousJoinedNS = usePrevious(joinedNS);
832
- var isMounted = React.useRef(true);
833
- React.useEffect(function () {
831
+ var isMounted = react.useRef(true);
832
+ react.useEffect(function () {
834
833
  var bindI18n = i18nOptions.bindI18n,
835
834
  bindI18nStore = i18nOptions.bindI18nStore;
836
835
  isMounted.current = true;
@@ -861,8 +860,8 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
861
860
  });
862
861
  };
863
862
  }, [i18n, joinedNS]);
864
- var isInitial = React.useRef(true);
865
- React.useEffect(function () {
863
+ var isInitial = react.useRef(true);
864
+ react.useEffect(function () {
866
865
  if (isMounted.current && !isInitial.current) {
867
866
  setT(getT);
868
867
  }
@@ -910,19 +909,19 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
910
909
  passDownProps.forwardedRef = forwardedRef;
911
910
  }
912
911
 
913
- return React__default.createElement(WrappedComponent, passDownProps);
912
+ return react.createElement(WrappedComponent, passDownProps);
914
913
  }
915
914
 
916
915
  I18nextWithTranslation.displayName = "withI18nextTranslation(".concat(getDisplayName(WrappedComponent), ")");
917
916
  I18nextWithTranslation.WrappedComponent = WrappedComponent;
918
917
 
919
918
  var forwardRef = function forwardRef(props, ref) {
920
- return React__default.createElement(I18nextWithTranslation, Object.assign({}, props, {
919
+ return react.createElement(I18nextWithTranslation, Object.assign({}, props, {
921
920
  forwardedRef: ref
922
921
  }));
923
922
  };
924
923
 
925
- return options.withRef ? React__default.forwardRef(forwardRef) : I18nextWithTranslation;
924
+ return options.withRef ? react.forwardRef(forwardRef) : I18nextWithTranslation;
926
925
  };
927
926
  }
928
927
 
@@ -948,13 +947,13 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
948
947
  var i18n = _ref.i18n,
949
948
  defaultNS = _ref.defaultNS,
950
949
  children = _ref.children;
951
- var value = React.useMemo(function () {
950
+ var value = react.useMemo(function () {
952
951
  return {
953
952
  i18n: i18n,
954
953
  defaultNS: defaultNS
955
954
  };
956
955
  }, [i18n, defaultNS]);
957
- return React.createElement(I18nContext.Provider, {
956
+ return react.createElement(I18nContext.Provider, {
958
957
  value: value
959
958
  }, children);
960
959
  }
@@ -963,7 +962,7 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
963
962
  var props = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
964
963
  var i18nFromProps = props.i18n;
965
964
 
966
- var _ref = React.useContext(I18nContext) || {},
965
+ var _ref = react.useContext(I18nContext) || {},
967
966
  i18nFromContext = _ref.i18n;
968
967
 
969
968
  var i18n = i18nFromProps || i18nFromContext || getI18n();
@@ -996,7 +995,7 @@ define(['exports', 'react'], function (exports, React) { 'use strict';
996
995
  rest = _objectWithoutProperties(_ref, _excluded$3);
997
996
 
998
997
  useSSR(initialI18nStore, initialLanguage);
999
- return React__default.createElement(WrappedComponent, _objectSpread2({}, rest));
998
+ return react.createElement(WrappedComponent, _objectSpread2({}, rest));
1000
999
  }
1001
1000
 
1002
1001
  I18nextWithSSR.getInitialProps = composeInitialProps(WrappedComponent);
@@ -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 a(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 i(e){return(i="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,a=function(e,n){if(null==e)return{};var t,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)t=i[r],n.indexOf(t)>=0||(a[t]=e[t]);return a}(e,n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)t=i[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}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,a,i=[],o=!0,c=!1;try{for(t=t.call(e);!(o=(r=t.next()).done)&&(i.push(r.value),!n||i.length!==n);o=!0);}catch(e){c=!0,a=e}finally{try{o||null==t.return||t.return()}finally{if(c)throw a}}return i}(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 a=new RegExp(p),i=null;null!==(i=a.exec(e));)if(i[0].trim())if(i[1]){var o=i[1].trim(),c=[o,""];o.indexOf("=")>-1&&(c=o.split("=")),n.attrs[c[0]]=c[1],a.lastIndex--}else i[2]&&(n.attrs[i[2]]=i[3].trim().substring(1,i[3].length-1));return n}var g=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,m=/^\s*$/,h=Object.create(null);var v=function(e,n){n||(n={}),n.components||(n.components=h);var t,r=[],a=[],i=-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(g,(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,g=e.charAt(p);if(f){var h=d(c);return i<0?(r.push(h),r):((u=a[i]).children.push(h),r)}if(l&&(i++,"tag"===(t=d(c)).type&&n.components[t.name]&&(t.type="component",o=!0),t.voidElement||o||!g||"<"===g||t.children.push({type:"text",content:e.slice(p,e.indexOf("<",p))}),0===i&&r.push(t),(u=a[i-1])&&u.children.push(t),a[i]=t),(!l||t.voidElement)&&(i>-1&&(t.voidElement||t.name===c.slice(2,-1))&&(i--,t=-1===i?r:a[i]),!o&&"<"!==g&&g)){u=-1===i?r:a[i].children;var v=e.indexOf("<",p),y=e.slice(p,-1===v?void 0:v);m.test(y)&&(y=" "),(v>-1&&i+u.length>=0||" "!==y)&&u.push({type:"text",content:y})}})),r},y="".replace,b=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34);/g,O={"&amp;":"&","&#38;":"&","&lt;":"<","&#60;":"<","&gt;":">","&#62;":">","&apos;":"'","&#39;":"'","&quot;":'"',"&#34;":'"'};function x(e){return O[e]}var w,E={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0},S=t.createContext();function j(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};E=a(a({},E),e)}function N(){return E}var k=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 I(e){w=e}function P(){return w}var C={type:"3rdParty",init:function(e){j(e.options.react),I(e)}};function R(e){return function(n){return new Promise((function(t){var r=T();e.getInitialProps?e.getInitialProps(n).then((function(e){t(a(a({},e),r))})):t(r)}))}}function T(){var e=P(),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 A(){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 L={};function z(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];"string"==typeof n[0]&&L[n[0]]||("string"==typeof n[0]&&(L[n[0]]=new Date),A.apply(void 0,n))}function B(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 U(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.languages[0],a=!!n.options&&n.options.fallbackLng,i=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&&(!n.options.resources||n.options.partialBundledLanguages))||!(!o(r,e)||a&&!o(i,e))))}function D(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!n.languages||!n.languages.length)return z("i18n.languages were undefined or empty",n.languages),!0;var r=void 0!==n.options.ignoreJSONStructure;return r?n.hasLoadedNamespace(e,{precheck:function(n,r){if(t.bindI18n&&t.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!r(n.isLanguageChangingTo,e))return!1}}):U(e,n,t)}function H(e){return e.displayName||e.name||("string"==typeof e&&e.length>0?e:"Unknown")}var K=["format"],V=["children","count","parent","i18nKey","context","tOptions","values","defaults","components","ns","i18n","t","shouldUnescape"];function F(e,n){if(!e)return!1;var t=e.props?e.props.children:e.children;return n?t.length>0:!!t}function W(e){return e?e&&e.children?e.children:e.props&&e.props.children:[]}function M(e){return Array.isArray(e)?e:[e]}function $(e,n,r,o,c,s){if(""===n)return[];var u=o.transKeepBasicHtmlNodesFor||[],l=n&&new RegExp(u.join("|")).test(n);if(!e&&!l)return[n];var f={};!function e(n){M(n).forEach((function(n){"string"!=typeof n&&(F(n)?e(W(n)):"object"!==i(n)||t.isValidElement(n)||Object.assign(f,n))}))}(e);var p=v("<0>".concat(n,"</0>")),d=a(a({},f),c);function g(e,n,r){var a=W(e),i=h(a,n.children,r);return function(e){return"[object Array]"===Object.prototype.toString.call(e)&&e.every((function(e){return t.isValidElement(e)}))}(a)&&0===i.length?a:i}function m(e,n,r,i,o){e.dummy&&(e.children=n),r.push(t.cloneElement(e,a(a({},e.props),{},{key:i}),o?void 0:n))}function h(n,c,f){var p=M(n);return M(c).reduce((function(n,c,v){var O,w,E,S,j=c.children&&c.children[0]&&c.children[0].content&&r.services.interpolator.interpolate(c.children[0].content,d,r.language);if("tag"===c.type){var N=p[parseInt(c.name,10)];!N&&1===f.length&&f[0][c.name]&&(N=f[0][c.name]),N||(N={});var k=0!==Object.keys(c.attrs).length?(w={props:c.attrs},(S=a({},E=N)).props=Object.assign(w.props,E.props),S):N,I=t.isValidElement(k),P=I&&F(c,!0)&&!c.voidElement,C=l&&"object"===i(k)&&k.dummy&&!I,R="object"===i(e)&&null!==e&&Object.hasOwnProperty.call(e,c.name);if("string"==typeof k){var T=r.services.interpolator.interpolate(k,d,r.language);n.push(T)}else if(F(k)||P){m(k,g(k,c,f),n,v)}else if(C){var A=h(p,c.children,f);n.push(t.cloneElement(k,a(a({},k.props),{},{key:v}),A))}else if(Number.isNaN(parseFloat(c.name))){if(R)m(k,g(k,c,f),n,v,c.voidElement);else if(o.transSupportBasicHtmlNodes&&u.indexOf(c.name)>-1)if(c.voidElement)n.push(t.createElement(c.name,{key:"".concat(c.name,"-").concat(v)}));else{var L=h(p,c.children,f);n.push(t.createElement(c.name,{key:"".concat(c.name,"-").concat(v)},L))}else if(c.voidElement)n.push("<".concat(c.name," />"));else{var z=h(p,c.children,f);n.push("<".concat(c.name,">").concat(z,"</").concat(c.name,">"))}}else if("object"!==i(k)||I)1===c.children.length&&j?n.push(t.cloneElement(k,a(a({},k.props),{},{key:v}),j)):n.push(t.cloneElement(k,a(a({},k.props),{},{key:v})));else{var B=c.children[0]?j:null;B&&n.push(B)}}else if("text"===c.type){var U=o.transWrapTextNodes,D=s?(O=r.services.interpolator.interpolate(c.content,d,r.language),y.call(O,b,x)):r.services.interpolator.interpolate(c.content,d,r.language);U?n.push(t.createElement(U,{key:"".concat(c.name,"-").concat(v)},D)):n.push(D)}return n}),[])}return W(h([{dummy:!0,children:e||[]}],p,M(e||[]))[0])}var q=function(e,t){var r=n.useRef();return n.useEffect((function(){r.current=t?r.current:e}),[e,t]),r.current};function Y(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.i18n,i=n.useContext(S)||{},o=i.i18n,c=i.defaultNS,s=r||o||P();if(s&&!s.reportNamespaces&&(s.reportNamespaces=new k),!s){z("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&&z("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");var p=a(a(a({},N()),s.options.react),t),d=p.useSuspense,g=p.keyPrefix,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 D(e,s,p)}));function v(){return s.getFixedT(null,"fallback"===p.nsMode?m:m[0],g)}var y=n.useState(v),b=u(y,2),O=b[0],x=b[1],w=m.join(),E=q(w),j=n.useRef(!0);n.useEffect((function(){var e=p.bindI18n,n=p.bindI18nStore;function t(){j.current&&x(v)}return j.current=!0,h||d||B(s,m,(function(){j.current&&x(v)})),h&&E&&E!==w&&j.current&&x(v),e&&s&&s.on(e,t),n&&s&&s.store.on(n,t),function(){j.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,w]);var I=n.useRef(!0);n.useEffect((function(){j.current&&!I.current&&x(v),I.current=!1}),[s]);var C=[O,s,h];if(C.t=O,C.i18n=s,C.ready=h,h)return C;if(!h&&!d)return C;throw new Promise((function(e){B(s,m,(function(){e()}))}))}var _=["forwardedRef"];var J=["ns","children"];function Z(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=r.i18n,i=n.useContext(S)||{},o=i.i18n,c=a||o||P();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 G=["initialI18nStore","initialLanguage"];e.I18nContext=S,e.I18nextProvider=function(e){var t=e.i18n,r=e.defaultNS,a=e.children,i=n.useMemo((function(){return{i18n:t,defaultNS:r}}),[t,r]);return n.createElement(S.Provider,{value:i},a)},e.Trans=function(e){var r=e.children,o=e.count,c=e.parent,u=e.i18nKey,l=e.context,f=e.tOptions,p=void 0===f?{}:f,d=e.values,g=e.defaults,m=e.components,h=e.ns,v=e.i18n,y=e.t,b=e.shouldUnescape,O=s(e,V),x=n.useContext(S)||{},w=x.i18n,E=x.defaultNS,j=v||w||P();if(!j)return z("You will need to pass in an i18next instance by using i18nextReactModule"),r;var k=y||j.t.bind(j)||function(e){return e};l&&(p.context=l);var I=a(a({},N()),j.options&&j.options.react),C=h||k.ns||E||j.options&&j.options.defaultNS;C="string"==typeof C?[C]:C||["translation"];var R=g||function e(n,r){if(!n)return"";var a="",o=M(n),c=r.transSupportBasicHtmlNodes&&r.transKeepBasicHtmlNodesFor?r.transKeepBasicHtmlNodesFor:[];return o.forEach((function(n,o){if("string"==typeof n)a+="".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)a+="<".concat(n.type,"/>");else if(f||l&&0===u)if(n.props.i18nIsDynamicList)a+="<".concat(o,"></").concat(o,">");else if(l&&1===u&&"string"==typeof f)a+="<".concat(n.type,">").concat(f,"</").concat(n.type,">");else{var p=e(f,r);a+="<".concat(o,">").concat(p,"</").concat(o,">")}else a+="<".concat(o,"></").concat(o,">")}else if(null===n)A("Trans: the passed in value is invalid - seems you passed in a null child.");else if("object"===i(n)){var d=n.format,g=s(n,K),m=Object.keys(g);if(1===m.length){var h=d?"".concat(m[0],", ").concat(d):m[0];a+="{{".concat(h,"}}")}else A("react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.",n)}else A("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)})),a}(r,I)||I.transEmptyNodeValue||u,T=I.hashTransKey,L=u||(T?T(R):R),B=d?p.interpolation:{interpolation:a(a({},p.interpolation),{},{prefix:"#$?",suffix:"?$#"})},U=a(a(a(a({},p),{},{count:o},d),B),{},{defaultValue:R,ns:C}),D=$(m||r,L?k(L,U):R,j,I,U,b),H=void 0!==c?c:I.defaultTransParent;return H?t.createElement(H,O,D):D},e.Translation=function(e){var n=e.ns,t=e.children,r=u(Y(n,s(e,J)),3),a=r[0],i=r[1],o=r[2];return t(a,{i18n:i,lng:i.language},o)},e.composeInitialProps=R,e.date=function(){return""},e.getDefaults=N,e.getI18n=P,e.getInitialProps=T,e.initReactI18next=C,e.number=function(){return""},e.plural=function(){return""},e.select=function(){return""},e.selectOrdinal=function(){return""},e.setDefaults=j,e.setI18n=I,e.time=function(){return""},e.useSSR=Z,e.useTranslation=Y,e.withSSR=function(){return function(e){function n(n){var r=n.initialI18nStore,i=n.initialLanguage,o=s(n,G);return Z(r,i),t.createElement(e,a({},o))}return n.getInitialProps=R(e),n.displayName="withI18nextSSR(".concat(H(e),")"),n.WrappedComponent=e,n}},e.withTranslation=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(r){function i(i){var o=i.forwardedRef,c=s(i,_),l=u(Y(e,a(a({},c),{},{keyPrefix:n.keyPrefix})),3),f=l[0],p=l[1],d=l[2],g=a(a({},c),{},{t:f,i18n:p,tReady:d});return n.withRef&&o?g.ref=o:!n.withRef&&o&&(g.forwardedRef=o),t.createElement(r,g)}i.displayName="withI18nextTranslation(".concat(H(r),")"),i.WrappedComponent=r;return n.withRef?t.forwardRef((function(e,n){return t.createElement(i,Object.assign({},e,{forwardedRef:n}))})):i}},Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ define(["exports","react"],(function(e,n){"use strict";function t(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 r(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?t(Object(r),!0).forEach((function(n){o(e,n,r[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):t(Object(r)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,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 i(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 o(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function c(e,n){if(null==e)return{};var t,r,a=function(e,n){if(null==e)return{};var t,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)t=i[r],n.indexOf(t)>=0||(a[t]=e[t]);return a}(e,n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)t=i[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}function s(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,a,i=[],o=!0,c=!1;try{for(t=t.call(e);!(o=(r=t.next()).done)&&(i.push(r.value),!n||i.length!==n);o=!0);}catch(e){c=!0,a=e}finally{try{o||null==t.return||t.return()}finally{if(c)throw a}}return i}(e,n)||function(e,n){if(!e)return;if("string"==typeof e)return u(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 u(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 u(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 l={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},f=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function p(e){var n={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},t=e.match(/<\/?([^\s]+?)[/\s>]/);if(t&&(n.name=t[1],(l[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 a=new RegExp(f),i=null;null!==(i=a.exec(e));)if(i[0].trim())if(i[1]){var o=i[1].trim(),c=[o,""];o.indexOf("=")>-1&&(c=o.split("=")),n.attrs[c[0]]=c[1],a.lastIndex--}else i[2]&&(n.attrs[i[2]]=i[3].trim().substring(1,i[3].length-1));return n}var d=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,g=/^\s*$/,m=Object.create(null);var h,v=function(e,n){n||(n={}),n.components||(n.components=m);var t,r=[],a=[],i=-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(d,(function(c,s){if(o){if(c!=="</"+t.name+">")return;o=!1}var u,l="/"!==c.charAt(1),f=c.startsWith("\x3c!--"),d=s+c.length,m=e.charAt(d);if(f){var h=p(c);return i<0?(r.push(h),r):((u=a[i]).children.push(h),r)}if(l&&(i++,"tag"===(t=p(c)).type&&n.components[t.name]&&(t.type="component",o=!0),t.voidElement||o||!m||"<"===m||t.children.push({type:"text",content:e.slice(d,e.indexOf("<",d))}),0===i&&r.push(t),(u=a[i-1])&&u.children.push(t),a[i]=t),(!l||t.voidElement)&&(i>-1&&(t.voidElement||t.name===c.slice(2,-1))&&(i--,t=-1===i?r:a[i]),!o&&"<"!==m&&m)){u=-1===i?r:a[i].children;var v=e.indexOf("<",d),y=e.slice(d,-1===v?void 0:v);g.test(y)&&(y=" "),(v>-1&&i+u.length>=0||" "!==y)&&u.push({type:"text",content:y})}})),r},y=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34);/g,b={"&amp;":"&","&#38;":"&","&lt;":"<","&#60;":"<","&gt;":">","&#62;":">","&apos;":"'","&#39;":"'","&quot;":'"',"&#34;":'"'},O=function(e){return b[e]},x={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:function(e){return e.replace(y,O)}},w=n.createContext();function E(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};x=r(r({},x),e)}function S(){return x}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)}}])&&i(n.prototype,t),r&&i(n,r),e}();function N(e){h=e}function k(){return h}var I={type:"3rdParty",init:function(e){E(e.options.react),N(e)}};function P(e){return function(n){return new Promise((function(t){var a=C();e.getInitialProps?e.getInitialProps(n).then((function(e){t(r(r({},e),a))})):t(a)}))}}function C(){var e=k(),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 R(){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 T={};function A(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];"string"==typeof n[0]&&T[n[0]]||("string"==typeof n[0]&&(T[n[0]]=new Date),R.apply(void 0,n))}function L(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 z(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.languages[0],a=!!n.options&&n.options.fallbackLng,i=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&&(!n.options.resources||n.options.partialBundledLanguages))||!(!o(r,e)||a&&!o(i,e))))}function B(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!n.languages||!n.languages.length)return A("i18n.languages were undefined or empty",n.languages),!0;var r=void 0!==n.options.ignoreJSONStructure;return r?n.hasLoadedNamespace(e,{precheck:function(n,r){if(t.bindI18n&&t.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!r(n.isLanguageChangingTo,e))return!1}}):z(e,n,t)}function U(e){return e.displayName||e.name||("string"==typeof e&&e.length>0?e:"Unknown")}var D=["format"],H=["children","count","parent","i18nKey","context","tOptions","values","defaults","components","ns","i18n","t","shouldUnescape"];function K(e,n){if(!e)return!1;var t=e.props?e.props.children:e.children;return n?t.length>0:!!t}function V(e){return e?e&&e.children?e.children:e.props&&e.props.children:[]}function F(e){return Array.isArray(e)?e:[e]}function W(e,t,i,o,c,s){if(""===t)return[];var u=o.transKeepBasicHtmlNodesFor||[],l=t&&new RegExp(u.join("|")).test(t);if(!e&&!l)return[t];var f={};!function e(t){F(t).forEach((function(t){"string"!=typeof t&&(K(t)?e(V(t)):"object"!==a(t)||n.isValidElement(t)||Object.assign(f,t))}))}(e);var p=v("<0>".concat(t,"</0>")),d=r(r({},f),c);function g(e,t,r){var a=V(e),i=h(a,t.children,r);return function(e){return"[object Array]"===Object.prototype.toString.call(e)&&e.every((function(e){return n.isValidElement(e)}))}(a)&&0===i.length?a:i}function m(e,t,a,i,o){e.dummy&&(e.children=t),a.push(n.cloneElement(e,r(r({},e.props),{},{key:i}),o?void 0:t))}function h(t,c,f){var p=F(t);return F(c).reduce((function(t,c,v){var y,b,O,x=c.children&&c.children[0]&&c.children[0].content&&i.services.interpolator.interpolate(c.children[0].content,d,i.language);if("tag"===c.type){var w=p[parseInt(c.name,10)];!w&&1===f.length&&f[0][c.name]&&(w=f[0][c.name]),w||(w={});var E=0!==Object.keys(c.attrs).length?(y={props:c.attrs},(O=r({},b=w)).props=Object.assign(y.props,b.props),O):w,S=n.isValidElement(E),j=S&&K(c,!0)&&!c.voidElement,N=l&&"object"===a(E)&&E.dummy&&!S,k="object"===a(e)&&null!==e&&Object.hasOwnProperty.call(e,c.name);if("string"==typeof E){var I=i.services.interpolator.interpolate(E,d,i.language);t.push(I)}else if(K(E)||j){m(E,g(E,c,f),t,v)}else if(N){var P=h(p,c.children,f);t.push(n.cloneElement(E,r(r({},E.props),{},{key:v}),P))}else if(Number.isNaN(parseFloat(c.name))){if(k)m(E,g(E,c,f),t,v,c.voidElement);else if(o.transSupportBasicHtmlNodes&&u.indexOf(c.name)>-1)if(c.voidElement)t.push(n.createElement(c.name,{key:"".concat(c.name,"-").concat(v)}));else{var C=h(p,c.children,f);t.push(n.createElement(c.name,{key:"".concat(c.name,"-").concat(v)},C))}else if(c.voidElement)t.push("<".concat(c.name," />"));else{var R=h(p,c.children,f);t.push("<".concat(c.name,">").concat(R,"</").concat(c.name,">"))}}else if("object"!==a(E)||S)1===c.children.length&&x?t.push(n.cloneElement(E,r(r({},E.props),{},{key:v}),x)):t.push(n.cloneElement(E,r(r({},E.props),{},{key:v})));else{var T=c.children[0]?x:null;T&&t.push(T)}}else if("text"===c.type){var A=o.transWrapTextNodes,L=s?o.unescape(i.services.interpolator.interpolate(c.content,d,i.language)):i.services.interpolator.interpolate(c.content,d,i.language);A?t.push(n.createElement(A,{key:"".concat(c.name,"-").concat(v)},L)):t.push(L)}return t}),[])}return V(h([{dummy:!0,children:e||[]}],p,F(e||[]))[0])}var M=function(e,t){var r=n.useRef();return n.useEffect((function(){r.current=t?r.current:e}),[e,t]),r.current};function $(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=t.i18n,i=n.useContext(w)||{},o=i.i18n,c=i.defaultNS,u=a||o||k();if(u&&!u.reportNamespaces&&(u.reportNamespaces=new j),!u){A("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}u.options.react&&void 0!==u.options.react.wait&&A("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");var p=r(r(r({},S()),u.options.react),t),d=p.useSuspense,g=p.keyPrefix,m=e||c||u.options&&u.options.defaultNS;m="string"==typeof m?[m]:m||["translation"],u.reportNamespaces.addUsedNamespaces&&u.reportNamespaces.addUsedNamespaces(m);var h=(u.isInitialized||u.initializedStoreOnce)&&m.every((function(e){return B(e,u,p)}));function v(){return u.getFixedT(null,"fallback"===p.nsMode?m:m[0],g)}var y=n.useState(v),b=s(y,2),O=b[0],x=b[1],E=m.join(),N=M(E),I=n.useRef(!0);n.useEffect((function(){var e=p.bindI18n,n=p.bindI18nStore;function t(){I.current&&x(v)}return I.current=!0,h||d||L(u,m,(function(){I.current&&x(v)})),h&&N&&N!==E&&I.current&&x(v),e&&u&&u.on(e,t),n&&u&&u.store.on(n,t),function(){I.current=!1,e&&u&&e.split(" ").forEach((function(e){return u.off(e,t)})),n&&u&&n.split(" ").forEach((function(e){return u.store.off(e,t)}))}}),[u,E]);var P=n.useRef(!0);n.useEffect((function(){I.current&&!P.current&&x(v),P.current=!1}),[u]);var C=[O,u,h];if(C.t=O,C.i18n=u,C.ready=h,h)return C;if(!h&&!d)return C;throw new Promise((function(e){L(u,m,(function(){e()}))}))}var q=["forwardedRef"];var Y=["ns","children"];function _(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=r.i18n,i=n.useContext(w)||{},o=i.i18n,c=a||o||k();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 J=["initialI18nStore","initialLanguage"];e.I18nContext=w,e.I18nextProvider=function(e){var t=e.i18n,r=e.defaultNS,a=e.children,i=n.useMemo((function(){return{i18n:t,defaultNS:r}}),[t,r]);return n.createElement(w.Provider,{value:i},a)},e.Trans=function(e){var t=e.children,i=e.count,o=e.parent,s=e.i18nKey,u=e.context,l=e.tOptions,f=void 0===l?{}:l,p=e.values,d=e.defaults,g=e.components,m=e.ns,h=e.i18n,v=e.t,y=e.shouldUnescape,b=c(e,H),O=n.useContext(w)||{},x=O.i18n,E=O.defaultNS,j=h||x||k();if(!j)return A("You will need to pass in an i18next instance by using i18nextReactModule"),t;var N=v||j.t.bind(j)||function(e){return e};u&&(f.context=u);var I=r(r({},S()),j.options&&j.options.react),P=m||N.ns||E||j.options&&j.options.defaultNS;P="string"==typeof P?[P]:P||["translation"];var C=d||function e(t,r){if(!t)return"";var i="",o=F(t),s=r.transSupportBasicHtmlNodes&&r.transKeepBasicHtmlNodesFor?r.transKeepBasicHtmlNodesFor:[];return o.forEach((function(t,o){if("string"==typeof t)i+="".concat(t);else if(n.isValidElement(t)){var u=Object.keys(t.props).length,l=s.indexOf(t.type)>-1,f=t.props.children;if(!f&&l&&0===u)i+="<".concat(t.type,"/>");else if(f||l&&0===u)if(t.props.i18nIsDynamicList)i+="<".concat(o,"></").concat(o,">");else if(l&&1===u&&"string"==typeof f)i+="<".concat(t.type,">").concat(f,"</").concat(t.type,">");else{var p=e(f,r);i+="<".concat(o,">").concat(p,"</").concat(o,">")}else i+="<".concat(o,"></").concat(o,">")}else if(null===t)R("Trans: the passed in value is invalid - seems you passed in a null child.");else if("object"===a(t)){var d=t.format,g=c(t,D),m=Object.keys(g);if(1===m.length){var h=d?"".concat(m[0],", ").concat(d):m[0];i+="{{".concat(h,"}}")}else R("react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.",t)}else R("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}}.",t)})),i}(t,I)||I.transEmptyNodeValue||s,T=I.hashTransKey,L=s||(T?T(C):C),z=p?f.interpolation:{interpolation:r(r({},f.interpolation),{},{prefix:"#$?",suffix:"?$#"})},B=r(r(r(r({},f),{},{count:i},p),z),{},{defaultValue:C,ns:P}),U=W(g||t,L?N(L,B):C,j,I,B,y),K=void 0!==o?o:I.defaultTransParent;return K?n.createElement(K,b,U):U},e.Translation=function(e){var n=e.ns,t=e.children,r=s($(n,c(e,Y)),3),a=r[0],i=r[1],o=r[2];return t(a,{i18n:i,lng:i.language},o)},e.composeInitialProps=P,e.date=function(){return""},e.getDefaults=S,e.getI18n=k,e.getInitialProps=C,e.initReactI18next=I,e.number=function(){return""},e.plural=function(){return""},e.select=function(){return""},e.selectOrdinal=function(){return""},e.setDefaults=E,e.setI18n=N,e.time=function(){return""},e.useSSR=_,e.useTranslation=$,e.withSSR=function(){return function(e){function t(t){var a=t.initialI18nStore,i=t.initialLanguage,o=c(t,J);return _(a,i),n.createElement(e,r({},o))}return t.getInitialProps=P(e),t.displayName="withI18nextSSR(".concat(U(e),")"),t.WrappedComponent=e,t}},e.withTranslation=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(a){function i(i){var o=i.forwardedRef,u=c(i,q),l=s($(e,r(r({},u),{},{keyPrefix:t.keyPrefix})),3),f=l[0],p=l[1],d=l[2],g=r(r({},u),{},{t:f,i18n:p,tReady:d});return t.withRef&&o?g.ref=o:!t.withRef&&o&&(g.forwardedRef=o),n.createElement(a,g)}i.displayName="withI18nextTranslation(".concat(U(a),")"),i.WrappedComponent=a;return t.withRef?n.forwardRef((function(e,t){return n.createElement(i,Object.assign({},e,{forwardedRef:t}))})):i}},Object.defineProperty(e,"__esModule",{value:!0})}));
@@ -2,8 +2,6 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
@@ -16,12 +14,10 @@ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
16
14
 
17
15
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
18
16
 
19
- var _react = _interopRequireWildcard(require("react"));
17
+ var _react = require("react");
20
18
 
21
19
  var _htmlParseStringify = _interopRequireDefault(require("html-parse-stringify"));
22
20
 
23
- var _htmlEscaper = require("html-escaper");
24
-
25
21
  var _context = require("./context");
26
22
 
27
23
  var _utils = require("./utils");
@@ -29,10 +25,6 @@ var _utils = require("./utils");
29
25
  var _excluded = ["format"],
30
26
  _excluded2 = ["children", "count", "parent", "i18nKey", "context", "tOptions", "values", "defaults", "components", "ns", "i18n", "t", "shouldUnescape"];
31
27
 
32
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
33
-
34
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
35
-
36
28
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
37
29
 
38
30
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
@@ -52,7 +44,7 @@ function getChildren(node) {
52
44
  function hasValidReactChildren(children) {
53
45
  if (Object.prototype.toString.call(children) !== '[object Array]') return false;
54
46
  return children.every(function (child) {
55
- return _react["default"].isValidElement(child);
47
+ return (0, _react.isValidElement)(child);
56
48
  });
57
49
  }
58
50
 
@@ -75,7 +67,7 @@ function nodesToString(children, i18nOptions) {
75
67
  childrenArray.forEach(function (child, childIndex) {
76
68
  if (typeof child === 'string') {
77
69
  stringNode += "".concat(child);
78
- } else if (_react["default"].isValidElement(child)) {
70
+ } else if ((0, _react.isValidElement)(child)) {
79
71
  var childPropsCount = Object.keys(child.props).length;
80
72
  var shouldKeepChild = keepArray.indexOf(child.type) > -1;
81
73
  var childChildren = child.props.children;
@@ -123,7 +115,7 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, s
123
115
  var childrenArray = getAsArray(childs);
124
116
  childrenArray.forEach(function (child) {
125
117
  if (typeof child === 'string') return;
126
- if (hasChildren(child)) getData(getChildren(child));else if ((0, _typeof2["default"])(child) === 'object' && !_react["default"].isValidElement(child)) Object.assign(data, child);
118
+ if (hasChildren(child)) getData(getChildren(child));else if ((0, _typeof2["default"])(child) === 'object' && !(0, _react.isValidElement)(child)) Object.assign(data, child);
127
119
  });
128
120
  }
129
121
 
@@ -141,7 +133,7 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, s
141
133
 
142
134
  function pushTranslatedJSX(child, inner, mem, i, isVoid) {
143
135
  if (child.dummy) child.children = inner;
144
- mem.push(_react["default"].cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {
136
+ mem.push((0, _react.cloneElement)(child, _objectSpread(_objectSpread({}, child.props), {}, {
145
137
  key: i
146
138
  }), isVoid ? undefined : inner));
147
139
  }
@@ -159,9 +151,7 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, s
159
151
  var child = Object.keys(node.attrs).length !== 0 ? mergeProps({
160
152
  props: node.attrs
161
153
  }, tmp) : tmp;
162
-
163
- var isElement = _react["default"].isValidElement(child);
164
-
154
+ var isElement = (0, _react.isValidElement)(child);
165
155
  var isValidTranslationWithChildren = isElement && hasChildren(node, true) && !node.voidElement;
166
156
  var isEmptyTransWithHTML = emptyChildrenButNeedsHandling && (0, _typeof2["default"])(child) === 'object' && child.dummy && !isElement;
167
157
  var isKnownComponent = (0, _typeof2["default"])(children) === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);
@@ -175,7 +165,7 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, s
175
165
  } else if (isEmptyTransWithHTML) {
176
166
  var _inner = mapAST(reactNodes, node.children, rootReactNode);
177
167
 
178
- mem.push(_react["default"].cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {
168
+ mem.push((0, _react.cloneElement)(child, _objectSpread(_objectSpread({}, child.props), {}, {
179
169
  key: i
180
170
  }), _inner));
181
171
  } else if (Number.isNaN(parseFloat(node.name))) {
@@ -185,13 +175,13 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, s
185
175
  pushTranslatedJSX(child, _inner2, mem, i, node.voidElement);
186
176
  } else if (i18nOptions.transSupportBasicHtmlNodes && keepArray.indexOf(node.name) > -1) {
187
177
  if (node.voidElement) {
188
- mem.push(_react["default"].createElement(node.name, {
178
+ mem.push((0, _react.createElement)(node.name, {
189
179
  key: "".concat(node.name, "-").concat(i)
190
180
  }));
191
181
  } else {
192
182
  var _inner3 = mapAST(reactNodes, node.children, rootReactNode);
193
183
 
194
- mem.push(_react["default"].createElement(node.name, {
184
+ mem.push((0, _react.createElement)(node.name, {
195
185
  key: "".concat(node.name, "-").concat(i)
196
186
  }, _inner3));
197
187
  }
@@ -206,21 +196,21 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, s
206
196
  var content = node.children[0] ? translationContent : null;
207
197
  if (content) mem.push(content);
208
198
  } else if (node.children.length === 1 && translationContent) {
209
- mem.push(_react["default"].cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {
199
+ mem.push((0, _react.cloneElement)(child, _objectSpread(_objectSpread({}, child.props), {}, {
210
200
  key: i
211
201
  }), translationContent));
212
202
  } else {
213
- mem.push(_react["default"].cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {
203
+ mem.push((0, _react.cloneElement)(child, _objectSpread(_objectSpread({}, child.props), {}, {
214
204
  key: i
215
205
  })));
216
206
  }
217
207
  } else if (node.type === 'text') {
218
208
  var wrapTextNodes = i18nOptions.transWrapTextNodes;
219
209
 
220
- var _content = shouldUnescape ? (0, _htmlEscaper.unescape)(i18n.services.interpolator.interpolate(node.content, opts, i18n.language)) : i18n.services.interpolator.interpolate(node.content, opts, i18n.language);
210
+ var _content = shouldUnescape ? i18nOptions.unescape(i18n.services.interpolator.interpolate(node.content, opts, i18n.language)) : i18n.services.interpolator.interpolate(node.content, opts, i18n.language);
221
211
 
222
212
  if (wrapTextNodes) {
223
- mem.push(_react["default"].createElement(wrapTextNodes, {
213
+ mem.push((0, _react.createElement)(wrapTextNodes, {
224
214
  key: "".concat(node.name, "-").concat(i)
225
215
  }, _content));
226
216
  } else {
@@ -297,5 +287,5 @@ function Trans(_ref) {
297
287
  var translation = key ? t(key, combinedTOpts) : defaultValue;
298
288
  var content = renderNodes(components || children, translation, i18n, reactI18nextOptions, combinedTOpts, shouldUnescape);
299
289
  var useAsParent = parent !== undefined ? parent : reactI18nextOptions.defaultTransParent;
300
- return useAsParent ? _react["default"].createElement(useAsParent, additionalProps, content) : content;
290
+ return useAsParent ? (0, _react.createElement)(useAsParent, additionalProps, content) : content;
301
291
  }
@@ -19,7 +19,9 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
19
19
 
20
20
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
21
 
22
- var _react = _interopRequireDefault(require("react"));
22
+ var _react = require("react");
23
+
24
+ var _unescape = require("./unescape");
23
25
 
24
26
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
25
27
 
@@ -32,12 +34,11 @@ var defaultOptions = {
32
34
  transSupportBasicHtmlNodes: true,
33
35
  transWrapTextNodes: '',
34
36
  transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'p'],
35
- useSuspense: true
37
+ useSuspense: true,
38
+ unescape: _unescape.unescape
36
39
  };
37
40
  var i18nInstance;
38
-
39
- var I18nContext = _react["default"].createContext();
40
-
41
+ var I18nContext = (0, _react.createContext)();
41
42
  exports.I18nContext = I18nContext;
42
43
 
43
44
  function setDefaults() {
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.unescape = void 0;
7
+ var matchHtmlEntity = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34);/g;
8
+ var htmlEntities = {
9
+ '&amp;': '&',
10
+ '&#38;': '&',
11
+ '&lt;': '<',
12
+ '&#60;': '<',
13
+ '&gt;': '>',
14
+ '&#62;': '>',
15
+ '&apos;': "'",
16
+ '&#39;': "'",
17
+ '&quot;': '"',
18
+ '&#34;': '"'
19
+ };
20
+
21
+ var unescapeHtmlEntity = function unescapeHtmlEntity(m) {
22
+ return htmlEntities[m];
23
+ };
24
+
25
+ var unescape = function unescape(text) {
26
+ return text.replace(matchHtmlEntity, unescapeHtmlEntity);
27
+ };
28
+
29
+ exports.unescape = unescape;
File without changes
@@ -11,7 +11,7 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
11
11
 
12
12
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
13
 
14
- var _react = _interopRequireDefault(require("react"));
14
+ var _react = require("react");
15
15
 
16
16
  var _useSSR = require("./useSSR");
17
17
 
@@ -32,7 +32,7 @@ function withSSR() {
32
32
  initialLanguage = _ref.initialLanguage,
33
33
  rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
34
34
  (0, _useSSR.useSSR)(initialI18nStore, initialLanguage);
35
- return _react["default"].createElement(WrappedComponent, _objectSpread({}, rest));
35
+ return (0, _react.createElement)(WrappedComponent, _objectSpread({}, rest));
36
36
  }
37
37
 
38
38
  I18nextWithSSR.getInitialProps = (0, _context.composeInitialProps)(WrappedComponent);
@@ -13,7 +13,7 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
13
13
 
14
14
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
15
 
16
- var _react = _interopRequireDefault(require("react"));
16
+ var _react = require("react");
17
17
 
18
18
  var _useTranslation3 = require("./useTranslation");
19
19
 
@@ -52,18 +52,18 @@ function withTranslation(ns) {
52
52
  passDownProps.forwardedRef = forwardedRef;
53
53
  }
54
54
 
55
- return _react["default"].createElement(WrappedComponent, passDownProps);
55
+ return (0, _react.createElement)(WrappedComponent, passDownProps);
56
56
  }
57
57
 
58
58
  I18nextWithTranslation.displayName = "withI18nextTranslation(".concat((0, _utils.getDisplayName)(WrappedComponent), ")");
59
59
  I18nextWithTranslation.WrappedComponent = WrappedComponent;
60
60
 
61
61
  var forwardRef = function forwardRef(props, ref) {
62
- return _react["default"].createElement(I18nextWithTranslation, Object.assign({}, props, {
62
+ return (0, _react.createElement)(I18nextWithTranslation, Object.assign({}, props, {
63
63
  forwardedRef: ref
64
64
  }));
65
65
  };
66
66
 
67
- return options.withRef ? _react["default"].forwardRef(forwardRef) : I18nextWithTranslation;
67
+ return options.withRef ? (0, _react.forwardRef)(forwardRef) : I18nextWithTranslation;
68
68
  };
69
69
  }