mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/41051 Strictifies flow to flow strict-local in files where doing that doesn't cause new flow errors. Changelog: Internal Reviewed By: yungsters Differential Revision: D50369011 fbshipit-source-id: b4a5a26b839b7327a3178e6f5b35246dea365a38
48 lines
1.6 KiB
JavaScript
48 lines
1.6 KiB
JavaScript
/**
|
|
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
*
|
|
* This source code is licensed under the MIT license found in the
|
|
* LICENSE file in the root directory of this source tree.
|
|
*
|
|
* @flow strict-local
|
|
* @format
|
|
*/
|
|
|
|
import {
|
|
UtilsSingleton as Utils,
|
|
androidWidget,
|
|
iOSName,
|
|
} from '../../helpers/utils';
|
|
|
|
type RefreshControlComponentScreenType = {
|
|
refreshControlScreenElement: string,
|
|
initialRowScreenElement: string,
|
|
checkInitialRowIsDisplayed: () => Promise<boolean>,
|
|
scrollUntilRefreshControlComponentIsDisplayed: () => Promise<void>,
|
|
};
|
|
|
|
export const RefreshControlComponentScreen: RefreshControlComponentScreenType =
|
|
{
|
|
// reference in the Components list
|
|
refreshControlScreenElement: Utils.platformSelect({
|
|
ios: iOSName('RefreshControl'),
|
|
android: androidWidget('TextView', 'text', 'RefreshControl'),
|
|
}),
|
|
// References to elements within the RefreshControl Component screen
|
|
initialRowScreenElement: Utils.platformSelect({
|
|
ios: iOSName('refresh_control_row'),
|
|
android: androidWidget('TextView', 'resource-id', 'refresh_control_row'),
|
|
}),
|
|
// Methods to interact with the elements
|
|
checkInitialRowIsDisplayed: async function (
|
|
this: RefreshControlComponentScreenType,
|
|
): Promise<boolean> {
|
|
return await Utils.checkElementExistence(this.initialRowScreenElement);
|
|
},
|
|
scrollUntilRefreshControlComponentIsDisplayed: async function (
|
|
this: RefreshControlComponentScreenType,
|
|
): Promise<void> {
|
|
return await Utils.scrollToElement(this.refreshControlScreenElement);
|
|
},
|
|
};
|