drip-table
Version:
A tiny and powerful enterprise-class solution for building tables.
64 lines (59 loc) • 2.27 kB
JavaScript
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
/*
* This file is part of the drip-table project.
* @link : https://drip-table.jd.com/
* @author : renwenci(ararakikon@163.com)
* @modifier : renwenci(ararakikon@163.com)
* @copyright: Copyright (c) 2021 JD Network Technology Co., Ltd.
*/
import "./index.less";
import moment from 'moment';
import RcPicker, { PickerPanel, RangePicker } from 'rc-picker';
import momentGenerateConfig from 'rc-picker/lib/generate/moment';
import zh from 'rc-picker/lib/locale/zh_CN';
import React from 'react';
var prefixCls = 'jfe-drip-table-rc-date-picker';
var DatePicker = /*#__PURE__*/React.memo(function (_ref) {
var props = Object.assign({}, _ref);
var date = props.date;
if (!moment(date).isValid()) {
return /*#__PURE__*/React.createElement("div", null, "\u975E\u6CD5\u65E5\u671F");
}
var value = moment(date);
return /*#__PURE__*/React.createElement(RcPicker, _extends({}, props, {
value: value,
locale: zh,
open: true,
showToday: true,
prefixCls: prefixCls,
generateConfig: momentGenerateConfig
}));
});
var DateRangePicker = /*#__PURE__*/React.memo(function (props) {
var date = props.date;
if (!moment(date[0]).isValid() || !moment(date[1]).isValid()) {
return /*#__PURE__*/React.createElement("div", null, "\u975E\u6CD5\u65E5\u671F");
}
return /*#__PURE__*/React.createElement(RangePicker, _extends({}, props, {
open: true,
prefixCls: prefixCls,
generateConfig: momentGenerateConfig,
locale: zh,
value: [moment(date[0]), moment(date[1])],
allowClear: true
}));
});
var Calendar = /*#__PURE__*/React.memo(function (props) {
var dateRender = props.dateRender;
return /*#__PURE__*/React.createElement(PickerPanel, {
locale: zh,
prefixCls: prefixCls,
generateConfig: momentGenerateConfig,
dateRender: dateRender
});
});
export default {
DatePicker: DatePicker,
DateRangePicker: DateRangePicker,
Calendar: Calendar
};