@teamix/pro 1.3.6 → 1.3.9

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 (66) hide show
  1. package/dist/pro.css +1 -1
  2. package/dist/pro.js +3664 -10438
  3. package/dist/pro.min.css +1 -1
  4. package/dist/pro.min.js +1 -1
  5. package/dist/pro.min.js.LICENSE.txt +0 -9
  6. package/es/actions/dialog-form.d.ts +2 -0
  7. package/es/actions/dialog-form.js +5 -2
  8. package/es/actions/dialog.js +8 -3
  9. package/es/actions/index.d.ts +5 -1
  10. package/es/actions/index.js +30 -9
  11. package/es/form/Components/LightFilter/index.js +8 -6
  12. package/es/form/Filter/LightFilter.js +12 -2
  13. package/es/form/Filter/useSpecialProps.js +2 -2
  14. package/es/form/ProForm/index.js +20 -10
  15. package/es/form/ProForm/index.scss +16 -8
  16. package/es/form/SchemaForm/index.js +18 -26
  17. package/es/form/SchemaForm/reactions.js +2 -2
  18. package/es/form/typing.d.ts +1 -0
  19. package/es/index.d.ts +1 -1
  20. package/es/index.js +1 -1
  21. package/es/info/components/ProInfoItem/index.js +2 -6
  22. package/es/info/components/ProInfoItem/index.scss +0 -4
  23. package/es/info/components/baseInfo/index.js +15 -8
  24. package/es/info/typing.d.ts +1 -2
  25. package/es/info/utils/index.d.ts +0 -8
  26. package/es/info/utils/index.js +1 -28
  27. package/es/sidebar/components/tree/index.js +17 -13
  28. package/es/sidebar/components/tree-node/components/IconSwitch/index.js +1 -1
  29. package/es/sidebar/index.js +5 -4
  30. package/es/sidebar/utils/index.d.ts +12 -0
  31. package/es/sidebar/utils/index.js +58 -0
  32. package/es/table/components/Pagination/index.js +4 -4
  33. package/es/table/components/ToolBar/FilterColumnIcon.js +5 -1
  34. package/es/table/index.js +9 -4
  35. package/es/table/typing.d.ts +3 -1
  36. package/lib/actions/dialog-form.d.ts +2 -0
  37. package/lib/actions/dialog-form.js +5 -2
  38. package/lib/actions/dialog.js +8 -3
  39. package/lib/actions/index.d.ts +5 -1
  40. package/lib/actions/index.js +29 -7
  41. package/lib/form/Components/LightFilter/index.js +5 -3
  42. package/lib/form/Filter/LightFilter.js +14 -2
  43. package/lib/form/Filter/useSpecialProps.js +1 -1
  44. package/lib/form/ProForm/index.js +19 -9
  45. package/lib/form/ProForm/index.scss +16 -8
  46. package/lib/form/SchemaForm/index.js +17 -26
  47. package/lib/form/SchemaForm/reactions.js +1 -1
  48. package/lib/form/typing.d.ts +1 -0
  49. package/lib/index.d.ts +1 -1
  50. package/lib/index.js +1 -1
  51. package/lib/info/components/ProInfoItem/index.js +2 -6
  52. package/lib/info/components/ProInfoItem/index.scss +0 -4
  53. package/lib/info/components/baseInfo/index.js +14 -7
  54. package/lib/info/typing.d.ts +1 -2
  55. package/lib/info/utils/index.d.ts +0 -8
  56. package/lib/info/utils/index.js +1 -32
  57. package/lib/sidebar/components/tree/index.js +19 -16
  58. package/lib/sidebar/components/tree-node/components/IconSwitch/index.js +1 -1
  59. package/lib/sidebar/index.js +6 -4
  60. package/lib/sidebar/utils/index.d.ts +12 -0
  61. package/lib/sidebar/utils/index.js +60 -0
  62. package/lib/table/components/Pagination/index.js +3 -3
  63. package/lib/table/components/ToolBar/FilterColumnIcon.js +5 -1
  64. package/lib/table/index.js +8 -3
  65. package/lib/table/typing.d.ts +3 -1
  66. package/package.json +18 -4
