@zat-design/sisyphus-react 3.9.0-beta.1 → 3.9.0-beta.10

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.
Files changed (43) hide show
  1. package/dist/index.esm.css +10 -1
  2. package/dist/less.esm.css +10 -1
  3. package/es/ProDrawerForm/components/ProDrawer/index.js +3 -1
  4. package/es/ProDrawerForm/components/ProModal/index.js +5 -3
  5. package/es/ProDrawerForm/propsType.d.ts +1 -0
  6. package/es/ProEnum/index.js +1 -1
  7. package/es/ProForm/components/combination/Group/index.js +4 -3
  8. package/es/ProForm/components/combination/ProModalSelect/index.js +2 -1
  9. package/es/ProForm/components/render/ChangedWrapper.js +0 -1
  10. package/es/ProForm/style/index.less +0 -1
  11. package/es/ProTable/components/FormatColumn/index.d.ts +2 -2
  12. package/es/ProTable/components/FormatColumn/index.js +55 -52
  13. package/es/ProTable/components/RenderColumn/index.d.ts +1 -0
  14. package/es/ProTable/components/RenderColumn/index.js +18 -4
  15. package/es/ProTable/index.d.ts +6 -5
  16. package/es/ProTable/index.js +4 -5
  17. package/es/ProTable/propsType.d.ts +2 -0
  18. package/es/ProTable/style/index.less +10 -1
  19. package/es/ProTable/utils/index.js +2 -2
  20. package/es/ProTree/components/ProTreeSelect/index.js +32 -13
  21. package/es/utils/index.d.ts +1 -1
  22. package/es/utils/index.js +4 -1
  23. package/lib/ProDrawerForm/components/ProDrawer/index.js +3 -1
  24. package/lib/ProDrawerForm/components/ProModal/index.js +5 -3
  25. package/lib/ProDrawerForm/propsType.d.ts +1 -0
  26. package/lib/ProEnum/index.js +1 -1
  27. package/lib/ProForm/components/combination/Group/index.js +4 -3
  28. package/lib/ProForm/components/combination/ProModalSelect/index.js +2 -1
  29. package/lib/ProForm/components/render/ChangedWrapper.js +0 -1
  30. package/lib/ProForm/style/index.less +0 -1
  31. package/lib/ProTable/components/FormatColumn/index.d.ts +2 -2
  32. package/lib/ProTable/components/FormatColumn/index.js +55 -52
  33. package/lib/ProTable/components/RenderColumn/index.d.ts +1 -0
  34. package/lib/ProTable/components/RenderColumn/index.js +18 -4
  35. package/lib/ProTable/index.d.ts +6 -5
  36. package/lib/ProTable/index.js +4 -5
  37. package/lib/ProTable/propsType.d.ts +2 -0
  38. package/lib/ProTable/style/index.less +10 -1
  39. package/lib/ProTable/utils/index.js +2 -2
  40. package/lib/ProTree/components/ProTreeSelect/index.js +31 -12
  41. package/lib/utils/index.d.ts +1 -1
  42. package/lib/utils/index.js +4 -1
  43. package/package.json +1 -1
@@ -1908,6 +1908,16 @@
1908
1908
  background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
1909
1909
  border-bottom: 1px solid var(--zaui-form-control-line, #dcdcdc);
1910
1910
  }
