@teamias/rex-design 0.0.1 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +3 -3
  3. package/dist/components/action-buttons/action-buttons.d.ts +1 -1
  4. package/dist/components/action-buttons/action-buttons.js +86 -76
  5. package/dist/components/action-buttons/demo/index.js +61 -58
  6. package/dist/components/base-form/base-form.js +218 -215
  7. package/dist/components/base-form/demo/index.js +147 -135
  8. package/dist/components/base-form/modules/renderComponentNode.d.ts +2 -2
  9. package/dist/components/base-form/modules/renderComponentNode.js +135 -130
  10. package/dist/components/base-form/types.d.ts +1 -1
  11. package/dist/components/base-form/types.js +0 -9
  12. package/dist/components/base-list-table/base-list-table.d.ts +2 -2
  13. package/dist/components/base-list-table/base-list-table.js +156 -135
  14. package/dist/components/base-list-table/demo/BasicBaseListTable.js +22 -13
  15. package/dist/components/base-list-table/demo/NoData.js +2 -1
  16. package/dist/components/base-list-table/demo/TableMaxRowCount.js +1669 -1663
  17. package/dist/components/base-list-table/demo/VirtualDemo.js +22 -13
  18. package/dist/components/base-table/base-table.d.ts +2 -2
  19. package/dist/components/base-table/base-table.js +60 -55
  20. package/dist/components/base-table/components/BaseTableRow.js +79 -66
  21. package/dist/components/base-table/demo/BaseTableAll.js +6 -2
  22. package/dist/components/base-table/demo/BaseTableBasic.js +5 -2
  23. package/dist/components/base-table/demo/BaseTableIndex.js +48 -50
  24. package/dist/components/base-table/demo/BaseTableRowSelect.js +2 -1
  25. package/dist/components/data-cell/data-cell.js +5 -4
  26. package/dist/components/data-cell/demo/index.js +327 -309
  27. package/dist/components/data-cell/modules/cellItemMap.d.ts +2 -2
  28. package/dist/components/data-cell/modules/cellItemMap.js +184 -157
  29. package/dist/components/data-cell/types.d.ts +9 -9
  30. package/dist/components/icons/demo/index.js +44 -40
  31. package/dist/components/icons/icons.d.ts +1 -1
  32. package/dist/components/icons/icons.js +36 -26
  33. package/dist/components/index.d.ts +7 -0
  34. package/dist/components/index.js +7 -0
  35. package/dist/components/media-viewer/demo/index.js +24 -20
  36. package/dist/components/media-viewer/media-viewer.d.ts +1 -1
  37. package/dist/components/media-viewer/media-viewer.js +13 -12
  38. package/dist/context/index.d.ts +2 -0
  39. package/dist/context/index.js +2 -0
  40. package/dist/{hooks → context}/request-fields-container/demo/index.js +10 -5
  41. package/dist/{hooks → context}/request-fields-container/index.js +2 -2
  42. package/dist/{hooks → context}/request-fields-container/request-fields-container-context-provider.js +17 -12
  43. package/dist/context/request-fields-container/request-fields-container-hoc.d.ts +4 -0
  44. package/dist/{hooks → context}/request-fields-container/request-fields-container-hoc.js +0 -1
  45. package/dist/{hooks → context}/request-fields-container/use-request-fields-container.js +2 -2
  46. package/dist/{hooks → context}/rex-pro-config-provider/demo/index.js +9 -5
  47. package/dist/{hooks → context}/rex-pro-config-provider/index.js +2 -2
  48. package/dist/{hooks → context}/rex-pro-config-provider/rex-pro-config-context.js +0 -1
  49. package/dist/context/rex-pro-config-provider/rex-pro-config-provider.d.ts +5 -0
  50. package/dist/{hooks → context}/rex-pro-config-provider/rex-pro-config-provider.js +8 -6
  51. package/dist/hooks/index.d.ts +1 -0
  52. package/dist/hooks/index.js +1 -0
  53. package/dist/hooks/use-state-data/use-state-data.js +4 -4
  54. package/dist/index.d.ts +3 -10
  55. package/dist/index.js +3 -10
  56. package/dist/{components/base-form/locales → locales}/en-US.json +30 -21
  57. package/dist/{components/base-form/locales → locales}/zh-CN.json +30 -21
  58. package/dist/types/svg.d.ts +3 -3
  59. package/package.json +37 -33
  60. package/dist/components/base-form/locales.index.d.ts +0 -42
  61. package/dist/components/base-form/locales.index.js +0 -4
  62. package/dist/hooks/request-fields-container/request-fields-container-hoc.d.ts +0 -4
  63. package/dist/hooks/rex-pro-config-provider/rex-pro-config-provider.d.ts +0 -6
  64. package/dist/utils/locales/en-US.json +0 -13
  65. package/dist/utils/locales/index.d.ts +0 -26
  66. package/dist/utils/locales/index.js +0 -4
  67. package/dist/utils/locales/zh-CN.json +0 -13
  68. package/dist/{hooks → context}/request-fields-container/demo/index.d.ts +0 -0
  69. package/dist/{hooks → context}/request-fields-container/index.d.ts +2 -2
  70. package/dist/{hooks → context}/request-fields-container/request-fields-container-context-provider.d.ts +0 -0
  71. package/dist/{hooks → context}/request-fields-container/request-fields-container-context.d.ts +0 -0
  72. package/dist/{hooks → context}/request-fields-container/request-fields-container-context.js +0 -0
  73. package/dist/{hooks → context}/request-fields-container/use-request-fields-container.d.ts +0 -0
  74. package/dist/{hooks → context}/rex-pro-config-provider/demo/index.d.ts +0 -0
  75. package/dist/{hooks → context}/rex-pro-config-provider/index.d.ts +1 -1
  76. /package/dist/{hooks → context}/rex-pro-config-provider/rex-pro-config-context.d.ts +0 -0
  77. /package/dist/{hooks → context}/rex-pro-config-provider/use-rex-pro-config-provider.d.ts +0 -0
  78. /package/dist/{hooks → context}/rex-pro-config-provider/use-rex-pro-config-provider.js +0 -0
