@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.
- 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/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 +6 -4
- 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/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 +6 -4
- 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
@@ -18,6 +18,7 @@ var _diffOriginal = require("../../utils/diffOriginal");
|
|
18
18
|
var _ProConfigProvider = require("../../../ProConfigProvider");
|
19
19
|
var _utils = require("../../../utils");
|
20
20
|
var _excluded = ["name", "names", "namesStr", "form", "equalWith", "children", "type", "diffConfig", "valuePropName", "normalize", "getValueProps", "viewRender"];
|
21
|
+
var componentsWithFloatWindow = ['Select', 'ProSelect', 'ProEnum', 'ProTimeLimit', 'ProModalSelect', 'ProCascader', 'DataPicker', 'RangePicker', 'TimePicker'];
|
21
22
|
var ChangedWrapper = function ChangedWrapper(props) {
|
22
23
|
var _diffConfig$toolTip, _children$props, _children$props2, _children$props3;
|
23
24
|
var name = props.name,
|
@@ -103,6 +104,9 @@ var ChangedWrapper = function ChangedWrapper(props) {
|
|
103
104
|
'pro-form-item-add': isAdd
|
104
105
|
});
|
105
106
|
var open = tipOpenCalc();
|
107
|
+
var scrollFollowParentConfig = componentsWithFloatWindow.includes(type) ? {
|
108
|
+
scrollFollowParent: scrollFollowParent
|
109
|
+
} : {};
|
106
110
|
return (0, _jsxRuntime.jsx)(_antd.Tooltip, {
|
107
111
|
open: open,
|
108
112
|
getPopupContainer: function getPopupContainer(trigger) {
|
@@ -120,8 +124,7 @@ var ChangedWrapper = function ChangedWrapper(props) {
|
|
120
124
|
children: ["\u521D\u59CB\u503C\uFF1A", tipContent]
|
121
125
|
}), _showEllipse && (0, _jsxRuntime.jsxs)(_antd.Space, {
|
122
126
|
className: "current-value-container",
|
123
|
-
children: ["\u5F53\u524D\u503C\uFF1A", /*#__PURE__*/_react.default.isValidElement(children) ? /*#__PURE__*/_react.default.cloneElement(children, (0, _objectSpread3.default)((0, _objectSpread3.default)((0, _objectSpread3.default)({}, children.props), rest), {}, {
|
124
|
-
scrollFollowParent: scrollFollowParent,
|
127
|
+
children: ["\u5F53\u524D\u503C\uFF1A", /*#__PURE__*/_react.default.isValidElement(children) ? /*#__PURE__*/_react.default.cloneElement(children, (0, _objectSpread3.default)((0, _objectSpread3.default)((0, _objectSpread3.default)((0, _objectSpread3.default)({}, children.props), rest), scrollFollowParentConfig), {}, {
|
125
128
|
isView: true
|
126
129
|
})) : undefined]
|
127
130
|
})]
|
@@ -129,8 +132,7 @@ var ChangedWrapper = function ChangedWrapper(props) {
|
|
129
132
|
children: (0, _jsxRuntime.jsx)("div", {
|
130
133
|
className: diffClassName,
|
131
134
|
style: style,
|
132
|
-
children: /*#__PURE__*/_react.default.isValidElement(children) ? /*#__PURE__*/_react.default.cloneElement(children, (0, _objectSpread3.default)((0, _objectSpread3.default)((0, _objectSpread3.default)({}, children.props), rest), {}, {
|
133
|
-
scrollFollowParent: scrollFollowParent,
|
135
|
+
children: /*#__PURE__*/_react.default.isValidElement(children) ? /*#__PURE__*/_react.default.cloneElement(children, (0, _objectSpread3.default)((0, _objectSpread3.default)((0, _objectSpread3.default)((0, _objectSpread3.default)({}, children.props), rest), scrollFollowParentConfig), {}, {
|
134
136
|
otherProps: (0, _objectSpread3.default)((0, _objectSpread3.default)({}, (_children$props3 = children.props) === null || _children$props3 === void 0 ? void 0 : _children$props3.otherProps), {}, {
|
135
137
|
isDiffChange: isChanged
|
136
138
|
})
|
@@ -136,6 +136,12 @@ var Render = function Render(props) {
|
|
136
136
|
var transforms = Array.isArray(otherProps === null || otherProps === void 0 ? void 0 : otherProps.names) ? (0, _transformNames.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherFormItemProps), valueTypeTransform()),
|
137
137
|
// 合并valueType的transform
|
138
138
|
form, otherProps.names, namesStr, otherProps.type) : valueTypeTransform();
|
139
|
+
/**
|
140
|
+
* globalControl 全局控制优先
|
141
|
+
* globalControl true时,优先级 全局【formDisabled】> formitem上【column.disabled】 > 组件上【fieldProps.disabled】
|
142
|
+
* globalControl false时,优先级 组件上【fieldProps.disabled】 > formitem上【column.disabled】 > 全局【formDisabled】
|
143
|
+
*/
|
144
|
+
var lastDisabled = globalControl ? (_ref2 = (_ref3 = formDisabled !== null && formDisabled !== void 0 ? formDisabled : _disabled) !== null && _ref3 !== void 0 ? _ref3 : _fieldProps === null || _fieldProps === void 0 ? void 0 : _fieldProps.disabled) !== null && _ref2 !== void 0 ? _ref2 : componentProps === null || componentProps === void 0 ? void 0 : componentProps.disabled : (_ref4 = (_ref5 = _disabled !== null && _disabled !== void 0 ? _disabled : _fieldProps === null || _fieldProps === void 0 ? void 0 : _fieldProps.disabled) !== null && _ref5 !== void 0 ? _ref5 : componentProps === null || componentProps === void 0 ? void 0 : componentProps.disabled) !== null && _ref4 !== void 0 ? _ref4 : formDisabled;
|
139
145
|
// ↑↑↑↑↑↑ formItem参数整理 ↑↑↑↑↑↑
|
140
146
|
Object.assign(otherFormItemProps, transforms, {
|
141
147
|
names: otherProps.names
|
@@ -148,6 +154,10 @@ var Render = function Render(props) {
|
|
148
154
|
} : null, (0, _objectSpread2.default)({}, (0, _index.isTrim)(type, trim, (0, _ProConfigProvider.useProConfig)())), // 优先取传进来的,其次取ProConfigProvider配置的
|
149
155
|
(0, _objectSpread2.default)({}, (0, _index.isUpperCase)(type, upperCase)), {
|
150
156
|
validateFirst: true
|
157
|
+
},
|
158
|
+
// 当某一规则校验不通过时,是否停止剩下的规则的校验
|
159
|
+
{
|
160
|
+
disabled: lastDisabled
|
151
161
|
});
|
152
162
|
// 添加label宽度
|
153
163
|
if (labelWidth) {
|
@@ -157,12 +167,6 @@ var Render = function Render(props) {
|
|
157
167
|
}
|
158
168
|
/** 移除多余参数,防止透传给formItem报错 */
|
159
169
|
var _otherFormItemProps = (0, _lodash.omit)(otherFormItemProps, ['component', 'names', 'format', 'toISOString', 'toCSTString', 'switchValue', 'precision', 'clearNotShow', 'dependNames']);
|
160
|
-
/**
|
161
|
-
* globalControl 全局控制优先
|
162
|
-
* globalControl true时,优先级 全局【formDisabled】> formitem上【column.disabled】 > 组件上【fieldProps.disabled】
|
163
|
-
* globalControl false时,优先级 组件上【fieldProps.disabled】 > formitem上【column.disabled】 > 全局【formDisabled】
|
164
|
-
*/
|
165
|
-
var lastDisabled = globalControl ? (_ref2 = (_ref3 = formDisabled !== null && formDisabled !== void 0 ? formDisabled : _disabled) !== null && _ref3 !== void 0 ? _ref3 : _fieldProps === null || _fieldProps === void 0 ? void 0 : _fieldProps.disabled) !== null && _ref2 !== void 0 ? _ref2 : componentProps === null || componentProps === void 0 ? void 0 : componentProps.disabled : (_ref4 = (_ref5 = _disabled !== null && _disabled !== void 0 ? _disabled : _fieldProps === null || _fieldProps === void 0 ? void 0 : _fieldProps.disabled) !== null && _ref5 !== void 0 ? _ref5 : componentProps === null || componentProps === void 0 ? void 0 : componentProps.disabled) !== null && _ref4 !== void 0 ? _ref4 : formDisabled;
|
166
170
|
/**
|
167
171
|
* 最新fieldProps: 更新后的组件Props
|
168
172
|
*/
|
@@ -401,7 +405,7 @@ var Render = function Render(props) {
|
|
401
405
|
};
|
402
406
|
}
|
403
407
|
// 需要过滤掉的form_item的key
|
404
|
-
var filterFormItemKey = ['onFieldChange', 'shouldUpdate', 'namePath', 'isView', 'parentNames', 'space', 'before', 'after', 'globalControl', 'listName'];
|
408
|
+
var filterFormItemKey = ['onFieldChange', 'shouldUpdate', 'namePath', 'isView', 'parentNames', 'space', 'before', 'after', 'globalControl', 'listName', 'fixed'];
|
405
409
|
if (type === 'FormList') {
|
406
410
|
lastComponentProps.disabled = lastDisabled;
|
407
411
|
var lessMode = lastComponentProps.mode === 'less';
|
package/lib/ProForm/index.js
CHANGED
@@ -92,12 +92,15 @@ var ProForm = function ProForm(props, ref) {
|
|
92
92
|
(0, _react.useMemo)(function () {
|
93
93
|
if (formKey && forms[formKey] !== form) {
|
94
94
|
forms[formKey] = form;
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
95
|
+
// fix: Cannot update a component (`ProConfigProvider`) while rendering a different component (`ForwardRef(ProForm)`).
|
96
|
+
setTimeout(function () {
|
97
|
+
dispatch({
|
98
|
+
type: 'set',
|
99
|
+
payload: {
|
100
|
+
forms: (0, _objectSpread2.default)({}, forms)
|
101
|
+
}
|
102
|
+
});
|
103
|
+
}, 300);
|
101
104
|
}
|
102
105
|
// 销毁
|
103
106
|
return function () {
|
@@ -238,7 +241,7 @@ var ProForm = function ProForm(props, ref) {
|
|
238
241
|
},
|
239
242
|
className: cls,
|
240
243
|
form: form
|
241
|
-
}, formProps), config), otherProps), {}, {
|
244
|
+
}, formProps), (0, _lodash.omit)(config, ['isDiffAll'])), otherProps), {}, {
|
242
245
|
labelAlign: (_ref = labelAlign !== null && labelAlign !== void 0 ? labelAlign : config.labelAlign) !== null && _ref !== void 0 ? _ref : 'left',
|
243
246
|
onValuesChange: handleValuesChange,
|
244
247
|
onFinish: handleFinish,
|
@@ -20,7 +20,6 @@ var filterObject = function filterObject(data) {
|
|
20
20
|
if (!Object.keys(resData).length) return null;
|
21
21
|
return resData;
|
22
22
|
};
|
23
|
-
var nullValue = [null, undefined, '']; // 输入框空值时可能存在的三种值 视为相等
|
24
23
|
var diffOriginal = exports.diffOriginal = function diffOriginal(params) {
|
25
24
|
var originalValue = params.originalValue,
|
26
25
|
value = params.value,
|
package/lib/ProIcon/index.js
CHANGED
@@ -20,7 +20,7 @@ var _config2 = require("./config");
|
|
20
20
|
var _utils = require("./utils");
|
21
21
|
var _locale = _interopRequireDefault(require("../locale"));
|
22
22
|
require("./symbolIcon.js");
|
23
|
-
var _excluded = ["type", "onClick", "size", "color", "className", "style", "spin", "rotate", "theme", "disabled", "mode", "buttonProps", "children", "mapList", "src", "actionMap", "tooltip"];
|
23
|
+
var _excluded = ["type", "onClick", "size", "color", "className", "style", "spin", "rotate", "theme", "disabled", "mode", "buttonProps", "children", "mapList", "src", "actionMap", "tooltip", "buttonIcon"];
|
24
24
|
var ProIcon = function ProIcon(props) {
|
25
25
|
var _window, _window2;
|
26
26
|
var _useProConfig = (0, _ProConfigProvider.useProConfig)(),
|
@@ -54,6 +54,8 @@ var ProIcon = function ProIcon(props) {
|
|
54
54
|
src = _config.src,
|
55
55
|
actionMap = _config.actionMap,
|
56
56
|
tooltip = _config.tooltip,
|
57
|
+
_config$buttonIcon = _config.buttonIcon,
|
58
|
+
buttonIcon = _config$buttonIcon === void 0 ? true : _config$buttonIcon,
|
57
59
|
reset = (0, _objectWithoutProperties2.default)(_config, _excluded);
|
58
60
|
var _useSetState = (0, _ahooks.useSetState)({
|
59
61
|
IconInstance: (0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {})
|
@@ -134,6 +136,25 @@ var ProIcon = function ProIcon(props) {
|
|
134
136
|
height: size
|
135
137
|
}, rotateStyle), style)
|
136
138
|
};
|
139
|
+
var icon = !src ? (0, _jsxRuntime.jsx)("svg", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, svgProps), {}, {
|
140
|
+
onClick: onClick,
|
141
|
+
"aria-hidden": "true",
|
142
|
+
children: (0, _jsxRuntime.jsx)("use", {
|
143
|
+
xlinkHref: "#icon-".concat(_type)
|
144
|
+
})
|
145
|
+
})) : (0, _jsxRuntime.jsx)(_reactSvg.ReactSVG, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, svgProps), {}, {
|
146
|
+
// @ts-ignore
|
147
|
+
onClick: onClick,
|
148
|
+
"aria-hidden": "true",
|
149
|
+
src: src,
|
150
|
+
beforeInjection: function beforeInjection(svg) {
|
151
|
+
(0, _utils.onBeforeInjection)({
|
152
|
+
svg: svg,
|
153
|
+
actionMap: actionMap,
|
154
|
+
primaryColor: isQiankun ? qiankunPrimaryColor : primaryColor
|
155
|
+
});
|
156
|
+
}
|
157
|
+
}));
|
137
158
|
var RenderIcon = (0, _jsxRuntime.jsx)("span", (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
138
159
|
className: "anticon",
|
139
160
|
style: {
|
@@ -142,7 +163,7 @@ var ProIcon = function ProIcon(props) {
|
|
142
163
|
}, reset), {}, {
|
143
164
|
children: (0, _jsxRuntime.jsx)(_antd.Tooltip, {
|
144
165
|
title: iconText,
|
145
|
-
children: (0, _jsxRuntime.jsx)(_antd.Button, (0, _objectSpread2.default)({
|
166
|
+
children: buttonIcon ? (0, _jsxRuntime.jsx)(_antd.Button, (0, _objectSpread2.default)({
|
146
167
|
style: {
|
147
168
|
width: size,
|
148
169
|
height: size,
|
@@ -152,26 +173,20 @@ var ProIcon = function ProIcon(props) {
|
|
152
173
|
verticalAlign: 'baseline'
|
153
174
|
},
|
154
175
|
type: "text",
|
155
|
-
icon:
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
actionMap: actionMap,
|
170
|
-
primaryColor: isQiankun ? qiankunPrimaryColor : primaryColor
|
171
|
-
});
|
172
|
-
}
|
173
|
-
}))
|
174
|
-
}, buttonProps))
|
176
|
+
icon: icon
|
177
|
+
}, buttonProps)) : (0, _jsxRuntime.jsx)(_antd.Space, {
|
178
|
+
children: (0, _jsxRuntime.jsx)("span", {
|
179
|
+
style: {
|
180
|
+
width: size,
|
181
|
+
height: size,
|
182
|
+
border: 'none',
|
183
|
+
borderRadius: 0,
|
184
|
+
padding: 0,
|
185
|
+
verticalAlign: 'baseline'
|
186
|
+
},
|
187
|
+
children: icon
|
188
|
+
})
|
189
|
+
})
|
175
190
|
})
|
176
191
|
}));
|
177
192
|
(0, _react.useEffect)(function () {
|
@@ -119,9 +119,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
119
119
|
}
|
120
120
|
};
|
121
121
|
if (column === null || column === void 0 ? void 0 : column.render) {
|
122
|
-
if (!originalObj && Object.keys(originalObj
|
123
|
-
|
124
|
-
}
|
122
|
+
// if (!originalObj && Object.keys(originalObj ?? {}).length === 0 && !onDiff) {
|
123
|
+
// return;
|
124
|
+
// }
|
125
125
|
var originalRender = column.render; // 保存原始的 render 方法
|
126
126
|
// 自定义render 手动重载下
|
127
127
|
column.render = function (value, record, index) {
|
@@ -129,8 +129,10 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
129
129
|
var _value = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(value, record !== null && record !== void 0 ? record : {}, index) : null;
|
130
130
|
var originalResult = (0, _utils2.getOriginalValue)(value, record !== null && record !== void 0 ? record : {}, originalObj, rowKey, dataIndex);
|
131
131
|
var originalValue = originalResult.originalValue;
|
132
|
-
var isChanged = originalResult.isChanged
|
132
|
+
var isChanged = originalResult.isChanged,
|
133
|
+
isAddCell = originalResult.isAddCell;
|
133
134
|
var isInNewRowFlag = isInNewRow(record);
|
135
|
+
var _isAddCell = isAddCell;
|
134
136
|
otherProps.isChanged = isChanged;
|
135
137
|
// 存在比对
|
136
138
|
if ((0, _lodash.isFunction)(otherProps === null || otherProps === void 0 ? void 0 : otherProps.viewRender) && (diffConfig === null || diffConfig === void 0 ? void 0 : diffConfig.originalDataSource)) {
|
@@ -148,6 +150,27 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
148
150
|
}
|
149
151
|
originalValue = diffResult;
|
150
152
|
}
|
153
|
+
// 存在自定义onDiff比对
|
154
|
+
if ((0, _lodash.isFunction)(onDiff)) {
|
155
|
+
var _originalObj$record$r2;
|
156
|
+
var _diffResult = onDiff({
|
157
|
+
originalValue: originalValue,
|
158
|
+
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 : {},
|
159
|
+
value: value,
|
160
|
+
record: record,
|
161
|
+
index: index
|
162
|
+
});
|
163
|
+
if (_diffResult === 'changed') {
|
164
|
+
otherProps.isChanged = true;
|
165
|
+
}
|
166
|
+
if (_diffResult === 'same') {
|
167
|
+
otherProps.isChanged = false;
|
168
|
+
}
|
169
|
+
if (_diffResult === 'add') {
|
170
|
+
_isAddCell = true;
|
171
|
+
otherProps.isChanged = false;
|
172
|
+
}
|
173
|
+
}
|
151
174
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherProps), {}, {
|
152
175
|
valueType: valueType,
|
153
176
|
originalValue: (0, _utils3.isEmpty)(originalValue) ? null : originalValue,
|
@@ -158,7 +181,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
158
181
|
currentValue: _value,
|
159
182
|
toolTipProps: _toolTipProps,
|
160
183
|
minWidth: minWidth,
|
161
|
-
isInNewRowFlag: isInNewRowFlag
|
184
|
+
isInNewRowFlag: isInNewRowFlag,
|
185
|
+
isAddCell: _isAddCell
|
162
186
|
}));
|
163
187
|
};
|
164
188
|
return;
|
@@ -183,8 +207,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
183
207
|
var realValue = _utils.tools.calc(Number(value !== null && value !== void 0 ? value : 0), '*', multiple);
|
184
208
|
var renderValue = (0, _utils2.getDecimalDigits)(value) > valueTypePrecision ? realValue : realValue.toFixed(valueTypePrecision);
|
185
209
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
186
|
-
var
|
187
|
-
|
210
|
+
var isChanged = originalResult.isChanged,
|
211
|
+
originalValue = originalResult.originalValue,
|
212
|
+
isAddCell = originalResult.isAddCell;
|
188
213
|
otherProps.isChanged = isChanged;
|
189
214
|
var originalRealValue = _utils.tools.calc(Number(originalValue || null), '*', multiple);
|
190
215
|
var originalRenderValue = (0, _utils2.getDecimalDigits)(originalValue) > valueTypePrecision ? originalRealValue : originalRealValue.toFixed(valueTypePrecision);
|
@@ -214,7 +239,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
214
239
|
currentValue: renderValue,
|
215
240
|
toolTipProps: _toolTipProps,
|
216
241
|
minWidth: minWidth,
|
217
|
-
isInNewRowFlag: isInNewRowFlag
|
242
|
+
isInNewRowFlag: isInNewRowFlag,
|
243
|
+
isAddCell: isAddCell
|
218
244
|
}));
|
219
245
|
};
|
220
246
|
// 千分位, 千分位带CNY前缀
|
@@ -223,8 +249,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
223
249
|
var valueStr = valueTypePrecision ? "".concat(Number(value).toFixed(valueTypePrecision)) : "".concat(value);
|
224
250
|
var renderValue = valueStr.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
225
251
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
226
|
-
var
|
227
|
-
|
252
|
+
var isChanged = originalResult.isChanged,
|
253
|
+
originalValue = originalResult.originalValue,
|
254
|
+
isAddCell = originalResult.isAddCell;
|
228
255
|
otherProps.isChanged = isChanged;
|
229
256
|
var originalRealValue = valueTypePrecision ? "".concat(Number(originalValue).toFixed(valueTypePrecision)) : "".concat(originalValue);
|
230
257
|
var originalRenderValue = originalRealValue.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
@@ -254,7 +281,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
254
281
|
currentValue: renderValue,
|
255
282
|
toolTipProps: _toolTipProps,
|
256
283
|
minWidth: minWidth,
|
257
|
-
isInNewRowFlag: isInNewRowFlag
|
284
|
+
isInNewRowFlag: isInNewRowFlag,
|
285
|
+
isAddCell: isAddCell
|
258
286
|
}));
|
259
287
|
};
|
260
288
|
} else if (['datePicker', 'date', 'dateTime', 'dateStartTime', 'dateEndTime', 'dateStartEndTime'].includes(valueType)) {
|
@@ -262,8 +290,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
262
290
|
var _moment, _moment2, _moment3, _moment4, _moment5, _moment6, _moment7, _moment8, _moment9, _moment10, _moment11, _moment12, _moment13, _moment14;
|
263
291
|
var renderValue = (_moment = (0, _moment15.default)(value)) === null || _moment === void 0 ? void 0 : _moment.format(format);
|
264
292
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
265
|
-
var
|
266
|
-
|
293
|
+
var isChanged = originalResult.isChanged,
|
294
|
+
originalValue = originalResult.originalValue,
|
295
|
+
isAddCell = originalResult.isAddCell;
|
267
296
|
otherProps.isChanged = isChanged;
|
268
297
|
var originalRenderValue = (_moment2 = (0, _moment15.default)(originalValue)) === null || _moment2 === void 0 ? void 0 : _moment2.format(format);
|
269
298
|
switch (valueType) {
|
@@ -317,7 +346,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
317
346
|
currentValue: renderValue,
|
318
347
|
toolTipProps: _toolTipProps,
|
319
348
|
minWidth: minWidth,
|
320
|
-
isInNewRowFlag: isInNewRowFlag
|
349
|
+
isInNewRowFlag: isInNewRowFlag,
|
350
|
+
isAddCell: isAddCell
|
321
351
|
}));
|
322
352
|
};
|
323
353
|
} else if (['enumName', 'enumCodeName'].includes(valueType)) {
|
@@ -325,8 +355,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
325
355
|
var realCode = typeof code === 'function' ? code(value, record) : code;
|
326
356
|
var renderValue = (0, _getEnumLabel.default)(realCode, value, valueType === 'enumCodeName');
|
327
357
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
328
|
-
var
|
329
|
-
|
358
|
+
var isChanged = originalResult.isChanged,
|
359
|
+
originalValue = originalResult.originalValue,
|
360
|
+
isAddCell = originalResult.isAddCell;
|
330
361
|
otherProps.isChanged = isChanged;
|
331
362
|
var originalRenderValue = (0, _getEnumLabel.default)(realCode, originalValue, valueType === 'enumCodeName');
|
332
363
|
if (Array.isArray(column === null || column === void 0 ? void 0 : column.codeValues) && !realCode) {
|
@@ -360,15 +391,17 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
360
391
|
currentValue: renderValue,
|
361
392
|
toolTipProps: _toolTipProps,
|
362
393
|
minWidth: minWidth,
|
363
|
-
isInNewRowFlag: isInNewRowFlag
|
394
|
+
isInNewRowFlag: isInNewRowFlag,
|
395
|
+
isAddCell: isAddCell
|
364
396
|
}));
|
365
397
|
};
|
366
398
|
} else if (precision || prefix || suffix) {
|
367
399
|
column.render = function (value, record, index) {
|
368
400
|
var renderValue = value === 'number' ? value.toFixed(precision) : value;
|
369
401
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
370
|
-
var
|
371
|
-
|
402
|
+
var isChanged = originalResult.isChanged,
|
403
|
+
originalValue = originalResult.originalValue,
|
404
|
+
isAddCell = originalResult.isAddCell;
|
372
405
|
otherProps.isChanged = isChanged;
|
373
406
|
var originalRenderValue = originalValue === 'number' ? originalValue.toFixed(precision) : originalValue;
|
374
407
|
var node = (0, _jsxRuntime.jsxs)(_antd.Space, {
|
@@ -397,7 +430,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
397
430
|
currentValue: renderValue,
|
398
431
|
toolTipProps: _toolTipProps,
|
399
432
|
minWidth: minWidth,
|
400
|
-
isInNewRowFlag: isInNewRowFlag
|
433
|
+
isInNewRowFlag: isInNewRowFlag,
|
434
|
+
isAddCell: isAddCell
|
401
435
|
}));
|
402
436
|
};
|
403
437
|
} else if (valueType === 'address') {
|
@@ -405,8 +439,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
405
439
|
var _realValue$filter;
|
406
440
|
var realValue = transform ? transform(value, record) : value;
|
407
441
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
408
|
-
var
|
409
|
-
|
442
|
+
var isChanged = originalResult.isChanged,
|
443
|
+
originalValue = originalResult.originalValue,
|
444
|
+
isAddCell = originalResult.isAddCell;
|
410
445
|
otherProps.isChanged = isChanged;
|
411
446
|
var originalRealValue = transform ? transform(originalValue, record) : originalValue;
|
412
447
|
var isEmpty = !realValue || Array.isArray(realValue) && (realValue === null || realValue === void 0 ? void 0 : (_realValue$filter = realValue.filter(function (item) {
|
@@ -454,7 +489,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
454
489
|
currentValue: renderValue,
|
455
490
|
toolTipProps: _toolTipProps,
|
456
491
|
minWidth: minWidth,
|
457
|
-
isInNewRowFlag: isInNewRowFlag
|
492
|
+
isInNewRowFlag: isInNewRowFlag,
|
493
|
+
isAddCell: isAddCell
|
458
494
|
}));
|
459
495
|
};
|
460
496
|
} else if (copyable) {
|
@@ -479,8 +515,9 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
479
515
|
} else if (ellipsis) {
|
480
516
|
column.render = function (value, record, index) {
|
481
517
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
482
|
-
var
|
483
|
-
|
518
|
+
var isChanged = originalResult.isChanged,
|
519
|
+
originalValue = originalResult.originalValue,
|
520
|
+
isAddCell = originalResult.isAddCell;
|
484
521
|
otherProps.isChanged = isChanged;
|
485
522
|
if (!value && value !== 0 && value === originalValue) {
|
486
523
|
(0, _jsxRuntime.jsx)("div", {
|
@@ -503,15 +540,17 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
503
540
|
currentValue: value || '-',
|
504
541
|
toolTipProps: _toolTipProps,
|
505
542
|
minWidth: minWidth,
|
506
|
-
isInNewRowFlag: isInNewRowFlag
|
543
|
+
isInNewRowFlag: isInNewRowFlag,
|
544
|
+
isAddCell: isAddCell
|
507
545
|
})), suffixNode(value, record, index)]
|
508
546
|
});
|
509
547
|
};
|
510
548
|
} else {
|
511
549
|
column.render = function (value, record, index) {
|
512
550
|
var originalResult = (0, _utils2.getOriginalValue)(value, record, originalObj, rowKey, dataIndex);
|
513
|
-
var
|
514
|
-
|
551
|
+
var isChanged = originalResult.isChanged,
|
552
|
+
originalValue = originalResult.originalValue,
|
553
|
+
isAddCell = originalResult.isAddCell;
|
515
554
|
otherProps.isChanged = isChanged;
|
516
555
|
var node = (0, _jsxRuntime.jsxs)(_antd.Space, {
|
517
556
|
size: 8,
|
@@ -536,7 +575,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
536
575
|
currentValue: value || '-',
|
537
576
|
toolTipProps: _toolTipProps,
|
538
577
|
minWidth: minWidth,
|
539
|
-
isInNewRowFlag: isInNewRowFlag
|
578
|
+
isInNewRowFlag: isInNewRowFlag,
|
579
|
+
isAddCell: isAddCell
|
540
580
|
}));
|
541
581
|
};
|
542
582
|
}
|
@@ -39,7 +39,8 @@ var RenderColumn = function RenderColumn(props) {
|
|
39
39
|
tooltip = _useSetState2[0].tooltip,
|
40
40
|
setState = _useSetState2[1];
|
41
41
|
var cellDiffCls = (0, _classnames.default)({
|
42
|
-
'varied-cell': props === null || props === void 0 ? void 0 : props.isChanged
|
42
|
+
'varied-cell': props === null || props === void 0 ? void 0 : props.isChanged,
|
43
|
+
'add-cell': props === null || props === void 0 ? void 0 : props.isAddCell
|
43
44
|
});
|
44
45
|
// 比对场景走的逻辑
|
45
46
|
if (!isInNewRowFlag && (0, _lodash.isBoolean)(props === null || props === void 0 ? void 0 : props.isChanged)) {
|
@@ -99,10 +100,7 @@ var RenderColumn = function RenderColumn(props) {
|
|
99
100
|
children: renderNode
|
100
101
|
}));
|
101
102
|
}
|
102
|
-
|
103
|
-
return renderNode;
|
104
|
-
}
|
105
|
-
return (0, _jsxRuntime.jsx)("span", {
|
103
|
+
return (0, _jsxRuntime.jsx)("div", {
|
106
104
|
className: cellDiffCls,
|
107
105
|
style: {
|
108
106
|
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;
|
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports.isListResult = exports.getRowKey = exports.getOriginalValue = exports.getDecimalDigits = exports.getColumnDataIndex = void 0;
|
7
7
|
var _lodash = require("lodash");
|
8
|
+
var _utils = require("@zat-design/utils");
|
9
|
+
var isEmpty = _utils.validate.isEmpty;
|
8
10
|
/**
|
9
11
|
* 获取小数点后的位数
|
10
12
|
* @param num 数字
|
@@ -23,25 +25,36 @@ var getDecimalDigits = exports.getDecimalDigits = function getDecimalDigits() {
|
|
23
25
|
* @param any originalObj
|
24
26
|
* @param {any} dataIndex
|
25
27
|
* @return {any} isChanged 返回bool值,表示存在比对
|
28
|
+
* @return {any} isAddCell 返回bool值,表示存在比对
|
26
29
|
*/
|
27
30
|
var getOriginalValue = exports.getOriginalValue = function getOriginalValue(value, record, originalObj, rowKey, dataIndex) {
|
28
31
|
if (!originalObj) {
|
29
32
|
return {
|
30
33
|
originalValue: null,
|
31
|
-
isChanged: null
|
34
|
+
isChanged: null,
|
35
|
+
isAddCell: null
|
32
36
|
};
|
33
37
|
}
|
34
38
|
var originalRecord = (0, _lodash.get)(originalObj, (0, _lodash.get)(record, rowKey));
|
35
39
|
var originalValue = (0, _lodash.get)(originalRecord, dataIndex);
|
40
|
+
if (isEmpty(originalValue) && !isEmpty(value)) {
|
41
|
+
return {
|
42
|
+
originalValue: originalValue,
|
43
|
+
isAddCell: true,
|
44
|
+
isChanged: false
|
45
|
+
};
|
46
|
+
}
|
36
47
|
if (!(0, _lodash.isEqual)(originalValue, value)) {
|
37
48
|
return {
|
38
49
|
originalValue: originalValue,
|
39
|
-
isChanged: true
|
50
|
+
isChanged: true,
|
51
|
+
isAddCell: false
|
40
52
|
};
|
41
53
|
}
|
42
54
|
return {
|
43
55
|
originalValue: null,
|
44
|
-
isChanged: false
|
56
|
+
isChanged: false,
|
57
|
+
isAddCell: false
|
45
58
|
};
|
46
59
|
};
|
47
60
|
var getColumnDataIndex = exports.getColumnDataIndex = function getColumnDataIndex(dataIndex) {
|