1911
+ .pro-table tbody.ant-table-tbody tr.ant-table-row.new-cell td.ant-table-cell.ant-table-cell-fix-right {
1912
+ background: var(--zaui-contract-bg-add, #d2fff4) !important;
1913
+ background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
1914
+ border-bottom: 1px solid var(--zaui-form-control-line, #dcdcdc);
1915
+ }
1916
+ .pro-table tbody.ant-table-tbody tr.ant-table-row.new-cell td.ant-table-cell.ant-table-cell-fix-left {
1917
+ background: var(--zaui-contract-bg-add, #d2fff4) !important;
1918
+ background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
1919
+ border-bottom: 1px solid var(--zaui-form-control-line, #dcdcdc);
1920
+ }
1911
1921
  .pro-table tbody.ant-table-tbody .ant-table-cell .varied-cell {
1912
1922
  margin-left: -8px;
1913
1923
  padding: var(--zaui-space-size-xs, 4px) var(--zaui-space-size-sm, 8px);
@@ -3166,7 +3176,6 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
3166
3176
  width: -webkit-max-content;
3167
3177
  width: -moz-max-content;
3168
3178
  width: max-content;
3169
- z-index: 99;
3170
3179
  position: fixed;
3171
3180
  }
3172
3181
  .original-value-tootip .changed-tooltip .original-value-container .ant-space-item:nth-child(1) {
package/dist/less.esm.css CHANGED
@@ -1908,6 +1908,16 @@
1908
1908
  background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
1909
1909
  border-bottom: 1px solid var(--zaui-form-control-line, #dcdcdc);
1910
1910
  }
1911
+ .pro-table tbody.ant-table-tbody tr.ant-table-row.new-cell td.ant-table-cell.ant-table-cell-fix-right {
1912
+ background: var(--zaui-contract-bg-add, #d2fff4) !important;
1913
+ background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
1914
+ border-bottom: 1px solid var(--zaui-form-control-line, #dcdcdc);
1915
+ }
1916
+ .pro-table tbody.ant-table-tbody tr.ant-table-row.new-cell td.ant-table-cell.ant-table-cell-fix-left {
1917
+ background: var(--zaui-contract-bg-add, #d2fff4) !important;
1918
+ background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
1919
+ border-bottom: 1px solid var(--zaui-form-control-line, #dcdcdc);
1920
+ }
1911
1921
  .pro-table tbody.ant-table-tbody .ant-table-cell .varied-cell {
1912
1922
  margin-left: -8px;
1913
1923
  padding: var(--zaui-space-size-xs, 4px) var(--zaui-space-size-sm, 8px);
@@ -3166,7 +3176,6 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
3166
3176
  width: -webkit-max-content;
3167
3177
  width: -moz-max-content;
3168
3178
  width: max-content;
3169
- z-index: 99;
3170
3179
  position: fixed;
3171
3180
  }
3172
3181
  .original-value-tootip .changed-tooltip .original-value-container .ant-space-item:nth-child(1) {
@@ -36,6 +36,7 @@ var ProDrawer = function ProDrawer(_ref) {
36
36
  onCancel = _ref.onCancel,
37
37
  children = _ref.children,
38
38
  className = _ref.className,
39
+ zIndex = _ref.zIndex,
39
40
  drawerProps = _ref.drawerProps;
40
41
  var ref = useRef(null);
41
42
  var modalRef = useRef(null);
@@ -192,7 +193,8 @@ var ProDrawer = function ProDrawer(_ref) {
192
193
  placement: "right",
193
194
  className: "pro-drawer ".concat(className !== null && className !== void 0 ? className : ''),
194
195
  closable: false,
195
- onClose: onCancel
196
+ onClose: onCancel,
197
+ zIndex: zIndex
196
198
  }, drawerProps), {}, {
197
199
  children: [_jsx("div", {
198
200
  className: "pro-drawer-close",
@@ -35,8 +35,9 @@ var ProModal = function ProModal(_ref) {
35
35
  onCancel = _ref.onCancel,
36
36
  children = _ref.children,
37
37
  className = _ref.className,
38
- modalProps = _ref.modalProps,
39
- extraLeft = _ref.extraLeft;
38
+ extraLeft = _ref.extraLeft,
39
+ zIndex = _ref.zIndex,
40
+ modalProps = _ref.modalProps;
40
41
  var ref = useRef(null);
41
42
  var _ref2 = useScroll((_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.parentNode) || {},
42
43
  top = _ref2.top;
@@ -178,7 +179,8 @@ var ProModal = function ProModal(_ref) {
178
179
  closeIcon: _jsx(ReactSVG, {
179
180
  className: "close-icon",
180
181
  src: closeSvg
181
- })
182
+ }),
183
+ zIndex: zIndex
182
184
  }, modalProps), {}, {
183
185
  children: _jsx("div", {
184
186
  ref: ref,
@@ -98,4 +98,5 @@ export interface ProDrawerFormPropsType {
98
98
  */
99
99
  onCloseClean?: boolean;
100
100
  children?: React.ReactNode;
101
+ zIndex?: number;
101
102
  }
@@ -43,7 +43,7 @@ var ProEnum = function ProEnum(props) {
43
43
  enumProps = _objectWithoutProperties(props, _excluded);
44
44
  var _ref = otherProps || {},
45
45
  viewEmpty = _ref.viewEmpty;
46
- var _isView = isView || (otherProps === null || otherProps === void 0 ? void 0 : otherProps.isView);
46
+ var _isView = isView !== undefined && isView !== null ? isView : otherProps === null || otherProps === void 0 ? void 0 : otherProps.isView;
47
47
  var _ref2 = useProConfig('ProEnum') || {},
48
48
  fieldNames = _ref2.fieldNames,
49
49
  _ref2$clear = _ref2.clear,
@@ -26,7 +26,8 @@ var Group = function Group(props) {
26
26
  value = props.value,
27
27
  onChange = props.onChange,
28
28
  otherProps = props.otherProps,
29
- id = props.id;
29
+ id = props.id,
30
+ isParentView = props.isView;
30
31
  var contextProps = ProForm.useFieldProps() || {};
31
32
  var names = contextProps.names,
32
33
  name = contextProps.name,
@@ -71,7 +72,7 @@ var Group = function Group(props) {
71
72
  children: columns.map(function (column, index) {
72
73
  return _jsx(ComRender, _objectSpread(_objectSpread({
73
74
  contextProps: contextProps,
74
- isView: isView
75
+ isView: isParentView || isView
75
76
  }, column), {}, {
76
77
  otherProps: otherProps
77
78
  }), column.name);
@@ -82,7 +83,7 @@ var Group = function Group(props) {
82
83
  children: columns.map(function (column, index) {
83
84
  return _jsx(ComRender, _objectSpread(_objectSpread({
84
85
  contextProps: contextProps,
85
- isView: isView
86
+ isView: isParentView || isView
86
87
  }, column), {}, {
87
88
  otherProps: otherProps
88
89
  }), column.name);
@@ -845,7 +845,8 @@ var ProModalSelect = function ProModalSelect(props, ref) {
845
845
  onOk: handleFinish,
846
846
  // @ts-ignore
847
847
  onCancel: handleClose,
848
- visible: visible
848
+ visible: visible,
849
+ zIndex: 1071
849
850
  }, restModalProps), {}, {
850
851
  children: [_jsx(ProForm, {
851
852
  submitOnEnter: true,
@@ -29,7 +29,6 @@ var ChangedWrapper = function ChangedWrapper(props) {
29
29
  getValueProps = props.getValueProps,
30
30
  viewRender = props.viewRender,
31
31
  rest = _objectWithoutProperties(props, _excluded);
32
- // const contentRef = useRef(null);
33
32
  var _useProConfig = useProConfig('ProForm'),
34
33
  isDiffAll = _useProConfig.isDiffAll;
35
34
  var originalValues = diffConfig.originalValues,
@@ -488,7 +488,6 @@
488
488
  .original-value-tootip{
489
489
  max-width: 100%;
490
490
  width: max-content;
491
- z-index: 99;
492
491
  position: fixed;
493
492
  .changed-tooltip {
494
493
  .original-value-container {
@@ -1,15 +1,15 @@
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, isInNewRow, }: {
3
+ export declare const formatColumn: ({ column, originalObj, rowKey, diffToolTip, wrapToolTipProps, scroll, onUpdateMinWidth, isInNewRow, diffConfig, }: {
4
4
  column: ProTableColumn;
5
5
  originalObj: any;
6
- dataSourceObj: any;
7
6
  rowKey: any;
8
7
  diffToolTip?: boolean;
9
8
  wrapToolTipProps?: any;
10
9
  scroll?: any;
11
10
  onUpdateMinWidth?: any;
12
11
  isInNewRow?: any;
12
+ diffConfig: any;
13
13
  }) => void;
14
14
  /**
15
15
  * 查找最近的父级className
@@ -1,6 +1,8 @@
1
1
  import "antd/es/space/style";
2
2
  import _Space from "antd/es/space";
3
3
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
4
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
+ var _excluded = ["title", "valueType", "format", "precision", "ellipsis", "code", "copyable", "width", "tooltip", "transform", "prefix", "suffix", "dataIndex", "originalDiffTip", "toolTipProps", "minWidth", "onDiff"];
4
6
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
5
7
  import { isValidElement } from 'react';
6
8
  import moment from 'moment';
@@ -11,6 +13,7 @@ import { tools } from '@zat-design/utils';
11
13
  import TooltipTitle from '../TooltipTitle';
12
14
  import RenderColumn from '../RenderColumn';
13
15
  import { getDecimalDigits, getOriginalValue } from '../../utils';
16
+ import { isEmpty } from '../../../utils';
14
17
  import getEnumLabel from '../../../ProEnum/utils/getEnumLabel';
15
18
  import ProForm from '../../../ProForm';
16
19
  var isReactElement = function isReactElement(element) {
@@ -46,13 +49,13 @@ var calcMinWidth = function calcMinWidth(_ref) {
46
49
  export var formatColumn = function formatColumn(_ref2) {
47
50
  var column = _ref2.column,
48
51
  originalObj = _ref2.originalObj,
49
- dataSourceObj = _ref2.dataSourceObj,
50
52
  rowKey = _ref2.rowKey,
51
53
  diffToolTip = _ref2.diffToolTip,
52
54
  wrapToolTipProps = _ref2.wrapToolTipProps,
53
55
  scroll = _ref2.scroll,
54
56
  onUpdateMinWidth = _ref2.onUpdateMinWidth,
55
- isInNewRow = _ref2.isInNewRow;
57
+ isInNewRow = _ref2.isInNewRow,
58
+ diffConfig = _ref2.diffConfig;
56
59
  var title = column.title,
57
60
  valueType = column.valueType,
58
61
  _column$format = column.format,
@@ -68,12 +71,12 @@ export var formatColumn = function formatColumn(_ref2) {
68
71
  prefix = column.prefix,
69
72
  suffix = column.suffix,
70
73
  dataIndex = column.dataIndex,
71
- _column$originalDiffT = column.originalDiffTip,
72
- originalDiffTip = _column$originalDiffT === void 0 ? true : _column$originalDiffT,
74
+ originalDiffTip = column.originalDiffTip,
73
75
  _column$toolTipProps = column.toolTipProps,
74
76
  toolTipProps = _column$toolTipProps === void 0 ? {} : _column$toolTipProps,
75
77
  minWidth = column.minWidth,
76
- onDiff = column.onDiff;
78
+ onDiff = column.onDiff,
79
+ otherProps = _objectWithoutProperties(column, _excluded);
77
80
  // 仅在 {x: 'max-content', y: 300 } 且 column无指定 width minWidth 情况下 才开启 minWidth的自动计算
78
81
  var isMaxContentOverFlow = isObject(scroll) ? (scroll === null || scroll === void 0 ? void 0 : scroll.x) === 'max-content' && Reflect.ownKeys(scroll).includes('y') : false;
79
82
  calcMinWidth({
@@ -84,7 +87,7 @@ export var formatColumn = function formatColumn(_ref2) {
84
87
  callback: onUpdateMinWidth
85
88
  });
86
89
  var _toolTipProps = _objectSpread(_objectSpread({}, toolTipProps), wrapToolTipProps);
87
- var _originalDiffTip = diffToolTip !== null && diffToolTip !== void 0 ? diffToolTip : originalDiffTip;
90
+ var _originalDiffTip = (diffConfig === null || diffConfig === void 0 ? void 0 : diffConfig.originalDataSource) || (diffConfig === null || diffConfig === void 0 ? void 0 : diffConfig.toolTip);
88
91
  // 前缀处理
89
92
  var prefixNode = function prefixNode(value, record, index) {
90
93
  if (!prefix) {
@@ -116,29 +119,26 @@ export var formatColumn = function formatColumn(_ref2) {
116
119
  var originalRender = column.render; // 保存原始的 render 方法
117
120
  // 自定义render 手动重载下
118
121
  column.render = function (value, record, index) {
119
- var _originalObj$record$r;
120
122
  var isFn = isFunction(originalRender);
121
123
  var _value = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(value, record !== null && record !== void 0 ? record : {}, index) : null;
122
124
  var originalValue = getOriginalValue(value, record !== null && record !== void 0 ? record : {}, originalObj, rowKey, dataIndex);
123
- 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;
124
125
  var isInNewRowFlag = isInNewRow(record);
125
- var extraDiffFlag = false;
126
- // 把比对结果告诉我
127
- if (onDiff) {
128
- var isDiff = onDiff({
129
- value: record,
130
- originValue: originalObj === null || originalObj === void 0 ? void 0 : originalObj[record === null || record === void 0 ? void 0 : record[rowKey]]
126
+ // 存在比对
127
+ if (isFunction(otherProps === null || otherProps === void 0 ? void 0 : otherProps.viewRender) && (diffConfig === null || diffConfig === void 0 ? void 0 : diffConfig.originalDataSource)) {
128
+ var _originalObj$record$r;
129
+ var diffResult = otherProps.viewRender({
130
+ originalValue: originalValue,
131
+ originalRecord: (_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 : {},
132
+ value: value,
133
+ record: record,
134
+ index: index
131
135
  });
132
- if (!isDiff) {
133
- originalValue = null;
134
- } else {
135
- originalValue = true;
136
- extraDiffFlag = true;
137
- }
136
+ originalValue = diffResult;
137
+ otherProps.diffChange = diffResult;
138
138
  }
139
- return _jsx(RenderColumn, {
139
+ return _jsx(RenderColumn, _objectSpread(_objectSpread({}, otherProps), {}, {
140
140
  valueType: valueType,
141
- originalValue: !originalValue && originalValue !== 0 ? null : extraDiffFlag ? originalRenderValue !== null && originalRenderValue !== void 0 ? originalRenderValue : originalValue : originalRenderValue,
141
+ originalValue: isEmpty(originalValue) ? null : originalValue,
142
142
  ellipsis: ellipsis,
143
143
  width: width,
144
144
  value: _value,
@@ -148,7 +148,7 @@ export var formatColumn = function formatColumn(_ref2) {
148
148
  toolTipProps: _toolTipProps,
149
149
  minWidth: minWidth,
150
150
  isInNewRowFlag: isInNewRowFlag
151
- });
151
+ }));
152
152
  };
153
153
  return;
154
154
  }
@@ -174,7 +174,7 @@ export var formatColumn = function formatColumn(_ref2) {
174
174
  var originalValue = getOriginalValue(value, record, originalObj, rowKey, dataIndex);
175
175
  var originalRealValue = tools.calc(Number(originalValue || null), '*', multiple);
176
176
  var originalRenderValue = getDecimalDigits(originalValue) > valueTypePrecision ? originalRealValue : originalRealValue.toFixed(valueTypePrecision);
177
- if (!originalValue && originalValue !== 0) {
177
+ if (isEmpty(originalValue)) {
178
178
  originalRenderValue = '-';
179
179
  }
180
180
  if (!value && value !== 0 && renderValue === originalRenderValue) {
@@ -190,9 +190,9 @@ export var formatColumn = function formatColumn(_ref2) {
190
190
  children: [prefixNode(value, record, index), renderValue, suffixNode(value, record, index)]
191
191
  });
192
192
  var isInNewRowFlag = isInNewRow(record);
193
- return _jsx(RenderColumn, {
193
+ return _jsx(RenderColumn, _objectSpread(_objectSpread({}, otherProps), {}, {
194
194
  valueType: valueType,
195
- originalValue: originalValue === undefined ? undefined : originalRenderValue,
195
+ originalValue: originalValue === null ? null : originalRenderValue,
196
196
  ellipsis: ellipsis,
197
197
  width: width,
198
198
  node: node,
@@ -202,7 +202,7 @@ export var formatColumn = function formatColumn(_ref2) {
202
202
  toolTipProps: _toolTipProps,
203
203
  minWidth: minWidth,
204
204
  isInNewRowFlag: isInNewRowFlag
205
- });
205
+ }));
206
206
  };
207
207
  // 千分位, 千分位带CNY前缀
208
208
  } else if (['thousandth', 'thousandthCNY'].includes(valueType)) {
@@ -212,7 +212,7 @@ export var formatColumn = function formatColumn(_ref2) {
212
212
  var originalValue = getOriginalValue(value, record, originalObj, rowKey, dataIndex);
213
213
  var originalRealValue = valueTypePrecision ? "".concat(Number(originalValue).toFixed(valueTypePrecision)) : "".concat(originalValue);
214
214
  var originalRenderValue = originalRealValue.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
215
- if (!originalValue && originalValue !== 0) {
215
+ if (isEmpty(originalValue)) {
216
216
  originalRenderValue = '-';
217
217
  }
218
218
  var node = _jsxs(_Space, {
@@ -228,9 +228,9 @@ export var formatColumn = function formatColumn(_ref2) {
228
228
  });
229
229
  }
230
230
  var isInNewRowFlag = isInNewRow(record);
231
- return _jsx(RenderColumn, {
231
+ return _jsx(RenderColumn, _objectSpread(_objectSpread({}, otherProps), {}, {
232
232
  valueType: valueType,
233
- originalValue: originalValue === undefined ? undefined : originalRenderValue,
233
+ originalValue: originalValue === null ? null : originalRenderValue,
234
234
  ellipsis: ellipsis,
235
235
  width: width,
236
236
  node: node,
@@ -240,7 +240,7 @@ export var formatColumn = function formatColumn(_ref2) {
240
240
  toolTipProps: _toolTipProps,
241
241
  minWidth: minWidth,
242
242
  isInNewRowFlag: isInNewRowFlag
243
- });
243
+ }));
244
244
  };
245
245
  } else if (['datePicker', 'date', 'dateTime', 'dateStartTime', 'dateEndTime', 'dateStartEndTime'].includes(valueType)) {
246
246
  column.render = function (value, record, index) {
@@ -289,9 +289,9 @@ export var formatColumn = function formatColumn(_ref2) {
289
289
  });
290
290
  }
291
291
  var isInNewRowFlag = isInNewRow(record);
292
- return _jsx(RenderColumn, {
292
+ return _jsx(RenderColumn, _objectSpread(_objectSpread({}, otherProps), {}, {
293
293
  valueType: valueType,
294
- originalValue: originalValue === undefined ? undefined : originalRenderValue,
294
+ originalValue: originalValue === null ? null : originalRenderValue,
295
295
  ellipsis: ellipsis,
296
296
  width: width,
297
297
  node: node,
@@ -301,7 +301,7 @@ export var formatColumn = function formatColumn(_ref2) {
301
301
  toolTipProps: _toolTipProps,
302
302
  minWidth: minWidth,
303
303
  isInNewRowFlag: isInNewRowFlag
304
- });
304
+ }));
305
305
  };
306
306
  } else if (['enumName', 'enumCodeName'].includes(valueType)) {
307
307
  column.render = function (value, record, index) {
@@ -330,9 +330,9 @@ export var formatColumn = function formatColumn(_ref2) {
330
330
  children: [prefixNode(value, record, index), renderValue, suffixNode(value, record, index)]
331
331
  });
332
332
  var isInNewRowFlag = isInNewRow(record);
333
- return _jsx(RenderColumn, {
333
+ return _jsx(RenderColumn, _objectSpread(_objectSpread({}, otherProps), {}, {
334
334
  valueType: valueType,
335
- originalValue: originalValue === undefined ? undefined : originalRenderValue,
335
+ originalValue: originalValue === null ? null : originalRenderValue,
336
336
  ellipsis: ellipsis,
337
337
  width: width,
338
338
  node: node,
@@ -342,7 +342,7 @@ export var formatColumn = function formatColumn(_ref2) {
342
342
  toolTipProps: _toolTipProps,
343
343
  minWidth: minWidth,
344
344
  isInNewRowFlag: isInNewRowFlag
345
- });
345
+ }));
346
346
  };
347
347
  } else if (precision || prefix || suffix) {
348
348
  column.render = function (value, record, index) {
@@ -353,7 +353,7 @@ export var formatColumn = function formatColumn(_ref2) {
353
353
  size: 8,
354
354
  children: [prefixNode(value, record, index), renderValue, suffixNode(value, record, index)]
355
355
  });
356
- if (!originalValue && originalValue !== 0) {
356
+ if (isEmpty(originalValue)) {
357
357
  originalRenderValue = '-';
358
358
  }
359
359
  if (!value && value !== 0 && renderValue === originalRenderValue) {
@@ -365,9 +365,9 @@ export var formatColumn = function formatColumn(_ref2) {
365
365
  });
366
366
  }
367
367
  var isInNewRowFlag = isInNewRow(record);
368
- return _jsx(RenderColumn, {
368
+ return _jsx(RenderColumn, _objectSpread(_objectSpread({}, otherProps), {}, {
369
369
  valueType: valueType,
370
- originalValue: originalValue === undefined ? undefined : originalRenderValue,
370
+ originalValue: originalValue === null ? null : originalRenderValue,
371
371
  ellipsis: ellipsis,
372
372
  width: width,
373
373
  node: node,
@@ -377,7 +377,7 @@ export var formatColumn = function formatColumn(_ref2) {
377
377
  toolTipProps: _toolTipProps,
378
378
  minWidth: minWidth,
379
379
  isInNewRowFlag: isInNewRowFlag
380
- });
380
+ }));
381
381
  };
382
382
  } else if (valueType === 'address') {
383
383
  column.render = function (value, record, index) {
@@ -396,6 +396,9 @@ export var formatColumn = function formatColumn(_ref2) {
396
396
  children: "-"
397
397
  });
398
398
  }
399
+ if (originalValue && !isEqual(realValue, originalRealValue)) {
400
+ otherProps.diffChange = true;
401
+ }
399
402
  var className = classnames({
400
403
  'empty-cell': isEmpty
401
404
  });
@@ -420,9 +423,9 @@ export var formatColumn = function formatColumn(_ref2) {
420
423
  tooltip: false
421
424
  });
422
425
  var isInNewRowFlag = isInNewRow(record);
423
- return _jsx(RenderColumn, {
426
+ return _jsx(RenderColumn, _objectSpread(_objectSpread({}, otherProps), {}, {
424
427
  valueType: valueType,
425
- originalValue: originalValue === undefined ? undefined : originalRenderValue,
428
+ originalValue: originalValue === null ? null : originalRenderValue,
426
429
  ellipsis: ellipsis,
427
430
  width: width,
428
431
  node: renderNode,
@@ -432,14 +435,14 @@ export var formatColumn = function formatColumn(_ref2) {
432
435
  toolTipProps: _toolTipProps,
433
436
  minWidth: minWidth,
434
437
  isInNewRowFlag: isInNewRowFlag
435
- });
438
+ }));
436
439
  };
437
440
  } else if (copyable) {
438
441
  column.render = function (value, record, index) {
439
442
  var isInNewRowFlag = isInNewRow(record);
440
443
  return _jsxs(_Space, {
441
444
  size: 8,
442
- children: [prefixNode(value, record, index), _jsx(RenderColumn, {
445
+ children: [prefixNode(value, record, index), _jsx(RenderColumn, _objectSpread(_objectSpread({}, otherProps), {}, {
443
446
  valueType: valueType,
444
447
  copyable: copyable,
445
448
  ellipsis: ellipsis,
@@ -450,7 +453,7 @@ export var formatColumn = function formatColumn(_ref2) {
450
453
  toolTipProps: _toolTipProps,
451
454
  minWidth: minWidth,
452
455
  isInNewRowFlag: isInNewRowFlag
453
- }), suffixNode(value, record, index)]
456
+ })), suffixNode(value, record, index)]
454
457
  });
455
458
  };
456
459
  } else if (ellipsis) {
@@ -467,9 +470,9 @@ export var formatColumn = function formatColumn(_ref2) {
467
470
  var isInNewRowFlag = isInNewRow(record);
468
471
  return _jsxs(_Space, {
469
472
  size: 8,
470
- children: [prefixNode(value, record, index), _jsx(RenderColumn, {
473
+ children: [prefixNode(value, record, index), _jsx(RenderColumn, _objectSpread(_objectSpread({}, otherProps), {}, {
471
474
  valueType: valueType,
472
- originalValue: originalValue === undefined ? undefined : originalValue || '-',
475
+ originalValue: originalValue === null ? null : originalValue || '-',
473
476
  ellipsis: ellipsis,
474
477
  width: width,
475
478
  node: value,
@@ -479,7 +482,7 @@ export var formatColumn = function formatColumn(_ref2) {
479
482
  toolTipProps: _toolTipProps,
480
483
  minWidth: minWidth,
481
484
  isInNewRowFlag: isInNewRowFlag
482
- }), suffixNode(value, record, index)]
485
+ })), suffixNode(value, record, index)]
483
486
  });
484
487
  };
485
488
  } else {
@@ -498,9 +501,9 @@ export var formatColumn = function formatColumn(_ref2) {
498
501
  });
499
502
  }
500
503
  var isInNewRowFlag = isInNewRow(record);
501
- return _jsx(RenderColumn, {
504
+ return _jsx(RenderColumn, _objectSpread(_objectSpread({}, otherProps), {}, {
502
505
  valueType: valueType,
503
- originalValue: originalValue === undefined ? undefined : originalValue || '-',
506
+ originalValue: originalValue === null ? null : originalValue || '-',
504
507
  ellipsis: ellipsis,
505
508
  width: width,
506
509
  node: node,
@@ -510,7 +513,7 @@ export var formatColumn = function formatColumn(_ref2) {
510
513
  toolTipProps: _toolTipProps,
511
514
  minWidth: minWidth,
512
515
  isInNewRowFlag: isInNewRowFlag
513
- });
516
+ }));
514
517
  };
515
518
  }
516
519
  };
@@ -13,6 +13,7 @@ interface Props {
13
13
  toolTipProps?: TooltipProps & React.RefAttributes<unknown>;
14
14
  minWidth?: number;
15
15
  isInNewRowFlag?: boolean;
16
+ diffChange?: boolean;
16
17
  }
17
18
  declare const RenderColumn: FC<Props>;
18
19
  export default RenderColumn;
@@ -8,8 +8,10 @@ import "antd/es/typography/style";
8
8
  import _Typography from "antd/es/typography";
9
9
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
10
10
  import { useSetState } from 'ahooks';
11
+ import classNames from 'classnames';
11
12
  import { CheckOutlined } from '@ant-design/icons';
12
13
  import { ReactSVG } from 'react-svg';
14
+ import { isEmpty } from '../../../utils';
13
15
  import copySvg from '../../../assets/copy.svg';
14
16
  var Paragraph = _Typography.Paragraph,
15
17
  Text = _Typography.Text;
@@ -34,7 +36,10 @@ var RenderColumn = function RenderColumn(props) {
34
36
  _useSetState2 = _slicedToArray(_useSetState, 2),
35
37
  tooltip = _useSetState2[0].tooltip,
36
38
  setState = _useSetState2[1];
37
- if ((originalValue || originalValue === 0) && !isInNewRowFlag) {
39
+ var cellDiffCls = classNames({
40
+ 'varied-cell': originalDiffTip
41
+ });
42
+ if (!isEmpty(originalValue, '-') && !isInNewRowFlag) {
38
43
  var renderNode = value ? node : '-';
39
44
  if (ellipsis || originalDiffTip) {
40
45
  renderNode = _jsx(Text, {
@@ -47,8 +52,14 @@ var RenderColumn = function RenderColumn(props) {
47
52
  },
48
53
  children: ellipsis ? currentValue : renderNode
49
54
  });
55
+ if ((props === null || props === void 0 ? void 0 : props.diffChange) === false) {
56
+ return renderNode;
57
+ }
58
+ if (Array.isArray(originalValue)) {
59
+ console.error('Error: When enabled, dataIndex corresponds to an array, which needs to be converted using viewRender');
60
+ }
50
61
  return _jsx(_Tooltip, _objectSpread(_objectSpread({
51
- className: "varied-cell",
62
+ className: cellDiffCls,
52
63
  style: {
53
64
  width: width,
54
65
  minWidth: minWidth
@@ -63,7 +74,7 @@ var RenderColumn = function RenderColumn(props) {
63
74
  children: [_jsxs(_Space, {
64
75
  align: "start",
65
76
  className: "original-value-container",
66
- children: ["\u521D\u59CB\u503C\uFF1A", originalValue]
77
+ children: ["\u521D\u59CB\u503C\uFF1A", !Array.isArray(originalValue) ? originalValue : null]
67
78
  }), _jsx(_Space, {
68
79
  className: "current-value-container",
69
80
  children: ellipsis ? _jsxs(_Space, {
@@ -79,8 +90,11 @@ var RenderColumn = function RenderColumn(props) {
79
90
  children: renderNode
80
91
  }));
81
92
  }
93
+ if ((props === null || props === void 0 ? void 0 : props.diffChange) === false) {
94
+ return renderNode;
95
+ }
82
96
  return _jsx("span", {
83
- className: "varied-cell",
97
+ className: cellDiffCls,
84
98
  style: {
85
99
  width: width,
86
100
  minWidth: minWidth
@@ -1,19 +1,20 @@
1
1
  /// <reference types="react" />
2
2
  import { ProTableProps } from './propsType';
3
+ import useAntdTable from './hooks/useAntdTable';
3
4
  export declare const TableContext: import("react").Context<{}>;
4
5
  export declare const defaultPage: {
5
6
  pageNum: number;
6
7
  pageSize: number;
7
8
  };
8
- declare function ProTable(props: ProTableProps): import("react/jsx-runtime").JSX.Element;
9
- declare namespace ProTable {
10
- var defaultProps: {
9
+ declare const ProTable: {
10
+ (props: ProTableProps): import("react/jsx-runtime").JSX.Element;
11
+ defaultProps: {
11
12
  quickConfig: boolean;
12
13
  stripe: boolean;
13
14
  draggable: boolean;
14
15
  disabled: boolean;
15
16
  isView: boolean;
16
17
  };
17
- var useAntdTable: typeof import("./hooks/useAntdTable").default;
18
- }
18
+ useAntdTable: typeof useAntdTable;
19
+ };
19
20
  export default ProTable;
@@ -29,7 +29,7 @@ export var defaultPage = {
29
29
  pageNum: 1,
30
30
  pageSize: 10
31
31
  };
32
- function ProTable(props) {
32
+ var ProTable = function ProTable(props) {
33
33
  var _locale$ProTable, _props$scroll, _curTableConfig$pathK;
34
34
  var _ref = useProConfig('globalConfig') || {},
35
35
  configStorage = _ref.storage; // 获取全局缓存位置配置
@@ -114,7 +114,6 @@ function ProTable(props) {
114
114
  });
115
115
  });
116
116
  var originalObj = _originalDataSource ? keyBy(_originalDataSource, 'rowKey') : undefined;
117
- var dataSourceObj = _dataSource ? keyBy(_dataSource, 'rowKey') : {};
118
117
  var propsColumnObj = useMemo(function () {
119
118
  return propsColumns.reduce(function (acc, cur) {
120
119
  // @ts-ignore
@@ -213,8 +212,8 @@ function ProTable(props) {
213
212
  formatColumn({
214
213
  column: item,
215
214
  originalObj: originalObj,
216
- dataSourceObj: dataSourceObj,
217
- rowKey: 'rowKey',
215
+ rowKey: props.rowKey,
216
+ diffConfig: diffConfig,
218
217
  diffToolTip: toolTip,
219
218
  wrapToolTipProps: wrapToolTipProps,
220
219
  scroll: _scroll,
@@ -447,7 +446,7 @@ function ProTable(props) {
447
446
  })]
448
447
  })
449
448
  });
450
- }
449
+ };
451
450
  ProTable.defaultProps = {
452
451
  quickConfig: false,
453
452
  stripe: true,
@@ -45,6 +45,8 @@ export interface ProTableColumn extends Omit<ColumnType<any>, 'dataIndex'> {
45
45
  value: any;
46
46
  originValue: any;
47
47
  }) => boolean;
48
+ viewRender?: ({ value, record, index, originalValue, originalRecord }: any) => any;
49
+ diffChange?: boolean;
48
50
  }
49
51
  export interface CreateTreeFromArrayOptions {
50
52
  itemKey?: string;