Skip to content
Snippets Groups Projects
AppProvider.js 864 B
Newer Older
  • Learn to ignore specific revisions
  • tspuller's avatar
    bla
    tspuller committed
    import React from 'react';
    import { ConfigProvider } from 'antd';
    import { IntlProvider } from 'react-intl';
    import { useSelector } from 'react-redux';
    import { ThemeProvider } from 'styled-components';
    import themes from '@imd/config/theme/theme.config';
    import AppLocale from '@imd/config/translation';
    
    export default function AppProvider({ children }) {
      const { locale } = useSelector(state => state.LanguageSwitcher.language);
      const { themeName } = useSelector(state => state.ThemeSwitcher.changeThemes);
      const currentAppLocale = AppLocale[locale];
      return (
        <ConfigProvider locale={currentAppLocale.antd}>
          <IntlProvider
            locale={currentAppLocale.locale}
            messages={currentAppLocale.messages}
          >
            <ThemeProvider theme={themes[themeName]}>{children}</ThemeProvider>
          </IntlProvider>
        </ConfigProvider>
      );
    }