@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.
- package/lib/cjs/BaseTable.js +4 -2
- package/lib/cjs/TheadContent.js +5 -1
- package/lib/cjs/hooks/use-col-width.js +1 -1
- package/lib/esm/BaseTable.js +4 -2
- package/lib/esm/TheadContent.js +5 -1
- package/lib/esm/hooks/use-col-width.js +1 -1
- package/lib/types/BaseTable.d.ts +6 -0
- package/lib/types/context.d.ts +6 -3
- package/lib/types/hooks/use-col-width.d.ts +1 -1
- package/lib/types/use-table.d.ts +1 -1
- package/package.json +1 -1
package/lib/cjs/BaseTable.js
CHANGED
|
@@ -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
|
-
|
|
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
|
});
|
package/lib/cjs/TheadContent.js
CHANGED
|
@@ -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 (
|
|
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];
|
package/lib/esm/BaseTable.js
CHANGED
|
@@ -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
|
-
|
|
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
|
});
|
package/lib/esm/TheadContent.js
CHANGED
|
@@ -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 (
|
|
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];
|
package/lib/types/BaseTable.d.ts
CHANGED
|
@@ -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
|
}
|
package/lib/types/context.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
|
|
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: (
|
|
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: (
|
|
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: (
|
|
10
|
+
onColumnResizable: (evt: any, { size }: any, index: number) => void;
|
|
11
11
|
getColgroupProps: (column: FlattedTableColumnItemData, index: number) => {
|
|
12
12
|
style: {
|
|
13
13
|
width: number | undefined;
|
package/lib/types/use-table.d.ts
CHANGED
|
@@ -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: (
|
|
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;
|