@infinite-table/infinite-react 4.3.1 → 4.3.3

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/index.d.ts CHANGED
@@ -2085,9 +2085,10 @@ declare type DataSourceProps<T> = {
2085
2085
  } | {
2086
2086
  selectionMode?: false;
2087
2087
  });
2088
- declare type DataSourcePropsWithChildren<T> = DataSourceProps<T> & {
2089
- children: NonUndefined<DataSourceProps<T>['children']>;
2090
- };
2088
+ /**
2089
+ * @deprecated Use DataSourceProps<T> instead
2090
+ */
2091
+ declare type DataSourcePropsWithChildren<T> = DataSourceProps<T> & {};
2091
2092
  declare type DataSourcePropSortTypes = Record<string, (first: any, second: any) => number>;
2092
2093
  declare type DataSourcePropFilterTypes<T> = Record<string, DataSourceFilterType<T>>;
2093
2094
  declare type DataSourceFilterFunctionParam<T> = {
@@ -4252,7 +4253,7 @@ declare const useManagedDataSource: (props: unknown) => {
4252
4253
  sortInfo: never;
4253
4254
  }>>>;
4254
4255
  };
4255
- declare function DataSource<T>(props: DataSourcePropsWithChildren<T>): React$1.JSX.Element;
4256
+ declare function DataSource<T>(props: DataSourceProps<T>): React$1.JSX.Element;
4256
4257
  declare function useRowInfoReducers(): Record<string, any> | undefined;
4257
4258
  declare function useMasterRowInfo<T = any>(): InfiniteTableRowInfo<T> | undefined;
4258
4259
 
@@ -5019,8 +5020,13 @@ declare type InfiniteTablePropComponents<T = any> = {
5019
5020
  };
5020
5021
  declare type ScrollStopInfo = {
5021
5022
  scrollTop: number;
5023
+ scrollLeft: number;
5024
+ viewportSize: Size;
5025
+ renderRange: TableRenderRange;
5022
5026
  firstVisibleRowIndex: number;
5023
5027
  lastVisibleRowIndex: number;
5028
+ firstVisibleColIndex: number;
5029
+ lastVisibleColIndex: number;
5024
5030
  };
