UNPKG

react-google-maps

Version:
212 lines (175 loc) 5.05 kB
"use strict" Object.defineProperty(exports, "__esModule", { value: true, }) exports.GroundOverlay = undefined var _defineProperty2 = require("babel-runtime/helpers/defineProperty") var _defineProperty3 = _interopRequireDefault(_defineProperty2) var _getPrototypeOf = require("babel-runtime/core-js/object/get-prototype-of") var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf) var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck") var _classCallCheck3 = _interopRequireDefault(_classCallCheck2) var _createClass2 = require("babel-runtime/helpers/createClass") var _createClass3 = _interopRequireDefault(_createClass2) var _possibleConstructorReturn2 = require("babel-runtime/helpers/possibleConstructorReturn") var _possibleConstructorReturn3 = _interopRequireDefault( _possibleConstructorReturn2 ) var _inherits2 = require("babel-runtime/helpers/inherits") var _inherits3 = _interopRequireDefault(_inherits2) var _react = require("react") var _react2 = _interopRequireDefault(_react) var _propTypes = require("prop-types") var _propTypes2 = _interopRequireDefault(_propTypes) var _MapChildHelper = require("../utils/MapChildHelper") var _constants = require("../constants") function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj } } /** * @url https://developers.google.com/maps/documentation/javascript/reference#GroundOverlay */ /* global google */ var GroundOverlay = (exports.GroundOverlay = (function(_React$PureComponent) { ;(0, _inherits3.default)(GroundOverlay, _React$PureComponent) /* * @url https://developers.google.com/maps/documentation/javascript/3.exp/reference#GroundOverlay */ function GroundOverlay(props, context) { ;(0, _classCallCheck3.default)(this, GroundOverlay) var _this = (0, _possibleConstructorReturn3.default)( this, (GroundOverlay.__proto__ || (0, _getPrototypeOf2.default)(GroundOverlay) ).call(this, props, context) ) var groundOverlay = new google.maps.GroundOverlay(props.url, props.bounds) ;(0, _MapChildHelper.construct)( GroundOverlay.propTypes, updaterMap, _this.props, groundOverlay ) groundOverlay.setMap(_this.context[_constants.MAP]) _this.state = (0, _defineProperty3.default)( {}, _constants.GROUND_LAYER, groundOverlay ) return _this } ;(0, _createClass3.default)(GroundOverlay, [ { key: "componentDidMount", value: function componentDidMount() { ;(0, _MapChildHelper.componentDidMount)( this, this.state[_constants.GROUND_LAYER], eventMap ) }, }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { ;(0, _MapChildHelper.componentDidUpdate)( this, this.state[_constants.GROUND_LAYER], eventMap, updaterMap, prevProps ) }, }, { key: "componentWillUnmount", value: function componentWillUnmount() { ;(0, _MapChildHelper.componentWillUnmount)(this) var GroundOverlay = this.state[_constants.GROUND_LAYER] if (GroundOverlay) { GroundOverlay.setMap(null) } }, }, { key: "render", value: function render() { return false }, /** * Gets the LatLngBounds of this overlay. * @type LatLngBoundsLatLngBounds * @public */ }, { key: "getBounds", value: function getBounds() { return this.state[_constants.GROUND_LAYER].getBounds() }, /** * Returns the opacity of this ground overlay. * @type number * @public */ }, { key: "getOpacity", value: function getOpacity() { return this.state[_constants.GROUND_LAYER].getOpacity() }, /** * Gets the url of the projected image. * @type string * @public */ }, { key: "getUrl", value: function getUrl() { return this.state[_constants.GROUND_LAYER].getUrl() }, }, ]) return GroundOverlay })(_react2.default.PureComponent)) GroundOverlay.propTypes = { /** * @type string */ url: _propTypes2.default.string.isRequired, /** * @see https://developers.google.com/maps/documentation/javascript/reference#GroundOverlay */ bounds: _propTypes2.default.object.isRequired, /** * @type number */ defaultOpacity: _propTypes2.default.number, /** * @type number */ opacity: _propTypes2.default.number, /** * function */ onDblClick: _propTypes2.default.func, /** * function */ onClick: _propTypes2.default.func, } GroundOverlay.contextTypes = (0, _defineProperty3.default)( {}, _constants.MAP, _propTypes2.default.object ) exports.default = GroundOverlay var eventMap = { onDblClick: "dblclick", onClick: "click", } var updaterMap = { opacity: function opacity(instance, _opacity) { instance.setOpacity(_opacity) }, }