@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.
Files changed (36) hide show
  1. package/.vscode/extensions.json +5 -0
  2. package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +2 -3
  3. package/es/ProEditTable/components/RenderField/index.js +8 -16
  4. package/es/ProForm/components/base/Input/index.js +23 -2
  5. package/es/ProForm/components/base/Input/propsType.d.ts +2 -0
  6. package/es/ProForm/components/combination/Group/utils.js +1 -13
  7. package/es/ProForm/components/combination/ProCascader/index.js +13 -8
  8. package/es/ProForm/components/combination/ProCascader/propsType.d.ts +1 -0
  9. package/es/ProForm/components/render/ChangedWrapper.js +1 -1
  10. package/es/ProForm/components/render/Render.js +11 -19
  11. package/es/ProForm/utils/transformValue.js +9 -5
  12. package/es/ProForm/utils/valueType.d.ts +0 -6
  13. package/es/ProForm/utils/valueType.js +4 -50
  14. package/es/ProSelect/index.js +11 -3
  15. package/es/ProTable/components/FormatColumn/index.js +0 -5
  16. package/es/ProTable/components/RenderColumn/index.js +55 -42
  17. package/es/ProTable/utils/index.d.ts +6 -0
  18. package/es/ProTable/utils/index.js +14 -0
  19. package/lib/ProEditTable/components/RenderField/ListChangedWrapper.js +1 -2
  20. package/lib/ProEditTable/components/RenderField/index.js +8 -16
  21. package/lib/ProForm/components/base/Input/index.js +23 -2
  22. package/lib/ProForm/components/base/Input/propsType.d.ts +2 -0
  23. package/lib/ProForm/components/combination/Group/utils.js +1 -13
  24. package/lib/ProForm/components/combination/ProCascader/index.js +13 -6
  25. package/lib/ProForm/components/combination/ProCascader/propsType.d.ts +1 -0
  26. package/lib/ProForm/components/render/ChangedWrapper.js +1 -1
  27. package/lib/ProForm/components/render/Render.js +11 -19
  28. package/lib/ProForm/utils/transformValue.js +9 -5
  29. package/lib/ProForm/utils/valueType.d.ts +0 -6
  30. package/lib/ProForm/utils/valueType.js +4 -50
  31. package/lib/ProSelect/index.js +10 -2
  32. package/lib/ProTable/components/FormatColumn/index.js +0 -5
  33. package/lib/ProTable/components/RenderColumn/index.js +56 -43
  34. package/lib/ProTable/utils/index.d.ts +6 -0
  35. package/lib/ProTable/utils/index.js +15 -1
  36. package/package.json +1 -1
@@ -0,0 +1,5 @@
1
+ {
2
+ "recommendations": [
3
+ "kisstkondoros.vscode-codemetrics"
4
+ ]
5
+ }
@@ -7,7 +7,7 @@ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
7
7
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
8
8
  var _excluded = ["name", "names", "namesStr", "originalName", "originalNames", "originalValues", "form", "equalWith", "rowKeyPath", "children", "type", "normalize", "getValueProps", "valuePropName", "viewRender", "diffConfig", "index"];
9
9
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
- import React, { useMemo, useRef } from 'react';
10
+ import React, { useMemo } from 'react';
11
11
  import classnames from 'classnames';
12
12
  import { get } from 'lodash';
13
13
  import { diffOriginal } from '../../utils/diffOriginal';