@@ -197,14 +197,15 @@
197
197
  margin-right: 4px;
198
198
  }
199
199
  }
200
- // 数组类ArrayItem Icon 居中(移除,通过align:center配置)
201
- // .#{$form-array}-items-item-inner {
202
- // .#{$css-prefix}space-item {
203
- // > .#{$css-prefix}formily-icon {
204
- // margin-top: 9px;
205
- // }
206
- // }
207
- // }
200
+ // 数组类ArrayItem Icon text 居中
201
+ .#{$form-array}-items-item-inner {
202
+ .#{$css-prefix}space-item {
203
+ > .#{$css-prefix}formily-icon.#{$css-prefix}btn-text {
204
+ line-height: inherit !important;
205
+ margin-right: 0;
206
+ }
207
+ }
208
+ }
208
209
 
209
210
  // Editable预览态行高
210
211
  .#{$css-prefix}formily-editable-content {
@@ -212,6 +213,13 @@
212
213
  }
213
214
 
214
215
  // 折叠面板
216
+ .#{$css-prefix}formily-collapse {
217
+ .#{$css-prefix}collapse-panel-title {
218
+ .#{$css-prefix}badge-count {
219
+ transform: translateX(4px);
220
+ }
221
+ }
222
+ }
215
223
  .#{$css-prefix}formily-collapse,
216
224
  .#{$form-array}-collapse-item {
217
225
  .#{$css-prefix}collapse-panel-hidden {
