mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Using generated ViewConfigs for AndroidSwipeRefreshLayoutNativeComponent
Summary: $title Reviewed By: rickhanlonii Differential Revision: D15914074 fbshipit-source-id: 40fa6dcdf27b4fb88d936c439ba66a11e55966a9
This commit is contained in:
committed by
Facebook Github Bot
parent
f4fa539b8c
commit
2a4882e7e9
@@ -10,18 +10,16 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
const requireNativeComponent = require('../../ReactNative/requireNativeComponent');
|
||||
import codegenNativeComponent from '../../Utilities/codegenNativeComponent';
|
||||
|
||||
import type {
|
||||
DirectEvent,
|
||||
Float,
|
||||
Int32,
|
||||
WithDefault,
|
||||
} from '../../Types/CodegenTypes';
|
||||
import type {ColorValue} from '../../StyleSheet/StyleSheetTypes';
|
||||
import type {ViewProps} from '../View/ViewPropTypes';
|
||||
import type {NativeComponent} from '../../Renderer/shims/ReactNative';
|
||||
|
||||
const AndroidSwipeRefreshLayout = require('../../ReactNative/UIManager').getViewManagerConfig(
|
||||
'AndroidSwipeRefreshLayout',
|
||||
);
|
||||
const RefreshLayoutConsts = AndroidSwipeRefreshLayout
|
||||
? AndroidSwipeRefreshLayout.Constants
|
||||
: {SIZE: {}};
|
||||
|
||||
type NativeProps = $ReadOnly<{|
|
||||
...ViewProps,
|
||||
@@ -29,7 +27,7 @@ type NativeProps = $ReadOnly<{|
|
||||
/**
|
||||
* Whether the pull to refresh functionality is enabled.
|
||||
*/
|
||||
enabled?: ?boolean,
|
||||
enabled?: ?WithDefault<boolean, false>,
|
||||
/**
|
||||
* The colors (at least one) that will be used to draw the refresh indicator.
|
||||
*/
|
||||
@@ -40,29 +38,35 @@ type NativeProps = $ReadOnly<{|
|
||||
progressBackgroundColor?: ?ColorValue,
|
||||
/**
|
||||
* Size of the refresh indicator, see RefreshControl.SIZE.
|
||||
*
|
||||
* This type isn't currently accurate. It really is specific numbers
|
||||
* hard coded in the Android platform.
|
||||
*
|
||||
* Also, 1 isn't actually a safe default. We are able to set this here
|
||||
* because native code isn't currently consuming the generated artifact.
|
||||
* This will end up being
|
||||
* size?: ?WithDefault<'default' | 'large', 'default'>,
|
||||
*/
|
||||
size?: ?(
|
||||
| typeof RefreshLayoutConsts.SIZE.DEFAULT
|
||||
| typeof RefreshLayoutConsts.SIZE.LARGE
|
||||
),
|
||||
size?: ?WithDefault<Int32, 1>,
|
||||
/**
|
||||
* Progress view top offset
|
||||
*/
|
||||
progressViewOffset?: ?number,
|
||||
progressViewOffset?: ?WithDefault<Float, 0>,
|
||||
|
||||
/**
|
||||
* Called when the view starts refreshing.
|
||||
*/
|
||||
onRefresh?: ?() => mixed,
|
||||
onRefresh?: ?(event: DirectEvent<null>) => mixed,
|
||||
|
||||
/**
|
||||
* Whether the view should be indicating an active refresh.
|
||||
*/
|
||||
refreshing: boolean,
|
||||
refreshing: WithDefault<boolean, false>,
|
||||
|}>;
|
||||
|
||||
type AndroidSwipeRefreshLayoutNativeType = Class<NativeComponent<NativeProps>>;
|
||||
|
||||
module.exports = ((requireNativeComponent(
|
||||
export default codegenNativeComponent<NativeProps>(
|
||||
'AndroidSwipeRefreshLayout',
|
||||
): any): AndroidSwipeRefreshLayoutNativeType);
|
||||
{
|
||||
interfaceOnly: true,
|
||||
},
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user