Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

react-map-gl-geocoder

Package Overview
Dependencies
Maintainers
1
Versions
49
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-map-gl-geocoder - npm Package Compare versions

Comparing version 1.5.7 to 1.5.8

144

dist/index.js

@@ -7,6 +7,6 @@ 'use strict';

var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

@@ -62,4 +62,4 @@

var Geocoder = function (_Component) {
_inherits(Geocoder, _Component);
var Geocoder = function (_PureComponent) {
_inherits(Geocoder, _PureComponent);

@@ -77,3 +77,59 @@ function Geocoder() {

return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Geocoder.__proto__ || Object.getPrototypeOf(Geocoder)).call.apply(_ref, [this].concat(args))), _this), _this.handleClear = function () {
return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Geocoder.__proto__ || Object.getPrototypeOf(Geocoder)).call.apply(_ref, [this].concat(args))), _this), _this.initializeGeocoder = function () {
var mapboxMap = _this.getMapboxMap();
var _this$props = _this.props,
mapboxApiAccessToken = _this$props.mapboxApiAccessToken,
zoom = _this$props.zoom,
flyTo = _this$props.flyTo,
placeholder = _this$props.placeholder,
proximity = _this$props.proximity,
trackProximity = _this$props.trackProximity,
bbox = _this$props.bbox,
types = _this$props.types,
country = _this$props.country,
minLength = _this$props.minLength,
limit = _this$props.limit,
language = _this$props.language,
filter = _this$props.filter,
localGeocoder = _this$props.localGeocoder,
options = _this$props.options,
onInit = _this$props.onInit,
position = _this$props.position;
_this.geocoder = new _mapboxGlGeocoder2.default(_extends({
accessToken: mapboxApiAccessToken,
zoom: zoom,
flyTo: flyTo,
placeholder: placeholder,
proximity: proximity,
trackProximity: trackProximity,
bbox: bbox,
types: types,
country: country,
minLength: minLength,
limit: limit,
language: language,
filter: filter,
localGeocoder: localGeocoder
}, options));
_this.geocoder.on('clear', _this.handleClear);
_this.geocoder.on('loading', _this.handleLoading);
_this.geocoder.on('results', _this.handleResults);
_this.geocoder.on('result', _this.handleResult);
_this.geocoder.on('error', _this.handleError);
if (mapboxMap) {
mapboxMap.addControl(_this.geocoder, VALID_POSITIONS.find(function (_position) {
return position === _position;
}));
}
onInit(_this.geocoder);
}, _this.getMapboxMap = function () {
var mapRef = _this.props.mapRef;
return mapRef && mapRef.current && mapRef.current.getMap() || null;
}, _this.handleClear = function () {
_this.props.onClear();

@@ -86,6 +142,6 @@ }, _this.handleLoading = function (event) {

var result = event.result;
var _this$props = _this.props,
mapRef = _this$props.mapRef,
onViewportChange = _this$props.onViewportChange,
onResult = _this$props.onResult;
var _this$props2 = _this.props,
mapRef = _this$props2.mapRef,
onViewportChange = _this$props2.onViewportChange,
onResult = _this$props2.onResult;
var id = result.id,

@@ -148,4 +204,3 @@ bbox = result.bbox,

value: function componentDidMount() {
// mapRef is undefined on initial page load, so force an update to initialize geocoder
this.forceUpdate();
this.initializeGeocoder();
}

@@ -155,7 +210,6 @@ }, {

value: function componentWillUnmount() {
var mapRef = this.props.mapRef;
var mapboxMap = this.getMapboxMap();
if (mapRef && mapRef.current && mapRef.current.getMap()) {
mapRef.current.getMap().removeControl(this.geocoder);
if (mapboxMap) {
mapboxMap.removeControl(this.geocoder);
}

@@ -170,56 +224,8 @@

value: function componentDidUpdate() {
if (this.geocoder !== undefined) {
return;
}
var mapboxMap = this.getMapboxMap();
var _props = this.props,
mapRef = _props.mapRef,
mapboxApiAccessToken = _props.mapboxApiAccessToken,
zoom = _props.zoom,
flyTo = _props.flyTo,
placeholder = _props.placeholder,
proximity = _props.proximity,
trackProximity = _props.trackProximity,
bbox = _props.bbox,
types = _props.types,
country = _props.country,
minLength = _props.minLength,
limit = _props.limit,
language = _props.language,
filter = _props.filter,
localGeocoder = _props.localGeocoder,
options = _props.options,
onInit = _props.onInit,
position = _props.position;
this.geocoder = new _mapboxGlGeocoder2.default(_extends({
accessToken: mapboxApiAccessToken,
zoom: zoom,
flyTo: flyTo,
placeholder: placeholder,
proximity: proximity,
trackProximity: trackProximity,
bbox: bbox,
types: types,
country: country,
minLength: minLength,
limit: limit,
language: language,
filter: filter,
localGeocoder: localGeocoder
}, options));
this.geocoder.on('clear', this.handleClear);
this.geocoder.on('loading', this.handleLoading);
this.geocoder.on('results', this.handleResults);
this.geocoder.on('result', this.handleResult);
this.geocoder.on('error', this.handleError);
if (mapRef && mapRef.current && mapRef.current.getMap()) {
mapRef.current.getMap().addControl(this.geocoder, VALID_POSITIONS.find(function (_position) {
return position === _position;
}));
if (this.geocoder) {
mapboxMap.removeControl(this.geocoder);
this.initializeGeocoder();
}
onInit(this.geocoder);
}

@@ -239,3 +245,3 @@ }, {

return Geocoder;
}(_react.Component);
}(_react.PureComponent);

@@ -285,2 +291,2 @@ Geocoder.propTypes = {

exports.default = Geocoder;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJWQUxJRF9QT1NJVElPTlMiLCJmaXRCb3VuZHMiLCJib3VuZHMiLCJ2aWV3cG9ydCIsIldlYk1lcmNhdG9yVmlld3BvcnQiLCJnZXRBY2Nlc3NUb2tlbiIsImFjY2Vzc1Rva2VuIiwid2luZG93IiwibG9jYXRpb24iLCJtYXRjaCIsInNlYXJjaCIsInByb2Nlc3MiLCJlbnYiLCJNYXBib3hBY2Nlc3NUb2tlbiIsIkdlb2NvZGVyIiwiaGFuZGxlQ2xlYXIiLCJwcm9wcyIsIm9uQ2xlYXIiLCJoYW5kbGVMb2FkaW5nIiwiZXZlbnQiLCJvbkxvYWRpbmciLCJoYW5kbGVSZXN1bHRzIiwib25SZXN1bHRzIiwiaGFuZGxlUmVzdWx0IiwicmVzdWx0IiwibWFwUmVmIiwib25WaWV3cG9ydENoYW5nZSIsIm9uUmVzdWx0IiwiaWQiLCJiYm94IiwiY2VudGVyIiwibG9uZ2l0dWRlIiwibGF0aXR1ZGUiLCJiYm94RXhjZXB0aW9ucyIsIm5hbWUiLCJ3aWR0aCIsImN1cnJlbnQiLCJoZWlnaHQiLCJ6b29tIiwiZ2VvY29kZXIiLCJvcHRpb25zIiwiZmx5VG8iLCJ0cmFuc2l0aW9uSW50ZXJwb2xhdG9yIiwiRmx5VG9JbnRlcnBvbGF0b3IiLCJ0cmFuc2l0aW9uRHVyYXRpb24iLCJoYW5kbGVFcnJvciIsIm9uRXJyb3IiLCJmb3JjZVVwZGF0ZSIsImdldE1hcCIsInJlbW92ZUNvbnRyb2wiLCJ1bmRlZmluZWQiLCJtYXBib3hBcGlBY2Nlc3NUb2tlbiIsInBsYWNlaG9sZGVyIiwicHJveGltaXR5IiwidHJhY2tQcm94aW1pdHkiLCJ0eXBlcyIsImNvdW50cnkiLCJtaW5MZW5ndGgiLCJsaW1pdCIsImxhbmd1YWdlIiwiZmlsdGVyIiwibG9jYWxHZW9jb2RlciIsIm9uSW5pdCIsInBvc2l0aW9uIiwiTWFwYm94R2VvY29kZXIiLCJvbiIsImFkZENvbnRyb2wiLCJmaW5kIiwiX3Bvc2l0aW9uIiwiQ29tcG9uZW50IiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwib2JqZWN0IiwiaXNSZXF1aXJlZCIsImZ1bmMiLCJzdHJpbmciLCJudW1iZXIiLCJib29sIiwiYXJyYXkiLCJvbmVPZiIsImRlZmF1bHRQcm9wcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOztBQUNBOzs7Ozs7Ozs7Ozs7QUFFQSxJQUFNQSxrQkFBa0IsQ0FBQyxVQUFELEVBQWEsV0FBYixFQUEwQixhQUExQixFQUF5QyxjQUF6QyxDQUF4Qjs7QUFFQSxTQUFTQyxTQUFULENBQW1CQyxNQUFuQixFQUEyQkMsUUFBM0IsRUFBcUM7QUFDbkMsU0FBTyxJQUFJQyxpQ0FBSixDQUF3QkQsUUFBeEIsRUFBa0NGLFNBQWxDLENBQTRDQyxNQUE1QyxDQUFQO0FBQ0Q7O0FBRUQsU0FBU0csY0FBVCxHQUEwQjtBQUN4QixNQUFJQyxjQUFjLElBQWxCOztBQUVBLE1BQUksT0FBT0MsTUFBUCxLQUFrQixXQUFsQixJQUFpQ0EsT0FBT0MsUUFBNUMsRUFBc0Q7QUFDcEQsUUFBTUMsUUFBUUYsT0FBT0MsUUFBUCxDQUFnQkUsTUFBaEIsQ0FBdUJELEtBQXZCLENBQTZCLHVCQUE3QixDQUFkO0FBQ0FILGtCQUFjRyxTQUFTQSxNQUFNLENBQU4sQ0FBdkI7QUFDRDs7QUFFRCxNQUFJLENBQUNILFdBQUQsSUFBZ0IsT0FBT0ssT0FBUCxLQUFtQixXQUF2QyxFQUFvRDtBQUNsRDtBQUNBTCxrQkFBY0EsZUFBZUssUUFBUUMsR0FBUixDQUFZQyxpQkFBekMsQ0FGa0QsQ0FFUztBQUM1RDs7QUFFRCxTQUFPUCxlQUFlLElBQXRCO0FBQ0Q7O0lBRUtRLFE7Ozs7Ozs7Ozs7Ozs7OzBMQTBFSkMsVyxHQUFjLFlBQU07QUFDbEIsWUFBS0MsS0FBTCxDQUFXQyxPQUFYO0FBQ0QsSyxRQUVEQyxhLEdBQWdCLFVBQUNDLEtBQUQsRUFBVztBQUN6QixZQUFLSCxLQUFMLENBQVdJLFNBQVgsQ0FBcUJELEtBQXJCO0FBQ0QsSyxRQUVERSxh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QUFnQixLQUxJO0FBTXBCRyxhQUFXLENBTlM7QUFPcEJDLFNBQU8sQ0FQYTtBQVFwQkssWUFBVSxXQVJVO0FBU3BCRCxVQUFRLGtCQUFNLENBQUUsQ0FUSTtBQVVwQjdDLFdBQVMsbUJBQU0sQ0FBRSxDQVZHO0FBV3BCRyxhQUFXLHFCQUFNLENBQUUsQ0FYQztBQVlwQkUsYUFBVyxxQkFBTSxDQUFFLENBWkM7QUFhcEJLLFlBQVUsb0JBQU0sQ0FBRSxDQWJFO0FBY3BCbUIsV0FBUyxtQkFBTSxDQUFFO0FBZEcsQztrQkFrQlRoQyxRIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICdAbWFwYm94L21hcGJveC1nbC1nZW9jb2Rlci9kaXN0L21hcGJveC1nbC1nZW9jb2Rlci5jc3MnXG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdyZWFjdCdcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcydcbmltcG9ydCBNYXBib3hHZW9jb2RlciBmcm9tICdAbWFwYm94L21hcGJveC1nbC1nZW9jb2RlcidcbmltcG9ydCB7IEZseVRvSW50ZXJwb2xhdG9yIH0gZnJvbSAncmVhY3QtbWFwLWdsJ1xuaW1wb3J0IFdlYk1lcmNhdG9yVmlld3BvcnQgZnJvbSAndmlld3BvcnQtbWVyY2F0b3ItcHJvamVjdCdcblxuY29uc3QgVkFMSURfUE9TSVRJT05TID0gWyd0b3AtbGVmdCcsICd0b3AtcmlnaHQnLCAnYm90dG9tLWxlZnQnLCAnYm90dG9tLXJpZ2h0J11cblxuZnVuY3Rpb24gZml0Qm91bmRzKGJvdW5kcywgdmlld3BvcnQpIHtcbiAgcmV0dXJuIG5ldyBXZWJNZXJjYXRvclZpZXdwb3J0KHZpZXdwb3J0KS5maXRCb3VuZHMoYm91bmRzKVxufVxuXG5mdW5jdGlvbiBnZXRBY2Nlc3NUb2tlbigpIHtcbiAgbGV0IGFjY2Vzc1Rva2VuID0gbnVsbFxuXG4gIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubG9jYXRpb24pIHtcbiAgICBjb25zdCBtYXRjaCA9IHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gubWF0Y2goL2FjY2Vzc190b2tlbj0oW14mL10qKS8pXG4gICAgYWNjZXNzVG9rZW4gPSBtYXRjaCAmJiBtYXRjaFsxXVxuICB9XG5cbiAgaWYgKCFhY2Nlc3NUb2tlbiAmJiB0eXBlb2YgcHJvY2VzcyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAvLyBOb3RlOiBUaGlzIGRlcGVuZHMgb24gYnVuZGxlciBwbHVnaW5zIChlLmcuIHdlYnBhY2spIGlubXBvcnRpbmcgZW52aXJvbm1lbnQgY29ycmVjdGx5XG4gICAgYWNjZXNzVG9rZW4gPSBhY2Nlc3NUb2tlbiB8fCBwcm9jZXNzLmVudi5NYXBib3hBY2Nlc3NUb2tlbiAvLyBlc2xpbnQtZGlzYWJsZS1saW5lXG4gIH1cblxuICByZXR1cm4gYWNjZXNzVG9rZW4gfHwgbnVsbFxufVxuXG5jbGFzcyBHZW9jb2RlciBleHRlbmRzIENvbXBvbmVudCB7XG4gIGNvbXBvbmVudERpZE1vdW50KCkge1xuICAgIC8vIG1hcFJlZiBpcyB1bmRlZmluZWQgb24gaW5pdGlhbCBwYWdlIGxvYWQsIHNvIGZvcmNlIGFuIHVwZGF0ZSB0byBpbml0aWFsaXplIGdlb2NvZGVyXG4gICAgdGhpcy5mb3JjZVVwZGF0ZSgpXG4gIH1cblxuICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICBjb25zdCB7IG1hcFJlZiB9ID0gdGhpcy5wcm9wc1xuXG4gICAgaWYgKG1hcFJlZiAmJiBtYXBSZWYuY3VycmVudCAmJiBtYXBSZWYuY3VycmVudC5nZXRNYXAoKSkge1xuICAgICAgbWFwUmVmLmN1cnJlbnQuZ2V0TWFwKCkucmVtb3ZlQ29udHJvbCh0aGlzLmdlb2NvZGVyKVxuICAgIH1cblxuICAgIGlmICh0aGlzLmdlb2NvZGVyKSB7XG4gICAgICB0aGlzLmdlb2NvZGVyID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICBpZiAodGhpcy5nZW9jb2RlciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCB7XG4gICAgICBtYXBSZWYsXG4gICAgICBtYXBib3hBcGlBY2Nlc3NUb2tlbixcbiAgICAgIHpvb20sXG4gICAgICBmbHlUbyxcbiAgICAgIHBsYWNlaG9sZGVyLFxuICAgICAgcHJveGltaXR5LFxuICAgICAgdHJhY2tQcm94aW1pdHksXG4gICAgICBiYm94LFxuICAgICAgdHlwZXMsXG4gICAgICBjb3VudHJ5LFxuICAgICAgbWluTGVuZ3RoLFxuICAgICAgbGltaXQsXG4gICAgICBsYW5ndWFnZSxcbiAgICAgIGZpbHRlcixcbiAgICAgIGxvY2FsR2VvY29kZXIsXG4gICAgICBvcHRpb25zLFxuICAgICAgb25Jbml0LFxuICAgICAgcG9zaXRpb25cbiAgICB9ID0gdGhpcy5wcm9wc1xuXG4gICAgdGhpcy5nZW9jb2RlciA9IG5ldyBNYXBib3hHZW9jb2Rlcih7XG4gICAgICBhY2Nlc3NUb2tlbjogbWFwYm94QXBpQWNjZXNzVG9rZW4sXG4gICAgICB6b29tLFxuICAgICAgZmx5VG8sXG4gICAgICBwbGFjZWhvbGRlcixcbiAgICAgIHByb3hpbWl0eSxcbiAgICAgIHRyYWNrUHJveGltaXR5LFxuICAgICAgYmJveCxcbiAgICAgIHR5cGVzLFxuICAgICAgY291bnRyeSxcbiAgICAgIG1pbkxlbmd0aCxcbiAgICAgIGxpbWl0LFxuICAgICAgbGFuZ3VhZ2UsXG4gICAgICBmaWx0ZXIsXG4gICAgICBsb2NhbEdlb2NvZGVyLFxuICAgICAgLi4ub3B0aW9uc1xuICAgIH0pXG4gICAgdGhpcy5nZW9jb2Rlci5vbignY2xlYXInLCB0aGlzLmhhbmRsZUNsZWFyKVxuICAgIHRoaXMuZ2VvY29kZXIub24oJ2xvYWRpbmcnLCB0aGlzLmhhbmRsZUxvYWRpbmcpXG4gICAgdGhpcy5nZW9jb2Rlci5vbigncmVzdWx0cycsIHRoaXMuaGFuZGxlUmVzdWx0cylcbiAgICB0aGlzLmdlb2NvZGVyLm9uKCdyZXN1bHQnLCB0aGlzLmhhbmRsZVJlc3VsdClcbiAgICB0aGlzLmdlb2NvZGVyLm9uKCdlcnJvcicsIHRoaXMuaGFuZGxlRXJyb3IpXG5cbiAgICBpZiAobWFwUmVmICYmIG1hcFJlZi5jdXJyZW50ICYmIG1hcFJlZi5jdXJyZW50LmdldE1hcCgpKSB7XG4gICAgICBtYXBSZWYuY3VycmVudC5nZXRNYXAoKS5hZGRDb250cm9sKHRoaXMuZ2VvY29kZXIsIFZBTElEX1BPU0lUSU9OUy5maW5kKChfcG9zaXRpb24pID0+IHBvc2l0aW9uID09PSBfcG9zaXRpb24pKVxuICAgIH1cblxuICAgIG9uSW5pdCh0aGlzLmdlb2NvZGVyKVxuICB9XG5cbiAgaGFuZGxlQ2xlYXIgPSAoKSA9PiB7XG4gICAgdGhpcy5wcm9wcy5vbkNsZWFyKClcbiAgfVxuXG4gIGhhbmRsZUxvYWRpbmcgPSAoZXZlbnQpID0+IHtcbiAgICB0aGlzLnByb3BzLm9uTG9hZGluZyhldmVudClcbiAgfVxuXG4gIGhhbmRsZVJlc3VsdHMgPSAoZXZlbnQpID0+IHtcbiAgICB0aGlzLnByb3BzLm9uUmVzdWx0cyhldmVudClcbiAgfVxuXG4gIGhhbmRsZVJlc3VsdCA9IChldmVudCkgPT4ge1xuICAgIGNvbnN0IHsgcmVzdWx0IH0gPSBldmVudFxuICAgIGNvbnN0IHsgbWFwUmVmLCBvblZpZXdwb3J0Q2hhbmdlLCBvblJlc3VsdCB9ID0gdGhpcy5wcm9wc1xuICAgIGNvbnN0IHsgaWQsIGJib3gsIGNlbnRlciB9ID0gcmVzdWx0XG4gICAgY29uc3QgW2xvbmdpdHVkZSwgbGF0aXR1ZGVdID0gY2VudGVyXG4gICAgY29uc3QgYmJveEV4Y2VwdGlvbnMgPSB7XG4gICAgICAnY291bnRyeS4zMTQ4Jzoge1xuICAgICAgICBuYW1lOiAnRnJhbmNlJyxcbiAgICAgICAgYmJveDogW1stNC41OTIzNSwgNDEuMzgwMDA3XSwgWzkuNTYwMDE2LCA1MS4xNDg1MDZdXVxuICAgICAgfSxcbiAgICAgICdjb3VudHJ5LjMxNDUnOiB7XG4gICAgICAgIG5hbWU6ICdVbml0ZWQgU3RhdGVzJyxcbiAgICAgICAgYmJveDogW1stMTcxLjc5MTExMSwgMTguOTE2MTldLCBbLTY2Ljk2NDY2LCA3MS4zNTc3NjRdXVxuICAgICAgfSxcbiAgICAgICdjb3VudHJ5LjMzMCc6IHtcbiAgICAgICAgbmFtZTogJ1J1c3NpYScsXG4gICAgICAgIGJib3g6IFtbMTkuNjYwNjQsIDQxLjE1MTQxNl0sIFsxOTAuMTAwNDIsIDgxLjI1MDRdXVxuICAgICAgfSxcbiAgICAgICdjb3VudHJ5LjMxNzknOiB7XG4gICAgICAgIG5hbWU6ICdDYW5hZGEnLFxuICAgICAgICBiYm94OiBbWy0xNDAuOTk3NzgsIDQxLjY3NTEwNV0sIFstNTIuNjQ4MDk5LCA4My4yMzMyNF1dXG4gICAgICB9XG4gICAgfVxuICAgIGNvbnN0IHdpZHRoID0gbWFwUmVmLmN1cnJlbnQucHJvcHMud2lkdGhcbiAgICBjb25zdCBoZWlnaHQgPSBtYXBSZWYuY3VycmVudC5wcm9wcy5oZWlnaHRcbiAgICBsZXQgem9vbSA9IHRoaXMuZ2VvY29kZXIub3B0aW9ucy56b29tXG5cbiAgICBpZiAoIWJib3hFeGNlcHRpb25zW2lkXSAmJiBiYm94KSB7XG4gICAgICB6b29tID0gZml0Qm91bmRzKFtbYmJveFswXSwgYmJveFsxXV0sIFtiYm94WzJdLCBiYm94WzNdXV0sIHsgd2lkdGgsIGhlaWdodCB9KS56b29tXG4gICAgfSBlbHNlIGlmIChiYm94RXhjZXB0aW9uc1tpZF0pIHtcbiAgICAgIHpvb20gPSBmaXRCb3VuZHMoYmJveEV4Y2VwdGlvbnNbaWRdLmJib3gsIHsgd2lkdGgsIGhlaWdodCB9KS56b29tXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZ2VvY29kZXIub3B0aW9ucy5mbHlUbykge1xuICAgICAgb25WaWV3cG9ydENoYW5nZSh7XG4gICAgICAgIGxvbmdpdHVkZSxcbiAgICAgICAgbGF0aXR1ZGUsXG4gICAgICAgIHpvb20sXG4gICAgICAgIHRyYW5zaXRpb25JbnRlcnBvbGF0b3I6IG5ldyBGbHlUb0ludGVycG9sYXRvcigpLFxuICAgICAgICB0cmFuc2l0aW9uRHVyYXRpb246IDMwMDBcbiAgICAgIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIG9uVmlld3BvcnRDaGFuZ2UoeyBsb25naXR1ZGUsIGxhdGl0dWRlLCB6b29tIH0pXG4gICAgfVxuXG4gICAgb25SZXN1bHQoZXZlbnQpXG4gIH1cblxuICBoYW5kbGVFcnJvciA9IChldmVudCkgPT4ge1xuICAgIHRoaXMucHJvcHMub25FcnJvcihldmVudClcbiAgfVxuXG4gIGdldEdlb2NvZGVyKCkge1xuICAgIHJldHVybiB0aGlzLmdlb2NvZGVyXG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgbWFwUmVmOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgb25WaWV3cG9ydENoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBtYXBib3hBcGlBY2Nlc3NUb2tlbjogUHJvcFR5cGVzLnN0cmluZyxcbiAgICB6b29tOiBQcm9wVHlwZXMubnVtYmVyLFxuICAgIGZseVRvOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBwbGFjZWhvbGRlcjogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBwcm94aW1pdHk6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgdHJhY2tQcm94aW1pdHk6IFByb3BUeXBlcy5ib29sLFxuICAgIGJib3g6IFByb3BUeXBlcy5hcnJheSxcbiAgICB0eXBlczogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb3VudHJ5OiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIG1pbkxlbmd0aDogUHJvcFR5cGVzLm51bWJlcixcbiAgICBsaW1pdDogUHJvcFR5cGVzLm51bWJlcixcbiAgICBsYW5ndWFnZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBmaWx0ZXI6IFByb3BUeXBlcy5mdW5jLFxuICAgIGxvY2FsR2VvY29kZXI6IFByb3BUeXBlcy5mdW5jLFxuICAgIHBvc2l0aW9uOiBQcm9wVHlwZXMub25lT2YoVkFMSURfUE9TSVRJT05TKSxcbiAgICBvbkluaXQ6IFByb3BUeXBlcy5mdW5jLFxuICAgIG9uQ2xlYXI6IFByb3BUeXBlcy5mdW5jLFxuICAgIG9uTG9hZGluZzogUHJvcFR5cGVzLmZ1bmMsXG4gICAgb25SZXN1bHRzOiBQcm9wVHlwZXMuZnVuYyxcbiAgICBvblJlc3VsdDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgb25FcnJvcjogUHJvcFR5cGVzLmZ1bmMsXG4gICAgb3B0aW9uczogUHJvcFR5cGVzLm9iamVjdCAvLyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdjJcbiAgfVxuXG4gIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgbWFwYm94QXBpQWNjZXNzVG9rZW46IGdldEFjY2Vzc1Rva2VuKCksXG4gICAgem9vbTogMTYsXG4gICAgZmx5VG86IHRydWUsXG4gICAgcGxhY2Vob2xkZXI6ICdTZWFyY2gnLFxuICAgIHRyYWNrUHJveGltaXR5OiBmYWxzZSxcbiAgICBtaW5MZW5ndGg6IDIsXG4gICAgbGltaXQ6IDUsXG4gICAgcG9zaXRpb246ICd0b3AtcmlnaHQnLFxuICAgIG9uSW5pdDogKCkgPT4ge30sXG4gICAgb25DbGVhcjogKCkgPT4ge30sXG4gICAgb25Mb2FkaW5nOiAoKSA9PiB7fSxcbiAgICBvblJlc3VsdHM6ICgpID0+IHt9LFxuICAgIG9uUmVzdWx0OiAoKSA9PiB7fSxcbiAgICBvbkVycm9yOiAoKSA9PiB7fVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IEdlb2NvZGVyXG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJWQUxJRF9QT1NJVElPTlMiLCJmaXRCb3VuZHMiLCJib3VuZHMiLCJ2aWV3cG9ydCIsIldlYk1lcmNhdG9yVmlld3BvcnQiLCJnZXRBY2Nlc3NUb2tlbiIsImFjY2Vzc1Rva2VuIiwid2luZG93IiwibG9jYXRpb24iLCJtYXRjaCIsInNlYXJjaCIsInByb2Nlc3MiLCJlbnYiLCJNYXBib3hBY2Nlc3NUb2tlbiIsIkdlb2NvZGVyIiwiaW5pdGlhbGl6ZUdlb2NvZGVyIiwibWFwYm94TWFwIiwiZ2V0TWFwYm94TWFwIiwicHJvcHMiLCJtYXBib3hBcGlBY2Nlc3NUb2tlbiIsInpvb20iLCJmbHlUbyIsInBsYWNlaG9sZGVyIiwicHJveGltaXR5IiwidHJhY2tQcm94aW1pdHkiLCJiYm94IiwidHlwZXMiLCJjb3VudHJ5IiwibWluTGVuZ3RoIiwibGltaXQiLCJsYW5ndWFnZSIsImZpbHRlciIsImxvY2FsR2VvY29kZXIiLCJvcHRpb25zIiwib25Jbml0IiwicG9zaXRpb24iLCJnZW9jb2RlciIsIk1hcGJveEdlb2NvZGVyIiwib24iLCJoYW5kbGVDbGVhciIsImhhbmRsZUxvYWRpbmciLCJoYW5kbGVSZXN1bHRzIiwiaGFuZGxlUmVzdWx0IiwiaGFuZGxlRXJyb3IiLCJhZGRDb250cm9sIiwiZmluZCIsIl9wb3NpdGlvbiIsIm1hcFJlZiIsImN1cnJlbnQiLCJnZXRNYXAiLCJvbkNsZWFyIiwiZXZlbnQiLCJvbkxvYWRpbmciLCJvblJlc3VsdHMiLCJyZXN1bHQiLCJvblZpZXdwb3J0Q2hhbmdlIiwib25SZXN1bHQiLCJpZCIsImNlbnRlciIsImxvbmdpdHVkZSIsImxhdGl0dWRlIiwiYmJveEV4Y2VwdGlvbnMiLCJuYW1lIiwid2lkdGgiLCJoZWlnaHQiLCJ0cmFuc2l0aW9uSW50ZXJwb2xhdG9yIiwiRmx5VG9JbnRlcnBvbGF0b3IiLCJ0cmFuc2l0aW9uRHVyYXRpb24iLCJvbkVycm9yIiwicmVtb3ZlQ29udHJvbCIsIlB1cmVDb21wb25lbnQiLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJvYmplY3QiLCJpc1JlcXVpcmVkIiwiZnVuYyIsInN0cmluZyIsIm51bWJlciIsImJvb2wiLCJhcnJheSIsIm9uZU9mIiwiZGVmYXVsdFByb3BzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7OztBQUVBLElBQU1BLGtCQUFrQixDQUFDLFVBQUQsRUFBYSxXQUFiLEVBQTBCLGFBQTFCLEVBQXlDLGNBQXpDLENBQXhCOztBQUVBLFNBQVNDLFNBQVQsQ0FBbUJDLE1BQW5CLEVBQTJCQyxRQUEzQixFQUFxQztBQUNuQyxTQUFPLElBQUlDLGlDQUFKLENBQXdCRCxRQUF4QixFQUFrQ0YsU0FBbEMsQ0FBNENDLE1BQTVDLENBQVA7QUFDRDs7QUFFRCxTQUFTRyxjQUFULEdBQTBCO0FBQ3hCLE1BQUlDLGNBQWMsSUFBbEI7O0FBRUEsTUFBSSxPQUFPQyxNQUFQLEtBQWtCLFdBQWxCLElBQWlDQSxPQUFPQyxRQUE1QyxFQUFzRDtBQUNwRCxRQUFNQyxRQUFRRixPQUFPQyxRQUFQLENBQWdCRSxNQUFoQixDQUF1QkQsS0FBdkIsQ0FBNkIsdUJBQTdCLENBQWQ7QUFDQUgsa0JBQWNHLFNBQVNBLE1BQU0sQ0FBTixDQUF2QjtBQUNEOztBQUVELE1BQUksQ0FBQ0gsV0FBRCxJQUFnQixPQUFPSyxPQUFQLEtBQW1CLFdBQXZDLEVBQW9EO0FBQ2xEO0FBQ0FMLGtCQUFjQSxlQUFlSyxRQUFRQyxHQUFSLENBQVlDLGlCQUF6QyxDQUZrRCxDQUVTO0FBQzVEOztBQUVELFNBQU9QLGVBQWUsSUFBdEI7QUFDRDs7SUFFS1EsUTs7Ozs7Ozs7Ozs7Ozs7MExBMEJKQyxrQixHQUFxQixZQUFNO0FBQ3pCLFVBQU1DLFlBQVksTUFBS0MsWUFBTCxFQUFsQjtBQUR5Qix3QkFvQnJCLE1BQUtDLEtBcEJnQjtBQUFBLFVBR3ZCQyxvQkFIdUIsZUFHdkJBLG9CQUh1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eEJGLENBd0JTO0FBeEJULEM7QUE1SmYzRCxRLENBdUxHbUUsWSxHQUFlO0FBQ3BCOUQsd0JBQXNCZCxnQkFERjtBQUVwQmUsUUFBTSxFQUZjO0FBR3BCQyxTQUFPLElBSGE7QUFJcEJDLGVBQWEsUUFKTztBQUtwQkUsa0JBQWdCLEtBTEk7QUFNcEJJLGFBQVcsQ0FOUztBQU9wQkMsU0FBTyxDQVBhO0FBUXBCTSxZQUFVLFdBUlU7QUFTcEJELFVBQVEsa0JBQU0sQ0FBRSxDQVRJO0FBVXBCZ0IsV0FBUyxtQkFBTSxDQUFFLENBVkc7QUFXcEJFLGFBQVcscUJBQU0sQ0FBRSxDQVhDO0FBWXBCQyxhQUFXLHFCQUFNLENBQUUsQ0FaQztBQWFwQkcsWUFBVSxvQkFBTSxDQUFFLENBYkU7QUFjcEJZLFdBQVMsbUJBQU0sQ0FBRTtBQWRHLEM7a0JBa0JUdEQsUSIsImZpbGUiOiJpbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnQG1hcGJveC9tYXBib3gtZ2wtZ2VvY29kZXIvZGlzdC9tYXBib3gtZ2wtZ2VvY29kZXIuY3NzJ1xuaW1wb3J0IHsgUHVyZUNvbXBvbmVudCB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJ1xuaW1wb3J0IE1hcGJveEdlb2NvZGVyIGZyb20gJ0BtYXBib3gvbWFwYm94LWdsLWdlb2NvZGVyJ1xuaW1wb3J0IHsgRmx5VG9JbnRlcnBvbGF0b3IgfSBmcm9tICdyZWFjdC1tYXAtZ2wnXG5pbXBvcnQgV2ViTWVyY2F0b3JWaWV3cG9ydCBmcm9tICd2aWV3cG9ydC1tZXJjYXRvci1wcm9qZWN0J1xuXG5jb25zdCBWQUxJRF9QT1NJVElPTlMgPSBbJ3RvcC1sZWZ0JywgJ3RvcC1yaWdodCcsICdib3R0b20tbGVmdCcsICdib3R0b20tcmlnaHQnXVxuXG5mdW5jdGlvbiBmaXRCb3VuZHMoYm91bmRzLCB2aWV3cG9ydCkge1xuICByZXR1cm4gbmV3IFdlYk1lcmNhdG9yVmlld3BvcnQodmlld3BvcnQpLmZpdEJvdW5kcyhib3VuZHMpXG59XG5cbmZ1bmN0aW9uIGdldEFjY2Vzc1Rva2VuKCkge1xuICBsZXQgYWNjZXNzVG9rZW4gPSBudWxsXG5cbiAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5sb2NhdGlvbikge1xuICAgIGNvbnN0IG1hdGNoID0gd2luZG93LmxvY2F0aW9uLnNlYXJjaC5tYXRjaCgvYWNjZXNzX3Rva2VuPShbXiYvXSopLylcbiAgICBhY2Nlc3NUb2tlbiA9IG1hdGNoICYmIG1hdGNoWzFdXG4gIH1cblxuICBpZiAoIWFjY2Vzc1Rva2VuICYmIHR5cGVvZiBwcm9jZXNzICE9PSAndW5kZWZpbmVkJykge1xuICAgIC8vIE5vdGU6IFRoaXMgZGVwZW5kcyBvbiBidW5kbGVyIHBsdWdpbnMgKGUuZy4gd2VicGFjaykgaW5tcG9ydGluZyBlbnZpcm9ubWVudCBjb3JyZWN0bHlcbiAgICBhY2Nlc3NUb2tlbiA9IGFjY2Vzc1Rva2VuIHx8IHByb2Nlc3MuZW52Lk1hcGJveEFjY2Vzc1Rva2VuIC8vIGVzbGludC1kaXNhYmxlLWxpbmVcbiAgfVxuXG4gIHJldHVybiBhY2Nlc3NUb2tlbiB8fCBudWxsXG59XG5cbmNsYXNzIEdlb2NvZGVyIGV4dGVuZHMgUHVyZUNvbXBvbmVudCB7XG4gIGNvbXBvbmVudERpZE1vdW50KCkge1xuICAgIHRoaXMuaW5pdGlhbGl6ZUdlb2NvZGVyKClcbiAgfVxuXG4gIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xuICAgIGNvbnN0IG1hcGJveE1hcCA9IHRoaXMuZ2V0TWFwYm94TWFwKClcblxuICAgIGlmIChtYXBib3hNYXApIHtcbiAgICAgIG1hcGJveE1hcC5yZW1vdmVDb250cm9sKHRoaXMuZ2VvY29kZXIpXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZ2VvY29kZXIpIHtcbiAgICAgIHRoaXMuZ2VvY29kZXIgPSBudWxsXG4gICAgfVxuICB9XG5cbiAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgIGNvbnN0IG1hcGJveE1hcCA9IHRoaXMuZ2V0TWFwYm94TWFwKClcblxuICAgIGlmICh0aGlzLmdlb2NvZGVyKSB7XG4gICAgICBtYXBib3hNYXAucmVtb3ZlQ29udHJvbCh0aGlzLmdlb2NvZGVyKVxuICAgICAgdGhpcy5pbml0aWFsaXplR2VvY29kZXIoKVxuICAgIH1cbiAgfVxuXG4gIGluaXRpYWxpemVHZW9jb2RlciA9ICgpID0+IHtcbiAgICBjb25zdCBtYXBib3hNYXAgPSB0aGlzLmdldE1hcGJveE1hcCgpXG4gICAgY29uc3Qge1xuICAgICAgbWFwYm94QXBpQWNjZXNzVG9rZW4sXG4gICAgICB6b29tLFxuICAgICAgZmx5VG8sXG4gICAgICBwbGFjZWhvbGRlcixcbiAgICAgIHByb3hpbWl0eSxcbiAgICAgIHRyYWNrUHJveGltaXR5LFxuICAgICAgYmJveCxcbiAgICAgIHR5cGVzLFxuICAgICAgY291bnRyeSxcbiAgICAgIG1pbkxlbmd0aCxcbiAgICAgIGxpbWl0LFxuICAgICAgbGFuZ3VhZ2UsXG4gICAgICBmaWx0ZXIsXG4gICAgICBsb2NhbEdlb2NvZGVyLFxuICAgICAgb3B0aW9ucyxcbiAgICAgIG9uSW5pdCxcbiAgICAgIHBvc2l0aW9uXG4gICAgfSA9IHRoaXMucHJvcHNcblxuICAgIHRoaXMuZ2VvY29kZXIgPSBuZXcgTWFwYm94R2VvY29kZXIoe1xuICAgICAgYWNjZXNzVG9rZW46IG1hcGJveEFwaUFjY2Vzc1Rva2VuLFxuICAgICAgem9vbSxcbiAgICAgIGZseVRvLFxuICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICBwcm94aW1pdHksXG4gICAgICB0cmFja1Byb3hpbWl0eSxcbiAgICAgIGJib3gsXG4gICAgICB0eXBlcyxcbiAgICAgIGNvdW50cnksXG4gICAgICBtaW5MZW5ndGgsXG4gICAgICBsaW1pdCxcbiAgICAgIGxhbmd1YWdlLFxuICAgICAgZmlsdGVyLFxuICAgICAgbG9jYWxHZW9jb2RlcixcbiAgICAgIC4uLm9wdGlvbnNcbiAgICB9KVxuICAgIHRoaXMuZ2VvY29kZXIub24oJ2NsZWFyJywgdGhpcy5oYW5kbGVDbGVhcilcbiAgICB0aGlzLmdlb2NvZGVyLm9uKCdsb2FkaW5nJywgdGhpcy5oYW5kbGVMb2FkaW5nKVxuICAgIHRoaXMuZ2VvY29kZXIub24oJ3Jlc3VsdHMnLCB0aGlzLmhhbmRsZVJlc3VsdHMpXG4gICAgdGhpcy5nZW9jb2Rlci5vbigncmVzdWx0JywgdGhpcy5oYW5kbGVSZXN1bHQpXG4gICAgdGhpcy5nZW9jb2Rlci5vbignZXJyb3InLCB0aGlzLmhhbmRsZUVycm9yKVxuXG4gICAgaWYgKG1hcGJveE1hcCkge1xuICAgICAgbWFwYm94TWFwLmFkZENvbnRyb2wodGhpcy5nZW9jb2RlciwgVkFMSURfUE9TSVRJT05TLmZpbmQoKF9wb3NpdGlvbikgPT4gcG9zaXRpb24gPT09IF9wb3NpdGlvbikpXG4gICAgfVxuXG4gICAgb25Jbml0KHRoaXMuZ2VvY29kZXIpXG4gIH1cblxuICBnZXRNYXBib3hNYXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBtYXBSZWYgfSA9IHRoaXMucHJvcHNcblxuICAgIHJldHVybiAobWFwUmVmICYmIG1hcFJlZi5jdXJyZW50ICYmIG1hcFJlZi5jdXJyZW50LmdldE1hcCgpKSB8fCBudWxsXG4gIH1cblxuICBoYW5kbGVDbGVhciA9ICgpID0+IHtcbiAgICB0aGlzLnByb3BzLm9uQ2xlYXIoKVxuICB9XG5cbiAgaGFuZGxlTG9hZGluZyA9IChldmVudCkgPT4ge1xuICAgIHRoaXMucHJvcHMub25Mb2FkaW5nKGV2ZW50KVxuICB9XG5cbiAgaGFuZGxlUmVzdWx0cyA9IChldmVudCkgPT4ge1xuICAgIHRoaXMucHJvcHMub25SZXN1bHRzKGV2ZW50KVxuICB9XG5cbiAgaGFuZGxlUmVzdWx0ID0gKGV2ZW50KSA9PiB7XG4gICAgY29uc3QgeyByZXN1bHQgfSA9IGV2ZW50XG4gICAgY29uc3QgeyBtYXBSZWYsIG9uVmlld3BvcnRDaGFuZ2UsIG9uUmVzdWx0IH0gPSB0aGlzLnByb3BzXG4gICAgY29uc3QgeyBpZCwgYmJveCwgY2VudGVyIH0gPSByZXN1bHRcbiAgICBjb25zdCBbbG9uZ2l0dWRlLCBsYXRpdHVkZV0gPSBjZW50ZXJcbiAgICBjb25zdCBiYm94RXhjZXB0aW9ucyA9IHtcbiAgICAgICdjb3VudHJ5LjMxNDgnOiB7XG4gICAgICAgIG5hbWU6ICdGcmFuY2UnLFxuICAgICAgICBiYm94OiBbWy00LjU5MjM1LCA0MS4zODAwMDddLCBbOS41NjAwMTYsIDUxLjE0ODUwNl1dXG4gICAgICB9LFxuICAgICAgJ2NvdW50cnkuMzE0NSc6IHtcbiAgICAgICAgbmFtZTogJ1VuaXRlZCBTdGF0ZXMnLFxuICAgICAgICBiYm94OiBbWy0xNzEuNzkxMTExLCAxOC45MTYxOV0sIFstNjYuOTY0NjYsIDcxLjM1Nzc2NF1dXG4gICAgICB9LFxuICAgICAgJ2NvdW50cnkuMzMwJzoge1xuICAgICAgICBuYW1lOiAnUnVzc2lhJyxcbiAgICAgICAgYmJveDogW1sxOS42NjA2NCwgNDEuMTUxNDE2XSwgWzE5MC4xMDA0MiwgODEuMjUwNF1dXG4gICAgICB9LFxuICAgICAgJ2NvdW50cnkuMzE3OSc6IHtcbiAgICAgICAgbmFtZTogJ0NhbmFkYScsXG4gICAgICAgIGJib3g6IFtbLTE0MC45OTc3OCwgNDEuNjc1MTA1XSwgWy01Mi42NDgwOTksIDgzLjIzMzI0XV1cbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3Qgd2lkdGggPSBtYXBSZWYuY3VycmVudC5wcm9wcy53aWR0aFxuICAgIGNvbnN0IGhlaWdodCA9IG1hcFJlZi5jdXJyZW50LnByb3BzLmhlaWdodFxuICAgIGxldCB6b29tID0gdGhpcy5nZW9jb2Rlci5vcHRpb25zLnpvb21cblxuICAgIGlmICghYmJveEV4Y2VwdGlvbnNbaWRdICYmIGJib3gpIHtcbiAgICAgIHpvb20gPSBmaXRCb3VuZHMoW1tiYm94WzBdLCBiYm94WzFdXSwgW2Jib3hbMl0sIGJib3hbM11dXSwgeyB3aWR0aCwgaGVpZ2h0IH0pLnpvb21cbiAgICB9IGVsc2UgaWYgKGJib3hFeGNlcHRpb25zW2lkXSkge1xuICAgICAgem9vbSA9IGZpdEJvdW5kcyhiYm94RXhjZXB0aW9uc1tpZF0uYmJveCwgeyB3aWR0aCwgaGVpZ2h0IH0pLnpvb21cbiAgICB9XG5cbiAgICBpZiAodGhpcy5nZW9jb2Rlci5vcHRpb25zLmZseVRvKSB7XG4gICAgICBvblZpZXdwb3J0Q2hhbmdlKHtcbiAgICAgICAgbG9uZ2l0dWRlLFxuICAgICAgICBsYXRpdHVkZSxcbiAgICAgICAgem9vbSxcbiAgICAgICAgdHJhbnNpdGlvbkludGVycG9sYXRvcjogbmV3IEZseVRvSW50ZXJwb2xhdG9yKCksXG4gICAgICAgIHRyYW5zaXRpb25EdXJhdGlvbjogMzAwMFxuICAgICAgfSlcbiAgICB9IGVsc2Uge1xuICAgICAgb25WaWV3cG9ydENoYW5nZSh7IGxvbmdpdHVkZSwgbGF0aXR1ZGUsIHpvb20gfSlcbiAgICB9XG5cbiAgICBvblJlc3VsdChldmVudClcbiAgfVxuXG4gIGhhbmRsZUVycm9yID0gKGV2ZW50KSA9PiB7XG4gICAgdGhpcy5wcm9wcy5vbkVycm9yKGV2ZW50KVxuICB9XG5cbiAgZ2V0R2VvY29kZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2VvY29kZXJcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICBtYXBSZWY6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgICBvblZpZXdwb3J0Q2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIG1hcGJveEFwaUFjY2Vzc1Rva2VuOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIHpvb206IFByb3BUeXBlcy5udW1iZXIsXG4gICAgZmx5VG86IFByb3BUeXBlcy5ib29sLFxuICAgIHBsYWNlaG9sZGVyOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIHByb3hpbWl0eTogUHJvcFR5cGVzLm9iamVjdCxcbiAgICB0cmFja1Byb3hpbWl0eTogUHJvcFR5cGVzLmJvb2wsXG4gICAgYmJveDogUHJvcFR5cGVzLmFycmF5LFxuICAgIHR5cGVzOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIGNvdW50cnk6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgbWluTGVuZ3RoOiBQcm9wVHlwZXMubnVtYmVyLFxuICAgIGxpbWl0OiBQcm9wVHlwZXMubnVtYmVyLFxuICAgIGxhbmd1YWdlOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIGZpbHRlcjogUHJvcFR5cGVzLmZ1bmMsXG4gICAgbG9jYWxHZW9jb2RlcjogUHJvcFR5cGVzLmZ1bmMsXG4gICAgcG9zaXRpb246IFByb3BUeXBlcy5vbmVPZihWQUxJRF9QT1NJVElPTlMpLFxuICAgIG9uSW5pdDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgb25DbGVhcjogUHJvcFR5cGVzLmZ1bmMsXG4gICAgb25Mb2FkaW5nOiBQcm9wVHlwZXMuZnVuYyxcbiAgICBvblJlc3VsdHM6IFByb3BUeXBlcy5mdW5jLFxuICAgIG9uUmVzdWx0OiBQcm9wVHlwZXMuZnVuYyxcbiAgICBvbkVycm9yOiBQcm9wVHlwZXMuZnVuYyxcbiAgICBvcHRpb25zOiBQcm9wVHlwZXMub2JqZWN0IC8vIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB2MlxuICB9XG5cbiAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICBtYXBib3hBcGlBY2Nlc3NUb2tlbjogZ2V0QWNjZXNzVG9rZW4oKSxcbiAgICB6b29tOiAxNixcbiAgICBmbHlUbzogdHJ1ZSxcbiAgICBwbGFjZWhvbGRlcjogJ1NlYXJjaCcsXG4gICAgdHJhY2tQcm94aW1pdHk6IGZhbHNlLFxuICAgIG1pbkxlbmd0aDogMixcbiAgICBsaW1pdDogNSxcbiAgICBwb3NpdGlvbjogJ3RvcC1yaWdodCcsXG4gICAgb25Jbml0OiAoKSA9PiB7fSxcbiAgICBvbkNsZWFyOiAoKSA9PiB7fSxcbiAgICBvbkxvYWRpbmc6ICgpID0+IHt9LFxuICAgIG9uUmVzdWx0czogKCkgPT4ge30sXG4gICAgb25SZXN1bHQ6ICgpID0+IHt9LFxuICAgIG9uRXJyb3I6ICgpID0+IHt9XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgR2VvY29kZXJcbiJdfQ==
{
"name": "react-map-gl-geocoder",
"version": "1.5.7",
"version": "1.5.8",
"description": "React wrapper for mapbox-gl-geocoder for use with react-map-gl",

@@ -5,0 +5,0 @@ "main": "dist/index.js",

import '@mapbox/mapbox-gl-geocoder/dist/mapbox-gl-geocoder.css'
import { Component } from 'react'
import { PureComponent } from 'react'
import PropTypes from 'prop-types'

@@ -30,13 +30,12 @@ import MapboxGeocoder from '@mapbox/mapbox-gl-geocoder'

class Geocoder extends Component {
class Geocoder extends PureComponent {
componentDidMount() {
// mapRef is undefined on initial page load, so force an update to initialize geocoder
this.forceUpdate()
this.initializeGeocoder()
}
componentWillUnmount() {
const { mapRef } = this.props
const mapboxMap = this.getMapboxMap()
if (mapRef && mapRef.current && mapRef.current.getMap()) {
mapRef.current.getMap().removeControl(this.geocoder)
if (mapboxMap) {
mapboxMap.removeControl(this.geocoder)
}

@@ -50,8 +49,13 @@

componentDidUpdate() {
if (this.geocoder !== undefined) {
return
const mapboxMap = this.getMapboxMap()
if (this.geocoder) {
mapboxMap.removeControl(this.geocoder)
this.initializeGeocoder()
}
}
initializeGeocoder = () => {
const mapboxMap = this.getMapboxMap()
const {
mapRef,
mapboxApiAccessToken,

@@ -99,4 +103,4 @@ zoom,

if (mapRef && mapRef.current && mapRef.current.getMap()) {
mapRef.current.getMap().addControl(this.geocoder, VALID_POSITIONS.find((_position) => position === _position))
if (mapboxMap) {
mapboxMap.addControl(this.geocoder, VALID_POSITIONS.find((_position) => position === _position))
}

@@ -107,2 +111,8 @@

getMapboxMap = () => {
const { mapRef } = this.props
return (mapRef && mapRef.current && mapRef.current.getMap()) || null
}
handleClear = () => {

@@ -109,0 +119,0 @@ this.props.onClear()

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc