UNPKG

@wq/material-web

Version:

Web bindings for @wq/material

45 lines (44 loc) 1.13 kB
import React, { useMemo } from "react"; import { App as DefaultApp, usePlugin } from "@wq/react"; import { createTheme as createMuiTheme, ThemeProvider, CssBaseline, } from "@mui/material"; export default function App() { const { theme } = usePlugin("material").config, muiTheme = useMemo(() => createTheme(theme), [theme]); return /*#__PURE__*/ React.createElement( ThemeProvider, { theme: muiTheme, }, /*#__PURE__*/ React.createElement(CssBaseline, null), /*#__PURE__*/ React.createElement(DefaultApp, null) ); } function createTheme(theme) { const { type, primary, secondary, background } = theme; const palette = theme.palette || {}; if (type) { palette.mode = type; } if (primary) { palette.primary = { main: primary, }; } if (secondary) { palette.secondary = { main: secondary, }; } if (background) { palette.background = { paper: background, }; } return createMuiTheme({ palette, }); }