@zat-design/sisyphus-react 3.9.4 → 3.9.5

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 (37) hide show
  1. package/dist/index.esm.css +42 -1
  2. package/dist/less.esm.css +38 -0
  3. package/es/ProEditTable/components/RenderField/ListChangedWrapper.d.ts +1 -1
  4. package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +13 -10
  5. package/es/ProEditTable/components/RenderField/index.js +42 -32
  6. package/es/ProEditTable/propsType.d.ts +1 -0
  7. package/es/ProEditTable/style/index.less +41 -0
  8. package/es/ProEditTable/utils/diffOriginal.d.ts +21 -0
  9. package/es/ProEditTable/utils/diffOriginal.js +62 -0
  10. package/es/ProEnum/index.js +1 -1
  11. package/es/ProForm/components/combination/Group/component/ComRender.js +9 -1
  12. package/es/ProForm/components/combination/Group/index.js +1 -1
  13. package/es/ProForm/components/combination/Group/utils.js +1 -1
  14. package/es/ProForm/style/index.less +8 -0
  15. package/es/ProTable/components/FormatColumn/index.js +1 -1
  16. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +36 -32
  17. package/es/ProTable/index.js +22 -15
  18. package/es/ProTable/propsType.d.ts +3 -2
  19. package/es/style/theme/antd.less +4 -1
  20. package/lib/ProEditTable/components/RenderField/ListChangedWrapper.d.ts +1 -1
  21. package/lib/ProEditTable/components/RenderField/ListChangedWrapper.js +13 -10
  22. package/lib/ProEditTable/components/RenderField/index.js +42 -32
  23. package/lib/ProEditTable/propsType.d.ts +1 -0
  24. package/lib/ProEditTable/style/index.less +41 -0
  25. package/lib/ProEditTable/utils/diffOriginal.d.ts +21 -0
  26. package/lib/ProEditTable/utils/diffOriginal.js +68 -0
  27. package/lib/ProEnum/index.js +1 -1
  28. package/lib/ProForm/components/combination/Group/component/ComRender.js +8 -0
  29. package/lib/ProForm/components/combination/Group/index.js +1 -1
  30. package/lib/ProForm/components/combination/Group/utils.js +1 -1
  31. package/lib/ProForm/style/index.less +8 -0
  32. package/lib/ProTable/components/FormatColumn/index.js +1 -1
  33. package/lib/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +36 -32
  34. package/lib/ProTable/index.js +22 -15
  35. package/lib/ProTable/propsType.d.ts +3 -2
  36. package/lib/style/theme/antd.less +4 -1
  37. package/package.json +1 -1
