2015-02-20 04:10:52 +00:00
|
|
|
/**
|
2015-03-23 20:35:08 +00:00
|
|
|
* Copyright (c) 2015-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.
|
2015-02-20 04:10:52 +00:00
|
|
|
*
|
|
|
|
* @providesModule ImageStylePropTypes
|
2015-03-26 17:06:50 +00:00
|
|
|
* @flow
|
2015-02-20 04:10:52 +00:00
|
|
|
*/
|
|
|
|
'use strict';
|
|
|
|
|
|
|
|
var ImageResizeMode = require('ImageResizeMode');
|
|
|
|
var LayoutPropTypes = require('LayoutPropTypes');
|
|
|
|
var ReactPropTypes = require('ReactPropTypes');
|
|
|
|
|
2015-03-20 23:41:31 +00:00
|
|
|
var ImageStylePropTypes = {
|
|
|
|
...LayoutPropTypes,
|
|
|
|
resizeMode: ReactPropTypes.oneOf(Object.keys(ImageResizeMode)),
|
|
|
|
backgroundColor: ReactPropTypes.string,
|
|
|
|
borderColor: ReactPropTypes.string,
|
|
|
|
borderWidth: ReactPropTypes.number,
|
|
|
|
borderRadius: ReactPropTypes.number,
|
2015-02-20 04:10:52 +00:00
|
|
|
|
2015-03-20 23:41:31 +00:00
|
|
|
// iOS-Specific style to "tint" an image.
|
|
|
|
// It changes the color of all the non-transparent pixels to the tintColor
|
|
|
|
tintColor: ReactPropTypes.string,
|
|
|
|
opacity: ReactPropTypes.number,
|
|
|
|
};
|
2015-02-20 04:10:52 +00:00
|
|
|
|
|
|
|
// Image doesn't support padding correctly (#4841912)
|
|
|
|
var unsupportedProps = Object.keys({
|
|
|
|
padding: null,
|
|
|
|
paddingTop: null,
|
|
|
|
paddingLeft: null,
|
|
|
|
paddingRight: null,
|
|
|
|
paddingBottom: null,
|
|
|
|
paddingVertical: null,
|
|
|
|
paddingHorizontal: null,
|
|
|
|
});
|
|
|
|
|
2015-03-26 17:06:50 +00:00
|
|
|
for (var i = 0; i < unsupportedProps.length; i++) {
|
|
|
|
delete ImageStylePropTypes[unsupportedProps[i]];
|
2015-02-20 04:10:52 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
module.exports = ImageStylePropTypes;
|