@zat-design/sisyphus-react 3.9.2 → 3.9.3

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 (50) hide show
  1. package/.vscode/extensions.json +5 -0
  2. package/dist/index.esm.css +21 -1
  3. package/dist/less.esm.css +21 -1
  4. package/es/ProConfigProvider/index.js +3 -3
  5. package/es/ProEditTable/components/RenderField/index.js +3 -2
  6. package/es/ProEditTable/index.js +20 -15
  7. package/es/ProEnum/hooks/useEnum.js +2 -0
  8. package/es/ProForm/components/combination/FormList/components/ActionButton.js +10 -7
  9. package/es/ProForm/components/combination/FormList/components/LineFields.js +2 -1
  10. package/es/ProForm/components/combination/FormList/components/ToolbarButton.js +6 -3
  11. package/es/ProForm/components/combination/FormList/index.js +1 -1
  12. package/es/ProForm/components/combination/ProCascader/index.js +7 -3
  13. package/es/ProForm/components/combination/ProCascader/propsType.d.ts +2 -0
  14. package/es/ProForm/components/render/ChangedWrapper.js +6 -4
  15. package/es/ProForm/components/render/Render.js +11 -7
  16. package/es/ProForm/index.js +11 -8
  17. package/es/ProForm/utils/diffOriginal.js +0 -1
  18. package/es/ProIcon/index.js +39 -22
  19. package/es/ProIcon/propsTypes.d.ts +2 -0
  20. package/es/ProTable/components/FormatColumn/index.js +69 -29
  21. package/es/ProTable/components/RenderColumn/index.d.ts +2 -0
  22. package/es/ProTable/components/RenderColumn/index.js +3 -5
  23. package/es/ProTable/propsType.d.ts +4 -5
  24. package/es/ProTable/style/index.less +27 -10
  25. package/es/ProTable/utils/index.d.ts +2 -0
  26. package/es/ProTable/utils/index.js +16 -3
  27. package/lib/ProConfigProvider/index.js +2 -2
  28. package/lib/ProEditTable/components/RenderField/index.js +3 -2
  29. package/lib/ProEditTable/index.js +19 -14
  30. package/lib/ProEnum/hooks/useEnum.js +2 -0
  31. package/lib/ProForm/components/combination/FormList/components/ActionButton.js +9 -6
  32. package/lib/ProForm/components/combination/FormList/components/LineFields.js +2 -1
  33. package/lib/ProForm/components/combination/FormList/components/ToolbarButton.js +4 -2
  34. package/lib/ProForm/components/combination/FormList/index.js +1 -1
  35. package/lib/ProForm/components/combination/ProCascader/index.js +7 -3
  36. package/lib/ProForm/components/combination/ProCascader/propsType.d.ts +2 -0
  37. package/lib/ProForm/components/render/ChangedWrapper.js +6 -4
  38. package/lib/ProForm/components/render/Render.js +11 -7
  39. package/lib/ProForm/index.js +10 -7
  40. package/lib/ProForm/utils/diffOriginal.js +0 -1
  41. package/lib/ProIcon/index.js +37 -22
  42. package/lib/ProIcon/propsTypes.d.ts +2 -0
  43. package/lib/ProTable/components/FormatColumn/index.js +69 -29
  44. package/lib/ProTable/components/RenderColumn/index.d.ts +2 -0
  45. package/lib/ProTable/components/RenderColumn/index.js +3 -5
  46. package/lib/ProTable/propsType.d.ts +4 -5
  47. package/lib/ProTable/style/index.less +27 -10
  48. package/lib/ProTable/utils/index.d.ts +2 -0
  49. package/lib/ProTable/utils/index.js +16 -3
  50. package/package.json +1 -1
@@ -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 !== null && originalObj !== void 0 ? originalObj : {}).length === 0 && !onDiff) {
117
- return;
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 originalValue = originalResult.originalValue;
181
- var isChanged = originalResult.isChanged;
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 originalValue = originalResult.originalValue;
221
- var isChanged = originalResult.isChanged;
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 originalValue = originalResult.originalValue;
260
- var isChanged = originalResult.isChanged;
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 originalValue = originalResult.originalValue;
323
- var isChanged = originalResult.isChanged;
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 originalValue = originalResult.originalValue;
365
- var isChanged = originalResult.isChanged;
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 originalValue = originalResult.originalValue;
403
- var isChanged = originalResult.isChanged;
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 originalValue = originalResult.originalValue;
477
- var isChanged = originalResult.isChanged;
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 originalValue = originalResult.originalValue;
508
- var isChanged = originalResult.isChanged;
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
  }
@@ -13,6 +13,8 @@ interface Props {
13
13
  minWidth?: number;
14
14
  isInNewRowFlag?: boolean;
15
15
  isChanged?: boolean;
16
+ /** 新增单元格字段 */
17
+ isAddCell?: boolean;
16
18
  }
17
19
  declare const RenderColumn: FC<Props>;
18
20
  export default RenderColumn;
