@etsoo/toolpad
Version:
Dashboard framework extention based on Toolpad Core
34 lines (33 loc) • 1.91 kB
JavaScript
"use client";
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AppProvider = AppProvider;
const jsx_runtime_1 = require("react/jsx-runtime");
const context_1 = require("../shared/context");
const AppThemeProvider_1 = require("./AppThemeProvider");
const styles_1 = require("@mui/material/styles");
const AppProvider_1 = require("./AppProvider");
const LocaleContext_1 = require("../shared/locales/LocaleContext");
function createTheme() {
return (0, styles_1.createTheme)({
cssVariables: {
colorSchemeSelector: "data-toolpad-color-scheme"
},
colorSchemes: { dark: true }
});
}
/**
*
* Demos:
*
* - [App Provider](https://mui.com/toolpad/core/react-app-provider/)
* - [Dashboard Layout](https://mui.com/toolpad/core/react-dashboard-layout/)
*
* API:
*
* - [AppProvider API](https://mui.com/toolpad/core/api/app-provider)
*/
function AppProvider(props) {
const { children, theme = createTheme(), branding = null, localeText, navigation = [], router = null, authentication = null, session = null, window: appWindow } = props;
return ((0, jsx_runtime_1.jsx)(context_1.WindowContext.Provider, { value: appWindow, children: (0, jsx_runtime_1.jsx)(AppProvider_1.AuthenticationContext.Provider, { value: authentication, children: (0, jsx_runtime_1.jsx)(AppProvider_1.SessionContext.Provider, { value: session, children: (0, jsx_runtime_1.jsx)(context_1.RouterContext.Provider, { value: router, children: (0, jsx_runtime_1.jsx)(AppThemeProvider_1.AppThemeProvider, { theme: theme, window: appWindow, children: (0, jsx_runtime_1.jsx)(LocaleContext_1.LocaleProvider, { localeText: localeText, children: (0, jsx_runtime_1.jsx)(context_1.BrandingContext.Provider, { value: branding, children: (0, jsx_runtime_1.jsx)(context_1.NavigationContext.Provider, { value: navigation, children: children }) }) }) }) }) }) }) }));
}