UNPKG

material-ui-pickers-fork

Version:

React components, that implements material design pickers for material-ui v1

135 lines (111 loc) 3.56 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = exports.ClockNumber = void 0; var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose")); var _react = _interopRequireWildcard(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _classnames2 = _interopRequireDefault(require("classnames")); var _withStyles = _interopRequireDefault(require("@material-ui/core/styles/withStyles")); var _Typography = _interopRequireDefault(require("@material-ui/core/Typography")); var positions = { 0: [0, 40], 1: [55, 19.6], 2: [94.4, 59.5], 3: [109, 114], 4: [94.4, 168.5], 5: [54.5, 208.4], 6: [0, 223], 7: [-54.5, 208.4], 8: [-94.4, 168.5], 9: [-109, 114], 10: [-94.4, 59.5], 11: [-54.5, 19.6], 12: [0, 5], 13: [36.9, 49.9], 14: [64, 77], 15: [74, 114], 16: [64, 151], 17: [37, 178], 18: [0, 188], 19: [-37, 178], 20: [-64, 151], 21: [-74, 114], 22: [-64, 77], 23: [-37, 50] }; var ClockNumber = /*#__PURE__*/ function (_Component) { (0, _inheritsLoose2.default)(ClockNumber, _Component); function ClockNumber() { var _this; for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } _this = _Component.call.apply(_Component, [this].concat(args)) || this; _this.getTransformStyle = function (index) { var position = positions[index]; return { transform: "translate(" + position[0] + "px, " + position[1] + "px" }; }; return _this; } var _proto = ClockNumber.prototype; _proto.render = function render() { var _classnames; var _this$props = this.props, selected = _this$props.selected, label = _this$props.label, index = _this$props.index, classes = _this$props.classes, isInner = _this$props.isInner; var className = (0, _classnames2.default)(classes.clockNumber, (_classnames = {}, _classnames[classes.selected] = selected, _classnames)); return _react.default.createElement(_Typography.default, { variant: isInner ? 'body1' : 'subheading', component: "span", className: className, style: this.getTransformStyle(index, isInner) }, label); }; return ClockNumber; }(_react.Component); exports.ClockNumber = ClockNumber; ClockNumber.propTypes = { index: _propTypes.default.number.isRequired, label: _propTypes.default.string.isRequired, selected: _propTypes.default.bool.isRequired, classes: _propTypes.default.object.isRequired, isInner: _propTypes.default.bool }; ClockNumber.defaultProps = { isInner: false }; var styles = function styles(theme) { var size = theme.spacing.unit * 4; return { clockNumber: { width: size, height: size, userSelect: 'none', position: 'absolute', left: "calc(50% - " + size / 2 + "px)", display: 'inline-flex', justifyContent: 'center', alignItems: 'center', borderRadius: '50%', color: theme.palette.type === 'light' ? theme.palette.text.primary : theme.palette.text.hint }, selected: { color: theme.palette.common.white } }; }; var _default = (0, _withStyles.default)(styles, { name: 'MuiPickersClockNumber' })(ClockNumber); exports.default = _default;