@@ -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
- if ((props === null || props === void 0 ? void 0 : props.isChanged) === false) {
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
- onDiff?: ({ value, originValue }: {
44
- value: any;
45
- originValue: any;
46
- }) => boolean;
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 .varied-cell {
281
- margin-left: -8px;
282
- padding: var(--zaui-space-size-xs, 4px) var(--zaui-space-size-sm, 8px);
283
-
284
- background: var(--zaui-contract-bg; #fffaa1) !important;
285
- border-radius: var(--zaui-border-radius, 8px);
286
- .pro-form-view-container {
287
- overflow: hidden;
288
- white-space: nowrap;
289
- text-overflow: ellipsis;
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.jsxs)("div", {
118
- children: [" ", props.children]
117
+ children: (0, _jsxRuntime.jsx)("div", {
118
+ children: props.children
119
119
  })
120
120
  })
121
121
  });
@@ -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
- return (originalArr === null || originalArr === void 0 ? void 0 : originalArr.length) ? (0, _defineProperty2.default)({}, name, originalArr) : undefined;
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
- var originalArr = (0, _lodash.get)(originalValues, name);
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
  }
@@ -19,6 +19,7 @@ var _ProIcon = _interopRequireDefault(require("../../../../../ProIcon"));
19
19
  var _locale = _interopRequireDefault(require("../../../../../locale"));
20
20
  var _excluded = ["label", "onClick", "onHandle", "type", "needConfirm", "confirmProps", "title"],
21
21
  _excluded2 = ["onClick", "label"];
22
+ var filterKeys = ['actionType'];
22
23
  var getDefaultActions = function getDefaultActions(mode) {
23
24
  var originActions = {
24
25
  add: {
@@ -43,9 +44,11 @@ var getDefaultActions = function getDefaultActions(mode) {
43
44
  label: "".concat(_locale.default.ProForm.formListActions[1]),
44
45
  icon: mode === 'less' ? (0, _jsxRuntime.jsx)(_ProIcon.default, {
45
46
  type: "solid-close",
46
- className: "single-delete"
47
+ className: "single-delete",
48
+ buttonIcon: false
47
49
  }) : (0, _jsxRuntime.jsx)(_ProIcon.default, {
48
- type: "delete"
50
+ type: "delete",
51
+ buttonIcon: false
49
52
  })
50
53
  },
51
54
  copy: {
@@ -241,14 +244,14 @@ var ActionButton = function ActionButton(props) {
241
244
  handleClick(internalOnClick, _onClick, index, item);
242
245
  }
243
246
  }, _confirmProps), {}, {
244
- children: (0, _jsxRuntime.jsx)(_antd.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultRest), rest), {}, {
247
+ children: (0, _jsxRuntime.jsx)(_antd.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultRest), (0, _lodash.omit)(rest, filterKeys)), {}, {
245
248
  type: "text",
246
249
  onClick: function onClick(e) {
247
250
  return e.stopPropagation();
248
251
  },
249
252
  children: label || defaultLabel
250
253
  }))
251
- }), "".concat(item === null || item === void 0 ? void 0 : item.type).concat(index)) : (0, _jsxRuntime.jsx)(_antd.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultRest), rest), {}, {
254
+ }), "".concat(item === null || item === void 0 ? void 0 : item.type).concat(index)) : (0, _jsxRuntime.jsx)(_antd.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultRest), (0, _lodash.omit)(rest, filterKeys)), {}, {
252
255
  type: "text",
253
256
  onClick: function onClick(e) {
254
257
  e.stopPropagation();
@@ -266,14 +269,14 @@ var ActionButton = function ActionButton(props) {
266
269
  return customClick(_onClick, index);
267
270
  }
268
271
  }, _confirmProps), {}, {
269
- children: (0, _jsxRuntime.jsx)(_antd.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, rest), {}, {
272
+ children: (0, _jsxRuntime.jsx)(_antd.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _lodash.omit)(rest, filterKeys)), {}, {
270
273
  type: "text",
271
274
  onClick: function onClick(e) {
272
275
  return e.stopPropagation();
273
276
  },
274
277
  children: label
275
278
  }))
