@hi-ui/table 4.6.0 → 4.7.0-alpha.1

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.
@@ -75,7 +75,8 @@ var BaseTable = /*#__PURE__*/React.forwardRef(function (_a, ref) {
75
75
  emptyContent = _a.emptyContent,
76
76
  virtual = _a.virtual,
77
77
  needDoubleTable = _a.needDoubleTable,
78
- rest = tslib.__rest(_a, ["prefixCls", "role", "className", "columns", "data", "striped", "bordered", "rowExpandable", "defaultExpandedEmbedRowKeys", "expandedEmbedRowKeys", "onEmbedExpand", "expandedRender", "size", "extra", "onRow", "onHeaderRow", "stickyFooter", "stickyFooterBottom", "fixedColumnTrigger", "emptyContent", "virtual", "needDoubleTable"]);
78
+ onResizeStop = _a.onResizeStop,
79
+ rest = tslib.__rest(_a, ["prefixCls", "role", "className", "columns", "data", "striped", "bordered", "rowExpandable", "defaultExpandedEmbedRowKeys", "expandedEmbedRowKeys", "onEmbedExpand", "expandedRender", "size", "extra", "onRow", "onHeaderRow", "stickyFooter", "stickyFooterBottom", "fixedColumnTrigger", "emptyContent", "virtual", "needDoubleTable", "onResizeStop"]);
79
80
  // ********************** 内嵌式面板 *********************** //
80
81
  var _useEmbedExpand = useEmbedExpand.useEmbedExpand({
81
82
  defaultExpandedEmbedRowKeys: defaultExpandedEmbedRowKeys,
@@ -283,7 +284,8 @@ var BaseTable = /*#__PURE__*/React.forwardRef(function (_a, ref) {
283
284
  hasAvgColumn: hasAvgColumn,
284
285
  sumRow: sumRow,
285
286
  hasSumColumn: hasSumColumn,
286
- virtual: virtual
287
+ virtual: virtual,
288
+ onResizeStop: onResizeStop
287
289
  })
288
290
  }, renderTable()), renderFreezeShadow()), tableFooter);
289
291
  });
