@zat-design/sisyphus-react 3.9.1-beta.9 → 3.9.2-beta.1
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/dist/index.esm.css +28 -1
- package/dist/less.esm.css +28 -1
- package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +2 -1
- package/es/ProEditTable/propsType.d.ts +2 -0
- package/es/ProEnum/index.js +0 -1
- package/es/ProForm/components/combination/Group/index.js +15 -8
- package/es/ProForm/components/combination/Group/propsType.d.ts +2 -0
- package/es/ProForm/components/combination/Group/style/index.less +15 -0
- package/es/ProForm/components/combination/Group/utils.js +43 -9
- package/es/ProForm/components/combination/ProCascader/index.js +7 -1
- package/es/ProForm/components/render/ChangedWrapper.js +2 -1
- package/es/ProLayout/style/index.less +5 -0
- package/es/ProTable/components/FormatColumn/index.js +69 -29
- package/es/ProTable/components/RenderColumn/index.d.ts +2 -0
- package/es/ProTable/components/RenderColumn/index.js +3 -5
- package/es/ProTable/propsType.d.ts +4 -5
- package/es/ProTable/style/index.less +23 -10
- package/es/ProTable/utils/index.d.ts +2 -0
- package/es/ProTable/utils/index.js +16 -3
- package/lib/ProEditTable/components/RenderField/ListChangedWrapper.js +2 -1
- package/lib/ProEditTable/propsType.d.ts +2 -0
- package/lib/ProEnum/index.js +0 -1
- package/lib/ProForm/components/combination/Group/index.js +15 -8
- package/lib/ProForm/components/combination/Group/propsType.d.ts +2 -0
- package/lib/ProForm/components/combination/Group/style/index.less +15 -0
- package/lib/ProForm/components/combination/Group/utils.js +44 -9
- package/lib/ProForm/components/combination/ProCascader/index.js +7 -1
- package/lib/ProForm/components/render/ChangedWrapper.js +2 -1
- package/lib/ProLayout/style/index.less +5 -0
- package/lib/ProTable/components/FormatColumn/index.js +69 -29
- package/lib/ProTable/components/RenderColumn/index.d.ts +2 -0
- package/lib/ProTable/components/RenderColumn/index.js +3 -5
- package/lib/ProTable/propsType.d.ts +4 -5
- package/lib/ProTable/style/index.less +23 -10
- package/lib/ProTable/utils/index.d.ts +2 -0
- package/lib/ProTable/utils/index.js +16 -3
- package/package.json +2 -2
@@ -277,16 +277,29 @@
|
|
277
277
|
}
|
278
278
|
}
|
279
279
|
|
280
|
-
.@{ant-prefix}-table-cell
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
280
|
+
.@{ant-prefix}-table-cell {
|
281
|
+
.varied-cell {
|
282
|
+
margin-left: -8px;
|
283
|
+
padding: var(--zaui-space-size-xs, 4px) var(--zaui-space-size-sm, 8px);
|
284
|
+
|
285
|
+
background-color: var(--zaui-contract-bg; #fffaa1) !important;
|
286
|
+
border-radius: var(--zaui-border-radius, 8px);
|
287
|
+
.pro-form-view-container {
|
288
|
+
overflow: hidden;
|
289
|
+
white-space: nowrap;
|
290
|
+
text-overflow: ellipsis;
|
291
|
+
}
|
292
|
+
}
|
293
|
+
.add-cell{
|
294
|
+
margin-left: -8px;
|
295
|
+
padding: var(--zaui-space-size-xs, 4px) var(--zaui-space-size-sm, 8px);
|
296
|
+
background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
|
297
|
+
border-radius: var(--zaui-border-radius, 8px);
|
298
|
+
.pro-form-view-container {
|
299
|
+
overflow: hidden;
|
300
|
+
white-space: nowrap;
|
301
|
+
text-overflow: ellipsis;
|
302
|
+
}
|
290
303
|
}
|
291
304
|
}
|
292
305
|
|
@@ -12,9 +12,11 @@ export declare const getDecimalDigits: (num?: number) => number;
|
|
12
12
|
* @param any originalObj
|
13
13
|
* @param {any} dataIndex
|
14
14
|
* @return {any} isChanged 返回bool值,表示存在比对
|
15
|
+
* @return {any} isAddCell 返回bool值,表示存在比对
|
15
16
|
*/
|
16
17
|
export declare const getOriginalValue: (value: any, record: any, originalObj: any, rowKey: any, dataIndex: any) => {
|
17
18
|
originalValue: any;
|
19
|
+
isAddCell: boolean;
|
18
20
|
isChanged: boolean;
|
19
21
|
};
|
20
22
|
export declare const getColumnDataIndex: (dataIndex: string | string[]) => string;
|
@@ -1,4 +1,6 @@
|
|
1
1
|
import { get, isEqual } from 'lodash';
|
2
|
+
import { validate } from '@zat-design/utils';
|
3
|
+
var isEmpty = validate.isEmpty;
|
2
4
|
/**
|
3
5
|
* 获取小数点后的位数
|
4
6
|
* @param num 数字
|
@@ -17,25 +19,36 @@ export var getDecimalDigits = function getDecimalDigits() {
|
|
17
19
|
* @param any originalObj
|
18
20
|
* @param {any} dataIndex
|
19
21
|
* @return {any} isChanged 返回bool值,表示存在比对
|
22
|
+
* @return {any} isAddCell 返回bool值,表示存在比对
|
20
23
|
*/
|
21
24
|
export var getOriginalValue = function getOriginalValue(value, record, originalObj, rowKey, dataIndex) {
|
22
25
|
if (!originalObj) {
|
23
26
|
return {
|
24
27
|
originalValue: null,
|
25
|
-
isChanged: null
|
28
|
+
isChanged: null,
|
29
|
+
isAddCell: null
|
26
30
|
};
|
27
31
|
}
|
28
32
|
var originalRecord = get(originalObj, get(record, rowKey));
|
29
33
|
var originalValue = get(originalRecord, dataIndex);
|
34
|
+
if (isEmpty(originalValue) && !isEmpty(value)) {
|
35
|
+
return {
|
36
|
+
originalValue: originalValue,
|
37
|
+
isAddCell: true,
|
38
|
+
isChanged: false
|
39
|
+
};
|
40
|
+
}
|
30
41
|
if (!isEqual(originalValue, value)) {
|
31
42
|
return {
|
32
43
|
originalValue: originalValue,
|
33
|
-
isChanged: true
|
44
|
+
isChanged: true,
|
45
|
+
isAddCell: false
|
34
46
|
};
|
35
47
|
}
|
36
48
|
return {
|
37
49
|
originalValue: null,
|
38
|
-
isChanged: false
|
50
|
+
isChanged: false,
|
51
|
+
isAddCell: false
|
39
52
|
};
|
40
53
|
};
|
41
54
|
export var getColumnDataIndex = function getColumnDataIndex(dataIndex) {
|
@@ -123,7 +123,8 @@ var ListChangedWrapper = function ListChangedWrapper(props) {
|
|
123
123
|
var noChange = !equalWith && (!originalValues || isDiffAll ? false : (0, _utils.isEmpty)(originalValue));
|
124
124
|
var diffType = (0, _react.useMemo)(function () {
|
125
125
|
if (!isWatch || noChange) return 'same';
|
126
|
-
var _value = normalize ? normalize(props[valuePropName])
|
126
|
+
var _value = normalize ? normalize(props[valuePropName], undefined, undefined, true) // true 代表是值比对时的调用
|
127
|
+
: props[valuePropName];
|
127
128
|
return (0, _diffOriginal.diffOriginal)({
|
128
129
|
value: _value,
|
129
130
|
originalValue: originalValue,
|
@@ -8,6 +8,7 @@ import type { ColumnType, TableProps } from 'antd/es/table';
|
|
8
8
|
import type { FormInstance, FormItemProps } from 'antd/es/form';
|
9
9
|
import type { FunctionArgs, ProRule } from '../ProForm/propsType';
|
10
10
|
import { ProFormValueType, ColumnPropsMap } from '../ProForm/components/render/propsType';
|
11
|
+
import { DiffOriginalParams } from '../ProForm/utils/diffOriginal';
|
11
12
|
export type ActionType = 'edit' | 'delete' | 'save' | 'cancel' | 'add' | 'mulDelete' | 'custom';
|
12
13
|
export type ShowFunction<T> = (record?: T, options?: {
|
13
14
|
index?: number;
|
@@ -105,6 +106,7 @@ export interface ProColumnsProps<Values = any, T = any> extends Omit<FormItemPro
|
|
105
106
|
hiddenNames?: NamePath[] | NamePath[][];
|
106
107
|
rules?: ProRule[] | RulesFn<T>;
|
107
108
|
confirm?: boolean | ModalFuncProps | FunctionArgs<Values, boolean | ModalFuncProps | void>;
|
109
|
+
onDiff?: DiffOriginalParams['equalWith'];
|
108
110
|
[key: string]: any;
|
109
111
|
}
|
110
112
|
export type ProEditTableColumnsProps<K = any> = ProColumnsProps & ColumnPropsMap<K, 'ProEditTable'>;
|
package/lib/ProEnum/index.js
CHANGED
@@ -232,7 +232,6 @@ var ProEnum = function ProEnum(props) {
|
|
232
232
|
if (!code && !dataSource && !useRequest) {
|
233
233
|
var _locale$ProEnum4;
|
234
234
|
_antd.message.error(_locale.default === null || _locale.default === void 0 ? void 0 : (_locale$ProEnum4 = _locale.default.ProEnum) === null || _locale$ProEnum4 === void 0 ? void 0 : _locale$ProEnum4.errorNoEnumType);
|
235
|
-
// return;
|
236
235
|
}
|
237
236
|
var transToLabel = function transToLabel(value) {
|
238
237
|
var list = dataList && dataList.length ? dataList : enumLists;
|
@@ -76,23 +76,30 @@ var Group = function Group(props) {
|
|
76
76
|
id: id,
|
77
77
|
children: space.compact || (space === null || space === void 0 ? void 0 : space.separator) ? (0, _jsxRuntime.jsx)(_antd.Space.Compact, {
|
78
78
|
children: columns.map(function (column, index) {
|
79
|
-
|
79
|
+
column.otherProps = otherProps;
|
80
|
+
// 自定义间隔移除对于参数
|
81
|
+
if (column === null || column === void 0 ? void 0 : column.separator) {
|
82
|
+
delete column.separator;
|
83
|
+
delete column.otherProps;
|
84
|
+
}
|
85
|
+
return (0, _jsxRuntime.jsx)(_ComRender.default, (0, _objectSpread2.default)({
|
80
86
|
contextProps: contextProps,
|
81
87
|
isView: isParentView || isView
|
82
|
-
}, column),
|
83
|
-
otherProps: otherProps
|
84
|
-
}), column.name);
|
88
|
+
}, column), column.name || index);
|
85
89
|
})
|
86
90
|
}) : (0, _jsxRuntime.jsx)(_antd.Space, (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
87
91
|
align: "start"
|
88
92
|
}, (0, _lodash.omit)(space, ['separator', 'compact'])), {}, {
|
89
93
|
children: columns.map(function (column, index) {
|
90
|
-
|
94
|
+
column.otherProps = otherProps;
|
95
|
+
if (column === null || column === void 0 ? void 0 : column.separator) {
|
96
|
+
delete column.separator;
|
97
|
+
delete column.otherProps;
|
98
|
+
}
|
99
|
+
return (0, _jsxRuntime.jsx)(_ComRender.default, (0, _objectSpread2.default)({
|
91
100
|
contextProps: contextProps,
|
92
101
|
isView: isParentView || isView
|
93
|
-
}, column),
|
94
|
-
otherProps: otherProps
|
95
|
-
}), column.name);
|
102
|
+
}, column), column.name || index);
|
96
103
|
})
|
97
104
|
}))
|
98
105
|
});
|
@@ -104,6 +104,21 @@
|
|
104
104
|
}
|
105
105
|
}
|
106
106
|
|
107
|
+
.pro-select {
|
108
|
+
.@{ant-prefix}-select .@{ant-prefix}-select-selector{
|
109
|
+
border-radius: 0 !important;
|
110
|
+
}
|
111
|
+
&:first-child .@{ant-prefix}-select .@{ant-prefix}-select-selector {
|
112
|
+
border-start-start-radius: 4px !important;
|
113
|
+
border-end-start-radius: 4px !important;
|
114
|
+
}
|
115
|
+
|
116
|
+
&:last-child .@{ant-prefix}-select .@{ant-prefix}-select-selector {
|
117
|
+
border-start-end-radius: 4px !important;
|
118
|
+
border-end-end-radius: 4px!important;
|
119
|
+
}
|
120
|
+
}
|
121
|
+
|
107
122
|
.@{ant-prefix}-select {
|
108
123
|
.@{ant-prefix}-select-selector {
|
109
124
|
.border-radius(0, 0, 0, 0);
|
@@ -12,10 +12,13 @@ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
12
12
|
var _jsxRuntime = require("react/jsx-runtime");
|
13
13
|
var _react = require("react");
|
14
14
|
var _lodash = require("lodash");
|
15
|
+
var _utils = require("@zat-design/utils");
|
15
16
|
var _antd = require("antd");
|
16
17
|
var _valueType = _interopRequireDefault(require("../../../utils/valueType"));
|
17
18
|
var _useDeepCompareMemo = require("../../../utils/useDeepCompareMemo");
|
18
19
|
var _tools = require("../../../../ProEditTable/utils/tools");
|
20
|
+
/* eslint-disable no-lonely-if */
|
21
|
+
|
19
22
|
/**
|
20
23
|
* 插入间隔符
|
21
24
|
* @param columns 表单配置数组
|
@@ -25,20 +28,52 @@ var insertSeparator = exports.insertSeparator = function insertSeparator(columns
|
|
25
28
|
if (!(space === null || space === void 0 ? void 0 : space.separator)) {
|
26
29
|
return columns;
|
27
30
|
}
|
31
|
+
var separatorIndexs = function () {
|
32
|
+
var reuslt = [];
|
33
|
+
if (_utils.validate.isEmpty(space === null || space === void 0 ? void 0 : space.separatorIndex)) {
|
34
|
+
return reuslt;
|
35
|
+
}
|
36
|
+
// 如果 index 是数字,将其转换为数组
|
37
|
+
if (typeof (space === null || space === void 0 ? void 0 : space.separatorIndex) === 'number') {
|
38
|
+
reuslt.push(space.separatorIndex);
|
39
|
+
}
|
40
|
+
if (Array.isArray(space.separatorIndex)) {
|
41
|
+
reuslt = reuslt.concat(space.separatorIndex);
|
42
|
+
}
|
43
|
+
return reuslt;
|
44
|
+
}();
|
28
45
|
return columns.reduce(function (result, current, index, array) {
|
29
46
|
// 将当前元素添加到结果数组中
|
30
47
|
result.push(current);
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
48
|
+
if (separatorIndexs === null || separatorIndexs === void 0 ? void 0 : separatorIndexs.length) {
|
49
|
+
separatorIndexs.forEach(function (separatorIndex) {
|
50
|
+
if (index === separatorIndex) {
|
51
|
+
result.push({
|
52
|
+
separator: true,
|
53
|
+
component: (0, _jsxRuntime.jsx)(_antd.Button, {
|
54
|
+
className: "group-separator",
|
55
|
+
children: space.separator
|
56
|
+
}),
|
57
|
+
fieldProps: {
|
58
|
+
disabled: true
|
59
|
+
}
|
60
|
+
});
|
40
61
|
}
|
41
62
|
});
|
63
|
+
} else {
|
64
|
+
// 如果当前元素不是最后一个元素,则添加间隔符
|
65
|
+
if (index < array.length - 1) {
|
66
|
+
result.push({
|
67
|
+
separator: true,
|
68
|
+
component: (0, _jsxRuntime.jsx)(_antd.Button, {
|
69
|
+
className: "group-separator",
|
70
|
+
children: space.separator
|
71
|
+
}),
|
72
|
+
fieldProps: {
|
73
|
+
disabled: true
|
74
|
+
}
|
75
|
+
});
|
76
|
+
}
|
42
77
|
}
|
43
78
|
return result;
|
44
79
|
}, []);
|
@@ -35,11 +35,17 @@ var _filterDataSource = function filterDataSource(dataSource, level, fieldNames)
|
|
35
35
|
});
|
36
36
|
};
|
37
37
|
var getViewLabel = function getViewLabel(_ref) {
|
38
|
+
var _value2;
|
38
39
|
var dataSource = _ref.dataSource,
|
39
40
|
value = _ref.value;
|
41
|
+
var _value = value;
|
40
42
|
var viewLabel = [];
|
43
|
+
// fix: value是string类型,需要转为数组
|
44
|
+
if (_value && !Array.isArray(_value)) {
|
45
|
+
_value = [value];
|
46
|
+
}
|
41
47
|
// 根据dataSource得到label数组,查看模式展示需要
|
42
|
-
|
48
|
+
(_value2 = _value) === null || _value2 === void 0 ? void 0 : _value2.forEach(function (value, index) {
|
43
49
|
var _dataSource;
|
44
50
|
var temp = (_dataSource = dataSource) === null || _dataSource === void 0 ? void 0 : _dataSource.find(function (item) {
|
45
51
|
return (item === null || item === void 0 ? void 0 : item.value) === value;
|
@@ -49,7 +49,8 @@ var ChangedWrapper = function ChangedWrapper(props) {
|
|
49
49
|
var noChange = !equalWith && (!originalValues || isDiffAll ? false : (0, _utils.isEmpty)(originalValue));
|
50
50
|
var diffType = (0, _react.useMemo)(function () {
|
51
51
|
if (!isWatch || noChange) return 'same';
|
52
|
-
var _value = normalize ? normalize(props[valuePropName])
|
52
|
+
var _value = normalize ? normalize(props[valuePropName], undefined, undefined, true) // true 代表是值比对时的调用
|
53
|
+
: props[valuePropName];
|
53
54
|
return (0, _diffOriginal.diffOriginal)({
|
54
55
|
originalValue: originalValue,
|
55
56
|
value: _value,
|
@@ -119,9 +119,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
119
119
|
}
|
120
120
|
};
|
121
121
|
if (column === null || column === void 0 ? void 0 : column.render) {
|
122
|
-
if (!originalObj && Object.keys(originalObj
|
123
|
-
|
124
|
-
}
|
122
|
+
// if (!originalObj && Object.keys(originalObj ?? {}).length === 0 && !onDiff) {
|
123
|
+
// return;
|
124
|
+
// }
|
125
125
|
var originalRender = column.render; // 保存原始的 render 方法
|
126
126
|
// 自定义render 手动重载下
|
127
127
|
column.render = function (value, record, index) {
|
@@ -129,8 +129,10 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
129
129
|
var _value = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(value, record !== null && record !== void 0 ? record : {}, index) : null;
|
130
130
|
var originalResult = (0, _utils2.getOriginalValue)(value, record !== null && record !== void 0 ? record : {}, originalObj, rowKey, dataIndex);
|
131
131
|
var originalValue = originalResult.originalValue;
|
132
|
-
var isChanged = originalResult.isChanged
|
132
|
+
var isChanged = originalResult.isChanged,
|
133
|
+
isAddCell = originalResult.isAddCell;
|
133
134
|
var isInNewRowFlag = isInNewRow(record);
|
135
|
+
var _isAddCell = isAddCell;
|
134
136
|
otherProps.isChanged = isChanged;
|
135
137
|
// 存在比对
|
136
138
|
if ((0, _lodash.isFunction)(otherProps === null || otherProps === void 0 ? void 0 : otherProps.viewRender) && (diffConfig === null || diffConfig === void 0 ? void 0 : diffConfig.originalDataSource)) {
|
@@ -148,6 +150,27 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
148
150
|
}
|
149
151
|
originalValue = diffResult;
|
150
152
|
}
|
153
|
+
// 存在自定义onDiff比对
|
154
|
+
if ((0, _lodash.isFunction)(onDiff)) {
|
155
|
+
var _originalObj$record$r2;
|
156
|
+
var _diffResult = onDiff({
|
157
|
+
originalValue: originalValue,
|
158
|
+
originalRecord: (_originalObj$record$r2 = originalObj === null || originalObj === void 0 ? void 0 : originalObj[record === null || record === void 0 ? void 0 : record[rowKey]]) !== null && _originalObj$record$r2 !== void 0 ? _originalObj$record$r2 : {},
|
159
|
+
value: value,
|
160
|
+
record: record,
|
161
|
+
index: index
|
162
|
+
});
|
163
|
+
if (_diffResult === 'changed') {
|
164
|
+
otherProps.isChanged = true;
|
165
|
+
}
|
166
|
+
if (_diffResult === 'same') {
|
167
|
+
otherProps.isChanged = false;
|
168
|
+
}
|
169
|
+
if (_diffResult === 'add') {
|
170
|
+
_isAddCell = true;
|
171
|
+
otherProps.isChanged = false;
|
172
|
+
}
|
173
|
+
}
|
151
174
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherProps), {}, {
|
152
175
|
valueType: valueType,
|
153
176
|
originalValue: (0, _utils3.isEmpty)(originalValue) ? null : originalValue,
|
@@ -158,7 +181,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
158
181
|
currentValue: _value,
|
159
182
|
toolTipProps: _toolTipProps,
|
160
183
|
minWidth: minWidth,
|
161
|
-
isInNewRowFlag: isInNewRowFlag
|
184
|
+
isInNewRowFlag: isInNewRowFlag,
|
185
|
+
isAddCell: _isAddCell
|
162
186
|
}));
|
163
187
|
};
|
164
188
|
return;
|
@@ -183,8 +207,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
183
207
|
var realValue = _utils.tools.calc(Number(value !== null && value !== void 0 ? value : 0), '*', multiple);
|
184
208
|
var renderValue = (0, _utils2.getDecimalDigits)(value) > valueTypePrecision ? realValue : realValue.toFixed(valueTypePrecision);
|
185
209
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
186
|
-
var
|
187
|
-
|
210
|
+
var isChanged = originalResult.isChanged,
|
211
|
+
originalValue = originalResult.originalValue,
|
212
|
+
isAddCell = originalResult.isAddCell;
|
188
213
|
otherProps.isChanged = isChanged;
|
189
214
|
var originalRealValue = _utils.tools.calc(Number(originalValue || null), '*', multiple);
|
190
215
|
var originalRenderValue = (0, _utils2.getDecimalDigits)(originalValue) > valueTypePrecision ? originalRealValue : originalRealValue.toFixed(valueTypePrecision);
|
@@ -214,7 +239,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
214
239
|
currentValue: renderValue,
|
215
240
|
toolTipProps: _toolTipProps,
|
216
241
|
minWidth: minWidth,
|
217
|
-
isInNewRowFlag: isInNewRowFlag
|
242
|
+
isInNewRowFlag: isInNewRowFlag,
|
243
|
+
isAddCell: isAddCell
|
218
244
|
}));
|
219
245
|
};
|
220
246
|
// 千分位, 千分位带CNY前缀
|
@@ -223,8 +249,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
223
249
|
var valueStr = valueTypePrecision ? "".concat(Number(value).toFixed(valueTypePrecision)) : "".concat(value);
|
224
250
|
var renderValue = valueStr.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
225
251
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
226
|
-
var
|
227
|
-
|
252
|
+
var isChanged = originalResult.isChanged,
|
253
|
+
originalValue = originalResult.originalValue,
|
254
|
+
isAddCell = originalResult.isAddCell;
|
228
255
|
otherProps.isChanged = isChanged;
|
229
256
|
var originalRealValue = valueTypePrecision ? "".concat(Number(originalValue).toFixed(valueTypePrecision)) : "".concat(originalValue);
|
230
257
|
var originalRenderValue = originalRealValue.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
@@ -254,7 +281,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
254
281
|
currentValue: renderValue,
|
255
282
|
toolTipProps: _toolTipProps,
|
256
283
|
minWidth: minWidth,
|
257
|
-
isInNewRowFlag: isInNewRowFlag
|
284
|
+
isInNewRowFlag: isInNewRowFlag,
|
285
|
+
isAddCell: isAddCell
|
258
286
|
}));
|
259
287
|
};
|
260
288
|
} else if (['datePicker', 'date', 'dateTime', 'dateStartTime', 'dateEndTime', 'dateStartEndTime'].includes(valueType)) {
|
@@ -262,8 +290,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
262
290
|
var _moment, _moment2, _moment3, _moment4, _moment5, _moment6, _moment7, _moment8, _moment9, _moment10, _moment11, _moment12, _moment13, _moment14;
|
263
291
|
var renderValue = (_moment = (0, _moment15.default)(value)) === null || _moment === void 0 ? void 0 : _moment.format(format);
|
264
292
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
265
|
-
var
|
266
|
-
|
293
|
+
var isChanged = originalResult.isChanged,
|
294
|
+
originalValue = originalResult.originalValue,
|
295
|
+
isAddCell = originalResult.isAddCell;
|
267
296
|
otherProps.isChanged = isChanged;
|
268
297
|
var originalRenderValue = (_moment2 = (0, _moment15.default)(originalValue)) === null || _moment2 === void 0 ? void 0 : _moment2.format(format);
|
269
298
|
switch (valueType) {
|
@@ -317,7 +346,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
317
346
|
currentValue: renderValue,
|
318
347
|
toolTipProps: _toolTipProps,
|
319
348
|
minWidth: minWidth,
|
320
|
-
isInNewRowFlag: isInNewRowFlag
|
349
|
+
isInNewRowFlag: isInNewRowFlag,
|
350
|
+
isAddCell: isAddCell
|
321
351
|
}));
|
322
352
|
};
|
323
353
|
} else if (['enumName', 'enumCodeName'].includes(valueType)) {
|
@@ -325,8 +355,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
325
355
|
var realCode = typeof code === 'function' ? code(value, record) : code;
|
326
356
|
var renderValue = (0, _getEnumLabel.default)(realCode, value, valueType === 'enumCodeName');
|
327
357
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
328
|
-
var
|
329
|
-
|
358
|
+
var isChanged = originalResult.isChanged,
|
359
|
+
originalValue = originalResult.originalValue,
|
360
|
+
isAddCell = originalResult.isAddCell;
|
330
361
|
otherProps.isChanged = isChanged;
|
331
362
|
var originalRenderValue = (0, _getEnumLabel.default)(realCode, originalValue, valueType === 'enumCodeName');
|
332
363
|
if (Array.isArray(column === null || column === void 0 ? void 0 : column.codeValues) && !realCode) {
|
@@ -360,15 +391,17 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
360
391
|
currentValue: renderValue,
|
361
392
|
toolTipProps: _toolTipProps,
|
362
393
|
minWidth: minWidth,
|
363
|
-
isInNewRowFlag: isInNewRowFlag
|
394
|
+
isInNewRowFlag: isInNewRowFlag,
|
395
|
+
isAddCell: isAddCell
|
364
396
|
}));
|
365
397
|
};
|
366
398
|
} else if (precision || prefix || suffix) {
|
367
399
|
column.render = function (value, record, index) {
|
368
400
|
var renderValue = value === 'number' ? value.toFixed(precision) : value;
|
369
401
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
370
|
-
var
|
371
|
-
|
402
|
+
var isChanged = originalResult.isChanged,
|
403
|
+
originalValue = originalResult.originalValue,
|
404
|
+
isAddCell = originalResult.isAddCell;
|
372
405
|
otherProps.isChanged = isChanged;
|
373
406
|
var originalRenderValue = originalValue === 'number' ? originalValue.toFixed(precision) : originalValue;
|
374
407
|
var node = (0, _jsxRuntime.jsxs)(_antd.Space, {
|
@@ -397,7 +430,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
397
430
|
currentValue: renderValue,
|
398
431
|
toolTipProps: _toolTipProps,
|
399
432
|
minWidth: minWidth,
|
400
|
-
isInNewRowFlag: isInNewRowFlag
|
433
|
+
isInNewRowFlag: isInNewRowFlag,
|
434
|
+
isAddCell: isAddCell
|
401
435
|
}));
|
402
436
|
};
|
403
437
|
} else if (valueType === 'address') {
|
@@ -405,8 +439,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
405
439
|
var _realValue$filter;
|
406
440
|
var realValue = transform ? transform(value, record) : value;
|
407
441
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
408
|
-
var
|
409
|
-
|
442
|
+
var isChanged = originalResult.isChanged,
|
443
|
+
originalValue = originalResult.originalValue,
|
444
|
+
isAddCell = originalResult.isAddCell;
|
410
445
|
otherProps.isChanged = isChanged;
|
411
446
|
var originalRealValue = transform ? transform(originalValue, record) : originalValue;
|
412
447
|
var isEmpty = !realValue || Array.isArray(realValue) && (realValue === null || realValue === void 0 ? void 0 : (_realValue$filter = realValue.filter(function (item) {
|
@@ -454,7 +489,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
454
489
|
currentValue: renderValue,
|
455
490
|
toolTipProps: _toolTipProps,
|
456
491
|
minWidth: minWidth,
|
457
|
-
isInNewRowFlag: isInNewRowFlag
|
492
|
+
isInNewRowFlag: isInNewRowFlag,
|
493
|
+
isAddCell: isAddCell
|
458
494
|
}));
|
459
495
|
};
|
460
496
|
} else if (copyable) {
|
@@ -479,8 +515,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
479
515
|
} else if (ellipsis) {
|
480
516
|
column.render = function (value, record, index) {
|
481
517
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
482
|
-
var
|
483
|
-
|
518
|
+
var isChanged = originalResult.isChanged,
|
519
|
+
originalValue = originalResult.originalValue,
|
520
|
+
isAddCell = originalResult.isAddCell;
|
484
521
|
otherProps.isChanged = isChanged;
|
485
522
|
if (!value && value !== 0 && value === originalValue) {
|
486
523
|
(0, _jsxRuntime.jsx)("div", {
|
@@ -503,15 +540,17 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
503
540
|
currentValue: value || '-',
|
504
541
|
toolTipProps: _toolTipProps,
|
505
542
|
minWidth: minWidth,
|
506
|
-
isInNewRowFlag: isInNewRowFlag
|
543
|
+
isInNewRowFlag: isInNewRowFlag,
|
544
|
+
isAddCell: isAddCell
|
507
545
|
})), suffixNode(value, record, index)]
|
508
546
|
});
|
509
547
|
};
|
510
548
|
} else {
|
511
549
|
column.render = function (value, record, index) {
|
512
550
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
513
|
-
var
|
514
|
-
|
551
|
+
var isChanged = originalResult.isChanged,
|
552
|
+
originalValue = originalResult.originalValue,
|
553
|
+
isAddCell = originalResult.isAddCell;
|
515
554
|
otherProps.isChanged = isChanged;
|
516
555
|
var node = (0, _jsxRuntime.jsxs)(_antd.Space, {
|
517
556
|
size: 8,
|
@@ -536,7 +575,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
536
575
|
currentValue: value || '-',
|
537
576
|
toolTipProps: _toolTipProps,
|
538
577
|
minWidth: minWidth,
|
539
|
-
isInNewRowFlag: isInNewRowFlag
|
578
|
+
isInNewRowFlag: isInNewRowFlag,
|
579
|
+
isAddCell: isAddCell
|
540
580
|
}));
|
541
581
|
};
|
542
582
|
}
|
@@ -39,7 +39,8 @@ var RenderColumn = function RenderColumn(props) {
|
|
39
39
|
tooltip = _useSetState2[0].tooltip,
|
40
40
|
setState = _useSetState2[1];
|
41
41
|
var cellDiffCls = (0, _classnames.default)({
|
42
|
-
'varied-cell': props === null || props === void 0 ? void 0 : props.isChanged
|
42
|
+
'varied-cell': props === null || props === void 0 ? void 0 : props.isChanged,
|
43
|
+
'add-cell': props === null || props === void 0 ? void 0 : props.isAddCell
|
43
44
|
});
|
44
45
|
// 比对场景走的逻辑
|
45
46
|
if (!isInNewRowFlag && (0, _lodash.isBoolean)(props === null || props === void 0 ? void 0 : props.isChanged)) {
|
@@ -99,10 +100,7 @@ var RenderColumn = function RenderColumn(props) {
|
|
99
100
|
children: renderNode
|
100
101
|
}));
|
101
102
|
}
|
102
|
-
|
103
|
-
return renderNode;
|
104
|
-
}
|
105
|
-
return (0, _jsxRuntime.jsx)("span", {
|
103
|
+
return (0, _jsxRuntime.jsx)("div", {
|
106
104
|
className: cellDiffCls,
|
107
105
|
style: {
|
108
106
|
width: width,
|
@@ -40,11 +40,10 @@ export interface ProTableColumn extends Omit<ColumnType<any>, 'dataIndex'> {
|
|
40
40
|
toolTipProps?: TooltipProps & React.RefAttributes<unknown>;
|
41
41
|
transform?: (value: any, record?: any) => string[];
|
42
42
|
show?: boolean | (() => boolean);
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
}) =>
|
47
|
-
viewRender?: ({ value, record, index, originalValue, originalRecord }: any) => any;
|
43
|
+
/** 自定义比对函数, 触发条件必须写render */
|
44
|
+
onDiff?: ({ value, record, index, originalValue, originalRecord }: any) => any;
|
45
|
+
/** 自定义提示render, 触发条件必须写render */
|
46
|
+
viewRender?: ({ value, record, index, originalValue, originalRecord }: any) => 'same' | 'changed' | 'add' | undefined;
|
48
47
|
isChanged?: boolean | null;
|
49
48
|
}
|
50
49
|
export interface CreateTreeFromArrayOptions {
|
@@ -277,16 +277,29 @@
|
|
277
277
|
}
|
278
278
|
}
|
279
279
|
|
280
|
-
.@{ant-prefix}-table-cell
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
280
|
+
.@{ant-prefix}-table-cell {
|
281
|
+
.varied-cell {
|
282
|
+
margin-left: -8px;
|
283
|
+
padding: var(--zaui-space-size-xs, 4px) var(--zaui-space-size-sm, 8px);
|
284
|
+
|
285
|
+
background-color: var(--zaui-contract-bg; #fffaa1) !important;
|
286
|
+
border-radius: var(--zaui-border-radius, 8px);
|
287
|
+
.pro-form-view-container {
|
288
|
+
overflow: hidden;
|
289
|
+
white-space: nowrap;
|
290
|
+
text-overflow: ellipsis;
|
291
|
+
}
|
292
|
+
}
|
293
|
+
.add-cell{
|
294
|
+
margin-left: -8px;
|
295
|
+
padding: var(--zaui-space-size-xs, 4px) var(--zaui-space-size-sm, 8px);
|
296
|
+
background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
|
297
|
+
border-radius: var(--zaui-border-radius, 8px);
|
298
|
+
.pro-form-view-container {
|
299
|
+
overflow: hidden;
|
300
|
+
white-space: nowrap;
|
301
|
+
text-overflow: ellipsis;
|
302
|
+
}
|
290
303
|
}
|
291
304
|
}
|
292
305
|
|