UNPKG

@material-ui/core

Version:

React components that implement Google's Material Design.

92 lines (79 loc) 2.52 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _react = _interopRequireDefault(require("react")); var _clsx = _interopRequireDefault(require("clsx")); var _withStyles = _interopRequireDefault(require("../styles/withStyles")); var styles = function styles(theme) { return { thumb: { '&$open': { '& $offset': { transform: 'scale(1) translateY(-10px)' } } }, open: {}, offset: (0, _extends2.default)({ zIndex: 1 }, theme.typography.body2, { fontSize: theme.typography.pxToRem(12), lineHeight: 1.2, transition: theme.transitions.create(['transform'], { duration: theme.transitions.duration.shortest }), top: -34, left: 'calc(-50% + -4px)', transformOrigin: 'bottom center', transform: 'scale(0)', position: 'absolute' }), circle: { display: 'flex', alignItems: 'center', justifyContent: 'center', width: 32, height: 32, borderRadius: '50% 50% 50% 0', backgroundColor: 'currentColor', transform: 'rotate(-45deg)' }, label: { color: theme.palette.primary.contrastText, transform: 'rotate(45deg)' } }; }; /** * @ignore - internal component. */ function ValueLabel(props) { var children = props.children, classes = props.classes, className = props.className, index = props.index, open = props.open, value = props.value, valueLabelDisplay = props.valueLabelDisplay, valueLabelFormat = props.valueLabelFormat; if (valueLabelDisplay === 'off') { return children; } return _react.default.cloneElement(children, { className: (0, _clsx.default)(children.props.className, (open || valueLabelDisplay === 'on') && classes.open, classes.thumb) }, _react.default.createElement("span", { className: (0, _clsx.default)(classes.offset, className) }, _react.default.createElement("span", { className: classes.circle }, _react.default.createElement("span", { className: classes.label }, typeof valueLabelFormat === 'function' ? valueLabelFormat(value, index) : valueLabelFormat)))); } var _default = (0, _withStyles.default)(styles, { name: 'PrivateValueLabel' })(ValueLabel); exports.default = _default;