UNPKG

@material-ui/lab

Version:

Material-UI Lab - Incubator for Material-UI React components.

41 lines (31 loc) 1.16 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); Object.defineProperty(exports, "__esModule", { value: true }); exports.useDefaultProps = useDefaultProps; exports.withDefaultProps = withDefaultProps; var React = _interopRequireWildcard(require("react")); var _getThemeProps = _interopRequireDefault(require("@material-ui/styles/getThemeProps")); var _styles = require("@material-ui/core/styles"); function useDefaultProps(props, { name }) { const theme = (0, _styles.useTheme)(); return (0, _getThemeProps.default)({ props, theme, name }); } function withDefaultProps(componentConfig, Component) { const componentName = componentConfig.name.replace('Mui', ''); const WithDefaultProps = props => { Component.displayName = componentName; const propsWithDefault = useDefaultProps(props, componentConfig); return /*#__PURE__*/React.createElement(Component, propsWithDefault); }; WithDefaultProps.displayName = `WithDefaultProps(${componentName})`; return WithDefaultProps; }