mirror of
https://github.com/zhigang1992/react-native.git
synced 2026-05-16 10:39:50 +08:00
Move ImageSourcePropType.js, ImageStylePropTypes.js, TextPropTypes.js (#21387)
Summary: related #21342 TODO * move ImageSourcePropType.js, ImageStylePropTypes.js, TextPropTypes.js * fix flow error CheckList - [x] `yarn prettier` - [x] `yarn flow-check-android` - [x] `yarn flow-check-ios` All flow checks pass. [GENERAL] [ENHANCEMENT] [DeprecatedImageSourcePropType.js] - Created. [GENERAL] [ENHANCEMENT] [DeprecatedImageStylePropTypes.js] - Created. [GENERAL] [ENHANCEMENT] [DeprecatedTextPropTypes.js] - Created. Pull Request resolved: https://github.com/facebook/react-native/pull/21387 Reviewed By: TheSavior Differential Revision: D10099753 Pulled By: RSNara fbshipit-source-id: c907af6d1549ee42de1a2e17f278998e8422110f
This commit is contained in:
committed by
Facebook Github Bot
parent
e28d8f6eeb
commit
84f18341aa
@@ -0,0 +1,39 @@
|
||||
/**
|
||||
* 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.
|
||||
*
|
||||
* @no-flow
|
||||
* @format
|
||||
*/
|
||||
'use strict';
|
||||
|
||||
const PropTypes = require('prop-types');
|
||||
|
||||
const ImageURISourcePropType = PropTypes.shape({
|
||||
uri: PropTypes.string,
|
||||
bundle: PropTypes.string,
|
||||
method: PropTypes.string,
|
||||
headers: PropTypes.objectOf(PropTypes.string),
|
||||
body: PropTypes.string,
|
||||
cache: PropTypes.oneOf([
|
||||
'default',
|
||||
'reload',
|
||||
'force-cache',
|
||||
'only-if-cached',
|
||||
]),
|
||||
width: PropTypes.number,
|
||||
height: PropTypes.number,
|
||||
scale: PropTypes.number,
|
||||
});
|
||||
|
||||
const ImageSourcePropType = PropTypes.oneOfType([
|
||||
ImageURISourcePropType,
|
||||
// Opaque type returned by require('./image.jpg')
|
||||
PropTypes.number,
|
||||
// Multiple sources
|
||||
PropTypes.arrayOf(ImageURISourcePropType),
|
||||
]);
|
||||
|
||||
module.exports = ImageSourcePropType;
|
||||
@@ -0,0 +1,67 @@
|
||||
/**
|
||||
* 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.
|
||||
*
|
||||
* @flow
|
||||
* @format
|
||||
*/
|
||||
'use strict';
|
||||
|
||||
const DeprecatedColorPropType = require('DeprecatedColorPropType');
|
||||
const DeprecatedShadowPropTypesIOS = require('DeprecatedShadowPropTypesIOS');
|
||||
const DeprecatedTransformPropTypes = require('DeprecatedTransformPropTypes');
|
||||
const LayoutPropTypes = require('LayoutPropTypes');
|
||||
const ReactPropTypes = require('prop-types');
|
||||
|
||||
const ImageStylePropTypes = {
|
||||
...LayoutPropTypes,
|
||||
...DeprecatedShadowPropTypesIOS,
|
||||
...DeprecatedTransformPropTypes,
|
||||
resizeMode: ReactPropTypes.oneOf([
|
||||
'center',
|
||||
'contain',
|
||||
'cover',
|
||||
'repeat',
|
||||
'stretch',
|
||||
]),
|
||||
backfaceVisibility: ReactPropTypes.oneOf(['visible', 'hidden']),
|
||||
backgroundColor: DeprecatedColorPropType,
|
||||
borderColor: DeprecatedColorPropType,
|
||||
borderWidth: ReactPropTypes.number,
|
||||
borderRadius: ReactPropTypes.number,
|
||||
overflow: ReactPropTypes.oneOf(['visible', 'hidden']),
|
||||
|
||||
/**
|
||||
* Changes the color of all the non-transparent pixels to the tintColor.
|
||||
*/
|
||||
tintColor: DeprecatedColorPropType,
|
||||
opacity: ReactPropTypes.number,
|
||||
/**
|
||||
* When the image has rounded corners, specifying an overlayColor will
|
||||
* cause the remaining space in the corners to be filled with a solid color.
|
||||
* This is useful in cases which are not supported by the Android
|
||||
* implementation of rounded corners:
|
||||
* - Certain resize modes, such as 'contain'
|
||||
* - Animated GIFs
|
||||
*
|
||||
* A typical way to use this prop is with images displayed on a solid
|
||||
* background and setting the `overlayColor` to the same color
|
||||
* as the background.
|
||||
*
|
||||
* For details of how this works under the hood, see
|
||||
* http://frescolib.org/docs/rounded-corners-and-circles.html
|
||||
*
|
||||
* @platform android
|
||||
*/
|
||||
overlayColor: ReactPropTypes.string,
|
||||
|
||||
// Android-Specific styles
|
||||
borderTopLeftRadius: ReactPropTypes.number,
|
||||
borderTopRightRadius: ReactPropTypes.number,
|
||||
borderBottomLeftRadius: ReactPropTypes.number,
|
||||
borderBottomRightRadius: ReactPropTypes.number,
|
||||
};
|
||||
|
||||
module.exports = ImageStylePropTypes;
|
||||
41
Libraries/DeprecatedPropTypes/DeprecatedTextPropTypes.js
Normal file
41
Libraries/DeprecatedPropTypes/DeprecatedTextPropTypes.js
Normal file
@@ -0,0 +1,41 @@
|
||||
/**
|
||||
* 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.
|
||||
*
|
||||
* @flow
|
||||
* @format
|
||||
*/
|
||||
|
||||
'use strict';
|
||||
|
||||
const DeprecatedColorPropType = require('DeprecatedColorPropType');
|
||||
const DeprecatedEdgeInsetsPropType = require('DeprecatedEdgeInsetsPropType');
|
||||
const PropTypes = require('prop-types');
|
||||
const StyleSheetPropType = require('DeprecatedStyleSheetPropType');
|
||||
const TextStylePropTypes = require('TextStylePropTypes');
|
||||
|
||||
const stylePropType = StyleSheetPropType(TextStylePropTypes);
|
||||
|
||||
module.exports = {
|
||||
ellipsizeMode: PropTypes.oneOf(['head', 'middle', 'tail', 'clip']),
|
||||
numberOfLines: PropTypes.number,
|
||||
textBreakStrategy: PropTypes.oneOf(['simple', 'highQuality', 'balanced']),
|
||||
onLayout: PropTypes.func,
|
||||
onPress: PropTypes.func,
|
||||
onLongPress: PropTypes.func,
|
||||
pressRetentionOffset: DeprecatedEdgeInsetsPropType,
|
||||
selectable: PropTypes.bool,
|
||||
selectionColor: DeprecatedColorPropType,
|
||||
suppressHighlighting: PropTypes.bool,
|
||||
style: stylePropType,
|
||||
testID: PropTypes.string,
|
||||
nativeID: PropTypes.string,
|
||||
allowFontScaling: PropTypes.bool,
|
||||
maxFontSizeMultiplier: PropTypes.number,
|
||||
accessible: PropTypes.bool,
|
||||
adjustsFontSizeToFit: PropTypes.bool,
|
||||
minimumFontScale: PropTypes.number,
|
||||
disabled: PropTypes.bool,
|
||||
};
|
||||
Reference in New Issue
Block a user