@@ -43,7 +43,8 @@ var TheadContent = /*#__PURE__*/React.forwardRef(function (_a, ref) {
43
43
  onColumnResizable = _useTableContext.onColumnResizable,
44
44
  getStickyColProps = _useTableContext.getStickyColProps,
45
45
  showColMenu = _useTableContext.showColMenu,
46
- setHeaderTableElement = _useTableContext.setHeaderTableElement;
46
+ setHeaderTableElement = _useTableContext.setHeaderTableElement,
47
+ _onResizeStop = _useTableContext.onResizeStop;
47
48
  var activeColumnKeysAction = useCheckState.useCheckState();
48
49
  return /*#__PURE__*/React__default["default"].createElement("thead", Object.assign({}, rest), groupedColumns.map(function (cols, colsIndex) {
49
50
  return /*#__PURE__*/React__default["default"].createElement("tr", {
@@ -100,6 +101,9 @@ var TheadContent = /*#__PURE__*/React.forwardRef(function (_a, ref) {
100
101
  width: colWidths[colIndex],
101
102
  onResize: function onResize(evt, options) {
102
103
  onColumnResizable(evt, options, colIndex);
104
+ },
105
+ onResizeStop: function onResizeStop(evt, options) {
106
+ _onResizeStop === null || _onResizeStop === void 0 ? void 0 : _onResizeStop(evt, options === null || options === void 0 ? void 0 : options.size, colIndex, colWidths);
103
107
  }
104
108
  }, cell)) : cell;
105
109
  }));
@@ -194,7 +194,7 @@ var useColWidth = function useColWidth(_ref) {
194
194
  /**
195
195
  * 列宽拖拽 resize,只处理拖拽线两边的列宽度
196
196
  */
197
- var onColumnResizable = React__default["default"].useCallback(function (_, _ref3, index) {
197
+ var onColumnResizable = React__default["default"].useCallback(function (evt, _ref3, index) {
198
198
  var size = _ref3.size;
199
199
  var minWidth = minColWidth[index];
200
200
  var anotherMinWidth = minColWidth[index + 1];
@@ -62,7 +62,8 @@ var BaseTable = /*#__PURE__*/forwardRef(function (_a, ref) {
62
62
  emptyContent = _a.emptyContent,
63
63
  virtual = _a.virtual,
64
64
  needDoubleTable = _a.needDoubleTable,
65
- rest = __rest(_a, ["prefixCls", "role", "className", "columns", "data", "striped", "bordered", "rowExpandable", "defaultExpandedEmbedRowKeys", "expandedEmbedRowKeys", "onEmbedExpand", "expandedRender", "size", "extra", "onRow", "onHeaderRow", "stickyFooter", "stickyFooterBottom", "fixedColumnTrigger", "emptyContent", "virtual", "needDoubleTable"]);
65
+ onResizeStop = _a.onResizeStop,
66
+ rest = __rest(_a, ["prefixCls", "role", "className", "columns", "data", "striped", "bordered", "rowExpandable", "defaultExpandedEmbedRowKeys", "expandedEmbedRowKeys", "onEmbedExpand", "expandedRender", "size", "extra", "onRow", "onHeaderRow", "stickyFooter", "stickyFooterBottom", "fixedColumnTrigger", "emptyContent", "virtual", "needDoubleTable", "onResizeStop"]);
66
67
  // ********************** 内嵌式面板 *********************** //
67
68
  var _useEmbedExpand = useEmbedExpand({
68
69
  defaultExpandedEmbedRowKeys: defaultExpandedEmbedRowKeys,
@@ -270,7 +271,8 @@ var BaseTable = /*#__PURE__*/forwardRef(function (_a, ref) {
270
271
  hasAvgColumn: hasAvgColumn,
271
272
  sumRow: sumRow,
272
273
  hasSumColumn: hasSumColumn,
273
- virtual: virtual
274
+ virtual: virtual,
275
+ onResizeStop: onResizeStop
274
276
  })
275
277
  }, renderTable()), renderFreezeShadow()), tableFooter);
276
278
  });
@@ -31,7 +31,8 @@ var TheadContent = /*#__PURE__*/forwardRef(function (_a, ref) {
31
31
  onColumnResizable = _useTableContext.onColumnResizable,
32
32
  getStickyColProps = _useTableContext.getStickyColProps,
33
33
  showColMenu = _useTableContext.showColMenu,
34
- setHeaderTableElement = _useTableContext.setHeaderTableElement;
34
+ setHeaderTableElement = _useTableContext.setHeaderTableElement,
35
+ _onResizeStop = _useTableContext.onResizeStop;
35
36
  var activeColumnKeysAction = useCheckState();
36
37
  return /*#__PURE__*/React__default.createElement("thead", Object.assign({}, rest), groupedColumns.map(function (cols, colsIndex) {
37
38
  return /*#__PURE__*/React__default.createElement("tr", {
@@ -88,6 +89,9 @@ var TheadContent = /*#__PURE__*/forwardRef(function (_a, ref) {
88
89
  width: colWidths[colIndex],
89
90
  onResize: function onResize(evt, options) {
90
91
  onColumnResizable(evt, options, colIndex);
92
+ },
93
+ onResizeStop: function onResizeStop(evt, options) {
94
+ _onResizeStop === null || _onResizeStop === void 0 ? void 0 : _onResizeStop(evt, options === null || options === void 0 ? void 0 : options.size, colIndex, colWidths);
91
95
  }
92
96
  }, cell)) : cell;
93
97
  }));
@@ -182,7 +182,7 @@ var useColWidth = function useColWidth(_ref) {
182
182
  /**
183
183
  * 列宽拖拽 resize,只处理拖拽线两边的列宽度
184
184
  */
185
- var onColumnResizable = React__default.useCallback(function (_, _ref3, index) {
185
+ var onColumnResizable = React__default.useCallback(function (evt, _ref3, index) {
186
186
  var size = _ref3.size;
187
187
  var minWidth = minColWidth[index];
188
188
  var anotherMinWidth = minColWidth[index + 1];
@@ -3,6 +3,7 @@ import { HiBaseHTMLProps, HiBaseSizeEnum } from '@hi-ui/core';
3
3
  import { TableExtra, TableColumnItem, TableOnRowReturn } from './types';
4
4
  import { UseTableProps } from './use-table';
5
5
  import { UseEmbedExpandProps } from './hooks/use-embed-expand';
6
+ import { ResizeCallbackData } from 'react-resizable';
6
7
  export declare const EMBED_DATA_KEY: string;
7
8
  export declare const BaseTable: React.ForwardRefExoticComponent<BaseTableProps & React.RefAttributes<HTMLDivElement | null>>;
8
9
  export interface BaseTableProps extends Omit<HiBaseHTMLProps<'div'>, 'onDrop' | 'draggable' | 'onDragStart'>, UseTableProps, UseEmbedExpandProps {
@@ -45,6 +46,11 @@ export interface BaseTableProps extends Omit<HiBaseHTMLProps<'div'>, 'onDrop' |
45
46
  fixedColumnTrigger?: 'auto' | 'always';
46
47
  /**
47
48
  * 是否需要使用双表格
49
+ * @private
48
50
  */
49
51
  needDoubleTable?: boolean;
52
+ /**
53
+ * resizable 模式下,列宽变化后触发的回调
54
+ */
55
+ onResizeStop?: (evt: React.SyntheticEvent, size: ResizeCallbackData['size'], index: number, columnsWidth: number[]) => void;
50
56
  }
@@ -1,5 +1,6 @@
1
- /// <reference types="react" />
1
+ import { SyntheticEvent } from 'react';
2
2
  import { TableOnRowReturn } from './types';
3
+ import { ResizeCallbackData } from 'react-resizable';
3
4
  export declare const TableProvider: import("react").Provider<(Omit<{
4
5
  getColgroupProps: (column: import("./types").FlattedTableColumnItemData, index: number) => {
5
6
  style: {
@@ -37,7 +38,7 @@ export declare const TableProvider: import("react").Provider<(Omit<{
37
38
  onTreeNodeSwitch: (node: import("./types").TableRowEventData, onlyExpand?: any) => Promise<void>;
38
39
  resizable: boolean;
39
40
  colWidths: number[];
40
- onColumnResizable: (_: any, { size }: any, index: number) => void;
41
+ onColumnResizable: (evt: any, { size }: any, index: number) => void;
41
42
  isTree: boolean;
42
43
  cellRender: ((text: any) => import("react").ReactNode) | undefined;
43
44
  footerRender: ((...nodes: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>[]) => import("react").ReactNode) | undefined;
@@ -114,6 +115,7 @@ export declare const TableProvider: import("react").Provider<(Omit<{
114
115
  onRow?: ((rowData: Record<string, any> | null, index: number) => TableOnRowReturn) | undefined;
115
116
  striped: boolean;
116
117
  virtual?: boolean | undefined;
118
+ onResizeStop?: ((evt: SyntheticEvent, size: ResizeCallbackData['size'], index: number, columnsWidth: number[]) => void) | undefined;
117
119
  }) | null>;
118
120
  export declare const useTableContext: () => Omit<{
119
121
  getColgroupProps: (column: import("./types").FlattedTableColumnItemData, index: number) => {
@@ -152,7 +154,7 @@ export declare const useTableContext: () => Omit<{
152
154
  onTreeNodeSwitch: (node: import("./types").TableRowEventData, onlyExpand?: any) => Promise<void>;
153
155
  resizable: boolean;
154
156
  colWidths: number[];
155
- onColumnResizable: (_: any, { size }: any, index: number) => void;
157
+ onColumnResizable: (evt: any, { size }: any, index: number) => void;
156
158
  isTree: boolean;
157
159
  cellRender: ((text: any) => import("react").ReactNode) | undefined;
158
160
  footerRender: ((...nodes: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>[]) => import("react").ReactNode) | undefined;
@@ -229,4 +231,5 @@ export declare const useTableContext: () => Omit<{
229
231
  onRow?: ((rowData: Record<string, any> | null, index: number) => TableOnRowReturn) | undefined;
230
232
  striped: boolean;
231
233
  virtual?: boolean | undefined;
234
+ onResizeStop?: ((evt: SyntheticEvent, size: ResizeCallbackData['size'], index: number, columnsWidth: number[]) => void) | undefined;
232
235
  };
@@ -7,7 +7,7 @@ export declare const useColWidth: ({ resizable, data, columns, virtual, }: {
7
7
  virtual?: boolean | undefined;
8
8
  }) => {
9
9
  measureRowElementRef: React.MutableRefObject<HTMLTableRowElement | null>;
10
- onColumnResizable: (_: any, { size }: any, index: number) => void;
10
+ onColumnResizable: (evt: any, { size }: any, index: number) => void;
11
11
  getColgroupProps: (column: FlattedTableColumnItemData, index: number) => {
12
12
  style: {
13
13
  width: number | undefined;
@@ -39,7 +39,7 @@ export declare const useTable: ({ data, columns: columnsProp, defaultFixedToColu
39
39
  onTreeNodeSwitch: (node: TableRowEventData, onlyExpand?: any) => Promise<void>;
40
40
  resizable: boolean;
41
41
  colWidths: number[];
42
- onColumnResizable: (_: any, { size }: any, index: number) => void;
42
+ onColumnResizable: (evt: any, { size }: any, index: number) => void;
43
43
  isTree: boolean;
44
44
  cellRender: ((text: any) => React.ReactNode) | undefined;
45
45
  footerRender: ((...nodes: React.ReactElement[]) => React.ReactNode) | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hi-ui/table",
3
- "version": "4.6.0",
3
+ "version": "4.7.0-alpha.1",
4
4
  "description": "A sub-package for @hi-ui/hiui.",
5
5
  "keywords": [],
6
6
  "author": "HiUI <mi-hiui@xiaomi.com>",