@@ -3110,6 +3110,9 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
3110
3110
  .pro-form .pro-form-item-changed .ant-select.ant-select-disabled .ant-select-selector {
3111
3111
  background: var(--zaui-contract-bg, #fffaa1) !important;
3112
3112
  }
3113
+ .pro-form .pro-form-item-changed .ant-picker-clear {
3114
+ background: var(--zaui-contract-bg, #fffaa1);
3115
+ }
3113
3116
  .pro-form .pro-form-item-changed span.ant-input-affix-wrapper,
3114
3117
  .pro-form .pro-form-item-changed .ant-select .ant-select-selector,
3115
3118
  .pro-form .pro-form-item-changed .ant-picker,
@@ -3165,6 +3168,9 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
3165
3168
  .pro-form .pro-form-item-add .ant-select.ant-select-disabled .ant-select-selector {
3166
3169
  background: var(--zaui-contract-bg-add, #d2fff4) !important;
3167
3170
  }
3171
+ .pro-form .pro-form-item-add .ant-picker-clear {
3172
+ background: var(--zaui-contract-bg-add, #d2fff4);
3173
+ }
3168
3174
  .pro-form .pro-form-item-add span.ant-input-affix-wrapper,
3169
3175
  .pro-form .pro-form-item-add .ant-select .ant-select-selector,
3170
3176
  .pro-form .pro-form-item-add .ant-picker,
@@ -4672,6 +4678,38 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
4672
4678
  .pro-edit-table .ant-table.ant-table-scroll-horizontal table .ant-table-tbody .is-new-row.ant-table-row:hover .ant-table-cell-row-hover {
4673
4679
  background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
4674
4680
  }
4681
+ .pro-edit-table * {
4682
+ scrollbar-face-color: #d2d3d7;
4683
+ scrollbar-highlight-color: #979797;
4684
+ scrollbar-3dlight-color: #979797;
4685
+ }
4686
+ .pro-edit-table * ::-webkit-scrollbar-thumb {
4687
+ background-color: #979797;
4688
+ background-clip: padding-box;
4689
+ border-color: transparent;
4690
+ border-style: dashed;
4691
+ border-width: 4px;
4692
+ border-radius: 10px;
4693
+ -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
4694
+ }
4695
+ .pro-edit-table * ::-webkit-scrollbar-track {
4696
+ background: transparent;
4697
+ }
4698
+ .pro-edit-table * ::-webkit-scrollbar-thumb {
4699
+ background-color: #d2d3d7;
4700
+ background-clip: padding-box;
4701
+ border-color: transparent;
4702
+ border-style: dashed;
4703
+ border-width: 4px;
4704
+ border-radius: 10px;
4705
+ -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
4706
+ }
4707
+ .pro-edit-table * ::-webkit-scrollbar-thumb {
4708
+ background-color: #979797;
4709
+ }
4710
+ .pro-edit-table * ::-webkit-scrollbar-track {
4711
+ background: transparent;
4712
+ }
4675
4713
  .pro-edit-table-footer {
4676
4714
  margin-top: 12px;
4677
4715
  }
@@ -6043,5 +6081,8 @@ input[type='button'] {
6043
6081
  --antd-arrow-background-color: linear-gradient(to right bottom, rgba(255, 255, 255, 0.95), #ffffff);
6044
6082
  }
6045
6083
  .ant-picker.ant-picker-disabled {
6046
- background: var(--zaui-disabled-bg);
6084
+ background: var(--zaui-disabled-bg) !important;
6085
+ }
6086
+ .ant-input-affix-wrapper-disabled {
6087
+ background: var(--zaui-disabled-bg) !important;
6047
6088
  }
package/dist/less.esm.css CHANGED
@@ -3110,6 +3110,9 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
3110
3110
  .pro-form .pro-form-item-changed .ant-select.ant-select-disabled .ant-select-selector {
3111
3111
  background: var(--zaui-contract-bg, #fffaa1) !important;
3112
3112
  }
3113
+ .pro-form .pro-form-item-changed .ant-picker-clear {
3114
+ background: var(--zaui-contract-bg, #fffaa1);
3115
+ }
3113
3116
  .pro-form .pro-form-item-changed span.ant-input-affix-wrapper,
3114
3117
  .pro-form .pro-form-item-changed .ant-select .ant-select-selector,
3115
3118
  .pro-form .pro-form-item-changed .ant-picker,
@@ -3165,6 +3168,9 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
3165
3168
  .pro-form .pro-form-item-add .ant-select.ant-select-disabled .ant-select-selector {
3166
3169
  background: var(--zaui-contract-bg-add, #d2fff4) !important;
3167
3170
  }
3171
+ .pro-form .pro-form-item-add .ant-picker-clear {
3172
+ background: var(--zaui-contract-bg-add, #d2fff4);
3173
+ }
3168
3174
  .pro-form .pro-form-item-add span.ant-input-affix-wrapper,
3169
3175
  .pro-form .pro-form-item-add .ant-select .ant-select-selector,
3170
3176
  .pro-form .pro-form-item-add .ant-picker,
@@ -4672,6 +4678,38 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
4672
4678
  .pro-edit-table .ant-table.ant-table-scroll-horizontal table .ant-table-tbody .is-new-row.ant-table-row:hover .ant-table-cell-row-hover {
4673
4679
  background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
4674
4680
  }
4681
+ .pro-edit-table * {
4682
+ scrollbar-face-color: #d2d3d7;
4683
+ scrollbar-highlight-color: #979797;
4684
+ scrollbar-3dlight-color: #979797;
4685
+ }
4686
+ .pro-edit-table * ::-webkit-scrollbar-thumb {
4687
+ background-color: #979797;
4688
+ background-clip: padding-box;
4689
+ border-color: transparent;
4690
+ border-style: dashed;
4691
+ border-width: 4px;
4692
+ border-radius: 10px;
4693
+ -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
4694
+ }
4695
+ .pro-edit-table * ::-webkit-scrollbar-track {
4696
+ background: transparent;
4697
+ }
4698
+ .pro-edit-table * ::-webkit-scrollbar-thumb {
4699
+ background-color: #d2d3d7;
4700
+ background-clip: padding-box;
4701
+ border-color: transparent;
4702
+ border-style: dashed;
4703
+ border-width: 4px;
4704
+ border-radius: 10px;
4705
+ -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
4706
+ }
4707
+ .pro-edit-table * ::-webkit-scrollbar-thumb {
4708
+ background-color: #979797;
4709
+ }
4710
+ .pro-edit-table * ::-webkit-scrollbar-track {
4711
+ background: transparent;
4712
+ }
4675
4713
  .pro-edit-table-footer {
4676
4714
  margin-top: 12px;
4677
4715
  }
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { FormInstance } from 'antd';
3
3
  import { NamePath } from 'antd/lib/form/interface';
4
- import { DiffOriginalParams } from '../../../ProForm/utils/diffOriginal';
4
+ import { DiffOriginalParams } from '../../utils/diffOriginal';
5
5
  interface Props {
6
6
  name?: NamePath;
7
7
  names?: NamePath[];
@@ -10,7 +10,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
10
  import React, { useMemo, useRef } from 'react';
11
11
  import classnames from 'classnames';
12
12
  import { get } from 'lodash';
13
- import { diffOriginal } from '../../../ProForm/utils/diffOriginal';
13
+ import { diffOriginal } from '../../utils/diffOriginal';
14
14
  import { useProConfig } from '../../../ProConfigProvider';
15
15
  import { isEmpty } from '../../../utils';
16
16
  var toNamePath = function toNamePath(name) {
@@ -34,7 +34,7 @@ var getOriginalValue = function getOriginalValue(_ref) {
34
34
  if (!originalValues) {
35
35
  return undefined;
36
36
  }
37
- var originalValueRow;
37
+ var originRecord;
38
38
  if (rowKeyPath) {
39
39
  var rowValueNamePath = namePath.slice(0, rowKeyPath.length - 1); // 表单中变动值所在行
40
40
  var rowKeyName = rowKeyPath[rowKeyPath.length - 1]; // rowKey在行内的name
@@ -43,13 +43,13 @@ var getOriginalValue = function getOriginalValue(_ref) {
43
43
  var keyValue = rowValue[rowKeyName]; // 获取表单中rowKey值
44
44
  if (!keyValue) return undefined;
45
45
  var originalValueList = get(originalValues, originalName.slice(0, rowKeyPath.length - 2));
46
- originalValueRow = originalValueList === null || originalValueList === void 0 ? void 0 : originalValueList.find(function (item) {
46
+ originRecord = originalValueList === null || originalValueList === void 0 ? void 0 : originalValueList.find(function (item) {
47
47
  return item[rowKeyPath[rowKeyPath.length - 1]] === keyValue;
48
48
  });
49
49
  var originalValue;
50
50
  if (originalNames === null || originalNames === void 0 ? void 0 : originalNames.length) {
51
51
  var originalNamesValue = originalNames.map(function (originalName) {
52
- return get(originalValueRow, originalName.slice(rowKeyPath.length - 1));
52
+ return get(originRecord, originalName.slice(rowKeyPath.length - 1));
53
53
  });
54
54
  // 有可能出现数组中全是undefined的情况 视为没有值
55
55
  var fillUndefined = originalNamesValue.every(function (valItem) {
@@ -57,11 +57,12 @@ var getOriginalValue = function getOriginalValue(_ref) {
57
57
  });
58
58
  originalValue = fillUndefined ? undefined : originalNamesValue;
59
59
  } else {
60
- originalValue = get(originalValueRow, originalName.slice(rowKeyPath.length - 1));
60
+ originalValue = get(originRecord, originalName.slice(rowKeyPath.length - 1));
61
61
  }
62
62
  return {
63
63
  originalValue: originalValue,
64
- originalValueRow: originalValueRow
64
+ originRecord: originRecord,
65
+ record: rowValue
65
66
  };
66
67
  }
67
68
  // 这个方法是给editTable专用的 暂时不存在不传rowKey的情况
@@ -69,7 +70,7 @@ var getOriginalValue = function getOriginalValue(_ref) {
69
70
  originalValue: (originalNames === null || originalNames === void 0 ? void 0 : originalNames.length) ? originalNames.map(function (originalName) {
70
71
  return get(originalValues, originalName);
71
72
  }) : get(originalValues, originalName),
72
- originalValueRow: originalValueRow
73
+ originRecord: originRecord
73
74
  };
74
75
  };
75
76
  var ListChangedWrapper = function ListChangedWrapper(props) {
@@ -130,8 +131,10 @@ var ListChangedWrapper = function ListChangedWrapper(props) {
130
131
  value: _value,
131
132
  originalValue: _originalValue,
132
133
  form: form,
133
- equalWith: equalWith
134
- // name: isString(namesStr) ? namesStr : originalName || name,
134
+ equalWith: equalWith,
135
+ originRecord: originalDTO === null || originalDTO === void 0 ? void 0 : originalDTO.originRecord,
136
+ record: originalDTO === null || originalDTO === void 0 ? void 0 : originalDTO.record,
137
+ index: index
135
138
  });
136
139
  }, [props[valuePropName], originalValue]);
137
140
  var isAdd = diffType === 'add';
@@ -144,7 +147,7 @@ var ListChangedWrapper = function ListChangedWrapper(props) {
144
147
  var _children = children;
145
148
  if (viewRender) {
146
149
  if (! /*#__PURE__*/React.isValidElement(viewRender)) {
147
- return viewRender(orgValue, (originalDTO === null || originalDTO === void 0 ? void 0 : originalDTO.originalValueRow) || {}, {
150
+ return viewRender(orgValue, (originalDTO === null || originalDTO === void 0 ? void 0 : originalDTO.originRecord) || {}, {
148
151
  form: form,
149
152
  name: name,
150
153
  index: index
@@ -6,7 +6,7 @@ import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
6
6
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
7
7
  import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
8
8
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
9
- var _excluded = ["type", "valueType", "names", "fieldProps", "labelRequired", "editRender", "component", "viewRender", "title", "originTitle", "label", "dataIndex", "formItemProps", "isEditable", "required", "rules", "equalWith", "onDiff", "className", "trim", "confirm"];
9
+ var _excluded = ["type", "valueType", "names", "fieldProps", "labelRequired", "editRender", "component", "viewRender", "title", "originTitle", "label", "dataIndex", "formItemProps", "isEditable", "required", "rules", "onDiff", "className", "trim", "confirm", "dependencies"];
10
10
  import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
11
11
  /* eslint-disable prefer-destructuring */
12
12
  /* eslint-disable prefer-const */
@@ -52,11 +52,11 @@ var RenderField = function RenderField(_ref) {
52
52
  required = _column$required === void 0 ? false : _column$required,
53
53
  _column$rules = column.rules,
54
54
  rules = _column$rules === void 0 ? [] : _column$rules,
55
- equalWith = column.equalWith,
56
55
  onDiff = column.onDiff,
57
56
  className = column.className,
58
57
  trim = column.trim,
59
58
  confirm = column.confirm,
59
+ dependencies = column.dependencies,
60
60
  resetProps = _objectWithoutProperties(column, _excluded);
61
61
  // editRender弃用使用component同ProForm
62
62
  var _editRender = component || editRender;
@@ -312,6 +312,8 @@ var RenderField = function RenderField(_ref) {
312
312
  _key2,
313
313
  _args,
314
314
  rowPath,
315
+ _dependencies$map,
316
+ validateFieldKeys,
315
317
  row,
316
318
  orgRow,
317
319
  _TargetComponent,
@@ -323,77 +325,85 @@ var RenderField = function RenderField(_ref) {
323
325
  _Object$keys,
324
326
  _Object$keys$map,
325
327
  diff,
326
- validateFieldKeys,
328
+ _validateFieldKeys,
327
329
  _args2 = arguments;
328
330
  return _regeneratorRuntime().wrap(function _callee$(_context) {
329
331
  while (1) switch (_context.prev = _context.next) {
330
332
  case 0:
331
- if (!(!onFieldChange && !onChange)) {
332
- _context.next = 2;
333
- break;
334
- }
335
- return _context.abrupt("return", null);
336
- case 2:
337
333
  for (_len2 = _args2.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
338
334
  args[_key2] = _args2[_key2];
339
335
  }
340
336
  _args = [].concat(args);
341
337
  rowPath = [].concat(_toConsumableArray(namePath), [index]);
342
- row = form.getFieldValue(rowPath, true); // if (type === 'InputNumber' && column.name) row[column.name] = args[0];
338
+ if (!(!onFieldChange && !onChange)) {
339
+ _context.next = 6;
340
+ break;
341
+ }
342
+ if (dependencies === null || dependencies === void 0 ? void 0 : dependencies.length) {
343
+ validateFieldKeys = dependencies === null || dependencies === void 0 ? void 0 : (_dependencies$map = dependencies.map) === null || _dependencies$map === void 0 ? void 0 : _dependencies$map.call(dependencies, function (key) {
344
+ return [].concat(_toConsumableArray(rowPath), [key]);
345
+ });
346
+ setTimeout(function () {
347
+ form.validateFields(validateFieldKeys);
348
+ }, 100);
349
+ }
350
+ return _context.abrupt("return", null);
351
+ case 6:
352
+ row = form.getFieldValue(rowPath, true);
343
353
  orgRow = cloneDeep(row);
344
354
  if (!onFieldChange) {
345
- _context.next = 20;
355
+ _context.next = 21;
346
356
  break;
347
357
  }
348
358
  _args = formatArgs(args);
349
359
  _args[1] = row;
350
360
  _context.t0 = (_TargetComponent = TargetComponent) === null || _TargetComponent === void 0 ? void 0 : (_TargetComponent$prop = _TargetComponent.props) === null || _TargetComponent$prop === void 0 ? void 0 : _TargetComponent$prop.onFieldChange;
351
361
  if (!_context.t0) {
352
- _context.next = 14;
362
+ _context.next = 15;
353
363
  break;
354
364
  }
355
- _context.next = 14;
365
+ _context.next = 15;
356
366
  return (_TargetComponent$prop2 = TargetComponent.props).onFieldChange.apply(_TargetComponent$prop2, _toConsumableArray(_args));
357
- case 14:
367
+ case 15:
358
368
  _context.t1 = onFieldChange;
359
369
  if (!_context.t1) {
360
- _context.next = 18;
370
+ _context.next = 19;
361
371
  break;
362
372
  }
363
- _context.next = 18;
373
+ _context.next = 19;
364
374
  return onFieldChange.apply(void 0, _toConsumableArray(_args));
365
- case 18:
366
- _context.next = 29;
375
+ case 19:
376
+ _context.next = 30;
367
377
  break;
368
- case 20:
378
+ case 21:
369
379
  _args = _args.concat([row, index, form]);
370
380
  _context.t2 = (_TargetComponent2 = TargetComponent) === null || _TargetComponent2 === void 0 ? void 0 : (_TargetComponent2$pro = _TargetComponent2.props) === null || _TargetComponent2$pro === void 0 ? void 0 : _TargetComponent2$pro.onChange;
371
381
  if (!_context.t2) {
372
- _context.next = 25;
382
+ _context.next = 26;
373
383
  break;
374
384
  }
375
- _context.next = 25;
385
+ _context.next = 26;
376
386
  return (_TargetComponent$prop3 = TargetComponent.props).onChange.apply(_TargetComponent$prop3, _toConsumableArray(_args));
377
- case 25:
387
+ case 26:
378
388
  _context.t3 = onChange;
379
389
  if (!_context.t3) {
380
- _context.next = 29;
390
+ _context.next = 30;
381
391
  break;
382
392
  }
383
- _context.next = 29;
393
+ _context.next = 30;
384
394
  return onChange.apply(void 0, _toConsumableArray(_args));
385
- case 29:
395
+ case 30:
386
396
  // 判断属性是否变动
387
397
  form.setFieldValue(rowPath, row);
388
398
  if (validateTrigger && validateTrigger.includes('onChange')) {
389
399
  if (!isEqual(orgRow, row)) {
390
400
  diff = difference(row, orgRow) || {};
391
- validateFieldKeys = (_Object$keys = Object.keys(diff)) === null || _Object$keys === void 0 ? void 0 : (_Object$keys$map = _Object$keys.map) === null || _Object$keys$map === void 0 ? void 0 : _Object$keys$map.call(_Object$keys, function (key) {
401
+ _validateFieldKeys = (_Object$keys = Object.keys(diff)) === null || _Object$keys === void 0 ? void 0 : (_Object$keys$map = _Object$keys.map) === null || _Object$keys$map === void 0 ? void 0 : _Object$keys$map.call(_Object$keys, function (key) {
392
402
  return [].concat(_toConsumableArray(rowPath), [key]);
393
- });
394
- if (validateFieldKeys === null || validateFieldKeys === void 0 ? void 0 : validateFieldKeys.length) {
403
+ }).concat(dependencies || []);
404
+ if (_validateFieldKeys === null || _validateFieldKeys === void 0 ? void 0 : _validateFieldKeys.length) {
395
405
  setTimeout(function () {
396
- form.validateFields(validateFieldKeys);
406
+ form.validateFields(_validateFieldKeys);
397
407
  }, 100);
398
408
  }
399
409
  }
@@ -403,7 +413,7 @@ var RenderField = function RenderField(_ref) {
403
413
  d: Date.now()
404
414
  }
405
415
  });
406
- case 32:
416
+ case 33:
407
417
  case "end":
408
418
  return _context.stop();
409
419
  }
@@ -464,7 +474,7 @@ var RenderField = function RenderField(_ref) {
464
474
  diff = difference(row, orgRow) || {};
465
475
  validateFieldKeys = (_Object$keys2 = Object.keys(diff)) === null || _Object$keys2 === void 0 ? void 0 : (_Object$keys2$map = _Object$keys2.map) === null || _Object$keys2$map === void 0 ? void 0 : _Object$keys2$map.call(_Object$keys2, function (key) {
466
476
  return [].concat(_toConsumableArray(rowPath), [key]);
467
- });
477
+ }).concat(dependencies || []);
468
478
  if (validateFieldKeys === null || validateFieldKeys === void 0 ? void 0 : validateFieldKeys.length) {
469
479
  debounceValidate(validateFieldKeys);
470
480
  }
@@ -557,7 +567,7 @@ var RenderField = function RenderField(_ref) {
557
567
  originalNames: originalNames,
558
568
  originalValues: originalValues,
559
569
  form: form,
560
- equalWith: onDiff || equalWith,
570
+ equalWith: onDiff,
561
571
  type: type,
562
572
  onChange: _onChange,
563
573
  valuePropName: _formItemProps.valuePropName,
@@ -106,6 +106,7 @@ export interface ProColumnsProps<Values = any, T = any> extends Omit<FormItemPro
106
106
  hiddenNames?: NamePath[] | NamePath[][];
107
107
  rules?: ProRule[] | RulesFn<T>;
108
108
  confirm?: boolean | ModalFuncProps | FunctionArgs<Values, boolean | ModalFuncProps | void>;
109
+ dependencies?: NamePath[];
109
110
  onDiff?: DiffOriginalParams['equalWith'];
110
111
  [key: string]: any;
111
112
  }
@@ -305,6 +305,47 @@
305
305
  background-color: var(--zaui-contract-bg-add, #d2fff4) !important;
306
306
  }
307
307
  }
308
+
309
+ * {
310
+ // ie浏览器
311
+ scrollbar-face-color: #d2d3d7;
312
+ scrollbar-highlight-color: #979797;
313
+ scrollbar-3dlight-color: #979797;
314
+
315
+ // 悬浮轨道
316
+ ::-webkit-scrollbar-thumb {
317
+ background-color: #979797;
318
+ background-clip: padding-box;
319
+ border-color: transparent;
320
+ border-style: dashed;
321
+ border-width: 4px;
322
+ border-radius: 10px;
323
+ -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
324
+ }
325
+
326
+ ::-webkit-scrollbar-track {
327
+ background: transparent;
328
+ }
329
+
330
+ ::-webkit-scrollbar-thumb {
331
+ background-color: #d2d3d7;
332
+ background-clip: padding-box;
333
+ border-color: transparent;
334
+ border-style: dashed;
335
+ border-width: 4px;
336
+ border-radius: 10px;
337
+ -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
338
+ }
339
+
340
+ ::-webkit-scrollbar-thumb {
341
+ background-color: #979797;
342
+ }
343
+
344
+ ::-webkit-scrollbar-track {
345
+ background: transparent;
346
+ }
347
+ }
348
+
308
349
  }
309
350
 
310
351
  .pro-edit-table-footer{
@@ -0,0 +1,21 @@
1
+ import { FormInstance } from 'antd';
2
+ export type DiffType = 'same' | 'add' | 'changed';
3
+ export interface DiffOriginalParams {
4
+ originalValue: any;
5
+ value: any;
6
+ form: FormInstance;
7
+ equalWith?: ({ originValue, originRecord, value, record, index }: {
8
+ originValue: any;
9
+ originRecord: any;
10
+ value: any;
11
+ record: any;
12
+ index: number;
13
+ }) => DiffType | undefined;
14
+ /** 原始行数据 */
15
+ originRecord: any;
16
+ /** 当前行数据 */
17
+ record: any;
18
+ /** 当前行索引 */
19
+ index: number;
20
+ }
21
+ export declare const diffOriginal: (params: DiffOriginalParams) => DiffType;
@@ -0,0 +1,62 @@
1
+ import { isEqual, isFunction, isObject } from 'lodash';
2
+ import { validate } from '@zat-design/utils';
3
+ var isEmpty = validate.isEmpty;
4
+ // 过滤对象中undefined字段
5
+ // 防止{a: '1'} {a: '1', b: undefined | null}被认为不相等
6
+ var filterObject = function filterObject(data) {
7
+ if (!isObject(data) || Array.isArray(data) || data === null) return data;
8
+ var resData = {};
9
+ Object.keys(data).forEach(function (key) {
10
+ if (!isEmpty(data[key])) {
11
+ resData[key] = data[key];
12
+ }
13
+ });
14
+ // 空对象视为null 比较时 null undefined {} [] '' 视为相等
15
+ if (!Object.keys(resData).length) return null;
16
+ return resData;
17
+ };
18
+ export var diffOriginal = function diffOriginal(params) {
19
+ var originalValue = params.originalValue,
20
+ value = params.value,
21
+ equalWith = params.equalWith,
22
+ originRecord = params.originRecord,
23
+ record = params.record,
24
+ index = params.index;
25
+ // 支持传入自定义比较事件
26
+ if (isFunction(equalWith)) {
27
+ var diffRes = equalWith({
28
+ originValue: originalValue,
29
+ originRecord: originRecord,
30
+ value: value,
31
+ record: record,
32
+ index: index
33
+ });
34
+ // 如果返回undefined走内置比较逻辑
35
+ if (diffRes !== undefined) {
36
+ if (typeof diffRes === 'boolean') {
37
+ return diffRes ? 'same' : 'changed';
38
+ }
39
+ return diffRes;
40
+ }
41
+ }
42
+ var _value = filterObject(value);
43
+ var _originalValue = filterObject(originalValue);
44
+ // 如果原始值为空 且当前有值的话 认为变更类型是新增
45
+ if (isEmpty(_originalValue) && !isEmpty(_value)) {
46
+ return 'add';
47
+ }
48
+ if (Array.isArray(_originalValue)) {
49
+ var isSame = _originalValue.every(function (valueItem, index) {
50
+ // 如果两个值有一个不是空值, 则进行深比较
51
+ if (!isEmpty(value === null || value === void 0 ? void 0 : value[index]) || !isEmpty(valueItem)) {
52
+ return isEqual(value === null || value === void 0 ? void 0 : value[index], valueItem);
53
+ }
54
+ return true;
55
+ });
56
+ return isSame ? 'same' : 'changed';
57
+ }
58
+ if (!isEmpty(_originalValue) || !isEmpty(_value)) {
59
+ return isEqual(_value, _originalValue) ? 'same' : 'changed';
60
+ }
61
+ return 'same';
62
+ };
@@ -230,7 +230,7 @@ var ProEnum = function ProEnum(props) {
230
230
  };
231
231
  if (!code && !dataSource && !useRequest) {
232
232
  var _locale$ProEnum4;
233
- _message.error(locale === null || locale === void 0 ? void 0 : (_locale$ProEnum4 = locale.ProEnum) === null || _locale$ProEnum4 === void 0 ? void 0 : _locale$ProEnum4.errorNoEnumType);
233
+ _message.error("".concat(otherProps === null || otherProps === void 0 ? void 0 : otherProps.label, "-").concat(otherProps === null || otherProps === void 0 ? void 0 : otherProps.name, "-").concat(locale === null || locale === void 0 ? void 0 : (_locale$ProEnum4 = locale.ProEnum) === null || _locale$ProEnum4 === void 0 ? void 0 : _locale$ProEnum4.errorNoEnumType));
234
234
  }
235
235
  var transToLabel = function transToLabel(value) {
236
236
  var list = dataList && dataList.length ? dataList : enumLists;
@@ -2,7 +2,7 @@ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutPr
2
2
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
3
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
4
4
  var _excluded = ["type", "confirm", "component", "fieldProps", "contextProps", "before", "after", "getValueProps", "valuePropName", "valueType", "isView", "viewRender"];
5
- import { jsx as _jsx } from "react/jsx-runtime";
5
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
6
6
  import React from 'react';
7
7
  import ConfirmWrapper from '../../../../components/render/ConfirmWrapper';
8
8
  import { FieldProvider } from '../../../../utils/useFieldProps';
@@ -30,6 +30,7 @@ var getComRender = function getComRender(component, props, componentProps) {
30
30
  };
31
31
  /** 渲染组件 */
32
32
  var ComRender = function ComRender(props) {
33
+ var _props$component, _props$component$prop;
33
34
  var type = props.type,
34
35
  confirm = props.confirm,
35
36
  component = props.component,
@@ -50,6 +51,13 @@ var ComRender = function ComRender(props) {
50
51
  };
51
52
  var _props = mergedGetValueProps(fieldProps.value);
52
53
  var componentProps = _objectSpread(_objectSpread(_objectSpread({}, fieldProps), rest), _props);
54
+ var isSeparator = (props === null || props === void 0 ? void 0 : (_props$component = props.component) === null || _props$component === void 0 ? void 0 : (_props$component$prop = _props$component.props) === null || _props$component$prop === void 0 ? void 0 : _props$component$prop.className) === 'group-separator';
55
+ if (isSeparator && isView) {
56
+ var _props$component2, _props$component2$pro;
57
+ return _jsxs(_Fragment, {
58
+ children: [" ", props === null || props === void 0 ? void 0 : (_props$component2 = props.component) === null || _props$component2 === void 0 ? void 0 : (_props$component2$pro = _props$component2.props) === null || _props$component2$pro === void 0 ? void 0 : _props$component2$pro.children, " "]
59
+ });
60
+ }
53
61
  if (viewRender && isView) {
54
62
  return _jsx(FieldProvider, {
55
63
  value: _objectSpread(_objectSpread({}, contextProps), {}, {
@@ -71,7 +71,7 @@ var Group = function Group(props) {
71
71
  children: space.compact || (space === null || space === void 0 ? void 0 : space.separator) ? _jsx(_Space.Compact, {
72
72
  children: columns.map(function (column, index) {
73
73
  column.otherProps = otherProps;
74
- // 自定义间隔移除对于参数
74
+ // 自定义间隔移除对应参数
75
75
  if (column === null || column === void 0 ? void 0 : column.separator) {
76
76
  delete column.separator;
77
77
  delete column.otherProps;
@@ -329,7 +329,7 @@ export var useTransformColumns = function useTransformColumns(params) {
329
329
  }, reactiveProps), {}, {
330
330
  disabled: getLastDisabled(),
331
331
  getValueProps: transform === null || transform === void 0 ? void 0 : transform.getValueProps,
332
- fieldProps: _objectSpread(_objectSpread({}, column === null || column === void 0 ? void 0 : column.fieldProps), {}, {
332
+ fieldProps: _objectSpread(_objectSpread(_objectSpread({}, column === null || column === void 0 ? void 0 : column.fieldProps), reactiveProps === null || reactiveProps === void 0 ? void 0 : reactiveProps.fieldProps), {}, {
333
333
  onChange: handleChange,
334
334
  onBlur: handleBlur,
335
335
  value: value === null || value === void 0 ? void 0 : value[index]
@@ -341,6 +341,10 @@
341
341
  background: @zaui-contract-bg !important;
342
342
  }
343
343
 
344
+ .ant-picker-clear {
345
+ background: @zaui-contract-bg;
346
+ }
347
+
344
348
  span.@{ant-prefix}-input-affix-wrapper,
345
349
  .@{ant-prefix}-select .@{ant-prefix}-select-selector,
346
350
  .@{ant-prefix}-picker,
@@ -419,6 +423,10 @@
419
423
  background: @zaui-contract-bg-add !important;
420
424
  }
421
425
 
426
+ .ant-picker-clear {
427
+ background: @zaui-contract-bg-add;
428
+ }
429
+
422
430
  span.@{ant-prefix}-input-affix-wrapper,
423
431
  .@{ant-prefix}-select .@{ant-prefix}-select-selector,
424
432
  .@{ant-prefix}-picker,
@@ -139,7 +139,7 @@ export var formatColumn = function formatColumn(_ref2) {
139
139
  index: index
140
140
  });
141
141
  // viewRender 返回值为 false 时,不显示对比
142
- if (isBoolean(diffResult)) {
142
+ if (isBoolean(diffResult) && !diffResult) {
143
143
  otherProps.isChanged = false;
144
144
  }
145
145
  originalValue = diffResult;