Files
react-native/packages/react-native-codegen/e2e/__test_fixtures__/components/ObjectPropsNativeComponent.js
T
Logan Daniels b6333f79e1 Final fixes and seal xplat/js/react-native-github
Reviewed By: panagosg7

Differential Revision: D16946423

fbshipit-source-id: 89ca82c955e99a23a14984d51f3c97346c363afd
2019-08-23 08:45:11 -07:00

53 lines
1.4 KiB
JavaScript

/**
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @format
* @flow
*/
'use strict';
import type {ViewProps} from '../../../../../Libraries/Components/View/ViewPropTypes';
import type {ImageSource} from '../../../../../Libraries/Image/ImageSource';
import type {
PointValue,
ColorValue,
} from '../../../../../Libraries/StyleSheet/StyleSheetTypes';
import type {
Int32,
Float,
WithDefault,
} from '../../../../../Libraries/Types/CodegenTypes';
import codegenNativeComponent from '../../../../../Libraries/Utilities/codegenNativeComponent';
import type {NativeComponentType} from '../../../../../Libraries/Utilities/codegenNativeComponent';
type ObjectArrayPropType = $ReadOnly<{|
array: $ReadOnlyArray<string>,
|}>;
type NativeProps = $ReadOnly<{|
...ViewProps,
// Props
objectProp?: $ReadOnly<{|
stringProp?: WithDefault<string, ''>,
booleanProp: boolean,
floatProp: Float,
intProp: Int32,
stringEnumProp?: WithDefault<'small' | 'large', 'small'>,
|}>,
objectArrayProp: ObjectArrayPropType,
objectPrimitiveRequiredProp: $ReadOnly<{|
image: ImageSource,
color?: ColorValue,
point: ?PointValue,
|}>,
|}>;
export default (codegenNativeComponent<NativeProps>(
'ObjectPropsNativeComponent',
): NativeComponentType<NativeProps>);