33 lines
1.2 KiB
JavaScript
33 lines
1.2 KiB
JavaScript
"use client";
|
|
|
|
import * as React from 'react';
|
|
import { devUseWarning } from '../_util/warning';
|
|
import { changeConfirmLocale } from '../modal/locale';
|
|
import LocaleContext from './context';
|
|
export { default as useLocale } from './useLocale';
|
|
export const ANT_MARK = 'internalMark';
|
|
const LocaleProvider = props => {
|
|
const {
|
|
locale = {},
|
|
children,
|
|
_ANT_MARK__
|
|
} = props;
|
|
if (process.env.NODE_ENV !== 'production') {
|
|
const warning = devUseWarning('LocaleProvider');
|
|
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;
|
|
}
|
|
React.useEffect(() => {
|
|
const clearLocale = changeConfirmLocale(locale && locale.Modal);
|
|
return clearLocale;
|
|
}, [locale]);
|
|
const getMemoizedContextValue = React.useMemo(() => Object.assign(Object.assign({}, locale), {
|
|
exist: true
|
|
}), [locale]);
|
|
return /*#__PURE__*/React.createElement(LocaleContext.Provider, {
|
|
value: getMemoizedContextValue
|
|
}, children);
|
|
};
|
|
if (process.env.NODE_ENV !== 'production') {
|
|
LocaleProvider.displayName = 'LocaleProvider';
|
|
}
|
|
export default LocaleProvider; |