UNPKG

@mui/material

Version:

Quickly build beautiful React apps. MUI is a simple and customizable component library to build faster, beautiful, and more accessible React applications. Follow your own design system, or start with Material Design.

110 lines (100 loc) 3.54 kB
import _extends from "@babel/runtime/helpers/esm/extends"; import * as React from 'react'; import PropTypes from 'prop-types'; import useThemeProps from '../styles/useThemeProps'; import GlobalStyles from '../GlobalStyles'; import { jsx as _jsx } from "react/jsx-runtime"; import { jsxs as _jsxs } from "react/jsx-runtime"; export var html = function html(theme, enableColorScheme) { return _extends({ WebkitFontSmoothing: 'antialiased', // Antialiasing. MozOsxFontSmoothing: 'grayscale', // Antialiasing. // Change from `box-sizing: content-box` so that `width` // is not affected by `padding` or `border`. boxSizing: 'border-box', // Fix font resize problem in iOS WebkitTextSizeAdjust: '100%' }, enableColorScheme && { colorScheme: theme.palette.mode }); }; export var body = function body(theme) { return _extends({ color: theme.palette.text.primary }, theme.typography.body1, { backgroundColor: theme.palette.background.default, '@media print': { // Save printer ink. backgroundColor: theme.palette.common.white } }); }; var _styles = function styles(theme) { var _theme$components, _theme$components$Mui; var enableColorScheme = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; var defaultStyles = { html: html(theme, enableColorScheme), '*, *::before, *::after': { boxSizing: 'inherit' }, 'strong, b': { fontWeight: theme.typography.fontWeightBold }, body: _extends({ margin: 0 }, body(theme), { // Add support for document.body.requestFullScreen(). // Other elements, if background transparent, are not supported. '&::backdrop': { backgroundColor: theme.palette.background.default } }) }; var themeOverrides = (_theme$components = theme.components) == null ? void 0 : (_theme$components$Mui = _theme$components.MuiCssBaseline) == null ? void 0 : _theme$components$Mui.styleOverrides; if (themeOverrides) { defaultStyles = [defaultStyles, themeOverrides]; } return defaultStyles; }; /** * Kickstart an elegant, consistent, and simple baseline to build upon. */ export { _styles as styles }; function CssBaseline(inProps) { var props = useThemeProps({ props: inProps, name: 'MuiCssBaseline' }); var children = props.children, _props$enableColorSch = props.enableColorScheme, enableColorScheme = _props$enableColorSch === void 0 ? false : _props$enableColorSch; return /*#__PURE__*/_jsxs(React.Fragment, { children: [/*#__PURE__*/_jsx(GlobalStyles, { styles: function styles(theme) { return _styles(theme, enableColorScheme); } }), children] }); } process.env.NODE_ENV !== "production" ? CssBaseline.propTypes /* remove-proptypes */ = { // ----------------------------- Warning -------------------------------- // | These PropTypes are generated from the TypeScript type definitions | // | To update them edit the d.ts file and run "yarn proptypes" | // ---------------------------------------------------------------------- /** * You can wrap a node. */ children: PropTypes.node, /** * Enable `color-scheme` CSS property to use `theme.palette.mode`. * For more details, check out https://developer.mozilla.org/en-US/docs/Web/CSS/color-scheme * For browser support, check out https://caniuse.com/?search=color-scheme * @default false */ enableColorScheme: PropTypes.bool } : void 0; export default CssBaseline;