Files
2026-01-12 09:12:41 +00:00

63 lines
2.1 KiB
JavaScript

import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
import { useIntl } from '@ant-design/pro-provider';
import { compatibleBorder, parseValueToDay } from '@ant-design/pro-utils';
import { DatePicker, Tooltip } from 'antd';
import dayjs from 'dayjs';
import relativeTime from 'dayjs/plugin/relativeTime';
// 兼容代码-----------
import "antd/es/date-picker/style";
import React from 'react';
//----------------------
import { jsx as _jsx } from "react/jsx-runtime";
import { Fragment as _Fragment } from "react/jsx-runtime";
dayjs.extend(relativeTime);
/**
* 与当前的时间进行比较 http://momentjs.cn/docs/displaying/fromnow.html
*
* @param
*/
var FieldFromNow = function FieldFromNow(_ref, ref) {
var text = _ref.text,
mode = _ref.mode,
plain = _ref.plain,
render = _ref.render,
renderFormItem = _ref.renderFormItem,
format = _ref.format,
fieldProps = _ref.fieldProps;
var intl = useIntl();
if (mode === 'read') {
var dom = /*#__PURE__*/_jsx(Tooltip, {
title: dayjs(text).format((fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.format) || format || 'YYYY-MM-DD HH:mm:ss'),
children: dayjs(text).fromNow()
});
if (render) {
return render(text, _objectSpread({
mode: mode
}, fieldProps), /*#__PURE__*/_jsx(_Fragment, {
children: dom
}));
}
return /*#__PURE__*/_jsx(_Fragment, {
children: dom
});
}
if (mode === 'edit' || mode === 'update') {
var placeholder = intl.getMessage('tableForm.selectPlaceholder', '请选择');
var momentValue = parseValueToDay(fieldProps.value);
var _dom = /*#__PURE__*/_jsx(DatePicker, _objectSpread(_objectSpread(_objectSpread({
ref: ref,
placeholder: placeholder,
showTime: true
}, compatibleBorder(plain === undefined ? true : !plain)), fieldProps), {}, {
value: momentValue
}));
if (renderFormItem) {
return renderFormItem(text, _objectSpread({
mode: mode
}, fieldProps), _dom);
}
return _dom;
}
return null;
};
export default /*#__PURE__*/React.forwardRef(FieldFromNow);