react-native-maps
Version:
React Native Mapview component for iOS + Android
54 lines (46 loc) • 1.16 kB
JavaScript
import PropTypes from 'prop-types';
import React from 'react';
import { StyleSheet, ViewPropTypes, View } from 'react-native';
import decorateMapComponent, {
SUPPORTED,
USES_DEFAULT_IMPLEMENTATION,
} from './decorateMapComponent';
// if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)
const viewPropTypes = ViewPropTypes || View.propTypes;
const propTypes = {
...viewPropTypes,
tooltip: PropTypes.bool,
onPress: PropTypes.func,
alphaHitTest: PropTypes.bool,
};
const defaultProps = {
tooltip: false,
alphaHitTest: false,
};
class MapCallout extends React.Component {
render() {
const AIRMapCallout = this.getAirComponent();
return (
<AIRMapCallout
{...this.props}
style={[styles.callout, this.props.style]}
/>
);
}
}
MapCallout.propTypes = propTypes;
MapCallout.defaultProps = defaultProps;
const styles = StyleSheet.create({
callout: {
position: 'absolute',
},
});
export default decorateMapComponent(MapCallout, {
componentType: 'Callout',
providers: {
google: {
ios: SUPPORTED,
android: USES_DEFAULT_IMPLEMENTATION,
},
},
});