5025
5031
  declare type InfiniteTableRowInfoDataDiscriminatorWithColumn<T> = {
5026
5032
  column: InfiniteTableComputedColumn<T>;
@@ -5394,4 +5400,4 @@ declare const components: {
5394
5400
  NumberFilterEditor: typeof NumberFilterEditor;
5395
5401
  };
5396
5402
 
5397
- export { AdvancedAlignable, CellSelectionState, CellSelectionStateObject, ColumnTypeWithInherit, DataClient, DataSource, DataSourceAction, DataSourceActionType, DataSourceAggregationReducer, DataSourceApi, DataSourceCRUDParam, DataSourceComponentActions, DataSourceContextValue, DataSourceData, DataSourceDataParams, DataSourceDataParamsChanges, DataSourceDerivedState, DataSourceFilterFunctionParam, DataSourceFilterOperator, DataSourceFilterOperatorFunction, DataSourceFilterOperatorFunctionParam, DataSourceFilterType, DataSourceFilterValueItem, DataSourceFilterValueItemValueGetter, DataSourceGroupBy, DataSourceGroupRowsList, DataSourceInsertParam, DataSourceLivePaginationCursorFn, DataSourceLivePaginationCursorParams, DataSourceLivePaginationCursorValue, DataSourceMappedState, DataSourceMappings, DataSourceMasterDetailContextValue, DataSourcePivotBy, DataSourcePropAggregationReducers, DataSourcePropCellSelection, DataSourcePropCellSelection_MultiCell, DataSourcePropCellSelection_SingleCell, DataSourcePropFilterFunction, DataSourcePropFilterTypes, DataSourcePropFilterValue, DataSourcePropGroupBy, DataSourcePropGroupRowsStateObject, DataSourcePropIsRowSelected, DataSourcePropLivePaginationCursor, DataSourcePropMultiRowSelectionChangeParamType, DataSourcePropOnCellSelectionChange, DataSourcePropOnCellSelectionChange_MultiCell, DataSourcePropOnCellSelectionChange_SingleCell, DataSourcePropOnRowSelectionChange, DataSourcePropOnRowSelectionChange_MultiRow, DataSourcePropOnRowSelectionChange_SingleRow, DataSourcePropPivotBy, DataSourcePropRowInfoReducers, DataSourcePropRowSelection, DataSourcePropRowSelection_MultiRow, DataSourcePropRowSelection_SingleRow, DataSourcePropSelectionMode, DataSourcePropShouldReloadData, DataSourcePropShouldReloadDataObject, DataSourcePropSortFn, DataSourcePropSortInfo, DataSourcePropSortTypes, DataSourceProps, DataSourcePropsWithChildren, DataSourceRawReducer, DataSourceRemoteData, DataSourceRowInfoReducer, DataSourceSetupState, DataSourceSingleSortInfo, DataSourceSortInfo, DataSourceState, DebugLogger, DeepMap, ElementContainerGetter, FixedSizeSet, GroupRowsState, InfiniteColumnEditorContextType, InfiniteTable, InfiniteTableAction, InfiniteTableActionType, InfiniteTableApi, InfiniteTableClassName, InfiniteTableColumn, InfiniteTableColumnAggregator, InfiniteTableColumnApi, InfiniteTableColumnCellContextType, InfiniteTableColumnComparer, InfiniteTableColumnGroup, InfiniteTableColumnRenderFunctionForGroupRows, InfiniteTableColumnRenderFunctionForNormalRows, InfiniteTableColumnRenderValueParam, InfiniteTableColumnRowspanParam, InfiniteTableColumnSizingOptions, InfiniteTableColumnValueFormatterParams, InfiniteTableColumnValueGetterParams, InfiniteTableComponent, InfiniteTableComputedColumn, InfiniteTableComputedValues, InfiniteTableContextValue, InfiniteTableGroupColumnBase, InfiniteTableGroupColumnFunction, InfiniteTableGroupColumnGetterOptions, InfiniteTablePivotColumn, InfiniteTablePropAutoSizeColumnsKey, InfiniteTablePropColumnGroups, InfiniteTablePropColumnOrder, InfiniteTablePropColumnPinning, InfiniteTablePropColumnSizing, InfiniteTablePropColumnTypes, InfiniteTablePropColumnVisibility, InfiniteTablePropColumns, InfiniteTablePropComponents, InfiniteTablePropGetCellContextMenuItems, InfiniteTablePropGetColumnMenuItems, InfiniteTablePropGroupColumn, InfiniteTablePropGroupRenderStrategy, InfiniteTablePropHeaderOptions, InfiniteTablePropKeyboardNavigation, InfiniteTablePropKeyboardShorcut, InfiniteTablePropMultiSortBehavior, InfiniteTablePropRowClassName, InfiniteTablePropRowStyle, InfiniteTableProps, InfiniteTableRowClassNameFn, InfiniteTableRowInfo, InfiniteTableRowStyleFn, InfiniteTableState, InfiniteTable_HasGrouping_RowInfoGroup, InfiniteTable_HasGrouping_RowInfoNormal, LazyGroupDataDeepMap, LazyGroupDataItem, LazyRowInfoGroup, Menu, MenuChildrenFnParam, MenuColumn, MenuColumnRenderParam, MenuDecoration, MenuIconProps, MenuItemActionContext, MenuItemDefinition, MenuItemObject, MenuProps, MenuRenderable, MenuRuntimeItem, MenuRuntimeItemSelectable, MenuSeparator, OverlayShowParams, RowDetailCache, RowDetailState, RowDetailStateObject, RowSelectionState, Scrollbars, ShowOverlayFn, WeakFixedSizeSet, components, debounce, debug, defaultFilterTypes, eventMatchesKeyboardShortcut, defaultFilterTypes as filterTypes, flatten, buildManagedComponent as getComponentStateRoot, group, interceptMap, keyboardShortcuts, multisort, queryKeyToCacheKey, useManagedComponentState as useComponentState, useDataSourceInternal, useDataSourceState, useEffectWithChanges, useEffectWithObject, useGridScroll, useInfiniteColumnCell, useInfiniteColumnEditor, useInfiniteColumnFilterEditor, useInfiniteHeaderCell, useManagedDataSource, useMasterRowInfo, useOverlay, useOverlayPortal, useRowInfoReducers, useVisibleColumnSizes };
5403
+ export { AdvancedAlignable, CellSelectionState, CellSelectionStateObject, ColumnTypeWithInherit, DataClient, DataSource, DataSourceAction, DataSourceActionType, DataSourceAggregationReducer, DataSourceApi, DataSourceCRUDParam, DataSourceComponentActions, DataSourceContextValue, DataSourceData, DataSourceDataParams, DataSourceDataParamsChanges, DataSourceDerivedState, DataSourceFilterFunctionParam, DataSourceFilterOperator, DataSourceFilterOperatorFunction, DataSourceFilterOperatorFunctionParam, DataSourceFilterType, DataSourceFilterValueItem, DataSourceFilterValueItemValueGetter, DataSourceGroupBy, DataSourceGroupRowsList, DataSourceInsertParam, DataSourceLivePaginationCursorFn, DataSourceLivePaginationCursorParams, DataSourceLivePaginationCursorValue, DataSourceMappedState, DataSourceMappings, DataSourceMasterDetailContextValue, DataSourcePivotBy, DataSourcePropAggregationReducers, DataSourcePropCellSelection, DataSourcePropCellSelection_MultiCell, DataSourcePropCellSelection_SingleCell, DataSourcePropFilterFunction, DataSourcePropFilterTypes, DataSourcePropFilterValue, DataSourcePropGroupBy, DataSourcePropGroupRowsStateObject, DataSourcePropIsRowSelected, DataSourcePropLivePaginationCursor, DataSourcePropMultiRowSelectionChangeParamType, DataSourcePropOnCellSelectionChange, DataSourcePropOnCellSelectionChange_MultiCell, DataSourcePropOnCellSelectionChange_SingleCell, DataSourcePropOnRowSelectionChange, DataSourcePropOnRowSelectionChange_MultiRow, DataSourcePropOnRowSelectionChange_SingleRow, DataSourcePropPivotBy, DataSourcePropRowInfoReducers, DataSourcePropRowSelection, DataSourcePropRowSelection_MultiRow, DataSourcePropRowSelection_SingleRow, DataSourcePropSelectionMode, DataSourcePropShouldReloadData, DataSourcePropShouldReloadDataObject, DataSourcePropSortFn, DataSourcePropSortInfo, DataSourcePropSortTypes, DataSourceProps, DataSourcePropsWithChildren, DataSourceRawReducer, DataSourceRemoteData, DataSourceRowInfoReducer, DataSourceSetupState, DataSourceSingleSortInfo, DataSourceSortInfo, DataSourceState, DebugLogger, DeepMap, ElementContainerGetter, FixedSizeSet, GroupRowsState, InfiniteColumnEditorContextType, InfiniteTable, InfiniteTableAction, InfiniteTableActionType, InfiniteTableApi, InfiniteTableClassName, InfiniteTableColumn, InfiniteTableColumnAggregator, InfiniteTableColumnApi, InfiniteTableColumnCellContextType, InfiniteTableColumnComparer, InfiniteTableColumnGroup, InfiniteTableColumnRenderFunctionForGroupRows, InfiniteTableColumnRenderFunctionForNormalRows, InfiniteTableColumnRenderValueParam, InfiniteTableColumnRowspanParam, InfiniteTableColumnSizingOptions, InfiniteTableColumnValueFormatterParams, InfiniteTableColumnValueGetterParams, InfiniteTableComponent, InfiniteTableComputedColumn, InfiniteTableComputedValues, InfiniteTableContextValue, InfiniteTableGroupColumnBase, InfiniteTableGroupColumnFunction, InfiniteTableGroupColumnGetterOptions, InfiniteTablePivotColumn, InfiniteTablePropAutoSizeColumnsKey, InfiniteTablePropColumnGroups, InfiniteTablePropColumnOrder, InfiniteTablePropColumnPinning, InfiniteTablePropColumnSizing, InfiniteTablePropColumnTypes, InfiniteTablePropColumnVisibility, InfiniteTablePropColumns, InfiniteTablePropComponents, InfiniteTablePropGetCellContextMenuItems, InfiniteTablePropGetColumnMenuItems, InfiniteTablePropGroupColumn, InfiniteTablePropGroupRenderStrategy, InfiniteTablePropHeaderOptions, InfiniteTablePropKeyboardNavigation, InfiniteTablePropKeyboardShorcut, InfiniteTablePropMultiSortBehavior, InfiniteTablePropRowClassName, InfiniteTablePropRowStyle, InfiniteTableProps, InfiniteTableRowClassNameFn, InfiniteTableRowInfo, InfiniteTableRowStyleFn, InfiniteTableState, InfiniteTable_HasGrouping_RowInfoGroup, InfiniteTable_HasGrouping_RowInfoNormal, LazyGroupDataDeepMap, LazyGroupDataItem, LazyRowInfoGroup, Menu, MenuChildrenFnParam, MenuColumn, MenuColumnRenderParam, MenuDecoration, MenuIconProps, MenuItemActionContext, MenuItemDefinition, MenuItemObject, MenuProps, MenuRenderable, MenuRuntimeItem, MenuRuntimeItemSelectable, MenuSeparator, OverlayShowParams, RowDetailCache, RowDetailState, RowDetailStateObject, RowSelectionState, ScrollStopInfo, Scrollbars, ShowOverlayFn, WeakFixedSizeSet, components, debounce, debug, defaultFilterTypes, eventMatchesKeyboardShortcut, defaultFilterTypes as filterTypes, flatten, buildManagedComponent as getComponentStateRoot, group, interceptMap, keyboardShortcuts, multisort, queryKeyToCacheKey, useManagedComponentState as useComponentState, useDataSourceInternal, useDataSourceState, useEffectWithChanges, useEffectWithObject, useGridScroll, useInfiniteColumnCell, useInfiniteColumnEditor, useInfiniteColumnFilterEditor, useInfiniteHeaderCell, useManagedDataSource, useMasterRowInfo, useOverlay, useOverlayPortal, useRowInfoReducers, useVisibleColumnSizes };
package/index.dev.js CHANGED
@@ -15229,8 +15229,9 @@ var {
15229
15229
  mappedCallbacks: getMappedCallbacks()
15230
15230
  });
