mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-08-12 04:50:18 +00:00
[react-native]: add snap types to ScrollViewProps
This commit is contained in:
Vendored
+38
-15
@@ -6297,21 +6297,6 @@ export interface ScrollViewPropsIOS {
|
||||
*/
|
||||
scrollsToTop?: boolean;
|
||||
|
||||
/**
|
||||
* When snapToInterval is set, snapToAlignment will define the relationship of the the snapping to the scroll view.
|
||||
* - start (the default) will align the snap at the left (horizontal) or top (vertical)
|
||||
* - center will align the snap in the center
|
||||
* - end will align the snap at the right (horizontal) or bottom (vertical)
|
||||
*/
|
||||
snapToAlignment?: "start" | "center" | "end";
|
||||
|
||||
/**
|
||||
* When set, causes the scroll view to stop at multiples of the value of snapToInterval.
|
||||
* This can be used for paginating through children that have lengths smaller than the scroll view.
|
||||
* Used in combination with snapToAlignment.
|
||||
*/
|
||||
snapToInterval?: number;
|
||||
|
||||
/**
|
||||
* An array of child indices determining which children get docked to the
|
||||
* top of the screen when scrolling. For example passing
|
||||
@@ -6484,6 +6469,44 @@ export interface ScrollViewProps extends ViewProps, ScrollViewPropsIOS, ScrollVi
|
||||
* functionality for the ScrollView.
|
||||
*/
|
||||
refreshControl?: React.ReactElement<RefreshControlProps>;
|
||||
|
||||
/**
|
||||
* When `snapToInterval` is set, `snapToAlignment` will define the relationship of the the snapping to the scroll view.
|
||||
* - `start` (the default) will align the snap at the left (horizontal) or top (vertical)
|
||||
* - `center` will align the snap in the center
|
||||
* - `end` will align the snap at the right (horizontal) or bottom (vertical)
|
||||
*/
|
||||
snapToAlignment?: "start" | "center" | "end";
|
||||
|
||||
/**
|
||||
* When set, causes the scroll view to stop at multiples of the value of `snapToInterval`.
|
||||
* This can be used for paginating through children that have lengths smaller than the scroll view.
|
||||
* Used in combination with `snapToAlignment` and `decelerationRate="fast"`. Overrides less
|
||||
* configurable `pagingEnabled` prop.
|
||||
*/
|
||||
snapToInterval?: number;
|
||||
|
||||
/**
|
||||
* When set, causes the scroll view to stop at the defined offsets. This can be used for
|
||||
* paginating through variously sized children that have lengths smaller than the scroll view.
|
||||
* Typically used in combination with `decelerationRate="fast"`. Overrides less configurable
|
||||
* `pagingEnabled` and `snapToInterval` props.
|
||||
*/
|
||||
snapToOffsets?: number[];
|
||||
|
||||
/**
|
||||
* Use in conjuction with `snapToOffsets`. By default, the beginning of the list counts as a
|
||||
* snap offset. Set `snapToStart` to false to disable this behavior and allow the list to scroll
|
||||
* freely between its start and the first `snapToOffsets` offset. The default value is true.
|
||||
*/
|
||||
snapToStart?: boolean;
|
||||
|
||||
/**
|
||||
* Use in conjuction with `snapToOffsets`. By default, the end of the list counts as a snap
|
||||
* offset. Set `snapToEnd` to false to disable this behavior and allow the list to scroll freely
|
||||
* between its end and the last `snapToOffsets` offset. The default value is true.
|
||||
*/
|
||||
snapToEnd?: boolean;
|
||||
}
|
||||
|
||||
declare class ScrollViewComponent extends React.Component<ScrollViewProps> {}
|
||||
|
||||
@@ -454,6 +454,9 @@ class ScrollerListComponentTest extends React.Component<{}, { dataSource: ListVi
|
||||
nestedScrollEnabled={true}
|
||||
invertStickyHeaders={true}
|
||||
contentOffset={{ x: 0, y: 0 }}
|
||||
snapToStart={false}
|
||||
snapToEnd={false}
|
||||
snapToOffsets={[100, 300, 500]}
|
||||
{...props}
|
||||
style={[scrollViewStyle1.scrollView, scrollViewStyle2]}
|
||||
/>
|
||||
|
||||
Reference in New Issue
Block a user