UNPKG

770 BTypeScriptView Raw
1import React from 'react';
2
3import { ThemeContext, LocaleContext } from '../Contexts';
4import { DefaultTheme } from '../Themes';
5import { DefaultLocale } from '../Locales';
6import type { Theme, Locale } from '../Entities';
7
8import BaseCalendar, { Props as BaseCalendarProps } from './BaseCalendar';
9
10interface ProviderProps {
11 locale?: Locale;
12 theme?: Theme;
13}
14
15type Props = ProviderProps & BaseCalendarProps;
16
17const Providers: React.FC<Props> = ({ theme, locale, ...otherProps }) => {
18 return (
19 <LocaleContext.Provider value={locale ?? DefaultLocale}>
20 <ThemeContext.Provider value={theme ?? DefaultTheme}>
21 <BaseCalendar {...otherProps} />
22 </ThemeContext.Provider>
23 </LocaleContext.Provider>
24 );
25};
26
27export default React.memo(Providers);