86 lines
2.5 KiB
JavaScript
86 lines
2.5 KiB
JavaScript
"use strict";
|
|
|
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
|
|
exports.__esModule = true;
|
|
exports.default = void 0;
|
|
|
|
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
|
|
var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
|
|
|
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
|
|
var _leaflet = require("leaflet");
|
|
|
|
var _context = require("./context");
|
|
|
|
var _DivOverlay2 = _interopRequireDefault(require("./DivOverlay"));
|
|
|
|
var Tooltip = /*#__PURE__*/function (_DivOverlay) {
|
|
(0, _inheritsLoose2.default)(Tooltip, _DivOverlay);
|
|
|
|
function Tooltip() {
|
|
var _this;
|
|
|
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
args[_key] = arguments[_key];
|
|
}
|
|
|
|
_this = _DivOverlay.call.apply(_DivOverlay, [this].concat(args)) || this;
|
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onTooltipOpen", function (_ref) {
|
|
var tooltip = _ref.tooltip;
|
|
|
|
if (tooltip === _this.leafletElement) {
|
|
_this.onOpen();
|
|
}
|
|
});
|
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onTooltipClose", function (_ref2) {
|
|
var tooltip = _ref2.tooltip;
|
|
|
|
if (tooltip === _this.leafletElement) {
|
|
_this.onClose();
|
|
}
|
|
});
|
|
return _this;
|
|
}
|
|
|
|
var _proto = Tooltip.prototype;
|
|
|
|
_proto.createLeafletElement = function createLeafletElement(props) {
|
|
return new _leaflet.Tooltip(this.getOptions(props), props.leaflet.popupContainer);
|
|
};
|
|
|
|
_proto.componentDidMount = function componentDidMount() {
|
|
var popupContainer = this.props.leaflet.popupContainer;
|
|
if (popupContainer == null) return;
|
|
popupContainer.on({
|
|
tooltipopen: this.onTooltipOpen,
|
|
tooltipclose: this.onTooltipClose
|
|
});
|
|
popupContainer.bindTooltip(this.leafletElement);
|
|
};
|
|
|
|
_proto.componentWillUnmount = function componentWillUnmount() {
|
|
var popupContainer = this.props.leaflet.popupContainer;
|
|
if (popupContainer == null) return;
|
|
popupContainer.off({
|
|
tooltipopen: this.onTooltipOpen,
|
|
tooltipclose: this.onTooltipClose
|
|
});
|
|
|
|
if (popupContainer._map != null) {
|
|
popupContainer.unbindTooltip(this.leafletElement);
|
|
}
|
|
};
|
|
|
|
return Tooltip;
|
|
}(_DivOverlay2.default);
|
|
|
|
(0, _defineProperty2.default)(Tooltip, "defaultProps", {
|
|
pane: 'tooltipPane'
|
|
});
|
|
|
|
var _default = (0, _context.withLeaflet)(Tooltip);
|
|
|
|
exports.default = _default; |