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.
Files changed (82) hide show
  1. package/dist/components/SearchToolbar.d.ts +6 -2
  2. package/dist/components/toolbar/BulkActionPopover.d.ts +17 -0
  3. package/dist/components/toolbar/ColumnVisibilityPopover.d.ts +35 -0
  4. package/dist/components/toolbar/ExportPopover.d.ts +18 -0
  5. package/dist/components/toolbar/FilterPopover.d.ts +29 -0
  6. package/dist/components/toolbar/SettingsPopover.d.ts +17 -0
  7. package/dist/components/ui/Button.d.ts +11 -0
  8. package/dist/components/ui/Checkbox.d.ts +9 -0
  9. package/dist/components/ui/CustomSelect.d.ts +14 -0
  10. package/dist/components/ui/Popover.d.ts +17 -0
  11. package/dist/components/ui/TextField.d.ts +12 -0
  12. package/dist/constants/toolbar.d.ts +17 -0
  13. package/dist/core/GridBodyContainer.d.ts +83 -0
  14. package/dist/core/GridFooterContainer.d.ts +23 -0
  15. package/dist/core/GridToolbarContainer.d.ts +48 -0
  16. package/dist/grid/components/Filters/BooleanFilter.d.ts +7 -0
  17. package/dist/grid/components/Filters/DateFilter.d.ts +9 -0
  18. package/dist/grid/components/Filters/FilterContent.d.ts +9 -0
  19. package/dist/grid/components/Filters/FilterPopup.d.ts +2 -0
  20. package/dist/grid/components/Filters/MultiselectFilter.d.ts +10 -0
  21. package/dist/grid/components/Filters/NumberFilter.d.ts +9 -0
  22. package/dist/grid/components/Filters/TextFilter.d.ts +8 -0
  23. package/dist/grid/components/Filters/index.d.ts +6 -0
  24. package/dist/grid/components/Popovers/BulkActionPopover.d.ts +17 -0
  25. package/dist/grid/components/Popovers/ColumnVisibilityPopover.d.ts +35 -0
  26. package/dist/grid/components/Popovers/ExportPopover.d.ts +18 -0
  27. package/dist/grid/components/Popovers/FilterPopover.d.ts +29 -0
  28. package/dist/grid/components/Popovers/SettingsPopover.d.ts +17 -0
  29. package/dist/grid/components/Shared/CellEditor.d.ts +23 -0
  30. package/dist/grid/components/Shared/ColumnFilterSelector.d.ts +18 -0
  31. package/dist/grid/components/Shared/FooterAggregate.d.ts +16 -0
  32. package/dist/grid/components/Shared/GridHeader.d.ts +39 -0
  33. package/dist/grid/components/Shared/GridRows.d.ts +53 -0
  34. package/dist/grid/components/Shared/GroupBar.d.ts +12 -0
  35. package/dist/grid/components/Shared/GroupHeader.d.ts +29 -0
  36. package/dist/grid/components/Shared/LicenseError.d.ts +9 -0
  37. package/dist/grid/components/Shared/NoDataMessage.d.ts +11 -0
  38. package/dist/grid/components/Shared/PaginationControls.d.ts +18 -0
  39. package/dist/grid/components/Shared/RowContextMenu.d.ts +18 -0
  40. package/dist/grid/components/Toolbar/Toolbar.d.ts +70 -0
  41. package/dist/grid/constants/index.d.ts +1 -0
  42. package/dist/grid/constants/toolbar.d.ts +17 -0
  43. package/dist/grid/core/DataGrid.d.ts +3 -0
  44. package/dist/grid/core/GridBodyContainer.d.ts +83 -0
  45. package/dist/grid/core/GridFooterContainer.d.ts +23 -0
  46. package/dist/grid/core/GridToolbarContainer.d.ts +48 -0
  47. package/dist/grid/hooks/toolbar/useColumnDnD.d.ts +28 -0
  48. package/dist/grid/hooks/toolbar/useToolbarMenus.d.ts +29 -0
  49. package/dist/grid/hooks/useAdvancedFiltering.d.ts +18 -0
  50. package/dist/grid/hooks/useCellSelection.d.ts +67 -0
  51. package/dist/grid/hooks/useColumnState.d.ts +52 -0
  52. package/dist/grid/hooks/useDataWorker.d.ts +11 -0
  53. package/dist/grid/hooks/useEditingCell.d.ts +49 -0
  54. package/dist/grid/hooks/useExport.d.ts +14 -0
  55. package/dist/grid/hooks/useGridDataMaps.d.ts +17 -0
  56. package/dist/grid/hooks/useGridMethods.d.ts +20 -0
  57. package/dist/grid/hooks/useGrouping.d.ts +28 -0
  58. package/dist/grid/hooks/useHorizontalVirtualization.d.ts +18 -0
  59. package/dist/grid/hooks/useInfiniteScroll.d.ts +31 -0
  60. package/dist/grid/hooks/useLoadingBar.d.ts +21 -0
  61. package/dist/grid/hooks/usePagination.d.ts +28 -0
  62. package/dist/grid/hooks/useScrollSync.d.ts +29 -0
  63. package/dist/grid/hooks/useSelection.d.ts +13 -0
  64. package/dist/grid/hooks/useVirtualization.d.ts +17 -0
  65. package/dist/grid/types.d.ts +570 -0
  66. package/dist/grid/utils/dateUtils.d.ts +16 -0
  67. package/dist/grid/utils/highlightText.d.ts +15 -0
  68. package/dist/grid/utils/license.d.ts +3 -0
  69. package/dist/hooks/toolbar/useColumnDnD.d.ts +28 -0
  70. package/dist/hooks/toolbar/useToolbarMenus.d.ts +29 -0
  71. package/dist/hooks/useColumnState.d.ts +8 -1
  72. package/dist/hooks/useGridDataMaps.d.ts +17 -0
  73. package/dist/hooks/useGridMethods.d.ts +20 -0
  74. package/dist/hooks/useHorizontalVirtualization.d.ts +18 -0
  75. package/dist/icons/index.d.ts +1 -0
  76. package/dist/index.d.ts +21 -12
  77. package/dist/index.esm.js +1 -1
  78. package/dist/index.js +1 -1
  79. package/dist/styles.css +1 -0
  80. package/dist/types.d.ts +0 -22
  81. package/dist/utils/theme.d.ts +7 -0
  82. 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 {};
@@ -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 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 "./types";
3
- export { usePagination } from "./hooks/usePagination";
4
- export { useVirtualization } from "./hooks/useVirtualization";
5
- export { useSelection } from "./hooks/useSelection";
6
- export { useAdvancedFiltering } from "./hooks/useAdvancedFiltering";
7
- export { setLicenseKey } from "./utils/license";
8
- export { PaginationControls } from "./components/PaginationControls";
9
- export { GridHeader } from "./components/GridHeader";
10
- export { GridRows } from "./components/GridRows";
11
- export { SearchToolbar } from "./components/SearchToolbar";
12
- export { FooterAggregate } from "./components/FooterAggregate";
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";