UNPKG

kepler.gl

Version:

kepler.gl is a webgl based application to visualize large scale location data in the browser

104 lines (89 loc) 12.8 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _react = _interopRequireWildcard(require("react")); var _styledComponents = require("../../common/styled-components"); var _polygonFilter = _interopRequireDefault(require("../polygon-filter")); var _panelHeaderAction = _interopRequireDefault(require("../../side-panel/panel-header-action")); var _icons = require("../../common/icons"); var _filterPanelHeader = _interopRequireDefault(require("../../side-panel/filter-panel/filter-panel-header")); var _components = require("../components"); var _lodash = _interopRequireDefault(require("lodash.get")); // Copyright (c) 2020 Uber Technologies, Inc. // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal // in the Software without restriction, including without limitation the rights // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: // // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. PolygonFilterPanelFactory.deps = [_filterPanelHeader["default"], _polygonFilter["default"]]; function PolygonFilterPanelFactory(FilterPanelHeader, PolygonFilter) { var PolygonFilterPanel = _react["default"].memo(function (_ref) { var idx = _ref.idx, datasets = _ref.datasets, layers = _ref.layers, layerData = _ref.layerData, allAvailableFields = _ref.allAvailableFields, filter = _ref.filter, isAnyFilterAnimating = _ref.isAnyFilterAnimating, enlargeFilter = _ref.enlargeFilter, removeFilter = _ref.removeFilter, setFilter = _ref.setFilter, toggleFilterFeature = _ref.toggleFilterFeature; var filterDatasets = (0, _react.useMemo)(function () { return filter.dataId.map(function (d) { return datasets[d]; }); }, [filter, datasets]); var onSetLayers = (0, _react.useCallback)(function (value) { return setFilter(idx, 'layerId', value); }, [setFilter]); var isVisible = (0, _lodash["default"])(filter, ['value', 'properties', 'isVisible'], true); var featureType = (0, _lodash["default"])(filter, ['value', 'properties', 'renderType'], true); return _react["default"].createElement("div", { className: "polygon-filter-panel" }, _react["default"].createElement(FilterPanelHeader, { datasets: filterDatasets, allAvailableFields: allAvailableFields, idx: idx, filter: filter, removeFilter: removeFilter }, _react["default"].createElement(_components.StyledFilterPanel, null, "Geo - ", featureType), _react["default"].createElement(_panelHeaderAction["default"], { id: filter.id, onClick: toggleFilterFeature, tooltip: isVisible ? 'tooltip.hideFeature' : 'tooltip.showFeature', IconComponent: isVisible ? _icons.EyeSeen : _icons.EyeUnseen, active: isVisible })), _react["default"].createElement(_styledComponents.StyledFilterContent, { className: "filter-panel__content" }, _react["default"].createElement("div", { className: "filter-panel__filter" }, _react["default"].createElement(PolygonFilter, { filter: filter, layers: layers, setLayers: onSetLayers, toggleFilterFeature: toggleFilterFeature })))); }); PolygonFilterPanel.displayName = 'PolygonFilterPanel'; return PolygonFilterPanel; } var _default = PolygonFilterPanelFactory; exports["default"] = _default; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2ZpbHRlcnMvZmlsdGVyLXBhbmVscy9wb2x5Z29uLWZpbHRlci1wYW5lbC5qcyJdLCJuYW1lcyI6WyJQb2x5Z29uRmlsdGVyUGFuZWxGYWN0b3J5IiwiZGVwcyIsIkZpbHRlclBhbmVsSGVhZGVyRmFjdG9yeSIsIlBvbHlnb25GaWx0ZXJGYWN0b3J5IiwiRmlsdGVyUGFuZWxIZWFkZXIiLCJQb2x5Z29uRmlsdGVyIiwiUG9seWdvbkZpbHRlclBhbmVsIiwiUmVhY3QiLCJtZW1vIiwiaWR4IiwiZGF0YXNldHMiLCJsYXllcnMiLCJsYXllckRhdGEiLCJhbGxBdmFpbGFibGVGaWVsZHMiLCJmaWx0ZXIiLCJpc0FueUZpbHRlckFuaW1hdGluZyIsImVubGFyZ2VGaWx0ZXIiLCJyZW1vdmVGaWx0ZXIiLCJzZXRGaWx0ZXIiLCJ0b2dnbGVGaWx0ZXJGZWF0dXJlIiwiZmlsdGVyRGF0YXNldHMiLCJkYXRhSWQiLCJtYXAiLCJkIiwib25TZXRMYXllcnMiLCJ2YWx1ZSIsImlzVmlzaWJsZSIsImZlYXR1cmVUeXBlIiwiaWQiLCJFeWVTZWVuIiwiRXllVW5zZWVuIiwiZGlzcGxheU5hbWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBb0JBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUNBOztBQUVBOztBQTdCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQWFBQSx5QkFBeUIsQ0FBQ0MsSUFBMUIsR0FBaUMsQ0FBQ0MsNkJBQUQsRUFBMkJDLHlCQUEzQixDQUFqQzs7QUFFQSxTQUFTSCx5QkFBVCxDQUFtQ0ksaUJBQW5DLEVBQXNEQyxhQUF0RCxFQUFxRTtBQUNuRSxNQUFNQyxrQkFBa0IsR0FBR0Msa0JBQU1DLElBQU4sQ0FDekIsZ0JBWU07QUFBQSxRQVhKQyxHQVdJLFFBWEpBLEdBV0k7QUFBQSxRQVZKQyxRQVVJLFFBVkpBLFFBVUk7QUFBQSxRQVRKQyxNQVNJLFFBVEpBLE1BU0k7QUFBQSxRQVJKQyxTQVFJLFFBUkpBLFNBUUk7QUFBQSxRQVBKQyxrQkFPSSxRQVBKQSxrQkFPSTtBQUFBLFFBTkpDLE1BTUksUUFOSkEsTUFNSTtBQUFBLFFBTEpDLG9CQUtJLFFBTEpBLG9CQUtJO0FBQUEsUUFKSkMsYUFJSSxRQUpKQSxhQUlJO0FBQUEsUUFISkMsWUFHSSxRQUhKQSxZQUdJO0FBQUEsUUFGSkMsU0FFSSxRQUZKQSxTQUVJO0FBQUEsUUFESkMsbUJBQ0ksUUFESkEsbUJBQ0k7QUFDSixRQUFNQyxjQUFjLEdBQUcsb0JBQVE7QUFBQSxhQUFNTixNQUFNLENBQUNPLE1BQVAsQ0FBY0MsR0FBZCxDQUFrQixVQUFBQyxDQUFDO0FBQUEsZUFBSWIsUUFBUSxDQUFDYSxDQUFELENBQVo7QUFBQSxPQUFuQixDQUFOO0FBQUEsS0FBUixFQUFtRCxDQUFDVCxNQUFELEVBQVNKLFFBQVQsQ0FBbkQsQ0FBdkI7QUFFQSxRQUFNYyxXQUFXLEdBQUcsd0JBQVksVUFBQUMsS0FBSztBQUFBLGFBQUlQLFNBQVMsQ0FBQ1QsR0FBRCxFQUFNLFNBQU4sRUFBaUJnQixLQUFqQixDQUFiO0FBQUEsS0FBakIsRUFBdUQsQ0FBQ1AsU0FBRCxDQUF2RCxDQUFwQjtBQUVBLFFBQU1RLFNBQVMsR0FBRyx3QkFBSVosTUFBSixFQUFZLENBQUMsT0FBRCxFQUFVLFlBQVYsRUFBd0IsV0FBeEIsQ0FBWixFQUFrRCxJQUFsRCxDQUFsQjtBQUNBLFFBQU1hLFdBQVcsR0FBRyx3QkFBSWIsTUFBSixFQUFZLENBQUMsT0FBRCxFQUFVLFlBQVYsRUFBd0IsWUFBeEIsQ0FBWixFQUFtRCxJQUFuRCxDQUFwQjtBQUVBLFdBQ0U7QUFBSyxNQUFBLFNBQVMsRUFBQztBQUFmLE9BQ0UsZ0NBQUMsaUJBQUQ7QUFDRSxNQUFBLFFBQVEsRUFBRU0sY0FEWjtBQUVFLE1BQUEsa0JBQWtCLEVBQUVQLGtCQUZ0QjtBQUdFLE1BQUEsR0FBRyxFQUFFSixHQUhQO0FBSUUsTUFBQSxNQUFNLEVBQUVLLE1BSlY7QUFLRSxNQUFBLFlBQVksRUFBRUc7QUFMaEIsT0FPRSxnQ0FBQyw2QkFBRCxrQkFBMEJVLFdBQTFCLENBUEYsRUFRRSxnQ0FBQyw2QkFBRDtBQUNFLE1BQUEsRUFBRSxFQUFFYixNQUFNLENBQUNjLEVBRGI7QUFFRSxNQUFBLE9BQU8sRUFBRVQsbUJBRlg7QUFHRSxNQUFBLE9BQU8sRUFBRU8sU0FBUyxHQUFHLHFCQUFILEdBQTJCLHFCQUgvQztBQUlFLE1BQUEsYUFBYSxFQUFFQSxTQUFTLEdBQUdHLGNBQUgsR0FBYUMsZ0JBSnZDO0FBS0UsTUFBQSxNQUFNLEVBQUVKO0FBTFYsTUFSRixDQURGLEVBaUJFLGdDQUFDLHFDQUFEO0FBQXFCLE1BQUEsU0FBUyxFQUFDO0FBQS9CLE9BQ0U7QUFBSyxNQUFBLFNBQVMsRUFBQztBQUFmLE9BQ0UsZ0NBQUMsYUFBRDtBQUNFLE1BQUEsTUFBTSxFQUFFWixNQURWO0FBRUUsTUFBQSxNQUFNLEVBQUVILE1BRlY7QUFHRSxNQUFBLFNBQVMsRUFBRWEsV0FIYjtBQUlFLE1BQUEsbUJBQW1CLEVBQUVMO0FBSnZCLE1BREYsQ0FERixDQWpCRixDQURGO0FBOEJELEdBbkR3QixDQUEzQjs7QUFzREFiLEVBQUFBLGtCQUFrQixDQUFDeUIsV0FBbkIsR0FBaUMsb0JBQWpDO0FBRUEsU0FBT3pCLGtCQUFQO0FBQ0Q7O2VBRWNOLHlCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIwIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0LCB7dXNlTWVtbywgdXNlQ2FsbGJhY2t9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7U3R5bGVkRmlsdGVyQ29udGVudH0gZnJvbSAnY29tcG9uZW50cy9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IFBvbHlnb25GaWx0ZXJGYWN0b3J5IGZyb20gJ2NvbXBvbmVudHMvZmlsdGVycy9wb2x5Z29uLWZpbHRlcic7XG5pbXBvcnQgUGFuZWxIZWFkZXJBY3Rpb24gZnJvbSAnY29tcG9uZW50cy9zaWRlLXBhbmVsL3BhbmVsLWhlYWRlci1hY3Rpb24nO1xuaW1wb3J0IHtFeWVTZWVufSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9pY29ucyc7XG5pbXBvcnQge0V5ZVVuc2Vlbn0gZnJvbSAnY29tcG9uZW50cy9jb21tb24vaWNvbnMnO1xuaW1wb3J0IEZpbHRlclBhbmVsSGVhZGVyRmFjdG9yeSBmcm9tICdjb21wb25lbnRzL3NpZGUtcGFuZWwvZmlsdGVyLXBhbmVsL2ZpbHRlci1wYW5lbC1oZWFkZXInO1xuaW1wb3J0IHtTdHlsZWRGaWx0ZXJQYW5lbH0gZnJvbSAnLi4vY29tcG9uZW50cyc7XG5cbmltcG9ydCBnZXQgZnJvbSAnbG9kYXNoLmdldCc7XG5cblBvbHlnb25GaWx0ZXJQYW5lbEZhY3RvcnkuZGVwcyA9IFtGaWx0ZXJQYW5lbEhlYWRlckZhY3RvcnksIFBvbHlnb25GaWx0ZXJGYWN0b3J5XTtcblxuZnVuY3Rpb24gUG9seWdvbkZpbHRlclBhbmVsRmFjdG9yeShGaWx0ZXJQYW5lbEhlYWRlciwgUG9seWdvbkZpbHRlcikge1xuICBjb25zdCBQb2x5Z29uRmlsdGVyUGFuZWwgPSBSZWFjdC5tZW1vKFxuICAgICh7XG4gICAgICBpZHgsXG4gICAgICBkYXRhc2V0cyxcbiAgICAgIGxheWVycyxcbiAgICAgIGxheWVyRGF0YSxcbiAgICAgIGFsbEF2YWlsYWJsZUZpZWxkcyxcbiAgICAgIGZpbHRlcixcbiAgICAgIGlzQW55RmlsdGVyQW5pbWF0aW5nLFxuICAgICAgZW5sYXJnZUZpbHRlcixcbiAgICAgIHJlbW92ZUZpbHRlcixcbiAgICAgIHNldEZpbHRlcixcbiAgICAgIHRvZ2dsZUZpbHRlckZlYXR1cmVcbiAgICB9KSA9PiB7XG4gICAgICBjb25zdCBmaWx0ZXJEYXRhc2V0cyA9IHVzZU1lbW8oKCkgPT4gZmlsdGVyLmRhdGFJZC5tYXAoZCA9PiBkYXRhc2V0c1tkXSksIFtmaWx0ZXIsIGRhdGFzZXRzXSk7XG5cbiAgICAgIGNvbnN0IG9uU2V0TGF5ZXJzID0gdXNlQ2FsbGJhY2sodmFsdWUgPT4gc2V0RmlsdGVyKGlkeCwgJ2xheWVySWQnLCB2YWx1ZSksIFtzZXRGaWx0ZXJdKTtcblxuICAgICAgY29uc3QgaXNWaXNpYmxlID0gZ2V0KGZpbHRlciwgWyd2YWx1ZScsICdwcm9wZXJ0aWVzJywgJ2lzVmlzaWJsZSddLCB0cnVlKTtcbiAgICAgIGNvbnN0IGZlYXR1cmVUeXBlID0gZ2V0KGZpbHRlciwgWyd2YWx1ZScsICdwcm9wZXJ0aWVzJywgJ3JlbmRlclR5cGUnXSwgdHJ1ZSk7XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicG9seWdvbi1maWx0ZXItcGFuZWxcIj5cbiAgICAgICAgICA8RmlsdGVyUGFuZWxIZWFkZXJcbiAgICAgICAgICAgIGRhdGFzZXRzPXtmaWx0ZXJEYXRhc2V0c31cbiAgICAgICAgICAgIGFsbEF2YWlsYWJsZUZpZWxkcz17YWxsQXZhaWxhYmxlRmllbGRzfVxuICAgICAgICAgICAgaWR4PXtpZHh9XG4gICAgICAgICAgICBmaWx0ZXI9e2ZpbHRlcn1cbiAgICAgICAgICAgIHJlbW92ZUZpbHRlcj17cmVtb3ZlRmlsdGVyfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxTdHlsZWRGaWx0ZXJQYW5lbD5HZW8gLSB7ZmVhdHVyZVR5cGV9PC9TdHlsZWRGaWx0ZXJQYW5lbD5cbiAgICAgICAgICAgIDxQYW5lbEhlYWRlckFjdGlvblxuICAgICAgICAgICAgICBpZD17ZmlsdGVyLmlkfVxuICAgICAgICAgICAgICBvbkNsaWNrPXt0b2dnbGVGaWx0ZXJGZWF0dXJlfVxuICAgICAgICAgICAgICB0b29sdGlwPXtpc1Zpc2libGUgPyAndG9vbHRpcC5oaWRlRmVhdHVyZScgOiAndG9vbHRpcC5zaG93RmVhdHVyZSd9XG4gICAgICAgICAgICAgIEljb25Db21wb25lbnQ9e2lzVmlzaWJsZSA/IEV5ZVNlZW4gOiBFeWVVbnNlZW59XG4gICAgICAgICAgICAgIGFjdGl2ZT17aXNWaXNpYmxlfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L0ZpbHRlclBhbmVsSGVhZGVyPlxuICAgICAgICAgIDxTdHlsZWRGaWx0ZXJDb250ZW50IGNsYXNzTmFtZT1cImZpbHRlci1wYW5lbF9fY29udGVudFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWx0ZXItcGFuZWxfX2ZpbHRlclwiPlxuICAgICAgICAgICAgICA8UG9seWdvbkZpbHRlclxuICAgICAgICAgICAgICAgIGZpbHRlcj17ZmlsdGVyfVxuICAgICAgICAgICAgICAgIGxheWVycz17bGF5ZXJzfVxuICAgICAgICAgICAgICAgIHNldExheWVycz17b25TZXRMYXllcnN9XG4gICAgICAgICAgICAgICAgdG9nZ2xlRmlsdGVyRmVhdHVyZT17dG9nZ2xlRmlsdGVyRmVhdHVyZX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvU3R5bGVkRmlsdGVyQ29udGVudD5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgKTtcblxuICBQb2x5Z29uRmlsdGVyUGFuZWwuZGlzcGxheU5hbWUgPSAnUG9seWdvbkZpbHRlclBhbmVsJztcblxuICByZXR1cm4gUG9seWdvbkZpbHRlclBhbmVsO1xufVxuXG5leHBvcnQgZGVmYXVsdCBQb2x5Z29uRmlsdGVyUGFuZWxGYWN0b3J5O1xuIl19