@zat-design/sisyphus-react 3.8.3 → 3.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/extensions.json +5 -0
- package/dist/index.esm.css +38 -3
- package/dist/less.esm.css +37 -2
- package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +83 -20
- package/es/ProEditTable/components/RenderField/index.js +6 -2
- package/es/ProEditTable/index.js +18 -9
- package/es/ProEditTable/propsType.d.ts +3 -6
- package/es/ProEditTable/style/index.less +0 -1
- package/es/ProEditTable/utils/index.js +10 -3
- package/es/ProForm/components/base/InputNumber/index.js +1 -1
- package/es/ProForm/components/combination/FormList/components/BlockFields.d.ts +2 -0
- package/es/ProForm/components/combination/FormList/components/BlockFields.js +4 -2
- package/es/ProForm/components/combination/FormList/components/LineFields.d.ts +2 -0
- package/es/ProForm/components/combination/FormList/components/LineFields.js +4 -2
- package/es/ProForm/components/combination/FormList/index.js +14 -3
- package/es/ProForm/components/combination/Group/index.js +3 -4
- package/es/ProForm/components/combination/ProCascader/index.js +21 -14
- package/es/ProForm/components/combination/ProModalSelect/index.js +17 -3
- package/es/ProForm/components/render/ChangedWrapper.js +29 -10
- package/es/ProForm/components/render/Render.js +3 -1
- package/es/ProForm/components/render/RenderFields.js +4 -2
- package/es/ProForm/propsType.d.ts +3 -0
- package/es/ProForm/style/index.less +35 -9
- package/es/ProForm/utils/diffOriginal.js +14 -2
- package/es/ProForm/utils/useShouldUpdate.js +1 -9
- package/es/ProTable/components/FormatColumn/index.d.ts +2 -1
- package/es/ProTable/components/FormatColumn/index.js +107 -29
- package/es/ProTable/components/RenderColumn/index.d.ts +1 -0
- package/es/ProTable/components/RenderColumn/index.js +23 -6
- package/es/ProTable/index.js +8 -7
- package/es/ProTable/propsType.d.ts +4 -0
- package/es/ProTable/style/index.less +14 -0
- package/es/style/theme/antd.less +1 -1
- package/es/utils/index.d.ts +1 -0
- package/es/utils/index.js +26 -0
- package/lib/ProEditTable/components/RenderField/ListChangedWrapper.js +82 -21
- package/lib/ProEditTable/components/RenderField/index.js +6 -2
- package/lib/ProEditTable/index.js +18 -9
- package/lib/ProEditTable/propsType.d.ts +3 -6
- package/lib/ProEditTable/style/index.less +0 -1
- package/lib/ProEditTable/utils/index.js +10 -3
- package/lib/ProForm/components/base/InputNumber/index.js +1 -1
- package/lib/ProForm/components/combination/FormList/components/BlockFields.d.ts +2 -0
- package/lib/ProForm/components/combination/FormList/components/BlockFields.js +4 -2
- package/lib/ProForm/components/combination/FormList/components/LineFields.d.ts +2 -0
- package/lib/ProForm/components/combination/FormList/components/LineFields.js +4 -2
- package/lib/ProForm/components/combination/FormList/index.js +14 -3
- package/lib/ProForm/components/combination/Group/index.js +3 -4
- package/lib/ProForm/components/combination/ProCascader/index.js +21 -14
- package/lib/ProForm/components/combination/ProModalSelect/index.js +17 -3
- package/lib/ProForm/components/render/ChangedWrapper.js +29 -10
- package/lib/ProForm/components/render/Render.js +3 -1
- package/lib/ProForm/components/render/RenderFields.js +4 -2
- package/lib/ProForm/propsType.d.ts +3 -0
- package/lib/ProForm/style/index.less +35 -9
- package/lib/ProForm/utils/diffOriginal.js +13 -1
- package/lib/ProForm/utils/useShouldUpdate.js +1 -9
- package/lib/ProTable/components/FormatColumn/index.d.ts +2 -1
- package/lib/ProTable/components/FormatColumn/index.js +107 -29
- package/lib/ProTable/components/RenderColumn/index.d.ts +1 -0
- package/lib/ProTable/components/RenderColumn/index.js +20 -5
- package/lib/ProTable/index.js +8 -7
- package/lib/ProTable/propsType.d.ts +4 -0
- package/lib/ProTable/style/index.less +14 -0
- package/lib/style/theme/antd.less +1 -1
- package/lib/utils/index.d.ts +1 -0
- package/lib/utils/index.js +28 -1
- package/package.json +1 -1
@@ -17,7 +17,7 @@ var _react = _interopRequireWildcard(require("react"));
|
|
17
17
|
var _diffOriginal = require("../../utils/diffOriginal");
|
18
18
|
var _ProConfigProvider = require("../../../ProConfigProvider");
|
19
19
|
var _utils = require("../../../utils");
|
20
|
-
var _excluded = ["name", "names", "namesStr", "form", "equalWith", "children", "type", "diffConfig", "valuePropName", "normalize", "getValueProps"];
|
20
|
+
var _excluded = ["name", "names", "namesStr", "form", "equalWith", "children", "type", "diffConfig", "valuePropName", "normalize", "getValueProps", "viewRender"];
|
21
21
|
var ChangedWrapper = function ChangedWrapper(props) {
|
22
22
|
var _diffConfig$toolTip, _children$props, _children$props2, _children$props3;
|
23
23
|
var name = props.name,
|
@@ -32,12 +32,16 @@ var ChangedWrapper = function ChangedWrapper(props) {
|
|
32
32
|
valuePropName = _props$valuePropName === void 0 ? 'value' : _props$valuePropName,
|
33
33
|
normalize = props.normalize,
|
34
34
|
getValueProps = props.getValueProps,
|
35
|
+
viewRender = props.viewRender,
|
35
36
|
rest = (0, _objectWithoutProperties2.default)(props, _excluded);
|
37
|
+
// const contentRef = useRef(null);
|
36
38
|
var _useProConfig = (0, _ProConfigProvider.useProConfig)('ProForm'),
|
37
39
|
isDiffAll = _useProConfig.isDiffAll;
|
38
40
|
var originalValues = diffConfig.originalValues,
|
39
41
|
changeTipColor = diffConfig.changeTipColor,
|
40
|
-
addTipColor = diffConfig.addTipColor
|
42
|
+
addTipColor = diffConfig.addTipColor,
|
43
|
+
_diffConfig$scrollFol = diffConfig.scrollFollowParent,
|
44
|
+
scrollFollowParent = _diffConfig$scrollFol === void 0 ? true : _diffConfig$scrollFol;
|
41
45
|
var toolTip = (_diffConfig$toolTip = diffConfig.toolTip) !== null && _diffConfig$toolTip !== void 0 ? _diffConfig$toolTip : true;
|
42
46
|
var isWatch = toolTip && !['FormList', 'ProEditTable'].includes(type);
|
43
47
|
var originalValue = (names === null || names === void 0 ? void 0 : names.length) ? names.map(function (name) {
|
@@ -57,9 +61,19 @@ var ChangedWrapper = function ChangedWrapper(props) {
|
|
57
61
|
}, [isWatch, noChange, props[valuePropName], originalValue]);
|
58
62
|
var isAdd = diffType === 'add';
|
59
63
|
var isChanged = diffType === 'changed';
|
64
|
+
var viewRenderFun = (0, _react.useMemo)(function () {
|
65
|
+
return function (orgValue) {
|
66
|
+
return viewRender(orgValue, originalValues, {
|
67
|
+
form: form
|
68
|
+
});
|
69
|
+
};
|
70
|
+
}, [form]);
|
60
71
|
var tipContent = (0, _react.useMemo)(function () {
|
61
72
|
if (!isWatch || noChange) return undefined;
|
62
|
-
var valueProps = getValueProps ? getValueProps(originalValue) :
|
73
|
+
var valueProps = getValueProps && !names ? getValueProps(originalValue) : {
|
74
|
+
value: originalValue
|
75
|
+
};
|
76
|
+
if (viewRender) return viewRenderFun(valueProps === null || valueProps === void 0 ? void 0 : valueProps.value);
|
63
77
|
return /*#__PURE__*/_react.default.isValidElement(children) ? /*#__PURE__*/_react.default.cloneElement(children, (0, _objectSpread3.default)((0, _objectSpread3.default)({}, children.props), {}, (0, _defineProperty2.default)({
|
64
78
|
isView: true
|
65
79
|
}, valuePropName, valueProps === null || valueProps === void 0 ? void 0 : valueProps.value))) : undefined;
|
@@ -71,27 +85,30 @@ var ChangedWrapper = function ChangedWrapper(props) {
|
|
71
85
|
originalValues: isNestedField ? originalValues : undefined
|
72
86
|
}, children.props), rest));
|
73
87
|
}
|
88
|
+
// eslint-disable-next-line react-hooks/rules-of-hooks
|
89
|
+
// const isFocus = useFocus(contentRef.current);
|
74
90
|
var tipOpenCalc = function tipOpenCalc() {
|
75
91
|
if (!toolTip) return false;
|
76
|
-
// 传入undefined 鼠标移入显示移出隐藏
|
92
|
+
// 传入undefined 鼠标移入显示移出隐藏 获得焦点时不显示气泡
|
77
93
|
return isChanged ? undefined : false;
|
78
94
|
};
|
79
95
|
var style = {
|
80
96
|
'--zaui-contract-bg': changeTipColor,
|
81
97
|
'--zaui-contract-bg-add': addTipColor
|
82
98
|
};
|
99
|
+
// @ts-ignore
|
100
|
+
var _showEllipse = ((_children$props = children.props) === null || _children$props === void 0 ? void 0 : _children$props.showEllipse) || ((_children$props2 = children.props) === null || _children$props2 === void 0 ? void 0 : _children$props2.tooltip);
|
83
101
|
var diffClassName = (0, _classnames.default)({
|
84
102
|
'pro-form-item-changed': isChanged,
|
85
103
|
'pro-form-item-add': isAdd
|
86
104
|
});
|
87
|
-
|
88
|
-
var _showEllipse = ((_children$props = children.props) === null || _children$props === void 0 ? void 0 : _children$props.showEllipse) || ((_children$props2 = children.props) === null || _children$props2 === void 0 ? void 0 : _children$props2.tooltip);
|
105
|
+
var open = tipOpenCalc();
|
89
106
|
return (0, _jsxRuntime.jsx)(_antd.Tooltip, {
|
90
|
-
open:
|
91
|
-
|
92
|
-
|
93
|
-
return target.parentElement;
|
107
|
+
open: open,
|
108
|
+
getPopupContainer: function getPopupContainer(trigger) {
|
109
|
+
return scrollFollowParent ? trigger.parentElement : document.body;
|
94
110
|
},
|
111
|
+
overlayClassName: "original-value-tootip",
|
95
112
|
title: (0, _jsxRuntime.jsxs)(_antd.Space, {
|
96
113
|
direction: "vertical",
|
97
114
|
className: "changed-tooltip",
|
@@ -102,6 +119,7 @@ var ChangedWrapper = function ChangedWrapper(props) {
|
|
102
119
|
}), _showEllipse && (0, _jsxRuntime.jsxs)(_antd.Space, {
|
103
120
|
className: "current-value-container",
|
104
121
|
children: ["\u5F53\u524D\u503C\uFF1A", /*#__PURE__*/_react.default.isValidElement(children) ? /*#__PURE__*/_react.default.cloneElement(children, (0, _objectSpread3.default)((0, _objectSpread3.default)((0, _objectSpread3.default)({}, children.props), rest), {}, {
|
122
|
+
scrollFollowParent: scrollFollowParent,
|
105
123
|
isView: true
|
106
124
|
})) : undefined]
|
107
125
|
})]
|
@@ -111,6 +129,7 @@ var ChangedWrapper = function ChangedWrapper(props) {
|
|
111
129
|
className: diffClassName,
|
112
130
|
style: style,
|
113
131
|
children: /*#__PURE__*/_react.default.isValidElement(children) ? /*#__PURE__*/_react.default.cloneElement(children, (0, _objectSpread3.default)((0, _objectSpread3.default)((0, _objectSpread3.default)({}, children.props), rest), {}, {
|
132
|
+
scrollFollowParent: scrollFollowParent,
|
114
133
|
otherProps: (0, _objectSpread3.default)((0, _objectSpread3.default)({}, (_children$props3 = children.props) === null || _children$props3 === void 0 ? void 0 : _children$props3.otherProps), {}, {
|
115
134
|
isDiffChange: isChanged
|
116
135
|
})
|
@@ -50,7 +50,8 @@ var Render = function Render(props) {
|
|
50
50
|
requiredOnView = props.requiredOnView,
|
51
51
|
confirm = props.confirm,
|
52
52
|
globalControl = props.globalControl,
|
53
|
-
diffConfig = props.diffConfig
|
53
|
+
diffConfig = props.diffConfig,
|
54
|
+
viewRender = props.viewRender;
|
54
55
|
var colProps = props.colProps;
|
55
56
|
// 剔除一些不是FormItem的属性, 防止控制台报warning
|
56
57
|
var labelWidth = formItemProps.labelWidth,
|
@@ -439,6 +440,7 @@ var Render = function Render(props) {
|
|
439
440
|
valuePropName: _otherFormItemProps.valuePropName,
|
440
441
|
normalize: _otherFormItemProps.normalize,
|
441
442
|
getValueProps: _otherFormItemProps.getValueProps,
|
443
|
+
viewRender: viewRender,
|
442
444
|
children: child
|
443
445
|
});
|
444
446
|
}
|
@@ -194,7 +194,8 @@ var RenderFields = function RenderFields(props) {
|
|
194
194
|
namePath: column.namePath,
|
195
195
|
listName: column.listName,
|
196
196
|
globalControl: globalControl,
|
197
|
-
formDisabled: formDisabled
|
197
|
+
formDisabled: formDisabled,
|
198
|
+
diffConfig: diffConfig
|
198
199
|
};
|
199
200
|
return (0, _jsxRuntime.jsx)(_useFieldProps.FieldProvider, {
|
200
201
|
value: otherProps,
|
@@ -217,7 +218,8 @@ var RenderFields = function RenderFields(props) {
|
|
217
218
|
diffConfig: diffConfig,
|
218
219
|
equalWith: equalWith,
|
219
220
|
requiredOnView: requiredOnView,
|
220
|
-
globalControl: globalControl
|
221
|
+
globalControl: globalControl,
|
222
|
+
viewRender: viewRender
|
221
223
|
})
|
222
224
|
}, "".concat(_formItemProps.name || _formItemProps.label).concat(index));
|
223
225
|
});
|
@@ -45,6 +45,7 @@ export interface ProFormOtherProps {
|
|
45
45
|
globalControl?: boolean;
|
46
46
|
formDisabled?: boolean;
|
47
47
|
isDiffChange?: boolean;
|
48
|
+
diffConfig?: DiffConfigProps;
|
48
49
|
}
|
49
50
|
export interface DiffConfigProps<Values = any> {
|
50
51
|
/** 比对原始数据源 */
|
@@ -55,6 +56,8 @@ export interface DiffConfigProps<Values = any> {
|
|
55
56
|
changeTipColor?: string;
|
56
57
|
/** 新增提示颜色 */
|
57
58
|
addTipColor?: string;
|
59
|
+
/** 是否跟随父组件滚动 */
|
60
|
+
scrollFollowParent?: string;
|
58
61
|
}
|
59
62
|
export interface ProFormProps<Values = any> extends FormProps<Values> {
|
60
63
|
disabled?: boolean;
|
@@ -53,6 +53,11 @@
|
|
53
53
|
}
|
54
54
|
|
55
55
|
&.pro-form-view {
|
56
|
+
.pro-group{
|
57
|
+
.@{ant-prefix}-space-item, .pro-form-view-container{
|
58
|
+
width: max-content;
|
59
|
+
}
|
60
|
+
}
|
56
61
|
.@{ant-prefix}-form-item-label {
|
57
62
|
label {
|
58
63
|
color: var(--zaui-aide-text, #939599);
|
@@ -329,6 +334,9 @@
|
|
329
334
|
border-radius: 4px;
|
330
335
|
background: @zaui-contract-bg !important;
|
331
336
|
|
337
|
+
.@{ant-prefix}-input {
|
338
|
+
background: @zaui-contract-bg !important;
|
339
|
+
}
|
332
340
|
.@{ant-prefix}-select.@{ant-prefix}-select-disabled .@{ant-prefix}-select-selector{
|
333
341
|
background: @zaui-contract-bg !important;
|
334
342
|
}
|
@@ -403,6 +411,10 @@
|
|
403
411
|
border-radius: 4px;
|
404
412
|
background: @zaui-contract-bg-add !important;
|
405
413
|
|
414
|
+
.@{ant-prefix}-input {
|
415
|
+
background: @zaui-contract-bg !important;
|
416
|
+
}
|
417
|
+
|
406
418
|
.@{ant-prefix}-select.@{ant-prefix}-select-disabled .@{ant-prefix}-select-selector{
|
407
419
|
background: @zaui-contract-bg-add !important;
|
408
420
|
}
|
@@ -473,15 +485,29 @@
|
|
473
485
|
}
|
474
486
|
}
|
475
487
|
|
476
|
-
.
|
477
|
-
|
478
|
-
|
479
|
-
|
488
|
+
.original-value-tootip{
|
489
|
+
max-width: 100%;
|
490
|
+
width: max-content;
|
491
|
+
z-index: 99;
|
492
|
+
.changed-tooltip {
|
493
|
+
.original-value-container {
|
494
|
+
.ant-space-item:nth-child(1) {
|
495
|
+
white-space: nowrap;
|
496
|
+
}
|
497
|
+
.pro-group{
|
498
|
+
.ant-space-compact{
|
499
|
+
display: block;
|
500
|
+
}
|
501
|
+
.pro-form-view-container{
|
502
|
+
word-break: keep-all;
|
503
|
+
}
|
504
|
+
}
|
480
505
|
}
|
481
|
-
|
482
|
-
|
483
|
-
|
484
|
-
|
506
|
+
.current-value-container {
|
507
|
+
.ant-space-item:nth-child(1) {
|
508
|
+
white-space: nowrap;
|
509
|
+
}
|
485
510
|
}
|
486
511
|
}
|
487
|
-
}
|
512
|
+
}
|
513
|
+
|
@@ -6,6 +6,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
exports.diffOriginal = void 0;
|
7
7
|
var _lodash = require("lodash");
|
8
8
|
var _utils = require("../../utils");
|
9
|
+
// 过滤对象中undefined字段
|
10
|
+
// 防止{a: '1'} {a: '1', b: undefined}被认为不相等
|
11
|
+
var filterUndefined = function filterUndefined(data) {
|
12
|
+
if (!(0, _lodash.isObject)(data) || Array.isArray(data) || data === null) return data;
|
13
|
+
var resData = {};
|
14
|
+
Object.keys(data).forEach(function (key) {
|
15
|
+
if (data[key] !== undefined) {
|
16
|
+
resData[key] = data[key];
|
17
|
+
}
|
18
|
+
});
|
19
|
+
return resData;
|
20
|
+
};
|
9
21
|
var nullValue = [null, undefined, '']; // 输入框空值时可能存在的三种值 视为相等
|
10
22
|
var diffOriginal = exports.diffOriginal = function diffOriginal(params) {
|
11
23
|
var originalValue = params.originalValue,
|
@@ -35,7 +47,7 @@ var diffOriginal = exports.diffOriginal = function diffOriginal(params) {
|
|
35
47
|
return isSame ? 'same' : 'changed';
|
36
48
|
}
|
37
49
|
if (!nullValue.includes(value) || !nullValue.includes(originalValue)) {
|
38
|
-
return (0, _lodash.isEqual)(value, originalValue) ? 'same' : 'changed';
|
50
|
+
return (0, _lodash.isEqual)(filterUndefined(value), filterUndefined(originalValue)) ? 'same' : 'changed';
|
39
51
|
}
|
40
52
|
return 'same';
|
41
53
|
};
|
@@ -170,9 +170,6 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
170
170
|
index: index,
|
171
171
|
namePath: namePath
|
172
172
|
}) : rules;
|
173
|
-
// const _component = isFunction(originComponent)
|
174
|
-
// ? originComponent(_currentValues, { form, index, namePath })
|
175
|
-
// : newComponent;
|
176
173
|
var _fieldProps = (0, _lodash.isFunction)(fieldProps) ? fieldProps(_currentValues, {
|
177
174
|
form: form,
|
178
175
|
index: index,
|
@@ -203,17 +200,12 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
203
200
|
}
|
204
201
|
var equalRes = (0, _lodash.isEqualWith)(rulesRef.current, _rules, _index.customEqualForFun);
|
205
202
|
var proEqualRes = (0, _lodash.isEqualWith)(fieldPropsRef.current, _fieldProps, _index.customEqualForFun);
|
206
|
-
if (_show !== showRef.current || _disabled !== disabledRef.current || _required !== requiredRef.current || !equalRes || !proEqualRes
|
207
|
-
// 值变更,需要同步更新函数式的fieldProps
|
208
|
-
// (isEqualWith(fieldPropsRef.current, _fieldProps, customEqualForFun) && !isEqual(prevValues, currentValues)) ||
|
209
|
-
// !isEqualWith(originComponentRef.current, _component, customEqualForFun) ||
|
210
|
-
// equalDependencies(dependencies, prevValues, _currentValues)
|
203
|
+
if (_show !== showRef.current || _disabled !== disabledRef.current || _required !== requiredRef.current || !equalRes || !proEqualRes || (_fieldProps === null || _fieldProps === void 0 ? void 0 : _fieldProps.transformResponse) // 防止fieldProps变更时,transformResponse根据fieldProps新值无法触发更新
|
211
204
|
) {
|
212
205
|
showRef.current = _show;
|
213
206
|
disabledRef.current = _disabled;
|
214
207
|
requiredRef.current = _required;
|
215
208
|
rulesRef.current = _rules;
|
216
|
-
// originComponentRef.current = _component;
|
217
209
|
fieldPropsRef.current = _fieldProps;
|
218
210
|
reRender({});
|
219
211
|
return false;
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import { ProTableColumn } from '../../propsType';
|
3
|
-
export declare const formatColumn: ({ column, originalObj, dataSourceObj, rowKey, diffToolTip, wrapToolTipProps, scroll, onUpdateMinWidth, }: {
|
3
|
+
export declare const formatColumn: ({ column, originalObj, dataSourceObj, rowKey, diffToolTip, wrapToolTipProps, scroll, onUpdateMinWidth, isInNewRow, }: {
|
4
4
|
column: ProTableColumn;
|
5
5
|
originalObj: any;
|
6
6
|
dataSourceObj: any;
|
@@ -9,6 +9,7 @@ export declare const formatColumn: ({ column, originalObj, dataSourceObj, rowKey
|
|
9
9
|
wrapToolTipProps?: any;
|
10
10
|
scroll?: any;
|
11
11
|
onUpdateMinWidth?: any;
|
12
|
+
isInNewRow?: any;
|
12
13
|
}) => void;
|
13
14
|
/**
|
14
15
|
* 查找最近的父级className
|
@@ -57,7 +57,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
57
57
|
diffToolTip = _ref2.diffToolTip,
|
58
58
|
wrapToolTipProps = _ref2.wrapToolTipProps,
|
59
59
|
scroll = _ref2.scroll,
|
60
|
-
onUpdateMinWidth = _ref2.onUpdateMinWidth
|
60
|
+
onUpdateMinWidth = _ref2.onUpdateMinWidth,
|
61
|
+
isInNewRow = _ref2.isInNewRow;
|
61
62
|
var title = column.title,
|
62
63
|
valueType = column.valueType,
|
63
64
|
_column$format = column.format,
|
@@ -77,7 +78,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
77
78
|
originalDiffTip = _column$originalDiffT === void 0 ? true : _column$originalDiffT,
|
78
79
|
_column$toolTipProps = column.toolTipProps,
|
79
80
|
toolTipProps = _column$toolTipProps === void 0 ? {} : _column$toolTipProps,
|
80
|
-
minWidth = column.minWidth
|
81
|
+
minWidth = column.minWidth,
|
82
|
+
onDiff = column.onDiff;
|
81
83
|
// 仅在 {x: 'max-content', y: 300 } 且 column无指定 width minWidth 情况下 才开启 minWidth的自动计算
|
82
84
|
var isMaxContentOverFlow = (0, _lodash.isObject)(scroll) ? (scroll === null || scroll === void 0 ? void 0 : scroll.x) === 'max-content' && Reflect.ownKeys(scroll).includes('y') : false;
|
83
85
|
calcMinWidth({
|
@@ -114,7 +116,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
114
116
|
}
|
115
117
|
};
|
116
118
|
if (column === null || column === void 0 ? void 0 : column.render) {
|
117
|
-
if (!originalObj && Object.keys(originalObj !== null && originalObj !== void 0 ? originalObj : {}).length === 0) {
|
119
|
+
if (!originalObj && Object.keys(originalObj !== null && originalObj !== void 0 ? originalObj : {}).length === 0 && !onDiff) {
|
118
120
|
return;
|
119
121
|
}
|
120
122
|
var originalRender = column.render; // 保存原始的 render 方法
|
@@ -122,12 +124,27 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
122
124
|
column.render = function (value, record, index) {
|
123
125
|
var _originalObj$record$r;
|
124
126
|
var isFn = (0, _lodash.isFunction)(originalRender);
|
125
|
-
var _value = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(value, record !== null && record !== void 0 ? record : {}, index) :
|
127
|
+
var _value = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(value, record !== null && record !== void 0 ? record : {}, index) : null;
|
126
128
|
var originalValue = (0, _utils2.getOriginalValue)(value, record !== null && record !== void 0 ? record : {}, originalObj, rowKey, dataIndex);
|
127
|
-
var originalRenderValue = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(originalValue, (_originalObj$record$r = originalObj === null || originalObj === void 0 ? void 0 : originalObj[record === null || record === void 0 ? void 0 : record[rowKey]]) !== null && _originalObj$record$r !== void 0 ? _originalObj$record$r : {}, index) :
|
129
|
+
var originalRenderValue = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(originalValue, (_originalObj$record$r = originalObj === null || originalObj === void 0 ? void 0 : originalObj[record === null || record === void 0 ? void 0 : record[rowKey]]) !== null && _originalObj$record$r !== void 0 ? _originalObj$record$r : {}, index) : null;
|
130
|
+
var isInNewRowFlag = isInNewRow(record);
|
131
|
+
var extraDiffFlag = false;
|
132
|
+
// 把比对结果告诉我
|
133
|
+
if (onDiff) {
|
134
|
+
var isDiff = onDiff({
|
135
|
+
value: record,
|
136
|
+
originValue: originalObj === null || originalObj === void 0 ? void 0 : originalObj[record === null || record === void 0 ? void 0 : record[rowKey]]
|
137
|
+
});
|
138
|
+
if (!isDiff) {
|
139
|
+
originalValue = null;
|
140
|
+
} else {
|
141
|
+
originalValue = true;
|
142
|
+
extraDiffFlag = true;
|
143
|
+
}
|
144
|
+
}
|
128
145
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
129
146
|
valueType: valueType,
|
130
|
-
originalValue: originalValue
|
147
|
+
originalValue: !originalValue && originalValue !== 0 ? null : extraDiffFlag ? originalRenderValue !== null && originalRenderValue !== void 0 ? originalRenderValue : originalValue : originalRenderValue,
|
131
148
|
ellipsis: ellipsis,
|
132
149
|
width: width,
|
133
150
|
value: _value,
|
@@ -135,7 +152,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
135
152
|
currentValue: _value,
|
136
153
|
originalDiffTip: _originalDiffTip,
|
137
154
|
toolTipProps: _toolTipProps,
|
138
|
-
minWidth: minWidth
|
155
|
+
minWidth: minWidth,
|
156
|
+
isInNewRowFlag: isInNewRowFlag
|
139
157
|
});
|
140
158
|
};
|
141
159
|
return;
|
@@ -166,12 +184,18 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
166
184
|
originalRenderValue = '-';
|
167
185
|
}
|
168
186
|
if (!value && value !== 0 && renderValue === originalRenderValue) {
|
169
|
-
return
|
187
|
+
return (0, _jsxRuntime.jsx)("div", {
|
188
|
+
style: {
|
189
|
+
minWidth: minWidth
|
190
|
+
},
|
191
|
+
children: "-"
|
192
|
+
});
|
170
193
|
}
|
171
194
|
var node = (0, _jsxRuntime.jsxs)(_antd.Space, {
|
172
195
|
size: 8,
|
173
196
|
children: [prefixNode(value, record, index), renderValue, suffixNode(value, record, index)]
|
174
197
|
});
|
198
|
+
var isInNewRowFlag = isInNewRow(record);
|
175
199
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
176
200
|
valueType: valueType,
|
177
201
|
originalValue: originalValue === undefined ? undefined : originalRenderValue,
|
@@ -182,7 +206,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
182
206
|
currentValue: renderValue,
|
183
207
|
originalDiffTip: _originalDiffTip,
|
184
208
|
toolTipProps: _toolTipProps,
|
185
|
-
minWidth: minWidth
|
209
|
+
minWidth: minWidth,
|
210
|
+
isInNewRowFlag: isInNewRowFlag
|
186
211
|
});
|
187
212
|
};
|
188
213
|
// 千分位, 千分位带CNY前缀
|
@@ -201,8 +226,14 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
201
226
|
children: [prefixNode(value, record, index), renderValue, suffixNode(value, record, index)]
|
202
227
|
});
|
203
228
|
if (!value && value !== 0 && renderValue === originalRenderValue) {
|
204
|
-
|
229
|
+
(0, _jsxRuntime.jsx)("div", {
|
230
|
+
style: {
|
231
|
+
minWidth: minWidth
|
232
|
+
},
|
233
|
+
children: "-"
|
234
|
+
});
|
205
235
|
}
|
236
|
+
var isInNewRowFlag = isInNewRow(record);
|
206
237
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
207
238
|
valueType: valueType,
|
208
239
|
originalValue: originalValue === undefined ? undefined : originalRenderValue,
|
@@ -213,7 +244,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
213
244
|
currentValue: renderValue,
|
214
245
|
originalDiffTip: _originalDiffTip,
|
215
246
|
toolTipProps: _toolTipProps,
|
216
|
-
minWidth: minWidth
|
247
|
+
minWidth: minWidth,
|
248
|
+
isInNewRowFlag: isInNewRowFlag
|
217
249
|
});
|
218
250
|
};
|
219
251
|
} else if (['datePicker', 'date', 'dateTime', 'dateStartTime', 'dateEndTime', 'dateStartEndTime'].includes(valueType)) {
|
@@ -255,8 +287,14 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
255
287
|
children: [prefixNode(value, record, index), renderValue, suffixNode(value, record, index)]
|
256
288
|
});
|
257
289
|
if (!value && renderValue === originalRenderValue) {
|
258
|
-
|
290
|
+
(0, _jsxRuntime.jsx)("div", {
|
291
|
+
style: {
|
292
|
+
minWidth: minWidth
|
293
|
+
},
|
294
|
+
children: "-"
|
295
|
+
});
|
259
296
|
}
|
297
|
+
var isInNewRowFlag = isInNewRow(record);
|
260
298
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
261
299
|
valueType: valueType,
|
262
300
|
originalValue: originalValue === undefined ? undefined : originalRenderValue,
|
@@ -267,7 +305,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
267
305
|
currentValue: renderValue,
|
268
306
|
originalDiffTip: _originalDiffTip,
|
269
307
|
toolTipProps: _toolTipProps,
|
270
|
-
minWidth: minWidth
|
308
|
+
minWidth: minWidth,
|
309
|
+
isInNewRowFlag: isInNewRowFlag
|
271
310
|
});
|
272
311
|
};
|
273
312
|
} else if (['enumName', 'enumCodeName'].includes(valueType)) {
|
@@ -296,6 +335,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
296
335
|
size: 8,
|
297
336
|
children: [prefixNode(value, record, index), renderValue, suffixNode(value, record, index)]
|
298
337
|
});
|
338
|
+
var isInNewRowFlag = isInNewRow(record);
|
299
339
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
300
340
|
valueType: valueType,
|
301
341
|
originalValue: originalValue === undefined ? undefined : originalRenderValue,
|
@@ -306,7 +346,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
306
346
|
currentValue: renderValue,
|
307
347
|
originalDiffTip: _originalDiffTip,
|
308
348
|
toolTipProps: _toolTipProps,
|
309
|
-
minWidth: minWidth
|
349
|
+
minWidth: minWidth,
|
350
|
+
isInNewRowFlag: isInNewRowFlag
|
310
351
|
});
|
311
352
|
};
|
312
353
|
} else if (precision || prefix || suffix) {
|
@@ -322,8 +363,14 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
322
363
|
originalRenderValue = '-';
|
323
364
|
}
|
324
365
|
if (!value && value !== 0 && renderValue === originalRenderValue) {
|
325
|
-
|
366
|
+
(0, _jsxRuntime.jsx)("div", {
|
367
|
+
style: {
|
368
|
+
minWidth: minWidth
|
369
|
+
},
|
370
|
+
children: "-"
|
371
|
+
});
|
326
372
|
}
|
373
|
+
var isInNewRowFlag = isInNewRow(record);
|
327
374
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
328
375
|
valueType: valueType,
|
329
376
|
originalValue: originalValue === undefined ? undefined : originalRenderValue,
|
@@ -334,7 +381,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
334
381
|
currentValue: renderValue,
|
335
382
|
originalDiffTip: _originalDiffTip,
|
336
383
|
toolTipProps: _toolTipProps,
|
337
|
-
minWidth: minWidth
|
384
|
+
minWidth: minWidth,
|
385
|
+
isInNewRowFlag: isInNewRowFlag
|
338
386
|
});
|
339
387
|
};
|
340
388
|
} else if (valueType === 'address') {
|
@@ -347,10 +395,14 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
347
395
|
return !!item;
|
348
396
|
})) === null || _realValue$filter === void 0 ? void 0 : _realValue$filter.length) === 0;
|
349
397
|
if ((0, _lodash.isEqual)(value, originalValue) && isEmpty) {
|
350
|
-
|
398
|
+
(0, _jsxRuntime.jsx)("div", {
|
399
|
+
style: {
|
400
|
+
minWidth: minWidth
|
401
|
+
},
|
402
|
+
children: "-"
|
403
|
+
});
|
351
404
|
}
|
352
405
|
var className = (0, _classnames.default)({
|
353
|
-
'varied-cell': originalValue !== undefined,
|
354
406
|
'empty-cell': isEmpty
|
355
407
|
});
|
356
408
|
var renderValue = (0, _jsxRuntime.jsx)(_ProForm.default.ProCascader, {
|
@@ -365,21 +417,32 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
365
417
|
code: code,
|
366
418
|
value: originalRealValue
|
367
419
|
});
|
368
|
-
|
420
|
+
var renderNode = (0, _jsxRuntime.jsx)(_ProForm.default.ProCascader, {
|
369
421
|
className: className,
|
370
422
|
isView: true,
|
371
423
|
mode: "address",
|
372
424
|
code: code,
|
373
425
|
value: realValue,
|
374
|
-
tooltip:
|
375
|
-
|
376
|
-
|
377
|
-
|
378
|
-
|
426
|
+
tooltip: false
|
427
|
+
});
|
428
|
+
var isInNewRowFlag = isInNewRow(record);
|
429
|
+
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
430
|
+
valueType: valueType,
|
431
|
+
originalValue: originalValue === undefined ? undefined : originalRenderValue,
|
432
|
+
ellipsis: ellipsis !== null && ellipsis !== void 0 ? ellipsis : true,
|
433
|
+
width: width,
|
434
|
+
node: renderNode,
|
435
|
+
value: renderValue,
|
436
|
+
currentValue: renderValue,
|
437
|
+
originalDiffTip: _originalDiffTip,
|
438
|
+
toolTipProps: _toolTipProps,
|
439
|
+
minWidth: minWidth,
|
440
|
+
isInNewRowFlag: isInNewRowFlag
|
379
441
|
});
|
380
442
|
};
|
381
443
|
} else if (copyable) {
|
382
444
|
column.render = function (value, record, index) {
|
445
|
+
var isInNewRowFlag = isInNewRow(record);
|
383
446
|
return (0, _jsxRuntime.jsxs)(_antd.Space, {
|
384
447
|
size: 8,
|
385
448
|
children: [prefixNode(value, record, index), (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
@@ -391,7 +454,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
391
454
|
value: value,
|
392
455
|
currentValue: value,
|
393
456
|
toolTipProps: _toolTipProps,
|
394
|
-
minWidth: minWidth
|
457
|
+
minWidth: minWidth,
|
458
|
+
isInNewRowFlag: isInNewRowFlag
|
395
459
|
}), suffixNode(value, record, index)]
|
396
460
|
});
|
397
461
|
};
|
@@ -399,8 +463,14 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
399
463
|
column.render = function (value, record, index) {
|
400
464
|
var originalValue = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
401
465
|
if (!value && value !== 0 && value === originalValue) {
|
402
|
-
|
466
|
+
(0, _jsxRuntime.jsx)("div", {
|
467
|
+
style: {
|
468
|
+
minWidth: minWidth
|
469
|
+
},
|
470
|
+
children: "-"
|
471
|
+
});
|
403
472
|
}
|
473
|
+
var isInNewRowFlag = isInNewRow(record);
|
404
474
|
return (0, _jsxRuntime.jsxs)(_antd.Space, {
|
405
475
|
size: 8,
|
406
476
|
children: [prefixNode(value, record, index), (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
@@ -413,7 +483,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
413
483
|
currentValue: value || '-',
|
414
484
|
originalDiffTip: _originalDiffTip,
|
415
485
|
toolTipProps: _toolTipProps,
|
416
|
-
minWidth: minWidth
|
486
|
+
minWidth: minWidth,
|
487
|
+
isInNewRowFlag: isInNewRowFlag
|
417
488
|
}), suffixNode(value, record, index)]
|
418
489
|
});
|
419
490
|
};
|
@@ -425,8 +496,14 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
425
496
|
children: [prefixNode(value, record, index), value, suffixNode(value, record, index)]
|
426
497
|
});
|
427
498
|
if (!value && value !== 0 && value === originalValue) {
|
428
|
-
|
499
|
+
(0, _jsxRuntime.jsx)("div", {
|
500
|
+
style: {
|
501
|
+
minWidth: minWidth
|
502
|
+
},
|
503
|
+
children: "-"
|
504
|
+
});
|
429
505
|
}
|
506
|
+
var isInNewRowFlag = isInNewRow(record);
|
430
507
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
431
508
|
valueType: valueType,
|
432
509
|
originalValue: originalValue === undefined ? undefined : originalValue || '-',
|
@@ -437,7 +514,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
437
514
|
currentValue: value || '-',
|
438
515
|
originalDiffTip: _originalDiffTip,
|
439
516
|
toolTipProps: _toolTipProps,
|
440
|
-
minWidth: minWidth
|
517
|
+
minWidth: minWidth,
|
518
|
+
isInNewRowFlag: isInNewRowFlag
|
441
519
|
});
|
442
520
|
};
|
443
521
|
}
|
@@ -28,14 +28,15 @@ var RenderColumn = function RenderColumn(props) {
|
|
28
28
|
originalDiffTip = props.originalDiffTip,
|
29
29
|
_props$toolTipProps = props.toolTipProps,
|
30
30
|
toolTipProps = _props$toolTipProps === void 0 ? {} : _props$toolTipProps,
|
31
|
-
minWidth = props.minWidth
|
31
|
+
minWidth = props.minWidth,
|
32
|
+
isInNewRowFlag = props.isInNewRowFlag;
|
32
33
|
var _useSetState = (0, _ahooks.useSetState)({
|
33
34
|
tooltip: false
|
34
35
|
}),
|
35
36
|
_useSetState2 = (0, _slicedToArray2.default)(_useSetState, 2),
|
36
37
|
tooltip = _useSetState2[0].tooltip,
|
37
38
|
setState = _useSetState2[1];
|
38
|
-
if (originalValue
|
39
|
+
if ((originalValue || originalValue === 0) && !isInNewRowFlag) {
|
39
40
|
var renderNode = value ? node : '-';
|
40
41
|
if (ellipsis || originalDiffTip) {
|
41
42
|
if (ellipsis) {
|
@@ -56,9 +57,23 @@ var RenderColumn = function RenderColumn(props) {
|
|
56
57
|
width: width,
|
57
58
|
minWidth: minWidth
|
58
59
|
},
|
59
|
-
|
60
|
-
|
61
|
-
|
60
|
+
overlayClassName: "original-value-tootip",
|
61
|
+
title: (0, _jsxRuntime.jsx)(_antd.Space, {
|
62
|
+
direction: "vertical",
|
63
|
+
className: "changed-tooltip",
|
64
|
+
children: originalDiffTip ? (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
65
|
+
children: [(0, _jsxRuntime.jsxs)(_antd.Space, {
|
66
|
+
align: "start",
|
67
|
+
className: "original-value-container",
|
68
|
+
children: ["\u521D\u59CB\u503C\uFF1A", originalValue]
|
69
|
+
}), (0, _jsxRuntime.jsx)(_antd.Space, {
|
70
|
+
className: "current-value-container",
|
71
|
+
children: ellipsis ? (0, _jsxRuntime.jsxs)("span", {
|
72
|
+
children: ["\u5F53\u524D\u503C\uFF1A", currentValue]
|
73
|
+
}) : null
|
74
|
+
})]
|
75
|
+
}) : node
|
76
|
+
}),
|
62
77
|
getPopupContainer: function getPopupContainer(triggerNode) {
|
63
78
|
return triggerNode.parentNode;
|
64
79
|
}
|