@zat-design/sisyphus-react 3.9.0 → 3.9.1-beta.2
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 +42 -16
- package/dist/less.esm.css +38 -14
- package/es/ProDrawerForm/components/ProDrawer/index.js +3 -1
- package/es/ProDrawerForm/components/ProModal/index.js +5 -3
- package/es/ProDrawerForm/propsType.d.ts +1 -0
- package/es/ProDrawerForm/style/index.less +3 -0
- package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +7 -3
- package/es/ProEditTable/components/RenderField/index.js +3 -2
- package/es/ProEditTable/index.js +23 -16
- package/es/ProEditTable/style/index.less +14 -2
- package/es/ProEnum/index.js +6 -4
- package/es/ProEnum/propsType.d.ts +1 -0
- package/es/ProForm/components/base/SwitchCheckbox/index.js +9 -2
- package/es/ProForm/components/combination/FormList/index.js +1 -1
- package/es/ProForm/components/combination/Group/component/ComRender.d.ts +1 -0
- package/es/ProForm/components/combination/Group/component/ComRender.js +12 -1
- package/es/ProForm/components/combination/Group/index.js +4 -3
- package/es/ProForm/components/combination/ProModalSelect/index.js +30 -29
- package/es/ProForm/components/render/ChangedWrapper.js +3 -3
- package/es/ProForm/components/render/RenderFields.js +3 -2
- package/es/ProForm/components/render/propsType.d.ts +1 -0
- package/es/ProForm/style/index.less +10 -6
- package/es/ProForm/utils/diffOriginal.js +18 -12
- package/es/ProTable/components/FormatColumn/index.d.ts +5 -3
- package/es/ProTable/components/FormatColumn/index.js +93 -72
- package/es/ProTable/components/RenderColumn/index.d.ts +1 -1
- package/es/ProTable/components/RenderColumn/index.js +41 -23
- package/es/ProTable/components/TableResizable/index.js +1 -5
- package/es/ProTable/index.d.ts +6 -5
- package/es/ProTable/index.js +4 -6
- package/es/ProTable/propsType.d.ts +2 -1
- package/es/ProTable/style/index.less +16 -1
- package/es/ProTable/utils/index.d.ts +5 -2
- package/es/ProTable/utils/index.js +13 -4
- package/es/ProTree/components/ProTreeSelect/index.js +32 -13
- package/es/style/theme/antd.less +4 -2
- package/es/utils/index.d.ts +1 -1
- package/es/utils/index.js +4 -1
- package/lib/ProDrawerForm/components/ProDrawer/index.js +3 -1
- package/lib/ProDrawerForm/components/ProModal/index.js +5 -3
- package/lib/ProDrawerForm/propsType.d.ts +1 -0
- package/lib/ProDrawerForm/style/index.less +3 -0
- package/lib/ProEditTable/components/RenderField/ListChangedWrapper.js +5 -1
- package/lib/ProEditTable/components/RenderField/index.js +3 -2
- package/lib/ProEditTable/index.js +23 -16
- package/lib/ProEditTable/style/index.less +14 -2
- package/lib/ProEnum/index.js +6 -4
- package/lib/ProEnum/propsType.d.ts +1 -0
- package/lib/ProForm/components/base/SwitchCheckbox/index.js +9 -2
- package/lib/ProForm/components/combination/FormList/index.js +1 -1
- package/lib/ProForm/components/combination/Group/component/ComRender.d.ts +1 -0
- package/lib/ProForm/components/combination/Group/component/ComRender.js +12 -1
- package/lib/ProForm/components/combination/Group/index.js +4 -3
- package/lib/ProForm/components/combination/ProModalSelect/index.js +29 -28
- package/lib/ProForm/components/render/ChangedWrapper.js +3 -3
- package/lib/ProForm/components/render/RenderFields.js +3 -2
- package/lib/ProForm/components/render/propsType.d.ts +1 -0
- package/lib/ProForm/style/index.less +10 -6
- package/lib/ProForm/utils/diffOriginal.js +18 -12
- package/lib/ProTable/components/FormatColumn/index.d.ts +5 -3
- package/lib/ProTable/components/FormatColumn/index.js +92 -71
- package/lib/ProTable/components/RenderColumn/index.d.ts +1 -1
- package/lib/ProTable/components/RenderColumn/index.js +41 -23
- package/lib/ProTable/components/TableResizable/index.js +0 -4
- package/lib/ProTable/index.d.ts +6 -5
- package/lib/ProTable/index.js +4 -6
- package/lib/ProTable/propsType.d.ts +2 -1
- package/lib/ProTable/style/index.less +16 -1
- package/lib/ProTable/utils/index.d.ts +5 -2
- package/lib/ProTable/utils/index.js +13 -4
- package/lib/ProTree/components/ProTreeSelect/index.js +31 -12
- package/lib/style/theme/antd.less +4 -2
- package/lib/utils/index.d.ts +1 -1
- package/lib/utils/index.js +4 -1
- package/package.json +1 -1
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
});
|
7
7
|
exports.getParentElement = exports.formatColumn = void 0;
|
8
8
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
9
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
9
10
|
var _jsxRuntime = require("react/jsx-runtime");
|
10
11
|
var _react = require("react");
|
11
12
|
var _moment15 = _interopRequireDefault(require("moment"));
|
@@ -17,8 +18,13 @@ var _utils = require("@zat-design/utils");
|
|
17
18
|
var _TooltipTitle = _interopRequireDefault(require("../TooltipTitle"));
|
18
19
|
var _RenderColumn = _interopRequireDefault(require("../RenderColumn"));
|
19
20
|
var _utils2 = require("../../utils");
|
21
|
+
var _utils3 = require("../../../utils");
|
20
22
|
var _getEnumLabel = _interopRequireDefault(require("../../../ProEnum/utils/getEnumLabel"));
|
21
23
|
var _ProForm = _interopRequireDefault(require("../../../ProForm"));
|
24
|
+
var _excluded = ["title", "valueType", "format", "precision", "ellipsis", "code", "copyable", "width", "tooltip", "transform", "prefix", "suffix", "dataIndex", "toolTipProps", "minWidth", "onDiff"];
|
25
|
+
/**
|
26
|
+
* 调整点:
|
27
|
+
*/
|
22
28
|
var isReactElement = function isReactElement(element) {
|
23
29
|
return /*#__PURE__*/(0, _react.isValidElement)(element);
|
24
30
|
};
|
@@ -52,13 +58,12 @@ var calcMinWidth = function calcMinWidth(_ref) {
|
|
52
58
|
var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
53
59
|
var column = _ref2.column,
|
54
60
|
originalObj = _ref2.originalObj,
|
55
|
-
dataSourceObj = _ref2.dataSourceObj,
|
56
61
|
rowKey = _ref2.rowKey,
|
57
|
-
diffToolTip = _ref2.diffToolTip,
|
58
62
|
wrapToolTipProps = _ref2.wrapToolTipProps,
|
59
63
|
scroll = _ref2.scroll,
|
60
64
|
onUpdateMinWidth = _ref2.onUpdateMinWidth,
|
61
|
-
isInNewRow = _ref2.isInNewRow
|
65
|
+
isInNewRow = _ref2.isInNewRow,
|
66
|
+
diffConfig = _ref2.diffConfig;
|
62
67
|
var title = column.title,
|
63
68
|
valueType = column.valueType,
|
64
69
|
_column$format = column.format,
|
@@ -74,12 +79,11 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
74
79
|
prefix = column.prefix,
|
75
80
|
suffix = column.suffix,
|
76
81
|
dataIndex = column.dataIndex,
|
77
|
-
_column$originalDiffT = column.originalDiffTip,
|
78
|
-
originalDiffTip = _column$originalDiffT === void 0 ? true : _column$originalDiffT,
|
79
82
|
_column$toolTipProps = column.toolTipProps,
|
80
83
|
toolTipProps = _column$toolTipProps === void 0 ? {} : _column$toolTipProps,
|
81
84
|
minWidth = column.minWidth,
|
82
|
-
onDiff = column.onDiff
|
85
|
+
onDiff = column.onDiff,
|
86
|
+
otherProps = (0, _objectWithoutProperties2.default)(column, _excluded);
|
83
87
|
// 仅在 {x: 'max-content', y: 300 } 且 column无指定 width minWidth 情况下 才开启 minWidth的自动计算
|
84
88
|
var isMaxContentOverFlow = (0, _lodash.isObject)(scroll) ? (scroll === null || scroll === void 0 ? void 0 : scroll.x) === 'max-content' && Reflect.ownKeys(scroll).includes('y') : false;
|
85
89
|
calcMinWidth({
|
@@ -90,7 +94,6 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
90
94
|
callback: onUpdateMinWidth
|
91
95
|
});
|
92
96
|
var _toolTipProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, toolTipProps), wrapToolTipProps);
|
93
|
-
var _originalDiffTip = diffToolTip !== null && diffToolTip !== void 0 ? diffToolTip : originalDiffTip;
|
94
97
|
// 前缀处理
|
95
98
|
var prefixNode = function prefixNode(value, record, index) {
|
96
99
|
if (!prefix) {
|
@@ -122,39 +125,41 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
122
125
|
var originalRender = column.render; // 保存原始的 render 方法
|
123
126
|
// 自定义render 手动重载下
|
124
127
|
column.render = function (value, record, index) {
|
125
|
-
var _originalObj$record$r;
|
126
128
|
var isFn = (0, _lodash.isFunction)(originalRender);
|
127
129
|
var _value = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(value, record !== null && record !== void 0 ? record : {}, index) : null;
|
128
|
-
var
|
129
|
-
var
|
130
|
+
var originalResult = (0, _utils2.getOriginalValue)(value, record !== null && record !== void 0 ? record : {}, originalObj, rowKey, dataIndex);
|
131
|
+
var originalValue = originalResult.originalValue;
|
132
|
+
var isChanged = originalResult.isChanged;
|
130
133
|
var isInNewRowFlag = isInNewRow(record);
|
131
|
-
|
132
|
-
//
|
133
|
-
if (
|
134
|
-
var
|
135
|
-
|
136
|
-
|
134
|
+
otherProps.isChanged = isChanged;
|
135
|
+
// 存在比对
|
136
|
+
if ((0, _lodash.isFunction)(otherProps === null || otherProps === void 0 ? void 0 : otherProps.viewRender) && (diffConfig === null || diffConfig === void 0 ? void 0 : diffConfig.originalDataSource)) {
|
137
|
+
var _originalObj$record$r;
|
138
|
+
var diffResult = otherProps.viewRender({
|
139
|
+
originalValue: originalValue,
|
140
|
+
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 : {},
|
141
|
+
value: value,
|
142
|
+
record: record,
|
143
|
+
index: index
|
137
144
|
});
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
originalValue = true;
|
142
|
-
extraDiffFlag = true;
|
145
|
+
// viewRender 返回值为 false 时,不显示对比
|
146
|
+
if ((0, _lodash.isBoolean)(diffResult)) {
|
147
|
+
otherProps.isChanged = false;
|
143
148
|
}
|
149
|
+
originalValue = diffResult;
|
144
150
|
}
|
145
|
-
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
151
|
+
return (0, _jsxRuntime.jsx)(_RenderColumn.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherProps), {}, {
|
146
152
|
valueType: valueType,
|
147
|
-
originalValue:
|
153
|
+
originalValue: (0, _utils3.isEmpty)(originalValue) ? null : originalValue,
|
148
154
|
ellipsis: ellipsis,
|
149
155
|
width: width,
|
150
156
|
value: _value,
|
151
157
|
node: _value,
|
152
158
|
currentValue: _value,
|
153
|
-
originalDiffTip: _originalDiffTip,
|
154
159
|
toolTipProps: _toolTipProps,
|
155
160
|
minWidth: minWidth,
|
156
161
|
isInNewRowFlag: isInNewRowFlag
|
157
|
-
});
|
162
|
+
}));
|
158
163
|
};
|
159
164
|
return;
|
160
165
|
}
|
@@ -177,10 +182,13 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
177
182
|
var multiple = valueType === 'percentage' ? 100 : 1000;
|
178
183
|
var realValue = _utils.tools.calc(Number(value !== null && value !== void 0 ? value : 0), '*', multiple);
|
179
184
|
var renderValue = (0, _utils2.getDecimalDigits)(value) > valueTypePrecision ? realValue : realValue.toFixed(valueTypePrecision);
|
180
|
-
var
|
185
|
+
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
186
|
+
var originalValue = originalResult.originalValue;
|
187
|
+
var isChanged = originalResult.isChanged;
|
188
|
+
otherProps.isChanged = isChanged;
|
181
189
|
var originalRealValue = _utils.tools.calc(Number(originalValue || null), '*', multiple);
|
182
190
|
var originalRenderValue = (0, _utils2.getDecimalDigits)(originalValue) > valueTypePrecision ? originalRealValue : originalRealValue.toFixed(valueTypePrecision);
|
183
|
-
if (
|
191
|
+
if ((0, _utils3.isEmpty)(originalValue)) {
|
184
192
|
originalRenderValue = '-';
|
185
193
|
}
|
186
194
|
if (!value && value !== 0 && renderValue === originalRenderValue) {
|
@@ -196,29 +204,31 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
196
204
|
children: [prefixNode(value, record, index), renderValue, suffixNode(value, record, index)]
|
197
205
|
});
|
198
206
|
var isInNewRowFlag = isInNewRow(record);
|
199
|
-
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
207
|
+
return (0, _jsxRuntime.jsx)(_RenderColumn.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherProps), {}, {
|
200
208
|
valueType: valueType,
|
201
|
-
originalValue: originalValue ===
|
209
|
+
originalValue: originalValue === null ? null : originalRenderValue,
|
202
210
|
ellipsis: ellipsis,
|
203
211
|
width: width,
|
204
212
|
node: node,
|
205
213
|
value: value,
|
206
214
|
currentValue: renderValue,
|
207
|
-
originalDiffTip: _originalDiffTip,
|
208
215
|
toolTipProps: _toolTipProps,
|
209
216
|
minWidth: minWidth,
|
210
217
|
isInNewRowFlag: isInNewRowFlag
|
211
|
-
});
|
218
|
+
}));
|
212
219
|
};
|
213
220
|
// 千分位, 千分位带CNY前缀
|
214
221
|
} else if (['thousandth', 'thousandthCNY'].includes(valueType)) {
|
215
222
|
column.render = function (value, record, index) {
|
216
223
|
var valueStr = valueTypePrecision ? "".concat(Number(value).toFixed(valueTypePrecision)) : "".concat(value);
|
217
224
|
var renderValue = valueStr.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
218
|
-
var
|
225
|
+
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
226
|
+
var originalValue = originalResult.originalValue;
|
227
|
+
var isChanged = originalResult.isChanged;
|
228
|
+
otherProps.isChanged = isChanged;
|
219
229
|
var originalRealValue = valueTypePrecision ? "".concat(Number(originalValue).toFixed(valueTypePrecision)) : "".concat(originalValue);
|
220
230
|
var originalRenderValue = originalRealValue.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
221
|
-
if (
|
231
|
+
if ((0, _utils3.isEmpty)(originalValue)) {
|
222
232
|
originalRenderValue = '-';
|
223
233
|
}
|
224
234
|
var node = (0, _jsxRuntime.jsxs)(_antd.Space, {
|
@@ -234,25 +244,27 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
234
244
|
});
|
235
245
|
}
|
236
246
|
var isInNewRowFlag = isInNewRow(record);
|
237
|
-
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
247
|
+
return (0, _jsxRuntime.jsx)(_RenderColumn.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherProps), {}, {
|
238
248
|
valueType: valueType,
|
239
|
-
originalValue: originalValue ===
|
249
|
+
originalValue: originalValue === null ? null : originalRenderValue,
|
240
250
|
ellipsis: ellipsis,
|
241
251
|
width: width,
|
242
252
|
node: node,
|
243
253
|
value: value,
|
244
254
|
currentValue: renderValue,
|
245
|
-
originalDiffTip: _originalDiffTip,
|
246
255
|
toolTipProps: _toolTipProps,
|
247
256
|
minWidth: minWidth,
|
248
257
|
isInNewRowFlag: isInNewRowFlag
|
249
|
-
});
|
258
|
+
}));
|
250
259
|
};
|
251
260
|
} else if (['datePicker', 'date', 'dateTime', 'dateStartTime', 'dateEndTime', 'dateStartEndTime'].includes(valueType)) {
|
252
261
|
column.render = function (value, record, index) {
|
253
262
|
var _moment, _moment2, _moment3, _moment4, _moment5, _moment6, _moment7, _moment8, _moment9, _moment10, _moment11, _moment12, _moment13, _moment14;
|
254
263
|
var renderValue = (_moment = (0, _moment15.default)(value)) === null || _moment === void 0 ? void 0 : _moment.format(format);
|
255
|
-
var
|
264
|
+
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
265
|
+
var originalValue = originalResult.originalValue;
|
266
|
+
var isChanged = originalResult.isChanged;
|
267
|
+
otherProps.isChanged = isChanged;
|
256
268
|
var originalRenderValue = (_moment2 = (0, _moment15.default)(originalValue)) === null || _moment2 === void 0 ? void 0 : _moment2.format(format);
|
257
269
|
switch (valueType) {
|
258
270
|
case 'date':
|
@@ -295,25 +307,27 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
295
307
|
});
|
296
308
|
}
|
297
309
|
var isInNewRowFlag = isInNewRow(record);
|
298
|
-
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
310
|
+
return (0, _jsxRuntime.jsx)(_RenderColumn.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherProps), {}, {
|
299
311
|
valueType: valueType,
|
300
|
-
originalValue: originalValue ===
|
312
|
+
originalValue: originalValue === null ? null : originalRenderValue,
|
301
313
|
ellipsis: ellipsis,
|
302
314
|
width: width,
|
303
315
|
node: node,
|
304
316
|
value: value,
|
305
317
|
currentValue: renderValue,
|
306
|
-
originalDiffTip: _originalDiffTip,
|
307
318
|
toolTipProps: _toolTipProps,
|
308
319
|
minWidth: minWidth,
|
309
320
|
isInNewRowFlag: isInNewRowFlag
|
310
|
-
});
|
321
|
+
}));
|
311
322
|
};
|
312
323
|
} else if (['enumName', 'enumCodeName'].includes(valueType)) {
|
313
324
|
column.render = function (value, record, index) {
|
314
325
|
var realCode = typeof code === 'function' ? code(value, record) : code;
|
315
326
|
var renderValue = (0, _getEnumLabel.default)(realCode, value, valueType === 'enumCodeName');
|
316
|
-
var
|
327
|
+
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
328
|
+
var originalValue = originalResult.originalValue;
|
329
|
+
var isChanged = originalResult.isChanged;
|
330
|
+
otherProps.isChanged = isChanged;
|
317
331
|
var originalRenderValue = (0, _getEnumLabel.default)(realCode, originalValue, valueType === 'enumCodeName');
|
318
332
|
if (Array.isArray(column === null || column === void 0 ? void 0 : column.codeValues) && !realCode) {
|
319
333
|
var _column$codeValues$fi;
|
@@ -336,30 +350,32 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
336
350
|
children: [prefixNode(value, record, index), renderValue, suffixNode(value, record, index)]
|
337
351
|
});
|
338
352
|
var isInNewRowFlag = isInNewRow(record);
|
339
|
-
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
353
|
+
return (0, _jsxRuntime.jsx)(_RenderColumn.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherProps), {}, {
|
340
354
|
valueType: valueType,
|
341
|
-
originalValue: originalValue ===
|
355
|
+
originalValue: originalValue === null ? null : originalRenderValue,
|
342
356
|
ellipsis: ellipsis,
|
343
357
|
width: width,
|
344
358
|
node: node,
|
345
359
|
value: value,
|
346
360
|
currentValue: renderValue,
|
347
|
-
originalDiffTip: _originalDiffTip,
|
348
361
|
toolTipProps: _toolTipProps,
|
349
362
|
minWidth: minWidth,
|
350
363
|
isInNewRowFlag: isInNewRowFlag
|
351
|
-
});
|
364
|
+
}));
|
352
365
|
};
|
353
366
|
} else if (precision || prefix || suffix) {
|
354
367
|
column.render = function (value, record, index) {
|
355
368
|
var renderValue = value === 'number' ? value.toFixed(precision) : value;
|
356
|
-
var
|
369
|
+
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
370
|
+
var originalValue = originalResult.originalValue;
|
371
|
+
var isChanged = originalResult.isChanged;
|
372
|
+
otherProps.isChanged = isChanged;
|
357
373
|
var originalRenderValue = originalValue === 'number' ? originalValue.toFixed(precision) : originalValue;
|
358
374
|
var node = (0, _jsxRuntime.jsxs)(_antd.Space, {
|
359
375
|
size: 8,
|
360
376
|
children: [prefixNode(value, record, index), renderValue, suffixNode(value, record, index)]
|
361
377
|
});
|
362
|
-
if (
|
378
|
+
if ((0, _utils3.isEmpty)(originalValue)) {
|
363
379
|
originalRenderValue = '-';
|
364
380
|
}
|
365
381
|
if (!value && value !== 0 && renderValue === originalRenderValue) {
|
@@ -371,25 +387,27 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
371
387
|
});
|
372
388
|
}
|
373
389
|
var isInNewRowFlag = isInNewRow(record);
|
374
|
-
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
390
|
+
return (0, _jsxRuntime.jsx)(_RenderColumn.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherProps), {}, {
|
375
391
|
valueType: valueType,
|
376
|
-
originalValue: originalValue ===
|
392
|
+
originalValue: originalValue === null ? null : originalRenderValue,
|
377
393
|
ellipsis: ellipsis,
|
378
394
|
width: width,
|
379
395
|
node: node,
|
380
396
|
value: value,
|
381
397
|
currentValue: renderValue,
|
382
|
-
originalDiffTip: _originalDiffTip,
|
383
398
|
toolTipProps: _toolTipProps,
|
384
399
|
minWidth: minWidth,
|
385
400
|
isInNewRowFlag: isInNewRowFlag
|
386
|
-
});
|
401
|
+
}));
|
387
402
|
};
|
388
403
|
} else if (valueType === 'address') {
|
389
404
|
column.render = function (value, record, index) {
|
390
405
|
var _realValue$filter;
|
391
406
|
var realValue = transform ? transform(value, record) : value;
|
392
|
-
var
|
407
|
+
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
408
|
+
var originalValue = originalResult.originalValue;
|
409
|
+
var isChanged = originalResult.isChanged;
|
410
|
+
otherProps.isChanged = isChanged;
|
393
411
|
var originalRealValue = transform ? transform(originalValue, record) : originalValue;
|
394
412
|
var isEmpty = !realValue || Array.isArray(realValue) && (realValue === null || realValue === void 0 ? void 0 : (_realValue$filter = realValue.filter(function (item) {
|
395
413
|
return !!item;
|
@@ -426,26 +444,25 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
426
444
|
tooltip: false
|
427
445
|
});
|
428
446
|
var isInNewRowFlag = isInNewRow(record);
|
429
|
-
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
447
|
+
return (0, _jsxRuntime.jsx)(_RenderColumn.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherProps), {}, {
|
430
448
|
valueType: valueType,
|
431
|
-
originalValue: originalValue ===
|
432
|
-
ellipsis: ellipsis
|
449
|
+
originalValue: originalValue === null ? null : originalRenderValue,
|
450
|
+
ellipsis: ellipsis,
|
433
451
|
width: width,
|
434
452
|
node: renderNode,
|
435
453
|
value: renderValue,
|
436
454
|
currentValue: renderValue,
|
437
|
-
originalDiffTip: _originalDiffTip,
|
438
455
|
toolTipProps: _toolTipProps,
|
439
456
|
minWidth: minWidth,
|
440
457
|
isInNewRowFlag: isInNewRowFlag
|
441
|
-
});
|
458
|
+
}));
|
442
459
|
};
|
443
460
|
} else if (copyable) {
|
444
461
|
column.render = function (value, record, index) {
|
445
462
|
var isInNewRowFlag = isInNewRow(record);
|
446
463
|
return (0, _jsxRuntime.jsxs)(_antd.Space, {
|
447
464
|
size: 8,
|
448
|
-
children: [prefixNode(value, record, index), (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
465
|
+
children: [prefixNode(value, record, index), (0, _jsxRuntime.jsx)(_RenderColumn.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherProps), {}, {
|
449
466
|
valueType: valueType,
|
450
467
|
copyable: copyable,
|
451
468
|
ellipsis: ellipsis,
|
@@ -456,12 +473,15 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
456
473
|
toolTipProps: _toolTipProps,
|
457
474
|
minWidth: minWidth,
|
458
475
|
isInNewRowFlag: isInNewRowFlag
|
459
|
-
}), suffixNode(value, record, index)]
|
476
|
+
})), suffixNode(value, record, index)]
|
460
477
|
});
|
461
478
|
};
|
462
479
|
} else if (ellipsis) {
|
463
480
|
column.render = function (value, record, index) {
|
464
|
-
var
|
481
|
+
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
482
|
+
var originalValue = originalResult.originalValue;
|
483
|
+
var isChanged = originalResult.isChanged;
|
484
|
+
otherProps.isChanged = isChanged;
|
465
485
|
if (!value && value !== 0 && value === originalValue) {
|
466
486
|
(0, _jsxRuntime.jsx)("div", {
|
467
487
|
style: {
|
@@ -473,24 +493,26 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
473
493
|
var isInNewRowFlag = isInNewRow(record);
|
474
494
|
return (0, _jsxRuntime.jsxs)(_antd.Space, {
|
475
495
|
size: 8,
|
476
|
-
children: [prefixNode(value, record, index), (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
496
|
+
children: [prefixNode(value, record, index), (0, _jsxRuntime.jsx)(_RenderColumn.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherProps), {}, {
|
477
497
|
valueType: valueType,
|
478
|
-
originalValue: originalValue ===
|
498
|
+
originalValue: originalValue === null ? null : originalValue || '-',
|
479
499
|
ellipsis: ellipsis,
|
480
500
|
width: width,
|
481
501
|
node: value,
|
482
502
|
value: value,
|
483
503
|
currentValue: value || '-',
|
484
|
-
originalDiffTip: _originalDiffTip,
|
485
504
|
toolTipProps: _toolTipProps,
|
486
505
|
minWidth: minWidth,
|
487
506
|
isInNewRowFlag: isInNewRowFlag
|
488
|
-
}), suffixNode(value, record, index)]
|
507
|
+
})), suffixNode(value, record, index)]
|
489
508
|
});
|
490
509
|
};
|
491
510
|
} else {
|
492
511
|
column.render = function (value, record, index) {
|
493
|
-
var
|
512
|
+
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
513
|
+
var originalValue = originalResult.originalValue;
|
514
|
+
var isChanged = originalResult.isChanged;
|
515
|
+
otherProps.isChanged = isChanged;
|
494
516
|
var node = (0, _jsxRuntime.jsxs)(_antd.Space, {
|
495
517
|
size: 8,
|
496
518
|
children: [prefixNode(value, record, index), value, suffixNode(value, record, index)]
|
@@ -504,19 +526,18 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
504
526
|
});
|
505
527
|
}
|
506
528
|
var isInNewRowFlag = isInNewRow(record);
|
507
|
-
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
529
|
+
return (0, _jsxRuntime.jsx)(_RenderColumn.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherProps), {}, {
|
508
530
|
valueType: valueType,
|
509
|
-
originalValue: originalValue ===
|
531
|
+
originalValue: originalValue === null ? null : originalValue || '-',
|
510
532
|
ellipsis: ellipsis,
|
511
533
|
width: width,
|
512
534
|
node: node,
|
513
535
|
value: value,
|
514
536
|
currentValue: value || '-',
|
515
|
-
originalDiffTip: _originalDiffTip,
|
516
537
|
toolTipProps: _toolTipProps,
|
517
538
|
minWidth: minWidth,
|
518
539
|
isInNewRowFlag: isInNewRowFlag
|
519
|
-
});
|
540
|
+
}));
|
520
541
|
};
|
521
542
|
}
|
522
543
|
};
|
@@ -6,13 +6,13 @@ interface Props {
|
|
6
6
|
value?: any;
|
7
7
|
currentValue?: any;
|
8
8
|
copyable?: boolean;
|
9
|
-
originalDiffTip?: boolean;
|
10
9
|
ellipsis?: any;
|
11
10
|
width?: number | string;
|
12
11
|
originalValue?: any;
|
13
12
|
toolTipProps?: TooltipProps & React.RefAttributes<unknown>;
|
14
13
|
minWidth?: number;
|
15
14
|
isInNewRowFlag?: boolean;
|
15
|
+
isChanged?: boolean;
|
16
16
|
}
|
17
17
|
declare const RenderColumn: FC<Props>;
|
18
18
|
export default RenderColumn;
|
@@ -10,8 +10,11 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
10
10
|
var _jsxRuntime = require("react/jsx-runtime");
|
11
11
|
var _antd = require("antd");
|
12
12
|
var _ahooks = require("ahooks");
|
13
|
+
var _lodash = require("lodash");
|
14
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
13
15
|
var _icons = require("@ant-design/icons");
|
14
16
|
var _reactSvg = require("react-svg");
|
17
|
+
var _utils = require("../../../utils");
|
15
18
|
var _copy = _interopRequireDefault(require("../../../assets/copy.svg"));
|
16
19
|
var Paragraph = _antd.Typography.Paragraph,
|
17
20
|
Text = _antd.Typography.Text;
|
@@ -25,7 +28,6 @@ var RenderColumn = function RenderColumn(props) {
|
|
25
28
|
ellipsis = props.ellipsis,
|
26
29
|
width = props.width,
|
27
30
|
originalValue = props.originalValue,
|
28
|
-
originalDiffTip = props.originalDiffTip,
|
29
31
|
_props$toolTipProps = props.toolTipProps,
|
30
32
|
toolTipProps = _props$toolTipProps === void 0 ? {} : _props$toolTipProps,
|
31
33
|
minWidth = props.minWidth,
|
@@ -36,39 +38,55 @@ var RenderColumn = function RenderColumn(props) {
|
|
36
38
|
_useSetState2 = (0, _slicedToArray2.default)(_useSetState, 2),
|
37
39
|
tooltip = _useSetState2[0].tooltip,
|
38
40
|
setState = _useSetState2[1];
|
39
|
-
|
41
|
+
var cellDiffCls = (0, _classnames.default)({
|
42
|
+
'varied-cell': props === null || props === void 0 ? void 0 : props.isChanged
|
43
|
+
});
|
44
|
+
// 比对场景走的逻辑
|
45
|
+
if (!isInNewRowFlag && (0, _lodash.isBoolean)(props === null || props === void 0 ? void 0 : props.isChanged)) {
|
40
46
|
var renderNode = value ? node : '-';
|
41
|
-
if (ellipsis ||
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
47
|
+
if (ellipsis || (props === null || props === void 0 ? void 0 : props.isChanged)) {
|
48
|
+
renderNode = (0, _jsxRuntime.jsx)(Text, {
|
49
|
+
style: {
|
50
|
+
width: currentValue === '-' ? 32.5 : width,
|
51
|
+
minWidth: minWidth
|
52
|
+
},
|
53
|
+
ellipsis: {
|
54
|
+
tooltip: false
|
55
|
+
},
|
56
|
+
children: ellipsis ? currentValue : renderNode
|
57
|
+
});
|
58
|
+
if ((props === null || props === void 0 ? void 0 : props.isChanged) === false) {
|
59
|
+
return renderNode;
|
60
|
+
}
|
61
|
+
if (Array.isArray(originalValue)) {
|
62
|
+
console.error('Error: When enabled, dataIndex corresponds to an array, which needs to be converted using viewRender');
|
53
63
|
}
|
64
|
+
var originalValueCalc = function originalValueCalc() {
|
65
|
+
if (Array.isArray(originalValue)) {
|
66
|
+
return null;
|
67
|
+
}
|
68
|
+
return !(0, _utils.isEmpty)(originalValue) ? originalValue : '-';
|
69
|
+
};
|
54
70
|
return (0, _jsxRuntime.jsx)(_antd.Tooltip, (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
55
|
-
className:
|
71
|
+
className: cellDiffCls,
|
56
72
|
style: {
|
57
73
|
width: width,
|
58
74
|
minWidth: minWidth
|
59
75
|
},
|
60
|
-
overlayClassName: "original-value-
|
76
|
+
overlayClassName: "original-value-tooltip",
|
77
|
+
placement: "topLeft",
|
78
|
+
autoAdjustOverflow: false,
|
61
79
|
title: (0, _jsxRuntime.jsx)(_antd.Space, {
|
62
80
|
direction: "vertical",
|
63
81
|
className: "changed-tooltip",
|
64
|
-
children:
|
82
|
+
children: (props === null || props === void 0 ? void 0 : props.isChanged) ? (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
65
83
|
children: [(0, _jsxRuntime.jsxs)(_antd.Space, {
|
66
84
|
align: "start",
|
67
85
|
className: "original-value-container",
|
68
|
-
children: ["\u521D\u59CB\u503C\uFF1A",
|
86
|
+
children: ["\u521D\u59CB\u503C\uFF1A", originalValueCalc()]
|
69
87
|
}), (0, _jsxRuntime.jsx)(_antd.Space, {
|
70
88
|
className: "current-value-container",
|
71
|
-
children: ellipsis ? (0, _jsxRuntime.jsxs)(
|
89
|
+
children: ellipsis ? (0, _jsxRuntime.jsxs)(_antd.Space, {
|
72
90
|
children: ["\u5F53\u524D\u503C\uFF1A", currentValue]
|
73
91
|
}) : null
|
74
92
|
})]
|
@@ -81,8 +99,11 @@ var RenderColumn = function RenderColumn(props) {
|
|
81
99
|
children: renderNode
|
82
100
|
}));
|
83
101
|
}
|
102
|
+
if ((props === null || props === void 0 ? void 0 : props.isChanged) === false) {
|
103
|
+
return renderNode;
|
104
|
+
}
|
84
105
|
return (0, _jsxRuntime.jsx)("span", {
|
85
|
-
className:
|
106
|
+
className: cellDiffCls,
|
86
107
|
style: {
|
87
108
|
width: width,
|
88
109
|
minWidth: minWidth
|
@@ -131,15 +152,12 @@ var RenderColumn = function RenderColumn(props) {
|
|
131
152
|
range.setStart(box, 0);
|
132
153
|
range.setEnd(box, box.childNodes.length);
|
133
154
|
var rangeWidth = range.getBoundingClientRect().width;
|
134
|
-
var rangeHeight = range.getBoundingClientRect().height;
|
135
|
-
var contentWidth = rangeWidth - Math.floor(rangeWidth);
|
136
155
|
var _getPadding = getPadding(box),
|
137
156
|
pLeft = _getPadding.pLeft,
|
138
157
|
pRight = _getPadding.pRight,
|
139
158
|
pTop = _getPadding.pTop,
|
140
159
|
pBottom = _getPadding.pBottom;
|
141
160
|
var horizontalPadding = pLeft + pRight;
|
142
|
-
var verticalPadding = pTop + pBottom;
|
143
161
|
if (rangeWidth + horizontalPadding > box.clientWidth) {
|
144
162
|
return true;
|
145
163
|
}
|
@@ -12,7 +12,6 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
12
12
|
var _react = require("react");
|
13
13
|
var _reactResizable = require("react-resizable");
|
14
14
|
var _classnames = _interopRequireDefault(require("classnames"));
|
15
|
-
var _index = require("../../index");
|
16
15
|
var _FormatColumn = require("../FormatColumn");
|
17
16
|
var _excluded = ["onDrag", "width", "minwidth"];
|
18
17
|
var ResizableTitle = function ResizableTitle(props) {
|
@@ -22,9 +21,6 @@ var ResizableTitle = function ResizableTitle(props) {
|
|
22
21
|
_props$minwidth = props.minwidth,
|
23
22
|
minwidth = _props$minwidth === void 0 ? 50 : _props$minwidth,
|
24
23
|
restProps = (0, _objectWithoutProperties2.default)(props, _excluded);
|
25
|
-
var _useContext = (0, _react.useContext)(_index.TableContext),
|
26
|
-
tableConfig = _useContext.tableConfig,
|
27
|
-
Storage = _useContext.Storage;
|
28
24
|
// 添加偏移量
|
29
25
|
var _useState = (0, _react.useState)(0),
|
30
26
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
package/lib/ProTable/index.d.ts
CHANGED
@@ -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
|
9
|
-
|
10
|
-
|
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
|
-
|
18
|
-
}
|
18
|
+
useAntdTable: typeof useAntdTable;
|
19
|
+
};
|
19
20
|
export default ProTable;
|
package/lib/ProTable/index.js
CHANGED
@@ -36,7 +36,7 @@ var defaultPage = exports.defaultPage = {
|
|
36
36
|
pageNum: 1,
|
37
37
|
pageSize: 10
|
38
38
|
};
|
39
|
-
function ProTable(props) {
|
39
|
+
var ProTable = function ProTable(props) {
|
40
40
|
var _locale$ProTable, _props$scroll, _curTableConfig$pathK;
|
41
41
|
var _ref = (0, _index.useProConfig)('globalConfig') || {},
|
42
42
|
configStorage = _ref.storage; // 获取全局缓存位置配置
|
@@ -121,7 +121,6 @@ function ProTable(props) {
|
|
121
121
|
});
|
122
122
|
});
|
123
123
|
var originalObj = _originalDataSource ? (0, _lodash.keyBy)(_originalDataSource, 'rowKey') : undefined;
|
124
|
-
var dataSourceObj = _dataSource ? (0, _lodash.keyBy)(_dataSource, 'rowKey') : {};
|
125
124
|
var propsColumnObj = (0, _react.useMemo)(function () {
|
126
125
|
return propsColumns.reduce(function (acc, cur) {
|
127
126
|
// @ts-ignore
|
@@ -220,9 +219,8 @@ function ProTable(props) {
|
|
220
219
|
(0, _FormatColumn.formatColumn)({
|
221
220
|
column: item,
|
222
221
|
originalObj: originalObj,
|
223
|
-
|
224
|
-
|
225
|
-
diffToolTip: toolTip,
|
222
|
+
rowKey: props.rowKey,
|
223
|
+
diffConfig: diffConfig,
|
226
224
|
wrapToolTipProps: wrapToolTipProps,
|
227
225
|
scroll: _scroll,
|
228
226
|
onUpdateMinWidth: function onUpdateMinWidth(w) {
|
@@ -454,7 +452,7 @@ function ProTable(props) {
|
|
454
452
|
})]
|
455
453
|
})
|
456
454
|
});
|
457
|
-
}
|
455
|
+
};
|
458
456
|
ProTable.defaultProps = {
|
459
457
|
quickConfig: false,
|
460
458
|
stripe: true,
|
@@ -31,7 +31,6 @@ export interface ProTableColumn extends Omit<ColumnType<any>, 'dataIndex'> {
|
|
31
31
|
value: string | number;
|
32
32
|
}[];
|
33
33
|
copyable?: boolean;
|
34
|
-
originalDiffTip?: boolean;
|
35
34
|
prefix?: string | ReactNode | ((value: any, record?: any, index?: number) => any);
|
36
35
|
suffix?: string | ReactNode | ((value: any, record?: any, index?: number) => any);
|
37
36
|
tooltip?: ReactNode | {
|
@@ -45,6 +44,8 @@ export interface ProTableColumn extends Omit<ColumnType<any>, 'dataIndex'> {
|
|
45
44
|
value: any;
|
46
45
|
originValue: any;
|
47
46
|
}) => boolean;
|
47
|
+
viewRender?: ({ value, record, index, originalValue, originalRecord }: any) => any;
|
48
|
+
isChanged?: boolean | null;
|
48
49
|
}
|
49
50
|
export interface CreateTreeFromArrayOptions {
|
50
51
|
itemKey?: string;
|