UNPKG

zent

Version:

一套前端设计语言和基于React的实现

120 lines (92 loc) 3.5 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = require('babel-runtime/helpers/createClass'); var _createClass3 = _interopRequireDefault(_createClass2); var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); var _inherits2 = require('babel-runtime/helpers/inherits'); var _inherits3 = _interopRequireDefault(_inherits2); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _classnames = require('classnames'); var _classnames2 = _interopRequireDefault(_classnames); var _PanelHeader = require('../common/PanelHeader'); var _PanelHeader2 = _interopRequireDefault(_PanelHeader); var _TimeCell = require('./TimeCell'); var _TimeCell2 = _interopRequireDefault(_TimeCell); var _utils = require('../utils'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } var ROW = 4; var COL = 7; var HourPanel = function (_ref) { (0, _inherits3['default'])(HourPanel, _ref); function HourPanel() { (0, _classCallCheck3['default'])(this, HourPanel); return (0, _possibleConstructorReturn3['default'])(this, (HourPanel.__proto__ || Object.getPrototypeOf(HourPanel)).apply(this, arguments)); } (0, _createClass3['default'])(HourPanel, [{ key: 'isSelected', value: function isSelected(val) { var selected = this.props.selected; return selected.getHours() === val; } }, { key: 'isCurrent', value: function isCurrent(val) { return _utils.CURRENT.getHours() === val; } }, { key: 'getHours', value: function getHours() { var cells = []; var i = 0; for (var j = 0; j < ROW; j++) { cells[j] = []; for (var k = 0; k < COL && i < 24; k++) { var isDisabled = this.props.isDisabled && this.props.isDisabled(i); var isSelected = this.isSelected(i); var isCurrent = this.isCurrent(i); var className = (0, _classnames2['default'])({ 'panel__cell time-panel__cell': true, 'panel__cell--disabled': isDisabled, 'panel__cell--selected': isSelected, 'panel__cell--current': isCurrent }); cells[j][k] = { text: (0, _utils.padLeft)(i), value: i, isDisabled: isDisabled, className: className }; i++; } } return cells; } }, { key: 'render', value: function render() { var _props = this.props, hidePanel = _props.hidePanel, onSelect = _props.onSelect; var hours = this.getHours(); var title = '选择小时'; return _react2['default'].createElement( 'div', { className: 'hour-panel' }, _react2['default'].createElement(_PanelHeader2['default'], { title: title, showNext: false, prev: hidePanel }), _react2['default'].createElement( 'div', { className: 'hour-table panel-table' }, _react2['default'].createElement(_TimeCell2['default'], { cells: hours, onSelect: onSelect }) ) ); } }]); return HourPanel; }(_react.PureComponent || _react.Component); exports['default'] = HourPanel;