kepler.gl.geoiq
Version:
kepler.gl is a webgl based application to visualize large scale location data in the browser
127 lines (94 loc) • 13.3 kB
JavaScript
;
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
var _getPrototypeOf3 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = _interopRequireWildcard(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _styledComponents = require("../common/styled-components");
var _mapStyleSelector = _interopRequireDefault(require("./map-style-panel/map-style-selector"));
var _mapLayerSelector = _interopRequireDefault(require("./map-style-panel/map-layer-selector"));
var _icons = require("../common/icons");
var _defaultSettings = require("../../constants/default-settings");
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
MapManagerFactory.deps = [_mapStyleSelector["default"], _mapLayerSelector["default"]];
function MapManagerFactory(MapStyleSelector, LayerGroupSelector) {
var _class, _temp;
return _temp = _class =
/*#__PURE__*/
function (_Component) {
(0, _inherits2["default"])(MapManager, _Component);
function MapManager() {
var _getPrototypeOf2;
var _this;
(0, _classCallCheck2["default"])(this, MapManager);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
_this = (0, _possibleConstructorReturn2["default"])(this, (_getPrototypeOf2 = (0, _getPrototypeOf3["default"])(MapManager)).call.apply(_getPrototypeOf2, [this].concat(args)));
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "state", {
isSelecting: false
});
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_updateConfig", function (newProp) {
var newConfig = _objectSpread({}, _this.props.mapStyle, {}, newProp);
_this.props.onConfigChange(newConfig);
});
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_toggleSelecting", function () {
_this.setState({
isSelecting: !_this.state.isSelecting
});
});
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_selectStyle", function (val) {
_this.props.onStyleChange(val);
_this._toggleSelecting();
});
return _this;
}
(0, _createClass2["default"])(MapManager, [{
key: "render",
value: function render() {
var mapStyle = this.props.mapStyle;
var editableLayers = _defaultSettings.DEFAULT_LAYER_GROUPS.map(function (lg) {
return lg.slug;
});
return _react["default"].createElement("div", {
className: "map-style-panel"
}, _react["default"].createElement("div", null, _react["default"].createElement(MapStyleSelector, {
mapStyle: mapStyle,
isSelecting: this.state.isSelecting,
onChange: this._selectStyle,
toggleActive: this._toggleSelecting
}), editableLayers.length ? _react["default"].createElement(LayerGroupSelector, {
layers: mapStyle.visibleLayerGroups,
editableLayers: editableLayers,
topLayers: mapStyle.topLayerGroups,
onChange: this._updateConfig
}) : null, _react["default"].createElement(_styledComponents.Button, {
onClick: this.props.showAddMapStyleModal,
secondary: true
}, _react["default"].createElement(_icons.Add, {
height: "12px"
}), "Add Map Style")));
}
}]);
return MapManager;
}(_react.Component), (0, _defineProperty2["default"])(_class, "propTypes", {
mapStyle: _propTypes["default"].object.isRequired,
onConfigChange: _propTypes["default"].func.isRequired,
onStyleChange: _propTypes["default"].func.isRequired,
showAddMapStyleModal: _propTypes["default"].func.isRequired
}), _temp;
}
var _default = MapManagerFactory;
exports["default"] = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGUtcGFuZWwvbWFwLW1hbmFnZXIuanMiXSwibmFtZXMiOlsiTWFwTWFuYWdlckZhY3RvcnkiLCJkZXBzIiwiTWFwU3R5bGVTZWxlY3RvckZhY3RvcnkiLCJMYXllckdyb3VwU2VsZWN0b3JGYWN0b3J5IiwiTWFwU3R5bGVTZWxlY3RvciIsIkxheWVyR3JvdXBTZWxlY3RvciIsImlzU2VsZWN0aW5nIiwibmV3UHJvcCIsIm5ld0NvbmZpZyIsInByb3BzIiwibWFwU3R5bGUiLCJvbkNvbmZpZ0NoYW5nZSIsInNldFN0YXRlIiwic3RhdGUiLCJ2YWwiLCJvblN0eWxlQ2hhbmdlIiwiX3RvZ2dsZVNlbGVjdGluZyIsImVkaXRhYmxlTGF5ZXJzIiwiREVGQVVMVF9MQVlFUl9HUk9VUFMiLCJtYXAiLCJsZyIsInNsdWciLCJfc2VsZWN0U3R5bGUiLCJsZW5ndGgiLCJ2aXNpYmxlTGF5ZXJHcm91cHMiLCJ0b3BMYXllckdyb3VwcyIsIl91cGRhdGVDb25maWciLCJzaG93QWRkTWFwU3R5bGVNb2RhbCIsIkNvbXBvbmVudCIsIlByb3BUeXBlcyIsIm9iamVjdCIsImlzUmVxdWlyZWQiLCJmdW5jIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0JBOztBQUNBOztBQUVBOztBQUNBOztBQUNBOztBQUVBOztBQUNBOzs7Ozs7QUFFQUEsaUJBQWlCLENBQUNDLElBQWxCLEdBQXlCLENBQ3ZCQyw0QkFEdUIsRUFFdkJDLDRCQUZ1QixDQUF6Qjs7QUFLQSxTQUFTSCxpQkFBVCxDQUEyQkksZ0JBQTNCLEVBQTZDQyxrQkFBN0MsRUFBaUU7QUFBQTs7QUFDL0Q7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTs7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQSxnR0FRVTtBQUNOQyxRQUFBQSxXQUFXLEVBQUU7QUFEUCxPQVJWO0FBQUEsd0dBWWtCLFVBQUFDLE9BQU8sRUFBSTtBQUN6QixZQUFNQyxTQUFTLHFCQUFPLE1BQUtDLEtBQUwsQ0FBV0MsUUFBbEIsTUFBK0JILE9BQS9CLENBQWY7O0FBQ0EsY0FBS0UsS0FBTCxDQUFXRSxjQUFYLENBQTBCSCxTQUExQjtBQUNELE9BZkg7QUFBQSwyR0FpQnFCLFlBQU07QUFDdkIsY0FBS0ksUUFBTCxDQUFjO0FBQUNOLFVBQUFBLFdBQVcsRUFBRSxDQUFDLE1BQUtPLEtBQUwsQ0FBV1A7QUFBMUIsU0FBZDtBQUNELE9BbkJIO0FBQUEsdUdBcUJpQixVQUFBUSxHQUFHLEVBQUk7QUFDcEIsY0FBS0wsS0FBTCxDQUFXTSxhQUFYLENBQXlCRCxHQUF6Qjs7QUFDQSxjQUFLRSxnQkFBTDtBQUNELE9BeEJIO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUEsK0JBMEJXO0FBQUEsWUFDQU4sUUFEQSxHQUNZLEtBQUtELEtBRGpCLENBQ0FDLFFBREE7O0FBRVAsWUFBTU8sY0FBYyxHQUFHQyxzQ0FBcUJDLEdBQXJCLENBQXlCLFVBQUFDLEVBQUU7QUFBQSxpQkFDaERBLEVBQUUsQ0FBQ0MsSUFENkM7QUFBQSxTQUEzQixDQUF2Qjs7QUFJQSxlQUNFO0FBQUssVUFBQSxTQUFTLEVBQUM7QUFBZixXQUNFLDZDQUNFLGdDQUFDLGdCQUFEO0FBQ0UsVUFBQSxRQUFRLEVBQUVYLFFBRFo7QUFFRSxVQUFBLFdBQVcsRUFBRSxLQUFLRyxLQUFMLENBQVdQLFdBRjFCO0FBR0UsVUFBQSxRQUFRLEVBQUUsS0FBS2dCLFlBSGpCO0FBSUUsVUFBQSxZQUFZLEVBQUUsS0FBS047QUFKckIsVUFERixFQU9HQyxjQUFjLENBQUNNLE1BQWYsR0FDQyxnQ0FBQyxrQkFBRDtBQUNFLFVBQUEsTUFBTSxFQUFFYixRQUFRLENBQUNjLGtCQURuQjtBQUVFLFVBQUEsY0FBYyxFQUFFUCxjQUZsQjtBQUdFLFVBQUEsU0FBUyxFQUFFUCxRQUFRLENBQUNlLGNBSHRCO0FBSUUsVUFBQSxRQUFRLEVBQUUsS0FBS0M7QUFKakIsVUFERCxHQU9HLElBZE4sRUFlRSxnQ0FBQyx3QkFBRDtBQUNFLFVBQUEsT0FBTyxFQUFFLEtBQUtqQixLQUFMLENBQVdrQixvQkFEdEI7QUFFRSxVQUFBLFNBQVM7QUFGWCxXQUdFLGdDQUFDLFVBQUQ7QUFBSyxVQUFBLE1BQU0sRUFBQztBQUFaLFVBSEYsa0JBZkYsQ0FERixDQURGO0FBeUJEO0FBekRIO0FBQUE7QUFBQSxJQUFnQ0MsZ0JBQWhDLHlEQUNxQjtBQUNqQmxCLElBQUFBLFFBQVEsRUFBRW1CLHNCQUFVQyxNQUFWLENBQWlCQyxVQURWO0FBRWpCcEIsSUFBQUEsY0FBYyxFQUFFa0Isc0JBQVVHLElBQVYsQ0FBZUQsVUFGZDtBQUdqQmhCLElBQUFBLGFBQWEsRUFBRWMsc0JBQVVHLElBQVYsQ0FBZUQsVUFIYjtBQUlqQkosSUFBQUEsb0JBQW9CLEVBQUVFLHNCQUFVRyxJQUFWLENBQWVEO0FBSnBCLEdBRHJCO0FBMkREOztlQUVjL0IsaUIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMTkgVWJlciBUZWNobm9sb2dpZXMsIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5pbXBvcnQgUmVhY3QsIHtDb21wb25lbnR9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5cbmltcG9ydCB7QnV0dG9ufSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9zdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgTWFwU3R5bGVTZWxlY3RvckZhY3RvcnkgZnJvbSAnY29tcG9uZW50cy9zaWRlLXBhbmVsL21hcC1zdHlsZS1wYW5lbC9tYXAtc3R5bGUtc2VsZWN0b3InO1xuaW1wb3J0IExheWVyR3JvdXBTZWxlY3RvckZhY3RvcnkgZnJvbSAnY29tcG9uZW50cy9zaWRlLXBhbmVsL21hcC1zdHlsZS1wYW5lbC9tYXAtbGF5ZXItc2VsZWN0b3InO1xuXG5pbXBvcnQge0FkZH0gZnJvbSAnY29tcG9uZW50cy9jb21tb24vaWNvbnMnO1xuaW1wb3J0IHsgREVGQVVMVF9MQVlFUl9HUk9VUFMgfSBmcm9tICdjb25zdGFudHMvZGVmYXVsdC1zZXR0aW5ncyc7XG5cbk1hcE1hbmFnZXJGYWN0b3J5LmRlcHMgPSBbXG4gIE1hcFN0eWxlU2VsZWN0b3JGYWN0b3J5LFxuICBMYXllckdyb3VwU2VsZWN0b3JGYWN0b3J5XG5dO1xuXG5mdW5jdGlvbiBNYXBNYW5hZ2VyRmFjdG9yeShNYXBTdHlsZVNlbGVjdG9yLCBMYXllckdyb3VwU2VsZWN0b3IpIHtcbiAgcmV0dXJuIGNsYXNzIE1hcE1hbmFnZXIgZXh0ZW5kcyBDb21wb25lbnQge1xuICAgIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgICBtYXBTdHlsZTogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICAgICAgb25Db25maWdDaGFuZ2U6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblN0eWxlQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgc2hvd0FkZE1hcFN0eWxlTW9kYWw6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWRcbiAgICB9O1xuXG4gICAgc3RhdGUgPSB7XG4gICAgICBpc1NlbGVjdGluZzogZmFsc2VcbiAgICB9O1xuXG4gICAgX3VwZGF0ZUNvbmZpZyA9IG5ld1Byb3AgPT4ge1xuICAgICAgY29uc3QgbmV3Q29uZmlnID0gey4uLnRoaXMucHJvcHMubWFwU3R5bGUsIC4uLm5ld1Byb3B9O1xuICAgICAgdGhpcy5wcm9wcy5vbkNvbmZpZ0NoYW5nZShuZXdDb25maWcpO1xuICAgIH07XG5cbiAgICBfdG9nZ2xlU2VsZWN0aW5nID0gKCkgPT4ge1xuICAgICAgdGhpcy5zZXRTdGF0ZSh7aXNTZWxlY3Rpbmc6ICF0aGlzLnN0YXRlLmlzU2VsZWN0aW5nfSk7XG4gICAgfTtcblxuICAgIF9zZWxlY3RTdHlsZSA9IHZhbCA9PiB7XG4gICAgICB0aGlzLnByb3BzLm9uU3R5bGVDaGFuZ2UodmFsKTtcbiAgICAgIHRoaXMuX3RvZ2dsZVNlbGVjdGluZygpO1xuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7bWFwU3R5bGV9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IGVkaXRhYmxlTGF5ZXJzID0gREVGQVVMVF9MQVlFUl9HUk9VUFMubWFwKGxnID0+XG4gICAgICAgIGxnLnNsdWdcbiAgICAgKTtcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtYXAtc3R5bGUtcGFuZWxcIj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPE1hcFN0eWxlU2VsZWN0b3JcbiAgICAgICAgICAgICAgbWFwU3R5bGU9e21hcFN0eWxlfVxuICAgICAgICAgICAgICBpc1NlbGVjdGluZz17dGhpcy5zdGF0ZS5pc1NlbGVjdGluZ31cbiAgICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMuX3NlbGVjdFN0eWxlfVxuICAgICAgICAgICAgICB0b2dnbGVBY3RpdmU9e3RoaXMuX3RvZ2dsZVNlbGVjdGluZ31cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB7ZWRpdGFibGVMYXllcnMubGVuZ3RoID8gKFxuICAgICAgICAgICAgICA8TGF5ZXJHcm91cFNlbGVjdG9yXG4gICAgICAgICAgICAgICAgbGF5ZXJzPXttYXBTdHlsZS52aXNpYmxlTGF5ZXJHcm91cHN9XG4gICAgICAgICAgICAgICAgZWRpdGFibGVMYXllcnM9e2VkaXRhYmxlTGF5ZXJzfVxuICAgICAgICAgICAgICAgIHRvcExheWVycz17bWFwU3R5bGUudG9wTGF5ZXJHcm91cHN9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMuX3VwZGF0ZUNvbmZpZ31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgICBvbkNsaWNrPXt0aGlzLnByb3BzLnNob3dBZGRNYXBTdHlsZU1vZGFsfVxuICAgICAgICAgICAgICBzZWNvbmRhcnk+XG4gICAgICAgICAgICAgIDxBZGQgaGVpZ2h0PVwiMTJweFwiIC8+QWRkIE1hcCBTdHlsZVxuICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgTWFwTWFuYWdlckZhY3Rvcnk7XG4iXX0=