276
- }), "".concat(item === null || item === void 0 ? void 0 : item.type).concat(index)) : (/*#__PURE__*/(0, _react.createElement)(_antd.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, rest), {}, {
279
+ }), "".concat(item === null || item === void 0 ? void 0 : item.type).concat(index)) : (/*#__PURE__*/(0, _react.createElement)(_antd.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _lodash.omit)(rest, filterKeys)), {}, {
277
280
  key: "".concat(item === null || item === void 0 ? void 0 : item.type).concat(index),
278
281
  type: "text",
279
282
  onClick: function onClick(e) {
@@ -68,7 +68,8 @@ var LineFields = function LineFields(props) {
68
68
  ref: setActivatorNodeRef,
69
69
  children: (0, _jsxRuntime.jsx)(_ProIcon.default, {
70
70
  className: "drag-icon",
71
- type: "drag"
71
+ type: "drag",
72
+ buttonIcon: false
72
73
  })
73
74
  })), (0, _jsxRuntime.jsx)(_antd.Row, {
74
75
  gutter: isLess ? 0 : 24,
@@ -18,6 +18,7 @@ var _react = require("react");
18
18
  var _locale = _interopRequireDefault(require("../../../../../locale"));
19
19
  var _excluded = ["label", "onClick", "onHandle", "type"],
20
20
  _excluded2 = ["onClick", "label"];
21
+ /* eslint-disable react/no-array-index-key */
21
22
  var actions = {
22
23
  add: {
23
24
  onClick: function onClick(value, _ref) {
@@ -31,6 +32,7 @@ var actions = {
31
32
  var defaultActionProps = [{
32
33
  type: 'add'
33
34
  }];
35
+ var filterKeys = ['actionType'];
34
36
  var ToolbarButton = function ToolbarButton(props) {
35
37
  var namePath = props.namePath,
36
38
  form = props.form,
@@ -132,7 +134,7 @@ var ToolbarButton = function ToolbarButton(props) {
132
134
  if (max && max <= fields.length && type === 'add') {
133
135
  return false;
134
136
  }
135
- return (0, _jsxRuntime.jsx)(_antd.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, actions[type]), rest), {}, {
137
+ return (0, _jsxRuntime.jsx)(_antd.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, actions[type]), (0, _lodash.omit)(rest, filterKeys)), {}, {
136
138
  type: "link",
137
139
  onClick: function onClick() {
138
140
  return handleClick(internalOnClick, _onClick, item);
@@ -140,7 +142,7 @@ var ToolbarButton = function ToolbarButton(props) {
140
142
  children: label || defaultLabel
141
143
  }), "".concat(type).concat(index));
142
144
  }
143
- return (0, _jsxRuntime.jsx)(_antd.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, rest), {}, {
145
+ return (0, _jsxRuntime.jsx)(_antd.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _lodash.omit)(rest, filterKeys)), {}, {
144
146
  type: "link",
145
147
  onClick: function onClick() {
146
148
  return customClick(_onClick2, item);
@@ -101,7 +101,7 @@ var FormList = function FormList(props, ref) {
101
101
  }),
102
102
  strategy: _sortable.verticalListSortingStrategy,
103
103
  children: [_fields.map(function (field, index) {
104
- var namePath = [].concat((0, _toConsumableArray2.default)(_namePath), [index]);
104
+ var namePath = [].concat((0, _toConsumableArray2.default)(_namePath), [field.name]);
105
105
  var _columns = processColumns(index, namePath);
106
106
  return mode === 'block' ? (0, _jsxRuntime.jsx)(_BlockFields.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {
107
107
  columns: _columns,
@@ -22,7 +22,7 @@ var _useEnum = _interopRequireDefault(require("../../../../ProEnum/hooks/useEnum
22
22
  var _locale = _interopRequireDefault(require("../../../../locale"));
23
23
  var _ = _interopRequireDefault(require("../../.."));
24
24
  var _Container = _interopRequireDefault(require("../../Container"));
25
- var _excluded = ["className", "hasDetail", "detailMaxLength", "fieldNames", "value", "disabled", "dataSource", "onChange", "useRequest", "transformResponse", "level", "isView", "enumCode", "code", "tooltip", "separator", "detailPlaceholder"];
25
+ var _excluded = ["className", "hasDetail", "detailMaxLength", "fieldNames", "value", "disabled", "dataSource", "onChange", "useRequest", "transformResponse", "level", "isView", "enumCode", "code", "tooltip", "separator", "detailPlaceholder", "scrollFollowParent"];
26
26
  var Text = _antd.Typography.Text;
27
27
  var defaultFieldNames = {
28
28
  label: 'name',
@@ -87,6 +87,7 @@ var ProCascader = function ProCascader(props) {
87
87
  _props$separator = props.separator,
88
88
  separator = _props$separator === void 0 ? '/' : _props$separator,
89
89
  detailPlaceholder = props.detailPlaceholder,
90
+ scrollFollowParent = props.scrollFollowParent,
90
91
  otherProps = (0, _objectWithoutProperties2.default)(props, _excluded);
91
92
  var _ref3 = _.default.useFieldProps() || {},
92
93
  isViewCon = _ref3.isView,
@@ -273,8 +274,11 @@ var ProCascader = function ProCascader(props) {
273
274
  filter: handlefilter,
274
275
  limit: 1000
275
276
  },
276
- onChange: handleChange
277
- }, (0, _lodash.omit)(otherProps, 'otherProps'))), hasDetail && (tooltip && disabled && detail ? (0, _jsxRuntime.jsx)(_antd.Tooltip, {
277
+ onChange: handleChange,
278
+ getPopupContainer: function getPopupContainer(trigger) {
279
+ return scrollFollowParent ? trigger.parentElement : document.body;
280
+ }
281
+ }, (0, _lodash.omit)(otherProps, ['otherProps', 'scrollFollowParent']))), hasDetail && (tooltip && disabled && detail ? (0, _jsxRuntime.jsx)(_antd.Tooltip, {
278
282
  title: detail,
279
283
  children: (0, _jsxRuntime.jsx)("span", {
280
284
  className: "pro-address-detail",