@jiaozhiye/qm-design-react 1.0.0-beta.41 → 1.0.0-beta.44

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,7 +1,7 @@
1
1
  import { Dayjs } from 'dayjs';
2
2
  import 'antd/es/date-picker/style/index';
3
3
  declare const DatePicker: import("antd/es/date-picker/generatePicker/interface").PickerComponentClass<import("antd/es/date-picker/generatePicker").PickerProps<Dayjs> & {
4
- status?: "" | "error" | "warning" | undefined;
4
+ status?: "" | "warning" | "error" | undefined;
5
5
  }, unknown> & {
6
6
  WeekPicker: import("antd/es/date-picker/generatePicker/interface").PickerComponentClass<Omit<import("antd/es/date-picker/generatePicker").PickerDateProps<Dayjs>, "picker">, unknown>;
7
7
  MonthPicker: import("antd/es/date-picker/generatePicker/interface").PickerComponentClass<Omit<import("antd/es/date-picker/generatePicker").PickerDateProps<Dayjs>, "picker">, unknown>;
package/lib/index.esm.js CHANGED
@@ -19,7 +19,7 @@ import 'dayjs/locale/zh-cn';
19
19
  import zhCN_antd from 'antd/lib/locale/zh_CN';
20
20
  import enGB_antd from 'antd/lib/locale/en_GB';
21
21
  import omit from 'omit.js';
22
- import { isArray, isPlainObject, isNumber, isFunction as isFunction$1, isUndefined, isString, throttle, xor, isEqual, get, merge, debounce, transform, set, intersection, cloneDeep, map, groupBy, flatten, spread, mergeWith, sumBy, maxBy, minBy, omitBy, pickBy } from 'lodash-es';
22
+ import { isArray, isPlainObject, isNumber, isFunction as isFunction$1, isUndefined, debounce, isString, throttle, xor, isEqual, get, merge, transform, set, intersection, cloneDeep, map, groupBy, flatten, spread, mergeWith, sumBy, maxBy, minBy, omitBy, pickBy } from 'lodash-es';
23
23
  import classNames from 'classnames';
24
24
  import { UpOutlined, DownOutlined, DownloadOutlined, FullscreenExitOutlined, FullscreenOutlined, HolderOutlined, UnorderedListOutlined, SearchOutlined, CheckOutlined, CloseOutlined, ExclamationCircleOutlined, ReloadOutlined, UploadOutlined, ZoomInOutlined, ZoomOutOutlined, RotateRightOutlined, RotateLeftOutlined, PlusOutlined, InfoCircleFilled, PrinterOutlined, SettingOutlined, CheckSquareOutlined, CloseCircleOutlined, PieChartOutlined, FunnelPlotOutlined, MonitorOutlined, StepBackwardOutlined, StepForwardOutlined, InfoCircleOutlined } from '@ant-design/icons';
25
25
  import CountUp from 'react-countup';
@@ -1857,7 +1857,7 @@ var QmSplitPane = function QmSplitPane(props) {
1857
1857
 
1858
1858
  var property = direction === 'vertical' ? 'height' : 'width';
1859
1859
  var prefixCls = getPrefixCls('split-pane');
1860
- var cls = (_cls = {}, _defineProperty$2(_cls, prefixCls, true), _defineProperty$2(_cls, "isLocked", dragging), _defineProperty$2(_cls, "horizontal", direction === 'horizontal'), _defineProperty$2(_cls, "vertical", direction === 'vertical'), _defineProperty$2(_cls, className, true), _cls);
1860
+ var cls = (_cls = {}, _defineProperty$2(_cls, prefixCls, true), _defineProperty$2(_cls, "isLocked", dragging), _defineProperty$2(_cls, "horizontal", direction === 'horizontal'), _defineProperty$2(_cls, "vertical", direction === 'vertical'), _defineProperty$2(_cls, className, !!className), _cls);
1861
1861
  var styles = typeof offset !== 'undefined' ? _defineProperty$2({}, property, getParserWidth(offset)) : {
1862
1862
  flex: 1
1863
1863
  };
@@ -1879,7 +1879,8 @@ var QmSplit = function QmSplit(props) {
1879
1879
  uniqueKey = props.uniqueKey,
1880
1880
  className = props.className,
1881
1881
  style = props.style,
1882
- onChange = props.onChange;
1882
+ _props$onChange = props.onChange,
1883
+ onChange = _props$onChange === void 0 ? noop$1 : _props$onChange;
1883
1884
 
1884
1885
  var _React$useContext = React__default.useContext(ConfigContext),
1885
1886
  global = _React$useContext.global;
@@ -1917,9 +1918,11 @@ var QmSplit = function QmSplit(props) {
1917
1918
  offset = _React$useState4[0],
1918
1919
  setOffset = _React$useState4[1];
1919
1920
 
1921
+ var changeDebouncer = debounce(onChange, 10);
1922
+
1920
1923
  var dragHandle = function dragHandle(value) {
1921
1924
  setOffset(value);
1922
- onChange === null || onChange === void 0 ? void 0 : onChange(value);
1925
+ changeDebouncer(Number.parseInt(value));
1923
1926
  };
1924
1927
 
1925
1928
  useUpdateEffect(function () {
@@ -17856,6 +17859,11 @@ var columnItem = {
17856
17859
  disabled: PropTypes__default.func,
17857
17860
  onChange: PropTypes__default.func // 高亮行发生变化时触发
17858
17861
 
17862
+ }),
17863
+ // 树表格配置
17864
+ treeConfig: PropTypes__default.shape({
17865
+ virtual: PropTypes__default.bool // 是否开启虚拟滚动
17866
+
17859
17867
  }),
17860
17868
  // 展开行配置项
17861
17869
  expandable: PropTypes__default.shape({
@@ -19066,13 +19074,6 @@ var config$1 = {
19066
19074
  summaryIgnore: 'sumIgnored'
19067
19075
  };
19068
19076
 
19069
- /*
19070
- * @Author: 焦质晔
19071
- * @Date: 2021-12-26 15:45:00
19072
- * @Last Modified by: 焦质晔
19073
- * @Last Modified time: 2022-03-19 20:35:57
19074
- */
19075
-
19076
19077
  var useTableRef = function useTableRef(props, _ref) {
19077
19078
  var getRowKey = _ref.getRowKey,
19078
19079
  $size = _ref.$size;
@@ -19093,6 +19094,8 @@ var useTableRef = function useTableRef(props, _ref) {
19093
19094
  allRowKeys: [],
19094
19095
  // 派生 rowKeys
19095
19096
  deriveRowKeys: [],
19097
+ // 叶子节点 rowKeys
19098
+ flattenRowKeys: [],
19096
19099
  // 存放纵向 Y 虚拟滚动相关信息
19097
19100
  scrollYStore: {
19098
19101
  startIndex: 0,
@@ -19129,21 +19132,40 @@ var useTableRef = function useTableRef(props, _ref) {
19129
19132
  isIE: isIE()
19130
19133
  }); // 创建派生的 rowKeys for treeTable
19131
19134
 
19132
- var createDeriveRowKeys = function createDeriveRowKeys(rows, key) {
19135
+ var createDeriveRowKeys = function createDeriveRowKeys(rows, key, path) {
19136
+ var depth = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
19133
19137
  return rows.map(function (row) {
19134
19138
  var rowKey = getRowKey(row, row.index);
19139
+ var rowKeyPath = path ? "".concat(path, "-").concat(rowKey) : "".concat(rowKey);
19135
19140
  var item = {
19136
- rowKey: rowKey
19141
+ level: depth,
19142
+ rowKey: rowKey,
19143
+ rowKeyPath: rowKeyPath
19137
19144
  };
19138
19145
 
19139
19146
  if (row.children) {
19140
- item.children = createDeriveRowKeys(row.children, rowKey);
19147
+ item.children = createDeriveRowKeys(row.children, rowKey, rowKeyPath, depth + 1);
19141
19148
  }
19142
19149
 
19143
19150
  return key ? Object.assign({}, item, {
19144
19151
  parentRowKey: key
19145
19152
  }) : item;
19146
19153
  });
19154
+ }; // 创建叶子节点 rowKeys for treeTable
19155
+
19156
+
19157
+ var createFlatRowKeys = function createFlatRowKeys(deriveRowKeys) {
19158
+ var result = [];
19159
+ deriveRowKeys.forEach(function (x) {
19160
+ var _a;
19161
+
19162
+ if ((_a = x.children) === null || _a === void 0 ? void 0 : _a.length) {
19163
+ result.push.apply(result, _toConsumableArray(createFlatRowKeys(x.children)));
19164
+ } else {
19165
+ result.push(x.rowKey);
19166
+ }
19167
+ });
19168
+ return result;
19147
19169
  };
19148
19170
 
19149
19171
  var setElementStore = function setElementStore(key, value) {
@@ -19177,7 +19199,8 @@ var useTableRef = function useTableRef(props, _ref) {
19177
19199
  };
19178
19200
 
19179
19201
  var setDeriveRowKeys = function setDeriveRowKeys(records) {
19180
- tableRef.current.deriveRowKeys = createDeriveRowKeys(records, null);
19202
+ tableRef.current.deriveRowKeys = createDeriveRowKeys(records, '', '');
19203
+ tableRef.current.flattenRowKeys = createFlatRowKeys(tableRef.current.deriveRowKeys);
19181
19204
  };
19182
19205
 
19183
19206
  var setScrollYStore = function setScrollYStore(option) {
@@ -19727,8 +19750,8 @@ var useTableMemo = function useTableMemo(props, extra) {
19727
19750
  return !!showSuperSearch && isHeadFilter;
19728
19751
  }, [showSuperSearch, isHeadFilter]);
19729
19752
  var isFastSearch = React__default.useMemo(function () {
19730
- return !isFetch && !!showFastSearch;
19731
- }, [isFetch, showFastSearch]);
19753
+ return !isFetch && !!showFastSearch && isHeadFilter;
19754
+ }, [isFetch, showFastSearch, isHeadFilter]);
19732
19755
  var isGroupSummary = React__default.useMemo(function () {
19733
19756
  return flattenColumns.some(function (column) {
19734
19757
  return !!column.groupSummary;
@@ -19838,10 +19861,10 @@ var useTableCore = function useTableCore(props, extra) {
19838
19861
  var rowKey = props.rowKey,
19839
19862
  dataSource = props.dataSource,
19840
19863
  summation = props.summation,
19841
- height = props.height,
19842
19864
  fetch = props.fetch,
19843
19865
  rowSelection = props.rowSelection,
19844
19866
  expandable = props.expandable,
19867
+ treeConfig = props.treeConfig,
19845
19868
  authConfig = props.authConfig,
19846
19869
  columnsChange = props.columnsChange,
19847
19870
  onScrollEnd = props.onScrollEnd,
@@ -19862,6 +19885,7 @@ var useTableCore = function useTableCore(props, extra) {
19862
19885
  superFilters = extra.superFilters,
19863
19886
  fetchParams = extra.fetchParams,
19864
19887
  selectionKeys = extra.selectionKeys,
19888
+ rowExpandedKeys = extra.rowExpandedKeys,
19865
19889
  highlightKey = extra.highlightKey,
19866
19890
  summationColumns = extra.summationColumns,
19867
19891
  shouldUpdateHeight = extra.shouldUpdateHeight,
@@ -19872,7 +19896,6 @@ var useTableCore = function useTableCore(props, extra) {
19872
19896
  isServiceSummation = extra.isServiceSummation,
19873
19897
  isGroupSubtotal = extra.isGroupSubtotal,
19874
19898
  doLayout = extra.doLayout,
19875
- calcTableHeight = extra.calcTableHeight,
19876
19899
  setTableData = extra.setTableData,
19877
19900
  setTableFullData = extra.setTableFullData,
19878
19901
  setTableOriginData = extra.setTableOriginData,
@@ -19898,6 +19921,10 @@ var useTableCore = function useTableCore(props, extra) {
19898
19921
  var store = tableRef.current.store;
19899
19922
  var tableSize = useResizeObserve(tableElementRef);
19900
19923
  var prevParamsRef = React__default.useRef(Object.assign({}, fetchParams));
19924
+ var treeExpandRef = React__default.useRef({
19925
+ list: [],
19926
+ maps: new Map()
19927
+ });
19901
19928
  useUpdateEffect(function () {
19902
19929
  doLayout();
19903
19930
  }, [tableColumns, $size, layout.tableAutoHeight]);
@@ -19945,34 +19972,24 @@ var useTableCore = function useTableCore(props, extra) {
19945
19972
  }
19946
19973
 
19947
19974
  doLayout();
19948
- }, [tableFullData]); // ==========================================
19975
+ }, [tableFullData]);
19976
+ useUpdateEffect(function () {
19977
+ if (isTreeTable && (treeConfig === null || treeConfig === void 0 ? void 0 : treeConfig.virtual)) {
19978
+ createTreeExpand();
19979
+ updateTableData();
19980
+ }
19981
+ }, [rowExpandedKeys]); // ==========================================
19949
19982
  // 组件初始化
19950
19983
 
19951
19984
  var initialTable = function initialTable() {
19952
19985
  getTableAuth();
19953
19986
  setTableFocus();
19954
- bindEvents();
19955
19987
 
19956
19988
  if (isFetch) {
19957
19989
  getTableData();
19958
19990
  } else {
19959
19991
  createTableData(dataSource);
19960
19992
  }
19961
- }; // window resize 监听函数
19962
-
19963
-
19964
- var winResizeHandler = function winResizeHandler() {
19965
- var resizeState = tableRef.current.resizeState;
19966
- var oldWinHeight = resizeState.winHeight;
19967
- var winHeight = window.innerHeight;
19968
- var isYChange = winHeight !== oldWinHeight;
19969
-
19970
- if (isYChange) {
19971
- setResizeState(Object.assign({}, resizeState, {
19972
- winHeight: winHeight
19973
- }));
19974
- calcTableHeight();
19975
- }
19976
19993
  }; // table resize 监听函数
19977
19994
 
19978
19995
 
@@ -19994,20 +20011,6 @@ var useTableCore = function useTableCore(props, extra) {
19994
20011
  width: width,
19995
20012
  height: height
19996
20013
  }));
19997
- }; // 事件绑定
19998
-
19999
-
20000
- var bindEvents = function bindEvents() {
20001
- if (height !== 'auto') return;
20002
- window.addEventListener('resize', winResizeHandler, false);
20003
- nextTick(function () {
20004
- return calcTableHeight();
20005
- });
20006
- }; // 事件解绑
20007
-
20008
-
20009
- var removeEvents = function removeEvents() {
20010
- window.addEventListener('resize', winResizeHandler);
20011
20014
  }; // 设置表格焦点
20012
20015
 
20013
20016
 
@@ -20269,6 +20272,13 @@ var useTableCore = function useTableCore(props, extra) {
20269
20272
  }
20270
20273
 
20271
20274
  return result;
20275
+ }; // 判断是否为树结构
20276
+
20277
+
20278
+ var mayTreeTable = function mayTreeTable() {
20279
+ return tableRef.current.deriveRowKeys.some(function (x) {
20280
+ return Array.isArray(x.children) && x.children.length;
20281
+ });
20272
20282
  }; // 选择列已选中 keys
20273
20283
 
20274
20284
 
@@ -20281,33 +20291,37 @@ var useTableCore = function useTableCore(props, extra) {
20281
20291
  var selectedKeys = Array.isArray(rowKeys) ? rowKeys : selectionKeys;
20282
20292
  var result = [];
20283
20293
 
20284
- if (isTreeTable && !checkStrictly) {
20294
+ if (mayTreeTable() && !checkStrictly) {
20285
20295
  selectedKeys.forEach(function (x) {
20286
- result.push.apply(result, _toConsumableArray(createTreeSelectionKeys(x, selectedKeys)));
20296
+ var _result;
20297
+
20298
+ (_result = result).push.apply(_result, _toConsumableArray(createTreeSelectionKeys(x, selectedKeys)));
20287
20299
  });
20288
20300
  }
20289
20301
 
20290
- selectedKeys = type === 'radio' ? selectedKeys.slice(0, 1) : _toConsumableArray(new Set([].concat(_toConsumableArray(selectedKeys), result)));
20291
- return selectedKeys;
20302
+ result = type === 'radio' ? selectedKeys.slice(0, 1) : _toConsumableArray(new Set([].concat(_toConsumableArray(selectedKeys), _toConsumableArray(result))));
20303
+ return result;
20292
20304
  }; // 展开行,已展开的 keys
20293
20305
 
20294
20306
 
20295
20307
  var createRowExpandedKeys = function createRowExpandedKeys() {
20296
- if (isTreeTable && (expandable === null || expandable === void 0 ? void 0 : expandable.expandedRowRender)) {
20297
- warn('Table', '树结构表格不能再设置展开行的 `expandedRowRender` 参数');
20298
- }
20299
-
20300
20308
  var _tableRef$current4 = tableRef.current,
20301
20309
  allRowKeys = _tableRef$current4.allRowKeys,
20302
- deriveRowKeys = _tableRef$current4.deriveRowKeys;
20310
+ deriveRowKeys = _tableRef$current4.deriveRowKeys,
20311
+ flattenRowKeys = _tableRef$current4.flattenRowKeys;
20303
20312
 
20304
20313
  var _ref2 = expandable || {},
20305
20314
  defaultExpandAllRows = _ref2.defaultExpandAllRows,
20306
20315
  _ref2$expandedRowKeys = _ref2.expandedRowKeys,
20307
- expandedRowKeys = _ref2$expandedRowKeys === void 0 ? [] : _ref2$expandedRowKeys; // 树结构
20316
+ expandedRowKeys = _ref2$expandedRowKeys === void 0 ? [] : _ref2$expandedRowKeys,
20317
+ expandedRowRender = _ref2.expandedRowRender; // 树结构
20308
20318
 
20309
20319
 
20310
- if (isTreeTable) {
20320
+ if (mayTreeTable()) {
20321
+ if (expandedRowRender) {
20322
+ warn('Table', '树结构表格不能再设置展开行的 `expandedRowRender` 参数');
20323
+ }
20324
+
20311
20325
  var mergedRowKeys = [].concat(_toConsumableArray(selectionKeys), _toConsumableArray(expandedRowKeys));
20312
20326
 
20313
20327
  if (highlightKey) {
@@ -20315,25 +20329,26 @@ var useTableCore = function useTableCore(props, extra) {
20315
20329
  }
20316
20330
 
20317
20331
  var result = [];
20332
+ mergedRowKeys.forEach(function (key) {
20333
+ var _result2;
20318
20334
 
20319
- if (mergedRowKeys.length) {
20320
- mergedRowKeys.forEach(function (key) {
20321
- var _a;
20322
-
20323
- result.push.apply(result, _toConsumableArray(((_a = deepGetRowkey(deriveRowKeys, key)) === null || _a === void 0 ? void 0 : _a.slice(0, -1).reverse()) || []));
20324
- });
20325
- }
20335
+ var _a;
20326
20336
 
20327
- return defaultExpandAllRows && !expandedRowKeys.length ? _toConsumableArray(allRowKeys) : _toConsumableArray(new Set([].concat(_toConsumableArray(expandedRowKeys), result)));
20337
+ (_result2 = result).push.apply(_result2, _toConsumableArray(((_a = deepGetRowkey(deriveRowKeys, key)) === null || _a === void 0 ? void 0 : _a.slice(0, -1).reverse()) || []));
20338
+ });
20339
+ result = defaultExpandAllRows && !expandedRowKeys.length ? allRowKeys : _toConsumableArray(new Set([].concat(_toConsumableArray(expandedRowKeys), _toConsumableArray(result))));
20340
+ return result.filter(function (key) {
20341
+ return !flattenRowKeys.includes(key);
20342
+ });
20328
20343
  } // 展开行
20329
20344
 
20330
20345
 
20331
20346
  if (expandable) {
20332
- return defaultExpandAllRows && !expandedRowKeys.length ? _toConsumableArray(allRowKeys) : _toConsumableArray(expandedRowKeys);
20347
+ return defaultExpandAllRows && !expandedRowKeys.length ? allRowKeys.slice(0) : _toConsumableArray(expandedRowKeys);
20333
20348
  }
20334
20349
 
20335
20350
  return [];
20336
- }; // 创建派生的 rowKeys for treeTable
20351
+ }; // 获取所有后代节点 rowKeys
20337
20352
 
20338
20353
 
20339
20354
  var getAllChildRowKeys = function getAllChildRowKeys(deriveRowKeys) {
@@ -20681,6 +20696,67 @@ var useTableCore = function useTableCore(props, extra) {
20681
20696
  current: pageCount
20682
20697
  }));
20683
20698
  }
20699
+ }; // 创建 treeExpandRef 数据
20700
+
20701
+
20702
+ var createTreeExpand = function createTreeExpand() {
20703
+ var list = deepMapRowkey(tableRef.current.deriveRowKeys);
20704
+ treeExpandRef.current.list = list;
20705
+ treeExpandRef.current.maps.clear();
20706
+ list.forEach(function (x, i) {
20707
+ return treeExpandRef.current.maps.set(x.rowKey, i);
20708
+ });
20709
+ }; // 深度遍历 deriveRowKeys
20710
+
20711
+
20712
+ var deepMapRowkey = function deepMapRowkey(deriveRowKeys) {
20713
+ var result = [];
20714
+ deriveRowKeys.forEach(function (x) {
20715
+ if (x.children) {
20716
+ result.push.apply(result, _toConsumableArray(deepMapRowkey(x.children)));
20717
+ }
20718
+
20719
+ if (typeof x.parentRowKey === 'undefined') {
20720
+ result.push({
20721
+ rowKey: x.rowKey,
20722
+ level: x.level
20723
+ });
20724
+ } else if (rowExpandedKeys.includes(x.parentRowKey)) {
20725
+ var _prks = x.rowKeyPath.split('-').slice(0, -1);
20726
+
20727
+ if (_prks.every(function (key) {
20728
+ return rowExpandedKeys.findIndex(function (k) {
20729
+ return k == key;
20730
+ }) > -1;
20731
+ })) {
20732
+ result.push({
20733
+ rowKey: x.rowKey,
20734
+ level: x.level
20735
+ });
20736
+ }
20737
+ }
20738
+ });
20739
+ return result;
20740
+ }; // 创建虚拟滚动树列表数据
20741
+
20742
+
20743
+ var createVirtualTree = function createVirtualTree(dataList) {
20744
+ var _tableRef$current5 = tableRef.current,
20745
+ allTableData = _tableRef$current5.allTableData,
20746
+ allRowKeys = _tableRef$current5.allRowKeys;
20747
+ var _treeExpandRef$curren = treeExpandRef.current,
20748
+ list = _treeExpandRef$curren.list,
20749
+ maps = _treeExpandRef$curren.maps;
20750
+ var result = [];
20751
+
20752
+ for (var i = 0, len = allRowKeys.length; i < len; i++) {
20753
+ var _rowKey = allRowKeys[i];
20754
+ if (!maps.has(_rowKey)) continue;
20755
+ allTableData[i]._level = list[maps.get(_rowKey)].level;
20756
+ result.push(allTableData[i]);
20757
+ }
20758
+
20759
+ return result;
20684
20760
  }; // 创建内存分页的列表数据
20685
20761
 
20686
20762
 
@@ -20697,15 +20773,20 @@ var useTableCore = function useTableCore(props, extra) {
20697
20773
 
20698
20774
 
20699
20775
  var handleTableData = function handleTableData(dataList) {
20700
- var _tableRef$current5 = tableRef.current,
20701
- scrollYLoad = _tableRef$current5.scrollYLoad,
20702
- scrollYStore = _tableRef$current5.scrollYStore;
20776
+ var _tableRef$current6 = tableRef.current,
20777
+ scrollYLoad = _tableRef$current6.scrollYLoad,
20778
+ scrollYStore = _tableRef$current6.scrollYStore;
20703
20779
  setTableData(scrollYLoad ? dataList.slice(scrollYStore.startIndex, scrollYStore.endIndex) : dataList);
20704
20780
  }; // 更新表格数据
20705
20781
 
20706
20782
 
20707
20783
  var updateTableData = function updateTableData() {
20708
20784
  var dataList = createTableList();
20785
+
20786
+ if (isTreeTable && (treeConfig === null || treeConfig === void 0 ? void 0 : treeConfig.virtual)) {
20787
+ dataList = createVirtualTree();
20788
+ }
20789
+
20709
20790
  setScrollYLoad(dataList.length > config$1.virtualScrollY);
20710
20791
  updateScrollYSpace(dataList);
20711
20792
  handleTableData(dataList);
@@ -20727,10 +20808,10 @@ var useTableCore = function useTableCore(props, extra) {
20727
20808
 
20728
20809
 
20729
20810
  var createRowKeysMap = function createRowKeysMap() {
20730
- var allTableData = tableRef.current.allTableData;
20811
+ var allRowKeys = tableRef.current.allRowKeys;
20731
20812
  clearAllRowKeysMap();
20732
- allTableData.forEach(function (row, index) {
20733
- return setRowKeysMap(getRowKey(row, index), index);
20813
+ allRowKeys.forEach(function (rowKey, index) {
20814
+ return setRowKeysMap(rowKey, index);
20734
20815
  });
20735
20816
  }; // 获取表格操作记录
20736
20817
 
@@ -20802,7 +20883,6 @@ var useTableCore = function useTableCore(props, extra) {
20802
20883
 
20803
20884
 
20804
20885
  var destroy = function destroy() {
20805
- removeEvents();
20806
20886
  clearElementStore();
20807
20887
  store.destroy();
20808
20888
  TableManager.deregister(tableRef.current.uid);
@@ -21254,6 +21334,8 @@ var useTableEffect = function useTableEffect(props, extra) {
21254
21334
  setSelectionRows = extra.setSelectionRows,
21255
21335
  setRowExpandedKeys = extra.setRowExpandedKeys,
21256
21336
  setHighlightKey = extra.setHighlightKey,
21337
+ setResizeState = extra.setResizeState,
21338
+ calcTableHeight = extra.calcTableHeight,
21257
21339
  createSelectionKeys = extra.createSelectionKeys,
21258
21340
  createSelectionRows = extra.createSelectionRows,
21259
21341
  createRowExpandedKeys = extra.createRowExpandedKeys,
@@ -21317,7 +21399,10 @@ var useTableEffect = function useTableEffect(props, extra) {
21317
21399
 
21318
21400
  if (isEqual(summationRows, summationRowsTemp.current)) return;
21319
21401
  summationRowsTemp.current = summationRows;
21320
- showSummary && ((_a = summation === null || summation === void 0 ? void 0 : summation.onChange) === null || _a === void 0 ? void 0 : _a.call(summation, summationRows));
21402
+
21403
+ if (showSummary && summation) {
21404
+ (_a = summation.onChange) === null || _a === void 0 ? void 0 : _a.call(summation, summationRows);
21405
+ }
21321
21406
  }, [summationRows]);
21322
21407
  useUpdateEffect(function () {
21323
21408
  var _selectionKeys = createSelectionKeys(rowSelection.selectedRowKeys);
@@ -21380,15 +21465,43 @@ var useTableEffect = function useTableEffect(props, extra) {
21380
21465
  warn('Table', '必须设置组件参数 `height` 或 `maxHeight`');
21381
21466
  }
21382
21467
  }
21383
- }, [scrollYLoad, isScrollPagination]);
21468
+ }, [scrollYLoad, isScrollPagination]); // window resize 监听函数
21469
+
21470
+ var winResizeHandler = function winResizeHandler() {
21471
+ var resizeState = tableRef.current.resizeState;
21472
+ var oldWinHeight = resizeState.winHeight;
21473
+ var winHeight = window.innerHeight;
21474
+ var isYChange = winHeight !== oldWinHeight;
21475
+
21476
+ if (isYChange) {
21477
+ setResizeState(Object.assign({}, resizeState, {
21478
+ winHeight: winHeight
21479
+ }));
21480
+ calcTableHeight();
21481
+ }
21482
+ };
21483
+
21484
+ var bindResizeEvent = function bindResizeEvent() {
21485
+ window.addEventListener('resize', winResizeHandler, false);
21486
+ };
21487
+
21488
+ var removeResizeEvent = function removeResizeEvent() {
21489
+ window.addEventListener('resize', winResizeHandler);
21490
+ };
21491
+
21384
21492
  React__default.useEffect(function () {
21385
21493
  var _createElementStore;
21386
21494
 
21387
21495
  createElementStore((_createElementStore = {}, _defineProperty$2(_createElementStore, "$toper", topElementRef.current), _defineProperty$2(_createElementStore, "$table", tableElementRef.current), _defineProperty$2(_createElementStore, "$resizableBar", resizableBarRef.current), _createElementStore));
21388
21496
  setOriginColumns(cloneDeep(columns));
21389
21497
  initialTable();
21498
+ bindResizeEvent();
21499
+ nextTick(function () {
21500
+ return calcTableHeight();
21501
+ });
21390
21502
  return function () {
21391
- return destroy();
21503
+ destroy();
21504
+ removeResizeEvent();
21392
21505
  };
21393
21506
  }, []);
21394
21507
  };
@@ -23268,12 +23381,19 @@ var Result$2 = function Result(props) {
23268
23381
  }))));
23269
23382
  };
23270
23383
 
23384
+ var createTableData = function createTableData() {
23385
+ return tableRef.current.selectionRows.map(function (row) {
23386
+ delete row.children;
23387
+ return row;
23388
+ });
23389
+ };
23390
+
23271
23391
  var _React$useState = React__default.useState(createColumns()),
23272
23392
  _React$useState2 = _slicedToArray$1(_React$useState, 2),
23273
23393
  tableColumns = _React$useState2[0],
23274
23394
  setTableColumns = _React$useState2[1];
23275
23395
 
23276
- var _React$useState3 = React__default.useState(tableRef.current.selectionRows),
23396
+ var _React$useState3 = React__default.useState(createTableData()),
23277
23397
  _React$useState4 = _slicedToArray$1(_React$useState3, 1),
23278
23398
  tableList = _React$useState4[0];
23279
23399
 
@@ -28575,6 +28695,7 @@ var TableBody = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
28575
28695
  maxHeight = tableProps.maxHeight,
28576
28696
  rowSelection = tableProps.rowSelection,
28577
28697
  rowHighlight = tableProps.rowHighlight,
28698
+ treeConfig = tableProps.treeConfig,
28578
28699
  expandable = tableProps.expandable,
28579
28700
  stripe = tableProps.stripe,
28580
28701
  summation = tableProps.summation,
@@ -28962,7 +29083,7 @@ var TableBody = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
28962
29083
  } // 树表格
28963
29084
 
28964
29085
 
28965
- if (mayTreeNode(row)) {
29086
+ if (!(treeConfig === null || treeConfig === void 0 ? void 0 : treeConfig.virtual) && mayTreeNode(row)) {
28966
29087
  // 展开状态
28967
29088
  if (rowExpandedKeys.includes(rowKey)) {
28968
29089
  rows.push.apply(rows, _toConsumableArray(renderRows(row.children, depth + 1)));
@@ -29078,7 +29199,7 @@ var TableBody = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
29078
29199
  var vNodeText = render ? render(cellValue, row, column, rowIndex, columnIndex) : text; // Tree Expandable + vNodeText
29079
29200
 
29080
29201
  if (isTreeTable && dataIndex === firstDataIndex) {
29081
- return [renderIndent(depth), /*#__PURE__*/React__default.createElement(Expandable, {
29202
+ return [renderIndent(!(treeConfig === null || treeConfig === void 0 ? void 0 : treeConfig.virtual) ? depth : row._level), /*#__PURE__*/React__default.createElement(Expandable, {
29082
29203
  key: "expand",
29083
29204
  record: row,
29084
29205
  rowKey: rowKey,
@@ -29700,6 +29821,7 @@ var Table = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
29700
29821
  superFilters: superFilters,
29701
29822
  fetchParams: fetchParams,
29702
29823
  selectionKeys: selectionKeys,
29824
+ rowExpandedKeys: rowExpandedKeys,
29703
29825
  highlightKey: highlightKey,
29704
29826
  summationColumns: summationColumns,
29705
29827
  shouldUpdateHeight: shouldUpdateHeight,
@@ -29710,7 +29832,6 @@ var Table = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
29710
29832
  isServiceSummation: isServiceSummation,
29711
29833
  isGroupSubtotal: isGroupSubtotal,
29712
29834
  doLayout: doLayout,
29713
- calcTableHeight: calcTableHeight,
29714
29835
  setTableData: setTableData,
29715
29836
  setTableFullData: setTableFullData,
29716
29837
  setTableOriginData: setTableOriginData,
@@ -29783,6 +29904,8 @@ var Table = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
29783
29904
  setSelectionRows: setSelectionRows,
29784
29905
  setRowExpandedKeys: setRowExpandedKeys,
29785
29906
  setHighlightKey: setHighlightKey,
29907
+ setResizeState: setResizeState,
29908
+ calcTableHeight: calcTableHeight,
29786
29909
  createSelectionKeys: createSelectionKeys,
29787
29910
  createSelectionRows: createSelectionRows,
29788
29911
  createRowExpandedKeys: createRowExpandedKeys,
@@ -32392,7 +32515,7 @@ QmPrint.defaultProps = {
32392
32515
  QmPrint.contextType = ConfigContext;
32393
32516
 
32394
32517
  var name = "@jiaozhiye/qm-design-react";
32395
- var version = "1.0.0-beta.41";
32518
+ var version = "1.0.0-beta.44";
32396
32519
  var description = "A Component Library for React";
32397
32520
  var keywords = [
32398
32521
  "React",
@@ -32437,7 +32560,7 @@ var peerDependencies = {
32437
32560
  };
32438
32561
  var dependencies = {
32439
32562
  "add-dom-event-listener": "^1.1.0",
32440
- antd: "^4.19.2",
32563
+ antd: "^4.19.4",
32441
32564
  axios: "^0.24.0",
32442
32565
  "china-area-data": "^5.0.1",
32443
32566
  classnames: "^2.3.1",
@@ -32478,7 +32601,7 @@ var devDependencies = {
32478
32601
  "@typescript-eslint/eslint-plugin": "^5.8.0",
32479
32602
  "@typescript-eslint/parser": "^5.8.0",
32480
32603
  autoprefixer: "^10.4.0",
32481
- "babel-loader": "^8.2.3",
32604
+ "babel-loader": "^8.2.4",
32482
32605
  "core-js": "^3.20.0",
32483
32606
  "cp-cli": "^2.0.0",
32484
32607
  "cross-env": "^7.0.3",