From f71f4e7906648766e1a5b630abbad8935daef955 Mon Sep 17 00:00:00 2001 From: Tim Yung Date: Fri, 5 Jan 2018 23:06:22 -0800 Subject: [PATCH] RN: Create TextProps (Flow for Text Props) Reviewed By: sahrens Differential Revision: D6669437 fbshipit-source-id: af8fb4534b4a6e0b76a34a6a7ef2087842056f3e --- Libraries/Text/TextProps.js | 55 +++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 Libraries/Text/TextProps.js diff --git a/Libraries/Text/TextProps.js b/Libraries/Text/TextProps.js new file mode 100644 index 000000000..91a2d365e --- /dev/null +++ b/Libraries/Text/TextProps.js @@ -0,0 +1,55 @@ +/** + * Copyright (c) 2013-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + * + * @providesModule TextProps + * @flow + * @format + */ + +'use strict'; + +import type {Node} from 'react'; + +import type {LayoutEvent} from 'CoreEventTypes'; +import type {TextStyleProp} from 'StyleSheetTypes'; + +type PressRetentionOffset = { + top: number, + left: number, + bottom: number, + right: number, +}; + +/** + * @see https://facebook.github.io/react-native/docs/text.html#reference + */ +export type TextProps = {| + accessible?: boolean, + allowFontScaling?: boolean, + children: Node, + ellipsizeMode?: 'clip' | 'head' | 'middle' | 'tail', + nativeID?: string, + numberOfLines?: number, + onLayout?: ?(event: LayoutEvent) => void, + onLongPress?: ?() => void, + onPress?: ?() => void, + pressRetentionOffset?: PressRetentionOffset, + selectable?: boolean, + style?: TextStyleProp, + testID?: string, + + // Android Only + disabled?: boolean, + selectionColor?: string, + textBreakStrategy?: 'balanced' | 'highQuality' | 'simple', + + // iOS Only + adjustsFontSizeToFit?: boolean, + minimumFontScale?: number, + suppressHighlighting?: boolean, +|};