@@ -10,14 +10,15 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
10
10
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
11
11
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
12
12
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
13
- /* eslint-disable import/no-cycle */
14
- import { ProForm, ProFormDependency } from "@ant-design/pro-components";
13
+ import { ProForm, ProFormDependency } from '@ant-design/pro-components';
14
+ import { handlerFilter, useRexProConfigProvider } from "../..";
15
15
  import { useRef } from 'react';
16
- import { useRexProConfigProvider, handlerFilter } from "../..";
17
16
  import { processDependencyFields } from "./modules/dependencyUtils";
18
17
  import { renderComponentNode } from "./modules/renderComponentNode";
19
18
  import { BaseFormStyle } from "./style";
20
- import React from "react";
19
+ import { jsx as _jsx } from "react/jsx-runtime";
20
+ import { Fragment as _Fragment } from "react/jsx-runtime";
21
+ import { jsxs as _jsxs } from "react/jsx-runtime";
21
22
  export var BaseForm = function BaseForm(props) {
22
23
  var rawAllProps = props;
23
24
  var outFields = props.fields,
@@ -35,226 +36,228 @@ export var BaseForm = function BaseForm(props) {
35
36
  dependenciesSearchCache = _useRef.current;
36
37
  var _useRef2 = useRef({}),
37
38
  dependenciesSearchCacheData = _useRef2.current;
38
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(BaseFormStyle, null), outFields === null || outFields === void 0 ? void 0 : outFields.map(function (item, index) {
39
- var _item$field;
40
- var fields = Array.isArray(item.field) ? item.field : [(_item$field = item.field) !== null && _item$field !== void 0 ? _item$field : "custom-dynamic-".concat(index)];
41
- var keyStr = fields.join('-');
42
- var itemProps = outFieldProps === null || outFieldProps === void 0 ? void 0 : outFieldProps[fields.join('-')];
43
- var mergeItem = _objectSpread(_objectSpread({}, item), itemProps);
44
- var config = _objectSpread(_objectSpread({
45
- fields: fields,
46
- keyStr: keyStr,
47
- item: mergeItem,
48
- requestOptions: function () {
49
- var _requestOptions = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
50
- var fn,
51
- res,
52
- _args2 = arguments;
53
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
54
- while (1) switch (_context2.prev = _context2.next) {
55
- case 0:
56
- fn = outRequestOptions || formItemRequestOptions || apiClient || /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
57
- return _regeneratorRuntime().wrap(function _callee$(_context) {
58
- while (1) switch (_context.prev = _context.next) {
59
- case 0:
60
- return _context.abrupt("return", []);
61
- case 1:
62
- case "end":
63
- return _context.stop();
64
- }
65
- }, _callee);
66
- }));
67
- _context2.next = 3;
68
- return fn.apply(void 0, _args2);
69
- case 3:
70
- res = _context2.sent;
71
- return _context2.abrupt("return", Array.isArray(res) ? res : []);
72
- case 5:
73
- case "end":
74
- return _context2.stop();
75
- }
76
- }, _callee2);
39
+ return /*#__PURE__*/_jsxs(_Fragment, {
40
+ children: [/*#__PURE__*/_jsx(BaseFormStyle, {}), outFields === null || outFields === void 0 ? void 0 : outFields.map(function (item, index) {
41
+ var _item$field;
42
+ var fields = Array.isArray(item.field) ? item.field : [(_item$field = item.field) !== null && _item$field !== void 0 ? _item$field : "custom-dynamic-".concat(index)];
43
+ var keyStr = fields.join('-');
44
+ var itemProps = outFieldProps === null || outFieldProps === void 0 ? void 0 : outFieldProps[fields.join('-')];
45
+ var mergeItem = _objectSpread(_objectSpread({}, item), itemProps);
46
+ var config = _objectSpread(_objectSpread({
47
+ fields: fields,
48
+ keyStr: keyStr,
49
+ item: mergeItem,
50
+ requestOptions: function () {
51
+ var _requestOptions = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
52
+ var fn,
53
+ res,
54
+ _args2 = arguments;
55
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
56
+ while (1) switch (_context2.prev = _context2.next) {
57
+ case 0:
58
+ fn = outRequestOptions || formItemRequestOptions || apiClient || /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
59
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
60
+ while (1) switch (_context.prev = _context.next) {
61
+ case 0:
62
+ return _context.abrupt("return", []);
63
+ case 1:
64
+ case "end":
65
+ return _context.stop();
66
+ }
67
+ }, _callee);
68
+ }));
69
+ _context2.next = 3;
70
+ return fn.apply(void 0, _args2);
71
+ case 3:
72
+ res = _context2.sent;
73
+ return _context2.abrupt("return", Array.isArray(res) ? res : []);
74
+ case 5:
75
+ case "end":
76
+ return _context2.stop();
77
+ }
78
+ }, _callee2);
79
+ }));
80
+ function requestOptions() {
81
+ return _requestOptions.apply(this, arguments);
82
+ }
83
+ return requestOptions;
84
+ }()
85
+ }, otherProps), {}, {
86
+ rawAllProps: rawAllProps,
87
+ formatMessage: formatMessage
88
+ });
89
+ if (mergeItem.hidden) return;
90
+ if (operationPermission && !operationPermission(mergeItem.permissionKey)) return;
91
+
92
+ // 新扩展的依赖监听, 优先级高于 dependencies
93
+ if (item.dependenciesV2 && item.dependenciesV2.length) {
94
+ /** 字段+操作类型, 作为唯一key, 重复的以后面为准 */
95
+ var dependMap = Object.fromEntries(item.dependenciesV2.map(function (ii) {
96
+ return ["".concat(ii.field, "-").concat(ii.action), ii];
77
97
  }));
78
- function requestOptions() {
79
- return _requestOptions.apply(this, arguments);
80
- }
81
- return requestOptions;
82
- }()
83
- }, otherProps), {}, {
84
- rawAllProps: rawAllProps,
85
- formatMessage: formatMessage
86
- });
87
- if (mergeItem.hidden) return;
88
- if (operationPermission && !operationPermission(mergeItem.permissionKey)) return;
98
+ var allFields = Array.from(new Set(item.dependenciesV2.map(function (ii) {
99
+ return ii.field;
100
+ })));
101
+ return /*#__PURE__*/_jsx(ProFormDependency, {
102
+ name: allFields,
103
+ children: function children(data, form) {
104
+ var _config$item;
105
+ // 依赖规则可能有多条,且可能作用于同一类型(如多个 hidden、disabled 等),这里需要全部规则都满足才生效
106
+ var _ref2 = [],
107
+ hidden = _ref2[0],
108
+ disabled = _ref2[1],
109
+ clear = _ref2[2],
110
+ updateData = _ref2[3],
111
+ show = _ref2[4],
112
+ syncValue = _ref2[5];
89
113
 
90
- // 新扩展的依赖监听, 优先级高于 dependencies
91
- if (item.dependenciesV2 && item.dependenciesV2.length) {
92
- /** 字段+操作类型, 作为唯一key, 重复的以后面为准 */
93
- var dependMap = Object.fromEntries(item.dependenciesV2.map(function (ii) {
94
- return ["".concat(ii.field, "-").concat(ii.action), ii];
95
- }));
96
- var allFields = Array.from(new Set(item.dependenciesV2.map(function (ii) {
97
- return ii.field;
98
- })));
99
- return /*#__PURE__*/React.createElement(ProFormDependency, {
100
- name: allFields,
101
- key: keyStr
102
- }, function (data, form) {
103
- var _config$item;
104
- // 依赖规则可能有多条,且可能作用于同一类型(如多个 hidden、disabled 等),这里需要全部规则都满足才生效
105
- var _ref2 = [],
106
- hidden = _ref2[0],
107
- disabled = _ref2[1],
108
- clear = _ref2[2],
109
- updateData = _ref2[3],
110
- show = _ref2[4],
111
- syncValue = _ref2[5];
114
+ /** 条件判断 */
115
+ var judge = function judge(inlineItem) {
116
+ if (inlineItem.op) {
117
+ return handlerFilter(data, [{
118
+ original: inlineItem.field,
119
+ target: inlineItem.target,
120
+ op: inlineItem.op
121
+ }]);
122
+ }
123
+ return true;
124
+ };
112
125
 
113
- /** 条件判断 */
114
- var judge = function judge(inlineItem) {
115
- if (inlineItem.op) {
116
- return handlerFilter(data, [{
117
- original: inlineItem.field,
118
- target: inlineItem.target,
119
- op: inlineItem.op
120
- }]);
121
- }
122
- return true;
123
- };
126
+ /** 判断是否需要用户操作才触发 */
127
+ var isTouchedFn = function isTouchedFn(field) {
128
+ var isTouched = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
129
+ if (isTouched) {
130
+ return form.isFieldTouched(field);
131
+ }
132
+ return true;
133
+ };
124
134
 
125
- /** 判断是否需要用户操作才触发 */
126
- var isTouchedFn = function isTouchedFn(field) {
127
- var isTouched = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
128
- if (isTouched) {
129
- return form.isFieldTouched(field);
130
- }
131
- return true;
132
- };
133
-
134
- // console.log(data, dependMap)
135
- Object.values(dependMap).forEach(function (dependItem) {
136
- var _dependItem$isTouched;
137
- switch (dependItem.action) {
138
- case 'hidden':
139
- // 多条 hidden 规则,只有全部为 true 时才隐藏(即“与”关系)
140
- if (typeof hidden === 'undefined' || hidden) hidden = isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem);
141
- break;
142
- case 'show':
143
- if (typeof show === 'undefined' || show) show = isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem);
144
- break;
145
- case 'disabled':
146
- if (typeof disabled === 'undefined' || disabled) disabled = isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem);
147
- break;
148
- case 'clear':
149
- if (typeof clear === 'undefined' || clear) clear = isTouchedFn(dependItem.field, (_dependItem$isTouched = dependItem.isTouched) !== null && _dependItem$isTouched !== void 0 ? _dependItem$isTouched : true) && judge(dependItem);
150
- break;
151
- case 'updateData':
152
- if (typeof updateData === 'undefined' || updateData) updateData = isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem);
153
- break;
154
- case 'syncValue':
155
- if (typeof syncValue === 'undefined' || syncValue) syncValue = isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem);
156
- break;
157
- default:
158
- console.error('错误的 dependenciesV2 action 配置');
159
- break;
160
- }
161
- });
135
+ // console.log(data, dependMap)
136
+ Object.values(dependMap).forEach(function (dependItem) {
137
+ var _dependItem$isTouched;
138
+ switch (dependItem.action) {
139
+ case 'hidden':
140
+ // 多条 hidden 规则,只有全部为 true 时才隐藏(即“与”关系)
141
+ if (typeof hidden === 'undefined' || hidden) hidden = isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem);
142
+ break;
143
+ case 'show':
144
+ if (typeof show === 'undefined' || show) show = isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem);
145
+ break;
146
+ case 'disabled':
147
+ if (typeof disabled === 'undefined' || disabled) disabled = isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem);
148
+ break;
149
+ case 'clear':
150
+ if (typeof clear === 'undefined' || clear) clear = isTouchedFn(dependItem.field, (_dependItem$isTouched = dependItem.isTouched) !== null && _dependItem$isTouched !== void 0 ? _dependItem$isTouched : true) && judge(dependItem);
151
+ break;
152
+ case 'updateData':
153
+ if (typeof updateData === 'undefined' || updateData) updateData = isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem);
154
+ break;
155
+ case 'syncValue':
156
+ if (typeof syncValue === 'undefined' || syncValue) syncValue = isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem);
157
+ break;
158
+ default:
159
+ console.error('错误的 dependenciesV2 action 配置');
160
+ break;
161
+ }
162
+ });
162
163
 
