Add missing VirtualizedList Imperative Types

Summary:
Adds some imperative VirtualizedList methods to the TS types which are documented on the website and are public enough. Also explicitly add `viewOffset` to `scrollToItem` since `scrollToItem` params are indefinite in flow and are passed to `scrollToIndex` (which supports the prop).

Changelog:
[General][Fixed] - Add missing VirtualizedList Imperative Types

Reviewed By: GijsWeterings

Differential Revision: D42047674

fbshipit-source-id: 60f7b35b049853d9fcb724918b3a0008a75ea573
This commit is contained in:
Nick Gerleman
2022-12-15 12:41:38 -08:00
committed by Facebook GitHub Bot
parent 8d6e2f86f5
commit 621969b8d8
4 changed files with 17 additions and 1 deletions
+1
View File
@@ -206,6 +206,7 @@ export class FlatList<ItemT = any> extends React.Component<
scrollToItem: (params: {
animated?: boolean | null | undefined;
item: ItemT;
viewOffset?: number | undefined;
viewPosition?: number | undefined;
}) => void;
+1
View File
@@ -334,6 +334,7 @@ class FlatList<ItemT> extends React.PureComponent<Props<ItemT>, void> {
scrollToItem(params: {
animated?: ?boolean,
item: ItemT,
viewOffset?: number,
viewPosition?: number,
...
}) {
+14 -1
View File
@@ -11,7 +11,12 @@ import type * as React from 'react';
import type {LayoutChangeEvent} from '../../types';
import {StyleProp} from '../StyleSheet/StyleSheet';
import {ViewStyle} from '../StyleSheet/StyleSheetTypes';
import type {ScrollViewProps} from '../Components/ScrollView/ScrollView';
import type {
ScrollResponderMixin,
ScrollView,
ScrollViewProps,
} from '../Components/ScrollView/ScrollView';
import type {View} from '../Components/View/View';
export interface ViewToken {
item: any;
@@ -98,6 +103,7 @@ export class VirtualizedList<ItemT> extends React.Component<
scrollToItem: (params: {
animated?: boolean | undefined;
item: ItemT;
viewOffset?: number | undefined;
viewPosition?: number | undefined;
}) => void;
@@ -113,6 +119,13 @@ export class VirtualizedList<ItemT> extends React.Component<
}) => void;
recordInteraction: () => void;
getScrollRef: () =>
| React.ElementRef<typeof ScrollView>
| React.ElementRef<typeof View>
| null;
getScrollResponder: () => ScrollResponderMixin | null;
}
/**
+1
View File
@@ -263,6 +263,7 @@ export default class VirtualizedList extends StateSafePureComponent<
scrollToItem(params: {
animated?: ?boolean,
item: Item,
viewOffset?: number,
viewPosition?: number,
...
}) {