@teamix/pro 1.5.22 → 1.5.23

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.
@@ -1,4 +1,3 @@
1
- import { getTestRequestParams, getTestRequestData } from '@teamix/utils';
2
1
  import { initializeRequestExpression } from '../utils';
3
2
  var initializeDataSource = function initializeDataSource(dataSource, suffix) {
4
3
  var _dataSource$extraConf;
@@ -10,12 +9,6 @@ var initializeDataSource = function initializeDataSource(dataSource, suffix) {
10
9
  scope: scope,
11
10
  data: {
12
11
  readOnlyOnLoading: (dataSource === null || dataSource === void 0 ? void 0 : (_dataSource$extraConf = dataSource.extraConfig) === null || _dataSource$extraConf === void 0 ? void 0 : _dataSource$extraConf.readOnly) !== false
13
- },
14
- props: {
15
- className: 'teamix-test-request',
16
- 'data-teamix-test-request': "url=".concat(dataSource === null || dataSource === void 0 ? void 0 : dataSource.url, "&formatResult=").concat(!!(dataSource === null || dataSource === void 0 ? void 0 : dataSource.formatResult)),
17
- 'data-teamix-test-params': getTestRequestParams(dataSource === null || dataSource === void 0 ? void 0 : dataSource.params),
18
- 'data-teamix-test-data': getTestRequestData('dataSource')
19
12
  }
20
13
  } : {
21
14
  reactions: [],
package/es/index.d.ts CHANGED
@@ -30,5 +30,5 @@ export * from './sidebar';
30
30
  export * from './utils';
31
31
  export * from './timeline';
32
32
  export * from './image';
33
- declare const version = "1.5.22";
33
+ declare const version = "1.5.23";
34
34
  export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, ProSidebar, ProTimeline, TeamixIcon, ProImage, hooks, nocode, templates, utils, };
package/es/index.js CHANGED
@@ -37,7 +37,7 @@ export * from './sidebar';
37
37
  export * from './utils';
38
38
  export * from './timeline';
39
39
  export * from './image';
40
- var version = '1.5.22';
40
+ var version = '1.5.23';
41
41
  // By TeamixTest
42
42
  window.postMessage({
43
43
  source: 'teamix-test-devtools',
package/es/info/index.js CHANGED
@@ -18,7 +18,7 @@ import ProBaseInfo from './components/baseInfo';
18
18
  import ProInfoGroup from './components/InfoGroup';
19
19
  import './index.scss';
20
20
  import { ProInfoGroupContext, useActionType } from './utils';
21
- import { doCommonRequest, cls, getTestRequestData, getTestRequestParams } from '@teamix/utils';
21
+ import { doCommonRequest, cls } from '@teamix/utils';
22
22
  import { useSize } from '@teamix/hooks';
23
23
  import { ProCard } from '..';
24
24
  export * from './typing';
@@ -136,10 +136,7 @@ var ProInfo = function ProInfo(props) {
136
136
  return /*#__PURE__*/React.createElement("div", {
137
137
  ref: ref,
138
138
  style: style,
139
- className: cls('teamix-pro-info', className, 'teamix-test-request'),
140
- "data-teamix-test-request": "url=".concat(url, "&formatResult=").concat(!!formatResult),
141
- "data-teamix-test-params": getTestRequestParams(params),
142
- "data-teamix-test-data": getTestRequestData(columns)
139
+ className: cls('teamix-pro-info', className)
143
140
  }, /*#__PURE__*/React.createElement(ProCard, _objectSpread(_objectSpread(_objectSpread({
144
141
  compacted: true,
145
142
  hoveredShadow: false,
@@ -1,4 +1,4 @@
1
- var _excluded = ["dataSource", "selectedKeys", "checkedKeys", "defaultExpandedKeys", "defaultExpandAll", "expandedKeys", "onSelect", "onCheck", "isNodeBlock", "searchKey", "actionRef", "onBeforeRenderNodeEvent", "beforeRenderNode", "className", "expandAll", "onDataSourceChange", "expandLevel"];
1
+ var _excluded = ["dataSource", "selectedKeys", "checkedKeys", "defaultExpandedKeys", "defaultExpandAll", "expandedKeys", "onSelect", "onCheck", "isNodeBlock", "searchKey", "actionRef", "onBeforeRenderNodeEvent", "beforeRenderNode", "className", "expandAll", "onDataSourceChange", "expandLevel", "defaultSelectedKeys", "defaultCheckedKeys"];
2
2
  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; }
3
3
  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; }
4
4
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
@@ -47,6 +47,8 @@ var ProSidebarTree = function ProSidebarTree(props) {
47
47
  onDataSourceChange = props.onDataSourceChange,
48
48
  _props$expandLevel = props.expandLevel,
49
49
  expandLevel = _props$expandLevel === void 0 ? 1 : _props$expandLevel,
50
+ defaultSelectedKeys = props.defaultSelectedKeys,
51
+ defaultCheckedKeys = props.defaultCheckedKeys,
50
52
  others = _objectWithoutProperties(props, _excluded);
51
53
  // 使用 beforeRenderNode 处理 dataSource
52
54
  var processDataSource = function processDataSource(dataSource) {
@@ -80,11 +82,11 @@ var ProSidebarTree = function ProSidebarTree(props) {
80
82
  _useState8 = _slicedToArray(_useState7, 2),
81
83
  dataSource = _useState8[0],
82
84
  setDataSource = _useState8[1];
83
- var _useState9 = useState(selectedKeysProp),
85
+ var _useState9 = useState(selectedKeysProp !== null && selectedKeysProp !== void 0 ? selectedKeysProp : defaultSelectedKeys),
84
86
  _useState10 = _slicedToArray(_useState9, 2),
85
87
  selectedKeys = _useState10[0],
86
88
  setSelectedKeys = _useState10[1];
87
- var _useState11 = useState(checkedKeysProp),
89
+ var _useState11 = useState(checkedKeysProp !== null && checkedKeysProp !== void 0 ? checkedKeysProp : defaultCheckedKeys),
88
90
  _useState12 = _slicedToArray(_useState11, 2),
89
91
  checkedKeys = _useState12[0],
90
92
  setCheckedKeys = _useState12[1];
@@ -93,8 +95,16 @@ var ProSidebarTree = function ProSidebarTree(props) {
93
95
  }, []);
94
96
  // 监听 selectedKeys,用于受控
95
97
  useEffect(function () {
96
- setSelectedKeys(selectedKeysProp);
98
+ if (selectedKeysProp) {
99
+ setSelectedKeys(selectedKeysProp);
100
+ }
97
101
  }, [selectedKeysProp]);
102
+ // 监听 selectedKeys,用于受控
103
+ useEffect(function () {
104
+ if (checkedKeysProp) {
105
+ setCheckedKeys(checkedKeysProp);
106
+ }
107
+ }, [checkedKeysProp]);
98
108
  // 更新外部传入的 dataSource
99
109
  useUpdateEffect(function () {
100
110
  setDataSource(processDataSource(dataSourceProp !== null && dataSourceProp !== void 0 ? dataSourceProp : []));
@@ -237,12 +247,16 @@ var ProSidebarTree = function ProSidebarTree(props) {
237
247
  if (extra === null || extra === void 0 ? void 0 : (_extra$event = extra.event) === null || _extra$event === void 0 ? void 0 : (_extra$event$target = _extra$event.target) === null || _extra$event$target === void 0 ? void 0 : (_extra$event$target$c = _extra$event$target.closest) === null || _extra$event$target$c === void 0 ? void 0 : _extra$event$target$c.call(_extra$event$target, '.teamix-pro-sidebar-delete-overlay')) {
238
248
  return;
239
249
  }
240
- setSelectedKeys(value);
250
+ if (!selectedKeys) {
251
+ setSelectedKeys(value);
252
+ }
241
253
  onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, extra);
242
254
  };
243
255
  // 树节点选中回调
244
256
  var onCheckChange = function onCheckChange(value, extra) {
245
- setCheckedKeys(value);
257
+ if (!checkedKeysProp) {
258
+ setCheckedKeys(value);
259
+ }
246
260
  onCheck === null || onCheck === void 0 ? void 0 : onCheck(value, extra);
247
261
  };
248
262
  // 节点展开回调
@@ -1,4 +1,4 @@
1
- var _excluded = ["selectedKeys", "checkedKeys", "dataSource", "className", "style", "searchOnChange", "showSearch", "onSelect", "onCheck", "treeProps", "cardProps", "actionRef", "onBeforeRenderNodeEvent", "beforeRenderNode", "url", "method", "params", "data", "extendParams", "beforeRequest", "successMsg", "errorMsg", "formatParams", "formatResult", "onSuccess", "onError", "link", "scrollArea", "onExpandAllChange", "onExpandLevelChange"];
1
+ var _excluded = ["selectedKeys", "checkedKeys", "defaultSelectedKeys", "defaultCheckedKeys", "dataSource", "className", "style", "searchOnChange", "showSearch", "onSelect", "onCheck", "treeProps", "cardProps", "actionRef", "onBeforeRenderNodeEvent", "beforeRenderNode", "url", "method", "params", "data", "extendParams", "beforeRequest", "successMsg", "errorMsg", "formatParams", "formatResult", "onSuccess", "onError", "link", "scrollArea", "onExpandAllChange", "onExpandLevelChange"];
2
2
  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; }
3
3
  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; }
4
4
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
@@ -25,6 +25,8 @@ var cls = usePrefixCls('teamix-pro-sidebar');
25
25
  var ProSidebar = function ProSidebar(props) {
26
26
  var selectedKeys = props.selectedKeys,
27
27
  checkedKeys = props.checkedKeys,
28
+ defaultSelectedKeys = props.defaultSelectedKeys,
29
+ defaultCheckedKeys = props.defaultCheckedKeys,
28
30
  dataSourceProp = props.dataSource,
29
31
  _props$className = props.className,
30
32
  className = _props$className === void 0 ? '' : _props$className,
@@ -176,7 +178,9 @@ var ProSidebar = function ProSidebar(props) {
176
178
  beforeRenderNode: beforeRenderNode,
177
179
  expandAll: expandAllState,
178
180
  expandLevel: expandLevelState,
179
- onDataSourceChange: onDataSourceChange
181
+ onDataSourceChange: onDataSourceChange,
182
+ defaultSelectedKeys: defaultSelectedKeys,
183
+ defaultCheckedKeys: defaultCheckedKeys
180
184
  }, treeProps))));
181
185
  };
182
186
  export default ProSidebar;
@@ -10,8 +10,12 @@ export declare type ProSidebarProps = {
10
10
  dataSource?: ProSidebarDataSource;
11
11
  /** 点击的节点 */
12
12
  selectedKeys?: TreeProps['selectedKeys'];
13
+ /** 非受控 默认点击的节点 */
14
+ defaultSelectedKeys?: TreeProps['defaultSelectedKeys'];
13
15
  /** 选中的节点 */
14
16
  checkedKeys?: TreeProps['checkedKeys'];
17
+ /** 非受控 默认选中的节点 */
18
+ defaultCheckedKeys?: TreeProps['defaultCheckedKeys'];
15
19
  /** 节点点击回调 */
16
20
  onSelect?: TreeProps['onSelect'];
17
21
  /** 节点选中回调 */
@@ -18,6 +18,7 @@ import { Button, Dropdown, Menu } from '@alicloudfe/components';
18
18
  import { usePrefixCls, getMessage } from '@teamix/utils';
19
19
  import './index.scss';
20
20
  import { useUrlState } from '@teamix/hooks';
21
+ import ProField from '../../../field';
21
22
  var CheckboxItem = Menu.CheckboxItem;
22
23
  var cls = usePrefixCls('teamix-pro-table-toolbar-filter');
23
24
  var RadioItem = Menu.RadioItem;
@@ -157,7 +158,13 @@ var Filter = function Filter(props) {
157
158
  onChange: function onChange(check) {
158
159
  setSelected([valueStr]);
159
160
  }
160
- }, label);
161
+ }, /*#__PURE__*/React.createElement(ProField, {
162
+ type: 'text',
163
+ value: label,
164
+ render: {
165
+ ellipsis: true
166
+ }
167
+ }));
161
168
  });
162
169
  };
