UNPKG

mobile-more

Version:

基于 antd-mobile v5 扩展移动端 UI 组件

39 lines 1.67 kB
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2"; import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties"; var _excluded = ["precision", "format", "placeholder", "value", "renderLabel"]; import { DatePicker, Input } from 'antd-mobile'; import * as React from 'react'; import { safeDate } from 'util-helpers'; import { useConfig } from '../../BizConfigProvider'; import { labelRenderer } from '../utils/date'; import { dayjs } from '../../../utils/dayjs.util'; var SuperDatePicker = function SuperDatePicker(props) { var _useConfig = useConfig(), locale = _useConfig.locale; var precision = props.precision, format = props.format, placeholder = props.placeholder, outValue = props.value, _props$renderLabel = props.renderLabel, renderLabel = _props$renderLabel === void 0 ? function (type, data) { return labelRenderer(type, data, locale); } : _props$renderLabel, restProps = _objectWithoutProperties(props, _excluded); var internalValue = React.useMemo(function () { return typeof outValue === 'string' ? safeDate(outValue) : outValue; }, [outValue]); return /*#__PURE__*/React.createElement(DatePicker, _objectSpread({ renderLabel: renderLabel, precision: precision, value: internalValue, destroyOnClose: true }, restProps), function (value) { var fmtValue = value ? typeof format === 'function' ? format(value, precision) : dayjs(value).format(format) : value; return /*#__PURE__*/React.createElement(Input, { value: fmtValue || '', placeholder: placeholder, readOnly: true }); }); }; export default SuperDatePicker;