slickgrid-react 9.11.0 → 9.12.0

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/README.md CHANGED
@@ -85,15 +85,15 @@ export default function Example() {
85
85
 
86
86
  ### Versions Compatibility
87
87
 
88
- > **Note** please be aware that only the latest major version of Slickgrid-React will be supported and receive bug fixes (it's already a lot of work to maintain for a single developer like me).
89
-
90
- | Slickgrid-React | React version | Migration Guide | Notes |
91
- |-------------------|-----------------|-----------------|------|
92
- | 9.x | React 19+ | [Migration 9.x](https://ghiscoding.gitbook.io/slickgrid-react/migrations/migration-to-9.x) | ESM-Only, requires Slickgrid-Universal [9.x](https://github.com/ghiscoding/slickgrid-universal/releases/tag/v9.0.0) |
93
- | 5.x | React 18+ | [Migration 5.x](https://ghiscoding.gitbook.io/slickgrid-react/migrations/migration-to-5.x) | Modern UI / Dark Mode, requires Slickgrid-Universal [5.x](https://github.com/ghiscoding/slickgrid-universal/releases/tag/v5.0.0) |
94
- | 4.x | | [Migration 4.x](https://ghiscoding.gitbook.io/slickgrid-react/migrations/migration-to-4.x) | merge SlickGrid into Slickgrid-Universal, requires Slickgrid-Universal [4.x](https://github.com/ghiscoding/slickgrid-universal/releases/tag/v4.0.2) |
95
- | 3.x | | [Migration 3.x](https://ghiscoding.gitbook.io/slickgrid-react/migrations/migration-to-3.x) | removal of jQuery (now uses browser native code), requires Slickgrid-Universal [3.x](https://github.com/ghiscoding/slickgrid-universal/releases/tag/v3.0.0) |
96
- | 2.x | React 18+ | [Migration 2.x](https://ghiscoding.gitbook.io/slickgrid-react/migrations/migration-to-2.x) | removal of jQueryUI, requires Slickgrid-Universal [2.x](https://github.com/ghiscoding/slickgrid-universal/releases/tag/v2.0.0) version |
88
+ > **Note** Please be aware that only the latest major version of Slickgrid-React will be supported and receive bug fixes.
89
+
90
+ | Slickgrid-React | React | Migration Guide | Notes | Date |
91
+ |:---------------:| --------- | --------------- | ----- | ---- |
92
+ | 9.x | React 19+ | [Migration 9.x](https://ghiscoding.gitbook.io/slickgrid-react/migrations/migration-to-9.x) | ESM-Only, requires Slickgrid-Universal [9.x](https://github.com/ghiscoding/slickgrid-universal/releases/tag/v9.0.0) | 2025-05-10 |
93
+ | 5.x | React 18+ | [Migration 5.x](https://ghiscoding.gitbook.io/slickgrid-react/migrations/migration-to-5.x) | Modern UI / Dark Mode, requires Slickgrid-Universal [5.x](https://github.com/ghiscoding/slickgrid-universal/releases/tag/v5.0.0) | 2024-05-10 |
94
+ | 4.x | | [Migration 4.x](https://ghiscoding.gitbook.io/slickgrid-react/migrations/migration-to-4.x) | merge SlickGrid into Slickgrid-Universal,<br> requires Slickgrid-Universal [4.x](https://github.com/ghiscoding/slickgrid-universal/releases/tag/v4.0.2) | 2023-12-15 |
95
+ | 3.x | | [Migration 3.x](https://ghiscoding.gitbook.io/slickgrid-react/migrations/migration-to-3.x) | removal of jQuery (now uses browser native code),<br> requires Slickgrid-Universal [3.x](https://github.com/ghiscoding/slickgrid-universal/releases/tag/v3.0.0) | 2023-05-29 |
96
+ | 2.x | React 18+ | [Migration 2.x](https://ghiscoding.gitbook.io/slickgrid-react/migrations/migration-to-2.x) | removal of jQueryUI, requires Slickgrid-Universal [2.x](https://github.com/ghiscoding/slickgrid-universal/releases/tag/v2.0.0) | 2022-12-08 |
97
97
 
98
98
  ### Styling Themes
99
99
 
@@ -1,4 +1,4 @@
1
- import type { Column, ColumnSort, ContainerService, CurrentFilter, CurrentSorter, DragRowMove, ExportTextDownloadOption, ExtensionList, GridMenuCommandItemCallbackArgs, GridMenuEventWithElementCallbackArgs, GridOption, GridSize, GridStateChange, HeaderButtonOnCommandArgs, HeaderMenuCommandItemCallbackArgs, MenuCommandItemCallbackArgs, MenuFromCellCallbackArgs, MenuOptionItemCallbackArgs, OnActiveCellChangedEventArgs, OnAddNewRowEventArgs, OnAutosizeColumnsEventArgs, OnBeforeAppendCellEventArgs, OnBeforeCellEditorDestroyEventArgs, OnBeforeColumnsResizeEventArgs, OnBeforeEditCellEventArgs, OnBeforeFooterRowCellDestroyEventArgs, OnBeforeHeaderCellDestroyEventArgs, OnBeforeHeaderRowCellDestroyEventArgs, OnBeforeSetColumnsEventArgs, OnCellChangeEventArgs, OnCellCssStylesChangedEventArgs, OnClickEventArgs, OnColumnsChangedArgs, OnColumnsDragEventArgs, OnColumnsReorderedEventArgs, OnColumnsResizeDblClickEventArgs, OnColumnsResizedEventArgs, OnCompositeEditorChangeEventArgs, OnDblClickEventArgs, OnDragReplaceCellsEventArgs, OnFooterClickEventArgs, OnFooterContextMenuEventArgs, OnFooterRowCellRenderedEventArgs, OnGroupCollapsedEventArgs, OnGroupExpandedEventArgs, OnHeaderCellRenderedEventArgs, OnHeaderClickEventArgs, OnHeaderContextMenuEventArgs, OnHeaderMouseEventArgs, OnHeaderRowCellRenderedEventArgs, OnKeyDownEventArgs, OnRenderedEventArgs, OnRowCountChangedEventArgs, OnRowsChangedEventArgs, OnRowsOrCountChangedEventArgs, OnScrollEventArgs, OnSelectedRowIdsChangedEventArgs, OnSelectedRowsChangedEventArgs, OnSetItemsCalledEventArgs, OnSetOptionsEventArgs, OnValidationErrorEventArgs, Pagination, PaginationMetadata, PagingInfo, ReactRegularEventHandler, ReactSlickEventHandler, SingleColumnSort, SlickControlList, SlickDataView, SlickGrid, SlickPluginList, SlickRange, TreeToggleStateChange } from '@slickgrid-universal/common';
1
+ import type { Column, ColumnSort, ContainerService, CurrentFilter, CurrentSorter, DragRowMove, ExportTextDownloadOption, ExtensionList, GridMenuCommandItemCallbackArgs, GridMenuEventWithElementCallbackArgs, GridOption, GridSize, GridStateChange, HeaderButtonOnCommandArgs, HeaderMenuCommandItemCallbackArgs, MenuCommandItemCallbackArgs, MenuFromCellCallbackArgs, MenuOptionItemCallbackArgs, OnActiveCellChangedEventArgs, OnAddNewRowEventArgs, OnAutosizeColumnsEventArgs, OnBeforeAppendCellEventArgs, OnBeforeCellEditorDestroyEventArgs, OnBeforeColumnsResizeEventArgs, OnBeforeEditCellEventArgs, OnBeforeFooterRowCellDestroyEventArgs, OnBeforeHeaderCellDestroyEventArgs, OnBeforeHeaderRowCellDestroyEventArgs, OnBeforeSetColumnsEventArgs, OnCellChangeEventArgs, OnCellCssStylesChangedEventArgs, OnClickEventArgs, OnColumnsChangedArgs, OnColumnsDragEventArgs, OnColumnsReorderedEventArgs, OnColumnsResizeDblClickEventArgs, OnColumnsResizedEventArgs, OnCompositeEditorChangeEventArgs, OnDblClickEventArgs, OnDragReplaceCellsEventArgs, OnFooterClickEventArgs, OnFooterContextMenuEventArgs, OnFooterRowCellRenderedEventArgs, OnGroupCollapsedEventArgs, OnGroupExpandedEventArgs, OnHeaderCellRenderedEventArgs, OnHeaderClickEventArgs, OnHeaderContextMenuEventArgs, OnHeaderMouseEventArgs, OnHeaderRowCellRenderedEventArgs, OnKeyDownEventArgs, OnRenderedEventArgs, OnRowCountChangedEventArgs, OnRowsChangedEventArgs, OnRowsOrCountChangedEventArgs, OnScrollEventArgs, OnSearchChangeEventArgs, OnSelectedRowIdsChangedEventArgs, OnSelectedRowsChangedEventArgs, OnSetItemsCalledEventArgs, OnSetOptionsEventArgs, OnValidationErrorEventArgs, Pagination, PaginationMetadata, PagingInfo, ReactRegularEventHandler, ReactSlickEventHandler, SingleColumnSort, SlickControlList, SlickDataView, SlickGrid, SlickPluginList, SlickRange, TreeToggleStateChange } from '@slickgrid-universal/common';
2
2
  import type { SlickgridReactInstance } from '../models/index.js';
3
3
  import type { TranslaterI18NextService } from '../services/translaterI18Next.service.js';
4
4
  export interface SlickgridReactProps {
@@ -22,7 +22,6 @@ export interface SlickgridReactProps {
22
22
  onAddNewRow?: ReactSlickEventHandler<OnAddNewRowEventArgs>;
23
23
  onAutosizeColumns?: ReactSlickEventHandler<OnAutosizeColumnsEventArgs>;
24
24
  onBeforeAppendCell?: ReactSlickEventHandler<OnBeforeAppendCellEventArgs>;
25
- onBeforeSearchChange?: ReactSlickEventHandler<OnCellChangeEventArgs, boolean | void>;
26
25
  onBeforeCellEditorDestroy?: ReactSlickEventHandler<OnBeforeCellEditorDestroyEventArgs>;
27
26
  onBeforeColumnsResize?: ReactSlickEventHandler<OnBeforeColumnsResizeEventArgs>;
28
27
  onBeforeDestroy?: ReactSlickEventHandler<{
@@ -113,6 +112,8 @@ export interface SlickgridReactProps {
113
112
  onAfterExportToExcel?: ReactRegularEventHandler<{
114
113
  filename: string;
115
114
  mimeType: string;
115
+ } | {
116
+ error: any;
116
117
  }>;
117
118
  onBeforeExportToExcel?: ReactRegularEventHandler<boolean>;
118
119
  onBeforeExportToTextFile?: ReactRegularEventHandler<boolean>;
@@ -121,6 +122,7 @@ export interface SlickgridReactProps {
121
122
  onBeforeFilterClear?: ReactRegularEventHandler<{
122
123
  columnId: string;
123
124
  } | boolean>;
125
+ onBeforeSearchChange?: ReactRegularEventHandler<OnSearchChangeEventArgs, boolean | void>;
124
126
  onBeforeSortChange?: ReactRegularEventHandler<Array<ColumnSort & {
125
127
  clearSortTriggered?: boolean;
126
128
  }>>;
@@ -1 +1 @@
1
- {"version":3,"file":"slickgridReactProps.js","sourceRoot":"","sources":["../../src/components/slickgridReactProps.ts"],"names":[],"mappings":"","sourcesContent":["import type {\n Column,\n ColumnSort,\n ContainerService,\n CurrentFilter,\n CurrentSorter,\n DragRowMove,\n ExportTextDownloadOption,\n ExtensionList,\n GridMenuCommandItemCallbackArgs,\n GridMenuEventWithElementCallbackArgs,\n GridOption,\n GridSize,\n GridStateChange,\n HeaderButtonOnCommandArgs,\n HeaderMenuCommandItemCallbackArgs,\n MenuCommandItemCallbackArgs,\n MenuFromCellCallbackArgs,\n MenuOptionItemCallbackArgs,\n OnActiveCellChangedEventArgs,\n OnAddNewRowEventArgs,\n OnAutosizeColumnsEventArgs,\n OnBeforeAppendCellEventArgs,\n OnBeforeCellEditorDestroyEventArgs,\n OnBeforeColumnsResizeEventArgs,\n OnBeforeEditCellEventArgs,\n OnBeforeFooterRowCellDestroyEventArgs,\n OnBeforeHeaderCellDestroyEventArgs,\n OnBeforeHeaderRowCellDestroyEventArgs,\n OnBeforeSetColumnsEventArgs,\n OnCellChangeEventArgs,\n OnCellCssStylesChangedEventArgs,\n OnClickEventArgs,\n OnColumnsChangedArgs,\n OnColumnsDragEventArgs,\n OnColumnsReorderedEventArgs,\n OnColumnsResizeDblClickEventArgs,\n OnColumnsResizedEventArgs,\n OnCompositeEditorChangeEventArgs,\n OnDblClickEventArgs,\n OnDragReplaceCellsEventArgs,\n OnFooterClickEventArgs,\n OnFooterContextMenuEventArgs,\n OnFooterRowCellRenderedEventArgs,\n OnGroupCollapsedEventArgs,\n OnGroupExpandedEventArgs,\n OnHeaderCellRenderedEventArgs,\n OnHeaderClickEventArgs,\n OnHeaderContextMenuEventArgs,\n OnHeaderMouseEventArgs,\n OnHeaderRowCellRenderedEventArgs,\n OnKeyDownEventArgs,\n OnRenderedEventArgs,\n OnRowCountChangedEventArgs,\n OnRowsChangedEventArgs,\n OnRowsOrCountChangedEventArgs,\n OnScrollEventArgs,\n OnSelectedRowIdsChangedEventArgs,\n OnSelectedRowsChangedEventArgs,\n OnSetItemsCalledEventArgs,\n OnSetOptionsEventArgs,\n OnValidationErrorEventArgs,\n Pagination,\n PaginationMetadata,\n PagingInfo,\n ReactRegularEventHandler,\n ReactSlickEventHandler,\n SingleColumnSort,\n SlickControlList,\n SlickDataView,\n SlickGrid,\n SlickPluginList,\n SlickRange,\n TreeToggleStateChange,\n} from '@slickgrid-universal/common';\nimport type { SlickgridReactInstance } from '../models/index.js';\nimport type { TranslaterI18NextService } from '../services/translaterI18Next.service.js';\n\nexport interface SlickgridReactProps {\n header?: React.ReactElement;\n footer?: React.ReactElement;\n containerService: ContainerService;\n translaterService?: TranslaterI18NextService;\n customDataView?: SlickDataView;\n dataset: any[];\n datasetHierarchical?: any[] | null;\n extensions?: ExtensionList<SlickControlList | SlickPluginList>;\n gridId: string;\n options?: GridOption;\n columns: Column[];\n instances?: SlickgridReactInstance;\n paginationOptions?: Pagination;\n\n // Custom Events list\n // ---------------------\n\n // Slick Grid events\n onActiveCellChanged?: ReactSlickEventHandler<OnActiveCellChangedEventArgs>;\n onActiveCellPositionChanged?: ReactSlickEventHandler<{ grid: SlickGrid }>;\n onAddNewRow?: ReactSlickEventHandler<OnAddNewRowEventArgs>;\n onAutosizeColumns?: ReactSlickEventHandler<OnAutosizeColumnsEventArgs>;\n onBeforeAppendCell?: ReactSlickEventHandler<OnBeforeAppendCellEventArgs>;\n onBeforeSearchChange?: ReactSlickEventHandler<OnCellChangeEventArgs, boolean | void>;\n onBeforeCellEditorDestroy?: ReactSlickEventHandler<OnBeforeCellEditorDestroyEventArgs>;\n onBeforeColumnsResize?: ReactSlickEventHandler<OnBeforeColumnsResizeEventArgs>;\n onBeforeDestroy?: ReactSlickEventHandler<{ grid: SlickGrid }>;\n onBeforeEditCell?: ReactSlickEventHandler<OnBeforeEditCellEventArgs>;\n onBeforeHeaderCellDestroy?: ReactSlickEventHandler<OnBeforeHeaderCellDestroyEventArgs>;\n onBeforeHeaderRowCellDestroy?: ReactSlickEventHandler<OnBeforeHeaderRowCellDestroyEventArgs>;\n onBeforeFooterRowCellDestroy?: ReactSlickEventHandler<OnBeforeFooterRowCellDestroyEventArgs>;\n onBeforeSetColumns?: ReactSlickEventHandler<OnBeforeSetColumnsEventArgs>;\n onBeforeSort?: ReactSlickEventHandler<SingleColumnSort, boolean | void>;\n onCellChange?: ReactSlickEventHandler<OnCellChangeEventArgs>;\n onCellCssStylesChanged?: ReactSlickEventHandler<OnCellCssStylesChangedEventArgs>;\n onClick?: ReactSlickEventHandler<OnClickEventArgs>;\n onColumnsDrag?: ReactSlickEventHandler<OnColumnsDragEventArgs>;\n onColumnsReordered?: ReactSlickEventHandler<OnColumnsReorderedEventArgs>;\n onColumnsResized?: ReactSlickEventHandler<OnColumnsResizedEventArgs>;\n onColumnsResizeDblClick?: ReactSlickEventHandler<OnColumnsResizeDblClickEventArgs>;\n onCompositeEditorChange?: ReactSlickEventHandler<OnCompositeEditorChangeEventArgs>;\n onContextMenu?: ReactSlickEventHandler<{ grid: SlickGrid }>;\n onDrag?: ReactSlickEventHandler<DragRowMove>;\n onDragEnd?: ReactSlickEventHandler<DragRowMove>;\n onDragInit?: ReactSlickEventHandler<DragRowMove>;\n onDragStart?: ReactSlickEventHandler<DragRowMove>;\n onDragReplaceCells?: ReactSlickEventHandler<OnDragReplaceCellsEventArgs>;\n onDblClick?: ReactSlickEventHandler<OnDblClickEventArgs>;\n onFooterContextMenu?: ReactSlickEventHandler<OnFooterContextMenuEventArgs>;\n onFooterRowCellRendered?: ReactSlickEventHandler<OnFooterRowCellRenderedEventArgs>;\n onHeaderCellRendered?: ReactSlickEventHandler<OnHeaderCellRenderedEventArgs>;\n onFooterClick?: ReactSlickEventHandler<OnFooterClickEventArgs>;\n onHeaderClick?: ReactSlickEventHandler<OnHeaderClickEventArgs>;\n onHeaderContextMenu?: ReactSlickEventHandler<OnHeaderContextMenuEventArgs>;\n onHeaderMouseEnter?: ReactSlickEventHandler<OnHeaderMouseEventArgs>;\n onHeaderMouseLeave?: ReactSlickEventHandler<OnHeaderMouseEventArgs>;\n onHeaderRowCellRendered?: ReactSlickEventHandler<OnHeaderRowCellRenderedEventArgs>;\n onHeaderRowMouseEnter?: ReactSlickEventHandler<OnHeaderMouseEventArgs>;\n onHeaderRowMouseLeave?: ReactSlickEventHandler<OnHeaderMouseEventArgs>;\n onKeyDown?: ReactSlickEventHandler<OnKeyDownEventArgs>;\n onMouseEnter?: ReactSlickEventHandler<{ grid: SlickGrid }>;\n onMouseLeave?: ReactSlickEventHandler<{ grid: SlickGrid }>;\n onValidationError?: ReactSlickEventHandler<OnValidationErrorEventArgs>;\n onViewportChanged?: ReactSlickEventHandler<{ grid: SlickGrid }>;\n onRendered?: ReactSlickEventHandler<OnRenderedEventArgs>;\n onSelectedRowsChanged?: ReactSlickEventHandler<OnSelectedRowsChangedEventArgs>;\n onSetOptions?: ReactSlickEventHandler<OnSetOptionsEventArgs>;\n onScroll?: ReactSlickEventHandler<OnScrollEventArgs>;\n onSort?: ReactSlickEventHandler<SingleColumnSort>;\n\n // Slick DataView events\n onBeforePagingInfoChanged?: ReactSlickEventHandler<PagingInfo>;\n onGroupExpanded?: ReactSlickEventHandler<OnGroupExpandedEventArgs>;\n onGroupCollapsed?: ReactSlickEventHandler<OnGroupCollapsedEventArgs>;\n onPagingInfoChanged?: ReactSlickEventHandler<PagingInfo>;\n onRowCountChanged?: ReactSlickEventHandler<OnRowCountChangedEventArgs>;\n onRowsChanged?: ReactSlickEventHandler<OnRowsChangedEventArgs>;\n onRowsOrCountChanged?: ReactSlickEventHandler<OnRowsOrCountChangedEventArgs>;\n onSelectedRowIdsChanged?: ReactSlickEventHandler<OnSelectedRowIdsChangedEventArgs>;\n onSetItemsCalled?: ReactSlickEventHandler<OnSetItemsCalledEventArgs>;\n\n // other Slick Events\n onAfterMenuShow?: ReactSlickEventHandler<MenuFromCellCallbackArgs>;\n onBeforeMenuClose?: ReactSlickEventHandler<MenuFromCellCallbackArgs>;\n onBeforeMenuShow?: ReactSlickEventHandler<MenuFromCellCallbackArgs>;\n onColumnsChanged?: ReactSlickEventHandler<OnColumnsChangedArgs>;\n onCommand?: ReactSlickEventHandler<MenuCommandItemCallbackArgs | MenuOptionItemCallbackArgs>;\n onGridMenuColumnsChanged?: ReactSlickEventHandler<OnColumnsChangedArgs>;\n onMenuClose?: ReactSlickEventHandler<GridMenuEventWithElementCallbackArgs>;\n onCopyCells?: ReactSlickEventHandler<{ ranges: SlickRange[] }>;\n onCopyCancelled?: ReactSlickEventHandler<{ ranges: SlickRange[] }>;\n onPasteCells?: ReactSlickEventHandler<{ ranges: SlickRange[] }>;\n onBeforePasteCell?: ReactSlickEventHandler<{ cell: number; row: number; item: any; columnDef: Column; value: any }>;\n\n // Slickgrid-React or Slickgrid-Universal events\n onAfterExportToExcel?: ReactRegularEventHandler<{ filename: string; mimeType: string }>;\n onBeforeExportToExcel?: ReactRegularEventHandler<boolean>;\n onBeforeExportToTextFile?: ReactRegularEventHandler<boolean>;\n onAfterExportToTextFile?: ReactRegularEventHandler<ExportTextDownloadOption>;\n onBeforeFilterChange?: ReactRegularEventHandler<CurrentFilter[]>;\n onBeforeFilterClear?: ReactRegularEventHandler<{ columnId: string } | boolean>;\n onBeforeSortChange?: ReactRegularEventHandler<Array<ColumnSort & { clearSortTriggered?: boolean }>>;\n onContextMenuClearGrouping?: ReactRegularEventHandler<void>;\n onContextMenuCollapseAllGroups?: ReactRegularEventHandler<void>;\n onContextMenuExpandAllGroups?: ReactRegularEventHandler<void>;\n onAfterGridDestroyed?: ReactRegularEventHandler<MenuFromCellCallbackArgs>;\n onBeforeGridDestroy?: ReactRegularEventHandler<MenuFromCellCallbackArgs>;\n onOptionSelected?: ReactRegularEventHandler<MenuCommandItemCallbackArgs | MenuOptionItemCallbackArgs>;\n onColumnPickerColumnsChanged?: ReactRegularEventHandler<OnColumnsChangedArgs>;\n onGridMenuMenuClose?: ReactRegularEventHandler<GridMenuEventWithElementCallbackArgs>;\n onGridMenuBeforeMenuShow?: ReactRegularEventHandler<GridMenuEventWithElementCallbackArgs>;\n onGridMenuAfterMenuShow?: ReactRegularEventHandler<GridMenuEventWithElementCallbackArgs>;\n onGridMenuClearAllPinning?: ReactRegularEventHandler<void>;\n onGridMenuClearAllFilters?: ReactRegularEventHandler<void>;\n onGridMenuClearAllSorting?: ReactRegularEventHandler<void>;\n onGridMenuCommand?: ReactRegularEventHandler<GridMenuCommandItemCallbackArgs>;\n onHeaderButtonCommand?: ReactRegularEventHandler<HeaderButtonOnCommandArgs>;\n onHeaderMenuCommand?: ReactRegularEventHandler<MenuCommandItemCallbackArgs>;\n onHeaderMenuColumnResizeByContent?: ReactRegularEventHandler<{ columnId: string }>;\n onHeaderMenuBeforeMenuShow?: ReactRegularEventHandler<HeaderMenuCommandItemCallbackArgs>;\n onHeaderMenuAfterMenuShow?: ReactRegularEventHandler<HeaderMenuCommandItemCallbackArgs>;\n onHideColumns?: ReactRegularEventHandler<{ columns: Column[]; hiddenColumn: Column[] }>;\n onItemsAdded?: ReactRegularEventHandler<any[]>;\n onItemsDeleted?: ReactRegularEventHandler<any[]>;\n onItemsUpdated?: ReactRegularEventHandler<any[]>;\n onItemsUpserted?: ReactRegularEventHandler<any[]>;\n onFullResizeByContentRequested?: ReactRegularEventHandler<{ caller: string }>;\n onGridStateChanged?: ReactRegularEventHandler<GridStateChange>;\n onBeforePaginationChange?: ReactRegularEventHandler<PaginationMetadata, boolean | void>;\n onPaginationChanged?: ReactRegularEventHandler<PaginationMetadata>;\n onPaginationRefreshed?: ReactRegularEventHandler<PaginationMetadata>;\n onPaginationVisibilityChanged?: ReactRegularEventHandler<{ visible: boolean }>;\n onPaginationSetCursorBased?: ReactRegularEventHandler<{ isCursorBased: boolean }>;\n onGridBeforeResize?: ReactRegularEventHandler<void>;\n onGridAfterResize?: ReactRegularEventHandler<GridSize | undefined>;\n onBeforeResizeByContent?: ReactRegularEventHandler<void>;\n onAfterResizeByContent?: ReactRegularEventHandler<{\n readItemCount: number;\n calculateColumnWidths: { [x: string]: number | undefined; [x: number]: number | undefined };\n }>;\n onSortCleared?: ReactRegularEventHandler<boolean>;\n onFilterChanged?: ReactRegularEventHandler<CurrentFilter[]>;\n onFilterCleared?: ReactRegularEventHandler<boolean>;\n onReactGridCreated?: ReactRegularEventHandler<any>;\n onSortChanged?: ReactRegularEventHandler<CurrentSorter[]>;\n onTreeItemToggled?: ReactRegularEventHandler<TreeToggleStateChange>;\n onTreeFullToggleEnd?: ReactRegularEventHandler<TreeToggleStateChange>;\n onTreeFullToggleStart?: ReactRegularEventHandler<TreeToggleStateChange>;\n onLanguageChange?: ReactRegularEventHandler<string>;\n}\n"]}
1
+ {"version":3,"file":"slickgridReactProps.js","sourceRoot":"","sources":["../../src/components/slickgridReactProps.ts"],"names":[],"mappings":"","sourcesContent":["import type {\n Column,\n ColumnSort,\n ContainerService,\n CurrentFilter,\n CurrentSorter,\n DragRowMove,\n ExportTextDownloadOption,\n ExtensionList,\n GridMenuCommandItemCallbackArgs,\n GridMenuEventWithElementCallbackArgs,\n GridOption,\n GridSize,\n GridStateChange,\n HeaderButtonOnCommandArgs,\n HeaderMenuCommandItemCallbackArgs,\n MenuCommandItemCallbackArgs,\n MenuFromCellCallbackArgs,\n MenuOptionItemCallbackArgs,\n OnActiveCellChangedEventArgs,\n OnAddNewRowEventArgs,\n OnAutosizeColumnsEventArgs,\n OnBeforeAppendCellEventArgs,\n OnBeforeCellEditorDestroyEventArgs,\n OnBeforeColumnsResizeEventArgs,\n OnBeforeEditCellEventArgs,\n OnBeforeFooterRowCellDestroyEventArgs,\n OnBeforeHeaderCellDestroyEventArgs,\n OnBeforeHeaderRowCellDestroyEventArgs,\n OnBeforeSetColumnsEventArgs,\n OnCellChangeEventArgs,\n OnCellCssStylesChangedEventArgs,\n OnClickEventArgs,\n OnColumnsChangedArgs,\n OnColumnsDragEventArgs,\n OnColumnsReorderedEventArgs,\n OnColumnsResizeDblClickEventArgs,\n OnColumnsResizedEventArgs,\n OnCompositeEditorChangeEventArgs,\n OnDblClickEventArgs,\n OnDragReplaceCellsEventArgs,\n OnFooterClickEventArgs,\n OnFooterContextMenuEventArgs,\n OnFooterRowCellRenderedEventArgs,\n OnGroupCollapsedEventArgs,\n OnGroupExpandedEventArgs,\n OnHeaderCellRenderedEventArgs,\n OnHeaderClickEventArgs,\n OnHeaderContextMenuEventArgs,\n OnHeaderMouseEventArgs,\n OnHeaderRowCellRenderedEventArgs,\n OnKeyDownEventArgs,\n OnRenderedEventArgs,\n OnRowCountChangedEventArgs,\n OnRowsChangedEventArgs,\n OnRowsOrCountChangedEventArgs,\n OnScrollEventArgs,\n OnSearchChangeEventArgs,\n OnSelectedRowIdsChangedEventArgs,\n OnSelectedRowsChangedEventArgs,\n OnSetItemsCalledEventArgs,\n OnSetOptionsEventArgs,\n OnValidationErrorEventArgs,\n Pagination,\n PaginationMetadata,\n PagingInfo,\n ReactRegularEventHandler,\n ReactSlickEventHandler,\n SingleColumnSort,\n SlickControlList,\n SlickDataView,\n SlickGrid,\n SlickPluginList,\n SlickRange,\n TreeToggleStateChange,\n} from '@slickgrid-universal/common';\nimport type { SlickgridReactInstance } from '../models/index.js';\nimport type { TranslaterI18NextService } from '../services/translaterI18Next.service.js';\n\nexport interface SlickgridReactProps {\n header?: React.ReactElement;\n footer?: React.ReactElement;\n containerService: ContainerService;\n translaterService?: TranslaterI18NextService;\n customDataView?: SlickDataView;\n dataset: any[];\n datasetHierarchical?: any[] | null;\n extensions?: ExtensionList<SlickControlList | SlickPluginList>;\n gridId: string;\n options?: GridOption;\n columns: Column[];\n instances?: SlickgridReactInstance;\n paginationOptions?: Pagination;\n\n // Custom Events list\n // ---------------------\n\n // Slick Grid events\n onActiveCellChanged?: ReactSlickEventHandler<OnActiveCellChangedEventArgs>;\n onActiveCellPositionChanged?: ReactSlickEventHandler<{ grid: SlickGrid }>;\n onAddNewRow?: ReactSlickEventHandler<OnAddNewRowEventArgs>;\n onAutosizeColumns?: ReactSlickEventHandler<OnAutosizeColumnsEventArgs>;\n onBeforeAppendCell?: ReactSlickEventHandler<OnBeforeAppendCellEventArgs>;\n onBeforeCellEditorDestroy?: ReactSlickEventHandler<OnBeforeCellEditorDestroyEventArgs>;\n onBeforeColumnsResize?: ReactSlickEventHandler<OnBeforeColumnsResizeEventArgs>;\n onBeforeDestroy?: ReactSlickEventHandler<{ grid: SlickGrid }>;\n onBeforeEditCell?: ReactSlickEventHandler<OnBeforeEditCellEventArgs>;\n onBeforeHeaderCellDestroy?: ReactSlickEventHandler<OnBeforeHeaderCellDestroyEventArgs>;\n onBeforeHeaderRowCellDestroy?: ReactSlickEventHandler<OnBeforeHeaderRowCellDestroyEventArgs>;\n onBeforeFooterRowCellDestroy?: ReactSlickEventHandler<OnBeforeFooterRowCellDestroyEventArgs>;\n onBeforeSetColumns?: ReactSlickEventHandler<OnBeforeSetColumnsEventArgs>;\n onBeforeSort?: ReactSlickEventHandler<SingleColumnSort, boolean | void>;\n onCellChange?: ReactSlickEventHandler<OnCellChangeEventArgs>;\n onCellCssStylesChanged?: ReactSlickEventHandler<OnCellCssStylesChangedEventArgs>;\n onClick?: ReactSlickEventHandler<OnClickEventArgs>;\n onColumnsDrag?: ReactSlickEventHandler<OnColumnsDragEventArgs>;\n onColumnsReordered?: ReactSlickEventHandler<OnColumnsReorderedEventArgs>;\n onColumnsResized?: ReactSlickEventHandler<OnColumnsResizedEventArgs>;\n onColumnsResizeDblClick?: ReactSlickEventHandler<OnColumnsResizeDblClickEventArgs>;\n onCompositeEditorChange?: ReactSlickEventHandler<OnCompositeEditorChangeEventArgs>;\n onContextMenu?: ReactSlickEventHandler<{ grid: SlickGrid }>;\n onDrag?: ReactSlickEventHandler<DragRowMove>;\n onDragEnd?: ReactSlickEventHandler<DragRowMove>;\n onDragInit?: ReactSlickEventHandler<DragRowMove>;\n onDragStart?: ReactSlickEventHandler<DragRowMove>;\n onDragReplaceCells?: ReactSlickEventHandler<OnDragReplaceCellsEventArgs>;\n onDblClick?: ReactSlickEventHandler<OnDblClickEventArgs>;\n onFooterContextMenu?: ReactSlickEventHandler<OnFooterContextMenuEventArgs>;\n onFooterRowCellRendered?: ReactSlickEventHandler<OnFooterRowCellRenderedEventArgs>;\n onHeaderCellRendered?: ReactSlickEventHandler<OnHeaderCellRenderedEventArgs>;\n onFooterClick?: ReactSlickEventHandler<OnFooterClickEventArgs>;\n onHeaderClick?: ReactSlickEventHandler<OnHeaderClickEventArgs>;\n onHeaderContextMenu?: ReactSlickEventHandler<OnHeaderContextMenuEventArgs>;\n onHeaderMouseEnter?: ReactSlickEventHandler<OnHeaderMouseEventArgs>;\n onHeaderMouseLeave?: ReactSlickEventHandler<OnHeaderMouseEventArgs>;\n onHeaderRowCellRendered?: ReactSlickEventHandler<OnHeaderRowCellRenderedEventArgs>;\n onHeaderRowMouseEnter?: ReactSlickEventHandler<OnHeaderMouseEventArgs>;\n onHeaderRowMouseLeave?: ReactSlickEventHandler<OnHeaderMouseEventArgs>;\n onKeyDown?: ReactSlickEventHandler<OnKeyDownEventArgs>;\n onMouseEnter?: ReactSlickEventHandler<{ grid: SlickGrid }>;\n onMouseLeave?: ReactSlickEventHandler<{ grid: SlickGrid }>;\n onValidationError?: ReactSlickEventHandler<OnValidationErrorEventArgs>;\n onViewportChanged?: ReactSlickEventHandler<{ grid: SlickGrid }>;\n onRendered?: ReactSlickEventHandler<OnRenderedEventArgs>;\n onSelectedRowsChanged?: ReactSlickEventHandler<OnSelectedRowsChangedEventArgs>;\n onSetOptions?: ReactSlickEventHandler<OnSetOptionsEventArgs>;\n onScroll?: ReactSlickEventHandler<OnScrollEventArgs>;\n onSort?: ReactSlickEventHandler<SingleColumnSort>;\n\n // Slick DataView events\n onBeforePagingInfoChanged?: ReactSlickEventHandler<PagingInfo>;\n onGroupExpanded?: ReactSlickEventHandler<OnGroupExpandedEventArgs>;\n onGroupCollapsed?: ReactSlickEventHandler<OnGroupCollapsedEventArgs>;\n onPagingInfoChanged?: ReactSlickEventHandler<PagingInfo>;\n onRowCountChanged?: ReactSlickEventHandler<OnRowCountChangedEventArgs>;\n onRowsChanged?: ReactSlickEventHandler<OnRowsChangedEventArgs>;\n onRowsOrCountChanged?: ReactSlickEventHandler<OnRowsOrCountChangedEventArgs>;\n onSelectedRowIdsChanged?: ReactSlickEventHandler<OnSelectedRowIdsChangedEventArgs>;\n onSetItemsCalled?: ReactSlickEventHandler<OnSetItemsCalledEventArgs>;\n\n // other Slick Events\n onAfterMenuShow?: ReactSlickEventHandler<MenuFromCellCallbackArgs>;\n onBeforeMenuClose?: ReactSlickEventHandler<MenuFromCellCallbackArgs>;\n onBeforeMenuShow?: ReactSlickEventHandler<MenuFromCellCallbackArgs>;\n onColumnsChanged?: ReactSlickEventHandler<OnColumnsChangedArgs>;\n onCommand?: ReactSlickEventHandler<MenuCommandItemCallbackArgs | MenuOptionItemCallbackArgs>;\n onGridMenuColumnsChanged?: ReactSlickEventHandler<OnColumnsChangedArgs>;\n onMenuClose?: ReactSlickEventHandler<GridMenuEventWithElementCallbackArgs>;\n onCopyCells?: ReactSlickEventHandler<{ ranges: SlickRange[] }>;\n onCopyCancelled?: ReactSlickEventHandler<{ ranges: SlickRange[] }>;\n onPasteCells?: ReactSlickEventHandler<{ ranges: SlickRange[] }>;\n onBeforePasteCell?: ReactSlickEventHandler<{ cell: number; row: number; item: any; columnDef: Column; value: any }>;\n\n // Slickgrid-React or Slickgrid-Universal events\n onAfterExportToExcel?: ReactRegularEventHandler<{ filename: string; mimeType: string } | { error: any }>;\n onBeforeExportToExcel?: ReactRegularEventHandler<boolean>;\n onBeforeExportToTextFile?: ReactRegularEventHandler<boolean>;\n onAfterExportToTextFile?: ReactRegularEventHandler<ExportTextDownloadOption>;\n onBeforeFilterChange?: ReactRegularEventHandler<CurrentFilter[]>;\n onBeforeFilterClear?: ReactRegularEventHandler<{ columnId: string } | boolean>;\n onBeforeSearchChange?: ReactRegularEventHandler<OnSearchChangeEventArgs, boolean | void>;\n onBeforeSortChange?: ReactRegularEventHandler<Array<ColumnSort & { clearSortTriggered?: boolean }>>;\n onContextMenuClearGrouping?: ReactRegularEventHandler<void>;\n onContextMenuCollapseAllGroups?: ReactRegularEventHandler<void>;\n onContextMenuExpandAllGroups?: ReactRegularEventHandler<void>;\n onAfterGridDestroyed?: ReactRegularEventHandler<MenuFromCellCallbackArgs>;\n onBeforeGridDestroy?: ReactRegularEventHandler<MenuFromCellCallbackArgs>;\n onOptionSelected?: ReactRegularEventHandler<MenuCommandItemCallbackArgs | MenuOptionItemCallbackArgs>;\n onColumnPickerColumnsChanged?: ReactRegularEventHandler<OnColumnsChangedArgs>;\n onGridMenuMenuClose?: ReactRegularEventHandler<GridMenuEventWithElementCallbackArgs>;\n onGridMenuBeforeMenuShow?: ReactRegularEventHandler<GridMenuEventWithElementCallbackArgs>;\n onGridMenuAfterMenuShow?: ReactRegularEventHandler<GridMenuEventWithElementCallbackArgs>;\n onGridMenuClearAllPinning?: ReactRegularEventHandler<void>;\n onGridMenuClearAllFilters?: ReactRegularEventHandler<void>;\n onGridMenuClearAllSorting?: ReactRegularEventHandler<void>;\n onGridMenuCommand?: ReactRegularEventHandler<GridMenuCommandItemCallbackArgs>;\n onHeaderButtonCommand?: ReactRegularEventHandler<HeaderButtonOnCommandArgs>;\n onHeaderMenuCommand?: ReactRegularEventHandler<MenuCommandItemCallbackArgs>;\n onHeaderMenuColumnResizeByContent?: ReactRegularEventHandler<{ columnId: string }>;\n onHeaderMenuBeforeMenuShow?: ReactRegularEventHandler<HeaderMenuCommandItemCallbackArgs>;\n onHeaderMenuAfterMenuShow?: ReactRegularEventHandler<HeaderMenuCommandItemCallbackArgs>;\n onHideColumns?: ReactRegularEventHandler<{ columns: Column[]; hiddenColumn: Column[] }>;\n onItemsAdded?: ReactRegularEventHandler<any[]>;\n onItemsDeleted?: ReactRegularEventHandler<any[]>;\n onItemsUpdated?: ReactRegularEventHandler<any[]>;\n onItemsUpserted?: ReactRegularEventHandler<any[]>;\n onFullResizeByContentRequested?: ReactRegularEventHandler<{ caller: string }>;\n onGridStateChanged?: ReactRegularEventHandler<GridStateChange>;\n onBeforePaginationChange?: ReactRegularEventHandler<PaginationMetadata, boolean | void>;\n onPaginationChanged?: ReactRegularEventHandler<PaginationMetadata>;\n onPaginationRefreshed?: ReactRegularEventHandler<PaginationMetadata>;\n onPaginationVisibilityChanged?: ReactRegularEventHandler<{ visible: boolean }>;\n onPaginationSetCursorBased?: ReactRegularEventHandler<{ isCursorBased: boolean }>;\n onGridBeforeResize?: ReactRegularEventHandler<void>;\n onGridAfterResize?: ReactRegularEventHandler<GridSize | undefined>;\n onBeforeResizeByContent?: ReactRegularEventHandler<void>;\n onAfterResizeByContent?: ReactRegularEventHandler<{\n readItemCount: number;\n calculateColumnWidths: { [x: string]: number | undefined; [x: number]: number | undefined };\n }>;\n onSortCleared?: ReactRegularEventHandler<boolean>;\n onFilterChanged?: ReactRegularEventHandler<CurrentFilter[]>;\n onFilterCleared?: ReactRegularEventHandler<boolean>;\n onReactGridCreated?: ReactRegularEventHandler<any>;\n onSortChanged?: ReactRegularEventHandler<CurrentSorter[]>;\n onTreeItemToggled?: ReactRegularEventHandler<TreeToggleStateChange>;\n onTreeFullToggleEnd?: ReactRegularEventHandler<TreeToggleStateChange>;\n onTreeFullToggleStart?: ReactRegularEventHandler<TreeToggleStateChange>;\n onLanguageChange?: ReactRegularEventHandler<string>;\n}\n"]}
@@ -1,10 +1,10 @@
1
1
  import type { BasePaginationComponent, BasePaginationModel, GridOption as UniversalGridOption } from '@slickgrid-universal/common';
2
- import type { ForwardRefExoticComponent, RefAttributes } from 'react';
2
+ import type { ComponentType, ForwardRefExoticComponent, RefAttributes } from 'react';
3
3
  import type { I18Next } from './i18next.interface.js';
4
4
  import type { RowDetailView } from './rowDetailView.interface.js';
5
5
  export interface GridOption extends UniversalGridOption {
6
6
  /** External Custom Pagination Component that can be provided by the user */
7
- customPaginationComponent?: typeof BasePaginationComponent | (() => BasePaginationModel) | ForwardRefExoticComponent<any & RefAttributes<any>>;
7
+ customPaginationComponent?: typeof BasePaginationComponent | (() => BasePaginationModel) | ForwardRefExoticComponent<any & RefAttributes<any>> | ComponentType<any>;
8
8
  /** I18N translation service instance */
9
9
  i18n?: I18Next;
10
10
  /** Row Detail View Plugin options & events (columnId, cssClass, toolTip, width) */
@@ -1 +1 @@
1
- {"version":3,"file":"gridOption.interface.js","sourceRoot":"","sources":["../../src/models/gridOption.interface.ts"],"names":[],"mappings":"","sourcesContent":["import type { BasePaginationComponent, BasePaginationModel, GridOption as UniversalGridOption } from '@slickgrid-universal/common';\nimport type { ForwardRefExoticComponent, RefAttributes } from 'react';\nimport type { I18Next } from './i18next.interface.js';\nimport type { RowDetailView } from './rowDetailView.interface.js';\n\nexport interface GridOption extends UniversalGridOption {\n /** External Custom Pagination Component that can be provided by the user */\n customPaginationComponent?:\n | typeof BasePaginationComponent\n | (() => BasePaginationModel)\n | ForwardRefExoticComponent<any & RefAttributes<any>>;\n\n /** I18N translation service instance */\n i18n?: I18Next;\n\n /** Row Detail View Plugin options & events (columnId, cssClass, toolTip, width) */\n rowDetailView?: RowDetailView;\n}\n"]}
1
+ {"version":3,"file":"gridOption.interface.js","sourceRoot":"","sources":["../../src/models/gridOption.interface.ts"],"names":[],"mappings":"","sourcesContent":["import type { BasePaginationComponent, BasePaginationModel, GridOption as UniversalGridOption } from '@slickgrid-universal/common';\nimport type { ComponentType, ForwardRefExoticComponent, RefAttributes } from 'react';\nimport type { I18Next } from './i18next.interface.js';\nimport type { RowDetailView } from './rowDetailView.interface.js';\n\nexport interface GridOption extends UniversalGridOption {\n /** External Custom Pagination Component that can be provided by the user */\n customPaginationComponent?:\n | typeof BasePaginationComponent\n | (() => BasePaginationModel)\n | ForwardRefExoticComponent<any & RefAttributes<any>>\n | ComponentType<any>;\n\n /** I18N translation service instance */\n i18n?: I18Next;\n\n /** Row Detail View Plugin options & events (columnId, cssClass, toolTip, width) */\n rowDetailView?: RowDetailView;\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "slickgrid-react",
3
- "version": "9.11.0",
3
+ "version": "9.12.0",
4
4
  "description": "Slickgrid components made available in React",
5
5
  "keywords": [
6
6
  "react",
@@ -52,18 +52,18 @@
52
52
  "/src"
53
53
  ],
54
54
  "dependencies": {
55
- "@slickgrid-universal/common": "9.11.0",
56
- "@slickgrid-universal/custom-footer-component": "9.11.0",
57
- "@slickgrid-universal/empty-warning-component": "9.11.0",
58
- "@slickgrid-universal/event-pub-sub": "9.11.0",
59
- "@slickgrid-universal/pagination-component": "9.11.0",
60
- "@slickgrid-universal/row-detail-view-plugin": "9.11.0",
61
- "@slickgrid-universal/utils": "9.11.0",
55
+ "@slickgrid-universal/common": "9.12.0",
56
+ "@slickgrid-universal/custom-footer-component": "9.12.0",
57
+ "@slickgrid-universal/empty-warning-component": "9.12.0",
58
+ "@slickgrid-universal/event-pub-sub": "9.12.0",
59
+ "@slickgrid-universal/pagination-component": "9.12.0",
60
+ "@slickgrid-universal/row-detail-view-plugin": "9.12.0",
61
+ "@slickgrid-universal/utils": "9.12.0",
62
62
  "dequal": "^2.0.3",
63
63
  "sortablejs": "^1.15.6"
64
64
  },
65
65
  "peerDependencies": {
66
66
  "react": ">=19.0.0"
67
67
  },
68
- "gitHead": "da43b7628f1c55f9178ec389e5c4b2b89f586599"
69
- }
68
+ "gitHead": "02bb1252e7069954d0ee0c5d187edc7c209d2245"
69
+ }
@@ -55,6 +55,7 @@ import type {
55
55
  OnRowsChangedEventArgs,
56
56
  OnRowsOrCountChangedEventArgs,
57
57
  OnScrollEventArgs,
58
+ OnSearchChangeEventArgs,
58
59
  OnSelectedRowIdsChangedEventArgs,
59
60
  OnSelectedRowsChangedEventArgs,
60
61
  OnSetItemsCalledEventArgs,
@@ -100,7 +101,6 @@ export interface SlickgridReactProps {
100
101
  onAddNewRow?: ReactSlickEventHandler<OnAddNewRowEventArgs>;
101
102
  onAutosizeColumns?: ReactSlickEventHandler<OnAutosizeColumnsEventArgs>;
102
103
  onBeforeAppendCell?: ReactSlickEventHandler<OnBeforeAppendCellEventArgs>;
103
- onBeforeSearchChange?: ReactSlickEventHandler<OnCellChangeEventArgs, boolean | void>;
104
104
  onBeforeCellEditorDestroy?: ReactSlickEventHandler<OnBeforeCellEditorDestroyEventArgs>;
105
105
  onBeforeColumnsResize?: ReactSlickEventHandler<OnBeforeColumnsResizeEventArgs>;
106
106
  onBeforeDestroy?: ReactSlickEventHandler<{ grid: SlickGrid }>;
@@ -172,12 +172,13 @@ export interface SlickgridReactProps {
172
172
  onBeforePasteCell?: ReactSlickEventHandler<{ cell: number; row: number; item: any; columnDef: Column; value: any }>;
173
173
 
174
174
  // Slickgrid-React or Slickgrid-Universal events
175
- onAfterExportToExcel?: ReactRegularEventHandler<{ filename: string; mimeType: string }>;
175
+ onAfterExportToExcel?: ReactRegularEventHandler<{ filename: string; mimeType: string } | { error: any }>;
176
176
  onBeforeExportToExcel?: ReactRegularEventHandler<boolean>;
177
177
  onBeforeExportToTextFile?: ReactRegularEventHandler<boolean>;
178
178
  onAfterExportToTextFile?: ReactRegularEventHandler<ExportTextDownloadOption>;
179
179
  onBeforeFilterChange?: ReactRegularEventHandler<CurrentFilter[]>;
180
180
  onBeforeFilterClear?: ReactRegularEventHandler<{ columnId: string } | boolean>;
181
+ onBeforeSearchChange?: ReactRegularEventHandler<OnSearchChangeEventArgs, boolean | void>;
181
182
  onBeforeSortChange?: ReactRegularEventHandler<Array<ColumnSort & { clearSortTriggered?: boolean }>>;
182
183
  onContextMenuClearGrouping?: ReactRegularEventHandler<void>;
183
184
  onContextMenuCollapseAllGroups?: ReactRegularEventHandler<void>;
@@ -1,5 +1,5 @@
1
1
  import type { BasePaginationComponent, BasePaginationModel, GridOption as UniversalGridOption } from '@slickgrid-universal/common';
2
- import type { ForwardRefExoticComponent, RefAttributes } from 'react';
2
+ import type { ComponentType, ForwardRefExoticComponent, RefAttributes } from 'react';
3
3
  import type { I18Next } from './i18next.interface.js';
4
4
  import type { RowDetailView } from './rowDetailView.interface.js';
5
5
 
@@ -8,7 +8,8 @@ export interface GridOption extends UniversalGridOption {
8
8
  customPaginationComponent?:
9
9
  | typeof BasePaginationComponent
10
10
  | (() => BasePaginationModel)
11
- | ForwardRefExoticComponent<any & RefAttributes<any>>;
11
+ | ForwardRefExoticComponent<any & RefAttributes<any>>
12
+ | ComponentType<any>;
12
13
 
13
14
  /** I18N translation service instance */
14
15
  i18n?: I18Next;