react-kd-grid 5.0.2 → 5.0.4
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/dist/components/SearchToolbar.d.ts +6 -2
- package/dist/components/toolbar/BulkActionPopover.d.ts +17 -0
- package/dist/components/toolbar/ColumnVisibilityPopover.d.ts +35 -0
- package/dist/components/toolbar/ExportPopover.d.ts +18 -0
- package/dist/components/toolbar/FilterPopover.d.ts +29 -0
- package/dist/components/toolbar/SettingsPopover.d.ts +17 -0
- package/dist/components/ui/Button.d.ts +11 -0
- package/dist/components/ui/Checkbox.d.ts +9 -0
- package/dist/components/ui/CustomSelect.d.ts +14 -0
- package/dist/components/ui/Popover.d.ts +17 -0
- package/dist/components/ui/TextField.d.ts +12 -0
- package/dist/constants/toolbar.d.ts +17 -0
- package/dist/core/GridBodyContainer.d.ts +83 -0
- package/dist/core/GridFooterContainer.d.ts +23 -0
- package/dist/core/GridToolbarContainer.d.ts +48 -0
- package/dist/grid/components/Filters/BooleanFilter.d.ts +7 -0
- package/dist/grid/components/Filters/DateFilter.d.ts +9 -0
- package/dist/grid/components/Filters/FilterContent.d.ts +9 -0
- package/dist/grid/components/Filters/FilterPopup.d.ts +2 -0
- package/dist/grid/components/Filters/MultiselectFilter.d.ts +10 -0
- package/dist/grid/components/Filters/NumberFilter.d.ts +9 -0
- package/dist/grid/components/Filters/TextFilter.d.ts +8 -0
- package/dist/grid/components/Filters/index.d.ts +6 -0
- package/dist/grid/components/Popovers/BulkActionPopover.d.ts +17 -0
- package/dist/grid/components/Popovers/ColumnVisibilityPopover.d.ts +35 -0
- package/dist/grid/components/Popovers/ExportPopover.d.ts +18 -0
- package/dist/grid/components/Popovers/FilterPopover.d.ts +29 -0
- package/dist/grid/components/Popovers/SettingsPopover.d.ts +17 -0
- package/dist/grid/components/Shared/CellEditor.d.ts +23 -0
- package/dist/grid/components/Shared/ColumnFilterSelector.d.ts +18 -0
- package/dist/grid/components/Shared/FooterAggregate.d.ts +16 -0
- package/dist/grid/components/Shared/GridHeader.d.ts +39 -0
- package/dist/grid/components/Shared/GridRows.d.ts +53 -0
- package/dist/grid/components/Shared/GroupBar.d.ts +12 -0
- package/dist/grid/components/Shared/GroupHeader.d.ts +29 -0
- package/dist/grid/components/Shared/LicenseError.d.ts +9 -0
- package/dist/grid/components/Shared/NoDataMessage.d.ts +11 -0
- package/dist/grid/components/Shared/PaginationControls.d.ts +18 -0
- package/dist/grid/components/Shared/RowContextMenu.d.ts +18 -0
- package/dist/grid/components/Toolbar/Toolbar.d.ts +70 -0
- package/dist/grid/constants/index.d.ts +1 -0
- package/dist/grid/constants/toolbar.d.ts +17 -0
- package/dist/grid/core/DataGrid.d.ts +3 -0
- package/dist/grid/core/GridBodyContainer.d.ts +83 -0
- package/dist/grid/core/GridFooterContainer.d.ts +23 -0
- package/dist/grid/core/GridToolbarContainer.d.ts +48 -0
- package/dist/grid/hooks/toolbar/useColumnDnD.d.ts +28 -0
- package/dist/grid/hooks/toolbar/useToolbarMenus.d.ts +29 -0
- package/dist/grid/hooks/useAdvancedFiltering.d.ts +18 -0
- package/dist/grid/hooks/useCellSelection.d.ts +67 -0
- package/dist/grid/hooks/useColumnState.d.ts +52 -0
- package/dist/grid/hooks/useDataWorker.d.ts +11 -0
- package/dist/grid/hooks/useEditingCell.d.ts +49 -0
- package/dist/grid/hooks/useExport.d.ts +14 -0
- package/dist/grid/hooks/useGridDataMaps.d.ts +17 -0
- package/dist/grid/hooks/useGridMethods.d.ts +20 -0
- package/dist/grid/hooks/useGrouping.d.ts +28 -0
- package/dist/grid/hooks/useHorizontalVirtualization.d.ts +18 -0
- package/dist/grid/hooks/useInfiniteScroll.d.ts +31 -0
- package/dist/grid/hooks/useLoadingBar.d.ts +21 -0
- package/dist/grid/hooks/usePagination.d.ts +28 -0
- package/dist/grid/hooks/useScrollSync.d.ts +29 -0
- package/dist/grid/hooks/useSelection.d.ts +13 -0
- package/dist/grid/hooks/useVirtualization.d.ts +17 -0
- package/dist/grid/types.d.ts +570 -0
- package/dist/grid/utils/dateUtils.d.ts +16 -0
- package/dist/grid/utils/highlightText.d.ts +15 -0
- package/dist/grid/utils/license.d.ts +3 -0
- package/dist/hooks/toolbar/useColumnDnD.d.ts +28 -0
- package/dist/hooks/toolbar/useToolbarMenus.d.ts +29 -0
- package/dist/hooks/useColumnState.d.ts +8 -1
- package/dist/hooks/useGridDataMaps.d.ts +17 -0
- package/dist/hooks/useGridMethods.d.ts +20 -0
- package/dist/hooks/useHorizontalVirtualization.d.ts +18 -0
- package/dist/icons/index.d.ts +1 -0
- package/dist/index.d.ts +21 -12
- package/dist/index.esm.js +1 -1
- package/dist/index.js +1 -1
- package/dist/styles.css +1 -0
- package/dist/types.d.ts +0 -22
- package/dist/utils/theme.d.ts +7 -0
- package/package.json +1 -1
|
@@ -17,12 +17,18 @@ interface UseColumnStateProps {
|
|
|
17
17
|
globalFilter: string;
|
|
18
18
|
columnFilters: Record<string, ColumnFilterValue | null>;
|
|
19
19
|
density: Density;
|
|
20
|
+
containerWidth: number;
|
|
21
|
+
selectable: boolean;
|
|
20
22
|
}
|
|
21
23
|
export interface UseColumnStateReturn {
|
|
22
24
|
columnWidths: Record<string, number>;
|
|
23
25
|
columnOrder: string[];
|
|
24
26
|
pinnedColumns: Set<string>;
|
|
25
27
|
columnVisibility: Record<string, boolean>;
|
|
28
|
+
columnsWithWidths: any[];
|
|
29
|
+
pinnedAll: any[];
|
|
30
|
+
unpinnedAll: any[];
|
|
31
|
+
effectivePinnedColumns: Set<string>;
|
|
26
32
|
handleColumnResize: (columnKey: string, width: number) => void;
|
|
27
33
|
handleColumnPin: (columnKey: string, pinned: boolean) => void;
|
|
28
34
|
handleColumnVisibilityChange: (columnKey: string, visible: boolean) => void;
|
|
@@ -40,6 +46,7 @@ export interface UseColumnStateReturn {
|
|
|
40
46
|
* - Autosize (canvas-based measureText, with heuristic fallback)
|
|
41
47
|
* - Column config hydration from `initialColumnConfig` on mount
|
|
42
48
|
* - Debounced `onColumnConfigChange` emission
|
|
49
|
+
* - Calculation of resolved columnsWithWidths including flex-grow
|
|
43
50
|
*/
|
|
44
|
-
export declare const useColumnState: ({ columns, data, initialColumnConfig, onColumnConfigChange, setSortConfig, setGroupKeys, setDensity, setGlobalFilter, setColumnFilter, sortConfig, groupConfig, globalFilter, columnFilters, density, }: UseColumnStateProps) => UseColumnStateReturn;
|
|
51
|
+
export declare const useColumnState: ({ columns, data, initialColumnConfig, onColumnConfigChange, setSortConfig, setGroupKeys, setDensity, setGlobalFilter, setColumnFilter, sortConfig, groupConfig, globalFilter, columnFilters, density, containerWidth, selectable, }: UseColumnStateProps) => UseColumnStateReturn;
|
|
45
52
|
export {};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { GridRow } from "../types";
|
|
2
|
+
interface UseGridDataMapsProps {
|
|
3
|
+
dataToDisplay: any[];
|
|
4
|
+
columnsWithWidths: any[];
|
|
5
|
+
getRowId?: (row: GridRow) => string | number;
|
|
6
|
+
}
|
|
7
|
+
export declare const useGridDataMaps: ({ dataToDisplay, columnsWithWidths, getRowId, }: UseGridDataMapsProps) => {
|
|
8
|
+
colIndexByKey: Map<string, number>;
|
|
9
|
+
colByKey: Map<string, any>;
|
|
10
|
+
flatRows: any[];
|
|
11
|
+
rowIndexById: Map<string | number, number>;
|
|
12
|
+
rowById: Map<string | number, any>;
|
|
13
|
+
totalWidth: any;
|
|
14
|
+
columnKeys: any[];
|
|
15
|
+
hasFooterAggregate: boolean;
|
|
16
|
+
};
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { RefObject } from "react";
|
|
2
|
+
interface UseGridMethodsProps {
|
|
3
|
+
scrollRef: RefObject<HTMLDivElement>;
|
|
4
|
+
rowIndexById: Map<string | number, number>;
|
|
5
|
+
colIndexByKey: Map<string, number>;
|
|
6
|
+
columnsWithWidths: any[];
|
|
7
|
+
resolvedRowHeight: number;
|
|
8
|
+
selectable: boolean;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* useGridMethods
|
|
12
|
+
*
|
|
13
|
+
* Centralizes imperative grid operations like scrolling to specific rows or columns.
|
|
14
|
+
* This logic was previously duplicated in DataGrid.tsx and its sub-components.
|
|
15
|
+
*/
|
|
16
|
+
export declare function useGridMethods({ scrollRef, rowIndexById, colIndexByKey, columnsWithWidths, resolvedRowHeight, selectable, }: UseGridMethodsProps): {
|
|
17
|
+
scrollToRow: (rowId: string | number) => void;
|
|
18
|
+
scrollToColumn: (columnKey: string) => void;
|
|
19
|
+
};
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
interface UseHorizontalVirtualizationProps {
|
|
2
|
+
columnsWithWidths: any[];
|
|
3
|
+
pinnedAll: any[];
|
|
4
|
+
unpinnedAll: any[];
|
|
5
|
+
effectivePinnedColumns: Set<string>;
|
|
6
|
+
hScrollLeft: number;
|
|
7
|
+
viewportWidth: number;
|
|
8
|
+
selectable: boolean;
|
|
9
|
+
enableHorizontalVirtualization: boolean;
|
|
10
|
+
horizontalVirtualizationThreshold: number;
|
|
11
|
+
}
|
|
12
|
+
export declare const useHorizontalVirtualization: ({ columnsWithWidths, pinnedAll, unpinnedAll, effectivePinnedColumns, hScrollLeft, viewportWidth, selectable, enableHorizontalVirtualization, horizontalVirtualizationThreshold, }: UseHorizontalVirtualizationProps) => {
|
|
13
|
+
needsHorizontalVirtualization: boolean;
|
|
14
|
+
visibleColumns: any[];
|
|
15
|
+
hvPadLeftMemo: number;
|
|
16
|
+
hvPadRightMemo: number;
|
|
17
|
+
};
|
|
18
|
+
export {};
|
package/dist/icons/index.d.ts
CHANGED
|
@@ -42,6 +42,7 @@ export declare const Search: (p: IconProps) => import("react/jsx-runtime").JSX.E
|
|
|
42
42
|
export declare const Database: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
43
43
|
export declare const FileText: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
44
44
|
export declare const Table: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
45
|
+
export declare const Columns: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
45
46
|
export declare const Users: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
46
47
|
export declare const LocateFixed: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
47
48
|
export declare const Loader2: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,12 +1,21 @@
|
|
|
1
|
-
export { KDGrid } from "./core/DataGrid";
|
|
2
|
-
export
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
7
|
-
export {
|
|
8
|
-
export {
|
|
9
|
-
export {
|
|
10
|
-
export {
|
|
11
|
-
export {
|
|
12
|
-
export {
|
|
1
|
+
export { KDGrid } from "./grid/core/DataGrid";
|
|
2
|
+
export { default } from "./grid/core/DataGrid";
|
|
3
|
+
export { Button } from "./components/ui/Button";
|
|
4
|
+
export { TextField } from "./components/ui/TextField";
|
|
5
|
+
export { Checkbox } from "./components/ui/Checkbox";
|
|
6
|
+
export { Popover } from "./components/ui/Popover";
|
|
7
|
+
export { CustomSelect } from "./components/ui/CustomSelect";
|
|
8
|
+
export { DatePicker } from "./components/ui/DatePicker";
|
|
9
|
+
export type { KDGridProps, KDGridRef, GridColumn, GridRow, Density, SortConfig, SortDirection, PaginationConfig, PaginationOptions, ExportOptions, PerformanceConfig, InfiniteScrollOptions, GroupConfig, ActiveFilters, ColumnFilterValue, ColumnFilter, FilterType, ColumnConfig, ContextMenuItem, BulkActionOption, SavedFilter, SearchMode, ExportFormat, RowEventParams, CellClickParams, CellContextMenuParams, CellFocusParams, CellEditParams, CellSelectionPayload, CopyCellsPayload, } from "./grid/types";
|
|
10
|
+
export { usePagination } from "./grid/hooks/usePagination";
|
|
11
|
+
export { useVirtualization } from "./grid/hooks/useVirtualization";
|
|
12
|
+
export { useSelection } from "./grid/hooks/useSelection";
|
|
13
|
+
export { useAdvancedFiltering } from "./grid/hooks/useAdvancedFiltering";
|
|
14
|
+
export { useGridMethods } from "./grid/hooks/useGridMethods";
|
|
15
|
+
export { setLicenseKey } from "./grid/utils/license";
|
|
16
|
+
export { PaginationControls } from "./grid/components/Shared/PaginationControls";
|
|
17
|
+
export { GridHeader } from "./grid/components/Shared/GridHeader";
|
|
18
|
+
export { GridRows } from "./grid/components/Shared/GridRows";
|
|
19
|
+
export { Toolbar } from "./grid/components/Toolbar/Toolbar";
|
|
20
|
+
export { FooterAggregate } from "./grid/components/Shared/FooterAggregate";
|
|
21
|
+
export { GroupBar } from "./grid/components/Shared/GroupBar";
|