15231
15231
  function DataSource(props) {
15232
+ var _a;
15232
15233
  const { DataSource: DataSourceComponent } = useDataSourceInternal(props);
15233
- return /* @__PURE__ */ React51.createElement(DataSourceComponent, null, props.children);
15234
+ return /* @__PURE__ */ React51.createElement(DataSourceComponent, null, (_a = props.children) != null ? _a : null);
15234
15235
  }
15235
15236
  function useRowInfoReducers() {
15236
15237
  const { rowInfoReducerResults } = useDataSourceState();
@@ -16843,6 +16844,7 @@ function useCellRendering(param) {
16843
16844
  rowClassName,
16844
16845
  onScrollToTop,
16845
16846
  onScrollToBottom,
16847
+ onScrollStop,
16846
16848
  scrollToBottomOffset,
16847
16849
  ready
16848
16850
  } = state;
@@ -16866,7 +16868,7 @@ function useCellRendering(param) {
16866
16868
  }, [brain]);
16867
16869
  (0, import_react40.useEffect)(() => {
16868
16870
  return brain.onScrollStop((scrollPosition) => {
16869
- const { scrollTop: scrollTop2 } = scrollPosition;
16871
+ const { scrollTop: scrollTop2, scrollLeft: scrollLeft2 } = scrollPosition;
16870
16872
  if (scrollTop2 === 0) {
16871
16873
  onScrollToTop == null ? void 0 : onScrollToTop();
16872
16874
  }
@@ -16889,8 +16891,21 @@ function useCellRendering(param) {
16889
16891
  );
16890
16892
  }
16891
16893
  }
16894
+ if (onScrollStop) {
16895
+ const range = brain.getRenderRange();
16896
+ onScrollStop({
16897
+ scrollTop: scrollTop2,
16898
+ scrollLeft: scrollLeft2,
16899
+ renderRange: range,
16900
+ viewportSize: getState().bodySize,
16901
+ firstVisibleRowIndex: range.start[0],
16902
+ lastVisibleRowIndex: range.end[0],
16903
+ firstVisibleColIndex: range.start[1],
16904
+ lastVisibleColIndex: range.end[1]
16905
+ });
16906
+ }
16892
16907
  });