163
- // 处理冲突:hidden 优先级最高,满足则直接 return null,不渲染
164
- if (hidden) return null;
165
- // show 存在时,只有全部 show 规则都为 true 才显示,否则 return null
166
- if (typeof show === 'boolean' && !show) return null;
164
+ // 处理冲突:hidden 优先级最高,满足则直接 return null,不渲染
165
+ if (hidden) return null;
166
+ // show 存在时,只有全部 show 规则都为 true 才显示,否则 return null
167
+ if (typeof show === 'boolean' && !show) return null;
167
168
 
168
- // 实时修改 fieldProps,disabled 联动
169
- var fieldProps = ((_config$item = config.item) === null || _config$item === void 0 ? void 0 : _config$item.fieldProps) || {};
170
- config.item.fieldProps = _objectSpread(_objectSpread({}, fieldProps), {}, {
171
- disabled: disabled
172
- });
169
+ // 实时修改 fieldProps,disabled 联动
170
+ var fieldProps = ((_config$item = config.item) === null || _config$item === void 0 ? void 0 : _config$item.fieldProps) || {};
171
+ config.item.fieldProps = _objectSpread(_objectSpread({}, fieldProps), {}, {
172
+ disabled: disabled
173
+ });
173
174
 
174
- // clear 联动,满足全部 clear 规则时清空当前字段
175
- if (clear) {
176
- setTimeout(function () {
177
- form.setFields([{
178
- name: keyStr,
179
- value: undefined,
180
- touched: false,
181
- validated: false
182
- }]);
183
- });
184
- }
175
+ // clear 联动,满足全部 clear 规则时清空当前字段
176
+ if (clear) {
177
+ setTimeout(function () {
178
+ form.setFields([{
179
+ name: keyStr,
180
+ value: undefined,
181
+ touched: false,
182
+ validated: false
183
+ }]);
184
+ });
185
+ }
185
186
 
