|
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- import _extends from "@babel/runtime/helpers/extends";
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
-
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
-
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
-
- import React from 'react';
- import { useTranslation } from './useTranslation';
- import { getDisplayName } from './utils';
- export function withTranslation(ns) {
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
- return function Extend(WrappedComponent) {
- function I18nextWithTranslation(_ref) {
- var forwardedRef = _ref.forwardedRef,
- rest = _objectWithoutProperties(_ref, ["forwardedRef"]);
-
- var _useTranslation = useTranslation(ns, rest),
- _useTranslation2 = _slicedToArray(_useTranslation, 3),
- t = _useTranslation2[0],
- i18n = _useTranslation2[1],
- ready = _useTranslation2[2];
-
- var passDownProps = _objectSpread({}, rest, {
- t: t,
- i18n: i18n,
- tReady: ready
- });
-
- if (options.withRef && forwardedRef) {
- passDownProps.ref = forwardedRef;
- }
-
- return React.createElement(WrappedComponent, passDownProps);
- }
-
- I18nextWithTranslation.displayName = "withI18nextTranslation(".concat(getDisplayName(WrappedComponent), ")");
- I18nextWithTranslation.WrappedComponent = WrappedComponent;
-
- var forwardRef = function forwardRef(props, ref) {
- return React.createElement(I18nextWithTranslation, _extends({}, props, {
- forwardedRef: ref
- }));
- };
-
- return options.withRef ? React.forwardRef(forwardRef) : I18nextWithTranslation;
- };
- }
|