@zat-design/sisyphus-react 3.9.4 → 3.9.5-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/.vscode/extensions.json +5 -0
- package/dist/index.esm.css +42 -1
- package/dist/less.esm.css +38 -0
- package/es/ProEditTable/components/RenderField/ListChangedWrapper.d.ts +1 -1
- package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +13 -10
- package/es/ProEditTable/components/RenderField/index.js +42 -32
- package/es/ProEditTable/propsType.d.ts +1 -0
- package/es/ProEditTable/style/index.less +41 -0
- package/es/ProEditTable/utils/diffOriginal.d.ts +21 -0
- package/es/ProEditTable/utils/diffOriginal.js +65 -0
- package/es/ProEnum/index.js +1 -1
- package/es/ProForm/components/combination/Group/component/ComRender.js +9 -1
- package/es/ProForm/components/combination/Group/index.js +1 -1
- package/es/ProForm/components/combination/Group/utils.js +1 -1
- package/es/ProForm/style/index.less +8 -0
- package/es/ProForm/utils/diffOriginal.js +11 -8
- package/es/ProTable/components/FormatColumn/index.js +1 -1
- package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +36 -32
- package/es/ProTable/index.js +22 -15
- package/es/ProTable/propsType.d.ts +3 -2
- package/es/style/theme/antd.less +4 -1
- package/lib/ProEditTable/components/RenderField/ListChangedWrapper.d.ts +1 -1
- package/lib/ProEditTable/components/RenderField/ListChangedWrapper.js +13 -10
- package/lib/ProEditTable/components/RenderField/index.js +42 -32
- package/lib/ProEditTable/propsType.d.ts +1 -0
- package/lib/ProEditTable/style/index.less +41 -0
- package/lib/ProEditTable/utils/diffOriginal.d.ts +21 -0
- package/lib/ProEditTable/utils/diffOriginal.js +71 -0
- package/lib/ProEnum/index.js +1 -1
- package/lib/ProForm/components/combination/Group/component/ComRender.js +8 -0
- package/lib/ProForm/components/combination/Group/index.js +1 -1
- package/lib/ProForm/components/combination/Group/utils.js +1 -1
- package/lib/ProForm/style/index.less +8 -0
- package/lib/ProForm/utils/diffOriginal.js +11 -8
- package/lib/ProTable/components/FormatColumn/index.js +1 -1
- package/lib/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +36 -32
- package/lib/ProTable/index.js +22 -15
- package/lib/ProTable/propsType.d.ts +3 -2
- package/lib/style/theme/antd.less +4 -1
- package/package.json +1 -1
package/dist/index.esm.css
CHANGED
@@ -3110,6 +3110,9 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
|
|
3110
3110
|
.pro-form .pro-form-item-changed .ant-select.ant-select-disabled .ant-select-selector {
|
3111
3111
|
background: var(--zaui-contract-bg, #fffaa1) !important;
|
3112
3112
|
}
|
3113
|
+
.pro-form .pro-form-item-changed .ant-picker-clear {
|
3114
|
+
background: var(--zaui-contract-bg, #fffaa1);
|
3115
|
+
}
|
3113
3116
|
.pro-form .pro-form-item-changed span.ant-input-affix-wrapper,
|
3114
3117
|
.pro-form .pro-form-item-changed .ant-select .ant-select-selector,
|
3115
3118
|
.pro-form .pro-form-item-changed .ant-picker,
|
@@ -3165,6 +3168,9 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
|
|
3165
3168
|
.pro-form .pro-form-item-add .ant-select.ant-select-disabled .ant-select-selector {
|
3166
3169
|
background: var(--zaui-contract-bg-add, #d2fff4) !important;
|
3167
3170
|
}
|
3171
|
+
.pro-form .pro-form-item-add .ant-picker-clear {
|
3172
|
+
background: var(--zaui-contract-bg-add, #d2fff4);
|
3173
|
+
}
|
3168
3174
|
.pro-form .pro-form-item-add span.ant-input-affix-wrapper,
|
3169
3175
|
.pro-form .pro-form-item-add .ant-select .ant-select-selector,
|
3170
3176
|
.pro-form .pro-form-item-add .ant-picker,
|
@@ -4672,6 +4678,38 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
|
|
4672
4678
|
.pro-edit-table .ant-table.ant-table-scroll-horizontal table .ant-table-tbody .is-new-row.ant-table-row:hover .ant-table-cell-row-hover {
|
4673
4679
|
background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
|
4674
4680
|
}
|
4681
|
+
.pro-edit-table * {
|
4682
|
+
scrollbar-face-color: #d2d3d7;
|
4683
|
+
scrollbar-highlight-color: #979797;
|
4684
|
+
scrollbar-3dlight-color: #979797;
|
4685
|
+
}
|
4686
|
+
.pro-edit-table * ::-webkit-scrollbar-thumb {
|
4687
|
+
background-color: #979797;
|
4688
|
+
background-clip: padding-box;
|
4689
|
+
border-color: transparent;
|
4690
|
+
border-style: dashed;
|
4691
|
+
border-width: 4px;
|
4692
|
+
border-radius: 10px;
|
4693
|
+
-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
|
4694
|
+
}
|
4695
|
+
.pro-edit-table * ::-webkit-scrollbar-track {
|
4696
|
+
background: transparent;
|
4697
|
+
}
|
4698
|
+
.pro-edit-table * ::-webkit-scrollbar-thumb {
|
4699
|
+
background-color: #d2d3d7;
|
4700
|
+
background-clip: padding-box;
|
4701
|
+
border-color: transparent;
|
4702
|
+
border-style: dashed;
|
4703
|
+
border-width: 4px;
|
4704
|
+
border-radius: 10px;
|
4705
|
+
-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
|
4706
|
+
}
|
4707
|
+
.pro-edit-table * ::-webkit-scrollbar-thumb {
|
4708
|
+
background-color: #979797;
|
4709
|
+
}
|
4710
|
+
.pro-edit-table * ::-webkit-scrollbar-track {
|
4711
|
+
background: transparent;
|
4712
|
+
}
|
4675
4713
|
.pro-edit-table-footer {
|
4676
4714
|
margin-top: 12px;
|
4677
4715
|
}
|
@@ -6043,5 +6081,8 @@ input[type='button'] {
|
|
6043
6081
|
--antd-arrow-background-color: linear-gradient(to right bottom, rgba(255, 255, 255, 0.95), #ffffff);
|
6044
6082
|
}
|
6045
6083
|
.ant-picker.ant-picker-disabled {
|
6046
|
-
background: var(--zaui-disabled-bg);
|
6084
|
+
background: var(--zaui-disabled-bg) !important;
|
6085
|
+
}
|
6086
|
+
.ant-input-affix-wrapper-disabled {
|
6087
|
+
background: var(--zaui-disabled-bg) !important;
|
6047
6088
|
}
|
package/dist/less.esm.css
CHANGED
@@ -3110,6 +3110,9 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
|
|
3110
3110
|
.pro-form .pro-form-item-changed .ant-select.ant-select-disabled .ant-select-selector {
|
3111
3111
|
background: var(--zaui-contract-bg, #fffaa1) !important;
|
3112
3112
|
}
|
3113
|
+
.pro-form .pro-form-item-changed .ant-picker-clear {
|
3114
|
+
background: var(--zaui-contract-bg, #fffaa1);
|
3115
|
+
}
|
3113
3116
|
.pro-form .pro-form-item-changed span.ant-input-affix-wrapper,
|
3114
3117
|
.pro-form .pro-form-item-changed .ant-select .ant-select-selector,
|
3115
3118
|
.pro-form .pro-form-item-changed .ant-picker,
|
@@ -3165,6 +3168,9 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
|
|
3165
3168
|
.pro-form .pro-form-item-add .ant-select.ant-select-disabled .ant-select-selector {
|
3166
3169
|
background: var(--zaui-contract-bg-add, #d2fff4) !important;
|
3167
3170
|
}
|
3171
|
+
.pro-form .pro-form-item-add .ant-picker-clear {
|
3172
|
+
background: var(--zaui-contract-bg-add, #d2fff4);
|
3173
|
+
}
|
3168
3174
|
.pro-form .pro-form-item-add span.ant-input-affix-wrapper,
|
3169
3175
|
.pro-form .pro-form-item-add .ant-select .ant-select-selector,
|
3170
3176
|
.pro-form .pro-form-item-add .ant-picker,
|
@@ -4672,6 +4678,38 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
|
|
4672
4678
|
.pro-edit-table .ant-table.ant-table-scroll-horizontal table .ant-table-tbody .is-new-row.ant-table-row:hover .ant-table-cell-row-hover {
|
4673
4679
|
background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
|
4674
4680
|
}
|
4681
|
+
.pro-edit-table * {
|
4682
|
+
scrollbar-face-color: #d2d3d7;
|
4683
|
+
scrollbar-highlight-color: #979797;
|
4684
|
+
scrollbar-3dlight-color: #979797;
|
4685
|
+
}
|
4686
|
+
.pro-edit-table * ::-webkit-scrollbar-thumb {
|
4687
|
+
background-color: #979797;
|
4688
|
+
background-clip: padding-box;
|
4689
|
+
border-color: transparent;
|
4690
|
+
border-style: dashed;
|
4691
|
+
border-width: 4px;
|
4692
|
+
border-radius: 10px;
|
4693
|
+
-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
|
4694
|
+
}
|
4695
|
+
.pro-edit-table * ::-webkit-scrollbar-track {
|
4696
|
+
background: transparent;
|
4697
|
+
}
|
4698
|
+
.pro-edit-table * ::-webkit-scrollbar-thumb {
|
4699
|
+
background-color: #d2d3d7;
|
4700
|
+
background-clip: padding-box;
|
4701
|
+
border-color: transparent;
|
4702
|
+
border-style: dashed;
|
4703
|
+
border-width: 4px;
|
4704
|
+
border-radius: 10px;
|
4705
|
+
-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
|
4706
|
+
}
|
4707
|
+
.pro-edit-table * ::-webkit-scrollbar-thumb {
|
4708
|
+
background-color: #979797;
|
4709
|
+
}
|
4710
|
+
.pro-edit-table * ::-webkit-scrollbar-track {
|
4711
|
+
background: transparent;
|
4712
|
+
}
|
4675
4713
|
.pro-edit-table-footer {
|
4676
4714
|
margin-top: 12px;
|
4677
4715
|
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import { FormInstance } from 'antd';
|
3
3
|
import { NamePath } from 'antd/lib/form/interface';
|
4
|
-
import { DiffOriginalParams } from '
|
4
|
+
import { DiffOriginalParams } from '../../utils/diffOriginal';
|
5
5
|
interface Props {
|
6
6
|
name?: NamePath;
|
7
7
|
names?: NamePath[];
|
@@ -10,7 +10,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
10
|
import React, { useMemo, useRef } from 'react';
|
11
11
|
import classnames from 'classnames';
|
12
12
|
import { get } from 'lodash';
|
13
|
-
import { diffOriginal } from '
|
13
|
+
import { diffOriginal } from '../../utils/diffOriginal';
|
14
14
|
import { useProConfig } from '../../../ProConfigProvider';
|
15
15
|
import { isEmpty } from '../../../utils';
|
16
16
|
var toNamePath = function toNamePath(name) {
|
@@ -34,7 +34,7 @@ var getOriginalValue = function getOriginalValue(_ref) {
|
|
34
34
|
if (!originalValues) {
|
35
35
|
return undefined;
|
36
36
|
}
|
37
|
-
var
|
37
|
+
var originRecord;
|
38
38
|
if (rowKeyPath) {
|
39
39
|
var rowValueNamePath = namePath.slice(0, rowKeyPath.length - 1); // 表单中变动值所在行
|
40
40
|
var rowKeyName = rowKeyPath[rowKeyPath.length - 1]; // rowKey在行内的name
|
@@ -43,13 +43,13 @@ var getOriginalValue = function getOriginalValue(_ref) {
|
|
43
43
|
var keyValue = rowValue[rowKeyName]; // 获取表单中rowKey值
|
44
44
|
if (!keyValue) return undefined;
|
45
45
|
var originalValueList = get(originalValues, originalName.slice(0, rowKeyPath.length - 2));
|
46
|
-
|
46
|
+
originRecord = originalValueList === null || originalValueList === void 0 ? void 0 : originalValueList.find(function (item) {
|
47
47
|
return item[rowKeyPath[rowKeyPath.length - 1]] === keyValue;
|
48
48
|
});
|
49
49
|
var originalValue;
|
50
50
|
if (originalNames === null || originalNames === void 0 ? void 0 : originalNames.length) {
|
51
51
|
var originalNamesValue = originalNames.map(function (originalName) {
|
52
|
-
return get(
|
52
|
+
return get(originRecord, originalName.slice(rowKeyPath.length - 1));
|
53
53
|
});
|
54
54
|
// 有可能出现数组中全是undefined的情况 视为没有值
|
55
55
|
var fillUndefined = originalNamesValue.every(function (valItem) {
|
@@ -57,11 +57,12 @@ var getOriginalValue = function getOriginalValue(_ref) {
|
|
57
57
|
});
|
58
58
|
originalValue = fillUndefined ? undefined : originalNamesValue;
|
59
59
|
} else {
|
60
|
-
originalValue = get(
|
60
|
+
originalValue = get(originRecord, originalName.slice(rowKeyPath.length - 1));
|
61
61
|
}
|
62
62
|
return {
|
63
63
|
originalValue: originalValue,
|
64
|
-
|
64
|
+
originRecord: originRecord,
|
65
|
+
record: rowValue
|
65
66
|
};
|
66
67
|
}
|
67
68
|
// 这个方法是给editTable专用的 暂时不存在不传rowKey的情况
|
@@ -69,7 +70,7 @@ var getOriginalValue = function getOriginalValue(_ref) {
|
|
69
70
|
originalValue: (originalNames === null || originalNames === void 0 ? void 0 : originalNames.length) ? originalNames.map(function (originalName) {
|
70
71
|
return get(originalValues, originalName);
|
71
72
|
}) : get(originalValues, originalName),
|
72
|
-
|
73
|
+
originRecord: originRecord
|
73
74
|
};
|
74
75
|
};
|
75
76
|
var ListChangedWrapper = function ListChangedWrapper(props) {
|
@@ -130,8 +131,10 @@ var ListChangedWrapper = function ListChangedWrapper(props) {
|
|
130
131
|
value: _value,
|
131
132
|
originalValue: _originalValue,
|
132
133
|
form: form,
|
133
|
-
equalWith: equalWith
|
134
|
-
|
134
|
+
equalWith: equalWith,
|
135
|
+
originRecord: originalDTO === null || originalDTO === void 0 ? void 0 : originalDTO.originRecord,
|
136
|
+
record: originalDTO === null || originalDTO === void 0 ? void 0 : originalDTO.record,
|
137
|
+
index: index
|
135
138
|
});
|
136
139
|
}, [props[valuePropName], originalValue]);
|
137
140
|
var isAdd = diffType === 'add';
|
@@ -144,7 +147,7 @@ var ListChangedWrapper = function ListChangedWrapper(props) {
|
|
144
147
|
var _children = children;
|
145
148
|
if (viewRender) {
|
146
149
|
if (! /*#__PURE__*/React.isValidElement(viewRender)) {
|
147
|
-
return viewRender(orgValue, (originalDTO === null || originalDTO === void 0 ? void 0 : originalDTO.
|
150
|
+
return viewRender(orgValue, (originalDTO === null || originalDTO === void 0 ? void 0 : originalDTO.originRecord) || {}, {
|
148
151
|
form: form,
|
149
152
|
name: name,
|
150
153
|
index: index
|
@@ -6,7 +6,7 @@ import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
6
6
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
7
7
|
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
8
8
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
9
|
-
var _excluded = ["type", "valueType", "names", "fieldProps", "labelRequired", "editRender", "component", "viewRender", "title", "originTitle", "label", "dataIndex", "formItemProps", "isEditable", "required", "rules", "
|
9
|
+
var _excluded = ["type", "valueType", "names", "fieldProps", "labelRequired", "editRender", "component", "viewRender", "title", "originTitle", "label", "dataIndex", "formItemProps", "isEditable", "required", "rules", "onDiff", "className", "trim", "confirm", "dependencies"];
|
10
10
|
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
11
11
|
/* eslint-disable prefer-destructuring */
|
12
12
|
/* eslint-disable prefer-const */
|
@@ -52,11 +52,11 @@ var RenderField = function RenderField(_ref) {
|
|
52
52
|
required = _column$required === void 0 ? false : _column$required,
|
53
53
|
_column$rules = column.rules,
|
54
54
|
rules = _column$rules === void 0 ? [] : _column$rules,
|
55
|
-
equalWith = column.equalWith,
|
56
55
|
onDiff = column.onDiff,
|
57
56
|
className = column.className,
|
58
57
|
trim = column.trim,
|
59
58
|
confirm = column.confirm,
|
59
|
+
dependencies = column.dependencies,
|
60
60
|
resetProps = _objectWithoutProperties(column, _excluded);
|
61
61
|
// editRender弃用使用component同ProForm
|
62
62
|
var _editRender = component || editRender;
|
@@ -312,6 +312,8 @@ var RenderField = function RenderField(_ref) {
|
|
312
312
|
_key2,
|
313
313
|
_args,
|
314
314
|
rowPath,
|
315
|
+
_dependencies$map,
|
316
|
+
validateFieldKeys,
|
315
317
|
row,
|
316
318
|
orgRow,
|
317
319
|
_TargetComponent,
|
@@ -323,77 +325,85 @@ var RenderField = function RenderField(_ref) {
|
|
323
325
|
_Object$keys,
|
324
326
|
_Object$keys$map,
|
325
327
|
diff,
|
326
|
-
|
328
|
+
_validateFieldKeys,
|
327
329
|
_args2 = arguments;
|
328
330
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
329
331
|
while (1) switch (_context.prev = _context.next) {
|
330
332
|
case 0:
|
331
|
-
if (!(!onFieldChange && !onChange)) {
|
332
|
-
_context.next = 2;
|
333
|
-
break;
|
334
|
-
}
|
335
|
-
return _context.abrupt("return", null);
|
336
|
-
case 2:
|
337
333
|
for (_len2 = _args2.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
338
334
|
args[_key2] = _args2[_key2];
|
339
335
|
}
|
340
336
|
_args = [].concat(args);
|
341
337
|
rowPath = [].concat(_toConsumableArray(namePath), [index]);
|
342
|
-
|
338
|
+
if (!(!onFieldChange && !onChange)) {
|
339
|
+
_context.next = 6;
|
340
|
+
break;
|
341
|
+
}
|
342
|
+
if (dependencies === null || dependencies === void 0 ? void 0 : dependencies.length) {
|
343
|
+
validateFieldKeys = dependencies === null || dependencies === void 0 ? void 0 : (_dependencies$map = dependencies.map) === null || _dependencies$map === void 0 ? void 0 : _dependencies$map.call(dependencies, function (key) {
|
344
|
+
return [].concat(_toConsumableArray(rowPath), [key]);
|
345
|
+
});
|
346
|
+
setTimeout(function () {
|
347
|
+
form.validateFields(validateFieldKeys);
|
348
|
+
}, 100);
|
349
|
+
}
|
350
|
+
return _context.abrupt("return", null);
|
351
|
+
case 6:
|
352
|
+
row = form.getFieldValue(rowPath, true);
|
343
353
|
orgRow = cloneDeep(row);
|
344
354
|
if (!onFieldChange) {
|
345
|
-
_context.next =
|
355
|
+
_context.next = 21;
|
346
356
|
break;
|
347
357
|
}
|
348
358
|
_args = formatArgs(args);
|
349
359
|
_args[1] = row;
|
350
360
|
_context.t0 = (_TargetComponent = TargetComponent) === null || _TargetComponent === void 0 ? void 0 : (_TargetComponent$prop = _TargetComponent.props) === null || _TargetComponent$prop === void 0 ? void 0 : _TargetComponent$prop.onFieldChange;
|
351
361
|
if (!_context.t0) {
|
352
|
-
_context.next =
|
362
|
+
_context.next = 15;
|
353
363
|
break;
|
354
364
|
}
|
355
|
-
_context.next =
|
365
|
+
_context.next = 15;
|
356
366
|
return (_TargetComponent$prop2 = TargetComponent.props).onFieldChange.apply(_TargetComponent$prop2, _toConsumableArray(_args));
|
357
|
-
case
|
367
|
+
case 15:
|
358
368
|
_context.t1 = onFieldChange;
|
359
369
|
if (!_context.t1) {
|
360
|
-
_context.next =
|
370
|
+
_context.next = 19;
|
361
371
|
break;
|
362
372
|
}
|
363
|
-
_context.next =
|
373
|
+
_context.next = 19;
|
364
374
|
return onFieldChange.apply(void 0, _toConsumableArray(_args));
|
365
|
-
case
|
366
|
-
_context.next =
|
375
|
+
case 19:
|
376
|
+
_context.next = 30;
|
367
377
|
break;
|
368
|
-
case
|
378
|
+
case 21:
|
369
379
|
_args = _args.concat([row, index, form]);
|
370
380
|
_context.t2 = (_TargetComponent2 = TargetComponent) === null || _TargetComponent2 === void 0 ? void 0 : (_TargetComponent2$pro = _TargetComponent2.props) === null || _TargetComponent2$pro === void 0 ? void 0 : _TargetComponent2$pro.onChange;
|
371
381
|
if (!_context.t2) {
|
372
|
-
_context.next =
|
382
|
+
_context.next = 26;
|
373
383
|
break;
|
374
384
|
}
|
375
|
-
_context.next =
|
385
|
+
_context.next = 26;
|
376
386
|
return (_TargetComponent$prop3 = TargetComponent.props).onChange.apply(_TargetComponent$prop3, _toConsumableArray(_args));
|
377
|
-
case
|
387
|
+
case 26:
|
378
388
|
_context.t3 = onChange;
|
379
389
|
if (!_context.t3) {
|
380
|
-
_context.next =
|
390
|
+
_context.next = 30;
|
381
391
|
break;
|
382
392
|
}
|
383
|
-
_context.next =
|
393
|
+
_context.next = 30;
|
384
394
|
return onChange.apply(void 0, _toConsumableArray(_args));
|
385
|
-
case
|
395
|
+
case 30:
|
386
396
|
// 判断属性是否变动
|
387
397
|
form.setFieldValue(rowPath, row);
|
388
398
|
if (validateTrigger && validateTrigger.includes('onChange')) {
|
389
399
|
if (!isEqual(orgRow, row)) {
|
390
400
|
diff = difference(row, orgRow) || {};
|
391
|
-
|
401
|
+
_validateFieldKeys = (_Object$keys = Object.keys(diff)) === null || _Object$keys === void 0 ? void 0 : (_Object$keys$map = _Object$keys.map) === null || _Object$keys$map === void 0 ? void 0 : _Object$keys$map.call(_Object$keys, function (key) {
|
392
402
|
return [].concat(_toConsumableArray(rowPath), [key]);
|
393
|
-
});
|
394
|
-
if (
|
403
|
+
}).concat(dependencies || []);
|
404
|
+
if (_validateFieldKeys === null || _validateFieldKeys === void 0 ? void 0 : _validateFieldKeys.length) {
|
395
405
|
setTimeout(function () {
|
396
|
-
form.validateFields(
|
406
|
+
form.validateFields(_validateFieldKeys);
|
397
407
|
}, 100);
|
398
408
|
}
|
399
409
|
}
|
@@ -403,7 +413,7 @@ var RenderField = function RenderField(_ref) {
|
|
403
413
|
d: Date.now()
|
404
414
|
}
|
405
415
|
});
|
406
|
-
case
|
416
|
+
case 33:
|
407
417
|
case "end":
|
408
418
|
return _context.stop();
|
409
419
|
}
|
@@ -464,7 +474,7 @@ var RenderField = function RenderField(_ref) {
|
|
464
474
|
diff = difference(row, orgRow) || {};
|
465
475
|
validateFieldKeys = (_Object$keys2 = Object.keys(diff)) === null || _Object$keys2 === void 0 ? void 0 : (_Object$keys2$map = _Object$keys2.map) === null || _Object$keys2$map === void 0 ? void 0 : _Object$keys2$map.call(_Object$keys2, function (key) {
|
466
476
|
return [].concat(_toConsumableArray(rowPath), [key]);
|
467
|
-
});
|
477
|
+
}).concat(dependencies || []);
|
468
478
|
if (validateFieldKeys === null || validateFieldKeys === void 0 ? void 0 : validateFieldKeys.length) {
|
469
479
|
debounceValidate(validateFieldKeys);
|
470
480
|
}
|
@@ -557,7 +567,7 @@ var RenderField = function RenderField(_ref) {
|
|
557
567
|
originalNames: originalNames,
|
558
568
|
originalValues: originalValues,
|
559
569
|
form: form,
|
560
|
-
equalWith: onDiff
|
570
|
+
equalWith: onDiff,
|
561
571
|
type: type,
|
562
572
|
onChange: _onChange,
|
563
573
|
valuePropName: _formItemProps.valuePropName,
|
@@ -106,6 +106,7 @@ export interface ProColumnsProps<Values = any, T = any> extends Omit<FormItemPro
|
|
106
106
|
hiddenNames?: NamePath[] | NamePath[][];
|
107
107
|
rules?: ProRule[] | RulesFn<T>;
|
108
108
|
confirm?: boolean | ModalFuncProps | FunctionArgs<Values, boolean | ModalFuncProps | void>;
|
109
|
+
dependencies?: NamePath[];
|
109
110
|
onDiff?: DiffOriginalParams['equalWith'];
|
110
111
|
[key: string]: any;
|
111
112
|
}
|
@@ -305,6 +305,47 @@
|
|
305
305
|
background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
|
306
306
|
}
|
307
307
|
}
|
308
|
+
|
309
|
+
* {
|
310
|
+
// ie浏览器
|
311
|
+
scrollbar-face-color: #d2d3d7;
|
312
|
+
scrollbar-highlight-color: #979797;
|
313
|
+
scrollbar-3dlight-color: #979797;
|
314
|
+
|
315
|
+
// 悬浮轨道
|
316
|
+
::-webkit-scrollbar-thumb {
|
317
|
+
background-color: #979797;
|
318
|
+
background-clip: padding-box;
|
319
|
+
border-color: transparent;
|
320
|
+
border-style: dashed;
|
321
|
+
border-width: 4px;
|
322
|
+
border-radius: 10px;
|
323
|
+
-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
|
324
|
+
}
|
325
|
+
|
326
|
+
::-webkit-scrollbar-track {
|
327
|
+
background: transparent;
|
328
|
+
}
|
329
|
+
|
330
|
+
::-webkit-scrollbar-thumb {
|
331
|
+
background-color: #d2d3d7;
|
332
|
+
background-clip: padding-box;
|
333
|
+
border-color: transparent;
|
334
|
+
border-style: dashed;
|
335
|
+
border-width: 4px;
|
336
|
+
border-radius: 10px;
|
337
|
+
-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
|
338
|
+
}
|
339
|
+
|
340
|
+
::-webkit-scrollbar-thumb {
|
341
|
+
background-color: #979797;
|
342
|
+
}
|
343
|
+
|
344
|
+
::-webkit-scrollbar-track {
|
345
|
+
background: transparent;
|
346
|
+
}
|
347
|
+
}
|
348
|
+
|
308
349
|
}
|
309
350
|
|
310
351
|
.pro-edit-table-footer{
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import { FormInstance } from 'antd';
|
2
|
+
export type DiffType = 'same' | 'add' | 'changed';
|
3
|
+
export interface DiffOriginalParams {
|
4
|
+
originalValue: any;
|
5
|
+
value: any;
|
6
|
+
form: FormInstance;
|
7
|
+
equalWith?: ({ originValue, originRecord, value, record, index }: {
|
8
|
+
originValue: any;
|
9
|
+
originRecord: any;
|
10
|
+
value: any;
|
11
|
+
record: any;
|
12
|
+
index: number;
|
13
|
+
}) => DiffType | undefined;
|
14
|
+
/** 原始行数据 */
|
15
|
+
originRecord: any;
|
16
|
+
/** 当前行数据 */
|
17
|
+
record: any;
|
18
|
+
/** 当前行索引 */
|
19
|
+
index: number;
|
20
|
+
}
|
21
|
+
export declare const diffOriginal: (params: DiffOriginalParams) => DiffType;
|
@@ -0,0 +1,65 @@
|
|
1
|
+
import { isEqual, isFunction, isObject } from 'lodash';
|
2
|
+
import { validate } from '@zat-design/utils';
|
3
|
+
var isEmpty = validate.isEmpty;
|
4
|
+
// 过滤对象中undefined字段
|
5
|
+
// 防止{a: '1'} {a: '1', b: undefined | null}被认为不相等
|
6
|
+
var filterObject = function filterObject(data) {
|
7
|
+
if (!isObject(data) || Array.isArray(data) || data === null) return data;
|
8
|
+
var resData = {};
|
9
|
+
Object.keys(data).forEach(function (key) {
|
10
|
+
if (!isEmpty(data[key])) {
|
11
|
+
resData[key] = data[key];
|
12
|
+
}
|
13
|
+
});
|
14
|
+
// 空对象视为null 比较时 null undefined {} [] '' 视为相等
|
15
|
+
if (!Object.keys(resData).length) return null;
|
16
|
+
return resData;
|
17
|
+
};
|
18
|
+
export var diffOriginal = function diffOriginal(params) {
|
19
|
+
var originalValue = params.originalValue,
|
20
|
+
value = params.value,
|
21
|
+
equalWith = params.equalWith,
|
22
|
+
originRecord = params.originRecord,
|
23
|
+
record = params.record,
|
24
|
+
index = params.index;
|
25
|
+
// 支持传入自定义比较事件
|
26
|
+
if (isFunction(equalWith)) {
|
27
|
+
var diffRes = equalWith({
|
28
|
+
originValue: originalValue,
|
29
|
+
originRecord: originRecord,
|
30
|
+
value: value,
|
31
|
+
record: record,
|
32
|
+
index: index
|
33
|
+
});
|
34
|
+
// 如果返回undefined走内置比较逻辑
|
35
|
+
if (diffRes !== undefined) {
|
36
|
+
if (typeof diffRes === 'boolean') {
|
37
|
+
return diffRes ? 'same' : 'changed';
|
38
|
+
}
|
39
|
+
return diffRes;
|
40
|
+
}
|
41
|
+
}
|
42
|
+
var _value = filterObject(value);
|
43
|
+
var _originalValue = filterObject(originalValue);
|
44
|
+
// 如果原始值为空 且当前有值的话 认为变更类型是新增
|
45
|
+
if (isEmpty(_originalValue) && !isEmpty(_value)) {
|
46
|
+
return 'add';
|
47
|
+
}
|
48
|
+
if (Array.isArray(_originalValue)) {
|
49
|
+
if ((_originalValue === null || _originalValue === void 0 ? void 0 : _originalValue.length) === (_value === null || _value === void 0 ? void 0 : _value.length)) {
|
50
|
+
var isSame = _originalValue.every(function (valueItem, index) {
|
51
|
+
// 如果两个值有一个不是空值, 则进行深比较
|
52
|
+
if (!isEmpty(value === null || value === void 0 ? void 0 : value[index]) || !isEmpty(valueItem)) {
|
53
|
+
return isEqual(value === null || value === void 0 ? void 0 : value[index], valueItem);
|
54
|
+
}
|
55
|
+
return true;
|
56
|
+
});
|
57
|
+
return isSame ? 'same' : 'changed';
|
58
|
+
}
|
59
|
+
return 'changed';
|
60
|
+
}
|
61
|
+
if (!isEmpty(_originalValue) || !isEmpty(_value)) {
|
62
|
+
return isEqual(_value, _originalValue) ? 'same' : 'changed';
|
63
|
+
}
|
64
|
+
return 'same';
|
65
|
+
};
|
package/es/ProEnum/index.js
CHANGED
@@ -230,7 +230,7 @@ var ProEnum = function ProEnum(props) {
|
|
230
230
|
};
|
231
231
|
if (!code && !dataSource && !useRequest) {
|
232
232
|
var _locale$ProEnum4;
|
233
|
-
_message.error(locale === null || locale === void 0 ? void 0 : (_locale$ProEnum4 = locale.ProEnum) === null || _locale$ProEnum4 === void 0 ? void 0 : _locale$ProEnum4.errorNoEnumType);
|
233
|
+
_message.error("".concat(otherProps === null || otherProps === void 0 ? void 0 : otherProps.label, "-").concat(otherProps === null || otherProps === void 0 ? void 0 : otherProps.name, "-").concat(locale === null || locale === void 0 ? void 0 : (_locale$ProEnum4 = locale.ProEnum) === null || _locale$ProEnum4 === void 0 ? void 0 : _locale$ProEnum4.errorNoEnumType));
|
234
234
|
}
|
235
235
|
var transToLabel = function transToLabel(value) {
|
236
236
|
var list = dataList && dataList.length ? dataList : enumLists;
|
@@ -2,7 +2,7 @@ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutPr
|
|
2
2
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
3
3
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
4
4
|
var _excluded = ["type", "confirm", "component", "fieldProps", "contextProps", "before", "after", "getValueProps", "valuePropName", "valueType", "isView", "viewRender"];
|
5
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
5
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
6
6
|
import React from 'react';
|
7
7
|
import ConfirmWrapper from '../../../../components/render/ConfirmWrapper';
|
8
8
|
import { FieldProvider } from '../../../../utils/useFieldProps';
|
@@ -30,6 +30,7 @@ var getComRender = function getComRender(component, props, componentProps) {
|
|
30
30
|
};
|
31
31
|
/** 渲染组件 */
|
32
32
|
var ComRender = function ComRender(props) {
|
33
|
+
var _props$component, _props$component$prop;
|
33
34
|
var type = props.type,
|
34
35
|
confirm = props.confirm,
|
35
36
|
component = props.component,
|
@@ -50,6 +51,13 @@ var ComRender = function ComRender(props) {
|
|
50
51
|
};
|
51
52
|
var _props = mergedGetValueProps(fieldProps.value);
|
52
53
|
var componentProps = _objectSpread(_objectSpread(_objectSpread({}, fieldProps), rest), _props);
|
54
|
+
var isSeparator = (props === null || props === void 0 ? void 0 : (_props$component = props.component) === null || _props$component === void 0 ? void 0 : (_props$component$prop = _props$component.props) === null || _props$component$prop === void 0 ? void 0 : _props$component$prop.className) === 'group-separator';
|
55
|
+
if (isSeparator && isView) {
|
56
|
+
var _props$component2, _props$component2$pro;
|
57
|
+
return _jsxs(_Fragment, {
|
58
|
+
children: [" ", props === null || props === void 0 ? void 0 : (_props$component2 = props.component) === null || _props$component2 === void 0 ? void 0 : (_props$component2$pro = _props$component2.props) === null || _props$component2$pro === void 0 ? void 0 : _props$component2$pro.children, " "]
|
59
|
+
});
|
60
|
+
}
|
53
61
|
if (viewRender && isView) {
|
54
62
|
return _jsx(FieldProvider, {
|
55
63
|
value: _objectSpread(_objectSpread({}, contextProps), {}, {
|
@@ -71,7 +71,7 @@ var Group = function Group(props) {
|
|
71
71
|
children: space.compact || (space === null || space === void 0 ? void 0 : space.separator) ? _jsx(_Space.Compact, {
|
72
72
|
children: columns.map(function (column, index) {
|
73
73
|
column.otherProps = otherProps;
|
74
|
-
//
|
74
|
+
// 自定义间隔移除对应参数
|
75
75
|
if (column === null || column === void 0 ? void 0 : column.separator) {
|
76
76
|
delete column.separator;
|
77
77
|
delete column.otherProps;
|
@@ -329,7 +329,7 @@ export var useTransformColumns = function useTransformColumns(params) {
|
|
329
329
|
}, reactiveProps), {}, {
|
330
330
|
disabled: getLastDisabled(),
|
331
331
|
getValueProps: transform === null || transform === void 0 ? void 0 : transform.getValueProps,
|
332
|
-
fieldProps: _objectSpread(_objectSpread({}, column === null || column === void 0 ? void 0 : column.fieldProps), {}, {
|
332
|
+
fieldProps: _objectSpread(_objectSpread(_objectSpread({}, column === null || column === void 0 ? void 0 : column.fieldProps), reactiveProps === null || reactiveProps === void 0 ? void 0 : reactiveProps.fieldProps), {}, {
|
333
333
|
onChange: handleChange,
|
334
334
|
onBlur: handleBlur,
|
335
335
|
value: value === null || value === void 0 ? void 0 : value[index]
|
@@ -341,6 +341,10 @@
|
|
341
341
|
background: @zaui-contract-bg !important;
|
342
342
|
}
|
343
343
|
|
344
|
+
.ant-picker-clear {
|
345
|
+
background: @zaui-contract-bg;
|
346
|
+
}
|
347
|
+
|
344
348
|
span.@{ant-prefix}-input-affix-wrapper,
|
345
349
|
.@{ant-prefix}-select .@{ant-prefix}-select-selector,
|
346
350
|
.@{ant-prefix}-picker,
|
@@ -419,6 +423,10 @@
|
|
419
423
|
background: @zaui-contract-bg-add !important;
|
420
424
|
}
|
421
425
|
|
426
|
+
.ant-picker-clear {
|
427
|
+
background: @zaui-contract-bg-add;
|
428
|
+
}
|
429
|
+
|
422
430
|
span.@{ant-prefix}-input-affix-wrapper,
|
423
431
|
.@{ant-prefix}-select .@{ant-prefix}-select-selector,
|
424
432
|
.@{ant-prefix}-picker,
|
@@ -36,14 +36,17 @@ export var diffOriginal = function diffOriginal(params) {
|
|
36
36
|
return 'add';
|
37
37
|
}
|
38
38
|
if (Array.isArray(_originalValue)) {
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
39
|
+
if ((_originalValue === null || _originalValue === void 0 ? void 0 : _originalValue.length) === (_value === null || _value === void 0 ? void 0 : _value.length)) {
|
40
|
+
var isSame = _originalValue.every(function (valueItem, index) {
|
41
|
+
// 如果两个值有一个不是空值, 则进行深比较
|
42
|
+
if (!isEmpty(value === null || value === void 0 ? void 0 : value[index]) || !isEmpty(valueItem)) {
|
43
|
+
return isEqual(value === null || value === void 0 ? void 0 : value[index], valueItem);
|
44
|
+
}
|
45
|
+
return true;
|
46
|
+
});
|
47
|
+
return isSame ? 'same' : 'changed';
|
48
|
+
}
|
49
|
+
return 'changed';
|
47
50
|
}
|
48
51
|
if (!isEmpty(_originalValue) || !isEmpty(_value)) {
|
49
52
|
return isEqual(_value, _originalValue) ? 'same' : 'changed';
|
@@ -139,7 +139,7 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
139
139
|
index: index
|
140
140
|
});
|
141
141
|
// viewRender 返回值为 false 时,不显示对比
|
142
|
-
if (isBoolean(diffResult)) {
|
142
|
+
if (isBoolean(diffResult) && !diffResult) {
|
143
143
|
otherProps.isChanged = false;
|
144
144
|
}
|
145
145
|
originalValue = diffResult;
|