186
- // updateData 联动,满足全部 updateData 规则时缓存依赖数据
187
- if (updateData) {
188
- dependenciesSearchCacheData[keyStr] = data;
189
- }
187
+ // updateData 联动,满足全部 updateData 规则时缓存依赖数据
188
+ if (updateData) {
189
+ dependenciesSearchCacheData[keyStr] = data;
190
+ }
190
191
 
191
- // syncValue 联动,满足全部 syncValue 规则时同步指定字段的值
192
- if (syncValue) {
193
- // 只取第一个 syncValue 规则对应的字段
194
- var key = item.dependenciesV2.find(function (ii) {
195
- return ii.action === 'syncValue';
196
- }).field;
197
- setTimeout(function () {
198
- form.setFields([{
199
- name: keyStr,
200
- value: data[key],
201
- touched: false
202
- }]);
203
- });
204
- }
192
+ // syncValue 联动,满足全部 syncValue 规则时同步指定字段的值
193
+ if (syncValue) {
194
+ // 只取第一个 syncValue 规则对应的字段
195
+ var key = item.dependenciesV2.find(function (ii) {
196
+ return ii.action === 'syncValue';
197
+ }).field;
198
+ setTimeout(function () {
199
+ form.setFields([{
200
+ name: keyStr,
201
+ value: data[key],
202
+ touched: false
203
+ }]);
204
+ });
205
+ }
205
206
 