163
170
  // 渲染多选
@@ -179,7 +186,13 @@ var Filter = function Filter(props) {
179
186
  }));
180
187
  }
181
188
  }
182
- }, label);
189
+ }, /*#__PURE__*/React.createElement(ProField, {
190
+ type: 'text',
191
+ value: label,
192
+ render: {
193
+ ellipsis: true
194
+ }
195
+ }));
183
196
  });
184
197
  };
185
198
  // 渲染选择区域
@@ -3,5 +3,6 @@ import { responsivePaginationType } from '../../typing';
3
3
  import './index.scss';
4
4
  declare const _default: (props: PaginationProps & {
5
5
  responsivePaginationType?: responsivePaginationType;
6
+ useMaxData?: boolean;
6
7
  }) => JSX.Element;
7
8
  export default _default;
@@ -1,4 +1,4 @@
1
- var _excluded = ["className", "onChange", "total", "pageSize", "current", "pageSizeList", "pageSizeSelector", "onPageSizeChange", "responsivePaginationType"];
1
+ var _excluded = ["className", "onChange", "total", "pageSize", "current", "pageSizeList", "pageSizeSelector", "onPageSizeChange", "responsivePaginationType", "useMaxData"];
2
2
  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; }
3
3
  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; }
4
4
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
@@ -11,7 +11,7 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
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
13
  // 自适应宽度的翻页器
