UNPKG

dareway-rui

Version:

213 lines (188 loc) 9.06 kB
'use strict'; var _interopRequireDefault = require('@babel/runtime/helpers/interopRequireDefault'); Object.defineProperty(exports, '__esModule', { value: true }); exports.default = void 0; var _classCallCheck2 = _interopRequireDefault(require('@babel/runtime/helpers/classCallCheck')); var _createClass2 = _interopRequireDefault(require('@babel/runtime/helpers/createClass')); var _possibleConstructorReturn2 = _interopRequireDefault(require('@babel/runtime/helpers/possibleConstructorReturn')); var _getPrototypeOf2 = _interopRequireDefault(require('@babel/runtime/helpers/getPrototypeOf')); var _assertThisInitialized2 = _interopRequireDefault(require('@babel/runtime/helpers/assertThisInitialized')); var _inherits2 = _interopRequireDefault(require('@babel/runtime/helpers/inherits')); var _defineProperty2 = _interopRequireDefault(require('@babel/runtime/helpers/defineProperty')); var _react = _interopRequireDefault(require('react')); var _propTypes = _interopRequireDefault(require('prop-types')); var _reactLifecyclesCompat = require('react-lifecycles-compat'); var _MonthTable = _interopRequireDefault(require('./MonthTable')); function goYear(direction) { var next = this.state.value.clone(); next.add(direction, 'year'); this.setAndChangeValue(next); } function noop() {} var MonthPanel = /*#__PURE__*/ (function(_React$Component) { (0, _inherits2.default)(MonthPanel, _React$Component); function MonthPanel(props) { var _this; (0, _classCallCheck2.default)(this, MonthPanel); _this = (0, _possibleConstructorReturn2.default)( this, (0, _getPrototypeOf2.default)(MonthPanel).call(this, props) ); (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), 'setAndChangeValue', function( value ) { _this.setValue(value); _this.props.onChange(value); }); (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), 'setAndSelectValue', function( value ) { _this.setValue(value); _this.props.onSelect(value); }); (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), 'setValue', function(value) { if (!('value' in _this.props)) { _this.setState({ value: value }); } }); _this.nextYear = goYear.bind((0, _assertThisInitialized2.default)(_this), 1); _this.previousYear = goYear.bind((0, _assertThisInitialized2.default)(_this), -1); _this.prefixCls = ''.concat(props.rootPrefixCls, '-month-panel'); _this.state = { value: props.value || props.defaultValue }; return _this; } (0, _createClass2.default)( MonthPanel, [ { key: 'render', value: function render() { var props = this.props; var value = this.state.value; var locale = props.locale, cellRender = props.cellRender, contentRender = props.contentRender, renderFooter = props.renderFooter; var year = value.year(); var prefixCls = this.prefixCls; var footer = renderFooter && renderFooter('month'); return _react.default.createElement( 'div', { className: prefixCls, style: props.style }, _react.default.createElement( 'div', null, _react.default.createElement( 'div', { className: ''.concat(prefixCls, '-header') }, _react.default.createElement('a', { className: ''.concat(prefixCls, '-prev-year-btn'), role: 'button', onClick: this.previousYear, title: locale.previousYear }), _react.default.createElement( 'a', { className: ''.concat(prefixCls, '-year-select'), role: 'button', onClick: props.onYearPanelShow, title: locale.yearSelect }, _react.default.createElement( 'span', { className: ''.concat(prefixCls, '-year-select-content') }, year ), _react.default.createElement( 'span', { className: ''.concat(prefixCls, '-year-select-arrow') }, 'x' ) ), _react.default.createElement('a', { className: ''.concat(prefixCls, '-next-year-btn'), role: 'button', onClick: this.nextYear, title: locale.nextYear }) ), _react.default.createElement( 'div', { className: ''.concat(prefixCls, '-body') }, _react.default.createElement(_MonthTable.default, { disabledDate: props.disabledDate, onSelect: this.setAndSelectValue, locale: locale, value: value, cellRender: cellRender, contentRender: contentRender, prefixCls: prefixCls }) ), footer && _react.default.createElement( 'div', { className: ''.concat(prefixCls, '-footer') }, footer ) ) ); } } ], [ { key: 'getDerivedStateFromProps', value: function getDerivedStateFromProps(nextProps) { var newState = {}; if ('value' in nextProps) { newState = { value: nextProps.value }; } return newState; } } ] ); return MonthPanel; })(_react.default.Component); (0, _defineProperty2.default)(MonthPanel, 'propTypes', { onChange: _propTypes.default.func, disabledDate: _propTypes.default.func, onSelect: _propTypes.default.func, renderFooter: _propTypes.default.func, rootPrefixCls: _propTypes.default.string, value: _propTypes.default.object, defaultValue: _propTypes.default.object }); (0, _defineProperty2.default)(MonthPanel, 'defaultProps', { onChange: noop, onSelect: noop }); (0, _reactLifecyclesCompat.polyfill)(MonthPanel); var _default = MonthPanel; exports.default = _default; //@ sourceMappingURL=MonthPanel.js.map