@teamix/pro 1.3.7 → 1.3.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.
@@ -65,8 +65,6 @@ var _fieldTypeMap = _interopRequireDefault(require("../fieldTypeMap"));
65
65
 
66
66
  var _utils = require("../utils");
67
67
 
68
- var _utils2 = require("@teamix/utils");
69
-
70
68
  var _warning = _interopRequireDefault(require("../warning"));
71
69
 
72
70
  var _excluded = ["component", "type", "name", "decorator", "decoratorProps", "dataSource", "reactions", "rules", "children", "items", "tooltip", "request", "data"];
@@ -111,16 +109,11 @@ var _default = /*#__PURE__*/(0, _react.memo)(function (_ref) {
111
109
  var schema = _ref.schema,
112
110
  scope = _ref.scope,
113
111
  components = _ref.components;
114
-
115
- // 获取全局配置
116
- var _ref2 = (0, _utils2.getGlobalConfig)('ProForm') || {},
117
- globalComponents = _ref2.components,
118
- globalScope = _ref2.scope; // 创建 SchemaField
119
-
112
+ var schemaScopeRef = (0, _react.useRef)({}); // 创建 SchemaField,添加内置组件
120
113
 
121
114
  var SchemaField = (0, _react.useMemo)(function () {
122
115
  return (0, _react2.createSchemaField)({
123
- components: _objectSpread(_objectSpread(_objectSpread({}, globalComponents), _ProField.default), {}, {
116
+ components: _objectSpread(_objectSpread({}, _ProField.default), {}, {
124
117
  FormLayout: _formily.FormLayout,
125
118
  FormItem: _formily.FormItem,
126
119
  ArrayCollapse: _formily.ArrayCollapse,
@@ -149,16 +142,7 @@ var _default = /*#__PURE__*/(0, _react.memo)(function (_ref) {
149
142
  Text: _index.default
150
143
  })
151
144
  });
152
- }, []); // 合并 schema 中 request 的 scope
153
-
154
- var mergedScope = (0, _react.useMemo)(function () {
155
- return _objectSpread(_objectSpread(_objectSpread({}, globalScope), scope), {}, {
156
- $request: _reactions.$request,
157
- $common: _reactions.$common,
158
- $dataSource: _reactions.$dataSource,
159
- $validator: _reactions.$validator
160
- });
161
- }, [scope]); // 格式化 schema
145
+ }, []); // 格式化 schema
162
146
 
163
147
  var formatSchema = (0, _react.useCallback)(function (schema) {
164
148
  var parentSuffix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
@@ -277,12 +261,12 @@ var _default = /*#__PURE__*/(0, _react.memo)(function (_ref) {
277
261
 
278
262
  var defaultReactions = (0, _initializeReactions.default)(reactions, [].concat(_toConsumableArray(requestReactions), _toConsumableArray(dataSourceReactions))); // 合并scope
279
263
 
280
- Object.entries(_objectSpread(_objectSpread(_objectSpread({}, requestScope), dataSourceScope), rulesScope)).map(function (_ref3) {
281
- var _ref4 = _slicedToArray(_ref3, 2),
282
- k = _ref4[0],
283
- v = _ref4[1];
264
+ Object.entries(_objectSpread(_objectSpread(_objectSpread({}, requestScope), dataSourceScope), rulesScope)).map(function (_ref2) {
265
+ var _ref3 = _slicedToArray(_ref2, 2),
266
+ k = _ref3[0],
267
+ v = _ref3[1];
284
268
 
285
- mergedScope[k] = v;
269
+ schemaScopeRef.current[k] = v;
286
270
  });
287
271
  var formatParam = (0, _utils.mapSchemaName)(_objectSpread(_objectSpread({}, otherProps), {}, {
288
272
  type: defaultType,
@@ -307,13 +291,20 @@ var _default = /*#__PURE__*/(0, _react.memo)(function (_ref) {
307
291
  schemaProperties[name] = _objectSpread(_objectSpread(_objectSpread({}, formatParam), recursiveProperties), recursiveItems);
308
292
  });
309
293
  return schemaProperties;
310
- }, [mergedScope]);
294
+ }, []);
311
295
  var formilySchema = (0, _react.useMemo)(function () {
312
296
  return {
313
297
  type: 'object',
314
298
  properties: formatSchema(schema)
315
299
  };
316
- }, [schema]); // console.log(formilySchema);
300
+ }, [schema]);
301
+
302
+ var mergedScope = _objectSpread(_objectSpread({}, scope), {}, {
303
+ $request: _reactions.$request,
304
+ $common: _reactions.$common,
305
+ $dataSource: _reactions.$dataSource,
306
+ $validator: _reactions.$validator
307
+ }, schemaScopeRef.current);
317
308
 
318
309
  return /*#__PURE__*/_react.default.createElement(SchemaField, {
319
310
  schema: formilySchema,
package/lib/index.d.ts CHANGED
@@ -26,5 +26,5 @@ export * from './table';
26
26
  export * from './sidebar';
27
27
  export * from './utils';
28
28
  export * from './timeline';
29
- declare const version = "1.3.7";
29
+ declare const version = "1.3.10";
30
30
  export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, ProSidebar, ProTimeline, hooks, nocode, templates, utils, };
package/lib/index.js CHANGED
@@ -305,5 +305,5 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
305
305
  // 设置图标源
306
306
  _icon.default.setConfig(_utils.default.getTeamixIconConfig());
307
307
 
308
- var version = '1.3.7';
308
+ var version = '1.3.10';
309
309
  exports.version = version;
@@ -13,8 +13,6 @@ var _react = _interopRequireWildcard(require("react"));
13
13
 
14
14
  var _treeNode = require("../tree-node");
15
15
 
16
- var _lodash = _interopRequireDefault(require("lodash.debounce"));
17
-
18
16
  require("./index.scss");
19
17
 
20
18
  require("../tree-node/index.scss");
@@ -25,7 +23,7 @@ var _hooks = require("@teamix/hooks");
25
23
 
26
24
  var _actionRef = require("../../utils/action-ref");
27
25
 
28
- var _lodash2 = _interopRequireDefault(require("lodash.clonedeep"));
26
+ var _lodash = _interopRequireDefault(require("lodash.clonedeep"));
29
27
 
30
28
  var _excluded = ["dataSource", "selectedKeys", "checkedKeys", "defaultExpandedKeys", "defaultExpandAll", "expandedKeys", "onSelect", "onCheck", "isNodeBlock", "searchKey", "actionRef", "onBeforeRenderNodeEvent", "beforeRenderNode", "className", "expandAll", "onDataSourceChange", "expandLevel"];
31
29
 
@@ -95,7 +93,7 @@ var ProSidebarTree = function ProSidebarTree(props) {
95
93
 
96
94
 
97
95
  var processDataSource = function processDataSource(dataSource) {
98
- var newDataSource = (0, _lodash2.default)(dataSource);
96
+ var newDataSource = (0, _lodash.default)(dataSource);
99
97
 
100
98
  if (beforeRenderNode) {
101
99
  (0, _utils2.loop)(newDataSource, function (item, level) {
@@ -145,7 +143,11 @@ var ProSidebarTree = function ProSidebarTree(props) {
145
143
 
146
144
  (0, _react.useEffect)(function () {
147
145
  setDefaultExpandedKeys();
148
- }, []); // 更新外部传入的 dataSource
146
+ }, []); // 监听 selectedKeys,用于受控
147
+
148
+ (0, _react.useEffect)(function () {
149
+ setSelectedKeys(selectedKeysProp);
150
+ }, [selectedKeysProp]); // 更新外部传入的 dataSource
149
151
 
150
152
  (0, _hooks.useUpdateEffect)(function () {
151
153
  setDataSource(processDataSource(dataSourceProp !== null && dataSourceProp !== void 0 ? dataSourceProp : []));
@@ -170,7 +172,7 @@ var ProSidebarTree = function ProSidebarTree(props) {
170
172
 
171
173
  (0, _actionRef.useActionType)(actionRef, {
172
174
  setTreeNode: function setTreeNode(treeNode) {
173
- var newDataSource = (0, _lodash2.default)(dataSource); // TODO 此处可做性能优化
175
+ var newDataSource = (0, _lodash.default)(dataSource); // TODO 此处可做性能优化
174
176
 
175
177
  (0, _utils2.loop)(newDataSource, function (item) {
176
178
  if (item.value === treeNode.value) {
@@ -235,7 +237,7 @@ var ProSidebarTree = function ProSidebarTree(props) {
235
237
  }; // 过滤
236
238
 
237
239
 
238
- var filterDataSource = (0, _lodash.default)(function (value) {
240
+ var filterDataSource = function filterDataSource(value) {
239
241
  var searchDataSource = processDataSource(dataSourceProp !== null && dataSourceProp !== void 0 ? dataSourceProp : []);
240
242
  var expandedKeys = [];
241
243
 
@@ -247,21 +249,22 @@ var ProSidebarTree = function ProSidebarTree(props) {
247
249
  return;
248
250
  }
249
251
 
250
- (0, _utils2.loop)(searchDataSource, function (item) {
252
+ var _filterTreeData = (0, _utils2.filterTreeData)(searchDataSource, function (node) {
253
+ var _node$label;
254
+
255
+ return ((_node$label = node === null || node === void 0 ? void 0 : node.label) !== null && _node$label !== void 0 ? _node$label : '').includes(value);
256
+ }),
257
+ filterTreeValue = _filterTreeData.filterTreeValue;
258
+
259
+ (0, _utils2.loop)(filterTreeValue, function (item) {
251
260
  hasSearchValue(value, item) && expandedKeys.push(String(item['value']));
252
261
  }, {
253
262
  children: 'children'
254
263
  });
255
- setExpandedKeys([].concat(expandedKeys));
256
264
  setMatchedKeys(matchedKeys);
257
265
  handleExpand(expandedKeys);
258
- var filterDataSource = (0, _utils2.findNodeWithPath)(searchDataSource, function (node) {
259
- var _node$label;
260
-
261
- return ((_node$label = node === null || node === void 0 ? void 0 : node.label) !== null && _node$label !== void 0 ? _node$label : '').includes(value);
262
- });
263
- setDataSource(filterDataSource);
264
- }, 100);
266
+ setDataSource(filterTreeValue);
267
+ };
265
268
 
266
269
  var filterTreeNode = function filterTreeNode(node) {
267
270
  return matchedKeys && matchedKeys.indexOf(node.props.eventKey) > -1;
@@ -22,6 +22,8 @@ var _ = require("..");
22
22
 
23
23
  var _actionRef = require("./utils/action-ref");
24
24
 
25
+ var _lodash = _interopRequireDefault(require("lodash.debounce"));
26
+
25
27
  var _typing = require("./typing");
26
28
 
27
29
  Object.keys(_typing).forEach(function (key) {
@@ -88,7 +90,7 @@ var ProSidebar = function ProSidebar(props) {
88
90
  _props$className = props.className,
89
91
  className = _props$className === void 0 ? '' : _props$className,
90
92
  style = props.style,
91
- _searchOnChange = props.searchOnChange,
93
+ searchOnChange = props.searchOnChange,
92
94
  _props$showSearch = props.showSearch,
93
95
  showSearch = _props$showSearch === void 0 ? true : _props$showSearch,
94
96
  onSelect = props.onSelect,
@@ -222,12 +224,12 @@ var ProSidebar = function ProSidebar(props) {
222
224
  }), " ").concat(className),
223
225
  style: style
224
226
  }, /*#__PURE__*/_react.default.createElement(_sidebarContainer.default, _objectSpread(_objectSpread({
225
- searchOnChange: function searchOnChange(value) {
227
+ searchOnChange: (0, _lodash.default)(function (value) {
226
228
  if (showSearch) {
227
- _searchOnChange === null || _searchOnChange === void 0 ? void 0 : _searchOnChange(value);
229
+ searchOnChange === null || searchOnChange === void 0 ? void 0 : searchOnChange(value);
228
230
  setSearchKey(value);
229
231
  }
230
- },
232
+ }, 300),
231
233
  onExpandAllChange: onExpandAllChange,
232
234
  onExpandLevelChange: onExpandLevelChange,
233
235
  showSearch: showSearch,
@@ -69,3 +69,15 @@ export declare function getTreeLevelKey(data: any[], level: number, aliasMap?: {
69
69
  key: string;
70
70
  children: string;
71
71
  }): any[];
72
+ /**
73
+ * 深度遍历并查找节点(展开查找到的字节点路径)
74
+ * @param nodes 数据
75
+ * @param predicate 条件
76
+ * @param aliasMap 标识
77
+ * @returns
78
+ */
79
+ export declare function filterTreeData<T>(nodes: any[], predicate: (node: T) => boolean, aliasMap?: {
80
+ children: string;
81
+ }): {
82
+ filterTreeValue: T[];
83
+ };
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.filterTreeData = filterTreeData;
6
7
  exports.findNodeWithPath = findNodeWithPath;
7
8
  exports.findNodeWithoutPath = findNodeWithoutPath;
8
9
  exports.getAllNodeKey = getAllNodeKey;
@@ -11,6 +12,8 @@ exports.getTreeLevelKey = getTreeLevelKey;
11
12
  exports.getTreeNodeLevel = getTreeNodeLevel;
12
13
  exports.loop = loop;
13
14
 
15
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
16
+
14
17
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
18
 
16
19
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
@@ -244,4 +247,61 @@ function getTreeLevelKey(data, level, aliasMap) {
244
247
  children: children
245
248
  });
246
249
  return result;
250
+ }
251
+ /**
252
+ * 深度遍历并查找节点(展开查找到的字节点路径)
253
+ * @param nodes 数据
254
+ * @param predicate 条件
255
+ * @param aliasMap 标识
256
+ * @returns
257
+ */
258
+
259
+
260
+ function filterTreeData(nodes, predicate, aliasMap) {
261
+ if (!(nodes && nodes.length)) {
262
+ return {
263
+ filterTreeValue: []
264
+ };
265
+ }
266
+
267
+ var _ref8 = aliasMap !== null && aliasMap !== void 0 ? aliasMap : {},
268
+ _ref8$children = _ref8.children,
269
+ children = _ref8$children === void 0 ? 'children' : _ref8$children;
270
+
271
+ var filterTreeValue = [];
272
+
273
+ var _iterator2 = _createForOfIteratorHelper(nodes),
274
+ _step2;
275
+
276
+ try {
277
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
278
+ var node = _step2.value;
279
+
280
+ var others = _extends({}, node);
281
+
282
+ if (predicate(node)) {
283
+ var _node$children3;
284
+
285
+ filterTreeValue.push(_objectSpread(_objectSpread({}, others), {}, {
286
+ children: filterTreeData((_node$children3 = node[children]) !== null && _node$children3 !== void 0 ? _node$children3 : [], predicate, aliasMap).filterTreeValue
287
+ }));
288
+ } else {
289
+ var subs = filterTreeData(node[children], predicate, aliasMap);
290
+
291
+ if (subs && subs.filterTreeValue.length) {
292
+ filterTreeValue.push(_objectSpread(_objectSpread({}, others), {}, {
293
+ children: subs.filterTreeValue
294
+ }));
295
+ }
296
+ }
297
+ }
298
+ } catch (err) {
299
+ _iterator2.e(err);
300
+ } finally {
301
+ _iterator2.f();
302
+ }
303
+
304
+ return {
305
+ filterTreeValue: filterTreeValue
306
+ };
247
307
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@teamix/pro",
3
- "version": "1.3.7",
3
+ "version": "1.3.10",
4
4
  "description": "TeamixPro大包",
5
5
  "keywords": [
6
6
  "aliyun",
@@ -38,7 +38,7 @@
38
38
  "dependencies": {
39
39
  "@formily/core": "2.0.15",
40
40
  "@formily/react": "2.0.15",
41
- "@teamix/formily": "2.0.15",
41
+ "@teamix/formily": "2.0.15-1",
42
42
  "@teamix/hooks": "^0.1.0",
43
43
  "@teamix/pop-confirm": "^1.2.4",
44
44
  "@teamix/pro-field": "^1.0.0",