You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
971 B

9 years ago
import * as React from 'react';
import { changeConfirmLocale } from '../modal/locale';
export interface LocaleProviderProps {
locale: {
Pagination?: Object,
DatePicker?: Object,
TimePicker?: Object,
Calendar?: Object,
Table?: Object,
Modal?: Object,
Popconfirm?: Object,
Transfer?: Object,
Select?: Object,
};
}
export default class LocaleProvider extends React.Component<LocaleProviderProps, any> {
static propTypes = {
locale: React.PropTypes.object,
};
static childContextTypes = {
antLocale: React.PropTypes.object,
};
getChildContext() {
return {
antLocale: this.props.locale,
};
}
componentDidMount() {
this.componentDidUpdate();
}
componentDidUpdate() {
const { locale } = this.props;
changeConfirmLocale(locale && locale.Modal);
}
componentWillUnMount() {
changeConfirmLocale();
}
render() {
return React.Children.only(this.props.children);
}
}