@zat-design/sisyphus-react 3.8.3-beta.9 → 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 +22 -3
- package/dist/less.esm.css +21 -2
- package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +66 -17
- package/es/ProEditTable/components/RenderField/index.js +6 -9
- package/es/ProEditTable/index.js +18 -8
- package/es/ProEditTable/propsType.d.ts +3 -5
- package/es/ProEditTable/style/index.less +0 -1
- package/es/ProForm/components/base/InputNumber/index.js +1 -1
- package/es/ProForm/components/combination/Group/index.js +3 -4
- package/es/ProForm/components/combination/ProCascader/index.js +1 -1
- package/es/ProForm/components/render/ChangedWrapper.js +17 -10
- package/es/ProForm/propsType.d.ts +2 -0
- package/es/ProForm/style/index.less +28 -9
- package/es/ProTable/components/FormatColumn/index.js +16 -10
- package/es/ProTable/components/RenderColumn/index.js +20 -6
- package/es/ProTable/propsType.d.ts +4 -1
- 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 +66 -19
- package/lib/ProEditTable/components/RenderField/index.js +6 -9
- package/lib/ProEditTable/index.js +18 -8
- package/lib/ProEditTable/propsType.d.ts +3 -5
- package/lib/ProEditTable/style/index.less +0 -1
- package/lib/ProForm/components/base/InputNumber/index.js +1 -1
- package/lib/ProForm/components/combination/Group/index.js +3 -4
- package/lib/ProForm/components/combination/ProCascader/index.js +1 -1
- package/lib/ProForm/components/render/ChangedWrapper.js +17 -10
- package/lib/ProForm/propsType.d.ts +2 -0
- package/lib/ProForm/style/index.less +28 -9
- package/lib/ProTable/components/FormatColumn/index.js +16 -10
- package/lib/ProTable/components/RenderColumn/index.js +18 -6
- package/lib/ProTable/propsType.d.ts +4 -1
- 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
@@ -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);
|
@@ -480,15 +485,29 @@
|
|
480
485
|
}
|
481
486
|
}
|
482
487
|
|
483
|
-
.
|
484
|
-
|
485
|
-
|
486
|
-
|
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
|
+
}
|
487
505
|
}
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
506
|
+
.current-value-container {
|
507
|
+
.ant-space-item:nth-child(1) {
|
508
|
+
white-space: nowrap;
|
509
|
+
}
|
492
510
|
}
|
493
511
|
}
|
494
|
-
}
|
512
|
+
}
|
513
|
+
|
@@ -79,7 +79,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
79
79
|
_column$toolTipProps = column.toolTipProps,
|
80
80
|
toolTipProps = _column$toolTipProps === void 0 ? {} : _column$toolTipProps,
|
81
81
|
minWidth = column.minWidth,
|
82
|
-
|
82
|
+
onDiff = column.onDiff;
|
83
83
|
// 仅在 {x: 'max-content', y: 300 } 且 column无指定 width minWidth 情况下 才开启 minWidth的自动计算
|
84
84
|
var isMaxContentOverFlow = (0, _lodash.isObject)(scroll) ? (scroll === null || scroll === void 0 ? void 0 : scroll.x) === 'max-content' && Reflect.ownKeys(scroll).includes('y') : false;
|
85
85
|
calcMinWidth({
|
@@ -116,7 +116,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
116
116
|
}
|
117
117
|
};
|
118
118
|
if (column === null || column === void 0 ? void 0 : column.render) {
|
119
|
-
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) {
|
120
120
|
return;
|
121
121
|
}
|
122
122
|
var originalRender = column.render; // 保存原始的 render 方法
|
@@ -124,20 +124,27 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
124
124
|
column.render = function (value, record, index) {
|
125
125
|
var _originalObj$record$r;
|
126
126
|
var isFn = (0, _lodash.isFunction)(originalRender);
|
127
|
-
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;
|
128
128
|
var originalValue = (0, _utils2.getOriginalValue)(value, record !== null && record !== void 0 ? record : {}, originalObj, rowKey, dataIndex);
|
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) :
|
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
130
|
var isInNewRowFlag = isInNewRow(record);
|
131
|
+
var extraDiffFlag = false;
|
131
132
|
// 把比对结果告诉我
|
132
|
-
if (
|
133
|
-
var isDiff =
|
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
|
+
});
|
134
138
|
if (!isDiff) {
|
135
|
-
originalValue =
|
139
|
+
originalValue = null;
|
140
|
+
} else {
|
141
|
+
originalValue = true;
|
142
|
+
extraDiffFlag = true;
|
136
143
|
}
|
137
144
|
}
|
138
145
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
139
146
|
valueType: valueType,
|
140
|
-
originalValue: originalValue
|
147
|
+
originalValue: !originalValue && originalValue !== 0 ? null : extraDiffFlag ? originalRenderValue !== null && originalRenderValue !== void 0 ? originalRenderValue : originalValue : originalRenderValue,
|
141
148
|
ellipsis: ellipsis,
|
142
149
|
width: width,
|
143
150
|
value: _value,
|
@@ -396,7 +403,6 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
396
403
|
});
|
397
404
|
}
|
398
405
|
var className = (0, _classnames.default)({
|
399
|
-
'varied-cell': originalValue !== undefined,
|
400
406
|
'empty-cell': isEmpty
|
401
407
|
});
|
402
408
|
var renderValue = (0, _jsxRuntime.jsx)(_ProForm.default.ProCascader, {
|
@@ -422,7 +428,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
422
428
|
var isInNewRowFlag = isInNewRow(record);
|
423
429
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
424
430
|
valueType: valueType,
|
425
|
-
originalValue:
|
431
|
+
originalValue: originalValue === undefined ? undefined : originalRenderValue,
|
426
432
|
ellipsis: ellipsis !== null && ellipsis !== void 0 ? ellipsis : true,
|
427
433
|
width: width,
|
428
434
|
node: renderNode,
|
@@ -36,7 +36,7 @@ var RenderColumn = function RenderColumn(props) {
|
|
36
36
|
_useSetState2 = (0, _slicedToArray2.default)(_useSetState, 2),
|
37
37
|
tooltip = _useSetState2[0].tooltip,
|
38
38
|
setState = _useSetState2[1];
|
39
|
-
if (originalValue
|
39
|
+
if ((originalValue || originalValue === 0) && !isInNewRowFlag) {
|
40
40
|
var renderNode = value ? node : '-';
|
41
41
|
if (ellipsis || originalDiffTip) {
|
42
42
|
if (ellipsis) {
|
@@ -57,11 +57,23 @@ var RenderColumn = function RenderColumn(props) {
|
|
57
57
|
width: width,
|
58
58
|
minWidth: minWidth
|
59
59
|
},
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
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
|
+
}),
|
65
77
|
getPopupContainer: function getPopupContainer(triggerNode) {
|
66
78
|
return triggerNode.parentNode;
|
67
79
|
}
|
@@ -41,7 +41,10 @@ export interface ProTableColumn extends Omit<ColumnType<any>, 'dataIndex'> {
|
|
41
41
|
toolTipProps?: TooltipProps & React.RefAttributes<unknown>;
|
42
42
|
transform?: (value: any, record?: any) => string[];
|
43
43
|
show?: boolean | (() => boolean);
|
44
|
-
|
44
|
+
onDiff?: ({ value, originValue }: {
|
45
|
+
value: any;
|
46
|
+
originValue: any;
|
47
|
+
}) => boolean;
|
45
48
|
}
|
46
49
|
export interface CreateTreeFromArrayOptions {
|
47
50
|
itemKey?: string;
|
package/lib/utils/index.d.ts
CHANGED
package/lib/utils/index.js
CHANGED
@@ -1,9 +1,12 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
4
5
|
value: true
|
5
6
|
});
|
6
|
-
exports.isEmpty = void 0;
|
7
|
+
exports.useFocus = exports.isEmpty = void 0;
|
8
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
9
|
+
var _react = require("react");
|
7
10
|
var EMPTY_VALUE = [undefined, null, ''];
|
8
11
|
/** 判断一个值是否是空值 */
|
9
12
|
var isEmpty = exports.isEmpty = function isEmpty(value) {
|
@@ -16,4 +19,28 @@ var isEmpty = exports.isEmpty = function isEmpty(value) {
|
|
16
19
|
});
|
17
20
|
}
|
18
21
|
return false;
|
22
|
+
};
|
23
|
+
var useFocus = exports.useFocus = function useFocus(element) {
|
24
|
+
var _useState = (0, _react.useState)(false),
|
25
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
26
|
+
focus = _useState2[0],
|
27
|
+
setFocus = _useState2[1];
|
28
|
+
(0, _react.useEffect)(function () {
|
29
|
+
if (!element) return;
|
30
|
+
element.addEventListener('focus', function () {
|
31
|
+
setFocus(true);
|
32
|
+
}, true);
|
33
|
+
element.addEventListener('blur', function () {
|
34
|
+
setFocus(false);
|
35
|
+
}, true);
|
36
|
+
return function () {
|
37
|
+
element.removeEventListener('focus', function () {
|
38
|
+
setFocus(true);
|
39
|
+
}, true);
|
40
|
+
element.removeEventListener('blur', function () {
|
41
|
+
setFocus(false);
|
42
|
+
}, true);
|
43
|
+
};
|
44
|
+
}, [element]);
|
45
|
+
return focus;
|
19
46
|
};
|