@zat-design/sisyphus-react 3.8.3-beta.1 → 3.8.3-beta.10
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/dist/index.esm.css +16 -0
- package/dist/less.esm.css +16 -0
- package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +21 -7
- package/es/ProEditTable/components/RenderField/index.js +8 -1
- package/es/ProEditTable/index.js +0 -1
- package/es/ProEditTable/propsType.d.ts +0 -1
- package/es/ProEditTable/utils/index.js +10 -3
- package/es/ProForm/components/combination/FormList/components/BlockFields.d.ts +2 -0
- package/es/ProForm/components/combination/FormList/components/BlockFields.js +4 -2
- package/es/ProForm/components/combination/FormList/components/LineFields.d.ts +2 -0
- package/es/ProForm/components/combination/FormList/components/LineFields.js +4 -2
- package/es/ProForm/components/combination/FormList/index.js +14 -3
- package/es/ProForm/components/combination/ProCascader/index.js +20 -13
- package/es/ProForm/components/combination/ProModalSelect/index.js +17 -3
- package/es/ProForm/components/render/ChangedWrapper.js +14 -2
- package/es/ProForm/components/render/Render.js +3 -1
- package/es/ProForm/components/render/RenderFields.js +4 -2
- package/es/ProForm/propsType.d.ts +1 -0
- package/es/ProForm/style/index.less +7 -0
- package/es/ProForm/utils/diffOriginal.js +14 -2
- package/es/ProForm/utils/useShouldUpdate.js +1 -9
- package/es/ProTable/components/FormatColumn/index.d.ts +2 -1
- package/es/ProTable/components/FormatColumn/index.js +61 -21
- package/es/ProTable/components/RenderColumn/index.d.ts +1 -0
- package/es/ProTable/components/RenderColumn/index.js +7 -4
- package/es/ProTable/index.js +8 -7
- package/es/ProTable/propsType.d.ts +4 -0
- package/es/ProTable/style/index.less +14 -0
- package/lib/ProEditTable/components/RenderField/ListChangedWrapper.js +20 -6
- package/lib/ProEditTable/components/RenderField/index.js +8 -1
- package/lib/ProEditTable/index.js +0 -1
- package/lib/ProEditTable/propsType.d.ts +0 -1
- package/lib/ProEditTable/utils/index.js +10 -3
- package/lib/ProForm/components/combination/FormList/components/BlockFields.d.ts +2 -0
- package/lib/ProForm/components/combination/FormList/components/BlockFields.js +4 -2
- package/lib/ProForm/components/combination/FormList/components/LineFields.d.ts +2 -0
- package/lib/ProForm/components/combination/FormList/components/LineFields.js +4 -2
- package/lib/ProForm/components/combination/FormList/index.js +14 -3
- package/lib/ProForm/components/combination/ProCascader/index.js +20 -13
- package/lib/ProForm/components/combination/ProModalSelect/index.js +17 -3
- package/lib/ProForm/components/render/ChangedWrapper.js +14 -2
- package/lib/ProForm/components/render/Render.js +3 -1
- package/lib/ProForm/components/render/RenderFields.js +4 -2
- package/lib/ProForm/propsType.d.ts +1 -0
- package/lib/ProForm/style/index.less +7 -0
- package/lib/ProForm/utils/diffOriginal.js +13 -1
- package/lib/ProForm/utils/useShouldUpdate.js +1 -9
- package/lib/ProTable/components/FormatColumn/index.d.ts +2 -1
- package/lib/ProTable/components/FormatColumn/index.js +61 -21
- package/lib/ProTable/components/RenderColumn/index.d.ts +1 -0
- package/lib/ProTable/components/RenderColumn/index.js +6 -3
- package/lib/ProTable/index.js +8 -7
- package/lib/ProTable/propsType.d.ts +4 -0
- package/lib/ProTable/style/index.less +14 -0
- package/package.json +1 -1
|
@@ -50,7 +50,7 @@ var getViewLabel = function getViewLabel(_ref) {
|
|
|
50
50
|
return viewLabel;
|
|
51
51
|
};
|
|
52
52
|
var ProCascader = function ProCascader(props) {
|
|
53
|
-
var _props$otherProps, _value$slice,
|
|
53
|
+
var _props$otherProps, _value$slice, _ref5, _ref5$filter, _defaultLabel$filter, _locale$ProAddressBar, _locale$ProAddressBar2;
|
|
54
54
|
var _ref2 = (0, _ProConfigProvider.useProConfig)('ProAddressBar') || {},
|
|
55
55
|
configDetailMaxLength = _ref2.detailMaxLength,
|
|
56
56
|
configEnumCode = _ref2.enumCode,
|
|
@@ -90,16 +90,18 @@ var ProCascader = function ProCascader(props) {
|
|
|
90
90
|
var realLevel = Math.max(2, level);
|
|
91
91
|
var detail = value === null || value === void 0 ? void 0 : value[realLevel];
|
|
92
92
|
var enumData = (0, _useEnum.default)(addressCode);
|
|
93
|
-
var
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
93
|
+
var _useProConfig = (0, _ProConfigProvider.useProConfig)('ProEnum'),
|
|
94
|
+
_useProConfig$dics = _useProConfig.dics,
|
|
95
|
+
dics = _useProConfig$dics === void 0 ? {} : _useProConfig$dics;
|
|
96
|
+
var enumDataSource = (0, _react.useMemo)(function () {
|
|
97
|
+
if (!(props === null || props === void 0 ? void 0 : props.mode)) {
|
|
98
|
+
return (dics === null || dics === void 0 ? void 0 : dics[addressCode]) || [];
|
|
99
|
+
}
|
|
100
|
+
return Array.isArray(enumData) ? enumData[0] : [];
|
|
101
|
+
}, [dics === null || dics === void 0 ? void 0 : dics[addressCode], enumData]);
|
|
97
102
|
var realDataSource = (0, _react.useMemo)(function () {
|
|
98
103
|
var innerDataSource = dataSource || (addressCode ? enumDataSource : []);
|
|
99
104
|
var result = (0, _index.transformDataName)(isAddressMode && realLevel === 2 ? _filterDataSource(innerDataSource, level, fieldNames) : innerDataSource, fieldNames);
|
|
100
|
-
if (transformResponse) {
|
|
101
|
-
return transformResponse(result);
|
|
102
|
-
}
|
|
103
105
|
return result;
|
|
104
106
|
}, [isAddressMode, addressCode, realLevel, dataSource, enumDataSource === null || enumDataSource === void 0 ? void 0 : enumDataSource.length]);
|
|
105
107
|
var _useRequest = (0, _objectSpread3.default)({}, useRequest),
|
|
@@ -115,7 +117,7 @@ var ProCascader = function ProCascader(props) {
|
|
|
115
117
|
defaultLabel = _useState4[0],
|
|
116
118
|
setDefaultLabel = _useState4[1];
|
|
117
119
|
var getFirstLevelOptions = /*#__PURE__*/function () {
|
|
118
|
-
var
|
|
120
|
+
var _ref4 = (0, _asyncToGenerator2.default)(/*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
|
|
119
121
|
var _yield$service, data, newData, transFormData, serviceData;
|
|
120
122
|
return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
|
|
121
123
|
while (1) switch (_context.prev = _context.next) {
|
|
@@ -143,9 +145,13 @@ var ProCascader = function ProCascader(props) {
|
|
|
143
145
|
}, _callee);
|
|
144
146
|
}));
|
|
145
147
|
return function getFirstLevelOptions() {
|
|
146
|
-
return
|
|
148
|
+
return _ref4.apply(this, arguments);
|
|
147
149
|
};
|
|
148
150
|
}();
|
|
151
|
+
// 提取出来默认每次都执行
|
|
152
|
+
if (transformResponse) {
|
|
153
|
+
realDataSource = transformResponse(realDataSource);
|
|
154
|
+
}
|
|
149
155
|
(0, _react.useEffect)(function () {
|
|
150
156
|
if (service) {
|
|
151
157
|
// 传入useRequest时,初次加载级联第一级数据源
|
|
@@ -154,13 +160,14 @@ var ProCascader = function ProCascader(props) {
|
|
|
154
160
|
}, [service]);
|
|
155
161
|
(0, _react.useEffect)(function () {
|
|
156
162
|
if (realIsView && value) {
|
|
163
|
+
var _realDataSource;
|
|
157
164
|
// 传入dataSource + 查看时初始化展示
|
|
158
165
|
if (service) {
|
|
159
166
|
setDefaultLabel(getViewLabel({
|
|
160
167
|
dataSource: serviceData,
|
|
161
168
|
value: isAddressMode && hasDetail ? value === null || value === void 0 ? void 0 : value.slice(0, realLevel) : value
|
|
162
169
|
}));
|
|
163
|
-
} else if ((realDataSource === null ||
|
|
170
|
+
} else if (((_realDataSource = realDataSource) === null || _realDataSource === void 0 ? void 0 : _realDataSource.length) > 0) {
|
|
164
171
|
setDefaultLabel(getViewLabel({
|
|
165
172
|
dataSource: realDataSource,
|
|
166
173
|
value: isAddressMode && hasDetail ? value === null || value === void 0 ? void 0 : value.slice(0, realLevel) : value
|
|
@@ -194,9 +201,9 @@ var ProCascader = function ProCascader(props) {
|
|
|
194
201
|
var addressValue = isAddressMode ? value && ((_value$slice = value.slice(0, realLevel)) === null || _value$slice === void 0 ? void 0 : _value$slice.some(function (item) {
|
|
195
202
|
return !!item;
|
|
196
203
|
})) ? value.slice(0, realLevel) : undefined : value;
|
|
197
|
-
var viewValue = isAddressMode ? ((
|
|
204
|
+
var viewValue = isAddressMode ? ((_ref5 = [].concat((0, _toConsumableArray2.default)(defaultLabel), [value === null || value === void 0 ? void 0 : value[realLevel]])) === null || _ref5 === void 0 ? void 0 : (_ref5$filter = _ref5.filter(function (item) {
|
|
198
205
|
return !!item;
|
|
199
|
-
})) === null ||
|
|
206
|
+
})) === null || _ref5$filter === void 0 ? void 0 : _ref5$filter.join(separator)) || '-' : (defaultLabel === null || defaultLabel === void 0 ? void 0 : (_defaultLabel$filter = defaultLabel.filter(function (item) {
|
|
200
207
|
return !!item;
|
|
201
208
|
})) === null || _defaultLabel$filter === void 0 ? void 0 : _defaultLabel$filter.join(separator)) || '-';
|
|
202
209
|
var _findSelectedOptions = function findSelectedOptions(options, value) {
|
|
@@ -190,11 +190,25 @@ var ProModalSelect = function ProModalSelect(props, ref) {
|
|
|
190
190
|
value: item[valueKey],
|
|
191
191
|
label: item[labelKey]
|
|
192
192
|
}));
|
|
193
|
-
})) === null || _data$map === void 0 ? void 0 : _data$map.join(',') :
|
|
193
|
+
})) === null || _data$map === void 0 ? void 0 : _data$map.join(',') : '';
|
|
194
194
|
};
|
|
195
195
|
var viewText = (0, _react.useMemo)(function () {
|
|
196
|
-
|
|
197
|
-
|
|
196
|
+
var nextValue = labelInValue ? value : _value;
|
|
197
|
+
if (labelInValue) {
|
|
198
|
+
nextValue = value;
|
|
199
|
+
} else {
|
|
200
|
+
var _options$find;
|
|
201
|
+
var optionDTO = options === null || options === void 0 ? void 0 : (_options$find = options.find) === null || _options$find === void 0 ? void 0 : _options$find.call(options, function (item) {
|
|
202
|
+
return item[valueKey] === value;
|
|
203
|
+
});
|
|
204
|
+
if (optionDTO) {
|
|
205
|
+
nextValue = optionDTO;
|
|
206
|
+
} else {
|
|
207
|
+
nextValue = _value;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
return formatValue(nextValue);
|
|
211
|
+
}, [value, _value, options]);
|
|
198
212
|
/**
|
|
199
213
|
* 获取表格的rowKey,支持函数、字符串
|
|
200
214
|
* @date 2023-02-16
|
|
@@ -17,7 +17,7 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
17
17
|
var _diffOriginal = require("../../utils/diffOriginal");
|
|
18
18
|
var _ProConfigProvider = require("../../../ProConfigProvider");
|
|
19
19
|
var _utils = require("../../../utils");
|
|
20
|
-
var _excluded = ["name", "names", "namesStr", "form", "equalWith", "children", "type", "diffConfig", "valuePropName", "normalize", "getValueProps"];
|
|
20
|
+
var _excluded = ["name", "names", "namesStr", "form", "equalWith", "children", "type", "diffConfig", "valuePropName", "normalize", "getValueProps", "viewRender"];
|
|
21
21
|
var ChangedWrapper = function ChangedWrapper(props) {
|
|
22
22
|
var _diffConfig$toolTip, _children$props, _children$props2, _children$props3;
|
|
23
23
|
var name = props.name,
|
|
@@ -32,6 +32,7 @@ var ChangedWrapper = function ChangedWrapper(props) {
|
|
|
32
32
|
valuePropName = _props$valuePropName === void 0 ? 'value' : _props$valuePropName,
|
|
33
33
|
normalize = props.normalize,
|
|
34
34
|
getValueProps = props.getValueProps,
|
|
35
|
+
viewRender = props.viewRender,
|
|
35
36
|
rest = (0, _objectWithoutProperties2.default)(props, _excluded);
|
|
36
37
|
var _useProConfig = (0, _ProConfigProvider.useProConfig)('ProForm'),
|
|
37
38
|
isDiffAll = _useProConfig.isDiffAll;
|
|
@@ -57,9 +58,20 @@ var ChangedWrapper = function ChangedWrapper(props) {
|
|
|
57
58
|
}, [isWatch, noChange, props[valuePropName], originalValue]);
|
|
58
59
|
var isAdd = diffType === 'add';
|
|
59
60
|
var isChanged = diffType === 'changed';
|
|
61
|
+
var viewRenderFun = (0, _react.useMemo)(function () {
|
|
62
|
+
var record = form.getFieldsValue();
|
|
63
|
+
return function (orgValue) {
|
|
64
|
+
return viewRender(orgValue, record, {
|
|
65
|
+
form: form
|
|
66
|
+
});
|
|
67
|
+
};
|
|
68
|
+
}, [form]);
|
|
60
69
|
var tipContent = (0, _react.useMemo)(function () {
|
|
61
70
|
if (!isWatch || noChange) return undefined;
|
|
62
|
-
var valueProps = getValueProps ? getValueProps(originalValue) :
|
|
71
|
+
var valueProps = getValueProps && !names ? getValueProps(originalValue) : {
|
|
72
|
+
value: originalValue
|
|
73
|
+
};
|
|
74
|
+
if (viewRender) return viewRenderFun(valueProps === null || valueProps === void 0 ? void 0 : valueProps.value);
|
|
63
75
|
return /*#__PURE__*/_react.default.isValidElement(children) ? /*#__PURE__*/_react.default.cloneElement(children, (0, _objectSpread3.default)((0, _objectSpread3.default)({}, children.props), {}, (0, _defineProperty2.default)({
|
|
64
76
|
isView: true
|
|
65
77
|
}, valuePropName, valueProps === null || valueProps === void 0 ? void 0 : valueProps.value))) : undefined;
|
|
@@ -50,7 +50,8 @@ var Render = function Render(props) {
|
|
|
50
50
|
requiredOnView = props.requiredOnView,
|
|
51
51
|
confirm = props.confirm,
|
|
52
52
|
globalControl = props.globalControl,
|
|
53
|
-
diffConfig = props.diffConfig
|
|
53
|
+
diffConfig = props.diffConfig,
|
|
54
|
+
viewRender = props.viewRender;
|
|
54
55
|
var colProps = props.colProps;
|
|
55
56
|
// 剔除一些不是FormItem的属性, 防止控制台报warning
|
|
56
57
|
var labelWidth = formItemProps.labelWidth,
|
|
@@ -439,6 +440,7 @@ var Render = function Render(props) {
|
|
|
439
440
|
valuePropName: _otherFormItemProps.valuePropName,
|
|
440
441
|
normalize: _otherFormItemProps.normalize,
|
|
441
442
|
getValueProps: _otherFormItemProps.getValueProps,
|
|
443
|
+
viewRender: viewRender,
|
|
442
444
|
children: child
|
|
443
445
|
});
|
|
444
446
|
}
|
|
@@ -194,7 +194,8 @@ var RenderFields = function RenderFields(props) {
|
|
|
194
194
|
namePath: column.namePath,
|
|
195
195
|
listName: column.listName,
|
|
196
196
|
globalControl: globalControl,
|
|
197
|
-
formDisabled: formDisabled
|
|
197
|
+
formDisabled: formDisabled,
|
|
198
|
+
diffConfig: diffConfig
|
|
198
199
|
};
|
|
199
200
|
return (0, _jsxRuntime.jsx)(_useFieldProps.FieldProvider, {
|
|
200
201
|
value: otherProps,
|
|
@@ -217,7 +218,8 @@ var RenderFields = function RenderFields(props) {
|
|
|
217
218
|
diffConfig: diffConfig,
|
|
218
219
|
equalWith: equalWith,
|
|
219
220
|
requiredOnView: requiredOnView,
|
|
220
|
-
globalControl: globalControl
|
|
221
|
+
globalControl: globalControl,
|
|
222
|
+
viewRender: viewRender
|
|
221
223
|
})
|
|
222
224
|
}, "".concat(_formItemProps.name || _formItemProps.label).concat(index));
|
|
223
225
|
});
|
|
@@ -329,6 +329,9 @@
|
|
|
329
329
|
border-radius: 4px;
|
|
330
330
|
background: @zaui-contract-bg !important;
|
|
331
331
|
|
|
332
|
+
.@{ant-prefix}-input {
|
|
333
|
+
background: @zaui-contract-bg !important;
|
|
334
|
+
}
|
|
332
335
|
.@{ant-prefix}-select.@{ant-prefix}-select-disabled .@{ant-prefix}-select-selector{
|
|
333
336
|
background: @zaui-contract-bg !important;
|
|
334
337
|
}
|
|
@@ -403,6 +406,10 @@
|
|
|
403
406
|
border-radius: 4px;
|
|
404
407
|
background: @zaui-contract-bg-add !important;
|
|
405
408
|
|
|
409
|
+
.@{ant-prefix}-input {
|
|
410
|
+
background: @zaui-contract-bg !important;
|
|
411
|
+
}
|
|
412
|
+
|
|
406
413
|
.@{ant-prefix}-select.@{ant-prefix}-select-disabled .@{ant-prefix}-select-selector{
|
|
407
414
|
background: @zaui-contract-bg-add !important;
|
|
408
415
|
}
|
|
@@ -6,6 +6,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.diffOriginal = void 0;
|
|
7
7
|
var _lodash = require("lodash");
|
|
8
8
|
var _utils = require("../../utils");
|
|
9
|
+
// 过滤对象中undefined字段
|
|
10
|
+
// 防止{a: '1'} {a: '1', b: undefined}被认为不相等
|
|
11
|
+
var filterUndefined = function filterUndefined(data) {
|
|
12
|
+
if (!(0, _lodash.isObject)(data) || Array.isArray(data) || data === null) return data;
|
|
13
|
+
var resData = {};
|
|
14
|
+
Object.keys(data).forEach(function (key) {
|
|
15
|
+
if (data[key] !== undefined) {
|
|
16
|
+
resData[key] = data[key];
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
return resData;
|
|
20
|
+
};
|
|
9
21
|
var nullValue = [null, undefined, '']; // 输入框空值时可能存在的三种值 视为相等
|
|
10
22
|
var diffOriginal = exports.diffOriginal = function diffOriginal(params) {
|
|
11
23
|
var originalValue = params.originalValue,
|
|
@@ -35,7 +47,7 @@ var diffOriginal = exports.diffOriginal = function diffOriginal(params) {
|
|
|
35
47
|
return isSame ? 'same' : 'changed';
|
|
36
48
|
}
|
|
37
49
|
if (!nullValue.includes(value) || !nullValue.includes(originalValue)) {
|
|
38
|
-
return (0, _lodash.isEqual)(value, originalValue) ? 'same' : 'changed';
|
|
50
|
+
return (0, _lodash.isEqual)(filterUndefined(value), filterUndefined(originalValue)) ? 'same' : 'changed';
|
|
39
51
|
}
|
|
40
52
|
return 'same';
|
|
41
53
|
};
|
|
@@ -170,9 +170,6 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
|
170
170
|
index: index,
|
|
171
171
|
namePath: namePath
|
|
172
172
|
}) : rules;
|
|
173
|
-
// const _component = isFunction(originComponent)
|
|
174
|
-
// ? originComponent(_currentValues, { form, index, namePath })
|
|
175
|
-
// : newComponent;
|
|
176
173
|
var _fieldProps = (0, _lodash.isFunction)(fieldProps) ? fieldProps(_currentValues, {
|
|
177
174
|
form: form,
|
|
178
175
|
index: index,
|
|
@@ -203,17 +200,12 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
|
203
200
|
}
|
|
204
201
|
var equalRes = (0, _lodash.isEqualWith)(rulesRef.current, _rules, _index.customEqualForFun);
|
|
205
202
|
var proEqualRes = (0, _lodash.isEqualWith)(fieldPropsRef.current, _fieldProps, _index.customEqualForFun);
|
|
206
|
-
if (_show !== showRef.current || _disabled !== disabledRef.current || _required !== requiredRef.current || !equalRes || !proEqualRes
|
|
207
|
-
// 值变更,需要同步更新函数式的fieldProps
|
|
208
|
-
// (isEqualWith(fieldPropsRef.current, _fieldProps, customEqualForFun) && !isEqual(prevValues, currentValues)) ||
|
|
209
|
-
// !isEqualWith(originComponentRef.current, _component, customEqualForFun) ||
|
|
210
|
-
// equalDependencies(dependencies, prevValues, _currentValues)
|
|
203
|
+
if (_show !== showRef.current || _disabled !== disabledRef.current || _required !== requiredRef.current || !equalRes || !proEqualRes || (_fieldProps === null || _fieldProps === void 0 ? void 0 : _fieldProps.transformResponse) // 防止fieldProps变更时,transformResponse根据fieldProps新值无法触发更新
|
|
211
204
|
) {
|
|
212
205
|
showRef.current = _show;
|
|
213
206
|
disabledRef.current = _disabled;
|
|
214
207
|
requiredRef.current = _required;
|
|
215
208
|
rulesRef.current = _rules;
|
|
216
|
-
// originComponentRef.current = _component;
|
|
217
209
|
fieldPropsRef.current = _fieldProps;
|
|
218
210
|
reRender({});
|
|
219
211
|
return false;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { ProTableColumn } from '../../propsType';
|
|
3
|
-
export declare const formatColumn: ({ column, originalObj, dataSourceObj, rowKey, diffToolTip, wrapToolTipProps, scroll, onUpdateMinWidth, }: {
|
|
3
|
+
export declare const formatColumn: ({ column, originalObj, dataSourceObj, rowKey, diffToolTip, wrapToolTipProps, scroll, onUpdateMinWidth, isInNewRow, }: {
|
|
4
4
|
column: ProTableColumn;
|
|
5
5
|
originalObj: any;
|
|
6
6
|
dataSourceObj: any;
|
|
@@ -9,6 +9,7 @@ export declare const formatColumn: ({ column, originalObj, dataSourceObj, rowKey
|
|
|
9
9
|
wrapToolTipProps?: any;
|
|
10
10
|
scroll?: any;
|
|
11
11
|
onUpdateMinWidth?: any;
|
|
12
|
+
isInNewRow?: any;
|
|
12
13
|
}) => void;
|
|
13
14
|
/**
|
|
14
15
|
* 查找最近的父级className
|
|
@@ -57,7 +57,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
57
57
|
diffToolTip = _ref2.diffToolTip,
|
|
58
58
|
wrapToolTipProps = _ref2.wrapToolTipProps,
|
|
59
59
|
scroll = _ref2.scroll,
|
|
60
|
-
onUpdateMinWidth = _ref2.onUpdateMinWidth
|
|
60
|
+
onUpdateMinWidth = _ref2.onUpdateMinWidth,
|
|
61
|
+
isInNewRow = _ref2.isInNewRow;
|
|
61
62
|
var title = column.title,
|
|
62
63
|
valueType = column.valueType,
|
|
63
64
|
_column$format = column.format,
|
|
@@ -77,7 +78,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
77
78
|
originalDiffTip = _column$originalDiffT === void 0 ? true : _column$originalDiffT,
|
|
78
79
|
_column$toolTipProps = column.toolTipProps,
|
|
79
80
|
toolTipProps = _column$toolTipProps === void 0 ? {} : _column$toolTipProps,
|
|
80
|
-
minWidth = column.minWidth
|
|
81
|
+
minWidth = column.minWidth,
|
|
82
|
+
onDiff = column.onDiff;
|
|
81
83
|
// 仅在 {x: 'max-content', y: 300 } 且 column无指定 width minWidth 情况下 才开启 minWidth的自动计算
|
|
82
84
|
var isMaxContentOverFlow = (0, _lodash.isObject)(scroll) ? (scroll === null || scroll === void 0 ? void 0 : scroll.x) === 'max-content' && Reflect.ownKeys(scroll).includes('y') : false;
|
|
83
85
|
calcMinWidth({
|
|
@@ -114,7 +116,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
114
116
|
}
|
|
115
117
|
};
|
|
116
118
|
if (column === null || column === void 0 ? void 0 : column.render) {
|
|
117
|
-
if (!originalObj && Object.keys(originalObj !== null && originalObj !== void 0 ? originalObj : {}).length === 0) {
|
|
119
|
+
if (!originalObj && Object.keys(originalObj !== null && originalObj !== void 0 ? originalObj : {}).length === 0 && !onDiff) {
|
|
118
120
|
return;
|
|
119
121
|
}
|
|
120
122
|
var originalRender = column.render; // 保存原始的 render 方法
|
|
@@ -122,12 +124,23 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
122
124
|
column.render = function (value, record, index) {
|
|
123
125
|
var _originalObj$record$r;
|
|
124
126
|
var isFn = (0, _lodash.isFunction)(originalRender);
|
|
125
|
-
var _value = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(value, record !== null && record !== void 0 ? record : {}, index) :
|
|
127
|
+
var _value = isFn ? originalRender === null || originalRender === void 0 ? void 0 : originalRender(value, record !== null && record !== void 0 ? record : {}, index) : null;
|
|
126
128
|
var originalValue = (0, _utils2.getOriginalValue)(value, record !== null && record !== void 0 ? record : {}, originalObj, rowKey, dataIndex);
|
|
127
|
-
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) :
|
|
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
|
+
var isInNewRowFlag = isInNewRow(record);
|
|
131
|
+
// 把比对结果告诉我
|
|
132
|
+
if (onDiff) {
|
|
133
|
+
var isDiff = onDiff({
|
|
134
|
+
value: record,
|
|
135
|
+
originValue: originalObj === null || originalObj === void 0 ? void 0 : originalObj[record === null || record === void 0 ? void 0 : record[rowKey]]
|
|
136
|
+
});
|
|
137
|
+
if (!isDiff) {
|
|
138
|
+
originalValue = null;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
128
141
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
|
129
142
|
valueType: valueType,
|
|
130
|
-
originalValue: originalValue
|
|
143
|
+
originalValue: !originalValue && originalValue !== 0 ? null : originalRenderValue,
|
|
131
144
|
ellipsis: ellipsis,
|
|
132
145
|
width: width,
|
|
133
146
|
value: _value,
|
|
@@ -135,7 +148,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
135
148
|
currentValue: _value,
|
|
136
149
|
originalDiffTip: _originalDiffTip,
|
|
137
150
|
toolTipProps: _toolTipProps,
|
|
138
|
-
minWidth: minWidth
|
|
151
|
+
minWidth: minWidth,
|
|
152
|
+
isInNewRowFlag: isInNewRowFlag
|
|
139
153
|
});
|
|
140
154
|
};
|
|
141
155
|
return;
|
|
@@ -177,6 +191,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
177
191
|
size: 8,
|
|
178
192
|
children: [prefixNode(value, record, index), renderValue, suffixNode(value, record, index)]
|
|
179
193
|
});
|
|
194
|
+
var isInNewRowFlag = isInNewRow(record);
|
|
180
195
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
|
181
196
|
valueType: valueType,
|
|
182
197
|
originalValue: originalValue === undefined ? undefined : originalRenderValue,
|
|
@@ -187,7 +202,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
187
202
|
currentValue: renderValue,
|
|
188
203
|
originalDiffTip: _originalDiffTip,
|
|
189
204
|
toolTipProps: _toolTipProps,
|
|
190
|
-
minWidth: minWidth
|
|
205
|
+
minWidth: minWidth,
|
|
206
|
+
isInNewRowFlag: isInNewRowFlag
|
|
191
207
|
});
|
|
192
208
|
};
|
|
193
209
|
// 千分位, 千分位带CNY前缀
|
|
@@ -213,6 +229,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
213
229
|
children: "-"
|
|
214
230
|
});
|
|
215
231
|
}
|
|
232
|
+
var isInNewRowFlag = isInNewRow(record);
|
|
216
233
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
|
217
234
|
valueType: valueType,
|
|
218
235
|
originalValue: originalValue === undefined ? undefined : originalRenderValue,
|
|
@@ -223,7 +240,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
223
240
|
currentValue: renderValue,
|
|
224
241
|
originalDiffTip: _originalDiffTip,
|
|
225
242
|
toolTipProps: _toolTipProps,
|
|
226
|
-
minWidth: minWidth
|
|
243
|
+
minWidth: minWidth,
|
|
244
|
+
isInNewRowFlag: isInNewRowFlag
|
|
227
245
|
});
|
|
228
246
|
};
|
|
229
247
|
} else if (['datePicker', 'date', 'dateTime', 'dateStartTime', 'dateEndTime', 'dateStartEndTime'].includes(valueType)) {
|
|
@@ -272,6 +290,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
272
290
|
children: "-"
|
|
273
291
|
});
|
|
274
292
|
}
|
|
293
|
+
var isInNewRowFlag = isInNewRow(record);
|
|
275
294
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
|
276
295
|
valueType: valueType,
|
|
277
296
|
originalValue: originalValue === undefined ? undefined : originalRenderValue,
|
|
@@ -282,7 +301,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
282
301
|
currentValue: renderValue,
|
|
283
302
|
originalDiffTip: _originalDiffTip,
|
|
284
303
|
toolTipProps: _toolTipProps,
|
|
285
|
-
minWidth: minWidth
|
|
304
|
+
minWidth: minWidth,
|
|
305
|
+
isInNewRowFlag: isInNewRowFlag
|
|
286
306
|
});
|
|
287
307
|
};
|
|
288
308
|
} else if (['enumName', 'enumCodeName'].includes(valueType)) {
|
|
@@ -311,6 +331,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
311
331
|
size: 8,
|
|
312
332
|
children: [prefixNode(value, record, index), renderValue, suffixNode(value, record, index)]
|
|
313
333
|
});
|
|
334
|
+
var isInNewRowFlag = isInNewRow(record);
|
|
314
335
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
|
315
336
|
valueType: valueType,
|
|
316
337
|
originalValue: originalValue === undefined ? undefined : originalRenderValue,
|
|
@@ -321,7 +342,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
321
342
|
currentValue: renderValue,
|
|
322
343
|
originalDiffTip: _originalDiffTip,
|
|
323
344
|
toolTipProps: _toolTipProps,
|
|
324
|
-
minWidth: minWidth
|
|
345
|
+
minWidth: minWidth,
|
|
346
|
+
isInNewRowFlag: isInNewRowFlag
|
|
325
347
|
});
|
|
326
348
|
};
|
|
327
349
|
} else if (precision || prefix || suffix) {
|
|
@@ -344,6 +366,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
344
366
|
children: "-"
|
|
345
367
|
});
|
|
346
368
|
}
|
|
369
|
+
var isInNewRowFlag = isInNewRow(record);
|
|
347
370
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
|
348
371
|
valueType: valueType,
|
|
349
372
|
originalValue: originalValue === undefined ? undefined : originalRenderValue,
|
|
@@ -354,7 +377,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
354
377
|
currentValue: renderValue,
|
|
355
378
|
originalDiffTip: _originalDiffTip,
|
|
356
379
|
toolTipProps: _toolTipProps,
|
|
357
|
-
minWidth: minWidth
|
|
380
|
+
minWidth: minWidth,
|
|
381
|
+
isInNewRowFlag: isInNewRowFlag
|
|
358
382
|
});
|
|
359
383
|
};
|
|
360
384
|
} else if (valueType === 'address') {
|
|
@@ -390,21 +414,32 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
390
414
|
code: code,
|
|
391
415
|
value: originalRealValue
|
|
392
416
|
});
|
|
393
|
-
|
|
417
|
+
var renderNode = (0, _jsxRuntime.jsx)(_ProForm.default.ProCascader, {
|
|
394
418
|
className: className,
|
|
395
419
|
isView: true,
|
|
396
420
|
mode: "address",
|
|
397
421
|
code: code,
|
|
398
422
|
value: realValue,
|
|
399
|
-
tooltip:
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
423
|
+
tooltip: false
|
|
424
|
+
});
|
|
425
|
+
var isInNewRowFlag = isInNewRow(record);
|
|
426
|
+
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
|
427
|
+
valueType: valueType,
|
|
428
|
+
originalValue: originalRealValue === undefined ? undefined : originalRenderValue,
|
|
429
|
+
ellipsis: ellipsis !== null && ellipsis !== void 0 ? ellipsis : true,
|
|
430
|
+
width: width,
|
|
431
|
+
node: renderNode,
|
|
432
|
+
value: renderValue,
|
|
433
|
+
currentValue: renderValue,
|
|
434
|
+
originalDiffTip: _originalDiffTip,
|
|
435
|
+
toolTipProps: _toolTipProps,
|
|
436
|
+
minWidth: minWidth,
|
|
437
|
+
isInNewRowFlag: isInNewRowFlag
|
|
404
438
|
});
|
|
405
439
|
};
|
|
406
440
|
} else if (copyable) {
|
|
407
441
|
column.render = function (value, record, index) {
|
|
442
|
+
var isInNewRowFlag = isInNewRow(record);
|
|
408
443
|
return (0, _jsxRuntime.jsxs)(_antd.Space, {
|
|
409
444
|
size: 8,
|
|
410
445
|
children: [prefixNode(value, record, index), (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
|
@@ -416,7 +451,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
416
451
|
value: value,
|
|
417
452
|
currentValue: value,
|
|
418
453
|
toolTipProps: _toolTipProps,
|
|
419
|
-
minWidth: minWidth
|
|
454
|
+
minWidth: minWidth,
|
|
455
|
+
isInNewRowFlag: isInNewRowFlag
|
|
420
456
|
}), suffixNode(value, record, index)]
|
|
421
457
|
});
|
|
422
458
|
};
|
|
@@ -431,6 +467,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
431
467
|
children: "-"
|
|
432
468
|
});
|
|
433
469
|
}
|
|
470
|
+
var isInNewRowFlag = isInNewRow(record);
|
|
434
471
|
return (0, _jsxRuntime.jsxs)(_antd.Space, {
|
|
435
472
|
size: 8,
|
|
436
473
|
children: [prefixNode(value, record, index), (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
|
@@ -443,7 +480,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
443
480
|
currentValue: value || '-',
|
|
444
481
|
originalDiffTip: _originalDiffTip,
|
|
445
482
|
toolTipProps: _toolTipProps,
|
|
446
|
-
minWidth: minWidth
|
|
483
|
+
minWidth: minWidth,
|
|
484
|
+
isInNewRowFlag: isInNewRowFlag
|
|
447
485
|
}), suffixNode(value, record, index)]
|
|
448
486
|
});
|
|
449
487
|
};
|
|
@@ -462,6 +500,7 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
462
500
|
children: "-"
|
|
463
501
|
});
|
|
464
502
|
}
|
|
503
|
+
var isInNewRowFlag = isInNewRow(record);
|
|
465
504
|
return (0, _jsxRuntime.jsx)(_RenderColumn.default, {
|
|
466
505
|
valueType: valueType,
|
|
467
506
|
originalValue: originalValue === undefined ? undefined : originalValue || '-',
|
|
@@ -472,7 +511,8 @@ var formatColumn = exports.formatColumn = function formatColumn(_ref2) {
|
|
|
472
511
|
currentValue: value || '-',
|
|
473
512
|
originalDiffTip: _originalDiffTip,
|
|
474
513
|
toolTipProps: _toolTipProps,
|
|
475
|
-
minWidth: minWidth
|
|
514
|
+
minWidth: minWidth,
|
|
515
|
+
isInNewRowFlag: isInNewRowFlag
|
|
476
516
|
});
|
|
477
517
|
};
|
|
478
518
|
}
|
|
@@ -28,14 +28,15 @@ var RenderColumn = function RenderColumn(props) {
|
|
|
28
28
|
originalDiffTip = props.originalDiffTip,
|
|
29
29
|
_props$toolTipProps = props.toolTipProps,
|
|
30
30
|
toolTipProps = _props$toolTipProps === void 0 ? {} : _props$toolTipProps,
|
|
31
|
-
minWidth = props.minWidth
|
|
31
|
+
minWidth = props.minWidth,
|
|
32
|
+
isInNewRowFlag = props.isInNewRowFlag;
|
|
32
33
|
var _useSetState = (0, _ahooks.useSetState)({
|
|
33
34
|
tooltip: false
|
|
34
35
|
}),
|
|
35
36
|
_useSetState2 = (0, _slicedToArray2.default)(_useSetState, 2),
|
|
36
37
|
tooltip = _useSetState2[0].tooltip,
|
|
37
38
|
setState = _useSetState2[1];
|
|
38
|
-
if (originalValue
|
|
39
|
+
if ((originalValue || originalValue === 0) && !isInNewRowFlag) {
|
|
39
40
|
var renderNode = value ? node : '-';
|
|
40
41
|
if (ellipsis || originalDiffTip) {
|
|
41
42
|
if (ellipsis) {
|
|
@@ -57,7 +58,9 @@ var RenderColumn = function RenderColumn(props) {
|
|
|
57
58
|
minWidth: minWidth
|
|
58
59
|
},
|
|
59
60
|
title: originalDiffTip ? (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
60
|
-
children: ["\u521D\u59CB\u503C\uFF1A", originalValue, (0, _jsxRuntime.jsx)("br", {}), ellipsis ? "
|
|
61
|
+
children: ["\u521D\u59CB\u503C\uFF1A", originalValue, (0, _jsxRuntime.jsx)("br", {}), ellipsis ? (0, _jsxRuntime.jsxs)("span", {
|
|
62
|
+
children: ["\u5F53\u524D\u503C\uFF1A", currentValue]
|
|
63
|
+
}) : null]
|
|
61
64
|
}) : node,
|
|
62
65
|
getPopupContainer: function getPopupContainer(triggerNode) {
|
|
63
66
|
return triggerNode.parentNode;
|
package/lib/ProTable/index.js
CHANGED
|
@@ -190,6 +190,11 @@ function ProTable(props) {
|
|
|
190
190
|
setCurColumns(nextColumns);
|
|
191
191
|
};
|
|
192
192
|
};
|
|
193
|
+
var _rowClassName = function _rowClassName(record, index) {
|
|
194
|
+
if (originalDataSource && !originalObj.hasOwnProperty((0, _lodash.get)(record, 'rowKey'))) {
|
|
195
|
+
return 'new-cell';
|
|
196
|
+
}
|
|
197
|
+
};
|
|
193
198
|
var columns = (0, _react.useMemo)(function () {
|
|
194
199
|
var newColumns = curColumns.map(function (item, index) {
|
|
195
200
|
var _propsColumnObj$getCo2;
|
|
@@ -222,11 +227,12 @@ function ProTable(props) {
|
|
|
222
227
|
scroll: _scroll,
|
|
223
228
|
onUpdateMinWidth: function onUpdateMinWidth(w) {
|
|
224
229
|
curColumns[index].minWidth = w;
|
|
225
|
-
}
|
|
230
|
+
},
|
|
231
|
+
isInNewRow: _rowClassName
|
|
226
232
|
});
|
|
227
233
|
});
|
|
228
234
|
return newColumns;
|
|
229
|
-
}, [curColumns, handleResize, _scroll]);
|
|
235
|
+
}, [curColumns, handleResize, _scroll, originalDataSource, originalObj, _rowClassName]);
|
|
230
236
|
var _columns = (0, _react.useMemo)(function () {
|
|
231
237
|
return columns === null || columns === void 0 ? void 0 : columns.filter(function (item, index) {
|
|
232
238
|
var show = item.show;
|
|
@@ -375,11 +381,6 @@ function ProTable(props) {
|
|
|
375
381
|
return _ref7.apply(this, arguments);
|
|
376
382
|
};
|
|
377
383
|
}();
|
|
378
|
-
var _rowClassName = function _rowClassName(record, index) {
|
|
379
|
-
if (originalDataSource && !originalObj.hasOwnProperty((0, _lodash.get)(record, 'rowKey'))) {
|
|
380
|
-
return 'new-cell';
|
|
381
|
-
}
|
|
382
|
-
};
|
|
383
384
|
var TableComponent = draggable ? _RcTable.DraggableTable : _RcTable.BaseTable;
|
|
384
385
|
// 标记样式
|
|
385
386
|
var tagStyle = {
|
|
@@ -41,6 +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
|
+
onDiff?: ({ value, originValue }: {
|
|
45
|
+
value: any;
|
|
46
|
+
originValue: any;
|
|
47
|
+
}) => boolean;
|
|
44
48
|
}
|
|
45
49
|
export interface CreateTreeFromArrayOptions {
|
|
46
50
|
itemKey?: string;
|
|
@@ -272,8 +272,22 @@
|
|
|
272
272
|
.@{ant-prefix}-table-cell .varied-cell {
|
|
273
273
|
margin-left: -8px;
|
|
274
274
|
padding: var(--zaui-space-size-xs, 4px) var(--zaui-space-size-sm, 8px);
|
|
275
|
+
|
|
275
276
|
background: var(--zaui-contract-bg; #fffaa1) !important;
|
|
276
277
|
border-radius: var(--zaui-border-radius, 8px);
|
|
278
|
+
.pro-form-view-container {
|
|
279
|
+
overflow: hidden;
|
|
280
|
+
white-space: nowrap;
|
|
281
|
+
text-overflow: ellipsis;
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
.@{ant-prefix}-table-cell .@{ant-prefix}-typography-ellipsis {
|
|
286
|
+
.pro-form-view-container {
|
|
287
|
+
overflow: hidden;
|
|
288
|
+
white-space: nowrap;
|
|
289
|
+
text-overflow: ellipsis;
|
|
290
|
+
}
|
|
277
291
|
}
|
|
278
292
|
|
|
279
293
|
.varied-cell.empty-cell {
|