index.js 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. "use client";
  2. import * as React from 'react';
  3. import { devUseWarning } from '../_util/warning';
  4. import { changeConfirmLocale } from '../modal/locale';
  5. import LocaleContext from './context';
  6. export { default as useLocale } from './useLocale';
  7. export const ANT_MARK = 'internalMark';
  8. const LocaleProvider = props => {
  9. const {
  10. locale = {},
  11. children,
  12. _ANT_MARK__
  13. } = props;
  14. if (process.env.NODE_ENV !== 'production') {
  15. const warning = devUseWarning('LocaleProvider');
  16. process.env.NODE_ENV !== "production" ? warning(_ANT_MARK__ === ANT_MARK, 'deprecated', '`LocaleProvider` is deprecated. Please use `locale` with `ConfigProvider` instead: http://u.ant.design/locale') : void 0;
  17. }
  18. React.useEffect(() => {
  19. const clearLocale = changeConfirmLocale(locale === null || locale === void 0 ? void 0 : locale.Modal);
  20. return clearLocale;
  21. }, [locale]);
  22. const getMemoizedContextValue = React.useMemo(() => Object.assign(Object.assign({}, locale), {
  23. exist: true
  24. }), [locale]);
  25. return /*#__PURE__*/React.createElement(LocaleContext.Provider, {
  26. value: getMemoizedContextValue
  27. }, children);
  28. };
  29. if (process.env.NODE_ENV !== 'production') {
  30. LocaleProvider.displayName = 'LocaleProvider';
  31. }
  32. export default LocaleProvider;