@zat-design/sisyphus-react 3.8.3-beta.9 → 3.9.0

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 (38) hide show
  1. package/.vscode/extensions.json +5 -0
  2. package/dist/index.esm.css +22 -3
  3. package/dist/less.esm.css +21 -2
  4. package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +66 -17
  5. package/es/ProEditTable/components/RenderField/index.js +6 -9
  6. package/es/ProEditTable/index.js +18 -8
  7. package/es/ProEditTable/propsType.d.ts +3 -5
  8. package/es/ProEditTable/style/index.less +0 -1
  9. package/es/ProForm/components/base/InputNumber/index.js +1 -1
  10. package/es/ProForm/components/combination/Group/index.js +3 -4
  11. package/es/ProForm/components/combination/ProCascader/index.js +1 -1
  12. package/es/ProForm/components/render/ChangedWrapper.js +17 -10
  13. package/es/ProForm/propsType.d.ts +2 -0
  14. package/es/ProForm/style/index.less +28 -9
  15. package/es/ProTable/components/FormatColumn/index.js +16 -10
  16. package/es/ProTable/components/RenderColumn/index.js +20 -6
  17. package/es/ProTable/propsType.d.ts +4 -1
  18. package/es/style/theme/antd.less +1 -1
  19. package/es/utils/index.d.ts +1 -0
  20. package/es/utils/index.js +26 -0
  21. package/lib/ProEditTable/components/RenderField/ListChangedWrapper.js +66 -19
  22. package/lib/ProEditTable/components/RenderField/index.js +6 -9
  23. package/lib/ProEditTable/index.js +18 -8
  24. package/lib/ProEditTable/propsType.d.ts +3 -5
  25. package/lib/ProEditTable/style/index.less +0 -1
  26. package/lib/ProForm/components/base/InputNumber/index.js +1 -1
  27. package/lib/ProForm/components/combination/Group/index.js +3 -4
  28. package/lib/ProForm/components/combination/ProCascader/index.js +1 -1
  29. package/lib/ProForm/components/render/ChangedWrapper.js +17 -10
  30. package/lib/ProForm/propsType.d.ts +2 -0
  31. package/lib/ProForm/style/index.less +28 -9
  32. package/lib/ProTable/components/FormatColumn/index.js +16 -10
  33. package/lib/ProTable/components/RenderColumn/index.js +18 -6
  34. package/lib/ProTable/propsType.d.ts +4 -1
  35. package/lib/style/theme/antd.less +1 -1
  36. package/lib/utils/index.d.ts +1 -0
  37. package/lib/utils/index.js +28 -1
  38. package/package.json +1 -1
@@ -53,6 +53,11 @@
53
53
  }
54
54
 
