UNPKG

@yncoder/element-react

Version:
238 lines (206 loc) 7.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 _libs = require('../../../libs'); var _utils = require('../utils'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } (function () { var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined; enterModule && enterModule(module); })(); var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) { return a; }; var YearTable = function (_Component) { (0, _inherits3.default)(YearTable, _Component); function YearTable(props) { (0, _classCallCheck3.default)(this, YearTable); return (0, _possibleConstructorReturn3.default)(this, (YearTable.__proto__ || Object.getPrototypeOf(YearTable)).call(this, props)); } (0, _createClass3.default)(YearTable, [{ key: 'getCellStyle', value: function getCellStyle(year) { var _props = this.props, disabledDate = _props.disabledDate, value = _props.value, date = _props.date; var style = {}; var ndate = new Date(date); ndate.setFullYear(year); style.disabled = typeof disabledDate === 'function' && disabledDate(ndate, _utils.SELECTION_MODES.YEAR); style.current = value && (0, _utils.deconstructDate)(value).year === year; return style; } }, { key: 'handleYearTableClick', value: function handleYearTableClick(event) { var target = event.target; if (target.tagName === 'A') { if ((0, _utils.hasClass)(target.parentNode, 'disabled')) return; var year = target.textContent || target.innerText; this.props.onPick(+year); } } }, { key: 'render', value: function render() { var date = this.props.date; var startYear = Math.floor((0, _utils.deconstructDate)(date).year / 10) * 10; return _react2.default.createElement( 'table', { onClick: this.handleYearTableClick.bind(this), className: 'el-year-table' }, _react2.default.createElement( 'tbody', null, _react2.default.createElement( 'tr', null, _react2.default.createElement( 'td', { className: this.classNames('available', this.getCellStyle(startYear + 0)) }, _react2.default.createElement( 'a', { className: 'cell' }, startYear ) ), _react2.default.createElement( 'td', { className: this.classNames('available', this.getCellStyle(startYear + 1)) }, _react2.default.createElement( 'a', { className: 'cell' }, startYear + 1 ) ), _react2.default.createElement( 'td', { className: this.classNames('available', this.getCellStyle(startYear + 2)) }, _react2.default.createElement( 'a', { className: 'cell' }, startYear + 2 ) ), _react2.default.createElement( 'td', { className: this.classNames('available', this.getCellStyle(startYear + 3)) }, _react2.default.createElement( 'a', { className: 'cell' }, startYear + 3 ) ) ), _react2.default.createElement( 'tr', null, _react2.default.createElement( 'td', { className: this.classNames('available', this.getCellStyle(startYear + 4)) }, _react2.default.createElement( 'a', { className: 'cell' }, startYear + 4 ) ), _react2.default.createElement( 'td', { className: this.classNames('available', this.getCellStyle(startYear + 5)) }, _react2.default.createElement( 'a', { className: 'cell' }, startYear + 5 ) ), _react2.default.createElement( 'td', { className: this.classNames('available', this.getCellStyle(startYear + 6)) }, _react2.default.createElement( 'a', { className: 'cell' }, startYear + 6 ) ), _react2.default.createElement( 'td', { className: this.classNames('available', this.getCellStyle(startYear + 7)) }, _react2.default.createElement( 'a', { className: 'cell' }, startYear + 7 ) ) ), _react2.default.createElement( 'tr', null, _react2.default.createElement( 'td', { className: this.classNames('available', this.getCellStyle(startYear + 8)) }, _react2.default.createElement( 'a', { className: 'cell' }, startYear + 8 ) ), _react2.default.createElement( 'td', { className: this.classNames('available', this.getCellStyle(startYear + 9)) }, _react2.default.createElement( 'a', { className: 'cell' }, startYear + 9 ) ), _react2.default.createElement('td', null), _react2.default.createElement('td', null) ) ) ); } }, { key: '__reactstandin__regenerateByEval', // @ts-ignore value: function __reactstandin__regenerateByEval(key, code) { // @ts-ignore this[key] = eval(code); } }]); return YearTable; }(_libs.Component); var _default = YearTable; exports.default = _default; YearTable.propTypes = { value: _libs.PropTypes.instanceOf(Date), date: _libs.PropTypes.instanceOf(Date).isRequired, // (year: number)=> onPick: _libs.PropTypes.func.isRequired, // (Date)=>boolean disabledDate: _libs.PropTypes.func }; ; (function () { var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined; if (!reactHotLoader) { return; } reactHotLoader.register(YearTable, 'YearTable', 'src/date-picker/basic/YearTable.jsx'); reactHotLoader.register(_default, 'default', 'src/date-picker/basic/YearTable.jsx'); })(); ; (function () { var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined; leaveModule && leaveModule(module); })();