Projektstart
This commit is contained in:
36
frontend/node_modules/react-i18next/dist/es/withTranslation.js
generated
vendored
Normal file
36
frontend/node_modules/react-i18next/dist/es/withTranslation.js
generated
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
import { createElement, forwardRef as forwardRefReact } from 'react';
|
||||
import { useTranslation } from './useTranslation.js';
|
||||
import { getDisplayName } from './utils.js';
|
||||
export const withTranslation = function (ns) {
|
||||
let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
||||
return function Extend(WrappedComponent) {
|
||||
function I18nextWithTranslation(_ref) {
|
||||
let {
|
||||
forwardedRef,
|
||||
...rest
|
||||
} = _ref;
|
||||
const [t, i18n, ready] = useTranslation(ns, {
|
||||
...rest,
|
||||
keyPrefix: options.keyPrefix
|
||||
});
|
||||
const passDownProps = {
|
||||
...rest,
|
||||
t,
|
||||
i18n,
|
||||
tReady: ready
|
||||
};
|
||||
if (options.withRef && forwardedRef) {
|
||||
passDownProps.ref = forwardedRef;
|
||||
} else if (!options.withRef && forwardedRef) {
|
||||
passDownProps.forwardedRef = forwardedRef;
|
||||
}
|
||||
return createElement(WrappedComponent, passDownProps);
|
||||
}
|
||||
I18nextWithTranslation.displayName = `withI18nextTranslation(${getDisplayName(WrappedComponent)})`;
|
||||
I18nextWithTranslation.WrappedComponent = WrappedComponent;
|
||||
const forwardRef = (props, ref) => createElement(I18nextWithTranslation, Object.assign({}, props, {
|
||||
forwardedRef: ref
|
||||
}));
|
||||
return options.withRef ? forwardRefReact(forwardRef) : I18nextWithTranslation;
|
||||
};
|
||||
};
|
||||
Reference in New Issue
Block a user