@zat-design/sisyphus-react 3.9.2 → 3.9.3-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/.vscode/extensions.json +5 -0
- package/dist/index.esm.css +21 -1
- package/dist/less.esm.css +21 -1
- package/es/ProConfigProvider/index.js +3 -3
- package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +3 -1
- package/es/ProEditTable/components/RenderField/index.js +3 -2
- package/es/ProEditTable/index.js +20 -15
- package/es/ProEnum/hooks/useEnum.js +2 -0
- package/es/ProForm/components/combination/FormList/components/ActionButton.js +10 -7
- package/es/ProForm/components/combination/FormList/components/LineFields.js +2 -1
- package/es/ProForm/components/combination/FormList/components/ToolbarButton.js +6 -3
- package/es/ProForm/components/combination/FormList/index.js +1 -1
- package/es/ProForm/components/combination/ProCascader/index.js +7 -3
- package/es/ProForm/components/combination/ProCascader/propsType.d.ts +2 -0
- package/es/ProForm/components/render/ChangedWrapper.js +9 -5
- package/es/ProForm/components/render/Render.js +11 -7
- package/es/ProForm/index.js +11 -8
- package/es/ProForm/utils/diffOriginal.js +0 -1
- package/es/ProIcon/index.js +39 -22
- package/es/ProIcon/propsTypes.d.ts +2 -0
- package/es/ProTable/components/FormatColumn/index.js +69 -29
- package/es/ProTable/components/RenderColumn/index.d.ts +2 -0
- package/es/ProTable/components/RenderColumn/index.js +3 -5
- package/es/ProTable/propsType.d.ts +4 -5
- package/es/ProTable/style/index.less +27 -10
- package/es/ProTable/utils/index.d.ts +2 -0
- package/es/ProTable/utils/index.js +16 -3
- package/lib/ProConfigProvider/index.js +2 -2
- package/lib/ProEditTable/components/RenderField/ListChangedWrapper.js +3 -1
- package/lib/ProEditTable/components/RenderField/index.js +3 -2
- package/lib/ProEditTable/index.js +19 -14
- package/lib/ProEnum/hooks/useEnum.js +2 -0
- package/lib/ProForm/components/combination/FormList/components/ActionButton.js +9 -6
- package/lib/ProForm/components/combination/FormList/components/LineFields.js +2 -1
- package/lib/ProForm/components/combination/FormList/components/ToolbarButton.js +4 -2
- package/lib/ProForm/components/combination/FormList/index.js +1 -1
- package/lib/ProForm/components/combination/ProCascader/index.js +7 -3
- package/lib/ProForm/components/combination/ProCascader/propsType.d.ts +2 -0
- package/lib/ProForm/components/render/ChangedWrapper.js +9 -5
- package/lib/ProForm/components/render/Render.js +11 -7
- package/lib/ProForm/index.js +10 -7
- package/lib/ProForm/utils/diffOriginal.js +0 -1
- package/lib/ProIcon/index.js +37 -22
- package/lib/ProIcon/propsTypes.d.ts +2 -0
- package/lib/ProTable/components/FormatColumn/index.js +69 -29
- package/lib/ProTable/components/RenderColumn/index.d.ts +2 -0
- package/lib/ProTable/components/RenderColumn/index.js +3 -5
- package/lib/ProTable/propsType.d.ts +4 -5
- package/lib/ProTable/style/index.less +27 -10
- package/lib/ProTable/utils/index.d.ts +2 -0
- package/lib/ProTable/utils/index.js +16 -3
- package/package.json +1 -1
package/es/ProIcon/index.js
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
import "antd/es/space/style";
|
2
|
+
import _Space from "antd/es/space";
|
1
3
|
import "antd/es/button/style";
|
2
4
|
import _Button from "antd/es/button";
|
3
5
|
import "antd/es/tooltip/style";
|
@@ -5,7 +7,7 @@ import _Tooltip from "antd/es/tooltip";
|
|
5
7
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
6
8
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
7
9
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
8
|
-
var _excluded = ["type", "onClick", "size", "color", "className", "style", "spin", "rotate", "theme", "disabled", "mode", "buttonProps", "children", "mapList", "src", "actionMap", "tooltip"];
|
10
|
+
var _excluded = ["type", "onClick", "size", "color", "className", "style", "spin", "rotate", "theme", "disabled", "mode", "buttonProps", "children", "mapList", "src", "actionMap", "tooltip", "buttonIcon"];
|
9
11
|
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
10
12
|
import { useLocalStorageState, useSetState, useDeepCompareLayoutEffect } from 'ahooks';
|
11
13
|
import classNames from 'classnames';
|
@@ -50,6 +52,8 @@ var ProIcon = function ProIcon(props) {
|
|
50
52
|
src = _config.src,
|
51
53
|
actionMap = _config.actionMap,
|
52
54
|
tooltip = _config.tooltip,
|
55
|
+
_config$buttonIcon = _config.buttonIcon,
|
56
|
+
buttonIcon = _config$buttonIcon === void 0 ? true : _config$buttonIcon,
|
53
57
|
reset = _objectWithoutProperties(_config, _excluded);
|
54
58
|
var _useSetState = useSetState({
|
55
59
|
IconInstance: _jsx(_Fragment, {})
|
@@ -130,6 +134,25 @@ var ProIcon = function ProIcon(props) {
|
|
130
134
|
height: size
|
131
135
|
}, rotateStyle), style)
|
132
136
|
};
|
137
|
+
var icon = !src ? _jsx("svg", _objectSpread(_objectSpread({}, svgProps), {}, {
|
138
|
+
onClick: onClick,
|
139
|
+
"aria-hidden": "true",
|
140
|
+
children: _jsx("use", {
|
141
|
+
xlinkHref: "#icon-".concat(_type)
|
142
|
+
})
|
143
|
+
})) : _jsx(ReactSVG, _objectSpread(_objectSpread({}, svgProps), {}, {
|
144
|
+
// @ts-ignore
|
145
|
+
onClick: onClick,
|
146
|
+
"aria-hidden": "true",
|
147
|
+
src: src,
|
148
|
+
beforeInjection: function beforeInjection(svg) {
|
149
|
+
onBeforeInjection({
|
150
|
+
svg: svg,
|
151
|
+
actionMap: actionMap,
|
152
|
+
primaryColor: isQiankun ? qiankunPrimaryColor : primaryColor
|
153
|
+
});
|
154
|
+
}
|
155
|
+
}));
|
133
156
|
var RenderIcon = _jsx("span", _objectSpread(_objectSpread({
|
134
157
|
className: "anticon",
|
135
158
|
style: {
|
@@ -138,7 +161,7 @@ var ProIcon = function ProIcon(props) {
|
|
138
161
|
}, reset), {}, {
|
139
162
|
children: _jsx(_Tooltip, {
|
140
163
|
title: iconText,
|
141
|
-
children: _jsx(_Button, _objectSpread({
|
164
|
+
children: buttonIcon ? _jsx(_Button, _objectSpread({
|
142
165
|
style: {
|
143
166
|
width: size,
|
144
167
|
height: size,
|
@@ -148,26 +171,20 @@ var ProIcon = function ProIcon(props) {
|
|
148
171
|
verticalAlign: 'baseline'
|
149
172
|
},
|
150
173
|
type: "text",
|
151
|
-
icon:
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
actionMap: actionMap,
|
166
|
-
primaryColor: isQiankun ? qiankunPrimaryColor : primaryColor
|
167
|
-
});
|
168
|
-
}
|
169
|
-
}))
|
170
|
-
}, buttonProps))
|
174
|
+
icon: icon
|
175
|
+
}, buttonProps)) : _jsx(_Space, {
|
176
|
+
children: _jsx("span", {
|
177
|
+
style: {
|
178
|
+
width: size,
|
179
|
+
height: size,
|
180
|
+
border: 'none',
|
181
|
+
borderRadius: 0,
|
182
|
+
padding: 0,
|
183
|
+
verticalAlign: 'baseline'
|
184
|
+
},
|
185
|
+
children: icon
|
186
|
+
})
|
187
|
+
})
|
171
188
|
})
|
172
189
|
}));
|
173
190
|
useEffect(function () {
|
@@ -113,9 +113,9 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
113
113
|
}
|
114
114
|
};
|
115
115
|
if (column === null || column === void 0 ? void 0 : column.render) {
|
116
|
-
if (!originalObj && Object.keys(originalObj
|
117
|
-
|
118
|
-
}
|
116
|
+
// if (!originalObj && Object.keys(originalObj ?? {}).length === 0 && !onDiff) {
|
117
|
+
// return;
|
118
|
+
// }
|
119
119
|
var originalRender = column.render; // 保存原始的 render 方法
|
120
120
|
// 自定义render 手动重载下
|
121
121
|
column.render = function (value, record, index) {
|
@@ -123,8 +123,10 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
123
123
|
var _value = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(value, record !== null && record !== void 0 ? record : {}, index) : null;
|
124
124
|
var originalResult = getOriginalValue(value, record !== null && record !== void 0 ? record : {}, originalObj, rowKey, dataIndex);
|
125
125
|
var originalValue = originalResult.originalValue;
|
126
|
-
var isChanged = originalResult.isChanged
|
126
|
+
var isChanged = originalResult.isChanged,
|
127
|
+
isAddCell = originalResult.isAddCell;
|
127
128
|
var isInNewRowFlag = isInNewRow(record);
|
129
|
+
var _isAddCell = isAddCell;
|
128
130
|
otherProps.isChanged = isChanged;
|
129
131
|
// 存在比对
|
130
132
|
if (isFunction(otherProps === null || otherProps === void 0 ? void 0 : otherProps.viewRender) && (diffConfig === null || diffConfig === void 0 ? void 0 : diffConfig.originalDataSource)) {
|
@@ -142,6 +144,27 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
142
144
|
}
|
143
145
|
originalValue = diffResult;
|
144
146
|
}
|
147
|
+
// 存在自定义onDiff比对
|
148
|
+
if (isFunction(onDiff)) {
|
149
|
+
var _originalObj$record$r2;
|
150
|
+
var _diffResult = onDiff({
|
151
|
+
originalValue: originalValue,
|
152
|
+
originalRecord: (_originalObj$record$r2 = originalObj === null || originalObj === void 0 ? void 0 : originalObj[record === null || record === void 0 ? void 0 : record[rowKey]]) !== null && _originalObj$record$r2 !== void 0 ? _originalObj$record$r2 : {},
|
153
|
+
value: value,
|
154
|
+
record: record,
|
155
|
+
index: index
|
156
|
+
});
|
157
|
+
if (_diffResult === 'changed') {
|
158
|
+
otherProps.isChanged = true;
|
159
|
+
}
|
160
|
+
if (_diffResult === 'same') {
|
161
|
+
otherProps.isChanged = false;
|
162
|
+
}
|
163
|
+
if (_diffResult === 'add') {
|
164
|
+
_isAddCell = true;
|
165
|
+
otherProps.isChanged = false;
|
166
|
+
}
|
167
|
+
}
|
145
168
|
return _jsx(RenderColumn, _objectSpread(_objectSpread({}, otherProps), {}, {
|
146
169
|
valueType: valueType,
|
147
170
|
originalValue: isEmpty(originalValue) ? null : originalValue,
|
@@ -152,7 +175,8 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
152
175
|
currentValue: _value,
|
153
176
|
toolTipProps: _toolTipProps,
|
154
177
|
minWidth: minWidth,
|
155
|
-
isInNewRowFlag: isInNewRowFlag
|
178
|
+
isInNewRowFlag: isInNewRowFlag,
|
179
|
+
isAddCell: _isAddCell
|
156
180
|
}));
|
157
181
|
};
|
158
182
|
return;
|
@@ -177,8 +201,9 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
177
201
|
var realValue = tools.calc(Number(value !== null && value !== void 0 ? value : 0), '*', multiple);
|
178
202
|
var renderValue = getDecimalDigits(value) > valueTypePrecision ? realValue : realValue.toFixed(valueTypePrecision);
|
179
203
|
var originalResult = getOriginalValue(value, record, originalObj, rowKey, dataIndex);
|
180
|
-
var
|
181
|
-
|
204
|
+
var isChanged = originalResult.isChanged,
|
205
|
+
originalValue = originalResult.originalValue,
|
206
|
+
isAddCell = originalResult.isAddCell;
|
182
207
|
otherProps.isChanged = isChanged;
|
183
208
|
var originalRealValue = tools.calc(Number(originalValue || null), '*', multiple);
|
184
209
|
var originalRenderValue = getDecimalDigits(originalValue) > valueTypePrecision ? originalRealValue : originalRealValue.toFixed(valueTypePrecision);
|
@@ -208,7 +233,8 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
208
233
|
currentValue: renderValue,
|
209
234
|
toolTipProps: _toolTipProps,
|
210
235
|
minWidth: minWidth,
|
211
|
-
isInNewRowFlag: isInNewRowFlag
|
236
|
+
isInNewRowFlag: isInNewRowFlag,
|
237
|
+
isAddCell: isAddCell
|
212
238
|
}));
|
213
239
|
};
|
214
240
|
// 千分位, 千分位带CNY前缀
|
@@ -217,8 +243,9 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
217
243
|
var valueStr = valueTypePrecision ? "".concat(Number(value).toFixed(valueTypePrecision)) : "".concat(value);
|
218
244
|
var renderValue = valueStr.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
219
245
|
var originalResult = getOriginalValue(value, record, originalObj, rowKey, dataIndex);
|
220
|
-
var
|
221
|
-
|
246
|
+
var isChanged = originalResult.isChanged,
|
247
|
+
originalValue = originalResult.originalValue,
|
248
|
+
isAddCell = originalResult.isAddCell;
|
222
249
|
otherProps.isChanged = isChanged;
|
223
250
|
var originalRealValue = valueTypePrecision ? "".concat(Number(originalValue).toFixed(valueTypePrecision)) : "".concat(originalValue);
|
224
251
|
var originalRenderValue = originalRealValue.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
@@ -248,7 +275,8 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
248
275
|
currentValue: renderValue,
|
249
276
|
toolTipProps: _toolTipProps,
|
250
277
|
minWidth: minWidth,
|
251
|
-
isInNewRowFlag: isInNewRowFlag
|
278
|
+
isInNewRowFlag: isInNewRowFlag,
|
279
|
+
isAddCell: isAddCell
|
252
280
|
}));
|
253
281
|
};
|
254
282
|
} else if (['datePicker', 'date', 'dateTime', 'dateStartTime', 'dateEndTime', 'dateStartEndTime'].includes(valueType)) {
|
@@ -256,8 +284,9 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
256
284
|
var _moment, _moment2, _moment3, _moment4, _moment5, _moment6, _moment7, _moment8, _moment9, _moment10, _moment11, _moment12, _moment13, _moment14;
|
257
285
|
var renderValue = (_moment = moment(value)) === null || _moment === void 0 ? void 0 : _moment.format(format);
|
258
286
|
var originalResult = getOriginalValue(value, record, originalObj, rowKey, dataIndex);
|
259
|
-
var
|
260
|
-
|
287
|
+
var isChanged = originalResult.isChanged,
|
288
|
+
originalValue = originalResult.originalValue,
|
289
|
+
isAddCell = originalResult.isAddCell;
|
261
290
|
otherProps.isChanged = isChanged;
|
262
291
|
var originalRenderValue = (_moment2 = moment(originalValue)) === null || _moment2 === void 0 ? void 0 : _moment2.format(format);
|
263
292
|
switch (valueType) {
|
@@ -311,7 +340,8 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
311
340
|
currentValue: renderValue,
|
312
341
|
toolTipProps: _toolTipProps,
|
313
342
|
minWidth: minWidth,
|
314
|
-
isInNewRowFlag: isInNewRowFlag
|
343
|
+
isInNewRowFlag: isInNewRowFlag,
|
344
|
+
isAddCell: isAddCell
|
315
345
|
}));
|
316
346
|
};
|
317
347
|
} else if (['enumName', 'enumCodeName'].includes(valueType)) {
|
@@ -319,8 +349,9 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
319
349
|
var realCode = typeof code === 'function' ? code(value, record) : code;
|
320
350
|
var renderValue = getEnumLabel(realCode, value, valueType === 'enumCodeName');
|
321
351
|
var originalResult = getOriginalValue(value, record, originalObj, rowKey, dataIndex);
|
322
|
-
var
|
323
|
-
|
352
|
+
var isChanged = originalResult.isChanged,
|
353
|
+
originalValue = originalResult.originalValue,
|
354
|
+
isAddCell = originalResult.isAddCell;
|
324
355
|
otherProps.isChanged = isChanged;
|
325
356
|
var originalRenderValue = getEnumLabel(realCode, originalValue, valueType === 'enumCodeName');
|
326
357
|
if (Array.isArray(column === null || column === void 0 ? void 0 : column.codeValues) && !realCode) {
|
@@ -354,15 +385,17 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
354
385
|
currentValue: renderValue,
|
355
386
|
toolTipProps: _toolTipProps,
|
356
387
|
minWidth: minWidth,
|
357
|
-
isInNewRowFlag: isInNewRowFlag
|
388
|
+
isInNewRowFlag: isInNewRowFlag,
|
389
|
+
isAddCell: isAddCell
|
358
390
|
}));
|
359
391
|
};
|
360
392
|
} else if (precision || prefix || suffix) {
|
361
393
|
column.render = function (value, record, index) {
|
362
394
|
var renderValue = value === 'number' ? value.toFixed(precision) : value;
|
363
395
|
var originalResult = getOriginalValue(value, record, originalObj, rowKey, dataIndex);
|
364
|
-
var
|
365
|
-
|
396
|
+
var isChanged = originalResult.isChanged,
|
397
|
+
originalValue = originalResult.originalValue,
|
398
|
+
isAddCell = originalResult.isAddCell;
|
366
399
|
otherProps.isChanged = isChanged;
|
367
400
|
var originalRenderValue = originalValue === 'number' ? originalValue.toFixed(precision) : originalValue;
|
368
401
|
var node = _jsxs(_Space, {
|
@@ -391,7 +424,8 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
391
424
|
currentValue: renderValue,
|
392
425
|
toolTipProps: _toolTipProps,
|
393
426
|
minWidth: minWidth,
|
394
|
-
isInNewRowFlag: isInNewRowFlag
|
427
|
+
isInNewRowFlag: isInNewRowFlag,
|
428
|
+
isAddCell: isAddCell
|
395
429
|
}));
|
396
430
|
};
|
397
431
|
} else if (valueType === 'address') {
|
@@ -399,8 +433,9 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
399
433
|
var _realValue$filter;
|
400
434
|
var realValue = transform ? transform(value, record) : value;
|
401
435
|
var originalResult = getOriginalValue(value, record, originalObj, rowKey, dataIndex);
|
402
|
-
var
|
403
|
-
|
436
|
+
var isChanged = originalResult.isChanged,
|
437
|
+
originalValue = originalResult.originalValue,
|
438
|
+
isAddCell = originalResult.isAddCell;
|
404
439
|
otherProps.isChanged = isChanged;
|
405
440
|
var originalRealValue = transform ? transform(originalValue, record) : originalValue;
|
406
441
|
var isEmpty = !realValue || Array.isArray(realValue) && (realValue === null || realValue === void 0 ? void 0 : (_realValue$filter = realValue.filter(function (item) {
|
@@ -448,7 +483,8 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
448
483
|
currentValue: renderValue,
|
449
484
|
toolTipProps: _toolTipProps,
|
450
485
|
minWidth: minWidth,
|
451
|
-
isInNewRowFlag: isInNewRowFlag
|
486
|
+
isInNewRowFlag: isInNewRowFlag,
|
487
|
+
isAddCell: isAddCell
|
452
488
|
}));
|
453
489
|
};
|
454
490
|
} else if (copyable) {
|
@@ -473,8 +509,9 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
473
509
|
} else if (ellipsis) {
|
474
510
|
column.render = function (value, record, index) {
|
475
511
|
var originalResult = getOriginalValue(value, record, originalObj, rowKey, dataIndex);
|
476
|
-
var
|
477
|
-
|
512
|
+
var isChanged = originalResult.isChanged,
|
513
|
+
originalValue = originalResult.originalValue,
|
514
|
+
isAddCell = originalResult.isAddCell;
|
478
515
|
otherProps.isChanged = isChanged;
|
479
516
|
if (!value && value !== 0 && value === originalValue) {
|
480
517
|
_jsx("div", {
|
@@ -497,15 +534,17 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
497
534
|
currentValue: value || '-',
|
498
535
|
toolTipProps: _toolTipProps,
|
499
536
|
minWidth: minWidth,
|
500
|
-
isInNewRowFlag: isInNewRowFlag
|
537
|
+
isInNewRowFlag: isInNewRowFlag,
|
538
|
+
isAddCell: isAddCell
|
501
539
|
})), suffixNode(value, record, index)]
|
502
540
|
});
|
503
541
|
};
|
504
542
|
} else {
|
505
543
|
column.render = function (value, record, index) {
|
506
544
|
var originalResult = getOriginalValue(value, record, originalObj, rowKey, dataIndex);
|
507
|
-
var
|
508
|
-
|
545
|
+
var isChanged = originalResult.isChanged,
|
546
|
+
originalValue = originalResult.originalValue,
|
547
|
+
isAddCell = originalResult.isAddCell;
|
509
548
|
otherProps.isChanged = isChanged;
|
510
549
|
var node = _jsxs(_Space, {
|
511
550
|
size: 8,
|
@@ -530,7 +569,8 @@ export var formatColumn = function formatColumn(_ref2) {
|
|
530
569
|
currentValue: value || '-',
|
531
570
|
toolTipProps: _toolTipProps,
|
532
571
|
minWidth: minWidth,
|
533
|
-
isInNewRowFlag: isInNewRowFlag
|
572
|
+
isInNewRowFlag: isInNewRowFlag,
|
573
|
+
isAddCell: isAddCell
|
534
574
|
}));
|
535
575
|
};
|
536
576
|
}
|
@@ -37,7 +37,8 @@ var RenderColumn = function RenderColumn(props) {
|
|
37
37
|
tooltip = _useSetState2[0].tooltip,
|
38
38
|
setState = _useSetState2[1];
|
39
39
|
var cellDiffCls = classNames({
|
40
|
-
'varied-cell': props === null || props === void 0 ? void 0 : props.isChanged
|
40
|
+
'varied-cell': props === null || props === void 0 ? void 0 : props.isChanged,
|
41
|
+
'add-cell': props === null || props === void 0 ? void 0 : props.isAddCell
|
41
42
|
});
|
42
43
|
// 比对场景走的逻辑
|
43
44
|
if (!isInNewRowFlag && isBoolean(props === null || props === void 0 ? void 0 : props.isChanged)) {
|
@@ -97,10 +98,7 @@ var RenderColumn = function RenderColumn(props) {
|
|
97
98
|
children: renderNode
|
98
99
|
}));
|
99
100
|
}
|
100
|
-
|
101
|
-
return renderNode;
|
102
|
-
}
|
103
|
-
return _jsx("span", {
|
101
|
+
return _jsx("div", {
|
104
102
|
className: cellDiffCls,
|
105
103
|
style: {
|
106
104
|
width: width,
|
@@ -40,11 +40,10 @@ export interface ProTableColumn extends Omit<ColumnType<any>, 'dataIndex'> {
|
|
40
40
|
toolTipProps?: TooltipProps & React.RefAttributes<unknown>;
|
41
41
|
transform?: (value: any, record?: any) => string[];
|
42
42
|
show?: boolean | (() => boolean);
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
}) =>
|
47
|
-
viewRender?: ({ value, record, index, originalValue, originalRecord }: any) => any;
|
43
|
+
/** 自定义比对函数, 触发条件必须写render */
|
44
|
+
onDiff?: ({ value, record, index, originalValue, originalRecord }: any) => any;
|
45
|
+
/** 自定义提示render, 触发条件必须写render */
|
46
|
+
viewRender?: ({ value, record, index, originalValue, originalRecord }: any) => 'same' | 'changed' | 'add' | undefined;
|
48
47
|
isChanged?: boolean | null;
|
49
48
|
}
|
50
49
|
export interface CreateTreeFromArrayOptions {
|
@@ -277,16 +277,30 @@
|
|
277
277
|
}
|
278
278
|
}
|
279
279
|
|
280
|
-
.@{ant-prefix}-table-cell
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
280
|
+
.@{ant-prefix}-table-cell {
|
281
|
+
.varied-cell {
|
282
|
+
display: block;
|
283
|
+
margin-left: -8px;
|
284
|
+
padding: var(--zaui-space-size-xs, 4px) var(--zaui-space-size-sm, 8px);
|
285
|
+
background-color: var(--zaui-contract-bg; #fffaa1) !important;
|
286
|
+
border-radius: var(--zaui-border-radius, 8px);
|
287
|
+
.pro-form-view-container {
|
288
|
+
overflow: hidden;
|
289
|
+
white-space: nowrap;
|
290
|
+
text-overflow: ellipsis;
|
291
|
+
}
|
292
|
+
}
|
293
|
+
.add-cell{
|
294
|
+
display: block;
|
295
|
+
margin-left: -8px;
|
296
|
+
padding: var(--zaui-space-size-xs, 4px) var(--zaui-space-size-sm, 8px);
|
297
|
+
background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
|
298
|
+
border-radius: var(--zaui-border-radius, 8px);
|
299
|
+
.pro-form-view-container {
|
300
|
+
overflow: hidden;
|
301
|
+
white-space: nowrap;
|
302
|
+
text-overflow: ellipsis;
|
303
|
+
}
|
290
304
|
}
|
291
305
|
}
|
292
306
|
|
@@ -586,5 +600,8 @@
|
|
586
600
|
.@{ant-prefix}-table{
|
587
601
|
.original-value-tooltip{
|
588
602
|
position: fixed;
|
603
|
+
&.@{ant-prefix}-tooltip > @{ant-prefix}-tooltip-content > @{ant-prefix}-tooltip-inner{
|
604
|
+
width: max-content;
|
605
|
+
}
|
589
606
|
}
|
590
607
|
}
|
@@ -12,9 +12,11 @@ export declare const getDecimalDigits: (num?: number) => number;
|
|
12
12
|
* @param any originalObj
|
13
13
|
* @param {any} dataIndex
|
14
14
|
* @return {any} isChanged 返回bool值,表示存在比对
|
15
|
+
* @return {any} isAddCell 返回bool值,表示存在比对
|
15
16
|
*/
|
16
17
|
export declare const getOriginalValue: (value: any, record: any, originalObj: any, rowKey: any, dataIndex: any) => {
|
17
18
|
originalValue: any;
|
19
|
+
isAddCell: boolean;
|
18
20
|
isChanged: boolean;
|
19
21
|
};
|
20
22
|
export declare const getColumnDataIndex: (dataIndex: string | string[]) => string;
|
@@ -1,4 +1,6 @@
|
|
1
1
|
import { get, isEqual } from 'lodash';
|
2
|
+
import { validate } from '@zat-design/utils';
|
3
|
+
var isEmpty = validate.isEmpty;
|
2
4
|
/**
|
3
5
|
* 获取小数点后的位数
|
4
6
|
* @param num 数字
|
@@ -17,25 +19,36 @@ export var getDecimalDigits = function getDecimalDigits() {
|
|
17
19
|
* @param any originalObj
|
18
20
|
* @param {any} dataIndex
|
19
21
|
* @return {any} isChanged 返回bool值,表示存在比对
|
22
|
+
* @return {any} isAddCell 返回bool值,表示存在比对
|
20
23
|
*/
|
21
24
|
export var getOriginalValue = function getOriginalValue(value, record, originalObj, rowKey, dataIndex) {
|
22
25
|
if (!originalObj) {
|
23
26
|
return {
|
24
27
|
originalValue: null,
|
25
|
-
isChanged: null
|
28
|
+
isChanged: null,
|
29
|
+
isAddCell: null
|
26
30
|
};
|
27
31
|
}
|
28
32
|
var originalRecord = get(originalObj, get(record, rowKey));
|
29
33
|
var originalValue = get(originalRecord, dataIndex);
|
34
|
+
if (isEmpty(originalValue) && !isEmpty(value)) {
|
35
|
+
return {
|
36
|
+
originalValue: originalValue,
|
37
|
+
isAddCell: true,
|
38
|
+
isChanged: false
|
39
|
+
};
|
40
|
+
}
|
30
41
|
if (!isEqual(originalValue, value)) {
|
31
42
|
return {
|
32
43
|
originalValue: originalValue,
|
33
|
-
isChanged: true
|
44
|
+
isChanged: true,
|
45
|
+
isAddCell: false
|
34
46
|
};
|
35
47
|
}
|
36
48
|
return {
|
37
49
|
originalValue: null,
|
38
|
-
isChanged: false
|
50
|
+
isChanged: false,
|
51
|
+
isAddCell: false
|
39
52
|
};
|
40
53
|
};
|
41
54
|
export var getColumnDataIndex = function getColumnDataIndex(dataIndex) {
|
@@ -114,8 +114,8 @@ var ProConfigProvider = exports.ProConfigProvider = function ProConfigProvider(p
|
|
114
114
|
},
|
115
115
|
children: (0, _jsxRuntime.jsx)(_antd.ConfigProvider, {
|
116
116
|
locale: antdLangMap[lang],
|
117
|
-
children: (0, _jsxRuntime.
|
118
|
-
children:
|
117
|
+
children: (0, _jsxRuntime.jsx)("div", {
|
118
|
+
children: props.children
|
119
119
|
})
|
120
120
|
})
|
121
121
|
});
|
@@ -125,9 +125,11 @@ var ListChangedWrapper = function ListChangedWrapper(props) {
|
|
125
125
|
if (!isWatch || noChange) return 'same';
|
126
126
|
var _value = normalize ? normalize(props[valuePropName], undefined, undefined, true) // true 代表是值比对时的调用
|
127
127
|
: props[valuePropName];
|
128
|
+
// fix:修复 InputNumber , DatePicker时,originalValue与最新值一致时,显示为 changed的问题
|
129
|
+
var _originalValue = normalize && ['InputNumber', 'ProNumberRange', 'DatePicker'].includes(props.type) ? normalize(originalValue, undefined, undefined, true) : originalValue;
|
128
130
|
return (0, _diffOriginal.diffOriginal)({
|
129
131
|
value: _value,
|
130
|
-
originalValue:
|
132
|
+
originalValue: _originalValue,
|
131
133
|
form: form,
|
132
134
|
equalWith: equalWith
|
133
135
|
// name: isString(namesStr) ? namesStr : originalName || name,
|
@@ -82,7 +82,8 @@ var RenderField = function RenderField(_ref) {
|
|
82
82
|
_config$validateTrigg = config.validateTrigger,
|
83
83
|
validateTrigger = _config$validateTrigg === void 0 ? ['onChange', 'onBlur', 'onSubmit'] : _config$validateTrigg,
|
84
84
|
otherProps = config.otherProps,
|
85
|
-
diffConfig = config.diffConfig
|
85
|
+
diffConfig = config.diffConfig,
|
86
|
+
getIsNew = config.getIsNew;
|
86
87
|
var _fieldProps = fieldProps || formItemProps || {};
|
87
88
|
var _rules = rules || [];
|
88
89
|
var _required = required;
|
@@ -553,7 +554,7 @@ var RenderField = function RenderField(_ref) {
|
|
553
554
|
var _componentProps;
|
554
555
|
var FormItem = null;
|
555
556
|
var FieldComponent = /*#__PURE__*/_react.default.isValidElement(TargetComponent) ? (/*#__PURE__*/_react.default.cloneElement(TargetComponent, componentProps)) : (0, _jsxRuntime.jsx)(TargetComponent, (0, _objectSpread2.default)({}, componentProps));
|
556
|
-
if (originalValues) {
|
557
|
+
if (originalValues && !getIsNew(record)) {
|
557
558
|
FieldComponent = (0, _jsxRuntime.jsx)(_ListChangedWrapper.default, {
|
558
559
|
name: cellName,
|
559
560
|
names: names,
|
@@ -8,7 +8,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
exports.default = void 0;
|
9
9
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
10
10
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
11
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
12
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
13
12
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
14
13
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
@@ -130,17 +129,9 @@ var ProEditTable = function ProEditTable(_ref, ref) {
|
|
130
129
|
}
|
131
130
|
return key;
|
132
131
|
};
|
133
|
-
var IsNew = function IsNew(preArr, record) {
|
134
|
-
var _preArr$find;
|
135
|
-
if (!(preArr === null || preArr === void 0 ? void 0 : preArr.length)) {
|
136
|
-
return false;
|
137
|
-
}
|
138
|
-
return !(preArr === null || preArr === void 0 ? void 0 : (_preArr$find = preArr.find) === null || _preArr$find === void 0 ? void 0 : _preArr$find.call(preArr, function (item) {
|
139
|
-
return getRowKey(item) === getRowKey(record);
|
140
|
-
}));
|
141
|
-
};
|
142
132
|
var originalValues = (0, _react.useMemo)(function () {
|
143
133
|
var _originalArr$every, _originalArr$some;
|
134
|
+
var nextOriginalValues;
|
144
135
|
// 原始值也需要设置对应的rowkey,后续比对通过rowkey对比
|
145
136
|
var originalArr = (0, _lodash.get)(resetProps === null || resetProps === void 0 ? void 0 : resetProps.originalValues, name);
|
146
137
|
var isOriginalAllHasKey = originalArr ? originalArr === null || originalArr === void 0 ? void 0 : (_originalArr$every = originalArr.every) === null || _originalArr$every === void 0 ? void 0 : _originalArr$every.call(originalArr, function (item) {
|
@@ -156,8 +147,22 @@ var ProEditTable = function ProEditTable(_ref, ref) {
|
|
156
147
|
item.rowKey = getRowKey(item);
|
157
148
|
});
|
158
149
|
}
|
159
|
-
|
150
|
+
if (originalArr === null || originalArr === void 0 ? void 0 : originalArr.length) {
|
151
|
+
nextOriginalValues = {};
|
152
|
+
(0, _lodash.set)(nextOriginalValues, name, originalArr);
|
153
|
+
}
|
154
|
+
return nextOriginalValues;
|
160
155
|
}, [resetProps === null || resetProps === void 0 ? void 0 : resetProps.originalValues]);
|
156
|
+
var getIsNew = function getIsNew(record) {
|
157
|
+
var _originalArr$find;
|
158
|
+
var originalArr = (0, _lodash.get)(originalValues, name);
|
159
|
+
if (!(originalArr === null || originalArr === void 0 ? void 0 : originalArr.length)) {
|
160
|
+
return false;
|
161
|
+
}
|
162
|
+
return !(originalArr === null || originalArr === void 0 ? void 0 : (_originalArr$find = originalArr.find) === null || _originalArr$find === void 0 ? void 0 : _originalArr$find.call(originalArr, function (item) {
|
163
|
+
return getRowKey(item) === getRowKey(record);
|
164
|
+
}));
|
165
|
+
};
|
161
166
|
var config = (0, _objectSpread2.default)({
|
162
167
|
form: form,
|
163
168
|
mode: mode,
|
@@ -191,14 +196,14 @@ var ProEditTable = function ProEditTable(_ref, ref) {
|
|
191
196
|
prefixCls: prefixCls,
|
192
197
|
rowDisabled: rowDisabled,
|
193
198
|
actionDirection: actionDirection,
|
194
|
-
diffConfig: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, resetProps === null || resetProps === void 0 ? void 0 : (_resetProps$otherProp = resetProps.otherProps) === null || _resetProps$otherProp === void 0 ? void 0 : _resetProps$otherProp.diffConfig), diffConfig)
|
199
|
+
diffConfig: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, resetProps === null || resetProps === void 0 ? void 0 : (_resetProps$otherProp = resetProps.otherProps) === null || _resetProps$otherProp === void 0 ? void 0 : _resetProps$otherProp.diffConfig), diffConfig),
|
200
|
+
getIsNew: getIsNew
|
195
201
|
}, resetProps);
|
196
202
|
// 编辑行设置下样式
|
197
203
|
var _rowClassName = function _rowClassName(record) {
|
198
204
|
var isEdit = !virtualKey || editingKeys.includes(record.rowKey);
|
199
205
|
var className = isEdit ? 'is-editing' : '';
|
200
|
-
|
201
|
-
if (IsNew(originalArr, record)) {
|
206
|
+
if (getIsNew(record)) {
|
202
207
|
return "is-new-row ".concat(className);
|
203
208
|
}
|
204
209
|
return className;
|
@@ -28,6 +28,8 @@ function useEnum(codes, value, compose) {
|
|
28
28
|
_ref3$clear = _ref3.clear,
|
29
29
|
clear = _ref3$clear === void 0 ? true : _ref3$clear;
|
30
30
|
var catchData = (0, _utils.getEnumData)(storage, cacheKey, baseEnumStorage);
|
31
|
+
// 默认枚举缓存数据
|
32
|
+
baseEnumStorage = catchData;
|
31
33
|
if (!codes) {
|
32
34
|
return catchData;
|
33
35
|
}
|