@bigbinary/neeto-tags-frontend 0.0.15 → 0.0.16

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/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import"./main.css";import"common/i18n";import e,{useState as t,useEffect as n}from"react";import{Toastr as r,Tag as o,Pane as a,Typography as i,Dropdown as c,Button as u,PageLoader as l,Table as s,Alert as f}from"@bigbinary/neetoui";import{QueryClient as d,QueryCache as m,useQuery as p,useMutation as h,QueryClientProvider as g}from"react-query";import y from"axios";import{MenuHorizontal as v,Plus as b}from"@bigbinary/neeto-icons";import{MenuBar as w,Container as E,Header as T,SubHeader as x}from"@bigbinary/neetoui/layouts";import{useTranslation as S}from"react-i18next";import{Formik as L,Form as k}from"formik";import{Input as N,Textarea as P,ActionBlock as _}from"@bigbinary/neetoui/formik";import*as C from"yup";function O(){
1
+ import"./main.css";import e,{useState as t,useEffect as n}from"react";import{Toastr as r,Tag as o,Pane as i,Typography as a,Dropdown as s,Button as u,PageLoader as c,Table as l,Alert as f}from"@bigbinary/neetoui";import{QueryClient as p,QueryCache as g,useQuery as h,useMutation as d,QueryClientProvider as v}from"react-query";import y from"axios";import{initReactI18next as m,useTranslation as b}from"react-i18next";import{MenuHorizontal as O,Plus as w}from"@bigbinary/neeto-icons";import{MenuBar as k,Container as x,Header as S,SubHeader as j}from"@bigbinary/neetoui/layouts";import{Input as P,Textarea as L,ActionBlock as E}from"@bigbinary/neetoui/formik";import{Formik as N,Form as C}from"formik";import*as R from"yup";function T(){
2
2
  /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
3
- O=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},o=r.iterator||"@@iterator",a=r.asyncIterator||"@@asyncIterator",i=r.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function u(e,t,n,r){var o=t&&t.prototype instanceof f?t:f,a=Object.create(o.prototype),i=new x(r||[]);return a._invoke=function(e,t,n){var r="suspendedStart";return function(o,a){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw a;return L()}for(n.method=o,n.arg=a;;){var i=n.delegate;if(i){var c=w(i,n);if(c){if(c===s)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var u=l(e,t,n);if("normal"===u.type){if(r=n.done?"completed":"suspendedYield",u.arg===s)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r="completed",n.method="throw",n.arg=u.arg)}}}(e,n,i),a}function l(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var s={};function f(){}function d(){}function m(){}var p={};c(p,o,(function(){return this}));var h=Object.getPrototypeOf,g=h&&h(h(S([])));g&&g!==t&&n.call(g,o)&&(p=g);var y=m.prototype=f.prototype=Object.create(p);function v(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function b(e,t){function r(o,a,i,c){var u=l(e[o],e,a);if("throw"!==u.type){var s=u.arg,f=s.value;return f&&"object"==typeof f&&n.call(f,"__await")?t.resolve(f.__await).then((function(e){r("next",e,i,c)}),(function(e){r("throw",e,i,c)})):t.resolve(f).then((function(e){s.value=e,i(s)}),(function(e){return r("throw",e,i,c)}))}c(u.arg)}var o;this._invoke=function(e,n){function a(){return new t((function(t,o){r(e,n,t,o)}))}return o=o?o.then(a,a):a()}}function w(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,w(e,t),"throw"===t.method))return s;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return s}var r=l(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,s;var o=r.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,s):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,s)}function E(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function T(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(E,this),this.reset(!0)}function S(e){if(e){var t=e[o];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,a=function t(){for(;++r<e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return a.next=a}}return{next:L}}function L(){return{value:void 0,done:!0}}return d.prototype=m,c(y,"constructor",m),c(m,"constructor",d),d.displayName=c(m,i,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===d||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,m):(e.__proto__=m,c(e,i,"GeneratorFunction")),e.prototype=Object.create(y),e},e.awrap=function(e){return{__await:e}},v(b.prototype),c(b.prototype,a,(function(){return this})),e.AsyncIterator=b,e.async=function(t,n,r,o,a){void 0===a&&(a=Promise);var i=new b(u(t,n,r,o),a);return e.isGeneratorFunction(n)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},v(y),c(y,i,"Generator"),c(y,o,(function(){return this})),c(y,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},e.values=S,x.prototype={constructor:x,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(T),!e)for(var t in this)"t"===t.charAt(0)&&n.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return i.type="throw",i.arg=e,t.next=n,r&&(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var a=this.tryEntries[o],i=a.completion;if("root"===a.tryLoc)return r("end");if(a.tryLoc<=this.prev){var c=n.call(a,"catchLoc"),u=n.call(a,"finallyLoc");if(c&&u){if(this.prev<a.catchLoc)return r(a.catchLoc,!0);if(this.prev<a.finallyLoc)return r(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return r(a.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return r(a.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var a=o;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=e,i.arg=t,a?(this.method="next",this.next=a.finallyLoc,s):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),s},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),T(n),s}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;T(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:S(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),s}},e}function A(e,t,n,r,o,a,i){try{var c=e[a](i),u=c.value}catch(e){return void n(e)}c.done?t(u):Promise.resolve(u).then(r,o)}function j(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var a=e.apply(t,n);function i(e){A(a,r,o,i,c,"next",e)}function c(e){A(a,r,o,i,c,"throw",e)}i(void 0)}))}}function I(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,a=[],i=!0,c=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){c=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(c)throw o}}return a}(e,t)||D(e,t)||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 F(e){return function(e){if(Array.isArray(e))return M(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||D(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function D(e,t){if(e){if("string"==typeof e)return M(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?M(e,t):void 0}}function M(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}y.defaults.baseURL="/";var B=function(e){return e?(e.success=200===e.status,e.data):e},G=function(e){var t,n;return 401===(null===(t=e.response)||void 0===t?void 0:t.status)&&(delete y.defaults.headers["X-Auth-Email"],delete y.defaults.headers["X-Auth-Token"],setTimeout((function(){window.location.href="/login"}),300)),function(e){if("Network Error"===e.message)throw new Error("No internet connection.")}(e),Promise.reject(null==e||null===(n=e.response)||void 0===n?void 0:n.data)},q=new d({queryCache:new m({onError:function(e){return r.error(e)}})}),X=[{title:"Name",dataIndex:"name",key:"name",render:function(t){return e.createElement(o,{label:t,color:"blue"})},width:"30%"},{title:"Description",dataIndex:"description",key:"description",render:function(e){return e||"--"},width:"40%"}],R=C.object({name:C.string().typeError("Name must be a string.").required("Name is a required field.").max(50,"Name should not exceed 50 characters."),description:C.string().typeError("Description must be a string.").nullable().max(255,"Description should not exceed 255 characters.")}),z="CREATE_TAG",Q="EDIT_TAG",U={name:"",description:""},H=function(e,t,n,r){return y.get(e,{params:{term:t,limit:n,page_no:r}})},J=function(e,t){return y.post(e,t)},V=function(e,t,n){return y.put("".concat(e,"/").concat(t),n)},Y=function(e,t){return y.delete("".concat(e,"/").concat(t))},K=function(){return h((function(e){var t=e.url,n=e.payload;return J(t,n)}),{onSuccess:function(){q.invalidateQueries(["tag-key"])}})},W=function(){return h((function(e){var t=e.url,n=e.id,r=e.payload;return V(t,n,r)}),{onSuccess:function(){q.invalidateQueries(["tag-key"])}})},$=function(t){var n=t.tag,o=t.type,c=t.onClose,u=t.tagType,l=t.goToFirstPage,s=o===Q,f=s?n:U,d=S().t,m=function(e){var t=e.isEdit,n=e.tagType,o=e.onClose,a=e.goToFirstPage,i=(t?W:K)(),c=i.mutate,u=i.isLoading,l=S().t;return{handleSubmit:function(e,i){var u,s=i.resetForm;e.description=null==e||null===(u=e.description)||void 0===u?void 0:u.trim();var f={payload:{tag:e}};f.url=n.url,t&&(f.id=e.id),c(f,{onSuccess:function(){!t&&a(),o(),r.success(l(t?"updateSuccess":"createSuccess"))},onError:function(e){var t=e.errors;s(),r.error(null==t?void 0:t.join(", "))}})},isSubmitting:u}}({isEdit:s,tagType:u,onClose:c,goToFirstPage:l}),p=m.handleSubmit;return e.createElement(a,{isOpen:!!o,onClose:c},e.createElement(a.Header,null,e.createElement(i,{style:"h2",weight:"semibold"},d(s?"editItem":"addNew",{what:d("tag")}))),e.createElement(L,{initialValues:f,validateOnBlur:!1,validateOnChange:!1,onSubmit:p,validationSchema:R},(function(t){var n=t.isSubmitting;return e.createElement(e.Fragment,null,e.createElement(a.Body,null,e.createElement(k,{className:"flex w-full flex-col space-y-4",noValidate:!0},e.createElement(N,{required:!0,autoFocus:!0,name:"name",label:"".concat(d("tag")," ").concat(d("name")),"data-cy":"tag-name-text-field",maxLength:50}),e.createElement(P,{name:"description",label:d("description"),rows:3,"data-cy":"tag-description-text-area",maxLength:255}))),e.createElement(a.Footer,{className:"flex items-center space-x-2"},e.createElement(_,{className:"flex items-center space-x-2",cancelButtonProps:{onClick:c},submitButtonProps:{loading:n}})))})))},Z=function(t){var n=t.tagTypes,r=t.showMenu,o=t.tagType,a=t.setTagType,i=S().t;return e.createElement(w,{showMenu:r,title:i("title")},Object.values(n).map((function(t){return e.createElement(w.Item,{key:t.id,label:t.label,description:t.description,active:o.id===t.id,onClick:function(){a(t)}})})))},ee=function(t,n,r){return[].concat(F(t),[{id:"actions",width:"10%",render:function(t,o){return e.createElement(c,{icon:v,buttonProps:{style:"text"},position:"bottom-end",autoWidth:!0,strategy:"fixed"},e.createElement("li",{className:"neeto-tag-dropdown__item"},e.createElement(u,{onClick:function(){return n(o)},label:"Edit",style:"text",className:"neeto-tag-dropdown__button"})),e.createElement("li",{className:"neeto-tag-dropdown__item"},e.createElement(u,{label:"Delete",onClick:function(){return r(o)},style:"danger-text",className:"neeto-tag-dropdown__button","data-cy":"tags-delete-button"})))}}])};var te=function(e){var o=e.tagTypes,a=I(t(o[0]),2),i=a[0],c=a[1],u=I(t([]),2),l=u[0],s=u[1],f=I(t(0),2),d=f[0],m=f[1],g=I(t(null),2),y=g[0],v=g[1],b=I(t(""),2),w=b[0],E=b[1],T=I(t(1),2),x=T[0],L=T[1],k=I(t(!0),2),N=k[0],P=k[1],_=I(t(null),2),C=_[0],A=_[1],F=I(t(!1),2),D=F[0],M=F[1],B=function(e,r){var o=I(t(e),2),a=o[0],i=o[1];return n((function(){var t=setTimeout((function(){return i(e)}),r||500);return function(){clearTimeout(t)}}),[e,r]),a}(w,500),G=S().t,X=function(e,t,n,r){return p(["tag-key",e,t,n,r],j(O().mark((function o(){return O().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,H(e,t,n,r);case 2:return o.abrupt("return",o.sent);case 3:case"end":return o.stop()}}),o)}))),{staleTime:32e5,keepPreviousData:!0})}(i.url,B,10,x),R=X.data,z=X.isSuccess,U=X.isPreviousdata,J=X.isLoading,V=h((function(e){var t=e.url,n=e.id;return Y(t,n)}),{onSuccess:function(){q.invalidateQueries(["tag-key"])}}),K=V.mutate,W=V.isLoading;return n((function(){if(z){var e=R.tags,t=R.total_count;m(t),s(e)}}),[z,R]),n((function(){v(null),L(1)}),[i]),{tags:l,tagsCount:d,tagType:i,isLoading:J,isPreviousdata:U,setTagType:c,selectedTag:y,setSelectedTag:v,searchTerm:w,setSearchTerm:E,pageIndex:x,setPageIndex:L,goToFirstPage:function(){1!==x&&L(1)},handleEdit:function(e){v(e),A(Q)},handleDelete:function(e){v(e),M(!0)},handleAlertClose:function(){M(!1),v(null)},isMenuOpen:N,setIsMenuOpen:P,paneType:C,setPaneType:A,isDeleteAlertOpen:D,handleConfirmDelete:function(){var e={url:i.url,id:null==y?void 0:y.id};K(e,{onSuccess:function(){M(!1),1===l.length&&L((function(e){return e-1})),r.success(G("deleteSuccess"))},onError:function(e){var t=e.errors;r.error(null==t?void 0:t.join(", "))}})},isDeleting:W}},ne=function(t){var n=t.tagTypes,r=t.breadcrumbs,o=t.displayMenu,a=te({tagTypes:n}),c=a.tagType,d=a.setTagType,m=a.tags,p=a.tagsCount,h=a.isLoading,g=a.selectedTag,y=a.setSelectedTag,v=a.searchTerm,w=a.setSearchTerm,L=a.pageIndex,k=a.setPageIndex,N=a.goToFirstPage,P=a.handleEdit,_=a.handleDelete,C=a.handleAlertClose,O=a.isMenuOpen,A=a.setIsMenuOpen,j=a.paneType,I=a.setPaneType,D=a.isDeleteAlertOpen,M=a.handleConfirmDelete,B=S().t;return e.createElement(e.Fragment,null,e.createElement("div",{className:"neeto-tag-wrapper"},o&&e.createElement(Z,{tagTypes:n,showMenu:O,tagType:c,setTagType:d}),e.createElement(E,null,e.createElement(T,{title:"".concat(c.label," ").concat(B("title")),menuBarToggle:o?function(){return A((function(e){return!e}))}:null,searchProps:{value:v,onChange:function(e){var t=e.target.value;t.trim()&&N(),w(t)},placeholder:B("search",{where:B("title")})},actionBlock:e.createElement(u,{icon:b,size:"large",label:B("addNew",{what:B("tag")}),onClick:function(){y(null),I(z)},"data-cy":"add-new-tag-button"}),breadcrumbs:r}),h?e.createElement(l,null):e.createElement("div",{className:"w-full flex-grow"},e.createElement(x,{leftActionBlock:e.createElement(i,{component:"h4",className:"neeto-ui-gray-800 font-semibold"},"".concat(p," ").concat(c.label," Tag(s)"))}),e.createElement("div",{className:"neeto-tags--table__wrapper"},e.createElement(s,{fixedHeight:!0,rowData:m,columnData:ee(c.columns?[].concat(F(X),F(c.columns)):X,P,_),defaultPageSize:10,currentPageNumber:L,handlePageChange:k,totalCount:p,allowRowClick:!1,rowSelection:!1,paginationProps:{showSizeChanger:!1},scroll:{x:"100%"}}))))),e.createElement($,{type:j,tagType:c,tag:g,onClose:function(){return I(null)},goToFirstPage:N}),e.createElement(f,{isOpen:D,title:"".concat(B("delete")," ").concat(null==g?void 0:g.name),message:e.createElement(e.Fragment,null,B("deleteItem",{type:B("tag")})," ",e.createElement("strong",null,null==g?void 0:g.name),"? ",B("cannotBeUndone")),onSubmit:M,onClose:C,submitButtonLabel:B("proceed"),cancelButtonLabel:B("cancel")}))},re=function(r){var o=r.tagTypes,a=r.breadcrumbs,i=r.displayMenu,c=void 0===i||i,u=I(t(!0),2),s=u[0],f=u[1];return n((function(){!function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(){return null};y.defaults.headers={Accept:"application/json","Content-Type":"application/json","X-CSRF-TOKEN":null===(e=document.querySelector('[name="csrf-token"]'))||void 0===e?void 0:e.getAttribute("content")};var n=JSON.parse(localStorage.getItem("authToken")),r=JSON.parse(localStorage.getItem("authEmail"));n&&r&&(y.defaults.headers["X-Auth-Email"]=r,y.defaults.headers["X-Auth-Token"]=n),t(!1)}(f),y.interceptors.response.use(B,G)}),[]),s?e.createElement(l,null):e.createElement(g,{client:q},e.createElement(ne,{tagTypes:o,breadcrumbs:a,displayMenu:c}))};export{re as NeetoTags};
3
+ T=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},o=r.iterator||"@@iterator",i=r.asyncIterator||"@@asyncIterator",a=r.toStringTag||"@@toStringTag";function s(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{s({},"")}catch(e){s=function(e,t,n){return e[t]=n}}function u(e,t,n,r){var o=t&&t.prototype instanceof f?t:f,i=Object.create(o.prototype),a=new x(r||[]);return i._invoke=function(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return j()}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=O(a,n);if(s){if(s===l)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var u=c(e,t,n);if("normal"===u.type){if(r=n.done?"completed":"suspendedYield",u.arg===l)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r="completed",n.method="throw",n.arg=u.arg)}}}(e,n,a),i}function c(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var l={};function f(){}function p(){}function g(){}var h={};s(h,o,(function(){return this}));var d=Object.getPrototypeOf,v=d&&d(d(S([])));v&&v!==t&&n.call(v,o)&&(h=v);var y=g.prototype=f.prototype=Object.create(h);function m(e){["next","throw","return"].forEach((function(t){s(e,t,(function(e){return this._invoke(t,e)}))}))}function b(e,t){function r(o,i,a,s){var u=c(e[o],e,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==typeof f&&n.call(f,"__await")?t.resolve(f.__await).then((function(e){r("next",e,a,s)}),(function(e){r("throw",e,a,s)})):t.resolve(f).then((function(e){l.value=e,a(l)}),(function(e){return r("throw",e,a,s)}))}s(u.arg)}var o;this._invoke=function(e,n){function i(){return new t((function(t,o){r(e,n,t,o)}))}return o=o?o.then(i,i):i()}}function O(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,O(e,t),"throw"===t.method))return l;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return l}var r=c(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,l;var o=r.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,l):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,l)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function k(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function S(e){if(e){var t=e[o];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,i=function t(){for(;++r<e.length;)if(n.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return i.next=i}}return{next:j}}function j(){return{value:void 0,done:!0}}return p.prototype=g,s(y,"constructor",g),s(g,"constructor",p),p.displayName=s(g,a,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,g):(e.__proto__=g,s(e,a,"GeneratorFunction")),e.prototype=Object.create(y),e},e.awrap=function(e){return{__await:e}},m(b.prototype),s(b.prototype,i,(function(){return this})),e.AsyncIterator=b,e.async=function(t,n,r,o,i){void 0===i&&(i=Promise);var a=new b(u(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},m(y),s(y,a,"Generator"),s(y,o,(function(){return this})),s(y,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},e.values=S,x.prototype={constructor:x,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(k),!e)for(var t in this)"t"===t.charAt(0)&&n.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(n,r){return a.type="throw",a.arg=e,t.next=n,r&&(t.method="next",t.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),u=n.call(i,"finallyLoc");if(s&&u){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,l):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),l},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),k(n),l}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;k(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:S(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),l}},e}function D(e,t,n,r,o,i,a){try{var s=e[i](a),u=s.value}catch(e){return void n(e)}s.done?t(u):Promise.resolve(u).then(r,o)}function I(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){D(i,r,o,a,s,"next",e)}function s(e){D(i,r,o,a,s,"throw",e)}a(void 0)}))}}function F(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||_(e,t)||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 A(e){return function(e){if(Array.isArray(e))return V(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||_(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _(e,t){if(e){if("string"==typeof e)return V(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?V(e,t):void 0}}function V(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}y.defaults.baseURL="/";var B=function(e){return e?(e.success=200===e.status,e.data):e},M=function(e){var t,n;return 401===(null===(t=e.response)||void 0===t?void 0:t.status)&&(delete y.defaults.headers["X-Auth-Email"],delete y.defaults.headers["X-Auth-Token"],setTimeout((function(){window.location.href="/login"}),300)),function(e){if("Network Error"===e.message)throw new Error("No internet connection.")}(e),Promise.reject(null==e||null===(n=e.response)||void 0===n?void 0:n.data)};function U(e){return U="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},U(e)}function K(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function H(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function z(e,t,n){return t&&H(e.prototype,t),n&&H(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function J(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function q(e,t){return q=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},q(e,t)}function G(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&q(e,t)}function $(e,t){if(t&&("object"===U(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return J(e)}function W(e){return W=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},W(e)}function Y(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function X(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Q(e){return function(e){if(Array.isArray(e))return e}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return X(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?X(e,t):void 0}}(e)||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 Z(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ee(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Z(Object(n),!0).forEach((function(t){Y(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Z(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var te={type:"logger",log:function(e){this.output("log",e)},warn:function(e){this.output("warn",e)},error:function(e){this.output("error",e)},output:function(e,t){console&&console[e]&&console[e].apply(console,t)}},ne=new(function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};K(this,e),this.init(t,n)}return z(e,[{key:"init",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.prefix=t.prefix||"i18next:",this.logger=e||te,this.options=t,this.debug=t.debug}},{key:"setDebug",value:function(e){this.debug=e}},{key:"log",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"log","",!0)}},{key:"warn",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","",!0)}},{key:"error",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"error","")}},{key:"deprecate",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","WARNING DEPRECATED: ",!0)}},{key:"forward",value:function(e,t,n,r){return r&&!this.debug?null:("string"==typeof e[0]&&(e[0]="".concat(n).concat(this.prefix," ").concat(e[0])),this.logger[t](e))}},{key:"create",value:function(t){return new e(this.logger,ee(ee({},{prefix:"".concat(this.prefix,":").concat(t,":")}),this.options))}}]),e}()),re=function(){function e(){K(this,e),this.observers={}}return z(e,[{key:"on",value:function(e,t){var n=this;return e.split(" ").forEach((function(e){n.observers[e]=n.observers[e]||[],n.observers[e].push(t)})),this}},{key:"off",value:function(e,t){this.observers[e]&&(t?this.observers[e]=this.observers[e].filter((function(e){return e!==t})):delete this.observers[e])}},{key:"emit",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];if(this.observers[e]){var o=[].concat(this.observers[e]);o.forEach((function(e){e.apply(void 0,n)}))}if(this.observers["*"]){var i=[].concat(this.observers["*"]);i.forEach((function(t){t.apply(t,[e].concat(n))}))}}}]),e}();function oe(){var e,t,n=new Promise((function(n,r){e=n,t=r}));return n.resolve=e,n.reject=t,n}function ie(e){return null==e?"":""+e}function ae(e,t,n){e.forEach((function(e){t[e]&&(n[e]=t[e])}))}function se(e,t,n){function r(e){return e&&e.indexOf("###")>-1?e.replace(/###/g,"."):e}function o(){return!e||"string"==typeof e}for(var i="string"!=typeof t?[].concat(t):t.split(".");i.length>1;){if(o())return{};var a=r(i.shift());!e[a]&&n&&(e[a]=new n),e=Object.prototype.hasOwnProperty.call(e,a)?e[a]:{}}return o()?{}:{obj:e,k:r(i.shift())}}function ue(e,t,n){var r=se(e,t,Object);r.obj[r.k]=n}function ce(e,t){var n=se(e,t),r=n.obj,o=n.k;if(r)return r[o]}function le(e,t,n){var r=ce(e,n);return void 0!==r?r:ce(t,n)}function fe(e,t,n){for(var r in t)"__proto__"!==r&&"constructor"!==r&&(r in e?"string"==typeof e[r]||e[r]instanceof String||"string"==typeof t[r]||t[r]instanceof String?n&&(e[r]=t[r]):fe(e[r],t[r],n):e[r]=t[r]);return e}function pe(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var ge={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};function he(e){return"string"==typeof e?e.replace(/[&<>"'\/]/g,(function(e){return ge[e]})):e}var de="undefined"!=typeof window&&window.navigator&&window.navigator.userAgent&&window.navigator.userAgent.indexOf("MSIE")>-1,ve=[" ",",","?","!",";"];function ye(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function me(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ye(Object(n),!0).forEach((function(t){Y(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ye(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function be(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=W(e);if(t){var o=W(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return $(this,n)}}function Oe(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:".";if(e){if(e[t])return e[t];for(var r=t.split(n),o=e,i=0;i<r.length;++i){if(!o)return;if("string"==typeof o[r[i]]&&i+1<r.length)return;if(void 0===o[r[i]]){for(var a=2,s=r.slice(i,i+a).join(n),u=o[s];void 0===u&&r.length>i+a;)a++,u=o[s=r.slice(i,i+a).join(n)];if(void 0===u)return;if(t.endsWith(s)){if("string"==typeof u)return u;if(s&&"string"==typeof u[s])return u[s]}var c=r.slice(i+a).join(n);return c?Oe(u,c,n):void 0}o=o[r[i]]}return o}}var we=function(e){G(n,re);var t=be(n);function n(e){var r,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ns:["translation"],defaultNS:"translation"};return K(this,n),r=t.call(this),de&&re.call(J(r)),r.data=e||{},r.options=o,void 0===r.options.keySeparator&&(r.options.keySeparator="."),void 0===r.options.ignoreJSONStructure&&(r.options.ignoreJSONStructure=!0),r}return z(n,[{key:"addNamespaces",value:function(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}},{key:"removeNamespaces",value:function(e){var t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}},{key:"getResource",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=void 0!==r.keySeparator?r.keySeparator:this.options.keySeparator,i=void 0!==r.ignoreJSONStructure?r.ignoreJSONStructure:this.options.ignoreJSONStructure,a=[e,t];n&&"string"!=typeof n&&(a=a.concat(n)),n&&"string"==typeof n&&(a=a.concat(o?n.split(o):n)),e.indexOf(".")>-1&&(a=e.split("."));var s=ce(this.data,a);return s||!i||"string"!=typeof n?s:Oe(this.data&&this.data[e]&&this.data[e][t],n,o)}},{key:"addResource",value:function(e,t,n,r){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{silent:!1},i=this.options.keySeparator;void 0===i&&(i=".");var a=[e,t];n&&(a=a.concat(i?n.split(i):n)),e.indexOf(".")>-1&&(r=t,t=(a=e.split("."))[1]),this.addNamespaces(t),ue(this.data,a,r),o.silent||this.emit("added",e,t,n,r)}},{key:"addResources",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{silent:!1};for(var o in n)"string"!=typeof n[o]&&"[object Array]"!==Object.prototype.toString.apply(n[o])||this.addResource(e,t,o,n[o],{silent:!0});r.silent||this.emit("added",e,t,n)}},{key:"addResourceBundle",value:function(e,t,n,r,o){var i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{silent:!1},a=[e,t];e.indexOf(".")>-1&&(r=n,n=t,t=(a=e.split("."))[1]),this.addNamespaces(t);var s=ce(this.data,a)||{};r?fe(s,n,o):s=me(me({},s),n),ue(this.data,a,s),i.silent||this.emit("added",e,t,n)}},{key:"removeResourceBundle",value:function(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit("removed",e,t)}},{key:"hasResourceBundle",value:function(e,t){return void 0!==this.getResource(e,t)}},{key:"getResourceBundle",value:function(e,t){return t||(t=this.options.defaultNS),"v1"===this.options.compatibilityAPI?me(me({},{}),this.getResource(e,t)):this.getResource(e,t)}},{key:"getDataByLanguage",value:function(e){return this.data[e]}},{key:"hasLanguageSomeTranslations",value:function(e){var t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find((function(e){return t[e]&&Object.keys(t[e]).length>0}))}},{key:"toJSON",value:function(){return this.data}}]),n}(),ke={processors:{},addPostProcessor:function(e){this.processors[e.name]=e},handle:function(e,t,n,r,o){var i=this;return e.forEach((function(e){i.processors[e]&&(t=i.processors[e].process(t,n,r,o))})),t}};function xe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Se(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?xe(Object(n),!0).forEach((function(t){Y(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):xe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function je(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=W(e);if(t){var o=W(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return $(this,n)}}var Pe={},Le=function(e){G(n,re);var t=je(n);function n(e){var r,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return K(this,n),r=t.call(this),de&&re.call(J(r)),ae(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],e,J(r)),r.options=o,void 0===r.options.keySeparator&&(r.options.keySeparator="."),r.logger=ne.create("translator"),r}return z(n,[{key:"changeLanguage",value:function(e){e&&(this.language=e)}},{key:"exists",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}};if(null==e)return!1;var n=this.resolve(e,t);return n&&void 0!==n.res}},{key:"extractFromKey",value:function(e,t){var n=void 0!==t.nsSeparator?t.nsSeparator:this.options.nsSeparator;void 0===n&&(n=":");var r=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,o=t.ns||this.options.defaultNS||[],i=n&&e.indexOf(n)>-1,a=!(this.options.userDefinedKeySeparator||t.keySeparator||this.options.userDefinedNsSeparator||t.nsSeparator||function(e,t,n){t=t||"",n=n||"";var r=ve.filter((function(e){return t.indexOf(e)<0&&n.indexOf(e)<0}));if(0===r.length)return!0;var o=new RegExp("(".concat(r.map((function(e){return"?"===e?"\\?":e})).join("|"),")")),i=!o.test(e);if(!i){var a=e.indexOf(n);a>0&&!o.test(e.substring(0,a))&&(i=!0)}return i}(e,n,r));if(i&&!a){var s=e.match(this.interpolator.nestingRegexp);if(s&&s.length>0)return{key:e,namespaces:o};var u=e.split(n);(n!==r||n===r&&this.options.ns.indexOf(u[0])>-1)&&(o=u.shift()),e=u.join(r)}return"string"==typeof o&&(o=[o]),{key:e,namespaces:o}}},{key:"translate",value:function(e,t,r){var o=this;if("object"!==U(t)&&this.options.overloadTranslationOptionHandler&&(t=this.options.overloadTranslationOptionHandler(arguments)),t||(t={}),null==e)return"";Array.isArray(e)||(e=[String(e)]);var i=void 0!==t.returnDetails?t.returnDetails:this.options.returnDetails,a=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,s=this.extractFromKey(e[e.length-1],t),u=s.key,c=s.namespaces,l=c[c.length-1],f=t.lng||this.language,p=t.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(f&&"cimode"===f.toLowerCase()){if(p){var g=t.nsSeparator||this.options.nsSeparator;return i?(h.res="".concat(l).concat(g).concat(u),h):"".concat(l).concat(g).concat(u)}return i?(h.res=u,h):u}var h=this.resolve(e,t),d=h&&h.res,v=h&&h.usedKey||u,y=h&&h.exactUsedKey||u,m=Object.prototype.toString.apply(d),b=["[object Number]","[object Function]","[object RegExp]"],O=void 0!==t.joinArrays?t.joinArrays:this.options.joinArrays,w=!this.i18nFormat||this.i18nFormat.handleAsObject,k="string"!=typeof d&&"boolean"!=typeof d&&"number"!=typeof d;if(w&&d&&k&&b.indexOf(m)<0&&("string"!=typeof O||"[object Array]"!==m)){if(!t.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");var x=this.options.returnedObjectHandler?this.options.returnedObjectHandler(v,d,Se(Se({},t),{},{ns:c})):"key '".concat(u," (").concat(this.language,")' returned an object instead of string.");return i?(h.res=x,h):x}if(a){var S="[object Array]"===m,j=S?[]:{},P=S?y:v;for(var L in d)if(Object.prototype.hasOwnProperty.call(d,L)){var E="".concat(P).concat(a).concat(L);j[L]=this.translate(E,Se(Se({},t),{joinArrays:!1,ns:c})),j[L]===E&&(j[L]=d[L])}d=j}}else if(w&&"string"==typeof O&&"[object Array]"===m)(d=d.join(O))&&(d=this.extendTranslation(d,e,t,r));else{var N=!1,C=!1,R=void 0!==t.count&&"string"!=typeof t.count,T=n.hasDefaultValue(t),D=R?this.pluralResolver.getSuffix(f,t.count,t):"",I=t["defaultValue".concat(D)]||t.defaultValue;!this.isValidLookup(d)&&T&&(N=!0,d=I),this.isValidLookup(d)||(C=!0,d=u);var F=t.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey,A=F&&C?void 0:d,_=T&&I!==d&&this.options.updateMissing;if(C||N||_){if(this.logger.log(_?"updateKey":"missingKey",f,l,u,_?I:d),a){var V=this.resolve(u,Se(Se({},t),{},{keySeparator:!1}));V&&V.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}var B=[],M=this.languageUtils.getFallbackCodes(this.options.fallbackLng,t.lng||this.language);if("fallback"===this.options.saveMissingTo&&M&&M[0])for(var K=0;K<M.length;K++)B.push(M[K]);else"all"===this.options.saveMissingTo?B=this.languageUtils.toResolveHierarchy(t.lng||this.language):B.push(t.lng||this.language);var H=function(e,n,r){var i=T&&r!==d?r:A;o.options.missingKeyHandler?o.options.missingKeyHandler(e,l,n,i,_,t):o.backendConnector&&o.backendConnector.saveMissing&&o.backendConnector.saveMissing(e,l,n,i,_,t),o.emit("missingKey",e,l,n,d)};this.options.saveMissing&&(this.options.saveMissingPlurals&&R?B.forEach((function(e){o.pluralResolver.getSuffixes(e,t).forEach((function(n){H([e],u+n,t["defaultValue".concat(n)]||I)}))})):H(B,u,I))}d=this.extendTranslation(d,e,t,h,r),C&&d===u&&this.options.appendNamespaceToMissingKey&&(d="".concat(l,":").concat(u)),(C||N)&&this.options.parseMissingKeyHandler&&(d="v1"!==this.options.compatibilityAPI?this.options.parseMissingKeyHandler(u,N?d:void 0):this.options.parseMissingKeyHandler(d))}return i?(h.res=d,h):d}},{key:"extendTranslation",value:function(e,t,n,r,o){var i=this;if(this.i18nFormat&&this.i18nFormat.parse)e=this.i18nFormat.parse(e,Se(Se({},this.options.interpolation.defaultVariables),n),r.usedLng,r.usedNS,r.usedKey,{resolved:r});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init(Se(Se({},n),{interpolation:Se(Se({},this.options.interpolation),n.interpolation)}));var a,s="string"==typeof e&&(n&&n.interpolation&&void 0!==n.interpolation.skipOnVariables?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);if(s){var u=e.match(this.interpolator.nestingRegexp);a=u&&u.length}var c=n.replace&&"string"!=typeof n.replace?n.replace:n;if(this.options.interpolation.defaultVariables&&(c=Se(Se({},this.options.interpolation.defaultVariables),c)),e=this.interpolator.interpolate(e,c,n.lng||this.language,n),s){var l=e.match(this.interpolator.nestingRegexp);a<(l&&l.length)&&(n.nest=!1)}!1!==n.nest&&(e=this.interpolator.nest(e,(function(){for(var e=arguments.length,r=new Array(e),a=0;a<e;a++)r[a]=arguments[a];return o&&o[0]===r[0]&&!n.context?(i.logger.warn("It seems you are nesting recursively key: ".concat(r[0]," in key: ").concat(t[0])),null):i.translate.apply(i,r.concat([t]))}),n)),n.interpolation&&this.interpolator.reset()}var f=n.postProcess||this.options.postProcess,p="string"==typeof f?[f]:f;return null!=e&&p&&p.length&&!1!==n.applyPostProcessor&&(e=ke.handle(p,e,t,this.options&&this.options.postProcessPassResolved?Se({i18nResolved:r},n):n,this)),e}},{key:"resolve",value:function(e){var t,n,r,o,i,a=this,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return"string"==typeof e&&(e=[e]),e.forEach((function(e){if(!a.isValidLookup(t)){var u=a.extractFromKey(e,s),c=u.key;n=c;var l=u.namespaces;a.options.fallbackNS&&(l=l.concat(a.options.fallbackNS));var f=void 0!==s.count&&"string"!=typeof s.count,p=f&&!s.ordinal&&0===s.count&&a.pluralResolver.shouldUseIntlApi(),g=void 0!==s.context&&("string"==typeof s.context||"number"==typeof s.context)&&""!==s.context,h=s.lngs?s.lngs:a.languageUtils.toResolveHierarchy(s.lng||a.language,s.fallbackLng);l.forEach((function(e){a.isValidLookup(t)||(i=e,!Pe["".concat(h[0],"-").concat(e)]&&a.utils&&a.utils.hasLoadedNamespace&&!a.utils.hasLoadedNamespace(i)&&(Pe["".concat(h[0],"-").concat(e)]=!0,a.logger.warn('key "'.concat(n,'" for languages "').concat(h.join(", "),'" won\'t get resolved as namespace "').concat(i,'" was not yet loaded'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),h.forEach((function(n){if(!a.isValidLookup(t)){o=n;var i,u=[c];if(a.i18nFormat&&a.i18nFormat.addLookupKeys)a.i18nFormat.addLookupKeys(u,c,n,e,s);else{var l;f&&(l=a.pluralResolver.getSuffix(n,s.count,s));var h="_zero";if(f&&(u.push(c+l),p&&u.push(c+h)),g){var d="".concat(c).concat(a.options.contextSeparator).concat(s.context);u.push(d),f&&(u.push(d+l),p&&u.push(d+h))}}for(;i=u.pop();)a.isValidLookup(t)||(r=i,t=a.getResource(n,e,i,s))}})))}))}})),{res:t,usedKey:n,exactUsedKey:r,usedLng:o,usedNS:i}}},{key:"isValidLookup",value:function(e){return!(void 0===e||!this.options.returnNull&&null===e||!this.options.returnEmptyString&&""===e)}},{key:"getResource",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(e,t,n,r):this.resourceStore.getResource(e,t,n,r)}}],[{key:"hasDefaultValue",value:function(e){var t="defaultValue";for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t===n.substring(0,t.length)&&void 0!==e[n])return!0;return!1}}]),n}();function Ee(e){return e.charAt(0).toUpperCase()+e.slice(1)}var Ne=function(){function e(t){K(this,e),this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=ne.create("languageUtils")}return z(e,[{key:"getScriptPartFromCode",value:function(e){if(!e||e.indexOf("-")<0)return null;var t=e.split("-");return 2===t.length?null:(t.pop(),"x"===t[t.length-1].toLowerCase()?null:this.formatLanguageCode(t.join("-")))}},{key:"getLanguagePartFromCode",value:function(e){if(!e||e.indexOf("-")<0)return e;var t=e.split("-");return this.formatLanguageCode(t[0])}},{key:"formatLanguageCode",value:function(e){if("string"==typeof e&&e.indexOf("-")>-1){var t=["hans","hant","latn","cyrl","cans","mong","arab"],n=e.split("-");return this.options.lowerCaseLng?n=n.map((function(e){return e.toLowerCase()})):2===n.length?(n[0]=n[0].toLowerCase(),n[1]=n[1].toUpperCase(),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=Ee(n[1].toLowerCase()))):3===n.length&&(n[0]=n[0].toLowerCase(),2===n[1].length&&(n[1]=n[1].toUpperCase()),"sgn"!==n[0]&&2===n[2].length&&(n[2]=n[2].toUpperCase()),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=Ee(n[1].toLowerCase())),t.indexOf(n[2].toLowerCase())>-1&&(n[2]=Ee(n[2].toLowerCase()))),n.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}},{key:"isSupportedCode",value:function(e){return("languageOnly"===this.options.load||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}},{key:"getBestMatchFromCodes",value:function(e){var t,n=this;return e?(e.forEach((function(e){if(!t){var r=n.formatLanguageCode(e);n.options.supportedLngs&&!n.isSupportedCode(r)||(t=r)}})),!t&&this.options.supportedLngs&&e.forEach((function(e){if(!t){var r=n.getLanguagePartFromCode(e);if(n.isSupportedCode(r))return t=r;t=n.options.supportedLngs.find((function(e){if(0===e.indexOf(r))return e}))}})),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t):null}},{key:"getFallbackCodes",value:function(e,t){if(!e)return[];if("function"==typeof e&&(e=e(t)),"string"==typeof e&&(e=[e]),"[object Array]"===Object.prototype.toString.apply(e))return e;if(!t)return e.default||[];var n=e[t];return n||(n=e[this.getScriptPartFromCode(t)]),n||(n=e[this.formatLanguageCode(t)]),n||(n=e[this.getLanguagePartFromCode(t)]),n||(n=e.default),n||[]}},{key:"toResolveHierarchy",value:function(e,t){var n=this,r=this.getFallbackCodes(t||this.options.fallbackLng||[],e),o=[],i=function(e){e&&(n.isSupportedCode(e)?o.push(e):n.logger.warn("rejecting language code not found in supportedLngs: ".concat(e)))};return"string"==typeof e&&e.indexOf("-")>-1?("languageOnly"!==this.options.load&&i(this.formatLanguageCode(e)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&i(this.getScriptPartFromCode(e)),"currentOnly"!==this.options.load&&i(this.getLanguagePartFromCode(e))):"string"==typeof e&&i(this.formatLanguageCode(e)),r.forEach((function(e){o.indexOf(e)<0&&i(n.formatLanguageCode(e))})),o}}]),e}(),Ce=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],Re={1:function(e){return Number(e>1)},2:function(e){return Number(1!=e)},3:function(e){return 0},4:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},5:function(e){return Number(0==e?0:1==e?1:2==e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5)},6:function(e){return Number(1==e?0:e>=2&&e<=4?1:2)},7:function(e){return Number(1==e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},8:function(e){return Number(1==e?0:2==e?1:8!=e&&11!=e?2:3)},9:function(e){return Number(e>=2)},10:function(e){return Number(1==e?0:2==e?1:e<7?2:e<11?3:4)},11:function(e){return Number(1==e||11==e?0:2==e||12==e?1:e>2&&e<20?2:3)},12:function(e){return Number(e%10!=1||e%100==11)},13:function(e){return Number(0!==e)},14:function(e){return Number(1==e?0:2==e?1:3==e?2:3)},15:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2)},16:function(e){return Number(e%10==1&&e%100!=11?0:0!==e?1:2)},17:function(e){return Number(1==e||e%10==1&&e%100!=11?0:1)},18:function(e){return Number(0==e?0:1==e?1:2)},19:function(e){return Number(1==e?0:0==e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3)},20:function(e){return Number(1==e?0:0==e||e%100>0&&e%100<20?1:2)},21:function(e){return Number(e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0)},22:function(e){return Number(1==e?0:2==e?1:(e<0||e>10)&&e%10==0?2:3)}},Te=["v1","v2","v3"],De={zero:0,one:1,two:2,few:3,many:4,other:5};function Ie(){var e={};return Ce.forEach((function(t){t.lngs.forEach((function(n){e[n]={numbers:t.nr,plurals:Re[t.fc]}}))})),e}var Fe=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};K(this,e),this.languageUtils=t,this.options=n,this.logger=ne.create("pluralResolver"),this.options.compatibilityJSON&&"v4"!==this.options.compatibilityJSON||"undefined"!=typeof Intl&&Intl.PluralRules||(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=Ie()}return z(e,[{key:"addRule",value:function(e,t){this.rules[e]=t}},{key:"getRule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(e,{type:t.ordinal?"ordinal":"cardinal"})}catch(e){return}return this.rules[e]||this.rules[this.languageUtils.getLanguagePartFromCode(e)]}},{key:"needsPlural",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=this.getRule(e,t);return this.shouldUseIntlApi()?n&&n.resolvedOptions().pluralCategories.length>1:n&&n.numbers.length>1}},{key:"getPluralFormsOfKey",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.getSuffixes(e,n).map((function(e){return"".concat(t).concat(e)}))}},{key:"getSuffixes",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=this.getRule(e,n);return r?this.shouldUseIntlApi()?r.resolvedOptions().pluralCategories.sort((function(e,t){return De[e]-De[t]})).map((function(e){return"".concat(t.options.prepend).concat(e)})):r.numbers.map((function(r){return t.getSuffix(e,r,n)})):[]}},{key:"getSuffix",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=this.getRule(e,n);return r?this.shouldUseIntlApi()?"".concat(this.options.prepend).concat(r.select(t)):this.getSuffixRetroCompatible(r,t):(this.logger.warn("no plural rule found for: ".concat(e)),"")}},{key:"getSuffixRetroCompatible",value:function(e,t){var n=this,r=e.noAbs?e.plurals(t):e.plurals(Math.abs(t)),o=e.numbers[r];this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]&&(2===o?o="plural":1===o&&(o=""));var i=function(){return n.options.prepend&&o.toString()?n.options.prepend+o.toString():o.toString()};return"v1"===this.options.compatibilityJSON?1===o?"":"number"==typeof o?"_plural_".concat(o.toString()):i():"v2"===this.options.compatibilityJSON||this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]?i():this.options.prepend&&r.toString()?this.options.prepend+r.toString():r.toString()}},{key:"shouldUseIntlApi",value:function(){return!Te.includes(this.options.compatibilityJSON)}}]),e}();function Ae(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _e(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ae(Object(n),!0).forEach((function(t){Y(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ae(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Ve=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};K(this,e),this.logger=ne.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||function(e){return e},this.init(t)}return z(e,[{key:"init",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.interpolation||(e.interpolation={escapeValue:!0});var t=e.interpolation;this.escape=void 0!==t.escape?t.escape:he,this.escapeValue=void 0===t.escapeValue||t.escapeValue,this.useRawValueToEscape=void 0!==t.useRawValueToEscape&&t.useRawValueToEscape,this.prefix=t.prefix?pe(t.prefix):t.prefixEscaped||"{{",this.suffix=t.suffix?pe(t.suffix):t.suffixEscaped||"}}",this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||",",this.unescapePrefix=t.unescapeSuffix?"":t.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":t.unescapeSuffix||"",this.nestingPrefix=t.nestingPrefix?pe(t.nestingPrefix):t.nestingPrefixEscaped||pe("$t("),this.nestingSuffix=t.nestingSuffix?pe(t.nestingSuffix):t.nestingSuffixEscaped||pe(")"),this.nestingOptionsSeparator=t.nestingOptionsSeparator?t.nestingOptionsSeparator:t.nestingOptionsSeparator||",",this.maxReplaces=t.maxReplaces?t.maxReplaces:1e3,this.alwaysFormat=void 0!==t.alwaysFormat&&t.alwaysFormat,this.resetRegExp()}},{key:"reset",value:function(){this.options&&this.init(this.options)}},{key:"resetRegExp",value:function(){var e="".concat(this.prefix,"(.+?)").concat(this.suffix);this.regexp=new RegExp(e,"g");var t="".concat(this.prefix).concat(this.unescapePrefix,"(.+?)").concat(this.unescapeSuffix).concat(this.suffix);this.regexpUnescape=new RegExp(t,"g");var n="".concat(this.nestingPrefix,"(.+?)").concat(this.nestingSuffix);this.nestingRegexp=new RegExp(n,"g")}},{key:"interpolate",value:function(e,t,n,r){var o,i,a,s=this,u=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function c(e){return e.replace(/\$/g,"$$$$")}var l=function(e){if(e.indexOf(s.formatSeparator)<0){var o=le(t,u,e);return s.alwaysFormat?s.format(o,void 0,n,_e(_e(_e({},r),t),{},{interpolationkey:e})):o}var i=e.split(s.formatSeparator),a=i.shift().trim(),c=i.join(s.formatSeparator).trim();return s.format(le(t,u,a),c,n,_e(_e(_e({},r),t),{},{interpolationkey:a}))};this.resetRegExp();var f=r&&r.missingInterpolationHandler||this.options.missingInterpolationHandler,p=r&&r.interpolation&&void 0!==r.interpolation.skipOnVariables?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:function(e){return c(e)}},{regex:this.regexp,safeValue:function(e){return s.escapeValue?c(s.escape(e)):c(e)}}].forEach((function(t){for(a=0;o=t.regex.exec(e);){var n=o[1].trim();if(void 0===(i=l(n)))if("function"==typeof f){var u=f(e,o,r);i="string"==typeof u?u:""}else if(r&&r.hasOwnProperty(n))i="";else{if(p){i=o[0];continue}s.logger.warn("missed to pass in variable ".concat(n," for interpolating ").concat(e)),i=""}else"string"==typeof i||s.useRawValueToEscape||(i=ie(i));var c=t.safeValue(i);if(e=e.replace(o[0],c),p?(t.regex.lastIndex+=c.length,t.regex.lastIndex-=o[0].length):t.regex.lastIndex=0,++a>=s.maxReplaces)break}})),e}},{key:"nest",value:function(e,t){var n,r,o=this,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=_e({},i);function s(e,t){var n=this.nestingOptionsSeparator;if(e.indexOf(n)<0)return e;var r=e.split(new RegExp("".concat(n,"[ ]*{"))),o="{".concat(r[1]);e=r[0],o=(o=this.interpolate(o,a)).replace(/'/g,'"');try{a=JSON.parse(o),t&&(a=_e(_e({},t),a))}catch(t){return this.logger.warn("failed parsing options string in nesting for key ".concat(e),t),"".concat(e).concat(n).concat(o)}return delete a.defaultValue,e}for(a.applyPostProcessor=!1,delete a.defaultValue;n=this.nestingRegexp.exec(e);){var u=[],c=!1;if(-1!==n[0].indexOf(this.formatSeparator)&&!/{.*}/.test(n[1])){var l=n[1].split(this.formatSeparator).map((function(e){return e.trim()}));n[1]=l.shift(),u=l,c=!0}if((r=t(s.call(this,n[1].trim(),a),a))&&n[0]===e&&"string"!=typeof r)return r;"string"!=typeof r&&(r=ie(r)),r||(this.logger.warn("missed to resolve ".concat(n[1]," for nesting ").concat(e)),r=""),c&&(r=u.reduce((function(e,t){return o.format(e,t,i.lng,_e(_e({},i),{},{interpolationkey:n[1].trim()}))}),r.trim())),e=e.replace(n[0],r),this.regexp.lastIndex=0}return e}}]),e}();function Be(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Me(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Be(Object(n),!0).forEach((function(t){Y(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Be(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Ue=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};K(this,e),this.logger=ne.create("formatter"),this.options=t,this.formats={number:function(e,t,n){return new Intl.NumberFormat(t,n).format(e)},currency:function(e,t,n){return new Intl.NumberFormat(t,Me(Me({},n),{},{style:"currency"})).format(e)},datetime:function(e,t,n){return new Intl.DateTimeFormat(t,Me({},n)).format(e)},relativetime:function(e,t,n){return new Intl.RelativeTimeFormat(t,Me({},n)).format(e,n.range||"day")},list:function(e,t,n){return new Intl.ListFormat(t,Me({},n)).format(e)}},this.init(t)}return z(e,[{key:"init",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}},n=t.interpolation;this.formatSeparator=n.formatSeparator?n.formatSeparator:n.formatSeparator||","}},{key:"add",value:function(e,t){this.formats[e.toLowerCase().trim()]=t}},{key:"format",value:function(e,t,n,r){var o=this;return t.split(this.formatSeparator).reduce((function(e,t){var i=function(e){var t=e.toLowerCase().trim(),n={};if(e.indexOf("(")>-1){var r=e.split("(");t=r[0].toLowerCase().trim();var o=r[1].substring(0,r[1].length-1);"currency"===t&&o.indexOf(":")<0?n.currency||(n.currency=o.trim()):"relativetime"===t&&o.indexOf(":")<0?n.range||(n.range=o.trim()):o.split(";").forEach((function(e){if(e){var t=Q(e.split(":")),r=t[0],o=t.slice(1).join(":");n[r.trim()]||(n[r.trim()]=o.trim()),"false"===o.trim()&&(n[r.trim()]=!1),"true"===o.trim()&&(n[r.trim()]=!0),isNaN(o.trim())||(n[r.trim()]=parseInt(o.trim(),10))}}))}return{formatName:t,formatOptions:n}}(t),a=i.formatName,s=i.formatOptions;if(o.formats[a]){var u=e;try{var c=r&&r.formatParams&&r.formatParams[r.interpolationkey]||{},l=c.locale||c.lng||r.locale||r.lng||n;u=o.formats[a](e,l,Me(Me(Me({},s),r),c))}catch(e){o.logger.warn(e)}return u}return o.logger.warn("there was no format function for ".concat(a)),e}),e)}}]),e}();function Ke(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function He(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ke(Object(n),!0).forEach((function(t){Y(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ke(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ze(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=W(e);if(t){var o=W(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return $(this,n)}}var Je=function(e){G(n,re);var t=ze(n);function n(e,r,o){var i,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return K(this,n),i=t.call(this),de&&re.call(J(i)),i.backend=e,i.store=r,i.services=o,i.languageUtils=o.languageUtils,i.options=a,i.logger=ne.create("backendConnector"),i.state={},i.queue=[],i.backend&&i.backend.init&&i.backend.init(o,a.backend,a),i}return z(n,[{key:"queueLoad",value:function(e,t,n,r){var o=this,i=[],a=[],s=[],u=[];return e.forEach((function(e){var r=!0;t.forEach((function(t){var s="".concat(e,"|").concat(t);!n.reload&&o.store.hasResourceBundle(e,t)?o.state[s]=2:o.state[s]<0||(1===o.state[s]?a.indexOf(s)<0&&a.push(s):(o.state[s]=1,r=!1,a.indexOf(s)<0&&a.push(s),i.indexOf(s)<0&&i.push(s),u.indexOf(t)<0&&u.push(t)))})),r||s.push(e)})),(i.length||a.length)&&this.queue.push({pending:a,loaded:{},errors:[],callback:r}),{toLoad:i,pending:a,toLoadLanguages:s,toLoadNamespaces:u}}},{key:"loaded",value:function(e,t,n){var r=e.split("|"),o=r[0],i=r[1];t&&this.emit("failedLoading",o,i,t),n&&this.store.addResourceBundle(o,i,n),this.state[e]=t?-1:2;var a={};this.queue.forEach((function(n){var r,s,u,c,l,f;r=n.loaded,s=i,c=se(r,[o],Object),l=c.obj,f=c.k,l[f]=l[f]||[],u&&(l[f]=l[f].concat(s)),u||l[f].push(s),function(e,t){for(var n=e.indexOf(t);-1!==n;)e.splice(n,1),n=e.indexOf(t)}(n.pending,e),t&&n.errors.push(t),0!==n.pending.length||n.done||(Object.keys(n.loaded).forEach((function(e){a[e]||(a[e]=[]),n.loaded[e].length&&n.loaded[e].forEach((function(t){a[e].indexOf(t)<0&&a[e].push(t)}))})),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())})),this.emit("loaded",a),this.queue=this.queue.filter((function(e){return!e.done}))}},{key:"read",value:function(e,t,n){var r=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:350,a=arguments.length>5?arguments[5]:void 0;return e.length?this.backend[n](e,t,(function(s,u){s&&u&&o<5?setTimeout((function(){r.read.call(r,e,t,n,o+1,2*i,a)}),i):a(s,u)})):a(null,{})}},{key:"prepareLoading",value:function(e,t){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),o&&o();"string"==typeof e&&(e=this.languageUtils.toResolveHierarchy(e)),"string"==typeof t&&(t=[t]);var i=this.queueLoad(e,t,r,o);if(!i.toLoad.length)return i.pending.length||o(),null;i.toLoad.forEach((function(e){n.loadOne(e)}))}},{key:"load",value:function(e,t,n){this.prepareLoading(e,t,{},n)}},{key:"reload",value:function(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}},{key:"loadOne",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=e.split("|"),o=r[0],i=r[1];this.read(o,i,"read",void 0,void 0,(function(r,a){r&&t.logger.warn("".concat(n,"loading namespace ").concat(i," for language ").concat(o," failed"),r),!r&&a&&t.logger.log("".concat(n,"loaded namespace ").concat(i," for language ").concat(o),a),t.loaded(e,r,a)}))}},{key:"saveMissing",value:function(e,t,n,r,o){var i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{};this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(t)?this.logger.warn('did not save key "'.concat(n,'" as the namespace "').concat(t,'" was not yet loaded'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!"):null!=n&&""!==n&&(this.backend&&this.backend.create&&this.backend.create(e,t,n,r,null,He(He({},i),{},{isUpdate:o})),e&&e[0]&&this.store.addResource(e[0],t,n,r))}}]),n}();function qe(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!0,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(e){var t={};if("object"===U(e[1])&&(t=e[1]),"string"==typeof e[1]&&(t.defaultValue=e[1]),"string"==typeof e[2]&&(t.tDescription=e[2]),"object"===U(e[2])||"object"===U(e[3])){var n=e[3]||e[2];Object.keys(n).forEach((function(e){t[e]=n[e]}))}return t},interpolation:{escapeValue:!0,format:function(e,t,n,r){return e},prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function Ge(e){return"string"==typeof e.ns&&(e.ns=[e.ns]),"string"==typeof e.fallbackLng&&(e.fallbackLng=[e.fallbackLng]),"string"==typeof e.fallbackNS&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function $e(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function We(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?$e(Object(n),!0).forEach((function(t){Y(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):$e(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Ye(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=W(e);if(t){var o=W(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return $(this,n)}}function Xe(){}function Qe(e){Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach((function(t){"function"==typeof e[t]&&(e[t]=e[t].bind(e))}))}var Ze=function(e){G(n,re);var t=Ye(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=arguments.length>1?arguments[1]:void 0;if(K(this,n),e=t.call(this),de&&re.call(J(e)),e.options=Ge(r),e.services={},e.logger=ne,e.modules={external:[]},Qe(J(e)),o&&!e.isInitialized&&!r.isClone){if(!e.options.initImmediate)return e.init(r,o),$(e,J(e));setTimeout((function(){e.init(r,o)}),0)}return e}return z(n,[{key:"init",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;"function"==typeof t&&(n=t,t={}),!t.defaultNS&&t.ns&&("string"==typeof t.ns?t.defaultNS=t.ns:t.ns.indexOf("translation")<0&&(t.defaultNS=t.ns[0]));var r=qe();function o(e){return e?"function"==typeof e?new e:e:null}if(this.options=We(We(We({},r),this.options),Ge(t)),"v1"!==this.options.compatibilityAPI&&(this.options.interpolation=We(We({},r.interpolation),this.options.interpolation)),void 0!==t.keySeparator&&(this.options.userDefinedKeySeparator=t.keySeparator),void 0!==t.nsSeparator&&(this.options.userDefinedNsSeparator=t.nsSeparator),!this.options.isClone){var i;this.modules.logger?ne.init(o(this.modules.logger),this.options):ne.init(null,this.options),this.modules.formatter?i=this.modules.formatter:"undefined"!=typeof Intl&&(i=Ue);var a=new Ne(this.options);this.store=new we(this.options.resources,this.options);var s=this.services;s.logger=ne,s.resourceStore=this.store,s.languageUtils=a,s.pluralResolver=new Fe(a,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),!i||this.options.interpolation.format&&this.options.interpolation.format!==r.interpolation.format||(s.formatter=o(i),s.formatter.init(s,this.options),this.options.interpolation.format=s.formatter.format.bind(s.formatter)),s.interpolator=new Ve(this.options),s.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},s.backendConnector=new Je(o(this.modules.backend),s.resourceStore,s,this.options),s.backendConnector.on("*",(function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];e.emit.apply(e,[t].concat(r))})),this.modules.languageDetector&&(s.languageDetector=o(this.modules.languageDetector),s.languageDetector.init(s,this.options.detection,this.options)),this.modules.i18nFormat&&(s.i18nFormat=o(this.modules.i18nFormat),s.i18nFormat.init&&s.i18nFormat.init(this)),this.translator=new Le(this.services,this.options),this.translator.on("*",(function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];e.emit.apply(e,[t].concat(r))})),this.modules.external.forEach((function(t){t.init&&t.init(e)}))}if(this.format=this.options.interpolation.format,n||(n=Xe),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){var u=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);u.length>0&&"dev"!==u[0]&&(this.options.lng=u[0])}this.services.languageDetector||this.options.lng||this.logger.warn("init: no languageDetector is used and no lng is defined");var c=["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"];c.forEach((function(t){e[t]=function(){var n;return(n=e.store)[t].apply(n,arguments)}}));var l=["addResource","addResources","addResourceBundle","removeResourceBundle"];l.forEach((function(t){e[t]=function(){var n;return(n=e.store)[t].apply(n,arguments),e}}));var f=oe(),p=function(){var t=function(t,r){e.isInitialized&&!e.initializedStoreOnce&&e.logger.warn("init: i18next is already initialized. You should call init just once!"),e.isInitialized=!0,e.options.isClone||e.logger.log("initialized",e.options),e.emit("initialized",e.options),f.resolve(r),n(t,r)};if(e.languages&&"v1"!==e.options.compatibilityAPI&&!e.isInitialized)return t(null,e.t.bind(e));e.changeLanguage(e.options.lng,t)};return this.options.resources||!this.options.initImmediate?p():setTimeout(p,0),f}},{key:"loadResources",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Xe,r=n,o="string"==typeof e?e:this.language;if("function"==typeof e&&(r=e),!this.options.resources||this.options.partialBundledLanguages){if(o&&"cimode"===o.toLowerCase())return r();var i=[],a=function(e){e&&t.services.languageUtils.toResolveHierarchy(e).forEach((function(e){i.indexOf(e)<0&&i.push(e)}))};if(o)a(o);else{var s=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);s.forEach((function(e){return a(e)}))}this.options.preload&&this.options.preload.forEach((function(e){return a(e)})),this.services.backendConnector.load(i,this.options.ns,(function(e){e||t.resolvedLanguage||!t.language||t.setResolvedLanguage(t.language),r(e)}))}else r(null)}},{key:"reloadResources",value:function(e,t,n){var r=oe();return e||(e=this.languages),t||(t=this.options.ns),n||(n=Xe),this.services.backendConnector.reload(e,t,(function(e){r.resolve(),n(e)})),r}},{key:"use",value:function(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return"backend"===e.type&&(this.modules.backend=e),("logger"===e.type||e.log&&e.warn&&e.error)&&(this.modules.logger=e),"languageDetector"===e.type&&(this.modules.languageDetector=e),"i18nFormat"===e.type&&(this.modules.i18nFormat=e),"postProcessor"===e.type&&ke.addPostProcessor(e),"formatter"===e.type&&(this.modules.formatter=e),"3rdParty"===e.type&&this.modules.external.push(e),this}},{key:"setResolvedLanguage",value:function(e){if(e&&this.languages&&!(["cimode","dev"].indexOf(e)>-1))for(var t=0;t<this.languages.length;t++){var n=this.languages[t];if(!(["cimode","dev"].indexOf(n)>-1)&&this.store.hasLanguageSomeTranslations(n)){this.resolvedLanguage=n;break}}}},{key:"changeLanguage",value:function(e,t){var n=this;this.isLanguageChangingTo=e;var r=oe();this.emit("languageChanging",e);var o=function(e){n.language=e,n.languages=n.services.languageUtils.toResolveHierarchy(e),n.resolvedLanguage=void 0,n.setResolvedLanguage(e)},i=function(i){e||i||!n.services.languageDetector||(i=[]);var a="string"==typeof i?i:n.services.languageUtils.getBestMatchFromCodes(i);a&&(n.language||o(a),n.translator.language||n.translator.changeLanguage(a),n.services.languageDetector&&n.services.languageDetector.cacheUserLanguage(a)),n.loadResources(a,(function(e){!function(e,i){i?(o(i),n.translator.changeLanguage(i),n.isLanguageChangingTo=void 0,n.emit("languageChanged",i),n.logger.log("languageChanged",i)):n.isLanguageChangingTo=void 0,r.resolve((function(){return n.t.apply(n,arguments)})),t&&t(e,(function(){return n.t.apply(n,arguments)}))}(e,a)}))};return e||!this.services.languageDetector||this.services.languageDetector.async?!e&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect(i):i(e):i(this.services.languageDetector.detect()),r}},{key:"getFixedT",value:function(e,t,n){var r=this,o=function e(t,o){var i;if("object"!==U(o)){for(var a=arguments.length,s=new Array(a>2?a-2:0),u=2;u<a;u++)s[u-2]=arguments[u];i=r.options.overloadTranslationOptionHandler([t,o].concat(s))}else i=We({},o);i.lng=i.lng||e.lng,i.lngs=i.lngs||e.lngs,i.ns=i.ns||e.ns;var c=r.options.keySeparator||".",l=n?"".concat(n).concat(c).concat(t):t;return r.t(l,i)};return"string"==typeof e?o.lng=e:o.lngs=e,o.ns=t,o.keyPrefix=n,o}},{key:"t",value:function(){var e;return this.translator&&(e=this.translator).translate.apply(e,arguments)}},{key:"exists",value:function(){var e;return this.translator&&(e=this.translator).exists.apply(e,arguments)}},{key:"setDefaultNamespace",value:function(e){this.options.defaultNS=e}},{key:"hasLoadedNamespace",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;var r=this.resolvedLanguage||this.languages[0],o=!!this.options&&this.options.fallbackLng,i=this.languages[this.languages.length-1];if("cimode"===r.toLowerCase())return!0;var a=function(e,n){var r=t.services.backendConnector.state["".concat(e,"|").concat(n)];return-1===r||2===r};if(n.precheck){var s=n.precheck(this,a);if(void 0!==s)return s}return!!this.hasResourceBundle(r,e)||(!(this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages))||!(!a(r,e)||o&&!a(i,e)))}},{key:"loadNamespaces",value:function(e,t){var n=this,r=oe();return this.options.ns?("string"==typeof e&&(e=[e]),e.forEach((function(e){n.options.ns.indexOf(e)<0&&n.options.ns.push(e)})),this.loadResources((function(e){r.resolve(),t&&t(e)})),r):(t&&t(),Promise.resolve())}},{key:"loadLanguages",value:function(e,t){var n=oe();"string"==typeof e&&(e=[e]);var r=this.options.preload||[],o=e.filter((function(e){return r.indexOf(e)<0}));return o.length?(this.options.preload=r.concat(o),this.loadResources((function(e){n.resolve(),t&&t(e)})),n):(t&&t(),Promise.resolve())}},{key:"dir",value:function(e){if(e||(e=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!e)return"rtl";return["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(this.services.languageUtils.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}},{key:"cloneInstance",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Xe,o=We(We(We({},this.options),t),{isClone:!0}),i=new n(o),a=["store","services","language"];return a.forEach((function(t){i[t]=e[t]})),i.services=We({},this.services),i.services.utils={hasLoadedNamespace:i.hasLoadedNamespace.bind(i)},i.translator=new Le(i.services,i.options),i.translator.on("*",(function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];i.emit.apply(i,[e].concat(n))})),i.init(o,r),i.translator.options=i.options,i.translator.backendConnector.services.utils={hasLoadedNamespace:i.hasLoadedNamespace.bind(i)},i}},{key:"toJSON",value:function(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}]),n}();Y(Ze,"createInstance",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;return new Ze(e,t)}));var et=Ze.createInstance();et.createInstance=Ze.createInstance,et.createInstance,et.init,et.loadResources,et.reloadResources,et.use,et.changeLanguage,et.getFixedT,et.t,et.exists,et.setDefaultNamespace,et.hasLoadedNamespace,et.loadNamespaces,et.loadLanguages;var tt={title:"Tags",selectTags:"Select tags",selectedTags:"Selected tags",plcHolder:"Type to search tag…",manage:"Manage Tags",remove:"Remove {{tag}} tag",exists:"{{tag}} already exists.",new:"Create new tag",addTag:"Add Tag",selectOrCreate:"Select or Create tag",search:"Search {{where}}",addNew:"Add New {{what}}",tag:"Tag",noTagsFound:"No Tags Found",deleteItem:"Are you sure you want to delete {{type}}",cannotBeUndone:"This action cannot be undone.",proceed:"Proceed",cancel:"Cancel",name:"Name",description:"Description",editItem:"Edit {{what}}",createSuccess:"Tag created successfully.",updateSuccess:"Tag updated successfully.",deleteSuccess:"Tag deleted successfully."};et.use(m).init({resources:{en:{translation:tt}},fallbackLng:"en",detection:{order:["navigator"]}});var nt=new p({queryCache:new g({onError:function(e){return r.error(e)}})}),rt=[{title:"Name",dataIndex:"name",key:"name",render:function(t){return e.createElement(o,{label:t,color:"blue"})},width:"30%"},{title:"Description",dataIndex:"description",key:"description",render:function(e){return e||"--"},width:"40%"}],ot=R.object({name:R.string().typeError("Name must be a string.").required("Name is a required field.").max(50,"Name should not exceed 50 characters."),description:R.string().typeError("Description must be a string.").nullable().max(255,"Description should not exceed 255 characters.")}),it="CREATE_TAG",at="EDIT_TAG",st={name:"",description:""},ut=function(e,t,n,r){return y.get(e,{params:{term:t,limit:n,page_no:r}})},ct=function(e,t){return y.post(e,t)},lt=function(e,t,n){return y.put("".concat(e,"/").concat(t),n)},ft=function(e,t){return y.delete("".concat(e,"/").concat(t))},pt=function(){return d((function(e){var t=e.url,n=e.payload;return ct(t,n)}),{onSuccess:function(){nt.invalidateQueries(["tag-key"])}})},gt=function(){return d((function(e){var t=e.url,n=e.id,r=e.payload;return lt(t,n,r)}),{onSuccess:function(){nt.invalidateQueries(["tag-key"])}})},ht=function(t){var n=t.tag,o=t.type,s=t.onClose,u=t.tagType,c=t.goToFirstPage,l=o===at,f=l?n:st,p=b().t,g=function(e){var t=e.isEdit,n=e.tagType,o=e.onClose,i=e.goToFirstPage,a=(t?gt:pt)(),s=a.mutate,u=a.isLoading,c=b().t;return{handleSubmit:function(e,a){var u,l=a.resetForm;e.description=null==e||null===(u=e.description)||void 0===u?void 0:u.trim();var f={payload:{tag:e}};f.url=n.url,t&&(f.id=e.id),s(f,{onSuccess:function(){!t&&i(),o(),r.success(c(t?"updateSuccess":"createSuccess"))},onError:function(e){var t=e.errors;l(),r.error(null==t?void 0:t.join(", "))}})},isSubmitting:u}}({isEdit:l,tagType:u,onClose:s,goToFirstPage:c}),h=g.handleSubmit;return e.createElement(i,{isOpen:!!o,onClose:s},e.createElement(i.Header,null,e.createElement(a,{style:"h2",weight:"semibold"},p(l?"editItem":"addNew",{what:p("tag")}))),e.createElement(N,{initialValues:f,validateOnBlur:!1,validateOnChange:!1,onSubmit:h,validationSchema:ot},(function(t){var n=t.isSubmitting;return e.createElement(e.Fragment,null,e.createElement(i.Body,null,e.createElement(C,{className:"flex w-full flex-col space-y-4",noValidate:!0},e.createElement(P,{required:!0,autoFocus:!0,name:"name",label:"".concat(p("tag")," ").concat(p("name")),"data-cy":"tag-name-text-field",maxLength:50}),e.createElement(L,{name:"description",label:p("description"),rows:3,"data-cy":"tag-description-text-area",maxLength:255}))),e.createElement(i.Footer,{className:"flex items-center space-x-2"},e.createElement(E,{className:"flex items-center space-x-2",cancelButtonProps:{onClick:s},submitButtonProps:{loading:n}})))})))},dt=function(t){var n=t.tagTypes,r=t.showMenu,o=t.tagType,i=t.setTagType,a=b().t;return e.createElement(k,{showMenu:r,title:a("title")},Object.values(n).map((function(t){return e.createElement(k.Item,{key:t.id,label:t.label,description:t.description,active:o.id===t.id,onClick:function(){i(t)}})})))},vt=function(t,n,r){return[].concat(A(t),[{id:"actions",width:"10%",render:function(t,o){return e.createElement(s,{icon:O,buttonProps:{style:"text"},position:"bottom-end",autoWidth:!0,strategy:"fixed"},e.createElement("li",{className:"neeto-tag-dropdown__item"},e.createElement(u,{onClick:function(){return n(o)},label:"Edit",style:"text",className:"neeto-tag-dropdown__button"})),e.createElement("li",{className:"neeto-tag-dropdown__item"},e.createElement(u,{label:"Delete",onClick:function(){return r(o)},style:"danger-text",className:"neeto-tag-dropdown__button","data-cy":"tags-delete-button"})))}}])};var yt=function(e){var o=e.tagTypes,i=F(t(o[0]),2),a=i[0],s=i[1],u=F(t([]),2),c=u[0],l=u[1],f=F(t(0),2),p=f[0],g=f[1],v=F(t(null),2),y=v[0],m=v[1],O=F(t(""),2),w=O[0],k=O[1],x=F(t(1),2),S=x[0],j=x[1],P=F(t(!0),2),L=P[0],E=P[1],N=F(t(null),2),C=N[0],R=N[1],D=F(t(!1),2),A=D[0],_=D[1],V=function(e,r){var o=F(t(e),2),i=o[0],a=o[1];return n((function(){var t=setTimeout((function(){return a(e)}),r||500);return function(){clearTimeout(t)}}),[e,r]),i}(w,500),B=b().t,M=function(e,t,n,r){return h(["tag-key",e,t,n,r],I(T().mark((function o(){return T().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,ut(e,t,n,r);case 2:return o.abrupt("return",o.sent);case 3:case"end":return o.stop()}}),o)}))),{staleTime:32e5,keepPreviousData:!0})}(a.url,V,10,S),U=M.data,K=M.isSuccess,H=M.isPreviousdata,z=M.isLoading,J=d((function(e){var t=e.url,n=e.id;return ft(t,n)}),{onSuccess:function(){nt.invalidateQueries(["tag-key"])}}),q=J.mutate,G=J.isLoading;return n((function(){if(K){var e=U.tags,t=U.total_count;g(t),l(e)}}),[K,U]),n((function(){m(null),j(1)}),[a]),{tags:c,tagsCount:p,tagType:a,isLoading:z,isPreviousdata:H,setTagType:s,selectedTag:y,setSelectedTag:m,searchTerm:w,setSearchTerm:k,pageIndex:S,setPageIndex:j,goToFirstPage:function(){1!==S&&j(1)},handleEdit:function(e){m(e),R(at)},handleDelete:function(e){m(e),_(!0)},handleAlertClose:function(){_(!1),m(null)},isMenuOpen:L,setIsMenuOpen:E,paneType:C,setPaneType:R,isDeleteAlertOpen:A,handleConfirmDelete:function(){var e={url:a.url,id:null==y?void 0:y.id};q(e,{onSuccess:function(){_(!1),1===c.length&&j((function(e){return e-1})),r.success(B("deleteSuccess"))},onError:function(e){var t=e.errors;r.error(null==t?void 0:t.join(", "))}})},isDeleting:G}},mt=function(t){var n=t.tagTypes,r=t.breadcrumbs,o=t.displayMenu,i=yt({tagTypes:n}),s=i.tagType,p=i.setTagType,g=i.tags,h=i.tagsCount,d=i.isLoading,v=i.selectedTag,y=i.setSelectedTag,m=i.searchTerm,O=i.setSearchTerm,k=i.pageIndex,P=i.setPageIndex,L=i.goToFirstPage,E=i.handleEdit,N=i.handleDelete,C=i.handleAlertClose,R=i.isMenuOpen,T=i.setIsMenuOpen,D=i.paneType,I=i.setPaneType,F=i.isDeleteAlertOpen,_=i.handleConfirmDelete,V=b().t;return e.createElement(e.Fragment,null,e.createElement("div",{className:"neeto-tag-wrapper"},o&&e.createElement(dt,{tagTypes:n,showMenu:R,tagType:s,setTagType:p}),e.createElement(x,null,e.createElement(S,{title:"".concat(s.label," ").concat(V("title")),menuBarToggle:o?function(){return T((function(e){return!e}))}:null,searchProps:{value:m,onChange:function(e){var t=e.target.value;t.trim()&&L(),O(t)},placeholder:V("search",{where:V("title")})},actionBlock:e.createElement(u,{icon:w,size:"large",label:V("addNew",{what:V("tag")}),onClick:function(){y(null),I(it)},"data-cy":"add-new-tag-button"}),breadcrumbs:r}),d?e.createElement(c,null):e.createElement("div",{className:"w-full flex-grow"},e.createElement(j,{leftActionBlock:e.createElement(a,{component:"h4",className:"neeto-ui-gray-800 font-semibold"},"".concat(h," ").concat(s.label," Tag(s)"))}),e.createElement("div",{className:"neeto-tags--table__wrapper"},e.createElement(l,{fixedHeight:!0,rowData:g,columnData:vt(s.columns?[].concat(A(rt),A(s.columns)):rt,E,N),defaultPageSize:10,currentPageNumber:k,handlePageChange:P,totalCount:h,allowRowClick:!1,rowSelection:!1,paginationProps:{showSizeChanger:!1},scroll:{x:"100%"}}))))),e.createElement(ht,{type:D,tagType:s,tag:v,onClose:function(){return I(null)},goToFirstPage:L}),e.createElement(f,{isOpen:F,title:"".concat(V("delete")," ").concat(null==v?void 0:v.name),message:e.createElement(e.Fragment,null,V("deleteItem",{type:V("tag")})," ",e.createElement("strong",null,null==v?void 0:v.name),"? ",V("cannotBeUndone")),onSubmit:_,onClose:C,submitButtonLabel:V("proceed"),cancelButtonLabel:V("cancel")}))},bt=function(r){var o=r.tagTypes,i=r.breadcrumbs,a=r.displayMenu,s=void 0===a||a,u=F(t(!0),2),l=u[0],f=u[1];return n((function(){!function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(){return null};y.defaults.headers={Accept:"application/json","Content-Type":"application/json","X-CSRF-TOKEN":null===(e=document.querySelector('[name="csrf-token"]'))||void 0===e?void 0:e.getAttribute("content")};var n=JSON.parse(localStorage.getItem("authToken")),r=JSON.parse(localStorage.getItem("authEmail"));n&&r&&(y.defaults.headers["X-Auth-Email"]=r,y.defaults.headers["X-Auth-Token"]=n),t(!1)}(f),y.interceptors.response.use(B,M)}),[]),l?e.createElement(c,null):e.createElement(v,{client:nt},e.createElement(mt,{tagTypes:o,breadcrumbs:i,displayMenu:s}))};export{bt as NeetoTags};
4
4
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/apis/axios.js","../src/common/queryClient.js","../src/common/constants.js","../src/apis/tags.js","../src/hooks/useTagsApi.js","../src/components/ManageTags.jsx","../src/hooks/useTagsForm.js","../src/components/Menu.jsx","../src/components/util.js","../src/hooks/useTags.js","../src/hooks/useDebounce.js","../src/components/index.jsx","../src/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\naxios.defaults.baseURL = \"/\";\n\nconst NETWORK_ERROR = \"Network Error\";\n\nconst setAuthHeaders = (setLoading = () => null) => {\n axios.defaults.headers = {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n \"X-CSRF-TOKEN\": document\n .querySelector('[name=\"csrf-token\"]')\n ?.getAttribute(\"content\"),\n };\n const token = JSON.parse(localStorage.getItem(\"authToken\"));\n const email = JSON.parse(localStorage.getItem(\"authEmail\"));\n if (token && email) {\n axios.defaults.headers[\"X-Auth-Email\"] = email;\n axios.defaults.headers[\"X-Auth-Token\"] = token;\n }\n setLoading(false);\n};\n\nconst resetAuthTokens = () => {\n delete axios.defaults.headers[\"X-Auth-Email\"];\n delete axios.defaults.headers[\"X-Auth-Token\"];\n};\n\nconst handleSuccessResponse = response => {\n if (!response) return response;\n\n response.success = response.status === 200;\n\n return response.data;\n};\n\nconst handleNetworkError = error => {\n if (error.message === NETWORK_ERROR) {\n throw new Error(\"No internet connection.\");\n }\n};\n\nconst handleErrorResponse = error => {\n if (error.response?.status === 401) {\n resetAuthTokens();\n setTimeout(() => {\n window.location.href = \"/login\";\n }, 300);\n }\n handleNetworkError(error);\n return Promise.reject(error?.response?.data);\n};\n\nconst registerIntercepts = () => {\n axios.interceptors.response.use(handleSuccessResponse, handleErrorResponse);\n};\n\nexport { setAuthHeaders, resetAuthTokens, registerIntercepts };\n","import { Toastr } from \"neetoui\";\nimport { QueryClient, QueryCache } from \"react-query\";\n\nconst queryClient = new QueryClient({\n queryCache: new QueryCache({\n onError: error => Toastr.error(error),\n }),\n});\n\nexport default queryClient;\n","import React from \"react\";\n\nimport { Tag } from \"@bigbinary/neetoui\";\nimport * as yup from \"yup\";\n\nexport const DEFAULT_PAGE_INDEX = 1;\nexport const DEFAULT_PAGE_SIZE = 10;\n\nexport const COMMON_COLUMNS = [\n {\n title: \"Name\",\n dataIndex: \"name\",\n key: \"name\",\n render: name => <Tag label={name} color=\"blue\" />,\n width: \"30%\",\n },\n {\n title: \"Description\",\n dataIndex: \"description\",\n key: \"description\",\n render: description => description || \"--\",\n width: \"40%\",\n },\n];\n\nexport const TAG_SCHEMA = yup.object({\n name: yup\n .string()\n .typeError(\"Name must be a string.\")\n .required(\"Name is a required field.\")\n .max(50, \"Name should not exceed 50 characters.\"),\n description: yup\n .string()\n .typeError(\"Description must be a string.\")\n .nullable()\n .max(255, \"Description should not exceed 255 characters.\"),\n});\n\nexport const PANE_TYPES = {\n CREATE: \"CREATE_TAG\",\n EDIT: \"EDIT_TAG\",\n};\n\nexport const INITIAL_TAG_VALUES = {\n name: \"\",\n description: \"\",\n};\n","import axios from \"axios\";\n\nconst fetch = (url, term, limit, page_no) =>\n axios.get(url, {\n params: {\n term,\n limit,\n page_no,\n },\n });\n\nconst create = (url, payload) => axios.post(url, payload);\n\nconst update = (url, id, payload) => axios.put(`${url}/${id}`, payload);\n\nconst destroy = (url, id) => axios.delete(`${url}/${id}`);\n\nconst tagsApi = {\n fetch,\n create,\n update,\n destroy,\n};\n\nexport default tagsApi;\n","import { useMutation, useQuery } from \"react-query\";\n\nimport tagsApi from \"../apis/tags\";\nimport queryClient from \"../common/queryClient\";\n\nconst TAG_KEY = \"tag-key\";\nconst STALE_TIME = 3_200_000;\n\nconst useFetchTags = (url, searchTerm, limit, pageIndex) =>\n useQuery(\n [TAG_KEY, url, searchTerm, limit, pageIndex],\n async () => await tagsApi.fetch(url, searchTerm, limit, pageIndex),\n {\n staleTime: STALE_TIME,\n keepPreviousData: true,\n }\n );\n\nconst useCreateTag = () =>\n useMutation(({ url, payload }) => tagsApi.create(url, payload), {\n onSuccess: () => {\n queryClient.invalidateQueries([TAG_KEY]);\n },\n });\n\nconst useUpdateTag = () =>\n useMutation(({ url, id, payload }) => tagsApi.update(url, id, payload), {\n onSuccess: () => {\n queryClient.invalidateQueries([TAG_KEY]);\n },\n });\n\nconst useDeleteTag = () =>\n useMutation(({ url, id }) => tagsApi.destroy(url, id), {\n onSuccess: () => {\n queryClient.invalidateQueries([TAG_KEY]);\n },\n });\n\nexport { useFetchTags, useCreateTag, useUpdateTag, useDeleteTag };\n","import React from \"react\";\n\nimport { Form, Formik } from \"formik\";\nimport { Pane, Typography } from \"neetoui\";\nimport { Input, Textarea, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n PANE_TYPES,\n INITIAL_TAG_VALUES,\n TAG_SCHEMA,\n} from \"../common/constants\";\nimport useTagsForm from \"../hooks/useTagsForm\";\n\nconst ManageTags = ({ tag, type, onClose, tagType, goToFirstPage }) => {\n const isEdit = type === PANE_TYPES.EDIT;\n const initValues = isEdit ? tag : INITIAL_TAG_VALUES;\n const { t } = useTranslation();\n\n const { handleSubmit } = useTagsForm({\n isEdit,\n tagType,\n onClose,\n goToFirstPage,\n });\n\n return (\n <Pane isOpen={!!type} onClose={onClose}>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {isEdit\n ? t(\"editItem\", { what: t(\"tag\") })\n : t(\"addNew\", { what: t(\"tag\") })}\n </Typography>\n </Pane.Header>\n {\n <Formik\n initialValues={initValues}\n validateOnBlur={false}\n validateOnChange={false}\n onSubmit={handleSubmit}\n validationSchema={TAG_SCHEMA}\n >\n {({ isSubmitting }) => (\n <>\n <Pane.Body>\n <Form className=\"flex w-full flex-col space-y-4\" noValidate>\n <Input\n required\n autoFocus\n name=\"name\"\n label={`${t(\"tag\")} ${t(\"name\")}`}\n data-cy=\"tag-name-text-field\"\n maxLength={50}\n />\n <Textarea\n name=\"description\"\n label={t(\"description\")}\n rows={3}\n data-cy=\"tag-description-text-area\"\n maxLength={255}\n />\n </Form>\n </Pane.Body>\n <Pane.Footer className=\"flex items-center space-x-2\">\n <ActionBlock\n className=\"flex items-center space-x-2\"\n cancelButtonProps={{ onClick: onClose }}\n submitButtonProps={{ loading: isSubmitting }}\n />\n </Pane.Footer>\n </>\n )}\n </Formik>\n }\n </Pane>\n );\n};\n\nexport default ManageTags;\n","import { Toastr } from \"@bigbinary/neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateTag, useUpdateTag } from \"./useTagsApi\";\n\nconst useTagsForm = ({ isEdit, tagType, onClose, goToFirstPage }) => {\n const tagModification = isEdit ? useUpdateTag : useCreateTag;\n const { mutate, isLoading: isSubmitting } = tagModification();\n const { t } = useTranslation();\n\n const handleSubmit = (values, { resetForm }) => {\n values.description = values?.description?.trim();\n const tagData = { payload: { tag: values } };\n tagData.url = tagType.url;\n if (isEdit) {\n tagData.id = values.id;\n }\n mutate(tagData, {\n onSuccess: () => {\n !isEdit && goToFirstPage();\n onClose();\n Toastr.success(isEdit ? t(\"updateSuccess\") : t(\"createSuccess\"));\n },\n onError: ({ errors }) => {\n resetForm();\n Toastr.error(errors?.join(\", \"));\n },\n });\n };\n\n return { handleSubmit, isSubmitting };\n};\n\nexport default useTagsForm;\n","import React from \"react\";\n\nimport { MenuBar } from \"neetoui/layouts\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Menu = ({ tagTypes, showMenu, tagType, setTagType }) => {\n const { t } = useTranslation();\n\n return (\n <MenuBar showMenu={showMenu} title={t(\"title\")}>\n {Object.values(tagTypes).map(tag => (\n <MenuBar.Item\n key={tag.id}\n label={tag.label}\n description={tag.description}\n active={tagType.id === tag.id}\n onClick={() => {\n setTagType(tag);\n }}\n />\n ))}\n </MenuBar>\n );\n};\n\nexport default Menu;\n","import React from \"react\";\n\nimport { MenuHorizontal } from \"neetoicons\";\nimport { Dropdown, Button } from \"neetoui\";\n\nexport const renderColumnData = (columns, handleEdit, handleDelete) => [\n ...columns,\n {\n id: \"actions\",\n width: \"10%\",\n render: (_, tag) => (\n <Dropdown\n icon={MenuHorizontal}\n buttonProps={{\n style: \"text\",\n }}\n position=\"bottom-end\"\n autoWidth\n strategy=\"fixed\"\n >\n <li className=\"neeto-tag-dropdown__item\">\n <Button\n onClick={() => handleEdit(tag)}\n label=\"Edit\"\n style=\"text\"\n className=\"neeto-tag-dropdown__button\"\n />\n </li>\n <li className=\"neeto-tag-dropdown__item\">\n <Button\n label=\"Delete\"\n onClick={() => handleDelete(tag)}\n style=\"danger-text\"\n className=\"neeto-tag-dropdown__button\"\n data-cy=\"tags-delete-button\"\n />\n </li>\n </Dropdown>\n ),\n },\n];\n","import { useState, useEffect } from \"react\";\n\nimport { Toastr } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useDebounce from \"./useDebounce\";\nimport { useDeleteTag, useFetchTags } from \"./useTagsApi\";\n\nimport { DEFAULT_PAGE_INDEX, PANE_TYPES } from \"../common/constants\";\n\nconst useTags = ({ tagTypes }) => {\n const [tagType, setTagType] = useState(tagTypes[0]);\n const [tags, setTags] = useState([]);\n const [tagsCount, setTagsCount] = useState(0);\n const [selectedTag, setSelectedTag] = useState(null);\n const [searchTerm, setSearchTerm] = useState(\"\");\n const [pageIndex, setPageIndex] = useState(DEFAULT_PAGE_INDEX);\n const [isMenuOpen, setIsMenuOpen] = useState(true);\n const [paneType, setPaneType] = useState(null);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const debouncedSearchTerm = useDebounce(searchTerm, 500);\n const { t } = useTranslation();\n\n const { data, isSuccess, isPreviousdata, isLoading } = useFetchTags(\n tagType.url,\n debouncedSearchTerm,\n 10,\n pageIndex\n );\n\n const goToFirstPage = () => {\n if (pageIndex !== DEFAULT_PAGE_INDEX) {\n setPageIndex(DEFAULT_PAGE_INDEX);\n }\n };\n\n const handleEdit = tag => {\n setSelectedTag(tag);\n setPaneType(PANE_TYPES.EDIT);\n };\n\n const handleDelete = tag => {\n setSelectedTag(tag);\n setIsDeleteAlertOpen(true);\n };\n\n const handleAlertClose = () => {\n setIsDeleteAlertOpen(false);\n setSelectedTag(null);\n };\n\n const { mutate, isLoading: isDeleting } = useDeleteTag();\n\n const handleConfirmDelete = () => {\n const payload = { url: tagType.url, id: selectedTag?.id };\n mutate(payload, {\n onSuccess: () => {\n setIsDeleteAlertOpen(false);\n if (tags.length === 1) {\n setPageIndex(pageIndex => pageIndex - 1);\n }\n Toastr.success(t(\"deleteSuccess\"));\n },\n onError: ({ errors }) => {\n Toastr.error(errors?.join(\", \"));\n },\n });\n };\n\n useEffect(() => {\n if (!isSuccess) return;\n const { tags, total_count } = data;\n setTagsCount(total_count);\n setTags(tags);\n }, [isSuccess, data]);\n\n useEffect(() => {\n setSelectedTag(null);\n setPageIndex(DEFAULT_PAGE_INDEX);\n }, [tagType]);\n\n return {\n tags,\n tagsCount,\n tagType,\n isLoading,\n isPreviousdata,\n setTagType,\n selectedTag,\n setSelectedTag,\n searchTerm,\n setSearchTerm,\n pageIndex,\n setPageIndex,\n goToFirstPage,\n handleEdit,\n handleDelete,\n handleAlertClose,\n isMenuOpen,\n setIsMenuOpen,\n paneType,\n setPaneType,\n isDeleteAlertOpen,\n handleConfirmDelete,\n isDeleting,\n };\n};\n\nexport default useTags;\n","import { useEffect, useState } from \"react\";\n\nfunction useDebounce(value, delay) {\n const [debouncedValue, setDebouncedValue] = useState(value);\n\n useEffect(() => {\n const timer = setTimeout(() => setDebouncedValue(value), delay || 500);\n\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n\n return debouncedValue;\n}\n\nexport default useDebounce;\n","import React from \"react\";\n\nimport { Plus } from \"neetoicons\";\nimport { Alert, Button, PageLoader, Typography, Table } from \"neetoui\";\nimport { Container, Header, SubHeader } from \"neetoui/layouts\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ManageTags from \"./ManageTags\";\nimport Menu from \"./Menu\";\nimport { renderColumnData } from \"./util\";\n\nimport {\n COMMON_COLUMNS,\n DEFAULT_PAGE_SIZE,\n PANE_TYPES,\n} from \"../common/constants\";\nimport useTags from \"../hooks/useTags\";\n\nconst Tags = ({ tagTypes, breadcrumbs, displayMenu }) => {\n const {\n tagType,\n setTagType,\n tags,\n tagsCount,\n isLoading,\n selectedTag,\n setSelectedTag,\n searchTerm,\n setSearchTerm,\n pageIndex,\n setPageIndex,\n goToFirstPage,\n handleEdit,\n handleDelete,\n handleAlertClose,\n isMenuOpen,\n setIsMenuOpen,\n paneType,\n setPaneType,\n isDeleteAlertOpen,\n handleConfirmDelete,\n } = useTags({ tagTypes });\n const { t } = useTranslation();\n\n const handleMenuToggle = () => setIsMenuOpen(isMenuOpen => !isMenuOpen);\n\n return (\n <>\n <div className=\"neeto-tag-wrapper\">\n {displayMenu && (\n <Menu\n tagTypes={tagTypes}\n showMenu={isMenuOpen}\n tagType={tagType}\n setTagType={setTagType}\n />\n )}\n <Container>\n <Header\n title={`${tagType.label} ${t(\"title\")}`}\n menuBarToggle={displayMenu ? handleMenuToggle : null}\n searchProps={{\n value: searchTerm,\n onChange: ({ target: { value } }) => {\n value.trim() && goToFirstPage();\n setSearchTerm(value);\n },\n placeholder: t(\"search\", {\n where: t(\"title\"),\n }),\n }}\n actionBlock={\n <Button\n icon={Plus}\n size=\"large\"\n label={t(\"addNew\", { what: t(\"tag\") })}\n onClick={() => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n }}\n data-cy=\"add-new-tag-button\"\n />\n }\n breadcrumbs={breadcrumbs}\n />\n {isLoading ? (\n <PageLoader />\n ) : (\n <div className=\"w-full flex-grow\">\n <SubHeader\n leftActionBlock={\n <Typography\n component=\"h4\"\n className=\"neeto-ui-gray-800 font-semibold\"\n >\n {`${tagsCount} ${tagType.label} Tag(s)`}\n </Typography>\n }\n />\n <div className=\"neeto-tags--table__wrapper\">\n <Table\n fixedHeight\n rowData={tags}\n columnData={renderColumnData(\n tagType.columns\n ? [...COMMON_COLUMNS, ...tagType.columns]\n : COMMON_COLUMNS,\n handleEdit,\n handleDelete\n )}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n currentPageNumber={pageIndex}\n handlePageChange={setPageIndex}\n totalCount={tagsCount}\n allowRowClick={false}\n rowSelection={false}\n paginationProps={{ showSizeChanger: false }}\n scroll={{ x: \"100%\" }}\n />\n </div>\n </div>\n )}\n </Container>\n </div>\n <ManageTags\n type={paneType}\n tagType={tagType}\n tag={selectedTag}\n onClose={() => setPaneType(null)}\n goToFirstPage={goToFirstPage}\n />\n <Alert\n isOpen={isDeleteAlertOpen}\n title={`${t(\"delete\")} ${selectedTag?.name}`}\n message={\n <>\n {t(\"deleteItem\", { type: t(\"tag\") })}{\" \"}\n <strong>{selectedTag?.name}</strong>? {t(\"cannotBeUndone\")}\n </>\n }\n onSubmit={handleConfirmDelete}\n onClose={handleAlertClose}\n submitButtonLabel={t(\"proceed\")}\n cancelButtonLabel={t(\"cancel\")}\n />\n </>\n );\n};\n\nexport default Tags;\n","import React, { useEffect, useState } from \"react\";\n\nimport { PageLoader } from \"@bigbinary/neetoui\";\nimport { QueryClientProvider } from \"react-query\";\n\nimport { registerIntercepts, setAuthHeaders } from \"./apis/axios\";\nimport queryClient from \"./common/queryClient\";\nimport Tags from \"./components\";\nimport \"./stylesheets/main.scss\";\n\nconst App = ({ tagTypes, breadcrumbs, displayMenu = true }) => {\n const [loading, setLoading] = useState(true);\n\n useEffect(() => {\n setAuthHeaders(setLoading);\n registerIntercepts();\n }, []);\n\n if (loading) {\n return <PageLoader />;\n }\n\n return (\n <QueryClientProvider client={queryClient}>\n <Tags\n tagTypes={tagTypes}\n breadcrumbs={breadcrumbs}\n displayMenu={displayMenu}\n />\n </QueryClientProvider>\n );\n};\n\nexport default App;\n"],"names":["axios","defaults","baseURL","handleSuccessResponse","response","success","status","data","handleErrorResponse","error","_error$response","_error$response2","headers","setTimeout","window","location","href","message","Error","handleNetworkError","Promise","reject","queryClient","QueryClient","queryCache","QueryCache","onError","Toastr","COMMON_COLUMNS","title","dataIndex","key","render","name","React","Tag","label","color","width","description","TAG_SCHEMA","yup","object","string","typeError","required","max","nullable","PANE_TYPES","INITIAL_TAG_VALUES","tagsApi","url","term","limit","page_no","get","params","payload","post","id","put","concat","useCreateTag","useMutation","_ref2","onSuccess","invalidateQueries","useUpdateTag","_ref3","ManageTags","_ref","tag","type","onClose","tagType","goToFirstPage","isEdit","initValues","t","useTranslation","_useTagsForm","_tagModification","mutate","isSubmitting","isLoading","handleSubmit","values","_values$description","resetForm","trim","tagData","errors","join","useTagsForm","Pane","isOpen","Header","Typography","style","weight","what","Formik","initialValues","validateOnBlur","validateOnChange","onSubmit","validationSchema","createElement","Body","Form","className","noValidate","Input","autoFocus","maxLength","Textarea","rows","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps","loading","Menu","tagTypes","showMenu","setTagType","MenuBar","Object","map","Item","active","renderColumnData","columns","handleEdit","handleDelete","_toConsumableArray","_","Dropdown","icon","MenuHorizontal","buttonProps","position","autoWidth","strategy","Button","useTags","_useState2","_slicedToArray","useState","_useState4","tags","setTags","_useState6","tagsCount","setTagsCount","_useState8","selectedTag","setSelectedTag","_useState10","searchTerm","setSearchTerm","_useState12","pageIndex","setPageIndex","_useState14","isMenuOpen","setIsMenuOpen","_useState16","paneType","setPaneType","_useState18","isDeleteAlertOpen","setIsDeleteAlertOpen","debouncedSearchTerm","value","delay","debouncedValue","setDebouncedValue","useEffect","timer","clearTimeout","useDebounce","useFetchTags","useQuery","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","abrupt","sent","stop","staleTime","keepPreviousData","isSuccess","isPreviousdata","_useDeleteTag","_ref4","isDeleting","total_count","handleAlertClose","handleConfirmDelete","length","Tags","breadcrumbs","displayMenu","_useTags","Fragment","Container","menuBarToggle","searchProps","onChange","target","placeholder","where","actionBlock","Plus","size","PageLoader","SubHeader","leftActionBlock","component","Table","fixedHeight","rowData","columnData","defaultPageSize","currentPageNumber","handlePageChange","totalCount","allowRowClick","rowSelection","paginationProps","showSizeChanger","scroll","x","Alert","submitButtonLabel","cancelButtonLabel","App","_ref$displayMenu","setLoading","_document$querySelect","arguments","undefined","Accept","document","querySelector","getAttribute","token","JSON","parse","localStorage","getItem","email","setAuthHeaders","interceptors","use","QueryClientProvider","client"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/apis/axios.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/inherits.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toArray.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/i18next/dist/esm/i18next.js","../src/common/i18n.js","../src/common/queryClient.js","../src/common/constants.js","../src/apis/tags.js","../src/hooks/useTagsApi.js","../src/components/ManageTags.jsx","../src/hooks/useTagsForm.js","../src/components/Menu.jsx","../src/components/util.js","../src/hooks/useTags.js","../src/hooks/useDebounce.js","../src/components/index.jsx","../src/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\naxios.defaults.baseURL = \"/\";\n\nconst NETWORK_ERROR = \"Network Error\";\n\nconst setAuthHeaders = (setLoading = () => null) => {\n axios.defaults.headers = {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n \"X-CSRF-TOKEN\": document\n .querySelector('[name=\"csrf-token\"]')\n ?.getAttribute(\"content\"),\n };\n const token = JSON.parse(localStorage.getItem(\"authToken\"));\n const email = JSON.parse(localStorage.getItem(\"authEmail\"));\n if (token && email) {\n axios.defaults.headers[\"X-Auth-Email\"] = email;\n axios.defaults.headers[\"X-Auth-Token\"] = token;\n }\n setLoading(false);\n};\n\nconst resetAuthTokens = () => {\n delete axios.defaults.headers[\"X-Auth-Email\"];\n delete axios.defaults.headers[\"X-Auth-Token\"];\n};\n\nconst handleSuccessResponse = response => {\n if (!response) return response;\n\n response.success = response.status === 200;\n\n return response.data;\n};\n\nconst handleNetworkError = error => {\n if (error.message === NETWORK_ERROR) {\n throw new Error(\"No internet connection.\");\n }\n};\n\nconst handleErrorResponse = error => {\n if (error.response?.status === 401) {\n resetAuthTokens();\n setTimeout(() => {\n window.location.href = \"/login\";\n }, 300);\n }\n handleNetworkError(error);\n return Promise.reject(error?.response?.data);\n};\n\nconst registerIntercepts = () => {\n axios.interceptors.response.use(handleSuccessResponse, handleErrorResponse);\n};\n\nexport { setAuthHeaders, resetAuthTokens, registerIntercepts };\n","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _toArray(arr) {\n return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import _typeof from '@babel/runtime/helpers/esm/typeof';\nimport _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\nimport _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';\nimport _inherits from '@babel/runtime/helpers/esm/inherits';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/esm/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/esm/getPrototypeOf';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _toArray from '@babel/runtime/helpers/esm/toArray';\n\nfunction 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; }\n\nfunction _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) { _defineProperty(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; }\n\nvar consoleLogger = {\n type: 'logger',\n log: function log(args) {\n this.output('log', args);\n },\n warn: function warn(args) {\n this.output('warn', args);\n },\n error: function error(args) {\n this.output('error', args);\n },\n output: function output(type, args) {\n if (console && console[type]) console[type].apply(console, args);\n }\n};\n\nvar Logger = function () {\n function Logger(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Logger);\n\n this.init(concreteLogger, options);\n }\n\n _createClass(Logger, [{\n key: \"init\",\n value: function init(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n }\n }, {\n key: \"setDebug\",\n value: function setDebug(bool) {\n this.debug = bool;\n }\n }, {\n key: \"log\",\n value: function log() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return this.forward(args, 'log', '', true);\n }\n }, {\n key: \"warn\",\n value: function warn() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return this.forward(args, 'warn', '', true);\n }\n }, {\n key: \"error\",\n value: function error() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return this.forward(args, 'error', '');\n }\n }, {\n key: \"deprecate\",\n value: function deprecate() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return this.forward(args, 'warn', 'WARNING DEPRECATED: ', true);\n }\n }, {\n key: \"forward\",\n value: function forward(args, lvl, prefix, debugOnly) {\n if (debugOnly && !this.debug) return null;\n if (typeof args[0] === 'string') args[0] = \"\".concat(prefix).concat(this.prefix, \" \").concat(args[0]);\n return this.logger[lvl](args);\n }\n }, {\n key: \"create\",\n value: function create(moduleName) {\n return new Logger(this.logger, _objectSpread(_objectSpread({}, {\n prefix: \"\".concat(this.prefix, \":\").concat(moduleName, \":\")\n }), this.options));\n }\n }]);\n\n return Logger;\n}();\n\nvar baseLogger = new Logger();\n\nvar EventEmitter = function () {\n function EventEmitter() {\n _classCallCheck(this, EventEmitter);\n\n this.observers = {};\n }\n\n _createClass(EventEmitter, [{\n key: \"on\",\n value: function on(events, listener) {\n var _this = this;\n\n events.split(' ').forEach(function (event) {\n _this.observers[event] = _this.observers[event] || [];\n\n _this.observers[event].push(listener);\n });\n return this;\n }\n }, {\n key: \"off\",\n value: function off(event, listener) {\n if (!this.observers[event]) return;\n\n if (!listener) {\n delete this.observers[event];\n return;\n }\n\n this.observers[event] = this.observers[event].filter(function (l) {\n return l !== listener;\n });\n }\n }, {\n key: \"emit\",\n value: function emit(event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (this.observers[event]) {\n var cloned = [].concat(this.observers[event]);\n cloned.forEach(function (observer) {\n observer.apply(void 0, args);\n });\n }\n\n if (this.observers['*']) {\n var _cloned = [].concat(this.observers['*']);\n\n _cloned.forEach(function (observer) {\n observer.apply(observer, [event].concat(args));\n });\n }\n }\n }]);\n\n return EventEmitter;\n}();\n\nfunction defer() {\n var res;\n var rej;\n var promise = new Promise(function (resolve, reject) {\n res = resolve;\n rej = reject;\n });\n promise.resolve = res;\n promise.reject = rej;\n return promise;\n}\nfunction makeString(object) {\n if (object == null) return '';\n return '' + object;\n}\nfunction copy(a, s, t) {\n a.forEach(function (m) {\n if (s[m]) t[m] = s[m];\n });\n}\n\nfunction getLastOfPath(object, path, Empty) {\n function cleanKey(key) {\n return key && key.indexOf('###') > -1 ? key.replace(/###/g, '.') : key;\n }\n\n function canNotTraverseDeeper() {\n return !object || typeof object === 'string';\n }\n\n var stack = typeof path !== 'string' ? [].concat(path) : path.split('.');\n\n while (stack.length > 1) {\n if (canNotTraverseDeeper()) return {};\n var key = cleanKey(stack.shift());\n if (!object[key] && Empty) object[key] = new Empty();\n\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n object = object[key];\n } else {\n object = {};\n }\n }\n\n if (canNotTraverseDeeper()) return {};\n return {\n obj: object,\n k: cleanKey(stack.shift())\n };\n}\n\nfunction setPath(object, path, newValue) {\n var _getLastOfPath = getLastOfPath(object, path, Object),\n obj = _getLastOfPath.obj,\n k = _getLastOfPath.k;\n\n obj[k] = newValue;\n}\nfunction pushPath(object, path, newValue, concat) {\n var _getLastOfPath2 = getLastOfPath(object, path, Object),\n obj = _getLastOfPath2.obj,\n k = _getLastOfPath2.k;\n\n obj[k] = obj[k] || [];\n if (concat) obj[k] = obj[k].concat(newValue);\n if (!concat) obj[k].push(newValue);\n}\nfunction getPath(object, path) {\n var _getLastOfPath3 = getLastOfPath(object, path),\n obj = _getLastOfPath3.obj,\n k = _getLastOfPath3.k;\n\n if (!obj) return undefined;\n return obj[k];\n}\nfunction getPathWithDefaults(data, defaultData, key) {\n var value = getPath(data, key);\n\n if (value !== undefined) {\n return value;\n }\n\n return getPath(defaultData, key);\n}\nfunction deepExtend(target, source, overwrite) {\n for (var prop in source) {\n if (prop !== '__proto__' && prop !== 'constructor') {\n if (prop in target) {\n if (typeof target[prop] === 'string' || target[prop] instanceof String || typeof source[prop] === 'string' || source[prop] instanceof String) {\n if (overwrite) target[prop] = source[prop];\n } else {\n deepExtend(target[prop], source[prop], overwrite);\n }\n } else {\n target[prop] = source[prop];\n }\n }\n }\n\n return target;\n}\nfunction regexEscape(str) {\n return str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&');\n}\nvar _entityMap = {\n '&': '&amp;',\n '<': '&lt;',\n '>': '&gt;',\n '\"': '&quot;',\n \"'\": '&#39;',\n '/': '&#x2F;'\n};\nfunction escape(data) {\n if (typeof data === 'string') {\n return data.replace(/[&<>\"'\\/]/g, function (s) {\n return _entityMap[s];\n });\n }\n\n return data;\n}\nvar isIE10 = typeof window !== 'undefined' && window.navigator && window.navigator.userAgent && window.navigator.userAgent.indexOf('MSIE') > -1;\nvar chars = [' ', ',', '?', '!', ';'];\nfunction looksLikeObjectPath(key, nsSeparator, keySeparator) {\n nsSeparator = nsSeparator || '';\n keySeparator = keySeparator || '';\n var possibleChars = chars.filter(function (c) {\n return nsSeparator.indexOf(c) < 0 && keySeparator.indexOf(c) < 0;\n });\n if (possibleChars.length === 0) return true;\n var r = new RegExp(\"(\".concat(possibleChars.map(function (c) {\n return c === '?' ? '\\\\?' : c;\n }).join('|'), \")\"));\n var matched = !r.test(key);\n\n if (!matched) {\n var ki = key.indexOf(keySeparator);\n\n if (ki > 0 && !r.test(key.substring(0, ki))) {\n matched = true;\n }\n }\n\n return matched;\n}\n\nfunction ownKeys$1(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; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction deepFind(obj, path) {\n var keySeparator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '.';\n if (!obj) return undefined;\n if (obj[path]) return obj[path];\n var paths = path.split(keySeparator);\n var current = obj;\n\n for (var i = 0; i < paths.length; ++i) {\n if (!current) return undefined;\n\n if (typeof current[paths[i]] === 'string' && i + 1 < paths.length) {\n return undefined;\n }\n\n if (current[paths[i]] === undefined) {\n var j = 2;\n var p = paths.slice(i, i + j).join(keySeparator);\n var mix = current[p];\n\n while (mix === undefined && paths.length > i + j) {\n j++;\n p = paths.slice(i, i + j).join(keySeparator);\n mix = current[p];\n }\n\n if (mix === undefined) return undefined;\n\n if (path.endsWith(p)) {\n if (typeof mix === 'string') return mix;\n if (p && typeof mix[p] === 'string') return mix[p];\n }\n\n var joinedPath = paths.slice(i + j).join(keySeparator);\n if (joinedPath) return deepFind(mix, joinedPath, keySeparator);\n return undefined;\n }\n\n current = current[paths[i]];\n }\n\n return current;\n}\n\nvar ResourceStore = function (_EventEmitter) {\n _inherits(ResourceStore, _EventEmitter);\n\n var _super = _createSuper(ResourceStore);\n\n function ResourceStore(data) {\n var _this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n ns: ['translation'],\n defaultNS: 'translation'\n };\n\n _classCallCheck(this, ResourceStore);\n\n _this = _super.call(this);\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n _this.data = data || {};\n _this.options = options;\n\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n\n if (_this.options.ignoreJSONStructure === undefined) {\n _this.options.ignoreJSONStructure = true;\n }\n\n return _this;\n }\n\n _createClass(ResourceStore, [{\n key: \"addNamespaces\",\n value: function addNamespaces(ns) {\n if (this.options.ns.indexOf(ns) < 0) {\n this.options.ns.push(ns);\n }\n }\n }, {\n key: \"removeNamespaces\",\n value: function removeNamespaces(ns) {\n var index = this.options.ns.indexOf(ns);\n\n if (index > -1) {\n this.options.ns.splice(index, 1);\n }\n }\n }, {\n key: \"getResource\",\n value: function getResource(lng, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var ignoreJSONStructure = options.ignoreJSONStructure !== undefined ? options.ignoreJSONStructure : this.options.ignoreJSONStructure;\n var path = [lng, ns];\n if (key && typeof key !== 'string') path = path.concat(key);\n if (key && typeof key === 'string') path = path.concat(keySeparator ? key.split(keySeparator) : key);\n\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n }\n\n var result = getPath(this.data, path);\n if (result || !ignoreJSONStructure || typeof key !== 'string') return result;\n return deepFind(this.data && this.data[lng] && this.data[lng][ns], key, keySeparator);\n }\n }, {\n key: \"addResource\",\n value: function addResource(lng, ns, key, value) {\n var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n silent: false\n };\n var keySeparator = this.options.keySeparator;\n if (keySeparator === undefined) keySeparator = '.';\n var path = [lng, ns];\n if (key) path = path.concat(keySeparator ? key.split(keySeparator) : key);\n\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n value = ns;\n ns = path[1];\n }\n\n this.addNamespaces(ns);\n setPath(this.data, path, value);\n if (!options.silent) this.emit('added', lng, ns, key, value);\n }\n }, {\n key: \"addResources\",\n value: function addResources(lng, ns, resources) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {\n silent: false\n };\n\n for (var m in resources) {\n if (typeof resources[m] === 'string' || Object.prototype.toString.apply(resources[m]) === '[object Array]') this.addResource(lng, ns, m, resources[m], {\n silent: true\n });\n }\n\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"addResourceBundle\",\n value: function addResourceBundle(lng, ns, resources, deep, overwrite) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {\n silent: false\n };\n var path = [lng, ns];\n\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n deep = resources;\n resources = ns;\n ns = path[1];\n }\n\n this.addNamespaces(ns);\n var pack = getPath(this.data, path) || {};\n\n if (deep) {\n deepExtend(pack, resources, overwrite);\n } else {\n pack = _objectSpread$1(_objectSpread$1({}, pack), resources);\n }\n\n setPath(this.data, path, pack);\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"removeResourceBundle\",\n value: function removeResourceBundle(lng, ns) {\n if (this.hasResourceBundle(lng, ns)) {\n delete this.data[lng][ns];\n }\n\n this.removeNamespaces(ns);\n this.emit('removed', lng, ns);\n }\n }, {\n key: \"hasResourceBundle\",\n value: function hasResourceBundle(lng, ns) {\n return this.getResource(lng, ns) !== undefined;\n }\n }, {\n key: \"getResourceBundle\",\n value: function getResourceBundle(lng, ns) {\n if (!ns) ns = this.options.defaultNS;\n if (this.options.compatibilityAPI === 'v1') return _objectSpread$1(_objectSpread$1({}, {}), this.getResource(lng, ns));\n return this.getResource(lng, ns);\n }\n }, {\n key: \"getDataByLanguage\",\n value: function getDataByLanguage(lng) {\n return this.data[lng];\n }\n }, {\n key: \"hasLanguageSomeTranslations\",\n value: function hasLanguageSomeTranslations(lng) {\n var data = this.getDataByLanguage(lng);\n var n = data && Object.keys(data) || [];\n return !!n.find(function (v) {\n return data[v] && Object.keys(data[v]).length > 0;\n });\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return this.data;\n }\n }]);\n\n return ResourceStore;\n}(EventEmitter);\n\nvar postProcessor = {\n processors: {},\n addPostProcessor: function addPostProcessor(module) {\n this.processors[module.name] = module;\n },\n handle: function handle(processors, value, key, options, translator) {\n var _this = this;\n\n processors.forEach(function (processor) {\n if (_this.processors[processor]) value = _this.processors[processor].process(value, key, options, translator);\n });\n return value;\n }\n};\n\nfunction ownKeys$2(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; }\n\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$2(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper$1(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$1() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar checkedLoadedFor = {};\n\nvar Translator = function (_EventEmitter) {\n _inherits(Translator, _EventEmitter);\n\n var _super = _createSuper$1(Translator);\n\n function Translator(services) {\n var _this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Translator);\n\n _this = _super.call(this);\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n copy(['resourceStore', 'languageUtils', 'pluralResolver', 'interpolator', 'backendConnector', 'i18nFormat', 'utils'], services, _assertThisInitialized(_this));\n _this.options = options;\n\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n\n _this.logger = baseLogger.create('translator');\n return _this;\n }\n\n _createClass(Translator, [{\n key: \"changeLanguage\",\n value: function changeLanguage(lng) {\n if (lng) this.language = lng;\n }\n }, {\n key: \"exists\",\n value: function exists(key) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n\n if (key === undefined || key === null) {\n return false;\n }\n\n var resolved = this.resolve(key, options);\n return resolved && resolved.res !== undefined;\n }\n }, {\n key: \"extractFromKey\",\n value: function extractFromKey(key, options) {\n var nsSeparator = options.nsSeparator !== undefined ? options.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var namespaces = options.ns || this.options.defaultNS || [];\n var wouldCheckForNsInKey = nsSeparator && key.indexOf(nsSeparator) > -1;\n var seemsNaturalLanguage = !this.options.userDefinedKeySeparator && !options.keySeparator && !this.options.userDefinedNsSeparator && !options.nsSeparator && !looksLikeObjectPath(key, nsSeparator, keySeparator);\n\n if (wouldCheckForNsInKey && !seemsNaturalLanguage) {\n var m = key.match(this.interpolator.nestingRegexp);\n\n if (m && m.length > 0) {\n return {\n key: key,\n namespaces: namespaces\n };\n }\n\n var parts = key.split(nsSeparator);\n if (nsSeparator !== keySeparator || nsSeparator === keySeparator && this.options.ns.indexOf(parts[0]) > -1) namespaces = parts.shift();\n key = parts.join(keySeparator);\n }\n\n if (typeof namespaces === 'string') namespaces = [namespaces];\n return {\n key: key,\n namespaces: namespaces\n };\n }\n }, {\n key: \"translate\",\n value: function translate(keys, options, lastKey) {\n var _this2 = this;\n\n if (_typeof(options) !== 'object' && this.options.overloadTranslationOptionHandler) {\n options = this.options.overloadTranslationOptionHandler(arguments);\n }\n\n if (!options) options = {};\n if (keys === undefined || keys === null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n var returnDetails = options.returnDetails !== undefined ? options.returnDetails : this.options.returnDetails;\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n\n var _this$extractFromKey = this.extractFromKey(keys[keys.length - 1], options),\n key = _this$extractFromKey.key,\n namespaces = _this$extractFromKey.namespaces;\n\n var namespace = namespaces[namespaces.length - 1];\n var lng = options.lng || this.language;\n var appendNamespaceToCIMode = options.appendNamespaceToCIMode || this.options.appendNamespaceToCIMode;\n\n if (lng && lng.toLowerCase() === 'cimode') {\n if (appendNamespaceToCIMode) {\n var nsSeparator = options.nsSeparator || this.options.nsSeparator;\n\n if (returnDetails) {\n resolved.res = \"\".concat(namespace).concat(nsSeparator).concat(key);\n return resolved;\n }\n\n return \"\".concat(namespace).concat(nsSeparator).concat(key);\n }\n\n if (returnDetails) {\n resolved.res = key;\n return resolved;\n }\n\n return key;\n }\n\n var resolved = this.resolve(keys, options);\n var res = resolved && resolved.res;\n var resUsedKey = resolved && resolved.usedKey || key;\n var resExactUsedKey = resolved && resolved.exactUsedKey || key;\n var resType = Object.prototype.toString.apply(res);\n var noObject = ['[object Number]', '[object Function]', '[object RegExp]'];\n var joinArrays = options.joinArrays !== undefined ? options.joinArrays : this.options.joinArrays;\n var handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n var handleAsObject = typeof res !== 'string' && typeof res !== 'boolean' && typeof res !== 'number';\n\n if (handleAsObjectInI18nFormat && res && handleAsObject && noObject.indexOf(resType) < 0 && !(typeof joinArrays === 'string' && resType === '[object Array]')) {\n if (!options.returnObjects && !this.options.returnObjects) {\n if (!this.options.returnedObjectHandler) {\n this.logger.warn('accessing an object - but returnObjects options is not enabled!');\n }\n\n var r = this.options.returnedObjectHandler ? this.options.returnedObjectHandler(resUsedKey, res, _objectSpread$2(_objectSpread$2({}, options), {}, {\n ns: namespaces\n })) : \"key '\".concat(key, \" (\").concat(this.language, \")' returned an object instead of string.\");\n\n if (returnDetails) {\n resolved.res = r;\n return resolved;\n }\n\n return r;\n }\n\n if (keySeparator) {\n var resTypeIsArray = resType === '[object Array]';\n var copy = resTypeIsArray ? [] : {};\n var newKeyToUse = resTypeIsArray ? resExactUsedKey : resUsedKey;\n\n for (var m in res) {\n if (Object.prototype.hasOwnProperty.call(res, m)) {\n var deepKey = \"\".concat(newKeyToUse).concat(keySeparator).concat(m);\n copy[m] = this.translate(deepKey, _objectSpread$2(_objectSpread$2({}, options), {\n joinArrays: false,\n ns: namespaces\n }));\n if (copy[m] === deepKey) copy[m] = res[m];\n }\n }\n\n res = copy;\n }\n } else if (handleAsObjectInI18nFormat && typeof joinArrays === 'string' && resType === '[object Array]') {\n res = res.join(joinArrays);\n if (res) res = this.extendTranslation(res, keys, options, lastKey);\n } else {\n var usedDefault = false;\n var usedKey = false;\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var hasDefaultValue = Translator.hasDefaultValue(options);\n var defaultValueSuffix = needsPluralHandling ? this.pluralResolver.getSuffix(lng, options.count, options) : '';\n var defaultValue = options[\"defaultValue\".concat(defaultValueSuffix)] || options.defaultValue;\n\n if (!this.isValidLookup(res) && hasDefaultValue) {\n usedDefault = true;\n res = defaultValue;\n }\n\n if (!this.isValidLookup(res)) {\n usedKey = true;\n res = key;\n }\n\n var missingKeyNoValueFallbackToKey = options.missingKeyNoValueFallbackToKey || this.options.missingKeyNoValueFallbackToKey;\n var resForMissing = missingKeyNoValueFallbackToKey && usedKey ? undefined : res;\n var updateMissing = hasDefaultValue && defaultValue !== res && this.options.updateMissing;\n\n if (usedKey || usedDefault || updateMissing) {\n this.logger.log(updateMissing ? 'updateKey' : 'missingKey', lng, namespace, key, updateMissing ? defaultValue : res);\n\n if (keySeparator) {\n var fk = this.resolve(key, _objectSpread$2(_objectSpread$2({}, options), {}, {\n keySeparator: false\n }));\n if (fk && fk.res) this.logger.warn('Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.');\n }\n\n var lngs = [];\n var fallbackLngs = this.languageUtils.getFallbackCodes(this.options.fallbackLng, options.lng || this.language);\n\n if (this.options.saveMissingTo === 'fallback' && fallbackLngs && fallbackLngs[0]) {\n for (var i = 0; i < fallbackLngs.length; i++) {\n lngs.push(fallbackLngs[i]);\n }\n } else if (this.options.saveMissingTo === 'all') {\n lngs = this.languageUtils.toResolveHierarchy(options.lng || this.language);\n } else {\n lngs.push(options.lng || this.language);\n }\n\n var send = function send(l, k, specificDefaultValue) {\n var defaultForMissing = hasDefaultValue && specificDefaultValue !== res ? specificDefaultValue : resForMissing;\n\n if (_this2.options.missingKeyHandler) {\n _this2.options.missingKeyHandler(l, namespace, k, defaultForMissing, updateMissing, options);\n } else if (_this2.backendConnector && _this2.backendConnector.saveMissing) {\n _this2.backendConnector.saveMissing(l, namespace, k, defaultForMissing, updateMissing, options);\n }\n\n _this2.emit('missingKey', l, namespace, k, res);\n };\n\n if (this.options.saveMissing) {\n if (this.options.saveMissingPlurals && needsPluralHandling) {\n lngs.forEach(function (language) {\n _this2.pluralResolver.getSuffixes(language, options).forEach(function (suffix) {\n send([language], key + suffix, options[\"defaultValue\".concat(suffix)] || defaultValue);\n });\n });\n } else {\n send(lngs, key, defaultValue);\n }\n }\n }\n\n res = this.extendTranslation(res, keys, options, resolved, lastKey);\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) res = \"\".concat(namespace, \":\").concat(key);\n\n if ((usedKey || usedDefault) && this.options.parseMissingKeyHandler) {\n if (this.options.compatibilityAPI !== 'v1') {\n res = this.options.parseMissingKeyHandler(key, usedDefault ? res : undefined);\n } else {\n res = this.options.parseMissingKeyHandler(res);\n }\n }\n }\n\n if (returnDetails) {\n resolved.res = res;\n return resolved;\n }\n\n return res;\n }\n }, {\n key: \"extendTranslation\",\n value: function extendTranslation(res, key, options, resolved, lastKey) {\n var _this3 = this;\n\n if (this.i18nFormat && this.i18nFormat.parse) {\n res = this.i18nFormat.parse(res, _objectSpread$2(_objectSpread$2({}, this.options.interpolation.defaultVariables), options), resolved.usedLng, resolved.usedNS, resolved.usedKey, {\n resolved: resolved\n });\n } else if (!options.skipInterpolation) {\n if (options.interpolation) this.interpolator.init(_objectSpread$2(_objectSpread$2({}, options), {\n interpolation: _objectSpread$2(_objectSpread$2({}, this.options.interpolation), options.interpolation)\n }));\n var skipOnVariables = typeof res === 'string' && (options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables);\n var nestBef;\n\n if (skipOnVariables) {\n var nb = res.match(this.interpolator.nestingRegexp);\n nestBef = nb && nb.length;\n }\n\n var data = options.replace && typeof options.replace !== 'string' ? options.replace : options;\n if (this.options.interpolation.defaultVariables) data = _objectSpread$2(_objectSpread$2({}, this.options.interpolation.defaultVariables), data);\n res = this.interpolator.interpolate(res, data, options.lng || this.language, options);\n\n if (skipOnVariables) {\n var na = res.match(this.interpolator.nestingRegexp);\n var nestAft = na && na.length;\n if (nestBef < nestAft) options.nest = false;\n }\n\n if (options.nest !== false) res = this.interpolator.nest(res, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (lastKey && lastKey[0] === args[0] && !options.context) {\n _this3.logger.warn(\"It seems you are nesting recursively key: \".concat(args[0], \" in key: \").concat(key[0]));\n\n return null;\n }\n\n return _this3.translate.apply(_this3, args.concat([key]));\n }, options);\n if (options.interpolation) this.interpolator.reset();\n }\n\n var postProcess = options.postProcess || this.options.postProcess;\n var postProcessorNames = typeof postProcess === 'string' ? [postProcess] : postProcess;\n\n if (res !== undefined && res !== null && postProcessorNames && postProcessorNames.length && options.applyPostProcessor !== false) {\n res = postProcessor.handle(postProcessorNames, res, key, this.options && this.options.postProcessPassResolved ? _objectSpread$2({\n i18nResolved: resolved\n }, options) : options, this);\n }\n\n return res;\n }\n }, {\n key: \"resolve\",\n value: function resolve(keys) {\n var _this4 = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var found;\n var usedKey;\n var exactUsedKey;\n var usedLng;\n var usedNS;\n if (typeof keys === 'string') keys = [keys];\n keys.forEach(function (k) {\n if (_this4.isValidLookup(found)) return;\n\n var extracted = _this4.extractFromKey(k, options);\n\n var key = extracted.key;\n usedKey = key;\n var namespaces = extracted.namespaces;\n if (_this4.options.fallbackNS) namespaces = namespaces.concat(_this4.options.fallbackNS);\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n\n var needsZeroSuffixLookup = needsPluralHandling && !options.ordinal && options.count === 0 && _this4.pluralResolver.shouldUseIntlApi();\n\n var needsContextHandling = options.context !== undefined && (typeof options.context === 'string' || typeof options.context === 'number') && options.context !== '';\n var codes = options.lngs ? options.lngs : _this4.languageUtils.toResolveHierarchy(options.lng || _this4.language, options.fallbackLng);\n namespaces.forEach(function (ns) {\n if (_this4.isValidLookup(found)) return;\n usedNS = ns;\n\n if (!checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] && _this4.utils && _this4.utils.hasLoadedNamespace && !_this4.utils.hasLoadedNamespace(usedNS)) {\n checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] = true;\n\n _this4.logger.warn(\"key \\\"\".concat(usedKey, \"\\\" for languages \\\"\").concat(codes.join(', '), \"\\\" won't get resolved as namespace \\\"\").concat(usedNS, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n }\n\n codes.forEach(function (code) {\n if (_this4.isValidLookup(found)) return;\n usedLng = code;\n var finalKeys = [key];\n\n if (_this4.i18nFormat && _this4.i18nFormat.addLookupKeys) {\n _this4.i18nFormat.addLookupKeys(finalKeys, key, code, ns, options);\n } else {\n var pluralSuffix;\n if (needsPluralHandling) pluralSuffix = _this4.pluralResolver.getSuffix(code, options.count, options);\n var zeroSuffix = '_zero';\n\n if (needsPluralHandling) {\n finalKeys.push(key + pluralSuffix);\n\n if (needsZeroSuffixLookup) {\n finalKeys.push(key + zeroSuffix);\n }\n }\n\n if (needsContextHandling) {\n var contextKey = \"\".concat(key).concat(_this4.options.contextSeparator).concat(options.context);\n finalKeys.push(contextKey);\n\n if (needsPluralHandling) {\n finalKeys.push(contextKey + pluralSuffix);\n\n if (needsZeroSuffixLookup) {\n finalKeys.push(contextKey + zeroSuffix);\n }\n }\n }\n }\n\n var possibleKey;\n\n while (possibleKey = finalKeys.pop()) {\n if (!_this4.isValidLookup(found)) {\n exactUsedKey = possibleKey;\n found = _this4.getResource(code, ns, possibleKey, options);\n }\n }\n });\n });\n });\n return {\n res: found,\n usedKey: usedKey,\n exactUsedKey: exactUsedKey,\n usedLng: usedLng,\n usedNS: usedNS\n };\n }\n }, {\n key: \"isValidLookup\",\n value: function isValidLookup(res) {\n return res !== undefined && !(!this.options.returnNull && res === null) && !(!this.options.returnEmptyString && res === '');\n }\n }, {\n key: \"getResource\",\n value: function getResource(code, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n if (this.i18nFormat && this.i18nFormat.getResource) return this.i18nFormat.getResource(code, ns, key, options);\n return this.resourceStore.getResource(code, ns, key, options);\n }\n }], [{\n key: \"hasDefaultValue\",\n value: function hasDefaultValue(options) {\n var prefix = 'defaultValue';\n\n for (var option in options) {\n if (Object.prototype.hasOwnProperty.call(options, option) && prefix === option.substring(0, prefix.length) && undefined !== options[option]) {\n return true;\n }\n }\n\n return false;\n }\n }]);\n\n return Translator;\n}(EventEmitter);\n\nfunction capitalize(string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n}\n\nvar LanguageUtil = function () {\n function LanguageUtil(options) {\n _classCallCheck(this, LanguageUtil);\n\n this.options = options;\n this.supportedLngs = this.options.supportedLngs || false;\n this.logger = baseLogger.create('languageUtils');\n }\n\n _createClass(LanguageUtil, [{\n key: \"getScriptPartFromCode\",\n value: function getScriptPartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return null;\n var p = code.split('-');\n if (p.length === 2) return null;\n p.pop();\n if (p[p.length - 1].toLowerCase() === 'x') return null;\n return this.formatLanguageCode(p.join('-'));\n }\n }, {\n key: \"getLanguagePartFromCode\",\n value: function getLanguagePartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return code;\n var p = code.split('-');\n return this.formatLanguageCode(p[0]);\n }\n }, {\n key: \"formatLanguageCode\",\n value: function formatLanguageCode(code) {\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n var specialCases = ['hans', 'hant', 'latn', 'cyrl', 'cans', 'mong', 'arab'];\n var p = code.split('-');\n\n if (this.options.lowerCaseLng) {\n p = p.map(function (part) {\n return part.toLowerCase();\n });\n } else if (p.length === 2) {\n p[0] = p[0].toLowerCase();\n p[1] = p[1].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n } else if (p.length === 3) {\n p[0] = p[0].toLowerCase();\n if (p[1].length === 2) p[1] = p[1].toUpperCase();\n if (p[0] !== 'sgn' && p[2].length === 2) p[2] = p[2].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n if (specialCases.indexOf(p[2].toLowerCase()) > -1) p[2] = capitalize(p[2].toLowerCase());\n }\n\n return p.join('-');\n }\n\n return this.options.cleanCode || this.options.lowerCaseLng ? code.toLowerCase() : code;\n }\n }, {\n key: \"isSupportedCode\",\n value: function isSupportedCode(code) {\n if (this.options.load === 'languageOnly' || this.options.nonExplicitSupportedLngs) {\n code = this.getLanguagePartFromCode(code);\n }\n\n return !this.supportedLngs || !this.supportedLngs.length || this.supportedLngs.indexOf(code) > -1;\n }\n }, {\n key: \"getBestMatchFromCodes\",\n value: function getBestMatchFromCodes(codes) {\n var _this = this;\n\n if (!codes) return null;\n var found;\n codes.forEach(function (code) {\n if (found) return;\n\n var cleanedLng = _this.formatLanguageCode(code);\n\n if (!_this.options.supportedLngs || _this.isSupportedCode(cleanedLng)) found = cleanedLng;\n });\n\n if (!found && this.options.supportedLngs) {\n codes.forEach(function (code) {\n if (found) return;\n\n var lngOnly = _this.getLanguagePartFromCode(code);\n\n if (_this.isSupportedCode(lngOnly)) return found = lngOnly;\n found = _this.options.supportedLngs.find(function (supportedLng) {\n if (supportedLng.indexOf(lngOnly) === 0) return supportedLng;\n });\n });\n }\n\n if (!found) found = this.getFallbackCodes(this.options.fallbackLng)[0];\n return found;\n }\n }, {\n key: \"getFallbackCodes\",\n value: function getFallbackCodes(fallbacks, code) {\n if (!fallbacks) return [];\n if (typeof fallbacks === 'function') fallbacks = fallbacks(code);\n if (typeof fallbacks === 'string') fallbacks = [fallbacks];\n if (Object.prototype.toString.apply(fallbacks) === '[object Array]') return fallbacks;\n if (!code) return fallbacks[\"default\"] || [];\n var found = fallbacks[code];\n if (!found) found = fallbacks[this.getScriptPartFromCode(code)];\n if (!found) found = fallbacks[this.formatLanguageCode(code)];\n if (!found) found = fallbacks[this.getLanguagePartFromCode(code)];\n if (!found) found = fallbacks[\"default\"];\n return found || [];\n }\n }, {\n key: \"toResolveHierarchy\",\n value: function toResolveHierarchy(code, fallbackCode) {\n var _this2 = this;\n\n var fallbackCodes = this.getFallbackCodes(fallbackCode || this.options.fallbackLng || [], code);\n var codes = [];\n\n var addCode = function addCode(c) {\n if (!c) return;\n\n if (_this2.isSupportedCode(c)) {\n codes.push(c);\n } else {\n _this2.logger.warn(\"rejecting language code not found in supportedLngs: \".concat(c));\n }\n };\n\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n if (this.options.load !== 'languageOnly') addCode(this.formatLanguageCode(code));\n if (this.options.load !== 'languageOnly' && this.options.load !== 'currentOnly') addCode(this.getScriptPartFromCode(code));\n if (this.options.load !== 'currentOnly') addCode(this.getLanguagePartFromCode(code));\n } else if (typeof code === 'string') {\n addCode(this.formatLanguageCode(code));\n }\n\n fallbackCodes.forEach(function (fc) {\n if (codes.indexOf(fc) < 0) addCode(_this2.formatLanguageCode(fc));\n });\n return codes;\n }\n }]);\n\n return LanguageUtil;\n}();\n\nvar sets = [{\n lngs: ['ach', 'ak', 'am', 'arn', 'br', 'fil', 'gun', 'ln', 'mfe', 'mg', 'mi', 'oc', 'pt', 'pt-BR', 'tg', 'tl', 'ti', 'tr', 'uz', 'wa'],\n nr: [1, 2],\n fc: 1\n}, {\n lngs: ['af', 'an', 'ast', 'az', 'bg', 'bn', 'ca', 'da', 'de', 'dev', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fi', 'fo', 'fur', 'fy', 'gl', 'gu', 'ha', 'hi', 'hu', 'hy', 'ia', 'it', 'kk', 'kn', 'ku', 'lb', 'mai', 'ml', 'mn', 'mr', 'nah', 'nap', 'nb', 'ne', 'nl', 'nn', 'no', 'nso', 'pa', 'pap', 'pms', 'ps', 'pt-PT', 'rm', 'sco', 'se', 'si', 'so', 'son', 'sq', 'sv', 'sw', 'ta', 'te', 'tk', 'ur', 'yo'],\n nr: [1, 2],\n fc: 2\n}, {\n lngs: ['ay', 'bo', 'cgg', 'fa', 'ht', 'id', 'ja', 'jbo', 'ka', 'km', 'ko', 'ky', 'lo', 'ms', 'sah', 'su', 'th', 'tt', 'ug', 'vi', 'wo', 'zh'],\n nr: [1],\n fc: 3\n}, {\n lngs: ['be', 'bs', 'cnr', 'dz', 'hr', 'ru', 'sr', 'uk'],\n nr: [1, 2, 5],\n fc: 4\n}, {\n lngs: ['ar'],\n nr: [0, 1, 2, 3, 11, 100],\n fc: 5\n}, {\n lngs: ['cs', 'sk'],\n nr: [1, 2, 5],\n fc: 6\n}, {\n lngs: ['csb', 'pl'],\n nr: [1, 2, 5],\n fc: 7\n}, {\n lngs: ['cy'],\n nr: [1, 2, 3, 8],\n fc: 8\n}, {\n lngs: ['fr'],\n nr: [1, 2],\n fc: 9\n}, {\n lngs: ['ga'],\n nr: [1, 2, 3, 7, 11],\n fc: 10\n}, {\n lngs: ['gd'],\n nr: [1, 2, 3, 20],\n fc: 11\n}, {\n lngs: ['is'],\n nr: [1, 2],\n fc: 12\n}, {\n lngs: ['jv'],\n nr: [0, 1],\n fc: 13\n}, {\n lngs: ['kw'],\n nr: [1, 2, 3, 4],\n fc: 14\n}, {\n lngs: ['lt'],\n nr: [1, 2, 10],\n fc: 15\n}, {\n lngs: ['lv'],\n nr: [1, 2, 0],\n fc: 16\n}, {\n lngs: ['mk'],\n nr: [1, 2],\n fc: 17\n}, {\n lngs: ['mnk'],\n nr: [0, 1, 2],\n fc: 18\n}, {\n lngs: ['mt'],\n nr: [1, 2, 11, 20],\n fc: 19\n}, {\n lngs: ['or'],\n nr: [2, 1],\n fc: 2\n}, {\n lngs: ['ro'],\n nr: [1, 2, 20],\n fc: 20\n}, {\n lngs: ['sl'],\n nr: [5, 1, 2, 3],\n fc: 21\n}, {\n lngs: ['he', 'iw'],\n nr: [1, 2, 20, 21],\n fc: 22\n}];\nvar _rulesPluralsTypes = {\n 1: function _(n) {\n return Number(n > 1);\n },\n 2: function _(n) {\n return Number(n != 1);\n },\n 3: function _(n) {\n return 0;\n },\n 4: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 5: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : n == 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n },\n 6: function _(n) {\n return Number(n == 1 ? 0 : n >= 2 && n <= 4 ? 1 : 2);\n },\n 7: function _(n) {\n return Number(n == 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 8: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n != 8 && n != 11 ? 2 : 3);\n },\n 9: function _(n) {\n return Number(n >= 2);\n },\n 10: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n },\n 11: function _(n) {\n return Number(n == 1 || n == 11 ? 0 : n == 2 || n == 12 ? 1 : n > 2 && n < 20 ? 2 : 3);\n },\n 12: function _(n) {\n return Number(n % 10 != 1 || n % 100 == 11);\n },\n 13: function _(n) {\n return Number(n !== 0);\n },\n 14: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n == 3 ? 2 : 3);\n },\n 15: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 16: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n !== 0 ? 1 : 2);\n },\n 17: function _(n) {\n return Number(n == 1 || n % 10 == 1 && n % 100 != 11 ? 0 : 1);\n },\n 18: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : 2);\n },\n 19: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 1 && n % 100 < 11 ? 1 : n % 100 > 10 && n % 100 < 20 ? 2 : 3);\n },\n 20: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 0 && n % 100 < 20 ? 1 : 2);\n },\n 21: function _(n) {\n return Number(n % 100 == 1 ? 1 : n % 100 == 2 ? 2 : n % 100 == 3 || n % 100 == 4 ? 3 : 0);\n },\n 22: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : (n < 0 || n > 10) && n % 10 == 0 ? 2 : 3);\n }\n};\nvar deprecatedJsonVersions = ['v1', 'v2', 'v3'];\nvar suffixesOrder = {\n zero: 0,\n one: 1,\n two: 2,\n few: 3,\n many: 4,\n other: 5\n};\n\nfunction createRules() {\n var rules = {};\n sets.forEach(function (set) {\n set.lngs.forEach(function (l) {\n rules[l] = {\n numbers: set.nr,\n plurals: _rulesPluralsTypes[set.fc]\n };\n });\n });\n return rules;\n}\n\nvar PluralResolver = function () {\n function PluralResolver(languageUtils) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, PluralResolver);\n\n this.languageUtils = languageUtils;\n this.options = options;\n this.logger = baseLogger.create('pluralResolver');\n\n if ((!this.options.compatibilityJSON || this.options.compatibilityJSON === 'v4') && (typeof Intl === 'undefined' || !Intl.PluralRules)) {\n this.options.compatibilityJSON = 'v3';\n this.logger.error('Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.');\n }\n\n this.rules = createRules();\n }\n\n _createClass(PluralResolver, [{\n key: \"addRule\",\n value: function addRule(lng, obj) {\n this.rules[lng] = obj;\n }\n }, {\n key: \"getRule\",\n value: function getRule(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (this.shouldUseIntlApi()) {\n try {\n return new Intl.PluralRules(code, {\n type: options.ordinal ? 'ordinal' : 'cardinal'\n });\n } catch (_unused) {\n return;\n }\n }\n\n return this.rules[code] || this.rules[this.languageUtils.getLanguagePartFromCode(code)];\n }\n }, {\n key: \"needsPlural\",\n value: function needsPlural(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n\n if (this.shouldUseIntlApi()) {\n return rule && rule.resolvedOptions().pluralCategories.length > 1;\n }\n\n return rule && rule.numbers.length > 1;\n }\n }, {\n key: \"getPluralFormsOfKey\",\n value: function getPluralFormsOfKey(code, key) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return this.getSuffixes(code, options).map(function (suffix) {\n return \"\".concat(key).concat(suffix);\n });\n }\n }, {\n key: \"getSuffixes\",\n value: function getSuffixes(code) {\n var _this = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n\n if (!rule) {\n return [];\n }\n\n if (this.shouldUseIntlApi()) {\n return rule.resolvedOptions().pluralCategories.sort(function (pluralCategory1, pluralCategory2) {\n return suffixesOrder[pluralCategory1] - suffixesOrder[pluralCategory2];\n }).map(function (pluralCategory) {\n return \"\".concat(_this.options.prepend).concat(pluralCategory);\n });\n }\n\n return rule.numbers.map(function (number) {\n return _this.getSuffix(code, number, options);\n });\n }\n }, {\n key: \"getSuffix\",\n value: function getSuffix(code, count) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var rule = this.getRule(code, options);\n\n if (rule) {\n if (this.shouldUseIntlApi()) {\n return \"\".concat(this.options.prepend).concat(rule.select(count));\n }\n\n return this.getSuffixRetroCompatible(rule, count);\n }\n\n this.logger.warn(\"no plural rule found for: \".concat(code));\n return '';\n }\n }, {\n key: \"getSuffixRetroCompatible\",\n value: function getSuffixRetroCompatible(rule, count) {\n var _this2 = this;\n\n var idx = rule.noAbs ? rule.plurals(count) : rule.plurals(Math.abs(count));\n var suffix = rule.numbers[idx];\n\n if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n if (suffix === 2) {\n suffix = 'plural';\n } else if (suffix === 1) {\n suffix = '';\n }\n }\n\n var returnSuffix = function returnSuffix() {\n return _this2.options.prepend && suffix.toString() ? _this2.options.prepend + suffix.toString() : suffix.toString();\n };\n\n if (this.options.compatibilityJSON === 'v1') {\n if (suffix === 1) return '';\n if (typeof suffix === 'number') return \"_plural_\".concat(suffix.toString());\n return returnSuffix();\n } else if (this.options.compatibilityJSON === 'v2') {\n return returnSuffix();\n } else if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n return returnSuffix();\n }\n\n return this.options.prepend && idx.toString() ? this.options.prepend + idx.toString() : idx.toString();\n }\n }, {\n key: \"shouldUseIntlApi\",\n value: function shouldUseIntlApi() {\n return !deprecatedJsonVersions.includes(this.options.compatibilityJSON);\n }\n }]);\n\n return PluralResolver;\n}();\n\nfunction ownKeys$3(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; }\n\nfunction _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$3(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nvar Interpolator = function () {\n function Interpolator() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n _classCallCheck(this, Interpolator);\n\n this.logger = baseLogger.create('interpolator');\n this.options = options;\n\n this.format = options.interpolation && options.interpolation.format || function (value) {\n return value;\n };\n\n this.init(options);\n }\n\n _createClass(Interpolator, [{\n key: \"init\",\n value: function init() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (!options.interpolation) options.interpolation = {\n escapeValue: true\n };\n var iOpts = options.interpolation;\n this.escape = iOpts.escape !== undefined ? iOpts.escape : escape;\n this.escapeValue = iOpts.escapeValue !== undefined ? iOpts.escapeValue : true;\n this.useRawValueToEscape = iOpts.useRawValueToEscape !== undefined ? iOpts.useRawValueToEscape : false;\n this.prefix = iOpts.prefix ? regexEscape(iOpts.prefix) : iOpts.prefixEscaped || '{{';\n this.suffix = iOpts.suffix ? regexEscape(iOpts.suffix) : iOpts.suffixEscaped || '}}';\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n this.unescapePrefix = iOpts.unescapeSuffix ? '' : iOpts.unescapePrefix || '-';\n this.unescapeSuffix = this.unescapePrefix ? '' : iOpts.unescapeSuffix || '';\n this.nestingPrefix = iOpts.nestingPrefix ? regexEscape(iOpts.nestingPrefix) : iOpts.nestingPrefixEscaped || regexEscape('$t(');\n this.nestingSuffix = iOpts.nestingSuffix ? regexEscape(iOpts.nestingSuffix) : iOpts.nestingSuffixEscaped || regexEscape(')');\n this.nestingOptionsSeparator = iOpts.nestingOptionsSeparator ? iOpts.nestingOptionsSeparator : iOpts.nestingOptionsSeparator || ',';\n this.maxReplaces = iOpts.maxReplaces ? iOpts.maxReplaces : 1000;\n this.alwaysFormat = iOpts.alwaysFormat !== undefined ? iOpts.alwaysFormat : false;\n this.resetRegExp();\n }\n }, {\n key: \"reset\",\n value: function reset() {\n if (this.options) this.init(this.options);\n }\n }, {\n key: \"resetRegExp\",\n value: function resetRegExp() {\n var regexpStr = \"\".concat(this.prefix, \"(.+?)\").concat(this.suffix);\n this.regexp = new RegExp(regexpStr, 'g');\n var regexpUnescapeStr = \"\".concat(this.prefix).concat(this.unescapePrefix, \"(.+?)\").concat(this.unescapeSuffix).concat(this.suffix);\n this.regexpUnescape = new RegExp(regexpUnescapeStr, 'g');\n var nestingRegexpStr = \"\".concat(this.nestingPrefix, \"(.+?)\").concat(this.nestingSuffix);\n this.nestingRegexp = new RegExp(nestingRegexpStr, 'g');\n }\n }, {\n key: \"interpolate\",\n value: function interpolate(str, data, lng, options) {\n var _this = this;\n\n var match;\n var value;\n var replaces;\n var defaultData = this.options && this.options.interpolation && this.options.interpolation.defaultVariables || {};\n\n function regexSafe(val) {\n return val.replace(/\\$/g, '$$$$');\n }\n\n var handleFormat = function handleFormat(key) {\n if (key.indexOf(_this.formatSeparator) < 0) {\n var path = getPathWithDefaults(data, defaultData, key);\n return _this.alwaysFormat ? _this.format(path, undefined, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: key\n })) : path;\n }\n\n var p = key.split(_this.formatSeparator);\n var k = p.shift().trim();\n var f = p.join(_this.formatSeparator).trim();\n return _this.format(getPathWithDefaults(data, defaultData, k), f, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: k\n }));\n };\n\n this.resetRegExp();\n var missingInterpolationHandler = options && options.missingInterpolationHandler || this.options.missingInterpolationHandler;\n var skipOnVariables = options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables;\n var todos = [{\n regex: this.regexpUnescape,\n safeValue: function safeValue(val) {\n return regexSafe(val);\n }\n }, {\n regex: this.regexp,\n safeValue: function safeValue(val) {\n return _this.escapeValue ? regexSafe(_this.escape(val)) : regexSafe(val);\n }\n }];\n todos.forEach(function (todo) {\n replaces = 0;\n\n while (match = todo.regex.exec(str)) {\n var matchedVar = match[1].trim();\n value = handleFormat(matchedVar);\n\n if (value === undefined) {\n if (typeof missingInterpolationHandler === 'function') {\n var temp = missingInterpolationHandler(str, match, options);\n value = typeof temp === 'string' ? temp : '';\n } else if (options && options.hasOwnProperty(matchedVar)) {\n value = '';\n } else if (skipOnVariables) {\n value = match[0];\n continue;\n } else {\n _this.logger.warn(\"missed to pass in variable \".concat(matchedVar, \" for interpolating \").concat(str));\n\n value = '';\n }\n } else if (typeof value !== 'string' && !_this.useRawValueToEscape) {\n value = makeString(value);\n }\n\n var safeValue = todo.safeValue(value);\n str = str.replace(match[0], safeValue);\n\n if (skipOnVariables) {\n todo.regex.lastIndex += safeValue.length;\n todo.regex.lastIndex -= match[0].length;\n } else {\n todo.regex.lastIndex = 0;\n }\n\n replaces++;\n\n if (replaces >= _this.maxReplaces) {\n break;\n }\n }\n });\n return str;\n }\n }, {\n key: \"nest\",\n value: function nest(str, fc) {\n var _this2 = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var match;\n var value;\n\n var clonedOptions = _objectSpread$3({}, options);\n\n clonedOptions.applyPostProcessor = false;\n delete clonedOptions.defaultValue;\n\n function handleHasOptions(key, inheritedOptions) {\n var sep = this.nestingOptionsSeparator;\n if (key.indexOf(sep) < 0) return key;\n var c = key.split(new RegExp(\"\".concat(sep, \"[ ]*{\")));\n var optionsString = \"{\".concat(c[1]);\n key = c[0];\n optionsString = this.interpolate(optionsString, clonedOptions);\n optionsString = optionsString.replace(/'/g, '\"');\n\n try {\n clonedOptions = JSON.parse(optionsString);\n if (inheritedOptions) clonedOptions = _objectSpread$3(_objectSpread$3({}, inheritedOptions), clonedOptions);\n } catch (e) {\n this.logger.warn(\"failed parsing options string in nesting for key \".concat(key), e);\n return \"\".concat(key).concat(sep).concat(optionsString);\n }\n\n delete clonedOptions.defaultValue;\n return key;\n }\n\n while (match = this.nestingRegexp.exec(str)) {\n var formatters = [];\n var doReduce = false;\n\n if (match[0].indexOf(this.formatSeparator) !== -1 && !/{.*}/.test(match[1])) {\n var r = match[1].split(this.formatSeparator).map(function (elem) {\n return elem.trim();\n });\n match[1] = r.shift();\n formatters = r;\n doReduce = true;\n }\n\n value = fc(handleHasOptions.call(this, match[1].trim(), clonedOptions), clonedOptions);\n if (value && match[0] === str && typeof value !== 'string') return value;\n if (typeof value !== 'string') value = makeString(value);\n\n if (!value) {\n this.logger.warn(\"missed to resolve \".concat(match[1], \" for nesting \").concat(str));\n value = '';\n }\n\n if (doReduce) {\n value = formatters.reduce(function (v, f) {\n return _this2.format(v, f, options.lng, _objectSpread$3(_objectSpread$3({}, options), {}, {\n interpolationkey: match[1].trim()\n }));\n }, value.trim());\n }\n\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n }\n\n return str;\n }\n }]);\n\n return Interpolator;\n}();\n\nfunction ownKeys$4(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; }\n\nfunction _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$4(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction parseFormatStr(formatStr) {\n var formatName = formatStr.toLowerCase().trim();\n var formatOptions = {};\n\n if (formatStr.indexOf('(') > -1) {\n var p = formatStr.split('(');\n formatName = p[0].toLowerCase().trim();\n var optStr = p[1].substring(0, p[1].length - 1);\n\n if (formatName === 'currency' && optStr.indexOf(':') < 0) {\n if (!formatOptions.currency) formatOptions.currency = optStr.trim();\n } else if (formatName === 'relativetime' && optStr.indexOf(':') < 0) {\n if (!formatOptions.range) formatOptions.range = optStr.trim();\n } else {\n var opts = optStr.split(';');\n opts.forEach(function (opt) {\n if (!opt) return;\n\n var _opt$split = opt.split(':'),\n _opt$split2 = _toArray(_opt$split),\n key = _opt$split2[0],\n rest = _opt$split2.slice(1);\n\n var val = rest.join(':');\n if (!formatOptions[key.trim()]) formatOptions[key.trim()] = val.trim();\n if (val.trim() === 'false') formatOptions[key.trim()] = false;\n if (val.trim() === 'true') formatOptions[key.trim()] = true;\n if (!isNaN(val.trim())) formatOptions[key.trim()] = parseInt(val.trim(), 10);\n });\n }\n }\n\n return {\n formatName: formatName,\n formatOptions: formatOptions\n };\n}\n\nvar Formatter = function () {\n function Formatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n _classCallCheck(this, Formatter);\n\n this.logger = baseLogger.create('formatter');\n this.options = options;\n this.formats = {\n number: function number(val, lng, options) {\n return new Intl.NumberFormat(lng, options).format(val);\n },\n currency: function currency(val, lng, options) {\n return new Intl.NumberFormat(lng, _objectSpread$4(_objectSpread$4({}, options), {}, {\n style: 'currency'\n })).format(val);\n },\n datetime: function datetime(val, lng, options) {\n return new Intl.DateTimeFormat(lng, _objectSpread$4({}, options)).format(val);\n },\n relativetime: function relativetime(val, lng, options) {\n return new Intl.RelativeTimeFormat(lng, _objectSpread$4({}, options)).format(val, options.range || 'day');\n },\n list: function list(val, lng, options) {\n return new Intl.ListFormat(lng, _objectSpread$4({}, options)).format(val);\n }\n };\n this.init(options);\n }\n\n _createClass(Formatter, [{\n key: \"init\",\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n var iOpts = options.interpolation;\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n }\n }, {\n key: \"add\",\n value: function add(name, fc) {\n this.formats[name.toLowerCase().trim()] = fc;\n }\n }, {\n key: \"format\",\n value: function format(value, _format, lng, options) {\n var _this = this;\n\n var formats = _format.split(this.formatSeparator);\n\n var result = formats.reduce(function (mem, f) {\n var _parseFormatStr = parseFormatStr(f),\n formatName = _parseFormatStr.formatName,\n formatOptions = _parseFormatStr.formatOptions;\n\n if (_this.formats[formatName]) {\n var formatted = mem;\n\n try {\n var valOptions = options && options.formatParams && options.formatParams[options.interpolationkey] || {};\n var l = valOptions.locale || valOptions.lng || options.locale || options.lng || lng;\n formatted = _this.formats[formatName](mem, l, _objectSpread$4(_objectSpread$4(_objectSpread$4({}, formatOptions), options), valOptions));\n } catch (error) {\n _this.logger.warn(error);\n }\n\n return formatted;\n } else {\n _this.logger.warn(\"there was no format function for \".concat(formatName));\n }\n\n return mem;\n }, value);\n return result;\n }\n }]);\n\n return Formatter;\n}();\n\nfunction ownKeys$5(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; }\n\nfunction _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$5(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper$2(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$2(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$2() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction remove(arr, what) {\n var found = arr.indexOf(what);\n\n while (found !== -1) {\n arr.splice(found, 1);\n found = arr.indexOf(what);\n }\n}\n\nvar Connector = function (_EventEmitter) {\n _inherits(Connector, _EventEmitter);\n\n var _super = _createSuper$2(Connector);\n\n function Connector(backend, store, services) {\n var _this;\n\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\n _classCallCheck(this, Connector);\n\n _this = _super.call(this);\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n _this.backend = backend;\n _this.store = store;\n _this.services = services;\n _this.languageUtils = services.languageUtils;\n _this.options = options;\n _this.logger = baseLogger.create('backendConnector');\n _this.state = {};\n _this.queue = [];\n\n if (_this.backend && _this.backend.init) {\n _this.backend.init(services, options.backend, options);\n }\n\n return _this;\n }\n\n _createClass(Connector, [{\n key: \"queueLoad\",\n value: function queueLoad(languages, namespaces, options, callback) {\n var _this2 = this;\n\n var toLoad = [];\n var pending = [];\n var toLoadLanguages = [];\n var toLoadNamespaces = [];\n languages.forEach(function (lng) {\n var hasAllNamespaces = true;\n namespaces.forEach(function (ns) {\n var name = \"\".concat(lng, \"|\").concat(ns);\n\n if (!options.reload && _this2.store.hasResourceBundle(lng, ns)) {\n _this2.state[name] = 2;\n } else if (_this2.state[name] < 0) ; else if (_this2.state[name] === 1) {\n if (pending.indexOf(name) < 0) pending.push(name);\n } else {\n _this2.state[name] = 1;\n hasAllNamespaces = false;\n if (pending.indexOf(name) < 0) pending.push(name);\n if (toLoad.indexOf(name) < 0) toLoad.push(name);\n if (toLoadNamespaces.indexOf(ns) < 0) toLoadNamespaces.push(ns);\n }\n });\n if (!hasAllNamespaces) toLoadLanguages.push(lng);\n });\n\n if (toLoad.length || pending.length) {\n this.queue.push({\n pending: pending,\n loaded: {},\n errors: [],\n callback: callback\n });\n }\n\n return {\n toLoad: toLoad,\n pending: pending,\n toLoadLanguages: toLoadLanguages,\n toLoadNamespaces: toLoadNamespaces\n };\n }\n }, {\n key: \"loaded\",\n value: function loaded(name, err, data) {\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n if (err) this.emit('failedLoading', lng, ns, err);\n\n if (data) {\n this.store.addResourceBundle(lng, ns, data);\n }\n\n this.state[name] = err ? -1 : 2;\n var loaded = {};\n this.queue.forEach(function (q) {\n pushPath(q.loaded, [lng], ns);\n remove(q.pending, name);\n if (err) q.errors.push(err);\n\n if (q.pending.length === 0 && !q.done) {\n Object.keys(q.loaded).forEach(function (l) {\n if (!loaded[l]) loaded[l] = [];\n\n if (q.loaded[l].length) {\n q.loaded[l].forEach(function (ns) {\n if (loaded[l].indexOf(ns) < 0) loaded[l].push(ns);\n });\n }\n });\n q.done = true;\n\n if (q.errors.length) {\n q.callback(q.errors);\n } else {\n q.callback();\n }\n }\n });\n this.emit('loaded', loaded);\n this.queue = this.queue.filter(function (q) {\n return !q.done;\n });\n }\n }, {\n key: \"read\",\n value: function read(lng, ns, fcName) {\n var _this3 = this;\n\n var tried = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n var wait = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 350;\n var callback = arguments.length > 5 ? arguments[5] : undefined;\n if (!lng.length) return callback(null, {});\n return this.backend[fcName](lng, ns, function (err, data) {\n if (err && data && tried < 5) {\n setTimeout(function () {\n _this3.read.call(_this3, lng, ns, fcName, tried + 1, wait * 2, callback);\n }, wait);\n return;\n }\n\n callback(err, data);\n });\n }\n }, {\n key: \"prepareLoading\",\n value: function prepareLoading(languages, namespaces) {\n var _this4 = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var callback = arguments.length > 3 ? arguments[3] : undefined;\n\n if (!this.backend) {\n this.logger.warn('No backend was added via i18next.use. Will not load resources.');\n return callback && callback();\n }\n\n if (typeof languages === 'string') languages = this.languageUtils.toResolveHierarchy(languages);\n if (typeof namespaces === 'string') namespaces = [namespaces];\n var toLoad = this.queueLoad(languages, namespaces, options, callback);\n\n if (!toLoad.toLoad.length) {\n if (!toLoad.pending.length) callback();\n return null;\n }\n\n toLoad.toLoad.forEach(function (name) {\n _this4.loadOne(name);\n });\n }\n }, {\n key: \"load\",\n value: function load(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {}, callback);\n }\n }, {\n key: \"reload\",\n value: function reload(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {\n reload: true\n }, callback);\n }\n }, {\n key: \"loadOne\",\n value: function loadOne(name) {\n var _this5 = this;\n\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n this.read(lng, ns, 'read', undefined, undefined, function (err, data) {\n if (err) _this5.logger.warn(\"\".concat(prefix, \"loading namespace \").concat(ns, \" for language \").concat(lng, \" failed\"), err);\n if (!err && data) _this5.logger.log(\"\".concat(prefix, \"loaded namespace \").concat(ns, \" for language \").concat(lng), data);\n\n _this5.loaded(name, err, data);\n });\n }\n }, {\n key: \"saveMissing\",\n value: function saveMissing(languages, namespace, key, fallbackValue, isUpdate) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};\n\n if (this.services.utils && this.services.utils.hasLoadedNamespace && !this.services.utils.hasLoadedNamespace(namespace)) {\n this.logger.warn(\"did not save key \\\"\".concat(key, \"\\\" as the namespace \\\"\").concat(namespace, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n return;\n }\n\n if (key === undefined || key === null || key === '') return;\n\n if (this.backend && this.backend.create) {\n this.backend.create(languages, namespace, key, fallbackValue, null, _objectSpread$5(_objectSpread$5({}, options), {}, {\n isUpdate: isUpdate\n }));\n }\n\n if (!languages || !languages[0]) return;\n this.store.addResource(languages[0], namespace, key, fallbackValue);\n }\n }]);\n\n return Connector;\n}(EventEmitter);\n\nfunction get() {\n return {\n debug: false,\n initImmediate: true,\n ns: ['translation'],\n defaultNS: ['translation'],\n fallbackLng: ['dev'],\n fallbackNS: false,\n supportedLngs: false,\n nonExplicitSupportedLngs: false,\n load: 'all',\n preload: false,\n simplifyPluralSuffix: true,\n keySeparator: '.',\n nsSeparator: ':',\n pluralSeparator: '_',\n contextSeparator: '_',\n partialBundledLanguages: false,\n saveMissing: false,\n updateMissing: false,\n saveMissingTo: 'fallback',\n saveMissingPlurals: true,\n missingKeyHandler: false,\n missingInterpolationHandler: false,\n postProcess: false,\n postProcessPassResolved: false,\n returnNull: true,\n returnEmptyString: true,\n returnObjects: false,\n joinArrays: false,\n returnedObjectHandler: false,\n parseMissingKeyHandler: false,\n appendNamespaceToMissingKey: false,\n appendNamespaceToCIMode: false,\n overloadTranslationOptionHandler: function handle(args) {\n var ret = {};\n if (_typeof(args[1]) === 'object') ret = args[1];\n if (typeof args[1] === 'string') ret.defaultValue = args[1];\n if (typeof args[2] === 'string') ret.tDescription = args[2];\n\n if (_typeof(args[2]) === 'object' || _typeof(args[3]) === 'object') {\n var options = args[3] || args[2];\n Object.keys(options).forEach(function (key) {\n ret[key] = options[key];\n });\n }\n\n return ret;\n },\n interpolation: {\n escapeValue: true,\n format: function format(value, _format, lng, options) {\n return value;\n },\n prefix: '{{',\n suffix: '}}',\n formatSeparator: ',',\n unescapePrefix: '-',\n nestingPrefix: '$t(',\n nestingSuffix: ')',\n nestingOptionsSeparator: ',',\n maxReplaces: 1000,\n skipOnVariables: true\n }\n };\n}\nfunction transformOptions(options) {\n if (typeof options.ns === 'string') options.ns = [options.ns];\n if (typeof options.fallbackLng === 'string') options.fallbackLng = [options.fallbackLng];\n if (typeof options.fallbackNS === 'string') options.fallbackNS = [options.fallbackNS];\n\n if (options.supportedLngs && options.supportedLngs.indexOf('cimode') < 0) {\n options.supportedLngs = options.supportedLngs.concat(['cimode']);\n }\n\n return options;\n}\n\nfunction ownKeys$6(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; }\n\nfunction _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$6(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper$3(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$3(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$3() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction noop() {}\n\nfunction bindMemberFunctions(inst) {\n var mems = Object.getOwnPropertyNames(Object.getPrototypeOf(inst));\n mems.forEach(function (mem) {\n if (typeof inst[mem] === 'function') {\n inst[mem] = inst[mem].bind(inst);\n }\n });\n}\n\nvar I18n = function (_EventEmitter) {\n _inherits(I18n, _EventEmitter);\n\n var _super = _createSuper$3(I18n);\n\n function I18n() {\n var _this;\n\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n\n _classCallCheck(this, I18n);\n\n _this = _super.call(this);\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n _this.options = transformOptions(options);\n _this.services = {};\n _this.logger = baseLogger;\n _this.modules = {\n external: []\n };\n bindMemberFunctions(_assertThisInitialized(_this));\n\n if (callback && !_this.isInitialized && !options.isClone) {\n if (!_this.options.initImmediate) {\n _this.init(options, callback);\n\n return _possibleConstructorReturn(_this, _assertThisInitialized(_this));\n }\n\n setTimeout(function () {\n _this.init(options, callback);\n }, 0);\n }\n\n return _this;\n }\n\n _createClass(I18n, [{\n key: \"init\",\n value: function init() {\n var _this2 = this;\n\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n\n if (!options.defaultNS && options.ns) {\n if (typeof options.ns === 'string') {\n options.defaultNS = options.ns;\n } else if (options.ns.indexOf('translation') < 0) {\n options.defaultNS = options.ns[0];\n }\n }\n\n var defOpts = get();\n this.options = _objectSpread$6(_objectSpread$6(_objectSpread$6({}, defOpts), this.options), transformOptions(options));\n\n if (this.options.compatibilityAPI !== 'v1') {\n this.options.interpolation = _objectSpread$6(_objectSpread$6({}, defOpts.interpolation), this.options.interpolation);\n }\n\n if (options.keySeparator !== undefined) {\n this.options.userDefinedKeySeparator = options.keySeparator;\n }\n\n if (options.nsSeparator !== undefined) {\n this.options.userDefinedNsSeparator = options.nsSeparator;\n }\n\n function createClassOnDemand(ClassOrObject) {\n if (!ClassOrObject) return null;\n if (typeof ClassOrObject === 'function') return new ClassOrObject();\n return ClassOrObject;\n }\n\n if (!this.options.isClone) {\n if (this.modules.logger) {\n baseLogger.init(createClassOnDemand(this.modules.logger), this.options);\n } else {\n baseLogger.init(null, this.options);\n }\n\n var formatter;\n\n if (this.modules.formatter) {\n formatter = this.modules.formatter;\n } else if (typeof Intl !== 'undefined') {\n formatter = Formatter;\n }\n\n var lu = new LanguageUtil(this.options);\n this.store = new ResourceStore(this.options.resources, this.options);\n var s = this.services;\n s.logger = baseLogger;\n s.resourceStore = this.store;\n s.languageUtils = lu;\n s.pluralResolver = new PluralResolver(lu, {\n prepend: this.options.pluralSeparator,\n compatibilityJSON: this.options.compatibilityJSON,\n simplifyPluralSuffix: this.options.simplifyPluralSuffix\n });\n\n if (formatter && (!this.options.interpolation.format || this.options.interpolation.format === defOpts.interpolation.format)) {\n s.formatter = createClassOnDemand(formatter);\n s.formatter.init(s, this.options);\n this.options.interpolation.format = s.formatter.format.bind(s.formatter);\n }\n\n s.interpolator = new Interpolator(this.options);\n s.utils = {\n hasLoadedNamespace: this.hasLoadedNamespace.bind(this)\n };\n s.backendConnector = new Connector(createClassOnDemand(this.modules.backend), s.resourceStore, s, this.options);\n s.backendConnector.on('*', function (event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n _this2.emit.apply(_this2, [event].concat(args));\n });\n\n if (this.modules.languageDetector) {\n s.languageDetector = createClassOnDemand(this.modules.languageDetector);\n s.languageDetector.init(s, this.options.detection, this.options);\n }\n\n if (this.modules.i18nFormat) {\n s.i18nFormat = createClassOnDemand(this.modules.i18nFormat);\n if (s.i18nFormat.init) s.i18nFormat.init(this);\n }\n\n this.translator = new Translator(this.services, this.options);\n this.translator.on('*', function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n _this2.emit.apply(_this2, [event].concat(args));\n });\n this.modules.external.forEach(function (m) {\n if (m.init) m.init(_this2);\n });\n }\n\n this.format = this.options.interpolation.format;\n if (!callback) callback = noop;\n\n if (this.options.fallbackLng && !this.services.languageDetector && !this.options.lng) {\n var codes = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n if (codes.length > 0 && codes[0] !== 'dev') this.options.lng = codes[0];\n }\n\n if (!this.services.languageDetector && !this.options.lng) {\n this.logger.warn('init: no languageDetector is used and no lng is defined');\n }\n\n var storeApi = ['getResource', 'hasResourceBundle', 'getResourceBundle', 'getDataByLanguage'];\n storeApi.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store;\n\n return (_this2$store = _this2.store)[fcName].apply(_this2$store, arguments);\n };\n });\n var storeApiChained = ['addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle'];\n storeApiChained.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store2;\n\n (_this2$store2 = _this2.store)[fcName].apply(_this2$store2, arguments);\n\n return _this2;\n };\n });\n var deferred = defer();\n\n var load = function load() {\n var finish = function finish(err, t) {\n if (_this2.isInitialized && !_this2.initializedStoreOnce) _this2.logger.warn('init: i18next is already initialized. You should call init just once!');\n _this2.isInitialized = true;\n if (!_this2.options.isClone) _this2.logger.log('initialized', _this2.options);\n\n _this2.emit('initialized', _this2.options);\n\n deferred.resolve(t);\n callback(err, t);\n };\n\n if (_this2.languages && _this2.options.compatibilityAPI !== 'v1' && !_this2.isInitialized) return finish(null, _this2.t.bind(_this2));\n\n _this2.changeLanguage(_this2.options.lng, finish);\n };\n\n if (this.options.resources || !this.options.initImmediate) {\n load();\n } else {\n setTimeout(load, 0);\n }\n\n return deferred;\n }\n }, {\n key: \"loadResources\",\n value: function loadResources(language) {\n var _this3 = this;\n\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var usedCallback = callback;\n var usedLng = typeof language === 'string' ? language : this.language;\n if (typeof language === 'function') usedCallback = language;\n\n if (!this.options.resources || this.options.partialBundledLanguages) {\n if (usedLng && usedLng.toLowerCase() === 'cimode') return usedCallback();\n var toLoad = [];\n\n var append = function append(lng) {\n if (!lng) return;\n\n var lngs = _this3.services.languageUtils.toResolveHierarchy(lng);\n\n lngs.forEach(function (l) {\n if (toLoad.indexOf(l) < 0) toLoad.push(l);\n });\n };\n\n if (!usedLng) {\n var fallbacks = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n fallbacks.forEach(function (l) {\n return append(l);\n });\n } else {\n append(usedLng);\n }\n\n if (this.options.preload) {\n this.options.preload.forEach(function (l) {\n return append(l);\n });\n }\n\n this.services.backendConnector.load(toLoad, this.options.ns, function (e) {\n if (!e && !_this3.resolvedLanguage && _this3.language) _this3.setResolvedLanguage(_this3.language);\n usedCallback(e);\n });\n } else {\n usedCallback(null);\n }\n }\n }, {\n key: \"reloadResources\",\n value: function reloadResources(lngs, ns, callback) {\n var deferred = defer();\n if (!lngs) lngs = this.languages;\n if (!ns) ns = this.options.ns;\n if (!callback) callback = noop;\n this.services.backendConnector.reload(lngs, ns, function (err) {\n deferred.resolve();\n callback(err);\n });\n return deferred;\n }\n }, {\n key: \"use\",\n value: function use(module) {\n if (!module) throw new Error('You are passing an undefined module! Please check the object you are passing to i18next.use()');\n if (!module.type) throw new Error('You are passing a wrong module! Please check the object you are passing to i18next.use()');\n\n if (module.type === 'backend') {\n this.modules.backend = module;\n }\n\n if (module.type === 'logger' || module.log && module.warn && module.error) {\n this.modules.logger = module;\n }\n\n if (module.type === 'languageDetector') {\n this.modules.languageDetector = module;\n }\n\n if (module.type === 'i18nFormat') {\n this.modules.i18nFormat = module;\n }\n\n if (module.type === 'postProcessor') {\n postProcessor.addPostProcessor(module);\n }\n\n if (module.type === 'formatter') {\n this.modules.formatter = module;\n }\n\n if (module.type === '3rdParty') {\n this.modules.external.push(module);\n }\n\n return this;\n }\n }, {\n key: \"setResolvedLanguage\",\n value: function setResolvedLanguage(l) {\n if (!l || !this.languages) return;\n if (['cimode', 'dev'].indexOf(l) > -1) return;\n\n for (var li = 0; li < this.languages.length; li++) {\n var lngInLngs = this.languages[li];\n if (['cimode', 'dev'].indexOf(lngInLngs) > -1) continue;\n\n if (this.store.hasLanguageSomeTranslations(lngInLngs)) {\n this.resolvedLanguage = lngInLngs;\n break;\n }\n }\n }\n }, {\n key: \"changeLanguage\",\n value: function changeLanguage(lng, callback) {\n var _this4 = this;\n\n this.isLanguageChangingTo = lng;\n var deferred = defer();\n this.emit('languageChanging', lng);\n\n var setLngProps = function setLngProps(l) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n _this4.resolvedLanguage = undefined;\n\n _this4.setResolvedLanguage(l);\n };\n\n var done = function done(err, l) {\n if (l) {\n setLngProps(l);\n\n _this4.translator.changeLanguage(l);\n\n _this4.isLanguageChangingTo = undefined;\n\n _this4.emit('languageChanged', l);\n\n _this4.logger.log('languageChanged', l);\n } else {\n _this4.isLanguageChangingTo = undefined;\n }\n\n deferred.resolve(function () {\n return _this4.t.apply(_this4, arguments);\n });\n if (callback) callback(err, function () {\n return _this4.t.apply(_this4, arguments);\n });\n };\n\n var setLng = function setLng(lngs) {\n if (!lng && !lngs && _this4.services.languageDetector) lngs = [];\n var l = typeof lngs === 'string' ? lngs : _this4.services.languageUtils.getBestMatchFromCodes(lngs);\n\n if (l) {\n if (!_this4.language) {\n setLngProps(l);\n }\n\n if (!_this4.translator.language) _this4.translator.changeLanguage(l);\n if (_this4.services.languageDetector) _this4.services.languageDetector.cacheUserLanguage(l);\n }\n\n _this4.loadResources(l, function (err) {\n done(err, l);\n });\n };\n\n if (!lng && this.services.languageDetector && !this.services.languageDetector.async) {\n setLng(this.services.languageDetector.detect());\n } else if (!lng && this.services.languageDetector && this.services.languageDetector.async) {\n this.services.languageDetector.detect(setLng);\n } else {\n setLng(lng);\n }\n\n return deferred;\n }\n }, {\n key: \"getFixedT\",\n value: function getFixedT(lng, ns, keyPrefix) {\n var _this5 = this;\n\n var fixedT = function fixedT(key, opts) {\n var options;\n\n if (_typeof(opts) !== 'object') {\n for (var _len3 = arguments.length, rest = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n rest[_key3 - 2] = arguments[_key3];\n }\n\n options = _this5.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n } else {\n options = _objectSpread$6({}, opts);\n }\n\n options.lng = options.lng || fixedT.lng;\n options.lngs = options.lngs || fixedT.lngs;\n options.ns = options.ns || fixedT.ns;\n var keySeparator = _this5.options.keySeparator || '.';\n var resultKey = keyPrefix ? \"\".concat(keyPrefix).concat(keySeparator).concat(key) : key;\n return _this5.t(resultKey, options);\n };\n\n if (typeof lng === 'string') {\n fixedT.lng = lng;\n } else {\n fixedT.lngs = lng;\n }\n\n fixedT.ns = ns;\n fixedT.keyPrefix = keyPrefix;\n return fixedT;\n }\n }, {\n key: \"t\",\n value: function t() {\n var _this$translator;\n\n return this.translator && (_this$translator = this.translator).translate.apply(_this$translator, arguments);\n }\n }, {\n key: \"exists\",\n value: function exists() {\n var _this$translator2;\n\n return this.translator && (_this$translator2 = this.translator).exists.apply(_this$translator2, arguments);\n }\n }, {\n key: \"setDefaultNamespace\",\n value: function setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n }\n }, {\n key: \"hasLoadedNamespace\",\n value: function hasLoadedNamespace(ns) {\n var _this6 = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (!this.isInitialized) {\n this.logger.warn('hasLoadedNamespace: i18next was not initialized', this.languages);\n return false;\n }\n\n if (!this.languages || !this.languages.length) {\n this.logger.warn('hasLoadedNamespace: i18n.languages were undefined or empty', this.languages);\n return false;\n }\n\n var lng = this.resolvedLanguage || this.languages[0];\n var fallbackLng = this.options ? this.options.fallbackLng : false;\n var lastLng = this.languages[this.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = _this6.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n\n return loadState === -1 || loadState === 2;\n };\n\n if (options.precheck) {\n var preResult = options.precheck(this, loadNotPending);\n if (preResult !== undefined) return preResult;\n }\n\n if (this.hasResourceBundle(lng, ns)) return true;\n if (!this.services.backendConnector.backend || this.options.resources && !this.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n }\n }, {\n key: \"loadNamespaces\",\n value: function loadNamespaces(ns, callback) {\n var _this7 = this;\n\n var deferred = defer();\n\n if (!this.options.ns) {\n callback && callback();\n return Promise.resolve();\n }\n\n if (typeof ns === 'string') ns = [ns];\n ns.forEach(function (n) {\n if (_this7.options.ns.indexOf(n) < 0) _this7.options.ns.push(n);\n });\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"loadLanguages\",\n value: function loadLanguages(lngs, callback) {\n var deferred = defer();\n if (typeof lngs === 'string') lngs = [lngs];\n var preloaded = this.options.preload || [];\n var newLngs = lngs.filter(function (lng) {\n return preloaded.indexOf(lng) < 0;\n });\n\n if (!newLngs.length) {\n if (callback) callback();\n return Promise.resolve();\n }\n\n this.options.preload = preloaded.concat(newLngs);\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"dir\",\n value: function dir(lng) {\n if (!lng) lng = this.resolvedLanguage || (this.languages && this.languages.length > 0 ? this.languages[0] : this.language);\n if (!lng) return 'rtl';\n var rtlLngs = ['ar', 'shu', 'sqr', 'ssh', 'xaa', 'yhd', 'yud', 'aao', 'abh', 'abv', 'acm', 'acq', 'acw', 'acx', 'acy', 'adf', 'ads', 'aeb', 'aec', 'afb', 'ajp', 'apc', 'apd', 'arb', 'arq', 'ars', 'ary', 'arz', 'auz', 'avl', 'ayh', 'ayl', 'ayn', 'ayp', 'bbz', 'pga', 'he', 'iw', 'ps', 'pbt', 'pbu', 'pst', 'prp', 'prd', 'ug', 'ur', 'ydd', 'yds', 'yih', 'ji', 'yi', 'hbo', 'men', 'xmn', 'fa', 'jpr', 'peo', 'pes', 'prs', 'dv', 'sam', 'ckb'];\n return rtlLngs.indexOf(this.services.languageUtils.getLanguagePartFromCode(lng)) > -1 || lng.toLowerCase().indexOf('-arab') > 1 ? 'rtl' : 'ltr';\n }\n }, {\n key: \"cloneInstance\",\n value: function cloneInstance() {\n var _this8 = this;\n\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n\n var mergedOptions = _objectSpread$6(_objectSpread$6(_objectSpread$6({}, this.options), options), {\n isClone: true\n });\n\n var clone = new I18n(mergedOptions);\n var membersToCopy = ['store', 'services', 'language'];\n membersToCopy.forEach(function (m) {\n clone[m] = _this8[m];\n });\n clone.services = _objectSpread$6({}, this.services);\n clone.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n clone.translator = new Translator(clone.services, clone.options);\n clone.translator.on('*', function (event) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n\n clone.emit.apply(clone, [event].concat(args));\n });\n clone.init(mergedOptions, callback);\n clone.translator.options = clone.options;\n clone.translator.backendConnector.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n return clone;\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return {\n options: this.options,\n store: this.store,\n language: this.language,\n languages: this.languages,\n resolvedLanguage: this.resolvedLanguage\n };\n }\n }]);\n\n return I18n;\n}(EventEmitter);\n\n_defineProperty(I18n, \"createInstance\", function () {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n return new I18n(options, callback);\n});\n\nvar instance = I18n.createInstance();\ninstance.createInstance = I18n.createInstance;\n\nvar createInstance = instance.createInstance;\nvar init = instance.init;\nvar loadResources = instance.loadResources;\nvar reloadResources = instance.reloadResources;\nvar use = instance.use;\nvar changeLanguage = instance.changeLanguage;\nvar getFixedT = instance.getFixedT;\nvar t = instance.t;\nvar exists = instance.exists;\nvar setDefaultNamespace = instance.setDefaultNamespace;\nvar hasLoadedNamespace = instance.hasLoadedNamespace;\nvar loadNamespaces = instance.loadNamespaces;\nvar loadLanguages = instance.loadLanguages;\n\nexport default instance;\nexport { changeLanguage, createInstance, exists, getFixedT, hasLoadedNamespace, init, loadLanguages, loadNamespaces, loadResources, reloadResources, setDefaultNamespace, t, use };\n","import i18n from \"i18next\";\nimport { initReactI18next } from \"react-i18next\";\n\nimport { en } from \"../translations\";\n\ni18n.use(initReactI18next).init({\n resources: {\n en: { translation: en },\n },\n fallbackLng: \"en\",\n detection: { order: [\"navigator\"] },\n});\n\nexport default i18n;\n","import { Toastr } from \"@bigbinary/neetoui\";\nimport { QueryClient, QueryCache } from \"react-query\";\n\nconst queryClient = new QueryClient({\n queryCache: new QueryCache({\n onError: error => Toastr.error(error),\n }),\n});\n\nexport default queryClient;\n","import React from \"react\";\n\nimport { Tag } from \"@bigbinary/neetoui\";\nimport * as yup from \"yup\";\n\nexport const DEFAULT_PAGE_INDEX = 1;\nexport const DEFAULT_PAGE_SIZE = 10;\n\nexport const COMMON_COLUMNS = [\n {\n title: \"Name\",\n dataIndex: \"name\",\n key: \"name\",\n render: name => <Tag label={name} color=\"blue\" />,\n width: \"30%\",\n },\n {\n title: \"Description\",\n dataIndex: \"description\",\n key: \"description\",\n render: description => description || \"--\",\n width: \"40%\",\n },\n];\n\nexport const TAG_SCHEMA = yup.object({\n name: yup\n .string()\n .typeError(\"Name must be a string.\")\n .required(\"Name is a required field.\")\n .max(50, \"Name should not exceed 50 characters.\"),\n description: yup\n .string()\n .typeError(\"Description must be a string.\")\n .nullable()\n .max(255, \"Description should not exceed 255 characters.\"),\n});\n\nexport const PANE_TYPES = {\n CREATE: \"CREATE_TAG\",\n EDIT: \"EDIT_TAG\",\n};\n\nexport const INITIAL_TAG_VALUES = {\n name: \"\",\n description: \"\",\n};\n","import axios from \"axios\";\n\nconst fetch = (url, term, limit, page_no) =>\n axios.get(url, {\n params: {\n term,\n limit,\n page_no,\n },\n });\n\nconst create = (url, payload) => axios.post(url, payload);\n\nconst update = (url, id, payload) => axios.put(`${url}/${id}`, payload);\n\nconst destroy = (url, id) => axios.delete(`${url}/${id}`);\n\nconst tagsApi = {\n fetch,\n create,\n update,\n destroy,\n};\n\nexport default tagsApi;\n","import { useMutation, useQuery } from \"react-query\";\n\nimport tagsApi from \"../apis/tags\";\nimport queryClient from \"../common/queryClient\";\n\nconst TAG_KEY = \"tag-key\";\nconst STALE_TIME = 3_200_000;\n\nconst useFetchTags = (url, searchTerm, limit, pageIndex) =>\n useQuery(\n [TAG_KEY, url, searchTerm, limit, pageIndex],\n async () => await tagsApi.fetch(url, searchTerm, limit, pageIndex),\n {\n staleTime: STALE_TIME,\n keepPreviousData: true,\n }\n );\n\nconst useCreateTag = () =>\n useMutation(({ url, payload }) => tagsApi.create(url, payload), {\n onSuccess: () => {\n queryClient.invalidateQueries([TAG_KEY]);\n },\n });\n\nconst useUpdateTag = () =>\n useMutation(({ url, id, payload }) => tagsApi.update(url, id, payload), {\n onSuccess: () => {\n queryClient.invalidateQueries([TAG_KEY]);\n },\n });\n\nconst useDeleteTag = () =>\n useMutation(({ url, id }) => tagsApi.destroy(url, id), {\n onSuccess: () => {\n queryClient.invalidateQueries([TAG_KEY]);\n },\n });\n\nexport { useFetchTags, useCreateTag, useUpdateTag, useDeleteTag };\n","import React from \"react\";\n\nimport { Pane, Typography } from \"@bigbinary/neetoui\";\nimport { Input, Textarea, ActionBlock } from \"@bigbinary/neetoui/formik\";\nimport { Form, Formik } from \"formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n PANE_TYPES,\n INITIAL_TAG_VALUES,\n TAG_SCHEMA,\n} from \"../common/constants\";\nimport useTagsForm from \"../hooks/useTagsForm\";\n\nconst ManageTags = ({ tag, type, onClose, tagType, goToFirstPage }) => {\n const isEdit = type === PANE_TYPES.EDIT;\n const initValues = isEdit ? tag : INITIAL_TAG_VALUES;\n const { t } = useTranslation();\n\n const { handleSubmit } = useTagsForm({\n isEdit,\n tagType,\n onClose,\n goToFirstPage,\n });\n\n return (\n <Pane isOpen={!!type} onClose={onClose}>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {isEdit\n ? t(\"editItem\", { what: t(\"tag\") })\n : t(\"addNew\", { what: t(\"tag\") })}\n </Typography>\n </Pane.Header>\n {\n <Formik\n initialValues={initValues}\n validateOnBlur={false}\n validateOnChange={false}\n onSubmit={handleSubmit}\n validationSchema={TAG_SCHEMA}\n >\n {({ isSubmitting }) => (\n <>\n <Pane.Body>\n <Form className=\"flex w-full flex-col space-y-4\" noValidate>\n <Input\n required\n autoFocus\n name=\"name\"\n label={`${t(\"tag\")} ${t(\"name\")}`}\n data-cy=\"tag-name-text-field\"\n maxLength={50}\n />\n <Textarea\n name=\"description\"\n label={t(\"description\")}\n rows={3}\n data-cy=\"tag-description-text-area\"\n maxLength={255}\n />\n </Form>\n </Pane.Body>\n <Pane.Footer className=\"flex items-center space-x-2\">\n <ActionBlock\n className=\"flex items-center space-x-2\"\n cancelButtonProps={{ onClick: onClose }}\n submitButtonProps={{ loading: isSubmitting }}\n />\n </Pane.Footer>\n </>\n )}\n </Formik>\n }\n </Pane>\n );\n};\n\nexport default ManageTags;\n","import { Toastr } from \"@bigbinary/neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateTag, useUpdateTag } from \"./useTagsApi\";\n\nconst useTagsForm = ({ isEdit, tagType, onClose, goToFirstPage }) => {\n const tagModification = isEdit ? useUpdateTag : useCreateTag;\n const { mutate, isLoading: isSubmitting } = tagModification();\n const { t } = useTranslation();\n\n const handleSubmit = (values, { resetForm }) => {\n values.description = values?.description?.trim();\n const tagData = { payload: { tag: values } };\n tagData.url = tagType.url;\n if (isEdit) {\n tagData.id = values.id;\n }\n mutate(tagData, {\n onSuccess: () => {\n !isEdit && goToFirstPage();\n onClose();\n Toastr.success(isEdit ? t(\"updateSuccess\") : t(\"createSuccess\"));\n },\n onError: ({ errors }) => {\n resetForm();\n Toastr.error(errors?.join(\", \"));\n },\n });\n };\n\n return { handleSubmit, isSubmitting };\n};\n\nexport default useTagsForm;\n","import React from \"react\";\n\nimport { MenuBar } from \"@bigbinary/neetoui/layouts\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Menu = ({ tagTypes, showMenu, tagType, setTagType }) => {\n const { t } = useTranslation();\n\n return (\n <MenuBar showMenu={showMenu} title={t(\"title\")}>\n {Object.values(tagTypes).map(tag => (\n <MenuBar.Item\n key={tag.id}\n label={tag.label}\n description={tag.description}\n active={tagType.id === tag.id}\n onClick={() => {\n setTagType(tag);\n }}\n />\n ))}\n </MenuBar>\n );\n};\n\nexport default Menu;\n","import React from \"react\";\n\nimport { MenuHorizontal } from \"@bigbinary/neeto-icons\";\nimport { Dropdown, Button } from \"@bigbinary/neetoui\";\n\nexport const renderColumnData = (columns, handleEdit, handleDelete) => [\n ...columns,\n {\n id: \"actions\",\n width: \"10%\",\n render: (_, tag) => (\n <Dropdown\n icon={MenuHorizontal}\n buttonProps={{\n style: \"text\",\n }}\n position=\"bottom-end\"\n autoWidth\n strategy=\"fixed\"\n >\n <li className=\"neeto-tag-dropdown__item\">\n <Button\n onClick={() => handleEdit(tag)}\n label=\"Edit\"\n style=\"text\"\n className=\"neeto-tag-dropdown__button\"\n />\n </li>\n <li className=\"neeto-tag-dropdown__item\">\n <Button\n label=\"Delete\"\n onClick={() => handleDelete(tag)}\n style=\"danger-text\"\n className=\"neeto-tag-dropdown__button\"\n data-cy=\"tags-delete-button\"\n />\n </li>\n </Dropdown>\n ),\n },\n];\n","import { useState, useEffect } from \"react\";\n\nimport { Toastr } from \"@bigbinary/neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useDebounce from \"./useDebounce\";\nimport { useDeleteTag, useFetchTags } from \"./useTagsApi\";\n\nimport { DEFAULT_PAGE_INDEX, PANE_TYPES } from \"../common/constants\";\n\nconst useTags = ({ tagTypes }) => {\n const [tagType, setTagType] = useState(tagTypes[0]);\n const [tags, setTags] = useState([]);\n const [tagsCount, setTagsCount] = useState(0);\n const [selectedTag, setSelectedTag] = useState(null);\n const [searchTerm, setSearchTerm] = useState(\"\");\n const [pageIndex, setPageIndex] = useState(DEFAULT_PAGE_INDEX);\n const [isMenuOpen, setIsMenuOpen] = useState(true);\n const [paneType, setPaneType] = useState(null);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const debouncedSearchTerm = useDebounce(searchTerm, 500);\n const { t } = useTranslation();\n\n const { data, isSuccess, isPreviousdata, isLoading } = useFetchTags(\n tagType.url,\n debouncedSearchTerm,\n 10,\n pageIndex\n );\n\n const goToFirstPage = () => {\n if (pageIndex !== DEFAULT_PAGE_INDEX) {\n setPageIndex(DEFAULT_PAGE_INDEX);\n }\n };\n\n const handleEdit = tag => {\n setSelectedTag(tag);\n setPaneType(PANE_TYPES.EDIT);\n };\n\n const handleDelete = tag => {\n setSelectedTag(tag);\n setIsDeleteAlertOpen(true);\n };\n\n const handleAlertClose = () => {\n setIsDeleteAlertOpen(false);\n setSelectedTag(null);\n };\n\n const { mutate, isLoading: isDeleting } = useDeleteTag();\n\n const handleConfirmDelete = () => {\n const payload = { url: tagType.url, id: selectedTag?.id };\n mutate(payload, {\n onSuccess: () => {\n setIsDeleteAlertOpen(false);\n if (tags.length === 1) {\n setPageIndex(pageIndex => pageIndex - 1);\n }\n Toastr.success(t(\"deleteSuccess\"));\n },\n onError: ({ errors }) => {\n Toastr.error(errors?.join(\", \"));\n },\n });\n };\n\n useEffect(() => {\n if (!isSuccess) return;\n const { tags, total_count } = data;\n setTagsCount(total_count);\n setTags(tags);\n }, [isSuccess, data]);\n\n useEffect(() => {\n setSelectedTag(null);\n setPageIndex(DEFAULT_PAGE_INDEX);\n }, [tagType]);\n\n return {\n tags,\n tagsCount,\n tagType,\n isLoading,\n isPreviousdata,\n setTagType,\n selectedTag,\n setSelectedTag,\n searchTerm,\n setSearchTerm,\n pageIndex,\n setPageIndex,\n goToFirstPage,\n handleEdit,\n handleDelete,\n handleAlertClose,\n isMenuOpen,\n setIsMenuOpen,\n paneType,\n setPaneType,\n isDeleteAlertOpen,\n handleConfirmDelete,\n isDeleting,\n };\n};\n\nexport default useTags;\n","import { useEffect, useState } from \"react\";\n\nfunction useDebounce(value, delay) {\n const [debouncedValue, setDebouncedValue] = useState(value);\n\n useEffect(() => {\n const timer = setTimeout(() => setDebouncedValue(value), delay || 500);\n\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n\n return debouncedValue;\n}\n\nexport default useDebounce;\n","import React from \"react\";\n\nimport { Plus } from \"@bigbinary/neeto-icons\";\nimport {\n Alert,\n Button,\n PageLoader,\n Typography,\n Table,\n} from \"@bigbinary/neetoui\";\nimport { Container, Header, SubHeader } from \"@bigbinary/neetoui/layouts\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ManageTags from \"./ManageTags\";\nimport Menu from \"./Menu\";\nimport { renderColumnData } from \"./util\";\n\nimport {\n COMMON_COLUMNS,\n DEFAULT_PAGE_SIZE,\n PANE_TYPES,\n} from \"../common/constants\";\nimport useTags from \"../hooks/useTags\";\n\nconst Tags = ({ tagTypes, breadcrumbs, displayMenu }) => {\n const {\n tagType,\n setTagType,\n tags,\n tagsCount,\n isLoading,\n selectedTag,\n setSelectedTag,\n searchTerm,\n setSearchTerm,\n pageIndex,\n setPageIndex,\n goToFirstPage,\n handleEdit,\n handleDelete,\n handleAlertClose,\n isMenuOpen,\n setIsMenuOpen,\n paneType,\n setPaneType,\n isDeleteAlertOpen,\n handleConfirmDelete,\n } = useTags({ tagTypes });\n const { t } = useTranslation();\n\n const handleMenuToggle = () => setIsMenuOpen(isMenuOpen => !isMenuOpen);\n\n return (\n <>\n <div className=\"neeto-tag-wrapper\">\n {displayMenu && (\n <Menu\n tagTypes={tagTypes}\n showMenu={isMenuOpen}\n tagType={tagType}\n setTagType={setTagType}\n />\n )}\n <Container>\n <Header\n title={`${tagType.label} ${t(\"title\")}`}\n menuBarToggle={displayMenu ? handleMenuToggle : null}\n searchProps={{\n value: searchTerm,\n onChange: ({ target: { value } }) => {\n value.trim() && goToFirstPage();\n setSearchTerm(value);\n },\n placeholder: t(\"search\", {\n where: t(\"title\"),\n }),\n }}\n actionBlock={\n <Button\n icon={Plus}\n size=\"large\"\n label={t(\"addNew\", { what: t(\"tag\") })}\n onClick={() => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n }}\n data-cy=\"add-new-tag-button\"\n />\n }\n breadcrumbs={breadcrumbs}\n />\n {isLoading ? (\n <PageLoader />\n ) : (\n <div className=\"w-full flex-grow\">\n <SubHeader\n leftActionBlock={\n <Typography\n component=\"h4\"\n className=\"neeto-ui-gray-800 font-semibold\"\n >\n {`${tagsCount} ${tagType.label} Tag(s)`}\n </Typography>\n }\n />\n <div className=\"neeto-tags--table__wrapper\">\n <Table\n fixedHeight\n rowData={tags}\n columnData={renderColumnData(\n tagType.columns\n ? [...COMMON_COLUMNS, ...tagType.columns]\n : COMMON_COLUMNS,\n handleEdit,\n handleDelete\n )}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n currentPageNumber={pageIndex}\n handlePageChange={setPageIndex}\n totalCount={tagsCount}\n allowRowClick={false}\n rowSelection={false}\n paginationProps={{ showSizeChanger: false }}\n scroll={{ x: \"100%\" }}\n />\n </div>\n </div>\n )}\n </Container>\n </div>\n <ManageTags\n type={paneType}\n tagType={tagType}\n tag={selectedTag}\n onClose={() => setPaneType(null)}\n goToFirstPage={goToFirstPage}\n />\n <Alert\n isOpen={isDeleteAlertOpen}\n title={`${t(\"delete\")} ${selectedTag?.name}`}\n message={\n <>\n {t(\"deleteItem\", { type: t(\"tag\") })}{\" \"}\n <strong>{selectedTag?.name}</strong>? {t(\"cannotBeUndone\")}\n </>\n }\n onSubmit={handleConfirmDelete}\n onClose={handleAlertClose}\n submitButtonLabel={t(\"proceed\")}\n cancelButtonLabel={t(\"cancel\")}\n />\n </>\n );\n};\n\nexport default Tags;\n","import React, { useEffect, useState } from \"react\";\n\nimport { PageLoader } from \"@bigbinary/neetoui\";\nimport { QueryClientProvider } from \"react-query\";\n\nimport { registerIntercepts, setAuthHeaders } from \"./apis/axios\";\nimport \"./common/i18n\";\nimport queryClient from \"./common/queryClient\";\nimport Tags from \"./components\";\nimport \"./stylesheets/main.scss\";\n\nconst App = ({ tagTypes, breadcrumbs, displayMenu = true }) => {\n const [loading, setLoading] = useState(true);\n\n useEffect(() => {\n setAuthHeaders(setLoading);\n registerIntercepts();\n }, []);\n\n if (loading) {\n return <PageLoader />;\n }\n\n return (\n <QueryClientProvider client={queryClient}>\n <Tags\n tagTypes={tagTypes}\n breadcrumbs={breadcrumbs}\n displayMenu={displayMenu}\n />\n </QueryClientProvider>\n );\n};\n\nexport default App;\n"],"names":["axios","defaults","baseURL","handleSuccessResponse","response","success","status","data","handleErrorResponse","error","_error$response","_error$response2","headers","setTimeout","window","location","href","message","Error","handleNetworkError","Promise","reject","_typeof","obj","Symbol","iterator","constructor","prototype","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_createClass","protoProps","staticProps","_assertThisInitialized","self","ReferenceError","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_inherits","subClass","superClass","create","value","_possibleConstructorReturn","call","assertThisInitialized","_getPrototypeOf","getPrototypeOf","_defineProperty","_arrayLikeToArray","arr","len","arr2","Array","_toArray","isArray","arrayWithHoles","iter","from","iterableToArray","minLen","arrayLikeToArray","n","toString","slice","name","test","unsupportedIterableToArray","nonIterableRest","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","apply","_objectSpread","arguments","source","forEach","getOwnPropertyDescriptors","defineProperties","consoleLogger","type","log","args","this","output","warn","console","baseLogger","Logger","concreteLogger","options","undefined","init","prefix","logger","debug","bool","_len","_key","forward","_len2","_key2","_len3","_key3","_len4","_key4","lvl","debugOnly","concat","moduleName","EventEmitter","observers","events","listener","_this","split","event","l","cloned","observer","_cloned","defer","res","rej","promise","resolve","makeString","copy","a","s","t","m","getLastOfPath","path","Empty","cleanKey","indexOf","replace","canNotTraverseDeeper","stack","shift","hasOwnProperty","k","setPath","newValue","_getLastOfPath","getPath","_getLastOfPath3","getPathWithDefaults","defaultData","deepExtend","overwrite","prop","String","regexEscape","str","_entityMap","escape","isIE10","navigator","userAgent","chars","ownKeys$1","_objectSpread$1","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","e","_isNativeReflectConstruct","result","Super","NewTarget","deepFind","keySeparator","paths","current","j","join","mix","endsWith","joinedPath","ResourceStore","_EventEmitter","_super","ns","defaultNS","ignoreJSONStructure","index","splice","lng","silent","addNamespaces","emit","resources","addResource","deep","pack","hasResourceBundle","removeNamespaces","getResource","compatibilityAPI","getDataByLanguage","find","v","postProcessor","processors","addPostProcessor","module","handle","translator","processor","process","ownKeys$2","_objectSpread$2","_createSuper$1","_isNativeReflectConstruct$1","checkedLoadedFor","Translator","services","language","interpolation","resolved","nsSeparator","namespaces","wouldCheckForNsInKey","seemsNaturalLanguage","userDefinedKeySeparator","userDefinedNsSeparator","possibleChars","c","r","RegExp","map","matched","ki","substring","looksLikeObjectPath","match","interpolator","nestingRegexp","parts","lastKey","_this2","overloadTranslationOptionHandler","returnDetails","_this$extractFromKey","extractFromKey","namespace","appendNamespaceToCIMode","toLowerCase","resUsedKey","usedKey","resExactUsedKey","exactUsedKey","resType","noObject","joinArrays","handleAsObjectInI18nFormat","i18nFormat","handleAsObject","returnObjects","returnedObjectHandler","resTypeIsArray","newKeyToUse","deepKey","translate","extendTranslation","usedDefault","needsPluralHandling","count","hasDefaultValue","defaultValueSuffix","pluralResolver","getSuffix","defaultValue","isValidLookup","missingKeyNoValueFallbackToKey","resForMissing","updateMissing","fk","lngs","fallbackLngs","languageUtils","getFallbackCodes","fallbackLng","saveMissingTo","toResolveHierarchy","send","specificDefaultValue","defaultForMissing","missingKeyHandler","backendConnector","saveMissing","saveMissingPlurals","getSuffixes","suffix","appendNamespaceToMissingKey","parseMissingKeyHandler","_this3","parse","defaultVariables","usedLng","usedNS","skipInterpolation","nestBef","skipOnVariables","nb","interpolate","na","nest","context","reset","postProcess","postProcessorNames","applyPostProcessor","postProcessPassResolved","i18nResolved","found","_this4","extracted","fallbackNS","needsZeroSuffixLookup","ordinal","shouldUseIntlApi","needsContextHandling","codes","utils","hasLoadedNamespace","code","possibleKey","finalKeys","addLookupKeys","pluralSuffix","zeroSuffix","contextKey","contextSeparator","pop","returnNull","returnEmptyString","resourceStore","option","capitalize","string","charAt","toUpperCase","LanguageUtil","supportedLngs","formatLanguageCode","specialCases","lowerCaseLng","part","cleanCode","load","nonExplicitSupportedLngs","getLanguagePartFromCode","cleanedLng","isSupportedCode","lngOnly","supportedLng","fallbacks","getScriptPartFromCode","fallbackCode","fallbackCodes","addCode","fc","sets","nr","_rulesPluralsTypes","Number","deprecatedJsonVersions","suffixesOrder","zero","one","two","few","many","other","createRules","rules","set","numbers","plurals","PluralResolver","compatibilityJSON","Intl","PluralRules","_unused","rule","getRule","resolvedOptions","pluralCategories","sort","pluralCategory1","pluralCategory2","pluralCategory","prepend","number","select","getSuffixRetroCompatible","idx","noAbs","Math","abs","simplifyPluralSuffix","returnSuffix","includes","ownKeys$3","_objectSpread$3","Interpolator","format","escapeValue","iOpts","useRawValueToEscape","prefixEscaped","suffixEscaped","formatSeparator","unescapePrefix","unescapeSuffix","nestingPrefix","nestingPrefixEscaped","nestingSuffix","nestingSuffixEscaped","nestingOptionsSeparator","maxReplaces","alwaysFormat","resetRegExp","regexpStr","regexp","regexpUnescapeStr","regexpUnescape","nestingRegexpStr","replaces","regexSafe","val","handleFormat","interpolationkey","trim","f","missingInterpolationHandler","regex","safeValue","todo","exec","matchedVar","temp","lastIndex","clonedOptions","handleHasOptions","inheritedOptions","sep","optionsString","JSON","formatters","doReduce","elem","reduce","ownKeys$4","_objectSpread$4","Formatter","formats","NumberFormat","currency","style","datetime","DateTimeFormat","relativetime","RelativeTimeFormat","range","list","ListFormat","_format","mem","_parseFormatStr","formatStr","formatName","formatOptions","optStr","opt","_opt$split2","isNaN","parseInt","parseFormatStr","formatted","valOptions","formatParams","locale","ownKeys$5","_objectSpread$5","_createSuper$2","_isNativeReflectConstruct$2","Connector","backend","store","state","queue","languages","callback","toLoad","pending","toLoadLanguages","toLoadNamespaces","hasAllNamespaces","reload","loaded","errors","err","addResourceBundle","q","_getLastOfPath2","what","remove","done","fcName","tried","wait","read","queueLoad","loadOne","prepareLoading","_this5","fallbackValue","isUpdate","get","initImmediate","preload","pluralSeparator","partialBundledLanguages","ret","tDescription","transformOptions","ownKeys$6","_objectSpread$6","_createSuper$3","_isNativeReflectConstruct$3","noop","bindMemberFunctions","inst","getOwnPropertyNames","I18n","modules","external","isInitialized","isClone","defOpts","createClassOnDemand","ClassOrObject","formatter","lu","on","languageDetector","detection","storeApi","_this2$store","storeApiChained","_this2$store2","deferred","finish","initializedStoreOnce","changeLanguage","usedCallback","append","resolvedLanguage","setResolvedLanguage","li","lngInLngs","hasLanguageSomeTranslations","isLanguageChangingTo","setLngProps","setLng","getBestMatchFromCodes","cacheUserLanguage","loadResources","async","detect","keyPrefix","fixedT","opts","rest","resultKey","_this$translator","_this$translator2","exists","_this6","lastLng","loadNotPending","loadState","precheck","preResult","_this7","preloaded","newLngs","_this8","mergedOptions","clone","membersToCopy","createInstance","reloadResources","use","getFixedT","setDefaultNamespace","loadNamespaces","loadLanguages","i18n","initReactI18next","en","translation","order","queryClient","QueryClient","queryCache","QueryCache","onError","Toastr","COMMON_COLUMNS","title","dataIndex","render","React","Tag","label","color","width","description","TAG_SCHEMA","yup","typeError","required","max","nullable","PANE_TYPES","INITIAL_TAG_VALUES","tagsApi","url","term","limit","page_no","params","payload","post","id","put","useCreateTag","useMutation","_ref2","onSuccess","invalidateQueries","useUpdateTag","_ref3","ManageTags","_ref","tag","onClose","tagType","goToFirstPage","isEdit","initValues","useTranslation","_useTagsForm","_tagModification","mutate","isSubmitting","isLoading","handleSubmit","values","_values$description","resetForm","tagData","useTagsForm","Pane","isOpen","Header","Typography","weight","Formik","initialValues","validateOnBlur","validateOnChange","onSubmit","validationSchema","createElement","Body","Form","className","noValidate","Input","autoFocus","maxLength","Textarea","rows","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps","loading","Menu","tagTypes","showMenu","setTagType","MenuBar","Item","active","renderColumnData","columns","handleEdit","handleDelete","_toConsumableArray","_","Dropdown","icon","MenuHorizontal","buttonProps","position","autoWidth","strategy","Button","useTags","_useState2","_slicedToArray","useState","_useState4","tags","setTags","_useState6","tagsCount","setTagsCount","_useState8","selectedTag","setSelectedTag","_useState10","searchTerm","setSearchTerm","_useState12","pageIndex","setPageIndex","_useState14","isMenuOpen","setIsMenuOpen","_useState16","paneType","setPaneType","_useState18","isDeleteAlertOpen","setIsDeleteAlertOpen","debouncedSearchTerm","delay","debouncedValue","setDebouncedValue","useEffect","timer","clearTimeout","useDebounce","useFetchTags","useQuery","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","abrupt","sent","stop","staleTime","keepPreviousData","isSuccess","isPreviousdata","_useDeleteTag","_ref4","isDeleting","total_count","handleAlertClose","handleConfirmDelete","Tags","breadcrumbs","displayMenu","_useTags","Fragment","Container","menuBarToggle","searchProps","onChange","placeholder","where","actionBlock","Plus","size","PageLoader","SubHeader","leftActionBlock","component","Table","fixedHeight","rowData","columnData","defaultPageSize","currentPageNumber","handlePageChange","totalCount","allowRowClick","rowSelection","paginationProps","showSizeChanger","scroll","x","Alert","submitButtonLabel","cancelButtonLabel","App","_ref$displayMenu","setLoading","_document$querySelect","Accept","document","querySelector","getAttribute","token","localStorage","getItem","email","setAuthHeaders","interceptors","QueryClientProvider","client"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-tags-frontend",
3
- "version": "0.0.15",
3
+ "version": "0.0.16",
4
4
  "description": "Manage tags across neeto products.",
5
5
  "author": "BigBinary",
6
6
  "license": "MIT",