UNPKG

@alifd/meet-react

Version:

Fusion Mobile React UI System Component

60 lines (59 loc) 3.77 kB
"use strict"; exports.__esModule = true; exports.default = void 0; var _tslib = require("tslib"); var _react = _interopRequireWildcard(require("react")); var _dayjs = _interopRequireDefault(require("dayjs")); var _view = _interopRequireDefault(require("../../view")); var _embedPicker = _interopRequireDefault(require("../../time-picker/embed-picker")); var _dateIndicator = _interopRequireDefault(require("../date-indicator")); var _datePicker = _interopRequireDefault(require("./date-picker")); var _modeSwitch = _interopRequireDefault(require("../mode-switch")); var _useToggle2 = _interopRequireDefault(require("../../utils/hooks/use-toggle")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); } function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; } var DateTimePicker = function (props) { var _props$prefix = props.prefix, prefix = _props$prefix === void 0 ? 'mt-' : _props$prefix, defaultValue = props.defaultValue, value = props.value, _props$dateSelectTip = props.dateSelectTip, dateSelectTip = _props$dateSelectTip === void 0 ? '选择具体时间' : _props$dateSelectTip, _props$timeSelectTip = props.timeSelectTip, timeSelectTip = _props$timeSelectTip === void 0 ? '返回选择日期' : _props$timeSelectTip, disableDate = props.disableDate, validRange = props.validRange, onChange = props.onChange, others = (0, _tslib.__rest)(props, ["prefix", "defaultValue", "value", "dateSelectTip", "timeSelectTip", "disableDate", "validRange", "onChange"]); var _useToggle = (0, _useToggle2.default)('date', 'time'), mode = _useToggle[0], toggleMode = _useToggle[1].toggle; return /*#__PURE__*/(0, _react.createElement)(_view.default, others, /*#__PURE__*/(0, _react.createElement)(_dateIndicator.default, { highlight: mode === 'date' ? 0 : 1, values: [(0, _dayjs.default)(value).format('YYYY-MM-DD'), (0, _dayjs.default)(value).format('HH:mm:ss')] }), mode === 'date' ? /*#__PURE__*/(0, _react.createElement)(_datePicker.default, { defaultValue: defaultValue, value: value, validRange: validRange, onChange: function handleDateChange(d) { var curTime = (0, _dayjs.default)(value); var newTime = (0, _dayjs.default)(d).hour(curTime.hour()).minute(curTime.minute()).second(curTime.second()); onChange(newTime.toDate()); } }) : /*#__PURE__*/(0, _react.createElement)(_embedPicker.default, { defaultValue: defaultValue, value: value, onChange: function handleTimeChange(d) { var curTime = (0, _dayjs.default)(value); var newTime = (0, _dayjs.default)(d).year(curTime.year()).month(curTime.month()).date(curTime.date()); onChange(newTime.toDate()); } }), /*#__PURE__*/(0, _react.createElement)(_modeSwitch.default, { defaultText: dateSelectTip, reverseText: timeSelectTip, value: mode === 'date' ? 'default' : 'reverse', onChange: toggleMode })); }; var _default = exports.default = DateTimePicker;