UNPKG

knk

Version:

react components based on react

79 lines 2.59 kB
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray"; import React, { useState } from 'react'; import { DatePicker, Select, Row, Col } from 'antd'; import { dateFormatOnlyYearCh } from '../../../enums/const'; import moment from 'moment'; import PropTypes from 'prop-types'; var Option = Select.Option; var QuarterPicker = /*#__PURE__*/React.forwardRef(function (props, ref) { var quarterPickerRef = React.useRef(); quarterPickerRef = ref; var _useState = useState(false), _useState2 = _slicedToArray(_useState, 2), open = _useState2[0], setOpen = _useState2[1]; var handleOpenChange = function handleOpenChange(value) { setOpen(value); }; var handleDateChange = function handleDateChange(value) { var onChange = props.onChange; onChange(value); }; var handlePanelChange = function handlePanelChange(value) { var onChange = props.onChange; setOpen(false); onChange(value); }; var handleSelectChange = function handleSelectChange(quarter) { var onChange = props.onChange, value = props.value; var quarterValue = (value || moment()).quarter(Number(quarter)); onChange(quarterValue); }; var value = props.value, disabled = props.disabled; var quarterValue = value ? "".concat(value.quarter()) : ''; return /*#__PURE__*/React.createElement(Row, { ref: quarterPickerRef, gutter: 8 }, /*#__PURE__*/React.createElement(Col, { span: 12 }, /*#__PURE__*/React.createElement(DatePicker, { mode: "year", value: value, open: open, disabled: disabled, style: { width: '100%' }, onOpenChange: handleOpenChange, onChange: handleDateChange, onPanelChange: handlePanelChange, placeholder: "\u9009\u62E9\u5E74\u4EFD", format: dateFormatOnlyYearCh })), /*#__PURE__*/React.createElement(Col, { span: 12 }, /*#__PURE__*/React.createElement(Select, { placeholder: "\u9009\u62E9\u5B63\u5EA6", value: quarterValue, onChange: handleSelectChange, disabled: disabled, style: { width: '100%' } }, /*#__PURE__*/React.createElement(Option, { value: "1" }, "\u7B2C\u4E00\u5B63\u5EA6"), /*#__PURE__*/React.createElement(Option, { value: "2" }, "\u7B2C\u4E8C\u5B63\u5EA6"), /*#__PURE__*/React.createElement(Option, { value: "3" }, "\u7B2C\u4E09\u5B63\u5EA6"), /*#__PURE__*/React.createElement(Option, { value: "4" }, "\u7B2C\u56DB\u5B63\u5EA6")))); }); QuarterPicker.propTypes = { value: PropTypes.any, onChange: PropTypes.func, disabled: PropTypes.bool }; export default QuarterPicker;