function Application(props) {
    const { children, className, style, locale, theme } = props;

    const contextValue = { locale: useLocale(locale) };

    const [normalizedTheme, setTheme] = useState(() => normalizeTheme(theme));

    useEffect(() => {
        setTheme(normalizeTheme(theme));
    }, [theme]);

    return (
        <Provider value={contextValue}>
            <ThemeProvider theme={normalizedTheme}>
                <div className={className} style={style}>
                    <RainbowLegacyStyles />
                    {children}
                </div>
            </ThemeProvider>
        </Provider>
    );
}
This component is used to setup the React Rainbow context for a tree.
Usually, this component will wrap an app's root component so that the entire
app will be within the configured context.
@category Layout