@zat-design/sisyphus-react 3.10.1 → 3.10.2-beta.2
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/es/ProEditTable/components/RenderField/ListChangedWrapper.js +2 -3
- package/es/ProEditTable/components/RenderField/index.js +8 -16
- package/es/ProForm/components/base/Input/index.js +23 -2
- package/es/ProForm/components/base/Input/propsType.d.ts +2 -0
- package/es/ProForm/components/combination/Group/utils.js +1 -13
- package/es/ProForm/components/combination/ProCascader/index.js +13 -8
- package/es/ProForm/components/combination/ProCascader/propsType.d.ts +1 -0
- package/es/ProForm/components/render/ChangedWrapper.js +1 -1
- package/es/ProForm/components/render/Render.js +11 -19
- package/es/ProForm/utils/transformValue.js +9 -5
- package/es/ProForm/utils/valueType.d.ts +0 -6
- package/es/ProForm/utils/valueType.js +4 -50
- package/es/ProSelect/index.js +11 -3
- package/es/ProTable/components/FormatColumn/index.js +0 -5
- package/es/ProTable/components/RenderColumn/index.js +55 -42
- package/es/ProTable/utils/index.d.ts +6 -0
- package/es/ProTable/utils/index.js +14 -0
- package/lib/ProEditTable/components/RenderField/ListChangedWrapper.js +1 -2
- package/lib/ProEditTable/components/RenderField/index.js +8 -16
- package/lib/ProForm/components/base/Input/index.js +23 -2
- package/lib/ProForm/components/base/Input/propsType.d.ts +2 -0
- package/lib/ProForm/components/combination/Group/utils.js +1 -13
- package/lib/ProForm/components/combination/ProCascader/index.js +13 -6
- package/lib/ProForm/components/combination/ProCascader/propsType.d.ts +1 -0
- package/lib/ProForm/components/render/ChangedWrapper.js +1 -1
- package/lib/ProForm/components/render/Render.js +11 -19
- package/lib/ProForm/utils/transformValue.js +9 -5
- package/lib/ProForm/utils/valueType.d.ts +0 -6
- package/lib/ProForm/utils/valueType.js +4 -50
- package/lib/ProSelect/index.js +10 -2
- package/lib/ProTable/components/FormatColumn/index.js +0 -5
- package/lib/ProTable/components/RenderColumn/index.js +56 -43
- package/lib/ProTable/utils/index.d.ts +6 -0
- package/lib/ProTable/utils/index.js +15 -1
- package/package.json +1 -1
@@ -1,8 +1,8 @@
|
|
1
1
|
import "antd/es/space/style";
|
2
2
|
import _Space from "antd/es/space";
|
3
|
-
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
4
3
|
import "antd/es/tooltip/style";
|
5
4
|
import _Tooltip from "antd/es/tooltip";
|
5
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
6
6
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
7
7
|
import "antd/es/typography/style";
|
8
8
|
import _Typography from "antd/es/typography";
|
@@ -12,6 +12,7 @@ import { isBoolean } from 'lodash';
|
|
12
12
|
import classNames from 'classnames';
|
13
13
|
import { CheckOutlined } from '@ant-design/icons';
|
14
14
|
import { ReactSVG } from 'react-svg';
|
15
|
+
import { getPadding } from '../../utils';
|
15
16
|
import { isEmpty } from '../../../utils';
|
16
17
|
import copySvg from '../../../assets/copy.svg';
|
17
18
|
var Paragraph = _Typography.Paragraph,
|
@@ -41,6 +42,32 @@ var RenderColumn = function RenderColumn(props) {
|
|
41
42
|
'varied-cell': props === null || props === void 0 ? void 0 : props.isChanged,
|
42
43
|
'add-cell': props === null || props === void 0 ? void 0 : props.isAddCell
|
43
44
|
});
|
45
|
+
var checkEllipsis = function checkEllipsis(box) {
|
46
|
+
var range = document.createRange();
|
47
|
+
range.setStart(box, 0);
|
48
|
+
range.setEnd(box, box.childNodes.length);
|
49
|
+
var rangeWidth = range.getBoundingClientRect().width;
|
50
|
+
var _getPadding = getPadding(box),
|
51
|
+
pLeft = _getPadding.pLeft,
|
52
|
+
pRight = _getPadding.pRight,
|
53
|
+
pTop = _getPadding.pTop,
|
54
|
+
pBottom = _getPadding.pBottom;
|
55
|
+
var horizontalPadding = pLeft + pRight;
|
56
|
+
if (rangeWidth + horizontalPadding > box.clientWidth) {
|
57
|
+
return true;
|
58
|
+
}
|
59
|
+
return false;
|
60
|
+
};
|
61
|
+
var handleMouseOver = function handleMouseOver(e) {
|
62
|
+
setState({
|
63
|
+
tooltip: checkEllipsis(e.target)
|
64
|
+
});
|
65
|
+
};
|
66
|
+
var tooltipProps = _objectSpread({
|
67
|
+
getPopupContainer: function getPopupContainer(triggerNode) {
|
68
|
+
return triggerNode.parentNode;
|
69
|
+
}
|
70
|
+
}, toolTipProps);
|
44
71
|
// 比对场景走的逻辑
|
45
72
|
if (!isInNewRowFlag && isBoolean(props === null || props === void 0 ? void 0 : props.isChanged)) {
|
46
73
|
var renderNode = value ? node : '-';
|
@@ -58,11 +85,36 @@ var RenderColumn = function RenderColumn(props) {
|
|
58
85
|
}) : _jsx("div", {
|
59
86
|
style: {
|
60
87
|
minWidth: minWidth,
|
61
|
-
width: width
|
88
|
+
width: width,
|
89
|
+
overflow: 'hidden',
|
90
|
+
textOverflow: 'ellipsis',
|
91
|
+
whiteSpace: 'nowrap'
|
62
92
|
},
|
63
93
|
children: ellipsis ? currentValue : renderNode
|
64
94
|
});
|
65
95
|
if ((props === null || props === void 0 ? void 0 : props.isChanged) === false) {
|
96
|
+
if (ellipsis) {
|
97
|
+
return _jsx(_Tooltip, _objectSpread(_objectSpread({
|
98
|
+
title: currentValue,
|
99
|
+
onOpenChange: function onOpenChange(open) {
|
100
|
+
setState({
|
101
|
+
tooltip: false
|
102
|
+
});
|
103
|
+
},
|
104
|
+
open: tooltip
|
105
|
+
}, tooltipProps), {}, {
|
106
|
+
children: _jsx(Text, {
|
107
|
+
style: {
|
108
|
+
width: width,
|
109
|
+
minWidth: minWidth
|
110
|
+
},
|
111
|
+
ellipsis: true,
|
112
|
+
onMouseOver: handleMouseOver,
|
113
|
+
onFocus: handleMouseOver,
|
114
|
+
children: renderNode
|
115
|
+
})
|
116
|
+
}));
|
117
|
+
}
|
66
118
|
return renderNode;
|
67
119
|
}
|
68
120
|
if (Array.isArray(originalValue)) {
|
@@ -86,7 +138,7 @@ var RenderColumn = function RenderColumn(props) {
|
|
86
138
|
title: _jsx(_Space, {
|
87
139
|
direction: "vertical",
|
88
140
|
className: "changed-tooltip",
|
89
|
-
children: (props === null || props === void 0 ? void 0 : props.isChanged) ? _jsxs(_Fragment, {
|
141
|
+
children: (props === null || props === void 0 ? void 0 : props.isChanged) && !(props === null || props === void 0 ? void 0 : props.isAddCell) ? _jsxs(_Fragment, {
|
90
142
|
children: [_jsxs(_Space, {
|
91
143
|
align: "start",
|
92
144
|
className: "original-value-container",
|
@@ -138,45 +190,6 @@ var RenderColumn = function RenderColumn(props) {
|
|
138
190
|
});
|
139
191
|
}
|
140
192
|
if (ellipsis) {
|
141
|
-
var getPadding = function getPadding(el) {
|
142
|
-
var style = window.getComputedStyle(el, null);
|
143
|
-
var paddingLeft = Number.parseInt(style.paddingLeft, 10) || 0;
|
144
|
-
var paddingRight = Number.parseInt(style.paddingRight, 10) || 0;
|
145
|
-
var paddingTop = Number.parseInt(style.paddingTop, 10) || 0;
|
146
|
-
var paddingBottom = Number.parseInt(style.paddingBottom, 10) || 0;
|
147
|
-
return {
|
148
|
-
pLeft: paddingLeft,
|
149
|
-
pRight: paddingRight,
|
150
|
-
pTop: paddingTop,
|
151
|
-
pBottom: paddingBottom
|
152
|
-
};
|
153
|
-
};
|
154
|
-
var checkEllipsis = function checkEllipsis(box) {
|
155
|
-
var range = document.createRange();
|
156
|
-
range.setStart(box, 0);
|
157
|
-
range.setEnd(box, box.childNodes.length);
|
158
|
-
var rangeWidth = range.getBoundingClientRect().width;
|
159
|
-
var _getPadding = getPadding(box),
|
160
|
-
pLeft = _getPadding.pLeft,
|
161
|
-
pRight = _getPadding.pRight,
|
162
|
-
pTop = _getPadding.pTop,
|
163
|
-
pBottom = _getPadding.pBottom;
|
164
|
-
var horizontalPadding = pLeft + pRight;
|
165
|
-
if (rangeWidth + horizontalPadding > box.clientWidth) {
|
166
|
-
return true;
|
167
|
-
}
|
168
|
-
return false;
|
169
|
-
};
|
170
|
-
var handleMouseOver = function handleMouseOver(e) {
|
171
|
-
setState({
|
172
|
-
tooltip: checkEllipsis(e.target)
|
173
|
-
});
|
174
|
-
};
|
175
|
-
var tooltipProps = _objectSpread({
|
176
|
-
getPopupContainer: function getPopupContainer(triggerNode) {
|
177
|
-
return triggerNode.parentNode;
|
178
|
-
}
|
179
|
-
}, toolTipProps);
|
180
193
|
if (!value) {
|
181
194
|
return _jsx("div", {
|
182
195
|
style: {
|
@@ -33,3 +33,9 @@ export declare const getRowKey: (rowKey: any, record: any) => any;
|
|
33
33
|
export declare const removeEmptyKeys: (obj: any) => {
|
34
34
|
[k: string]: unknown;
|
35
35
|
};
|
36
|
+
export declare const getPadding: (el: HTMLElement) => {
|
37
|
+
pLeft: number;
|
38
|
+
pRight: number;
|
39
|
+
pTop: number;
|
40
|
+
pBottom: number;
|
41
|
+
};
|
@@ -85,4 +85,18 @@ export var removeEmptyKeys = function removeEmptyKeys(obj) {
|
|
85
85
|
});
|
86
86
|
// 使用 Object.fromEntries() 将过滤后的键值对数组转换回对象
|
87
87
|
return Object.fromEntries(filteredEntries);
|
88
|
+
};
|
89
|
+
/* 获取边距 */
|
90
|
+
export var getPadding = function getPadding(el) {
|
91
|
+
var style = window.getComputedStyle(el, null);
|
92
|
+
var paddingLeft = Number.parseInt(style.paddingLeft, 10) || 0;
|
93
|
+
var paddingRight = Number.parseInt(style.paddingRight, 10) || 0;
|
94
|
+
var paddingTop = Number.parseInt(style.paddingTop, 10) || 0;
|
95
|
+
var paddingBottom = Number.parseInt(style.paddingBottom, 10) || 0;
|
96
|
+
return {
|
97
|
+
pLeft: paddingLeft,
|
98
|
+
pRight: paddingRight,
|
99
|
+
pTop: paddingTop,
|
100
|
+
pBottom: paddingBottom
|
101
|
+
};
|
88
102
|
};
|
@@ -106,7 +106,6 @@ var ListChangedWrapper = function ListChangedWrapper(props) {
|
|
106
106
|
var _ref3 = diffConfig || {},
|
107
107
|
_ref3$scrollFollowPar = _ref3.scrollFollowParent,
|
108
108
|
scrollFollowParent = _ref3$scrollFollowPar === void 0 ? true : _ref3$scrollFollowPar;
|
109
|
-
var contentRef = (0, _react.useRef)(null);
|
110
109
|
var namePath = toNamePath(namesStr || name);
|
111
110
|
var originalNamePath = toNamePath(originalName);
|
112
111
|
var originalNamePaths = originalNames && toNamePaths(originalNames);
|
@@ -147,7 +146,7 @@ var ListChangedWrapper = function ListChangedWrapper(props) {
|
|
147
146
|
var tipContent = (0, _react.useMemo)(function () {
|
148
147
|
var _getValueProps;
|
149
148
|
if (!isWatch || noChange) return undefined;
|
150
|
-
var orgValue = getValueProps
|
149
|
+
var orgValue = getValueProps ? (_getValueProps = getValueProps(originalValue, true)) === null || _getValueProps === void 0 ? void 0 : _getValueProps[valuePropName] : originalValue;
|
151
150
|
// 兼容viewRender函数和Element场景
|
152
151
|
var _children = children;
|
153
152
|
if (viewRender) {
|
@@ -180,7 +180,9 @@ var RenderField = function RenderField(_ref) {
|
|
180
180
|
fieldProps: column === null || column === void 0 ? void 0 : column.fieldProps
|
181
181
|
});
|
182
182
|
// 允许formItem的属性放在column最外层
|
183
|
-
var _formItemProps = (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultProps), resetProps), internalRule)
|
183
|
+
var _formItemProps = (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultProps), resetProps), internalRule), {}, {
|
184
|
+
validateTrigger: validateTrigger
|
185
|
+
});
|
184
186
|
if (['Switch', 'SwitchCheckbox'].includes(type)) {
|
185
187
|
_formItemProps.valuePropName = 'checked';
|
186
188
|
_valueType = 'switch';
|
@@ -202,20 +204,14 @@ var RenderField = function RenderField(_ref) {
|
|
202
204
|
* @returns {}
|
203
205
|
*/
|
204
206
|
var valueTypeTransform = function valueTypeTransform() {
|
205
|
-
var _fieldProps3
|
207
|
+
var _fieldProps3;
|
206
208
|
// SwitchCheckbox默认YN, 兼容已有组件
|
207
209
|
if (type === 'SwitchCheckbox') {
|
208
210
|
_valueType = 'switch';
|
209
211
|
}
|
210
212
|
var params = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, column), {}, {
|
211
|
-
mode: (_fieldProps3 = _fieldProps) === null || _fieldProps3 === void 0 ? void 0 : _fieldProps3.mode
|
212
|
-
desensitization: _desensitization
|
213
|
+
mode: (_fieldProps3 = _fieldProps) === null || _fieldProps3 === void 0 ? void 0 : _fieldProps3.mode
|
213
214
|
});
|
214
|
-
var isDesensit = sessionStorage.getItem(otherProps === null || otherProps === void 0 ? void 0 : otherProps.desensitizationKey);
|
215
|
-
// 仅查看模式下进行数据脱敏
|
216
|
-
if (((_desensitization2 = _desensitization) === null || _desensitization2 === void 0 ? void 0 : _desensitization2.length) && _disabled && isDesensit === 'ON') {
|
217
|
-
_valueType = 'desensitization';
|
218
|
-
}
|
219
215
|
return (0, _lodash.isFunction)(_valueType2.default[_valueType]) ? _valueType2.default[_valueType](params) : {};
|
220
216
|
};
|
221
217
|
if ((_names = names) === null || _names === void 0 ? void 0 : _names.length) {
|
@@ -244,14 +240,10 @@ var RenderField = function RenderField(_ref) {
|
|
244
240
|
var namesTransform = function namesTransform() {
|
245
241
|
var _names3;
|
246
242
|
if (!((_names3 = names) === null || _names3 === void 0 ? void 0 : _names3.length)) {
|
247
|
-
return
|
243
|
+
return valueTypeTransform();
|
248
244
|
}
|
249
245
|
var namesStr = [].concat((0, _toConsumableArray2.default)(baseName), [index, dataIndex]);
|
250
|
-
|
251
|
-
if (_valueType) {
|
252
|
-
transform = valueTypeTransform();
|
253
|
-
}
|
254
|
-
return (0, _transformNames.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, _formItemProps), transform), form, names, namesStr, type);
|
246
|
+
return (0, _transformNames.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, _formItemProps), valueTypeTransform()), form, names, namesStr, type);
|
255
247
|
};
|
256
248
|
if (!_editRender && typeof type === 'string') {
|
257
249
|
var _componentMap$type;
|
@@ -563,7 +555,7 @@ var RenderField = function RenderField(_ref) {
|
|
563
555
|
if (['Select', 'ProSelect', 'ProEnum'].includes(type)) {
|
564
556
|
componentProps.scrollFollowParent = false;
|
565
557
|
}
|
566
|
-
Object.assign(_formItemProps, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)(
|
558
|
+
Object.assign(_formItemProps, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultTransform()), namesTransform()), (0, _utils.isTrim)(type, trim, (0, _ProConfigProvider.useProConfig)())));
|
567
559
|
// 编辑&保存模式,在查看状态下移除表单的rules不做校验
|
568
560
|
if (isView) {
|
569
561
|
delete _formItemProps.rules;
|
@@ -8,13 +8,15 @@ exports.default = void 0;
|
|
8
8
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
9
9
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
10
10
|
var _jsxRuntime = require("react/jsx-runtime");
|
11
|
+
var _react = _interopRequireDefault(require("react"));
|
11
12
|
var _antd = require("antd");
|
12
13
|
var _lodash = require("lodash");
|
13
14
|
var _ProConfigProvider = require("../../../../ProConfigProvider");
|
14
15
|
var _Container = _interopRequireDefault(require("../../Container"));
|
15
16
|
var _locale = _interopRequireDefault(require("../../../../locale"));
|
16
17
|
var _index = _interopRequireDefault(require("../../../index"));
|
17
|
-
var
|
18
|
+
var _valueType = require("../../../utils/valueType");
|
19
|
+
var _excluded = ["label", "form", "placeholder", "fieldName", "otherProps", "desensitization"];
|
18
20
|
// 参数优先级
|
19
21
|
// 组件内默认值 < config默认值 < props
|
20
22
|
var Input = function Input(props) {
|
@@ -23,6 +25,7 @@ var Input = function Input(props) {
|
|
23
25
|
placeholder = props.placeholder,
|
24
26
|
fieldName = props.fieldName,
|
25
27
|
otherProps = props.otherProps,
|
28
|
+
desensitization = props.desensitization,
|
26
29
|
rest = (0, _objectWithoutProperties2.default)(props, _excluded);
|
27
30
|
var _ref = _index.default.useFieldProps() || {},
|
28
31
|
isViewCon = _ref.isView,
|
@@ -35,10 +38,28 @@ var Input = function Input(props) {
|
|
35
38
|
children: rest.value
|
36
39
|
});
|
37
40
|
}
|
38
|
-
|
41
|
+
var ComInput = (0, _jsxRuntime.jsx)(_antd.Input, (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
39
42
|
allowClear: true,
|
40
43
|
autoComplete: "off",
|
41
44
|
placeholder: placeholder || "".concat(_locale.default.ProForm.inputPlaceholder)
|
42
45
|
}, (0, _lodash.omit)(initialConfig, ['trim'])), rest));
|
46
|
+
// 仅查看模式下进行数据脱敏
|
47
|
+
if ((desensitization === null || desensitization === void 0 ? void 0 : desensitization.length) && (props === null || props === void 0 ? void 0 : props.disabled)) {
|
48
|
+
var isDesensit = sessionStorage.getItem(otherProps === null || otherProps === void 0 ? void 0 : otherProps.desensitizationKey);
|
49
|
+
if (isDesensit === 'ON') {
|
50
|
+
if (typeof rest.value === 'number') {
|
51
|
+
var _rest$value, _rest$value$toString;
|
52
|
+
rest.value = rest === null || rest === void 0 ? void 0 : (_rest$value = rest.value) === null || _rest$value === void 0 ? void 0 : (_rest$value$toString = _rest$value.toString) === null || _rest$value$toString === void 0 ? void 0 : _rest$value$toString.call(_rest$value);
|
53
|
+
}
|
54
|
+
return /*#__PURE__*/_react.default.cloneElement(ComInput, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({
|
55
|
+
allowClear: true,
|
56
|
+
autoComplete: 'off',
|
57
|
+
placeholder: placeholder || "".concat(_locale.default.ProForm.inputPlaceholder)
|
58
|
+
}, (0, _lodash.omit)(initialConfig, ['trim'])), rest), {}, {
|
59
|
+
value: (0, _valueType.maskStringRangeWithRegex)(rest.value, desensitization)
|
60
|
+
}));
|
61
|
+
}
|
62
|
+
}
|
63
|
+
return ComInput;
|
43
64
|
};
|
44
65
|
var _default = exports.default = Input;
|
@@ -166,15 +166,7 @@ var getReactiveProps = exports.getReactiveProps = function getReactiveProps(para
|
|
166
166
|
/** 获取当前字段的转换函数 */
|
167
167
|
var getValueTypeTrans = exports.getValueTypeTrans = function getValueTypeTrans(params) {
|
168
168
|
var _valueTypeMap$valueTy;
|
169
|
-
var desensitizationKey = params.desensitizationKey;
|
170
169
|
var valueType = params.valueType;
|
171
|
-
var desensitization = params.desensitization,
|
172
|
-
disabled = params.disabled;
|
173
|
-
var isDesensit = sessionStorage.getItem(desensitizationKey);
|
174
|
-
// 仅查看模式下进行数据脱敏
|
175
|
-
if ((desensitization === null || desensitization === void 0 ? void 0 : desensitization.length) && disabled && isDesensit === 'ON') {
|
176
|
-
valueType = 'desensitization';
|
177
|
-
}
|
178
170
|
var transform = (_valueTypeMap$valueTy = _valueType.default[valueType]) === null || _valueTypeMap$valueTy === void 0 ? void 0 : _valueTypeMap$valueTy.call(_valueType.default, params);
|
179
171
|
return transform;
|
180
172
|
};
|
@@ -284,17 +276,13 @@ var useTransformColumns = exports.useTransformColumns = function useTransformCol
|
|
284
276
|
if (reactiveProps.show === false) {
|
285
277
|
return [];
|
286
278
|
}
|
287
|
-
var isDisabled = formDisabled || _disabled || reactiveProps.disabled;
|
288
279
|
var transform = getValueTypeTrans({
|
289
280
|
type: type,
|
290
281
|
valueType: valueType,
|
291
282
|
switchValue: switchValue,
|
292
283
|
toISOString: toISOString,
|
293
284
|
toCSTString: toCSTString,
|
294
|
-
mode: mode
|
295
|
-
desensitizationKey: desensitizationKey,
|
296
|
-
disabled: isDisabled,
|
297
|
-
desensitization: reactiveProps.desensitization
|
285
|
+
mode: mode
|
298
286
|
});
|
299
287
|
var newValue;
|
300
288
|
var handleChange = function handleChange() {
|
@@ -18,11 +18,12 @@ var _antd = require("antd");
|
|
18
18
|
var _lodash = require("lodash");
|
19
19
|
var _index = require("./utils/index");
|
20
20
|
var _ProConfigProvider = require("../../../../ProConfigProvider");
|
21
|
+
var _Input = _interopRequireDefault(require("../../base/Input"));
|
21
22
|
var _useEnum = _interopRequireDefault(require("../../../../ProEnum/hooks/useEnum"));
|
22
23
|
var _locale = _interopRequireDefault(require("../../../../locale"));
|
23
24
|
var _ = _interopRequireDefault(require("../../.."));
|
24
25
|
var _Container = _interopRequireDefault(require("../../Container"));
|
25
|
-
var _excluded = ["className", "hasDetail", "detailMaxLength", "fieldNames", "value", "disabled", "dataSource", "onChange", "useRequest", "transformResponse", "level", "isView", "enumCode", "code", "tooltip", "separator", "detailPlaceholder", "scrollFollowParent"];
|
26
|
+
var _excluded = ["className", "hasDetail", "detailMaxLength", "fieldNames", "value", "disabled", "dataSource", "onChange", "useRequest", "transformResponse", "level", "isView", "enumCode", "code", "tooltip", "separator", "detailPlaceholder", "scrollFollowParent", "desensitization", "otherProps"];
|
26
27
|
var Text = _antd.Typography.Text;
|
27
28
|
var defaultFieldNames = {
|
28
29
|
label: 'name',
|
@@ -88,7 +89,9 @@ var ProCascader = function ProCascader(props) {
|
|
88
89
|
separator = _props$separator === void 0 ? '/' : _props$separator,
|
89
90
|
detailPlaceholder = props.detailPlaceholder,
|
90
91
|
scrollFollowParent = props.scrollFollowParent,
|
91
|
-
|
92
|
+
desensitization = props.desensitization,
|
93
|
+
otherProps = props.otherProps,
|
94
|
+
restProps = (0, _objectWithoutProperties2.default)(props, _excluded);
|
92
95
|
var _ref3 = _.default.useFieldProps() || {},
|
93
96
|
isViewCon = _ref3.isView,
|
94
97
|
viewEmpty = _ref3.viewEmpty;
|
@@ -284,23 +287,27 @@ var ProCascader = function ProCascader(props) {
|
|
284
287
|
getPopupContainer: function getPopupContainer(trigger) {
|
285
288
|
return scrollFollowParent ? trigger.parentElement : document.body;
|
286
289
|
}
|
287
|
-
}, (0, _lodash.omit)(
|
290
|
+
}, (0, _lodash.omit)(restProps, ['otherProps', 'scrollFollowParent']))), hasDetail && (tooltip && lastDisabled[1] && detail ? (0, _jsxRuntime.jsx)(_antd.Tooltip, {
|
288
291
|
title: detail,
|
289
292
|
children: (0, _jsxRuntime.jsx)("span", {
|
290
293
|
className: "pro-address-detail",
|
291
|
-
children: (0, _jsxRuntime.jsx)(
|
294
|
+
children: (0, _jsxRuntime.jsx)(_Input.default, {
|
292
295
|
disabled: lastDisabled[1],
|
296
|
+
desensitization: desensitization,
|
297
|
+
otherProps: otherProps,
|
293
298
|
value: detail
|
294
299
|
})
|
295
300
|
})
|
296
|
-
}) : (0, _jsxRuntime.jsx)(
|
301
|
+
}) : (0, _jsxRuntime.jsx)(_Input.default, {
|
297
302
|
allowClear: true,
|
298
303
|
autoComplete: "off",
|
299
304
|
disabled: lastDisabled[1],
|
300
305
|
value: detail,
|
301
306
|
maxLength: detailMaxLength,
|
302
307
|
placeholder: detailPlaceholder || (_locale.default === null || _locale.default === void 0 ? void 0 : (_locale$ProAddressBar2 = _locale.default.ProAddressBar) === null || _locale$ProAddressBar2 === void 0 ? void 0 : _locale$ProAddressBar2.detailPlaceholder),
|
303
|
-
onChange: handleAddressChange
|
308
|
+
onChange: handleAddressChange,
|
309
|
+
desensitization: desensitization,
|
310
|
+
otherProps: otherProps
|
304
311
|
}))]
|
305
312
|
});
|
306
313
|
};
|
@@ -71,7 +71,7 @@ var ChangedWrapper = function ChangedWrapper(props) {
|
|
71
71
|
var isChanged = diffType === 'changed';
|
72
72
|
var tipContent = (0, _react.useMemo)(function () {
|
73
73
|
if (!isWatch || noChange) return undefined;
|
74
|
-
var valueProps = getValueProps
|
74
|
+
var valueProps = getValueProps ? getValueProps(originalValue, true) : {
|
75
75
|
value: originalValue
|
76
76
|
};
|
77
77
|
if (viewRender) {
|
@@ -31,7 +31,7 @@ var _excluded = ["labelWidth", "hiddenNames", "trim", "upperCase", "className",
|
|
31
31
|
/* eslint-disable prefer-destructuring */
|
32
32
|
// 这个组件只管渲染, 参数的整理在外部处理
|
33
33
|
var Render = function Render(props) {
|
34
|
-
var _ref3, _ref4, _ref5,
|
34
|
+
var _ref2, _ref3, _ref4, _ref5, _otherProps$names2;
|
35
35
|
var component = props.component,
|
36
36
|
originComponent = props.originComponent,
|
37
37
|
_props$formItemProps = props.formItemProps,
|
@@ -116,9 +116,7 @@ var Render = function Render(props) {
|
|
116
116
|
*/
|
117
117
|
var valueTypeTransform = function valueTypeTransform() {
|
118
118
|
var _ref = otherProps || {},
|
119
|
-
|
120
|
-
var _ref2 = otherProps || {},
|
121
|
-
valueType = _ref2.valueType;
|
119
|
+
valueType = _ref.valueType;
|
122
120
|
// SwitchCheckbox默认YN, 兼容已有组件
|
123
121
|
if (type === 'SwitchCheckbox') {
|
124
122
|
valueType = 'switch';
|
@@ -126,18 +124,11 @@ var Render = function Render(props) {
|
|
126
124
|
if (type === 'Input') {
|
127
125
|
valueType = valueType || 'trim';
|
128
126
|
}
|
129
|
-
var isDesensit = sessionStorage.getItem(desensitizationKey);
|
130
|
-
// 仅查看模式下进行数据脱敏
|
131
|
-
if ((_desensitization === null || _desensitization === void 0 ? void 0 : _desensitization.length) && _disabled && isDesensit === 'ON') {
|
132
|
-
valueType = 'desensitization';
|
133
|
-
}
|
134
127
|
// 不存在valueType返回空
|
135
128
|
if (!valueType) {
|
136
129
|
return {};
|
137
130
|
}
|
138
|
-
var params = (0, _objectSpread2.default)((0, _objectSpread2.default)(
|
139
|
-
desensitization: _desensitization
|
140
|
-
});
|
131
|
+
var params = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, otherProps), otherFormItemProps);
|
141
132
|
return (0, _lodash.isFunction)(_valueType.default[valueType]) ? _valueType.default[valueType](params) : {};
|
142
133
|
};
|
143
134
|
/**
|
@@ -153,7 +144,7 @@ var Render = function Render(props) {
|
|
153
144
|
* globalControl true时,优先级 全局【formDisabled】> formitem上【column.disabled】 > 组件上【fieldProps.disabled】
|
154
145
|
* globalControl false时,优先级 组件上【fieldProps.disabled】 > formitem上【column.disabled】 > 全局【formDisabled】
|
155
146
|
*/
|
156
|
-
var lastDisabled = globalControl ? (
|
147
|
+
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;
|
157
148
|
// ↑↑↑↑↑↑ formItem参数整理 ↑↑↑↑↑↑
|
158
149
|
Object.assign(otherFormItemProps, transforms, {
|
159
150
|
names: otherProps.names
|
@@ -183,7 +174,8 @@ var Render = function Render(props) {
|
|
183
174
|
* 最新fieldProps: 更新后的组件Props
|
184
175
|
*/
|
185
176
|
var lastComponentProps = (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, componentProps), _fieldProps), {}, {
|
186
|
-
disabled: lastDisabled
|
177
|
+
disabled: lastDisabled,
|
178
|
+
desensitization: _desensitization
|
187
179
|
});
|
188
180
|
var _className = (0, _classnames.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, className, className), 'pro-form-item-width-auto', ['Switch'].includes(type)));
|
189
181
|
if (formItemProps.hidden === true || _show === false) {
|
@@ -206,8 +198,8 @@ var Render = function Render(props) {
|
|
206
198
|
var functionArgs = function functionArgs(args) {
|
207
199
|
var _otherFormItemProps$n;
|
208
200
|
var _args = (0, _toConsumableArray2.default)(args);
|
209
|
-
var
|
210
|
-
valueType =
|
201
|
+
var _ref6 = otherProps || {},
|
202
|
+
valueType = _ref6.valueType;
|
211
203
|
_args[1] = form.getFieldsValue();
|
212
204
|
_args[2] = {
|
213
205
|
form: form
|
@@ -307,7 +299,7 @@ var Render = function Render(props) {
|
|
307
299
|
* onBlur参数重置 (value, record, { form, index, namePath, option }) => void
|
308
300
|
*/
|
309
301
|
var handleBlur = /*#__PURE__*/function () {
|
310
|
-
var
|
302
|
+
var _ref7 = (0, _asyncToGenerator2.default)(/*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
|
311
303
|
var _len3,
|
312
304
|
args,
|
313
305
|
_key3,
|
@@ -334,7 +326,7 @@ var Render = function Render(props) {
|
|
334
326
|
}, _callee);
|
335
327
|
}));
|
336
328
|
return function handleBlur() {
|
337
|
-
return
|
329
|
+
return _ref7.apply(this, arguments);
|
338
330
|
};
|
339
331
|
}();
|
340
332
|
var renderItem = function renderItem() {
|
@@ -424,7 +416,7 @@ var Render = function Render(props) {
|
|
424
416
|
colProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, colProps), {}, {
|
425
417
|
span: lessMode ? colProps.span : 24 // 默认占一行
|
426
418
|
});
|
427
|
-
return (0, _jsxRuntime.jsx)(_antd.Form.Item, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _lodash.omit)(_otherFormItemProps,
|
419
|
+
return (0, _jsxRuntime.jsx)(_antd.Form.Item, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _lodash.omit)(_otherFormItemProps, filterFormItemKey)), {}, {
|
428
420
|
// @ts-ignore
|
429
421
|
_internalItemRender: internalItemRender,
|
430
422
|
className: _className,
|
@@ -27,13 +27,17 @@ var transformValue = exports.transformValue = function transformValue(names, for
|
|
27
27
|
});
|
28
28
|
return _value;
|
29
29
|
},
|
30
|
-
getValueProps: function getValueProps(value) {
|
30
|
+
getValueProps: function getValueProps(value, isOrg) {
|
31
31
|
var _curValue;
|
32
32
|
var _value = [];
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
33
|
+
if (!isOrg) {
|
34
|
+
names.forEach(function (name, index) {
|
35
|
+
var value = form.getFieldValue(name);
|
36
|
+
_value[index] = value;
|
37
|
+
});
|
38
|
+
} else {
|
39
|
+
_value = value;
|
40
|
+
}
|
37
41
|
// 支持外部传入转换函数
|
38
42
|
var res = (_getValueProps === null || _getValueProps === void 0 ? void 0 : _getValueProps(_value)) || {
|
39
43
|
value: _value
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
6
6
|
});
|
7
7
|
exports.maskStringRangeWithRegex = exports.default = void 0;
|
8
|
-
var _readOnlyError2 = _interopRequireDefault(require("@babel/runtime/helpers/readOnlyError"));
|
9
8
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
10
9
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
11
10
|
var _big = _interopRequireDefault(require("big.js"));
|
@@ -199,6 +198,7 @@ var dateTransform = function dateTransform(_ref2) {
|
|
199
198
|
};
|
200
199
|
/** 脱敏处理函数 */
|
201
200
|
var maskStringRangeWithRegex = exports.maskStringRangeWithRegex = function maskStringRangeWithRegex(input, range) {
|
201
|
+
var _input$replace;
|
202
202
|
var _ref3 = range || [],
|
203
203
|
_ref4 = (0, _slicedToArray2.default)(_ref3, 2),
|
204
204
|
start = _ref4[0],
|
@@ -206,13 +206,13 @@ var maskStringRangeWithRegex = exports.maskStringRangeWithRegex = function maskS
|
|
206
206
|
if (start < 0) {
|
207
207
|
throw new Error('脱敏数据: start index cannot be negative');
|
208
208
|
}
|
209
|
-
var adjustedEnd = Math.min(end, input.length - 1);
|
210
|
-
if (start >= input.length) {
|
209
|
+
var adjustedEnd = Math.min(end, (input === null || input === void 0 ? void 0 : input.length) - 1);
|
210
|
+
if (start >= (input === null || input === void 0 ? void 0 : input.length)) {
|
211
211
|
return '';
|
212
212
|
}
|
213
213
|
var regexPattern = "^(.{".concat(start, "})(.{").concat(adjustedEnd - start + 1, "})(.*)$");
|
214
214
|
var regex = new RegExp(regexPattern);
|
215
|
-
var maskedValue = input.replace(regex, "$1".concat('*'.repeat(adjustedEnd - start + 1), "$3"));
|
215
|
+
var maskedValue = input === null || input === void 0 ? void 0 : (_input$replace = input.replace) === null || _input$replace === void 0 ? void 0 : _input$replace.call(input, regex, "$1".concat('*'.repeat(adjustedEnd - start + 1), "$3"));
|
216
216
|
return maskedValue;
|
217
217
|
};
|
218
218
|
var _default = exports.default = {
|
@@ -310,51 +310,5 @@ var _default = exports.default = {
|
|
310
310
|
switch: function _switch(_ref12) {
|
311
311
|
var switchValue = _ref12.switchValue;
|
312
312
|
return switchTransform(switchValue);
|
313
|
-
},
|
314
|
-
/** 脱敏 转换 */
|
315
|
-
desensitization: function desensitization(props) {
|
316
|
-
var desensitization = props.desensitization,
|
317
|
-
type = props.type,
|
318
|
-
mode = props.mode,
|
319
|
-
names = props.names;
|
320
|
-
// 判断是否是地址控件,并带地址详情场景
|
321
|
-
if (type === 'ProCascader' && mode === 'address' && (names === null || names === void 0 ? void 0 : names.length) === 4) {
|
322
|
-
return {
|
323
|
-
getValueProps: function getValueProps(value) {
|
324
|
-
try {
|
325
|
-
if (value === null || value === void 0 ? void 0 : value.length) {
|
326
|
-
var _value = (0, _slicedToArray2.default)(value, 4),
|
327
|
-
province = _value[0],
|
328
|
-
city = _value[1],
|
329
|
-
county = _value[2],
|
330
|
-
address = _value[3];
|
331
|
-
return {
|
332
|
-
value: [province, city, county, maskStringRangeWithRegex(address, desensitization)]
|
333
|
-
};
|
334
|
-
}
|
335
|
-
return {
|
336
|
-
value: value
|
337
|
-
};
|
338
|
-
} catch (error) {
|
339
|
-
return {
|
340
|
-
value: value
|
341
|
-
}; // 如果发生错误,返回原始值
|
342
|
-
}
|
343
|
-
}
|
344
|
-
};
|
345
|
-
}
|
346
|
-
return {
|
347
|
-
getValueProps: function getValueProps(value) {
|
348
|
-
try {
|
349
|
-
return {
|
350
|
-
value: maskStringRangeWithRegex(value, desensitization)
|
351
|
-
};
|
352
|
-
} catch (error) {
|
353
|
-
return {
|
354
|
-
value: value
|
355
|
-
}; // 如果发生错误,返回原始值
|
356
|
-
}
|
357
|
-
}
|
358
|
-
};
|
359
313
|
}
|
360
314
|
};
|