vendor: 4,179 bytes, line 1
1import{i as e,n as t}from"./jsx-runtime-bzQ4Vb5N.js";import{t as n}from"./shim-CbnGNF0q.js";import{r,t as i}from"./i18nInstance-CZ6SuJbU.js";var a=e(t()),o=n(),s=(e,t,n,r)=>{let i=[n,{code:t,...r||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(i,`warn`,`react-i18next::`,!0);m(i[0])&&(i[0]=`react-i18next:: ${i[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...i):console?.warn&&console.warn(...i)},c={},l=(e,t,n,r)=>{m(n)&&c[n]||(m(n)&&(c[n]=new Date),s(e,t,n,r))},u=(e,t)=>()=>{if(e.isInitialized)t();else{let n=()=>{setTimeout(()=>{e.off(`initialized`,n)},0),t()};e.on(`initialized`,n)}},d=(e,t,n)=>{e.loadNamespaces(t,u(e,n))},f=(e,t,n,r)=>{if(m(n)&&(n=[n]),e.options.preload&&e.options.preload.indexOf(t)>-1)return d(e,n,r);n.forEach(t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)}),e.loadLanguages(t,u(e,r))},p=(e,t,n={})=>!t.languages||!t.languages.length?(l(t,`NO_LANGUAGES`,`i18n.languages were undefined or empty`,{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:n.lng,precheck:(t,r)=>{if(n.bindI18n&&n.bindI18n.indexOf(`languageChanging`)>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!r(t.isLanguageChangingTo,e))return!1}}),m=e=>typeof e==`string`,h=e=>typeof e==`object`&&!!e,g=(0,a.createContext)(),_=class{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}},v={t:(e,t)=>{if(m(t))return t;if(h(t)&&m(t.defaultValue))return t.defaultValue;if(typeof e==`function`)return``;if(Array.isArray(e)){let t=e[e.length-1];return typeof t==`function`?``:t}return e},ready:!1},y=()=>()=>{},b=(e,t={})=>{let{i18n:n}=t,{i18n:s,defaultNS:c}=(0,a.useContext)(g)||{},u=n||s||i();u&&!u.reportNamespaces&&(u.reportNamespaces=new _),u||l(u,`NO_I18NEXT_INSTANCE`,`useTranslation: You will need to pass in an i18next instance by using initReactI18next or by passing it via props or context. In monorepo setups, make sure there is only one instance of react-i18next.`);let h=(0,a.useMemo)(()=>({...r(),...u?.options?.react,...t}),[u,t]),{useSuspense:b,keyPrefix:x}=h,S=e||c||u?.options?.defaultNS,C=m(S)?[S]:S||[`translation`],w=(0,a.useMemo)(()=>C,C);u?.reportNamespaces?.addUsedNamespaces?.(w);let T=(0,a.useRef)(0),E=(0,a.useCallback)(e=>{if(!u)return y;let{bindI18n:t,bindI18nStore:n}=h,r=()=>{T.current+=1,e()};return t&&u.on(t,r),n&&u.store.on(n,r),()=>{t&&t.split(` `).forEach(e=>u.off(e,r)),n&&n.split(` `).forEach(e=>u.store.off(e,r))}},[u,h]),D=(0,a.useRef)(),O=(0,a.useCallback)(()=>{if(!u)return v;let e=!!(u.isInitialized||u.initializedStoreOnce)&&w.every(e=>p(e,u,h)),n=t.lng||u.language,r=T.current,i=D.current;if(i&&i.ready===e&&i.lng===n&&i.keyPrefix===x&&i.revision===r)return i;let a={t:u.getFixedT(n,h.nsMode===`fallback`?w:w[0],x,{scopeNs:w}),ready:e,lng:n,keyPrefix:x,revision:r};return D.current=a,a},[u,w,x,h,t.lng]),[k,A]=(0,a.useState)(0),{t:j,ready:M}=(0,o.useSyncExternalStore)(E,O,O);(0,a.useEffect)(()=>{if(u&&!M&&!b){let e=()=>A(e=>e+1);t.lng?f(u,t.lng,w,e):d(u,w,e)}},[u,t.lng,w,M,b,k]);let N=u||{},P=(0,a.useRef)(null),F=(0,a.useRef)(),I=e=>{let t=Object.getOwnPropertyDescriptors(e);t.__original&&delete t.__original;let n=Object.create(Object.getPrototypeOf(e),t);if(!Object.prototype.hasOwnProperty.call(n,`__original`))try{Object.defineProperty(n,"__original",{value:e,writable:!1,enumerable:!1,configurable:!1})}catch{}return n},L=(0,a.useMemo)(()=>{let e=N,t=e?.language,n=e;e&&(P.current&&P.current.__original===e&&F.current===t?n=P.current:(n=I(e),P.current=n,F.current=t));let r=!M&&!b?(...e)=>(l(u,`USE_T_BEFORE_READY`,`useTranslation: t was called before ready. When using useSuspense: false, make sure to check the ready flag before using t.`),j(...e)):j,i=[r,n,M];return i.t=r,i.i18n=n,i.ready=M,i},[j,N,M,N.resolvedLanguage,N.language,N.languages]);if(u&&b&&!M){let e=!1;try{e=!1}catch{}throw e&&l(u,`SUSPENDED_WHILE_LOADING`,`useTranslation: suspended while translations are loading (useSuspense is true by default). Add a <Suspense> boundary above this component, or set react.useSuspense: false in the i18next init options. https://react.
1i18next.com/latest/usetranslation-hook`),new Promise(e=>{let n=()=>e();t.lng?f(u,t.lng,w,n):d(u,w,n)})}return L};export{s as a,m as i,g as n,l as o,h as r,b as t};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.