16893
- }, [brain, onScrollToTop, onScrollToBottom]);
16908
+ }, [brain, onScrollToTop, onScrollToBottom, onScrollStop]);
16894
16909
  (0, import_react40.useEffect)(() => {
16895
16910
  if (!bodySize.height) {
16896
16911
  return;
@@ -18810,7 +18825,7 @@ var useLicense = (licenseKey = "") => {
18810
18825
  }
18811
18826
  let valid2 = isValidLicense(licenseKey, {
18812
18827
  publishedAt: 1624970570587,
18813
- version: "4.3.1"
18828
+ version: "4.3.3"
18814
18829
  });
18815
18830
  if (!licenseKey && !valid2 && isInsidePlayground) {
18816
18831
  return true;
package/index.dev.mjs CHANGED
@@ -15197,8 +15197,9 @@ var {
15197
15197
  mappedCallbacks: getMappedCallbacks()
15198
15198
  });
15199
15199
  function DataSource(props) {
15200
+ var _a;
15200
15201
  const { DataSource: DataSourceComponent } = useDataSourceInternal(props);
15201
- return /* @__PURE__ */ React51.createElement(DataSourceComponent, null, props.children);
15202
+ return /* @__PURE__ */ React51.createElement(DataSourceComponent, null, (_a = props.children) != null ? _a : null);
15202
15203
  }
15203
15204
  function useRowInfoReducers() {
15204
15205
  const { rowInfoReducerResults } = useDataSourceState();
@@ -16815,6 +16816,7 @@ function useCellRendering(param) {
16815
16816
  rowClassName,
16816
16817
  onScrollToTop,
16817
16818
  onScrollToBottom,
16819
+ onScrollStop,
16818
16820
  scrollToBottomOffset,
16819
16821
  ready
16820
16822
  } = state;
@@ -16838,7 +16840,7 @@ function useCellRendering(param) {
16838
16840
  }, [brain]);
16839
16841
  useEffect22(() => {
16840
16842
  return brain.onScrollStop((scrollPosition) => {
16841
- const { scrollTop: scrollTop2 } = scrollPosition;
16843
+ const { scrollTop: scrollTop2, scrollLeft: scrollLeft2 } = scrollPosition;
16842
16844
  if (scrollTop2 === 0) {
16843
16845
  onScrollToTop == null ? void 0 : onScrollToTop();
16844
16846
  }
@@ -16861,8 +16863,21 @@ function useCellRendering(param) {
16861
16863
  );
16862
16864
  }
16863
16865
  }
16866
+ if (onScrollStop) {
16867
+ const range = brain.getRenderRange();
16868
+ onScrollStop({
16869
+ scrollTop: scrollTop2,
16870
+ scrollLeft: scrollLeft2,
16871
+ renderRange: range,
16872
+ viewportSize: getState().bodySize,
16873
+ firstVisibleRowIndex: range.start[0],
16874
+ lastVisibleRowIndex: range.end[0],
16875
+ firstVisibleColIndex: range.start[1],
16876
+ lastVisibleColIndex: range.end[1]
16877
+ });
16878
+ }
16864
16879
  });
16865
- }, [brain, onScrollToTop, onScrollToBottom]);
16880
+ }, [brain, onScrollToTop, onScrollToBottom, onScrollStop]);
16866
16881
  useEffect22(() => {
16867
16882
  if (!bodySize.height) {
16868
16883
  return;
@@ -18782,7 +18797,7 @@ var useLicense = (licenseKey = "") => {
18782
18797
  }
18783
18798
  let valid2 = isValidLicense(licenseKey, {
18784
18799
  publishedAt: 1624970570587,
18785
- version: "4.3.1"
18800
+ version: "4.3.3"
18786
18801
  });
18787
18802
  if (!licenseKey && !valid2 && isInsidePlayground) {
18788
18803
  return true;
package/index.js CHANGED
@@ -15229,8 +15229,9 @@ var {
15229
15229
  mappedCallbacks: getMappedCallbacks()
15230
15230
  });
15231
15231
  function DataSource(props) {
15232
+ var _a;
15232
15233
  const { DataSource: DataSourceComponent } = useDataSourceInternal(props);
15233
- return /* @__PURE__ */ React51.createElement(DataSourceComponent, null, props.children);
15234
+ return /* @__PURE__ */ React51.createElement(DataSourceComponent, null, (_a = props.children) != null ? _a : null);
15234
15235
  }
15235
15236
  function useRowInfoReducers() {
15236
15237
  const { rowInfoReducerResults } = useDataSourceState();
@@ -16843,6 +16844,7 @@ function useCellRendering(param) {
16843
16844
  rowClassName,
16844
16845
  onScrollToTop,
16845
16846
  onScrollToBottom,
16847
+ onScrollStop,
16846
16848
  scrollToBottomOffset,
16847
16849
  ready
16848
16850
  } = state;
@@ -16866,7 +16868,7 @@ function useCellRendering(param) {
16866
16868
  }, [brain]);
16867
16869
  (0, import_react40.useEffect)(() => {
16868
16870
  return brain.onScrollStop((scrollPosition) => {
16869
- const { scrollTop: scrollTop2 } = scrollPosition;
16871
+ const { scrollTop: scrollTop2, scrollLeft: scrollLeft2 } = scrollPosition;
16870
16872
  if (scrollTop2 === 0) {
16871
16873
  onScrollToTop == null ? void 0 : onScrollToTop();
16872
16874
  }
@@ -16889,8 +16891,21 @@ function useCellRendering(param) {
16889
16891
  );
16890
16892
  }
16891
16893
  }
16894
+ if (onScrollStop) {
16895
+ const range = brain.getRenderRange();
16896
+ onScrollStop({
16897
+ scrollTop: scrollTop2,
16898
+ scrollLeft: scrollLeft2,
16899
+ renderRange: range,
16900
+ viewportSize: getState().bodySize,
16901
+ firstVisibleRowIndex: range.start[0],
16902
+ lastVisibleRowIndex: range.end[0],
16903
+ firstVisibleColIndex: range.start[1],
16904
+ lastVisibleColIndex: range.end[1]
16905
+ });
16906
+ }
16892
16907
  });
16893
- }, [brain, onScrollToTop, onScrollToBottom]);
16908
+ }, [brain, onScrollToTop, onScrollToBottom, onScrollStop]);
16894
16909
  (0, import_react40.useEffect)(() => {
16895
16910
  if (!bodySize.height) {
16896
16911
  return;
@@ -18810,7 +18825,7 @@ var useLicense = (licenseKey = "") => {
18810
18825
  }
18811
18826
  let valid2 = isValidLicense(licenseKey, {
18812
18827
  publishedAt: 1624970570587,
18813
- version: "4.3.1"
18828
+ version: "4.3.3"
18814
18829
  });
18815
18830
  if (!licenseKey && !valid2 && isInsidePlayground) {
18816
18831
  return true;
package/index.mjs CHANGED
@@ -15197,8 +15197,9 @@ var {
15197
15197
  mappedCallbacks: getMappedCallbacks()
15198
15198
  });
15199
15199
  function DataSource(props) {
15200
+ var _a;
15200
15201
  const { DataSource: DataSourceComponent } = useDataSourceInternal(props);
15201
- return /* @__PURE__ */ React51.createElement(DataSourceComponent, null, props.children);
15202
+ return /* @__PURE__ */ React51.createElement(DataSourceComponent, null, (_a = props.children) != null ? _a : null);
15202
15203
  }
15203
15204
  function useRowInfoReducers() {
15204
15205
  const { rowInfoReducerResults } = useDataSourceState();
@@ -16815,6 +16816,7 @@ function useCellRendering(param) {
16815
16816
  rowClassName,
16816
16817
  onScrollToTop,
16817
16818
  onScrollToBottom,
16819
+ onScrollStop,
16818
16820
  scrollToBottomOffset,
16819
16821
  ready
16820
16822
  } = state;
@@ -16838,7 +16840,7 @@ function useCellRendering(param) {
16838
16840
  }, [brain]);
16839
16841
  useEffect22(() => {
16840
16842
  return brain.onScrollStop((scrollPosition) => {
16841
- const { scrollTop: scrollTop2 } = scrollPosition;
16843
+ const { scrollTop: scrollTop2, scrollLeft: scrollLeft2 } = scrollPosition;
16842
16844
  if (scrollTop2 === 0) {
16843
16845
  onScrollToTop == null ? void 0 : onScrollToTop();
16844
16846
  }
@@ -16861,8 +16863,21 @@ function useCellRendering(param) {
16861
16863
  );
16862
16864
  }
16863
16865
  }
16866
+ if (onScrollStop) {
16867
+ const range = brain.getRenderRange();
16868
+ onScrollStop({
16869
+ scrollTop: scrollTop2,
16870
+ scrollLeft: scrollLeft2,
16871
+ renderRange: range,
16872
+ viewportSize: getState().bodySize,
16873
+ firstVisibleRowIndex: range.start[0],
16874
+ lastVisibleRowIndex: range.end[0],
16875
+ firstVisibleColIndex: range.start[1],
16876
+ lastVisibleColIndex: range.end[1]
16877
+ });
16878
+ }
16864
16879
  });
16865
- }, [brain, onScrollToTop, onScrollToBottom]);
16880
+ }, [brain, onScrollToTop, onScrollToBottom, onScrollStop]);
16866
16881
  useEffect22(() => {
16867
16882
  if (!bodySize.height) {
16868
16883
  return;
@@ -18782,7 +18797,7 @@ var useLicense = (licenseKey = "") => {
18782
18797
  }
18783
18798
  let valid2 = isValidLicense(licenseKey, {
18784
18799
  publishedAt: 1624970570587,
18785
- version: "4.3.1"
18800
+ version: "4.3.3"
18786
18801
  });
18787
18802
  if (!licenseKey && !valid2 && isInsidePlayground) {
18788
18803
  return true;
package/package.json CHANGED
@@ -25,7 +25,7 @@
25
25
  "bugs": {
26
26
  "url": "https://github.com/infinite-table/infinite-react/issues"
27
27
  },
28
- "version": "4.3.1",
28
+ "version": "4.3.3",
29
29
  "main": "index.js",
30
30
  "module": "index.mjs",
31
31
  "typings": "index.d.ts",
@@ -34,5 +34,5 @@
34
34
  },
35
35
  "license": "Commercial & Open Source",
36
36
  "//": "will be updated at build time",
37
- "publishedAt": 1721805821251
37
+ "publishedAt": 1721832132084
38
38
  }