@@ -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,
@@ -37,7 +37,7 @@ var $request = function $request(field, _ref, context, type) {
37
37
  // 触发所有配置的请求
38
38
 
39
39
  var refresh = (_field$data = field.data) === null || _field$data === void 0 ? void 0 : _field$data.refresh;
40
- var refreshResult = (0, _utils.isPureObj)(refresh) ? refresh : {};
40
+ var refreshResult = (0, _utils.isPlainObj)(refresh) ? refresh : {};
41
41
  return (0, _utils.doCommonRequest)(_objectSpread(_objectSpread({}, requestConfig), {}, {
42
42
  params: _objectSpread(_objectSpread(_objectSpread({}, params), beforeRequestResult), refreshResult),
43
43
  beforeRequest: function beforeRequest() {
@@ -66,6 +66,7 @@ export interface ProFormProps extends IFormLayoutProps {
66
66
  initialValues?: AnyObject;
67
67
  initialRequest?: ProFormRequestConfig;
68
68
  previewTextPlaceholder?: ReactNode;
69
+ validateFirst?: boolean;
69
70
  onChange?: (values: any, fieldValue?: any, fieldName?: any) => any;
70
71
  onSubmit?: ((values: any) => any) | CommonRequestConfig;
71
72
  onSubmitFailed?: (feedbacks: IFormFeedback[]) => void;
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.6";
29
+ declare const version = "1.3.9";
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.6';
308
+ var version = '1.3.9';
309
309
  exports.version = version;
@@ -28,17 +28,13 @@ var ProInfoItem = function ProInfoItem(prop) {
28
28
  headerInfoLayout = prop.headerInfoLayout,
29
29
  loading = prop.loading,
30
30
  tooltip = prop.tooltip,
31
- tooltipIcon = prop.tooltipIcon,
32
- _isLastRow = prop._isLastRow;
31
+ tooltipIcon = prop.tooltipIcon;
33
32
 
34
33
  if (baseInfoLayout) {
35
34
  var labelCol = baseInfoLayout.labelCol,
36
35
  wrapperCol = baseInfoLayout.wrapperCol;
37
36
  return /*#__PURE__*/_react.default.createElement("div", {
38
- className: cls({
39
- '': true,
40
- isLastRow: _isLastRow
41
- })
37
+ className: cls('')
42
38
  }, /*#__PURE__*/_react.default.createElement(Row, {
43
39
  gutter: 10,
44
40
  className: cls('base-row')
@@ -17,10 +17,6 @@ $item-padding-bottom: 8px;
17
17
  .teamix-pro-field-info-form-item {
18
18
  width: 100%;
19
19
  padding-bottom: $item-padding-bottom;
20
- &-isLastRow{
21
- padding-bottom: unset;
22
- }
23
-
24
20
  &-header-row {
25
21
  display: flex;
26
22
  align-items: center;
@@ -45,23 +45,33 @@ var ProBaseInfo = function ProBaseInfo(props) {
45
45
  var formItemLayout = JSON.parse(JSON.stringify(defaultLayout.formItemLayout)); // 自定义布局
46
46
 
47
47
  if (layout) {
48
- var _layout$labelCol, _layout$wrapperCol;
48
+ var _layout$labelCol, _layout$wrapperCol, _layout$span;
49
49
 
50
50
  var labelCol = (_layout$labelCol = layout === null || layout === void 0 ? void 0 : layout.labelCol) !== null && _layout$labelCol !== void 0 ? _layout$labelCol : defaultLayout.formItemLayout.labelCol;
51
51
  var wrapperCol = (_layout$wrapperCol = layout === null || layout === void 0 ? void 0 : layout.wrapperCol) !== null && _layout$wrapperCol !== void 0 ? _layout$wrapperCol : defaultLayout.formItemLayout.wrapperCol;
52
+ var span = (_layout$span = layout === null || layout === void 0 ? void 0 : layout.span) !== null && _layout$span !== void 0 ? _layout$span : defaultLayout.span;
53
+
54
+ if ((layout === null || layout === void 0 ? void 0 : layout.colNum) && layout.colNum > 0 && layout.colNum <= 4) {
55
+ span = 24 / layout.colNum;
56
+ }
57
+
58
+ formItemLayout.span = span;
52
59
  formItemLayout.labelCol = labelCol;
53
60
  formItemLayout.wrapperCol = wrapperCol;
54
61
  }
55
62
 
63
+ var newSpan = formItemLayout.span;
56
64
  var newLabelSpan = formItemLayout.labelCol.span;
57
65
  var newWrapperSpan = formItemLayout.wrapperCol.span; // 计算合并列情况。label与wrapper需要重新计算
58
66
 
59
67
  if (colspan) {
68
+ newSpan = newSpan * (colspan !== null && colspan !== void 0 ? colspan : 1);
60
69
  newLabelSpan = newLabelSpan / colspan;
61
70
  newWrapperSpan = newWrapperSpan + (formItemLayout.labelCol.span - newLabelSpan);
62
71
  }
63
72
 
64
73
  var newFormItemLayout = {
74
+ span: newSpan,
65
75
  labelCol: {
66
76
  span: newLabelSpan
67
77
  },
@@ -74,17 +84,14 @@ var ProBaseInfo = function ProBaseInfo(props) {
74
84
 
75
85
  var renderContent = function renderContent() {
76
86
  return columns.map(function (item, index) {
77
- var _layout$span, _layout$span2, _item$title, _item$valueType, _ref, _item$colSpan;
87
+ var _getFormItemLayout, _item$colSpan, _item$title, _item$valueType, _ref, _item$colSpan2;
78
88
 
79
- var span = item.colSpan ? defaultLayout.span * item.colSpan : defaultLayout.span;
80
- var layoutSpan = item.colSpan ? ((_layout$span = layout === null || layout === void 0 ? void 0 : layout.span) !== null && _layout$span !== void 0 ? _layout$span : span) * item.colSpan : (_layout$span2 = layout === null || layout === void 0 ? void 0 : layout.span) !== null && _layout$span2 !== void 0 ? _layout$span2 : span;
81
89
  return /*#__PURE__*/_react.default.createElement(Col, {
82
- span: layoutSpan,
90
+ span: (_getFormItemLayout = getFormItemLayout((_item$colSpan = item === null || item === void 0 ? void 0 : item.colSpan) !== null && _item$colSpan !== void 0 ? _item$colSpan : 0)) === null || _getFormItemLayout === void 0 ? void 0 : _getFormItemLayout.span,
83
91
  key: index
84
92
  }, /*#__PURE__*/_react.default.createElement(_ProInfoItem.default, {
85
93
  label: (_item$title = item === null || item === void 0 ? void 0 : item.title) !== null && _item$title !== void 0 ? _item$title : '',
86
94
  loading: loading,
87
- _isLastRow: !!(0, _utils2.isLastRow)(columns.length, layoutSpan, index),
88
95
  value: /*#__PURE__*/_react.default.createElement(_InfoValueItem.default, {
89
96
  type: (_item$valueType = item === null || item === void 0 ? void 0 : item.valueType) !== null && _item$valueType !== void 0 ? _item$valueType : 'text',
90
97
  value: (0, _utils2.getDataIndexValue)(item.dataIndex, (_ref = dataSource !== null && dataSource !== void 0 ? dataSource : result) !== null && _ref !== void 0 ? _ref : {}),
@@ -96,7 +103,7 @@ var ProBaseInfo = function ProBaseInfo(props) {
96
103
  context: context,
97
104
  props: item.props
98
105
  }),
99
- baseInfoLayout: getFormItemLayout((_item$colSpan = item === null || item === void 0 ? void 0 : item.colSpan) !== null && _item$colSpan !== void 0 ? _item$colSpan : 0),
106
+ baseInfoLayout: getFormItemLayout((_item$colSpan2 = item === null || item === void 0 ? void 0 : item.colSpan) !== null && _item$colSpan2 !== void 0 ? _item$colSpan2 : 0),
100
107
  tooltip: item.tooltip,
101
108
  tooltipIcon: item.tooltipIcon
102
109
  }));
@@ -113,8 +113,6 @@ export declare type IProProInfoItem = {
113
113
  headerInfoLayout?: ProHeaderInfoLayoutProps;
114
114
  /** loading 状态 */
115
115
  loading?: boolean;
116
- /** isLastRow 是否是最后一行的元素 */
117
- _isLastRow?: boolean;
118
116
  } & Pick<ProInfoColumnsProps, 'tooltip' | 'tooltipIcon'>;
119
117
  /** header info 定义 */
120
118
  export declare type IProHeaderInfo = {
@@ -137,6 +135,7 @@ export declare type ProInfoProps = {
137
135
  export declare type IProHeaderInfoItem = {};
138
136
  export declare type BaseInfoLayoutProps = ProBaseInfoLayoutProps;
139
137
  export declare type ProBaseInfoLayoutProps = {
138
+ colNum?: number;
140
139
  span?: number;
141
140
  labelCol?: {
142
141
  span: number;
@@ -10,11 +10,3 @@ export declare const ProInfoGroupContext: React.Context<ProInfoGroupContextProps
10
10
  * @returns
11
11
  */
12
12
  export declare function getDataIndexValue(dataIndex: ProInfoColumnsProps['dataIndex'], dataSource: object): any;
13
- /**
14
- * 是否是最后一样的元素
15
- * @param columnsLength
16
- * @param layoutSpan
17
- * @params itemIndex
18
- * @returns
19
- */
20
- export declare const isLastRow: (columnsLength: number, layoutSpan: number, itemIndex: number) => boolean | undefined;
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.ProInfoGroupContext = void 0;
7
7
  exports.getDataIndexValue = getDataIndexValue;
8
- exports.isLastRow = void 0;
9
8
  exports.useActionType = useActionType;
10
9
 
11
10
  var _utils = require("@teamix/utils");
@@ -48,34 +47,4 @@ function getDataIndexValue(dataIndex, dataSource) {
48
47
  }
49
48
 
50
49
  return (0, _utils.getDeepValue)(dataIndex !== null && dataIndex !== void 0 ? dataIndex : '', dataSource);
51
- }
52
- /**
53
- * 是否是最后一样的元素
54
- * @param columnsLength
55
- * @param layoutSpan
56
- * @params itemIndex
57
- * @returns
58
- */
59
-
60
-
61
- var isLastRow = function isLastRow(columnsLength, layoutSpan, itemIndex) {
62
- if (!columnsLength || !layoutSpan) return;
63
- var lastRowColumnsIndexList = [];
64
- var rowCount = 24 / layoutSpan;
65
-
66
- if (columnsLength % rowCount === 0) {
67
- while (rowCount--) {
68
- lastRowColumnsIndexList.push(columnsLength--);
69
- }
70
- } else {
71
- var lastRowCount = columnsLength % rowCount;
72
-
73
- while (lastRowCount--) {
74
- lastRowColumnsIndexList.push(columnsLength--);
75
- }
76
- }
77
-
78
- return lastRowColumnsIndexList.includes(itemIndex + 1);
79
- };
80
-
81
- exports.isLastRow = isLastRow;
50
+ }
@@ -13,8 +13,6 @@ var _react = _interopRequireWildcard(require("react"));
13
13
 
14
14
  var _treeNode = require("../tree-node");
15
15
 
16
- var _lodash = require("lodash");
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.debounce)(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;
@@ -53,7 +53,7 @@ var ProIconSwitch = function ProIconSwitch(props) {
53
53
  setVisible = _useState2[1];
54
54
 
55
55
  (0, _react.useEffect)(function () {
56
- setVisible(visibleProp !== null && visibleProp !== void 0 ? visibleProp : false);
56
+ setVisible(visibleProp !== null && visibleProp !== void 0 ? visibleProp : true);
57
57
  }, [visibleProp]); // 点击操作
58
58
 
59
59
  var clickHandle = function clickHandle(e, state) {
@@ -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
  }
@@ -178,7 +178,7 @@ var _default = function _default(props) {
178
178
  return /*#__PURE__*/_react.default.createElement("div", {
179
179
  className: cls('custom-jumper')
180
180
  }, /*#__PURE__*/_react.default.createElement(_components.Button, {
181
- className: "next-prev next-pagination-item",
181
+ className: "".concat((0, _utils.usePrefixCls)(), "prev ").concat((0, _utils.usePrefixCls)(), "pagination-item"),
182
182
  onClick: handlePrevClick,
183
183
  disabled: Number(currentPage) <= 1
184
184
  }, /*#__PURE__*/_react.default.createElement(_components.Icon, {
@@ -200,7 +200,7 @@ var _default = function _default(props) {
200
200
  marginRight: 4
201
201
  }
202
202
  }, "/"), getTotalPage(total, pageSize)), /*#__PURE__*/_react.default.createElement(_components.Button, {
203
- className: "next-next next-pagination-item",
203
+ className: "".concat((0, _utils.usePrefixCls)(), "next ").concat((0, _utils.usePrefixCls)(), "pagination-item"),
204
204
  onClick: handleNextClick,
205
205
  //@ts-ignore
206
206
  disabled: total && Number(currentPage) >= getTotalPage(total, pageSize)
@@ -218,7 +218,7 @@ var _default = function _default(props) {
218
218
  }, otherProps));
219
219
  } else {
220
220
  return /*#__PURE__*/_react.default.createElement("div", {
221
- className: "".concat(cls('custom-mini-pagination'), " next-pagination")
221
+ className: "".concat(cls('custom-mini-pagination'), " ").concat((0, _utils.usePrefixCls)(), "pagination")
222
222
  }, customTotalRender(total), customJumpRender());
223
223
  }
224
224
  }
@@ -64,8 +64,12 @@ var processColumns = function processColumns(columns) {
64
64
  columns = columns.filter(function (item) {
65
65
  return item.valueType !== 'selectGroup';
66
66
  });
67
- }
67
+ } // hidden 为 true 时不展示
68
+
68
69
 
70
+ columns = columns.filter(function (item) {
71
+ return (item === null || item === void 0 ? void 0 : item.hidden) !== true;
72
+ });
69
73
  return columns.map(function (item) {
70
74
  if (item.columnFilters === false) {
71
75
  return item;
@@ -109,7 +109,7 @@ var processColumns = function processColumns(columns, initialColumns) {
109
109
  var _filterColumns;
110
110
 
111
111
  var filterColumns = columns.filter(function (item) {
112
- return item.columnFilters !== false;
112
+ return item.columnFilters !== false && (item === null || item === void 0 ? void 0 : item.hidden) !== true;
113
113
  });
114
114
 
115
115
  if (isRoot) {
@@ -313,7 +313,7 @@ var ProTable = function ProTable(props) {
313
313
 
314
314
  var tableDom = tableRef.current;
315
315
  var headerDom = tableDom === null || tableDom === void 0 ? void 0 : (_tableDom$getElements = tableDom.getElementsByClassName('teamix-pro-table-layout')) === null || _tableDom$getElements === void 0 ? void 0 : _tableDom$getElements[0];
316
- var tableHeaderDom = tableDom === null || tableDom === void 0 ? void 0 : (_tableDom$getElements2 = tableDom.getElementsByClassName('next-table-header-inner')) === null || _tableDom$getElements2 === void 0 ? void 0 : _tableDom$getElements2[0];
316
+ var tableHeaderDom = tableDom === null || tableDom === void 0 ? void 0 : (_tableDom$getElements2 = tableDom.getElementsByClassName("".concat((0, _utils.usePrefixCls)(), "table-header-inner"))) === null || _tableDom$getElements2 === void 0 ? void 0 : _tableDom$getElements2[0];
317
317
  return new Promise(function (resolve) {
318
318
  setTimeout(function () {
319
319
  var _headerDom$offsetHeig, _tableHeaderDom$offse;
@@ -736,6 +736,11 @@ var ProTable = function ProTable(props) {
736
736
  setTotal(total || (data === null || data === void 0 ? void 0 : data.length));
737
737
  setShowSkeleton(false);
738
738
  setCustomTableLoading(false);
739
+ } // 重新计算是否需要吸底
740
+
741
+
742
+ if (footerSuction) {
743
+ getFooterSuctionState();
739
744
  }
740
745
  });
741
746
  } else {
@@ -794,7 +799,7 @@ var ProTable = function ProTable(props) {
794
799
  onInit: function onInit(values) {
795
800
  // 表单初始化请求处理
796
801
  (propsDataFilter === null || propsDataFilter === void 0 ? void 0 : propsDataFilter.onInit) && (propsDataFilter === null || propsDataFilter === void 0 ? void 0 : propsDataFilter.onInit(values));
797
- !fullscreenState && _request({}, false, values);
802
+ !fullscreenState && requestWhenMount && _request({}, false, values);
798
803
  return true;
799
804
  },
800
805
  onFilter: function onFilter(values) {
@@ -33,7 +33,9 @@ export declare type ProTableColumnProps = {
33
33
  tooltipIcon?: React.ReactNode;
34
34
  /** 对应 ProField 里面的 type */
35
35
  valueType?: ProFieldType;
36
- /** 【列配置】是否默认隐藏列 */
36
+ /** 是否隐藏表格列,列配置也不显示 */
37
+ hidden?: boolean;
38
+ /** 【列配置】是否默认隐藏表格列,但列配置显示 */
37
39
  columnFilters?: boolean;
38
40
  /** 【列配置】是否禁用隐藏列 */
39
41
  columnFiltersDisabled?: boolean;