@@ -101,7 +101,6 @@ var ListChangedWrapper = function ListChangedWrapper(props) {
101
101
  var _ref3 = diffConfig || {},
102
102
  _ref3$scrollFollowPar = _ref3.scrollFollowParent,
103
103
  scrollFollowParent = _ref3$scrollFollowPar === void 0 ? true : _ref3$scrollFollowPar;
104
- var contentRef = useRef(null);
105
104
  var namePath = toNamePath(namesStr || name);
106
105
  var originalNamePath = toNamePath(originalName);
107
106
  var originalNamePaths = originalNames && toNamePaths(originalNames);
@@ -142,7 +141,7 @@ var ListChangedWrapper = function ListChangedWrapper(props) {
142
141
  var tipContent = useMemo(function () {
143
142
  var _getValueProps;
144
143
  if (!isWatch || noChange) return undefined;
145
- var orgValue = getValueProps && !names ? (_getValueProps = getValueProps(originalValue)) === null || _getValueProps === void 0 ? void 0 : _getValueProps[valuePropName] : originalValue;
144
+ var orgValue = getValueProps ? (_getValueProps = getValueProps(originalValue, true)) === null || _getValueProps === void 0 ? void 0 : _getValueProps[valuePropName] : originalValue;
146
145
  // 兼容viewRender函数和Element场景
147
146
  var _children = children;
148
147
  if (viewRender) {
@@ -173,7 +173,9 @@ var RenderField = function RenderField(_ref) {
173
173
  fieldProps: column === null || column === void 0 ? void 0 : column.fieldProps
174
174
  });
175
175
  // 允许formItem的属性放在column最外层
176
- var _formItemProps = _objectSpread(_objectSpread(_objectSpread({}, defaultProps), resetProps), internalRule);
176
+ var _formItemProps = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, defaultProps), resetProps), internalRule), {}, {
177
+ validateTrigger: validateTrigger
178
+ });
177
179
  if (['Switch', 'SwitchCheckbox'].includes(type)) {
178
180
  _formItemProps.valuePropName = 'checked';
179
181
  _valueType = 'switch';
@@ -195,20 +197,14 @@ var RenderField = function RenderField(_ref) {
195
197
  * @returns {}
196
198
  */
197
199
  var valueTypeTransform = function valueTypeTransform() {
198
- var _fieldProps3, _desensitization2;
200
+ var _fieldProps3;
199
201
  // SwitchCheckbox默认YN, 兼容已有组件
200
202
  if (type === 'SwitchCheckbox') {
201
203
  _valueType = 'switch';
202
204
  }
203
205
  var params = _objectSpread(_objectSpread({}, column), {}, {
204
- mode: (_fieldProps3 = _fieldProps) === null || _fieldProps3 === void 0 ? void 0 : _fieldProps3.mode,
205
- desensitization: _desensitization
206
+ mode: (_fieldProps3 = _fieldProps) === null || _fieldProps3 === void 0 ? void 0 : _fieldProps3.mode
206
207
  });
207
- var isDesensit = sessionStorage.getItem(otherProps === null || otherProps === void 0 ? void 0 : otherProps.desensitizationKey);
208
- // 仅查看模式下进行数据脱敏
209
- if (((_desensitization2 = _desensitization) === null || _desensitization2 === void 0 ? void 0 : _desensitization2.length) && _disabled && isDesensit === 'ON') {
210
- _valueType = 'desensitization';
211
- }
212
208
  return isFunction(valueTypeMap[_valueType]) ? valueTypeMap[_valueType](params) : {};
213
209
  };
214
210
  if ((_names = names) === null || _names === void 0 ? void 0 : _names.length) {
@@ -237,14 +233,10 @@ var RenderField = function RenderField(_ref) {
237
233
  var namesTransform = function namesTransform() {
238
234
  var _names3;
239
235
  if (!((_names3 = names) === null || _names3 === void 0 ? void 0 : _names3.length)) {
240
- return {};
236
+ return valueTypeTransform();
241
237
  }
242
238
  var namesStr = [].concat(_toConsumableArray(baseName), [index, dataIndex]);
243
- var transform = {};
244
- if (_valueType) {
245
- transform = valueTypeTransform();
246
- }
247
- return transformNames(_objectSpread(_objectSpread({}, _formItemProps), transform), form, names, namesStr, type);
239
+ return transformNames(_objectSpread(_objectSpread({}, _formItemProps), valueTypeTransform()), form, names, namesStr, type);
248
240
  };
249
241
  if (!_editRender && typeof type === 'string') {
250
242
  var _componentMap$type;
@@ -556,7 +548,7 @@ var RenderField = function RenderField(_ref) {
556
548
  if (['Select', 'ProSelect', 'ProEnum'].includes(type)) {
557
549
  componentProps.scrollFollowParent = false;
558
550
  }
559
- Object.assign(_formItemProps, _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, defaultTransform()), valueTypeTransform()), namesTransform()), isTrim(type, trim, useProConfig())));
551
+ Object.assign(_formItemProps, _objectSpread(_objectSpread(_objectSpread({}, defaultTransform()), namesTransform()), isTrim(type, trim, useProConfig())));
560
552
  // 编辑&保存模式,在查看状态下移除表单的rules不做校验
561
553
  if (isView) {
562
554
  delete _formItemProps.rules;
@@ -2,13 +2,15 @@ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
2
  import "antd/es/input/style";
3
3
  import _Input from "antd/es/input";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
- var _excluded = ["label", "form", "placeholder", "fieldName", "otherProps"];
5
+ var _excluded = ["label", "form", "placeholder", "fieldName", "otherProps", "desensitization"];
6
6
  import { jsx as _jsx } from "react/jsx-runtime";
7
+ import React from 'react';
7
8
  import { omit } from 'lodash';
8
9
  import { useProConfig } from '../../../../ProConfigProvider';
9
10
  import Container from '../../Container';
10
11
  import locale from '../../../../locale';
11
12
  import ProForm from '../../../index';
13
+ import { maskStringRangeWithRegex } from '../../../utils/valueType';
12
14
  // 参数优先级
13
15
  // 组件内默认值 < config默认值 < props
14
16
  var Input = function Input(props) {
@@ -17,6 +19,7 @@ var Input = function Input(props) {
17
19
  placeholder = props.placeholder,
18
20
  fieldName = props.fieldName,
19
21
  otherProps = props.otherProps,
22
+ desensitization = props.desensitization,
20
23
  rest = _objectWithoutProperties(props, _excluded);
21
24
  var _ref = ProForm.useFieldProps() || {},
22
25
  isViewCon = _ref.isView,
@@ -29,10 +32,28 @@ var Input = function Input(props) {
29
32
  children: rest.value
30
33
  });
31
34
  }
32
- return _jsx(_Input, _objectSpread(_objectSpread({
35
+ var ComInput = _jsx(_Input, _objectSpread(_objectSpread({
33
36
  allowClear: true,
34
37
  autoComplete: "off",
35
38
  placeholder: placeholder || "".concat(locale.ProForm.inputPlaceholder)
36
39
  }, omit(initialConfig, ['trim'])), rest));
40
+ // 仅查看模式下进行数据脱敏
41
+ if ((desensitization === null || desensitization === void 0 ? void 0 : desensitization.length) && (props === null || props === void 0 ? void 0 : props.disabled)) {
42
+ var isDesensit = sessionStorage.getItem(otherProps === null || otherProps === void 0 ? void 0 : otherProps.desensitizationKey);
43
+ if (isDesensit === 'ON') {
44
+ if (typeof rest.value === 'number') {
45
+ var _rest$value, _rest$value$toString;
46
+ 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);
47
+ }
48
+ return /*#__PURE__*/React.cloneElement(ComInput, _objectSpread(_objectSpread(_objectSpread({
49
+ allowClear: true,
50
+ autoComplete: 'off',
51
+ placeholder: placeholder || "".concat(locale.ProForm.inputPlaceholder)
52
+ }, omit(initialConfig, ['trim'])), rest), {}, {
53
+ value: maskStringRangeWithRegex(rest.value, desensitization)
54
+ }));
55
+ }
56
+ }
57
+ return ComInput;
37
58
  };
38
59
  export default Input;
@@ -12,4 +12,6 @@ export interface ProFieldProps<T = any> {
12
12
  export interface IProps extends InputProps, ProFieldProps {
13
13
  otherProps?: ProFormOtherProps;
14
14
  isView?: boolean;
15
+ /** 脱敏数据位置下标 */
16
+ desensitization?: [number, number];
15
17
  }
@@ -158,15 +158,7 @@ export var getReactiveProps = function getReactiveProps(params) {
158
158
  /** 获取当前字段的转换函数 */
159
159
  export var getValueTypeTrans = function getValueTypeTrans(params) {
160
160
  var _valueTypeMap$valueTy;
161
- var desensitizationKey = params.desensitizationKey;
162
161
  var valueType = params.valueType;
163
- var desensitization = params.desensitization,
164
- disabled = params.disabled;
165
- var isDesensit = sessionStorage.getItem(desensitizationKey);
166
- // 仅查看模式下进行数据脱敏
167
- if ((desensitization === null || desensitization === void 0 ? void 0 : desensitization.length) && disabled && isDesensit === 'ON') {
168
- valueType = 'desensitization';
169
- }
170
162
  var transform = (_valueTypeMap$valueTy = valueTypeMap[valueType]) === null || _valueTypeMap$valueTy === void 0 ? void 0 : _valueTypeMap$valueTy.call(valueTypeMap, params);
171
163
  return transform;
172
164
  };
@@ -276,17 +268,13 @@ export var useTransformColumns = function useTransformColumns(params) {
276
268
  if (reactiveProps.show === false) {
277
269
  return [];
278
270
  }
279
- var isDisabled = formDisabled || _disabled || reactiveProps.disabled;
280
271
  var transform = getValueTypeTrans({
281
272
  type: type,
282
273
  valueType: valueType,
283
274
  switchValue: switchValue,
284
275
  toISOString: toISOString,
285
276
  toCSTString: toCSTString,
286
- mode: mode,
287
- desensitizationKey: desensitizationKey,
288
- disabled: isDisabled,
289
- desensitization: reactiveProps.desensitization
277
+ mode: mode
290
278
  });
291
279
  var newValue;
292
280
  var handleChange = function handleChange() {
@@ -1,5 +1,3 @@
1
- import "antd/es/input/style";
2
- import _Input from "antd/es/input";
3
1
  import "antd/es/tooltip/style";
4
2
  import _Tooltip from "antd/es/tooltip";
5
3
  import "antd/es/cascader/style";
@@ -13,12 +11,13 @@ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
13
11
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
14
12
  import "antd/es/typography/style";
15
13
  import _Typography from "antd/es/typography";
16
- var _excluded = ["className", "hasDetail", "detailMaxLength", "fieldNames", "value", "disabled", "dataSource", "onChange", "useRequest", "transformResponse", "level", "isView", "enumCode", "code", "tooltip", "separator", "detailPlaceholder", "scrollFollowParent"];
14
+ var _excluded = ["className", "hasDetail", "detailMaxLength", "fieldNames", "value", "disabled", "dataSource", "onChange", "useRequest", "transformResponse", "level", "isView", "enumCode", "code", "tooltip", "separator", "detailPlaceholder", "scrollFollowParent", "desensitization", "otherProps"];
17
15
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
18
16
  import { useEffect, useState, memo, useMemo } from 'react';
19
17
  import { omit, find as _find, isBoolean } from 'lodash';
20
18
  import { transformDataName } from './utils/index';
21
19
  import { useProConfig } from '../../../../ProConfigProvider';
20
+ import Input from '../../base/Input';
22
21
  import useEnum from '../../../../ProEnum/hooks/useEnum';
23
22
  import locale from '../../../../locale';
24
23
  import ProForm from '../../..';
@@ -88,7 +87,9 @@ var ProCascader = function ProCascader(props) {
88
87
  separator = _props$separator === void 0 ? '/' : _props$separator,
89
88
  detailPlaceholder = props.detailPlaceholder,
90
89
  scrollFollowParent = props.scrollFollowParent,
91
- otherProps = _objectWithoutProperties(props, _excluded);
90
+ desensitization = props.desensitization,
91
+ otherProps = props.otherProps,
92
+ restProps = _objectWithoutProperties(props, _excluded);
92
93
  var _ref3 = ProForm.useFieldProps() || {},
93
94
  isViewCon = _ref3.isView,
94
95
  viewEmpty = _ref3.viewEmpty;
@@ -284,23 +285,27 @@ var ProCascader = function ProCascader(props) {
284
285
  getPopupContainer: function getPopupContainer(trigger) {
285
286
  return scrollFollowParent ? trigger.parentElement : document.body;
286
287
  }
287
- }, omit(otherProps, ['otherProps', 'scrollFollowParent']))), hasDetail && (tooltip && lastDisabled[1] && detail ? _jsx(_Tooltip, {
288
+ }, omit(restProps, ['otherProps', 'scrollFollowParent']))), hasDetail && (tooltip && lastDisabled[1] && detail ? _jsx(_Tooltip, {
288
289
  title: detail,
289
290
  children: _jsx("span", {
290
291
  className: "pro-address-detail",
291
- children: _jsx(_Input, {
292
+ children: _jsx(Input, {
292
293
  disabled: lastDisabled[1],
294
+ desensitization: desensitization,
295
+ otherProps: otherProps,
293
296
  value: detail
294
297
  })
295
298
  })
296
- }) : _jsx(_Input, {
299
+ }) : _jsx(Input, {
297
300
  allowClear: true,
298
301
  autoComplete: "off",
299
302
  disabled: lastDisabled[1],
300
303
  value: detail,
301
304
  maxLength: detailMaxLength,
302
305
  placeholder: detailPlaceholder || (locale === null || locale === void 0 ? void 0 : (_locale$ProAddressBar2 = locale.ProAddressBar) === null || _locale$ProAddressBar2 === void 0 ? void 0 : _locale$ProAddressBar2.detailPlaceholder),
303
- onChange: handleAddressChange
306
+ onChange: handleAddressChange,
307
+ desensitization: desensitization,
308
+ otherProps: otherProps
304
309
  }))]
305
310
  });
306
311
  };
@@ -36,4 +36,5 @@ export interface ProCascaderProps {
36
36
  detailPlaceholder?: string;
37
37
  /** 浮窗是否跟随父级 */
38
38
  scrollFollowParent?: boolean;
39
+ desensitization?: [number, number];
39
40
  }
@@ -66,7 +66,7 @@ var ChangedWrapper = function ChangedWrapper(props) {
66
66
  var isChanged = diffType === 'changed';
67
67
  var tipContent = useMemo(function () {
68
68
  if (!isWatch || noChange) return undefined;
69
- var valueProps = getValueProps && !names ? getValueProps(originalValue) : {
69
+ var valueProps = getValueProps ? getValueProps(originalValue, true) : {
70
70
  value: originalValue
71
71
  };
72
72
  if (viewRender) {
@@ -31,7 +31,7 @@ import ConfirmWrapper from './ConfirmWrapper';
31
31
  import ChangedWrapper from './ChangedWrapper';
32
32
  // 这个组件只管渲染, 参数的整理在外部处理
33
33
  var Render = function Render(props) {
34
- var _ref3, _ref4, _ref5, _ref6, _otherProps$names2;
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
- desensitizationKey = _ref.desensitizationKey;
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 = _objectSpread(_objectSpread(_objectSpread({}, otherProps), otherFormItemProps), {}, {
139
- desensitization: _desensitization
140
- });
131
+ var params = _objectSpread(_objectSpread({}, otherProps), otherFormItemProps);
141
132
  return isFunction(valueTypeMap[valueType]) ? valueTypeMap[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 ? (_ref3 = (_ref4 = formDisabled !== null && formDisabled !== void 0 ? formDisabled : _disabled) !== null && _ref4 !== void 0 ? _ref4 : _fieldProps === null || _fieldProps === void 0 ? void 0 : _fieldProps.disabled) !== null && _ref3 !== void 0 ? _ref3 : componentProps === null || componentProps === void 0 ? void 0 : componentProps.disabled : (_ref5 = (_ref6 = _disabled !== null && _disabled !== void 0 ? _disabled : _fieldProps === null || _fieldProps === void 0 ? void 0 : _fieldProps.disabled) !== null && _ref6 !== void 0 ? _ref6 : componentProps === null || componentProps === void 0 ? void 0 : componentProps.disabled) !== null && _ref5 !== void 0 ? _ref5 : formDisabled;
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 = _objectSpread(_objectSpread(_objectSpread({}, componentProps), _fieldProps), {}, {
186
- disabled: lastDisabled
177
+ disabled: lastDisabled,
178
+ desensitization: _desensitization
187
179
  });
188
180
  var _className = classNames(_defineProperty(_defineProperty({}, 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 = _toConsumableArray(args);
209
- var _ref7 = otherProps || {},
210
- valueType = _ref7.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 _ref8 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
302
+ var _ref7 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().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 _ref8.apply(this, arguments);
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 = _objectSpread(_objectSpread({}, colProps), {}, {
425
417
  span: lessMode ? colProps.span : 24 // 默认占一行
426
418
  });
427
- return _jsx(_Form.Item, _objectSpread(_objectSpread({}, omit(_otherFormItemProps, [].concat(filterFormItemKey, ['name', 'names']))), {}, {
419
+ return _jsx(_Form.Item, _objectSpread(_objectSpread({}, omit(_otherFormItemProps, filterFormItemKey)), {}, {
428
420
  // @ts-ignore
429
421
  _internalItemRender: internalItemRender,
430
422
  className: _className,
@@ -20,13 +20,17 @@ export var transformValue = function transformValue(names, form, fieldName, _nor
20
20
  });
21
21
  return _value;
22
22
  },
23
- getValueProps: function getValueProps(value) {
23
+ getValueProps: function getValueProps(value, isOrg) {
24
24
  var _curValue;
25
25
  var _value = [];
26
- names.forEach(function (name, index) {
27
- var value = form.getFieldValue(name);
28
- _value[index] = value;
29
- });
26
+ if (!isOrg) {
27
+ names.forEach(function (name, index) {
28
+ var value = form.getFieldValue(name);
29
+ _value[index] = value;
30
+ });
31
+ } else {
32
+ _value = value;
33
+ }
30
34
  // 支持外部传入转换函数
31
35
  var res = (_getValueProps === null || _getValueProps === void 0 ? void 0 : _getValueProps(_value)) || {
32
36
  value: _value
@@ -66,11 +66,5 @@ declare const _default: {
66
66
  value: any;
67
67
  };
68
68
  };
69
- /** 脱敏 转换 */
70
- desensitization: (props: any) => {
71
- getValueProps: (value: any) => {
72
- value: any;
73
- };
74
- };
75
69
  };
76
70
  export default _default;
@@ -1,4 +1,3 @@
1
- import _readOnlyError from "@babel/runtime/helpers/esm/readOnlyError";
2
1
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
2
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
4
3
  import Big from 'big.js';
@@ -192,6 +191,7 @@ var dateTransform = function dateTransform(_ref2) {
192
191
  };
193
192
  /** 脱敏处理函数 */
194
193
  export var maskStringRangeWithRegex = function maskStringRangeWithRegex(input, range) {
194
+ var _input$replace;
195
195
  var _ref3 = range || [],
196
196
  _ref4 = _slicedToArray(_ref3, 2),
197
197
  start = _ref4[0],
@@ -199,13 +199,13 @@ export var maskStringRangeWithRegex = function maskStringRangeWithRegex(input, r
199
199
  if (start < 0) {
200
200
  throw new Error('脱敏数据: start index cannot be negative');
201
201
  }
202
- var adjustedEnd = Math.min(end, input.length - 1);
203
- if (start >= input.length) {
202
+ var adjustedEnd = Math.min(end, (input === null || input === void 0 ? void 0 : input.length) - 1);
203
+ if (start >= (input === null || input === void 0 ? void 0 : input.length)) {
204
204
  return '';
205
205
  }
206
206
  var regexPattern = "^(.{".concat(start, "})(.{").concat(adjustedEnd - start + 1, "})(.*)$");
207
207
  var regex = new RegExp(regexPattern);
208
- var maskedValue = input.replace(regex, "$1".concat('*'.repeat(adjustedEnd - start + 1), "$3"));
208
+ 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"));
209
209
  return maskedValue;
210
210
  };
211
211
  export default {
@@ -303,51 +303,5 @@ export default {
303
303
  switch: function _switch(_ref12) {
304
304
  var switchValue = _ref12.switchValue;
305
305
  return switchTransform(switchValue);
306
- },
307
- /** 脱敏 转换 */
308
- desensitization: function desensitization(props) {
309
- var desensitization = props.desensitization,
310
- type = props.type,
311
- mode = props.mode,
312
- names = props.names;
313
- // 判断是否是地址控件,并带地址详情场景
314
- if (type === 'ProCascader' && mode === 'address' && (names === null || names === void 0 ? void 0 : names.length) === 4) {
315
- return {
316
- getValueProps: function getValueProps(value) {
317
- try {
318
- if (value === null || value === void 0 ? void 0 : value.length) {
319
- var _value = _slicedToArray(value, 4),
320
- province = _value[0],
321
- city = _value[1],
322
- county = _value[2],
323
- address = _value[3];
324
- return {
325
- value: [province, city, county, maskStringRangeWithRegex(address, desensitization)]
326
- };
327
- }
328
- return {
329
- value: value
330
- };
331
- } catch (error) {
332
- return {
333
- value: value
334
- }; // 如果发生错误,返回原始值
335
- }
336
- }
337
- };
338
- }
339
- return {
340
- getValueProps: function getValueProps(value) {
341
- try {
342
- return {
343
- value: maskStringRangeWithRegex(value, desensitization)
344
- };
345
- } catch (error) {
346
- return {
347
- value: value
348
- }; // 如果发生错误,返回原始值
349
- }
350
- }
351
- };
352
306
  }
353
307
  };
@@ -12,7 +12,7 @@ import _Select from "antd/es/select";
12
12
  var _excluded = ["dataSource", "defaultDisableValue", "useRequest", "fieldNames", "tooltip", "otherProps", "labelInValue", "filterInList", "scrollFollowParent", "defaultOne", "onSearch", "optionRender", "onChange", "updateDataSource", "transformResponse", "getValueProps", "isView"];
13
13
  import { jsx as _jsx } from "react/jsx-runtime";
14
14
  import { useDeepCompareEffect, useRequest as useRequestFunc } from 'ahooks';
15
- import React, { useImperativeHandle, useState, forwardRef } from 'react';
15
+ import React, { useImperativeHandle, useState, forwardRef, isValidElement } from 'react';
16
16
  import { isFunction, isObject, isString, omit, isNumber } from 'lodash';
17
17
  import { useProConfig } from '../ProConfigProvider';
18
18
  import Container from '../ProForm/components/Container';
@@ -216,7 +216,15 @@ export var ProSelect = function ProSelect(props, ref) {
216
216
  }
217
217
  return props.children;
218
218
  };
219
- var handleChange = function handleChange(value, option) {
219
+ var isReactElement = function isReactElement(element) {
220
+ return /*#__PURE__*/isValidElement(element);
221
+ };
222
+ var handleChange = function handleChange(value, _option) {
223
+ // option/其第一层子节点是react节点且是labelInValue就拿record
224
+ var option = _option;
225
+ if (labelInValue && (isReactElement(_option) || isReactElement(_option === null || _option === void 0 ? void 0 : _option.children))) {
226
+ option = _option === null || _option === void 0 ? void 0 : _option.record;
227
+ }
220
228
  var getChangeValue = selectProps.getChangeValue;
221
229
  if (selectProps.mode && selectProps.mode === 'multiple') {
222
230
  if (Array.isArray(option)) {
@@ -234,7 +242,7 @@ export var ProSelect = function ProSelect(props, ref) {
234
242
  } else if (!selectProps.mode && labelInValue) {
235
243
  onChange(getChangeValue ? getChangeValue(getValueObject(value)) : getValueObject(value), option);
236
244
  } else {
237
- onChange === null || onChange === void 0 ? void 0 : onChange(getChangeValue ? getChangeValue(value) : value, option === null || option === void 0 ? void 0 : option.record);
245
+ onChange === null || onChange === void 0 ? void 0 : onChange(getChangeValue ? getChangeValue(value) : value, _option === null || _option === void 0 ? void 0 : _option.record);
238
246
  }
239
247
  };
240
248
  /**
@@ -341,11 +341,6 @@ export var formatColumn = function formatColumn(_ref2) {
341
341
  if (!originalValue) {
342
342
  originalRenderValue = '-';
343
343
  }
344
- if (originalObj && renderValue !== originalRenderValue) {
345
- otherProps.isChanged = true;
346
- } else {
347
- otherProps.isChanged = false;
348
- }
349
344
  var node = _jsxs(_Space, {
350
345
  size: 8,
351
346
  children: [prefixNode(value, record, index), renderValue, suffixNode(value, record, index)]