google-map-react/develop/markers/SimpleMarker.js
Exomnius f4c0a0ce20 Added react 16 as peer dependency + bumped related react versions (#454)
* react-16 added react 16 as peer dependency and bumped related react versions

* react-16 removed unwanted style changes

* react-16 removed unwanted style changes

* react-16 removed unwanted style changes
2017-10-15 22:18:29 +03:00

49 lines
1.2 KiB
JavaScript

import React from 'react';
import PropTypes from 'prop-types';
import compose from 'recompose/compose';
import defaultProps from 'recompose/defaultProps';
import getContext from 'recompose/getContext';
// import mapPropsOnChange from 'recompose/mapPropsOnChange';
import { Motion } from 'react-motion';
import { clusterMarkerHOC } from './ClusterMarker';
import simpleMarkerStyles from './SimpleMarker.sass';
export const simpleMarker = (
{
styles,
hovered,
$hover,
defaultMotionStyle,
motionStyle,
// hello,
} // console.log('hello', hello),
) => (
<Motion defaultStyle={defaultMotionStyle} style={motionStyle}>
{({ scale }) => (
<div
className={styles.marker}
style={{
transform: `translate3D(0,0,0) scale(${scale}, ${scale})`,
zIndex: hovered || $hover ? 1 : 0,
}}
/>
)}
</Motion>
);
export const simpleMarkerHOC = compose(
defaultProps({
styles: simpleMarkerStyles,
initialScale: 0.6,
defaultScale: 0.6,
hoveredScale: 0.7,
}),
getContext({
hello: PropTypes.string,
}),
// resuse HOC
clusterMarkerHOC
);
export default simpleMarkerHOC(simpleMarker);