46 lines
1.7 KiB
JavaScript
46 lines
1.7 KiB
JavaScript
"use strict";
|
|
|
|
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
|
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
|
|
exports.__esModule = true;
|
|
exports.withLeaflet = exports.LeafletProvider = exports.LeafletConsumer = exports.useLeaflet = void 0;
|
|
|
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
|
|
var _hoistNonReactStatics = _interopRequireDefault(require("hoist-non-react-statics"));
|
|
|
|
var _react = _interopRequireWildcard(require("react"));
|
|
|
|
var leafletContext = /*#__PURE__*/(0, _react.createContext)({});
|
|
|
|
var useLeaflet = function useLeaflet() {
|
|
return (0, _react.useContext)(leafletContext);
|
|
};
|
|
|
|
exports.useLeaflet = useLeaflet;
|
|
var LeafletConsumer = leafletContext.Consumer;
|
|
exports.LeafletConsumer = LeafletConsumer;
|
|
var LeafletProvider = leafletContext.Provider;
|
|
exports.LeafletProvider = LeafletProvider;
|
|
|
|
var withLeaflet = function withLeaflet(WrappedComponent) {
|
|
var WithLeafletComponent = function WithLeafletComponent(props, ref) {
|
|
return /*#__PURE__*/_react.default.createElement(LeafletConsumer, null, function (leaflet) {
|
|
return /*#__PURE__*/_react.default.createElement(WrappedComponent, (0, _extends2.default)({}, props, {
|
|
leaflet: leaflet,
|
|
ref: ref
|
|
}));
|
|
});
|
|
};
|
|
|
|
var name = // flowlint-next-line sketchy-null-string:off
|
|
WrappedComponent.displayName || WrappedComponent.name || 'Component';
|
|
WithLeafletComponent.displayName = "Leaflet(" + name + ")";
|
|
var LeafletComponent = /*#__PURE__*/(0, _react.forwardRef)(WithLeafletComponent);
|
|
(0, _hoistNonReactStatics.default)(LeafletComponent, WrappedComponent);
|
|
return LeafletComponent;
|
|
};
|
|
|
|
exports.withLeaflet = withLeaflet; |