jam-cloud/jam-ui/node_modules/react-leaflet/lib/VideoOverlay.js

67 lines
1.9 KiB
JavaScript

"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.default = void 0;
var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
var _leaflet = require("leaflet");
var _context = require("./context");
var _MapLayer2 = _interopRequireDefault(require("./MapLayer"));
var VideoOverlay = /*#__PURE__*/function (_MapLayer) {
(0, _inheritsLoose2.default)(VideoOverlay, _MapLayer);
function VideoOverlay() {
return _MapLayer.apply(this, arguments) || this;
}
var _proto = VideoOverlay.prototype;
_proto.createLeafletElement = function createLeafletElement(props) {
return new _leaflet.VideoOverlay(props.url, props.bounds, this.getOptions(props));
};
_proto.componentDidMount = function componentDidMount() {
_MapLayer.prototype.componentDidMount.call(this);
if (this.props.play === true) {
this.leafletElement.getElement().play();
}
};
_proto.updateLeafletElement = function updateLeafletElement(fromProps, toProps) {
if (toProps.url !== fromProps.url) {
this.leafletElement.setUrl(toProps.url);
}
if (toProps.bounds !== fromProps.bounds) {
this.leafletElement.setBounds((0, _leaflet.latLngBounds)(toProps.bounds));
}
if (toProps.opacity !== fromProps.opacity) {
this.leafletElement.setOpacity(toProps.opacity);
}
if (toProps.zIndex !== fromProps.zIndex) {
this.leafletElement.setZIndex(toProps.zIndex);
} // flowlint-next-line sketchy-null-bool:off
if (toProps.play === true && !fromProps.play) {
this.leafletElement.getElement().play(); // flowlint-next-line sketchy-null-bool:off
} else if (!toProps.play && fromProps.play === true) {
this.leafletElement.getElement().pause();
}
};
return VideoOverlay;
}(_MapLayer2.default);
var _default = (0, _context.withLeaflet)(VideoOverlay);
exports.default = _default;