206
- // 渲染最终组件,数据优先取 updateData 缓存
207
- return renderComponentNode(config, dependenciesSearchCacheData[keyStr] || {}, form);
208
- });
209
- }
210
- if (item.dependencies) {
211
- // 获取依赖字段
212
- var _processDependencyFie = processDependencyFields(item.dependencies),
213
- _allFields = _processDependencyFie.allFields,
214
- visibleFields = _processDependencyFie.visibleFields,
215
- valueFields = _processDependencyFie.valueFields,
216
- searchFields = _processDependencyFie.searchFields,
217
- disabledFields = _processDependencyFie.disabledFields;
218
- return /*#__PURE__*/React.createElement(ProFormDependency, {
219
- name: _allFields,
220
- key: keyStr
221
- }, function (values, form) {
222
- var valueStr = JSON.stringify(values);
223
- // 禁用联动逻辑
224
- var shouldDisabled = disabledFields.every(function (field) {
225
- return values[field] !== undefined && values[field] !== false && values[field].length !== 0;
226
- });
227
- if ((disabledFields === null || disabledFields === void 0 ? void 0 : disabledFields.length) > 0 && shouldDisabled) {
228
- var _config$item2;
229
- var fieldProps = ((_config$item2 = config.item) === null || _config$item2 === void 0 ? void 0 : _config$item2.fieldProps) || {};
230
- config.item.fieldProps = _objectSpread(_objectSpread({}, fieldProps), {}, {
231
- disabled: true
232
- });
233
- }
207
+ // 渲染最终组件,数据优先取 updateData 缓存
208
+ return renderComponentNode(config, dependenciesSearchCacheData[keyStr] || {}, form);
209
+ }
210
+ }, keyStr);
211
+ }
212
+ if (item.dependencies) {
213
+ // 获取依赖字段
214
+ var _processDependencyFie = processDependencyFields(item.dependencies),
215
+ _allFields = _processDependencyFie.allFields,
216
+ visibleFields = _processDependencyFie.visibleFields,
217
+ valueFields = _processDependencyFie.valueFields,
218
+ searchFields = _processDependencyFie.searchFields,
219
+ disabledFields = _processDependencyFie.disabledFields;
220
+ return /*#__PURE__*/_jsx(ProFormDependency, {
221
+ name: _allFields,
222
+ children: function children(values, form) {
223
+ var valueStr = JSON.stringify(values);
224
+ // 禁用联动逻辑
225
+ var shouldDisabled = disabledFields.every(function (field) {
226
+ return values[field] !== undefined && values[field] !== false && values[field].length !== 0;
227
+ });
228
+ if ((disabledFields === null || disabledFields === void 0 ? void 0 : disabledFields.length) > 0 && shouldDisabled) {
229
+ var _config$item2;
230
+ var fieldProps = ((_config$item2 = config.item) === null || _config$item2 === void 0 ? void 0 : _config$item2.fieldProps) || {};
231
+ config.item.fieldProps = _objectSpread(_objectSpread({}, fieldProps), {}, {
232
+ disabled: true
233
+ });
234
+ }
234
235
 
235
- // 显隐联动逻辑
236
- var shouldShow = visibleFields.every(function (field) {
237
- return values[field] !== undefined && values[field] !== false && values[field].length !== 0;
238
- });
239
- if (!shouldShow) return null;
240
- // 赋值联动逻辑 如果只有一个值依赖字段,同步值,多个赋值联动则不触发
241
- if (valueFields.length === 1) {
242
- setTimeout(function () {
243
- form.setFieldValue(keyStr, values[valueFields[0]]);
244
- });
245
- }
246
- // 数据源联动逻辑
247
- if (searchFields.length > 0 && dependenciesSearchCache[keyStr] !== valueStr && form.isFieldsTouched(searchFields)
248
- // searchFields.some(field => form.isFieldTouched(field))
249
- ) {
250
- dependenciesSearchCache[keyStr] = valueStr;
251
- setTimeout(function () {
252
- form.setFieldValue(keyStr, undefined);
253
- });
254
- }
255
- return renderComponentNode(config, values, form);
256
- });
257
- }
258
- return renderComponentNode(config, {}, topForm);
259
- }));
236
+ // 显隐联动逻辑
237
+ var shouldShow = visibleFields.every(function (field) {
238
+ return values[field] !== undefined && values[field] !== false && values[field].length !== 0;
239
+ });
240
+ if (!shouldShow) return null;
241
+ // 赋值联动逻辑 如果只有一个值依赖字段,同步值,多个赋值联动则不触发
242
+ if (valueFields.length === 1) {
243
+ setTimeout(function () {
244
+ form.setFieldValue(keyStr, values[valueFields[0]]);
245
+ });
246
+ }
247
+ // 数据源联动逻辑
248
+ if (searchFields.length > 0 && dependenciesSearchCache[keyStr] !== valueStr && form.isFieldsTouched(searchFields)
249
+ // searchFields.some(field => form.isFieldTouched(field))
250
+ ) {
251
+ dependenciesSearchCache[keyStr] = valueStr;
252
+ setTimeout(function () {
253
+ form.setFieldValue(keyStr, undefined);
254
+ });
255
+ }
256
+ return renderComponentNode(config, values, form);
257
+ }
258
+ }, keyStr);
259
+ }
260
+ return renderComponentNode(config, {}, topForm);
261
+ })]
262
+ });
260
263
  };