14
- import React, { useState, useEffect } from 'react';
14
+ import React, { useState, useEffect, useMemo } from 'react';
15
15
  import { Pagination, Balloon, Select, Button, Input, Icon } from '@alicloudfe/components';
16
16
  import { getMessage, cls, usePrefixCls } from '@teamix/utils';
17
17
  import { useResponsiveProps } from '@teamix/hooks';
@@ -26,6 +26,7 @@ export default (function (props) {
26
26
  pageSizeSelector = props.pageSizeSelector,
27
27
  onPageSizeChange = props.onPageSizeChange,
28
28
  responsivePaginationType = props.responsivePaginationType,
29
+ useMaxData = props.useMaxData,
29
30
  otherProps = _objectWithoutProperties(props, _excluded);
30
31
  var basePrefix = usePrefixCls('', {
31
32
  base: true
@@ -48,20 +49,44 @@ export default (function (props) {
48
49
  _useState4 = _slicedToArray(_useState3, 2),
49
50
  currentPage = _useState4[0],
50
51
  setCurrentPage = _useState4[1];
52
+ var maxDataState = useMemo(function () {
53
+ return Math.ceil((total !== null && total !== void 0 ? total : 0) / (pageSize !== null && pageSize !== void 0 ? pageSize : 0)) > 100;
54
+ }, [total, pageSize]);
51
55
  var commonPaginationProps = {
52
56
  className: className,
53
57
  onChange: propsOnChange,
54
- total: total,
58
+ total: useMaxData && maxDataState ? (pageSize !== null && pageSize !== void 0 ? pageSize : 0) * 100 : total,
55
59
  pageSize: pageSize,
56
60
  current: current,
57
61
  shape: 'arrow-only',
58
62
  pageSizeList: pageSizeList,
59
63
  pageSizeSelector: pageSizeSelector,
60
64
  pageSizePosition: 'end',
61
- onPageSizeChange: onPageSizeChange
65
+ onPageSizeChange: onPageSizeChange,
66
+ // pagination 的渲染函数
67
+ pageNumberRender: function pageNumberRender(index) {
68
+ if (useMaxData && maxDataState) {
69
+ if (index === 100) {
70
+ return '100+';
71
+ }
72
+ return index;
73
+ }
74
+ return index;
75
+ }
62
76
  };
77
+ // 获取总数
78
+ var getTotalContent = useMemo(function () {
79
+ if (useMaxData && maxDataState) {
80
+ return getMessage('total', {
81
+ total: new Intl.NumberFormat().format((pageSize !== null && pageSize !== void 0 ? pageSize : 0) * 100) + '+'
82
+ });
83
+ }
84
+ return getMessage('total', {
85
+ total: new Intl.NumberFormat().format(total !== null && total !== void 0 ? total : 0)
86
+ });
87
+ }, [pageSize, total, maxDataState]);
63
88
  // 自定义总数,用于 small、mini
64
- var customTotalRender = function customTotalRender(total) {
89
+ var customTotalRender = function customTotalRender() {
65
90
  return /*#__PURE__*/React.createElement(Balloon, {
66
91
  visible: visible,
67
92
  closable: false,
@@ -78,9 +103,7 @@ export default (function (props) {
78
103
  style: {
79
104
  lineHeight: '18px'
80
105
  }
81
- }, getMessage('total', {
82
- total: new Intl.NumberFormat().format(total)
83
- }))
106
+ }, getTotalContent)
84
107
  }, /*#__PURE__*/React.createElement("div", {
85
108
  className: prefixCls('custom-total-content')
86
109
  }, /*#__PURE__*/React.createElement("div", {
@@ -177,7 +200,7 @@ export default (function (props) {
177
200
  } else {
178
201
  return /*#__PURE__*/React.createElement("div", {
179
202
  className: cls(basePrefix('pagination'), prefixCls('custom-mini-pagination'))
180
- }, customTotalRender(total), customJumpRender());
203
+ }, customTotalRender(), customJumpRender());
181
204
  }
182
205
  }
183
206
  };
@@ -185,27 +208,23 @@ export default (function (props) {
185
208
  switch (responsivePaginationType || responsiveProps) {
186
209
  case 'normal':
187
210
  return /*#__PURE__*/React.createElement(Pagination, _objectSpread(_objectSpread({}, commonPaginationProps), {}, {
188
- totalRender: function totalRender(total) {
189
- return getMessage('total', {
190
- total: new Intl.NumberFormat().format(total)
191
- });
211
+ totalRender: function totalRender() {
212
+ return getTotalContent;
192
213
  }
193
214
  }, otherProps));
194
215
  case 'simple':
195
216
  return /*#__PURE__*/React.createElement(Pagination, _objectSpread(_objectSpread({}, commonPaginationProps), {}, {
196
217
  pageShowCount: 3,
197
- totalRender: function totalRender(total) {
198
- return getMessage('total', {
199
- total: new Intl.NumberFormat().format(total)
200
- });
218
+ totalRender: function totalRender() {
219
+ return getTotalContent;
201
220
  }
202
221
  }, otherProps));
203
222
  case 'small':
204
223
  return /*#__PURE__*/React.createElement(Pagination, _objectSpread(_objectSpread({}, commonPaginationProps), {}, {
205
224
  pageShowCount: 3,
206
225
  pageSizeSelector: false,
207
- totalRender: function totalRender(total) {
208
- return customTotalRender(total);
226
+ totalRender: function totalRender() {
227
+ return customTotalRender();
209
228
  }
210
229
  }, otherProps));
211
230
  case 'mini':
package/es/table/index.js CHANGED
@@ -1,4 +1,4 @@
1
- var _excluded = ["header", "className", "tableClassName", "mainAction", "extra", "dataFilter", "afterDataFilter", "toolBar", "columns", "useRowSelection", "rowSelection", "onChangeRowSelection", "getRowSelection", "primaryKey", "footerAction", "footer", "url", "pageKey", "pageSizeKey", "method", "params", "formatSort", "formatParams", "formatResult", "requestConfig", "requestWhenMount", "showPagination", "pageSizeList", "responsivePaginationType", "showSkeleton", "skeletonSize", "actionRef", "dataSource", "filterDebounce", "footerSuction", "autoRefresh", "autoRefreshProps", "customRequest", "filterColumnType", "defaultFilterParams", "reserveSelectedRecords", "size", "disableSelectAll", "context", "fixedTableBody", "isTree", "toolBarAutoWidth", "data-teamix-spm", "switchCardView", "cardViewProps", "defaultView", "emptyProps", "bindUrlProps", "bindUrl"],
1
+ var _excluded = ["header", "className", "tableClassName", "mainAction", "extra", "dataFilter", "afterDataFilter", "toolBar", "columns", "useRowSelection", "rowSelection", "onChangeRowSelection", "getRowSelection", "primaryKey", "footerAction", "footer", "url", "pageKey", "pageSizeKey", "method", "params", "formatSort", "formatParams", "formatResult", "requestConfig", "requestWhenMount", "showPagination", "pageSizeList", "responsivePaginationType", "showSkeleton", "skeletonSize", "actionRef", "dataSource", "filterDebounce", "footerSuction", "autoRefresh", "autoRefreshProps", "customRequest", "filterColumnType", "defaultFilterParams", "reserveSelectedRecords", "size", "disableSelectAll", "context", "fixedTableBody", "isTree", "toolBarAutoWidth", "data-teamix-spm", "switchCardView", "cardViewProps", "defaultView", "emptyProps", "bindUrlProps", "bindUrl", "autoRedirect", "useMaxData"],
2
2
  _excluded2 = ["onChange"];
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
4
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
@@ -20,7 +20,7 @@ import React, { useState, useEffect, useRef, useMemo } from 'react';
20
20
  import { Table, Checkbox } from '@alicloudfe/components';
21
21
  import Pagination from './components/Pagination';
22
22
  import genProColumnToColumn from './utils/genProColumnToColumn';
23
- import { getGlobalConfig, useRequest, request as utilResquest, getDeepValue, getMessage, pickProps, usePrefixCls, getTestRequestData, getTestRequestParams, getTargetValue } from '@teamix/utils';
23
+ import { getGlobalConfig, useRequest, request as utilResquest, getDeepValue, getMessage, pickProps, usePrefixCls, getTargetValue } from '@teamix/utils';
24
24
  import { ProSkeletonRaw as Skeleton } from '../skeleton';
25
25
  import './index.scss';
26
26
  import Layout from './components/Layout';
@@ -160,6 +160,9 @@ var ProTable = function ProTable(props) {
160
160
  emptyProps = props.emptyProps,
161
161
  bindUrlProps = props.bindUrlProps,
162
162
  bindUrl = props.bindUrl,
163
+ _props$autoRedirect = props.autoRedirect,
164
+ autoRedirect = _props$autoRedirect === void 0 ? true : _props$autoRedirect,
165
+ useMaxData = props.useMaxData,
163
166
  otherProps = _objectWithoutProperties(props, _excluded);
164
167
  var targetPageKey = pageKey || globalPageKey;
165
168
  var targetPageSizeKey = pageSizeKey || globalPageSizeKey;
@@ -377,6 +380,11 @@ var ProTable = function ProTable(props) {
377
380
  fullscreen: false,
378
381
  normal: true
379
382
  });
383
+ // 全局状态 : 大数据截断
384
+ var globalUseMaxData = useMemo(function () {
385
+ var _getGlobalConfig2;
386
+ return (_getGlobalConfig2 = getGlobalConfig('ProTable')) === null || _getGlobalConfig2 === void 0 ? void 0 : _getGlobalConfig2.useMaxData;
387
+ }, []);
380
388
  // 非全屏状态下的
381
389
  var normalDataFilterFormRef = useRef();
382
390
  var fullscreenDataFilterFormRef = useRef();
@@ -666,6 +674,17 @@ var ProTable = function ProTable(props) {
666
674
  }
667
675
  function onFormatResult(next) {
668
676
  props.onFormatResult && props.onFormatResult(next);
677
+ // 如果开启了 autoRedirect 当当前页数不为1,并且data为空的时候,重定向到第一页
678
+ if (autoRedirect) {
679
+ var _next$data;
680
+ if (!(next === null || next === void 0 ? void 0 : (_next$data = next.data) === null || _next$data === void 0 ? void 0 : _next$data.length) && pageSize > 1) {
681
+ setCurrentPage(1);
682
+ setShowLoading(true);
683
+ setTimeout(function () {
684
+ _request(_defineProperty({}, targetPageKey, 1));
685
+ });
686
+ }
687
+ }
669
688
  var time = 0;
670
689
  if (autoRefresh) {
671
690
  time = 60 * 1000;
@@ -682,14 +701,14 @@ var ProTable = function ProTable(props) {
682
701
  }
683
702
  // 设置 dataSource、total
684
703
  if (switchViewState === 'table' || currentPage === 1 || (cardViewProps === null || cardViewProps === void 0 ? void 0 : cardViewProps.useTablePagination)) {
685
- var _next$data;
704
+ var _next$data2;
686
705
  _setData(next.data || []);
687
- setTotal(next.total || ((_next$data = next.data) === null || _next$data === void 0 ? void 0 : _next$data.length));
706
+ setTotal(next.total || ((_next$data2 = next.data) === null || _next$data2 === void 0 ? void 0 : _next$data2.length));
688
707
  }
689
708
  if (switchViewState === 'card' && currentPage !== 1 && !(cardViewProps === null || cardViewProps === void 0 ? void 0 : cardViewProps.useTablePagination)) {
690
- var _next$data2;
709
+ var _next$data3;
691
710
  _setData([].concat(_toConsumableArray(data), _toConsumableArray(next.data || [])));
692
- setTotal(total + (next.total || ((_next$data2 = next.data) === null || _next$data2 === void 0 ? void 0 : _next$data2.length)));
711
+ setTotal(total + (next.total || ((_next$data3 = next.data) === null || _next$data3 === void 0 ? void 0 : _next$data3.length)));
693
712
  }
694
713
  setShowSkeleton(false);
695
714
  }
@@ -819,6 +838,16 @@ var ProTable = function ProTable(props) {
819
838
  totalRes = res.total,
820
839
  success = res.success;
821
840
  if (success === true) {
841
+ // 如果开启了 autoRedirect 当当前页数不为1,并且data为空的时候,重定向到第一页
842
+ if (autoRedirect) {
843
+ if (!(dataRes === null || dataRes === void 0 ? void 0 : dataRes.length) && pageSize > 1) {
844
+ setCurrentPage(1);
845
+ setShowLoading(true);
846
+ setTimeout(function () {
847
+ _request(_defineProperty({}, targetPageKey, 1));
848
+ });
849
+ }
850
+ }
822
851
  // 设置 dataSource、total
823
852
  if (switchViewState === 'table' || params[targetPageKey] === 1 || isReset || (cardViewProps === null || cardViewProps === void 0 ? void 0 : cardViewProps.useTablePagination)) {
824
853
  _setData(dataRes || []);
@@ -914,10 +943,7 @@ var ProTable = function ProTable(props) {
914
943
  var renderTable = function renderTable(isFullScreen) {
915
944
  if (propsColumns) {
916
945
  return /*#__PURE__*/React.createElement("div", {
917
- className: classNames('teamix-pro-table-container', className, 'teamix-test-request'),
918
- "data-teamix-test-request": "url=".concat(url, "&formatResult=").concat(!!formatResult),
919
- "data-teamix-test-params": getTestRequestParams(propsParams),
920
- "data-teamix-test-data": getTestRequestData(propsColumns),
946
+ className: classNames('teamix-pro-table-container', className),
921
947
  "data-teamix-spm": dataTeamixSpm
922
948
  }, /*#__PURE__*/React.createElement(Layout, {
923
949
  header: header,
@@ -1016,7 +1042,7 @@ var ProTable = function ProTable(props) {
1016
1042
  _request(_objectSpread(_defineProperty({}, targetPageKey, currentPage), params));
1017
1043
  }
1018
1044
  function onChangePaginationSize(currentPageSize) {
1019
- var _request8;
1045
+ var _request10;
1020
1046
  // 翻页默认清空选择
1021
1047
  if (!reserveSelectedRecords) {
1022
1048
  var _actionRef$current9, _actionRef$current9$c;
@@ -1024,7 +1050,7 @@ var ProTable = function ProTable(props) {
1024
1050
  }
1025
1051
  setPageSize(currentPageSize);
1026
1052
  setCurrentPage(1);
1027
- _request((_request8 = {}, _defineProperty(_request8, targetPageSizeKey, currentPageSize), _defineProperty(_request8, targetPageKey, 1), _request8));
1053
+ _request((_request10 = {}, _defineProperty(_request10, targetPageSizeKey, currentPageSize), _defineProperty(_request10, targetPageKey, 1), _request10));
1028
1054
  }
1029
1055
  function renderRowSelection() {
1030
1056
  if (rowSelection) {
@@ -1077,11 +1103,6 @@ var ProTable = function ProTable(props) {
1077
1103
  responsivePaginationType: responsivePaginationType,
1078
1104
  // shape="arrow-only"
1079
1105
  // pageSizePosition="end"
1080
- totalRender: function totalRender(total) {
1081
- return getMessage('total', {
1082
- total: new Intl.NumberFormat().format(total)
1083
- });
1084
- },
1085
1106
  pageSize: pageSize,
1086
1107
  current: currentPage,
1087
1108
  pageSizeList: pageSizeList,
@@ -1089,7 +1110,8 @@ var ProTable = function ProTable(props) {
1089
1110
  type: total / pageSize <= 2 ? 'simple' : 'normal',
1090
1111
  onPageSizeChange: function onPageSizeChange(number) {
1091
1112
  return onChangePaginationSize(number);
1092
- }
1113
+ },
1114
+ useMaxData: globalUseMaxData !== null && globalUseMaxData !== void 0 ? globalUseMaxData : useMaxData
1093
1115
  }, othersPaginationProps)))));
1094
1116
  } else if (!showPagination && (footerAction || rowSelection || useRowSelection)) {
1095
1117
  return /*#__PURE__*/React.createElement("div", {
@@ -172,6 +172,10 @@ export declare type ProTableProps = {
172
172
  bindUrl?: boolean;
173
173
  /** 绑定 url 配置 **/
174
174
  bindUrlProps?: ProTableBindUrlProps;
175
+ /** 当前页数据被删除完后,是否跳转回第一页 **/
176
+ autoRedirect?: boolean;
177
+ /** 使用超大数据模式 **/
178
+ useMaxData?: boolean;
175
179
  } & Omit<TableProps, 'columns'> & ProTableTopAreaProps;
176
180
  export declare type rowSelectionType = {
177
181
  getProps?: (record: any, index: number) => any;
@@ -4,11 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- var _utils = require("@teamix/utils");
8
- var _utils2 = require("../utils");
7
+ var _utils = require("../utils");
9
8
  var initializeDataSource = function initializeDataSource(dataSource, suffix) {
10
9
  var _dataSource$extraConf;
11
- var _initializeRequestExp = (0, _utils2.initializeRequestExpression)(dataSource, '$dataSource', suffix),
10
+ var _initializeRequestExp = (0, _utils.initializeRequestExpression)(dataSource, '$dataSource', suffix),
12
11
  expression = _initializeRequestExp.expression,
13
12
  scope = _initializeRequestExp.scope;
14
13
  return expression ? {
@@ -16,12 +15,6 @@ var initializeDataSource = function initializeDataSource(dataSource, suffix) {
16
15
  scope: scope,
17
16
  data: {
18
17
  readOnlyOnLoading: (dataSource === null || dataSource === void 0 ? void 0 : (_dataSource$extraConf = dataSource.extraConfig) === null || _dataSource$extraConf === void 0 ? void 0 : _dataSource$extraConf.readOnly) !== false
19
- },
20
- props: {
21
- className: 'teamix-test-request',
22
- 'data-teamix-test-request': "url=".concat(dataSource === null || dataSource === void 0 ? void 0 : dataSource.url, "&formatResult=").concat(!!(dataSource === null || dataSource === void 0 ? void 0 : dataSource.formatResult)),
23
- 'data-teamix-test-params': (0, _utils.getTestRequestParams)(dataSource === null || dataSource === void 0 ? void 0 : dataSource.params),
24
- 'data-teamix-test-data': (0, _utils.getTestRequestData)('dataSource')
25
18
  }
26
19
  } : {
27
20
  reactions: [],
package/lib/index.d.ts CHANGED
@@ -30,5 +30,5 @@ export * from './sidebar';
30
30
  export * from './utils';
31
31
  export * from './timeline';
32
32
  export * from './image';
33
- declare const version = "1.5.22";
33
+ declare const version = "1.5.23";
34
34
  export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, ProSidebar, ProTimeline, TeamixIcon, ProImage, hooks, nocode, templates, utils, };
package/lib/index.js CHANGED
@@ -299,7 +299,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
299
299
  if (!((_window = window) === null || _window === void 0 ? void 0 : _window.TEAMIXPRO_WITHOUT_ICON)) {
300
300
  _icon.default.setConfig(_utils.default.getTeamixIconConfig());
301
301
  }
302
- var version = '1.5.22';
302
+ var version = '1.5.23';
303
303
  // By TeamixTest
304
304
  exports.version = version;
305
305
  window.postMessage({
package/lib/info/index.js CHANGED
@@ -158,10 +158,7 @@ var ProInfo = function ProInfo(props) {
158
158
  return /*#__PURE__*/_react.default.createElement("div", {
159
159
  ref: ref,
160
160
  style: style,
161
- className: (0, _utils2.cls)('teamix-pro-info', className, 'teamix-test-request'),
162
- "data-teamix-test-request": "url=".concat(url, "&formatResult=").concat(!!formatResult),
163
- "data-teamix-test-params": (0, _utils2.getTestRequestParams)(params),
164
- "data-teamix-test-data": (0, _utils2.getTestRequestData)(columns)
161
+ className: (0, _utils2.cls)('teamix-pro-info', className)
165
162
  }, /*#__PURE__*/_react.default.createElement(_.ProCard, _objectSpread(_objectSpread(_objectSpread({
166
163
  compacted: true,
167
164
  hoveredShadow: false,
@@ -14,7 +14,7 @@ var _utils2 = require("../../utils");
14
14
  var _hooks = require("@teamix/hooks");
15
15
  var _actionRef = require("../../utils/action-ref");
16
16
  var _lodash = _interopRequireDefault(require("lodash.clonedeep"));
17
- var _excluded = ["dataSource", "selectedKeys", "checkedKeys", "defaultExpandedKeys", "defaultExpandAll", "expandedKeys", "onSelect", "onCheck", "isNodeBlock", "searchKey", "actionRef", "onBeforeRenderNodeEvent", "beforeRenderNode", "className", "expandAll", "onDataSourceChange", "expandLevel"];
17
+ var _excluded = ["dataSource", "selectedKeys", "checkedKeys", "defaultExpandedKeys", "defaultExpandAll", "expandedKeys", "onSelect", "onCheck", "isNodeBlock", "searchKey", "actionRef", "onBeforeRenderNodeEvent", "beforeRenderNode", "className", "expandAll", "onDataSourceChange", "expandLevel", "defaultSelectedKeys", "defaultCheckedKeys"];
18
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
19
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
20
20
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -56,6 +56,8 @@ var ProSidebarTree = function ProSidebarTree(props) {
56
56
  onDataSourceChange = props.onDataSourceChange,
57
57
  _props$expandLevel = props.expandLevel,
58
58
  expandLevel = _props$expandLevel === void 0 ? 1 : _props$expandLevel,
59
+ defaultSelectedKeys = props.defaultSelectedKeys,
60
+ defaultCheckedKeys = props.defaultCheckedKeys,
59
61
  others = _objectWithoutProperties(props, _excluded);
60
62
  // 使用 beforeRenderNode 处理 dataSource
61
63
  var processDataSource = function processDataSource(dataSource) {
@@ -89,11 +91,11 @@ var ProSidebarTree = function ProSidebarTree(props) {
89
91
  _useState8 = _slicedToArray(_useState7, 2),
90
92
  dataSource = _useState8[0],
91
93
  setDataSource = _useState8[1];
92
- var _useState9 = (0, _react.useState)(selectedKeysProp),
94
+ var _useState9 = (0, _react.useState)(selectedKeysProp !== null && selectedKeysProp !== void 0 ? selectedKeysProp : defaultSelectedKeys),
93
95
  _useState10 = _slicedToArray(_useState9, 2),
94
96
  selectedKeys = _useState10[0],
95
97
  setSelectedKeys = _useState10[1];
96
- var _useState11 = (0, _react.useState)(checkedKeysProp),
98
+ var _useState11 = (0, _react.useState)(checkedKeysProp !== null && checkedKeysProp !== void 0 ? checkedKeysProp : defaultCheckedKeys),
97
99
  _useState12 = _slicedToArray(_useState11, 2),
98
100
  checkedKeys = _useState12[0],
99
101
  setCheckedKeys = _useState12[1];
@@ -102,8 +104,16 @@ var ProSidebarTree = function ProSidebarTree(props) {
102
104
  }, []);
103
105
  // 监听 selectedKeys,用于受控
104
106
  (0, _react.useEffect)(function () {
105
- setSelectedKeys(selectedKeysProp);
107
+ if (selectedKeysProp) {
108
+ setSelectedKeys(selectedKeysProp);
109
+ }
106
110
  }, [selectedKeysProp]);
111
+ // 监听 selectedKeys,用于受控
112
+ (0, _react.useEffect)(function () {
113
+ if (checkedKeysProp) {
114
+ setCheckedKeys(checkedKeysProp);
115
+ }
116
+ }, [checkedKeysProp]);
107
117
  // 更新外部传入的 dataSource
108
118
  (0, _hooks.useUpdateEffect)(function () {
109
119
  setDataSource(processDataSource(dataSourceProp !== null && dataSourceProp !== void 0 ? dataSourceProp : []));
@@ -246,12 +256,16 @@ var ProSidebarTree = function ProSidebarTree(props) {
246
256
  if (extra === null || extra === void 0 ? void 0 : (_extra$event = extra.event) === null || _extra$event === void 0 ? void 0 : (_extra$event$target = _extra$event.target) === null || _extra$event$target === void 0 ? void 0 : (_extra$event$target$c = _extra$event$target.closest) === null || _extra$event$target$c === void 0 ? void 0 : _extra$event$target$c.call(_extra$event$target, '.teamix-pro-sidebar-delete-overlay')) {
247
257
  return;
248
258
  }
249
- setSelectedKeys(value);
259
+ if (!selectedKeys) {
260
+ setSelectedKeys(value);
261
+ }
250
262
  onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, extra);
251
263
  };
252
264
  // 树节点选中回调
253
265
  var onCheckChange = function onCheckChange(value, extra) {
254
- setCheckedKeys(value);
266
+ if (!checkedKeysProp) {
267
+ setCheckedKeys(value);
268
+ }
255
269
  onCheck === null || onCheck === void 0 ? void 0 : onCheck(value, extra);
256
270
  };
257
271
  // 节点展开回调