55
55
  &.pro-form-view {
56
+ .pro-group{
57
+ .@{ant-prefix}-space-item, .pro-form-view-container{
58
+ width: max-content;
59
+ }
60
+ }
56
61
  .@{ant-prefix}-form-item-label {
57
62
  label {
58
63
  color: var(--zaui-aide-text, #939599);
@@ -480,15 +485,29 @@
480
485
  }
481
486
  }
482
487
 
483
- .changed-tooltip {
484
- .original-value-container {
485
- .ant-space-item:nth-child(1) {
486
- white-space: nowrap;
488
+ .original-value-tootip{
489
+ max-width: 100%;
490
+ width: max-content;
491
+ z-index: 99;
492
+ .changed-tooltip {
493
+ .original-value-container {
494
+ .ant-space-item:nth-child(1) {
495
+ white-space: nowrap;
496
+ }
497
+ .pro-group{
498
+ .ant-space-compact{
499
+ display: block;
500
+ }
501
+ .pro-form-view-container{
502
+ word-break: keep-all;
503
+ }
504
+ }
487
505
  }
488
- }
489
- .current-value-container {
490
- .ant-space-item:nth-child(1) {
491
- white-space: nowrap;
506
+ .current-value-container {
507
+ .ant-space-item:nth-child(1) {
508
+ white-space: nowrap;
509
+ }
492
510
  }
493
511
  }
494
- }
512
+ }
513
+
@@ -79,7 +79,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
79
79
  _column$toolTipProps = column.toolTipProps,
80
80
  toolTipProps = _column$toolTipProps === void 0 ? {} : _column$toolTipProps,
81
81
  minWidth = column.minWidth,
82
- diffTeleport = column.diffTeleport;
82
+ onDiff = column.onDiff;
83
83
  // 仅在 {x: 'max-content', y: 300 } 且 column无指定 width minWidth 情况下 才开启 minWidth的自动计算
84
84
  var isMaxContentOverFlow = (0, _lodash.isObject)(scroll) ? (scroll === null || scroll === void 0 ? void 0 : scroll.x) === 'max-content' && Reflect.ownKeys(scroll).includes('y') : false;
85
85
  calcMinWidth({
@@ -116,7 +116,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
116
116
  }
117
117
  };
118
118
  if (column === null || column === void 0 ? void 0 : column.render) {
119
- if (!originalObj && Object.keys(originalObj !== null && originalObj !== void 0 ? originalObj : {}).length === 0 && !diffTeleport) {
119
+ if (!originalObj && Object.keys(originalObj !== null && originalObj !== void 0 ? originalObj : {}).length === 0 && !onDiff) {
120
120
  return;
121
121
  }
122
122
  var originalRender = column.render; // 保存原始的 render 方法
@@ -124,20 +124,27 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
124
124
  column.render = function (value, record, index) {
125
125
  var _originalObj$record$r;
126
126
  var isFn = (0, _lodash.isFunction)(originalRender);
127
- var _value = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(value, record !== null && record !== void 0 ? record : {}, index) : undefined;
127
+ var _value = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(value, record !== null && record !== void 0 ? record : {}, index) : null;
128
128
  var originalValue = (0, _utils2.getOriginalValue)(value, record !== null && record !== void 0 ? record : {}, originalObj, rowKey, dataIndex);
129
- var originalRenderValue = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(originalValue, (_originalObj$record$r = originalObj === null || originalObj === void 0 ? void 0 : originalObj[record === null || record === void 0 ? void 0 : record[rowKey]]) !== null && _originalObj$record$r !== void 0 ? _originalObj$record$r : {}, index) : undefined;
129
+ var originalRenderValue = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(originalValue, (_originalObj$record$r = originalObj === null || originalObj === void 0 ? void 0 : originalObj[record === null || record === void 0 ? void 0 : record[rowKey]]) !== null && _originalObj$record$r !== void 0 ? _originalObj$record$r : {}, index) : null;
130
130
  var isInNewRowFlag = isInNewRow(record);
131
+ var extraDiffFlag = false;
131
132
  // 把比对结果告诉我
132
- if (diffTeleport) {
133
- var isDiff = diffTeleport(value, record, index, originalObj === null || originalObj === void 0 ? void 0 : originalObj[record === null || record === void 0 ? void 0 : record[rowKey]]);
133
+ if (onDiff) {
134
+ var isDiff = onDiff({
135
+ value: record,
136
+ originValue: originalObj === null || originalObj === void 0 ? void 0 : originalObj[record === null || record === void 0 ? void 0 : record[rowKey]]
137
+ });
134
138
  if (!isDiff) {
135
- originalValue = undefined;
139
+ originalValue = null;
140
+ } else {
141
+ originalValue = true;
142
+ extraDiffFlag = true;
136
143
  }
137
144
  }
138
145
  return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
139
146
  valueType: valueType,
140
- originalValue: originalValue === undefined ? undefined : originalRenderValue,
147
+ originalValue: !originalValue && originalValue !== 0 ? null : extraDiffFlag ? originalRenderValue !== null && originalRenderValue !== void 0 ? originalRenderValue : originalValue : originalRenderValue,
141
148
  ellipsis: ellipsis,
142
149
  width: width,
143
150
  value: _value,
@@ -396,7 +403,6 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
396
403
  });
397
404
  }
398
405
  var className = (0, _classnames.default)({
399
- 'varied-cell': originalValue !== undefined,
400
406
  'empty-cell': isEmpty
401
407
  });
402
408
  var renderValue = (0, _jsxRuntime.jsx)(_ProForm.default.ProCascader, {
@@ -422,7 +428,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
422
428
  var isInNewRowFlag = isInNewRow(record);
423
429
  return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
424
430
  valueType: valueType,
425
- originalValue: originalRealValue === undefined ? undefined : originalRenderValue,
431
+ originalValue: originalValue === undefined ? undefined : originalRenderValue,
426
432
  ellipsis: ellipsis !== null && ellipsis !== void 0 ? ellipsis : true,
427
433
  width: width,
428
434
  node: renderNode,
@@ -36,7 +36,7 @@ var RenderColumn = function RenderColumn(props) {
36
36
  _useSetState2 = (0, _slicedToArray2.default)(_useSetState, 2),
37
37
  tooltip = _useSetState2[0].tooltip,
38
38
  setState = _useSetState2[1];
39
- if (originalValue !== undefined && !isInNewRowFlag) {
39
+ if ((originalValue || originalValue === 0) && !isInNewRowFlag) {
40
40
  var renderNode = value ? node : '-';
41
41
  if (ellipsis || originalDiffTip) {
42
42
  if (ellipsis) {
@@ -57,11 +57,23 @@ var RenderColumn = function RenderColumn(props) {
57
57
  width: width,
58
58
  minWidth: minWidth
59
59
  },
60
- title: originalDiffTip ? (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
61
- children: ["\u521D\u59CB\u503C\uFF1A", originalValue, (0, _jsxRuntime.jsx)("br", {}), ellipsis ? (0, _jsxRuntime.jsxs)("span", {
62
- children: ["\u5F53\u524D\u503C\uFF1A", currentValue]
63
- }) : undefined]
64
- }) : node,
60
+ overlayClassName: "original-value-tootip",
61
+ title: (0, _jsxRuntime.jsx)(_antd.Space, {
62
+ direction: "vertical",
63
+ className: "changed-tooltip",
64
+ children: originalDiffTip ? (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
65
+ children: [(0, _jsxRuntime.jsxs)(_antd.Space, {
66
+ align: "start",
67
+ className: "original-value-container",
68
+ children: ["\u521D\u59CB\u503C\uFF1A", originalValue]
69
+ }), (0, _jsxRuntime.jsx)(_antd.Space, {
70
+ className: "current-value-container",
71
+ children: ellipsis ? (0, _jsxRuntime.jsxs)("span", {
72
+ children: ["\u5F53\u524D\u503C\uFF1A", currentValue]
73
+ }) : null
74
+ })]
75
+ }) : node
76
+ }),
65
77
  getPopupContainer: function getPopupContainer(triggerNode) {
66
78
  return triggerNode.parentNode;
67
79
  }
@@ -41,7 +41,10 @@ export interface ProTableColumn extends Omit<ColumnType<any>, 'dataIndex'> {
41
41
  toolTipProps?: TooltipProps & React.RefAttributes<unknown>;
42
42
  transform?: (value: any, record?: any) => string[];
43
43
  show?: boolean | (() => boolean);
44
- diffTeleport?: (value: any, record: any, index: number, originalRecord?: any) => boolean;
44
+ onDiff?: ({ value, originValue }: {
45
+ value: any;
46
+ originValue: any;
47
+ }) => boolean;
45
48
  }
46
49
  export interface CreateTreeFromArrayOptions {
47
50
  itemKey?: string;
@@ -323,7 +323,7 @@
323
323
  .@{ant-prefix}-table-tbody {
324
324
  .@{ant-prefix}-table-row:nth-child(even) {
325
325
  td {
326
- background: #ffffff !important;
326
+ background: #ffffff;
327
327
  }
328
328
  }
329
329
 
@@ -1,2 +1,3 @@
1
1
  /** 判断一个值是否是空值 */
2
2
  export declare const isEmpty: (value: any) => boolean;
3
+ export declare const useFocus: (element: Element) => boolean;
@@ -1,9 +1,12 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
- exports.isEmpty = void 0;
7
+ exports.useFocus = exports.isEmpty = void 0;
8
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
+ var _react = require("react");
7
10
  var EMPTY_VALUE = [undefined, null, ''];
8
11
  /** 判断一个值是否是空值 */
9
12
  var isEmpty = exports.isEmpty = function isEmpty(value) {
@@ -16,4 +19,28 @@ var isEmpty = exports.isEmpty = function isEmpty(value) {
16
19
  });
17
20
  }
18
21
  return false;
22
+ };
23
+ var useFocus = exports.useFocus = function useFocus(element) {
24
+ var _useState = (0, _react.useState)(false),
25
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
26
+ focus = _useState2[0],
27
+ setFocus = _useState2[1];
28
+ (0, _react.useEffect)(function () {
29
+ if (!element) return;
30
+ element.addEventListener('focus', function () {
31
+ setFocus(true);
32
+ }, true);
33
+ element.addEventListener('blur', function () {
34
+ setFocus(false);
35
+ }, true);
36
+ return function () {
37
+ element.removeEventListener('focus', function () {
38
+ setFocus(true);
39
+ }, true);
40
+ element.removeEventListener('blur', function () {
41
+ setFocus(false);
42
+ }, true);
43
+ };
44
+ }, [element]);
45
+ return focus;
19
46
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zat-design/sisyphus-react",
3
- "version": "3.8.3-beta.9",
3
+ "version": "3.9.0",
4
4
  "license": "Apache-2.0",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",