kepler.gl.geoiq
Version:
kepler.gl is a webgl based application to visualize large scale location data in the browser
103 lines (91 loc) • 13.7 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _react = _interopRequireDefault(require("react"));
var _styledComponents = require("../../common/styled-components");
var _rangeFilter = _interopRequireDefault(require("../range-filter"));
var _filterPanelHeader = _interopRequireDefault(require("../../side-panel/filter-panel/filter-panel-header"));
var _fieldSelector = _interopRequireDefault(require("../../common/field-selector"));
var _sourceDataSelector = _interopRequireDefault(require("../../side-panel/common/source-data-selector"));
// Copyright (c) 2023 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.
RangeFilterPanelFactory.deps = [_filterPanelHeader["default"], _rangeFilter["default"], _sourceDataSelector["default"]];
function RangeFilterPanelFactory(FilterPanelHeader, RangeFilter, SourceDataSelector) {
var RangeFilterPanel = _react["default"].memo(function (_ref) {
var idx = _ref.idx,
datasets = _ref.datasets,
allAvailableFields = _ref.allAvailableFields,
filter = _ref.filter,
isAnyFilterAnimating = _ref.isAnyFilterAnimating,
enlargeFilter = _ref.enlargeFilter,
removeFilter = _ref.removeFilter,
_setFilter = _ref.setFilter,
toggleAnimation = _ref.toggleAnimation,
dataId = _ref.dataId,
auth = _ref.auth,
project = _ref.project,
filterApi = _ref.filterApi,
setFilterAPI = _ref.setFilterAPI,
mapState = _ref.mapState;
return (/*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(FilterPanelHeader, {
datasets: [datasets[filter.dataId[0]]],
allAvailableFields: allAvailableFields,
idx: idx,
filter: filter,
removeFilter: removeFilter
}, /*#__PURE__*/_react["default"].createElement(_fieldSelector["default"], {
inputTheme: "secondary",
fields: datasets[dataId].fields,
value: Array.isArray(filter.name) ? filter.name[0] : filter.name,
erasable: false,
onSelect: function onSelect(value) {
return filterApi(idx, value, dataId, datasets, auth, project, setFilterAPI);
}
})), /*#__PURE__*/_react["default"].createElement(_styledComponents.StyledFilterContent, {
className: "filter-panel__content"
}, Object.keys(datasets).length > 1 && /*#__PURE__*/_react["default"].createElement(SourceDataSelector, {
inputTheme: "secondary",
datasets: datasets,
disabled: filter.freeze,
dataId: filter.dataId,
onSelect: function onSelect(value) {
return _setFilter(idx, 'dataId', value);
}
}), filter.type && !filter.enlarged && /*#__PURE__*/_react["default"].createElement("div", {
className: "filter-panel__filter"
}, /*#__PURE__*/_react["default"].createElement(RangeFilter, {
filter: filter,
idx: idx,
isAnyFilterAnimating: isAnyFilterAnimating,
toggleAnimation: toggleAnimation,
setFilter: function setFilter(value) {
return _setFilter(idx, 'value', value, 0, mapState, auth, project);
}
}))))
);
});
RangeFilterPanel.displayName = 'RangeFilterPanel';
return RangeFilterPanel;
}
var _default = exports["default"] = RangeFilterPanelFactory;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2ZpbHRlcnMvZmlsdGVyLXBhbmVscy9yYW5nZS1maWx0ZXItcGFuZWwuanMiXSwibmFtZXMiOlsiUmFuZ2VGaWx0ZXJQYW5lbEZhY3RvcnkiLCJkZXBzIiwiRmlsdGVyUGFuZWxIZWFkZXJGYWN0b3J5IiwiUmFuZ2VGaWx0ZXJGYWN0b3J5IiwiU291cmNlRGF0YVNlbGVjdG9yRmFjdG9yeSIsIkZpbHRlclBhbmVsSGVhZGVyIiwiUmFuZ2VGaWx0ZXIiLCJTb3VyY2VEYXRhU2VsZWN0b3IiLCJSYW5nZUZpbHRlclBhbmVsIiwiUmVhY3QiLCJtZW1vIiwiaWR4IiwiZGF0YXNldHMiLCJhbGxBdmFpbGFibGVGaWVsZHMiLCJmaWx0ZXIiLCJpc0FueUZpbHRlckFuaW1hdGluZyIsImVubGFyZ2VGaWx0ZXIiLCJyZW1vdmVGaWx0ZXIiLCJzZXRGaWx0ZXIiLCJ0b2dnbGVBbmltYXRpb24iLCJkYXRhSWQiLCJhdXRoIiwicHJvamVjdCIsImZpbHRlckFwaSIsInNldEZpbHRlckFQSSIsIm1hcFN0YXRlIiwiZmllbGRzIiwiQXJyYXkiLCJpc0FycmF5IiwibmFtZSIsInZhbHVlIiwiT2JqZWN0Iiwia2V5cyIsImxlbmd0aCIsImZyZWV6ZSIsInR5cGUiLCJlbmxhcmdlZCIsImRpc3BsYXlOYW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBekJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBU0FBLHVCQUF1QixDQUFDQyxJQUF4QixHQUErQixDQUM3QkMsNkJBRDZCLEVBRTdCQyx1QkFGNkIsRUFHN0JDLDhCQUg2QixDQUEvQjs7QUFNQSxTQUFTSix1QkFBVCxDQUNFSyxpQkFERixFQUVFQyxXQUZGLEVBR0VDLGtCQUhGLEVBSUU7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RjtBQWpCRjtBQUFBLEdBRHVCLENBQXpCOztBQXdFQWQsRUFBQUEsZ0JBQWdCLENBQUM2QixXQUFqQixHQUErQixrQkFBL0I7QUFFQSxTQUFPN0IsZ0JBQVA7QUFDRDs7b0NBRWNSLHVCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIzIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7U3R5bGVkRmlsdGVyQ29udGVudH0gZnJvbSAnY29tcG9uZW50cy9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IFJhbmdlRmlsdGVyRmFjdG9yeSBmcm9tICdjb21wb25lbnRzL2ZpbHRlcnMvcmFuZ2UtZmlsdGVyJztcbmltcG9ydCBGaWx0ZXJQYW5lbEhlYWRlckZhY3RvcnkgZnJvbSAnY29tcG9uZW50cy9zaWRlLXBhbmVsL2ZpbHRlci1wYW5lbC9maWx0ZXItcGFuZWwtaGVhZGVyJztcbmltcG9ydCBGaWVsZFNlbGVjdG9yIGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL2ZpZWxkLXNlbGVjdG9yJztcbmltcG9ydCBTb3VyY2VEYXRhU2VsZWN0b3JGYWN0b3J5IGZyb20gJ2NvbXBvbmVudHMvc2lkZS1wYW5lbC9jb21tb24vc291cmNlLWRhdGEtc2VsZWN0b3InO1xuXG5SYW5nZUZpbHRlclBhbmVsRmFjdG9yeS5kZXBzID0gW1xuICBGaWx0ZXJQYW5lbEhlYWRlckZhY3RvcnksXG4gIFJhbmdlRmlsdGVyRmFjdG9yeSxcbiAgU291cmNlRGF0YVNlbGVjdG9yRmFjdG9yeVxuXTtcblxuZnVuY3Rpb24gUmFuZ2VGaWx0ZXJQYW5lbEZhY3RvcnkoXG4gIEZpbHRlclBhbmVsSGVhZGVyLFxuICBSYW5nZUZpbHRlcixcbiAgU291cmNlRGF0YVNlbGVjdG9yXG4pIHtcbiAgY29uc3QgUmFuZ2VGaWx0ZXJQYW5lbCA9IFJlYWN0Lm1lbW8oXG4gICAgKHtcbiAgICAgIGlkeCxcbiAgICAgIGRhdGFzZXRzLFxuICAgICAgYWxsQXZhaWxhYmxlRmllbGRzLFxuICAgICAgZmlsdGVyLFxuICAgICAgaXNBbnlGaWx0ZXJBbmltYXRpbmcsXG4gICAgICBlbmxhcmdlRmlsdGVyLFxuICAgICAgcmVtb3ZlRmlsdGVyLFxuICAgICAgc2V0RmlsdGVyLFxuICAgICAgdG9nZ2xlQW5pbWF0aW9uLFxuICAgICAgZGF0YUlkLFxuICAgICAgYXV0aCxcbiAgICAgIHByb2plY3QsXG4gICAgICBmaWx0ZXJBcGksXG4gICAgICBzZXRGaWx0ZXJBUEksXG4gICAgICBtYXBTdGF0ZVxuICAgIH0pID0+IChcbiAgICAgIDw+XG4gICAgICAgIDxGaWx0ZXJQYW5lbEhlYWRlclxuICAgICAgICAgIGRhdGFzZXRzPXtbZGF0YXNldHNbZmlsdGVyLmRhdGFJZFswXV1dfVxuICAgICAgICAgIGFsbEF2YWlsYWJsZUZpZWxkcz17YWxsQXZhaWxhYmxlRmllbGRzfVxuICAgICAgICAgIGlkeD17aWR4fVxuICAgICAgICAgIGZpbHRlcj17ZmlsdGVyfVxuICAgICAgICAgIHJlbW92ZUZpbHRlcj17cmVtb3ZlRmlsdGVyfVxuICAgICAgICA+XG4gICAgICAgICAgPEZpZWxkU2VsZWN0b3JcbiAgICAgICAgICAgIGlucHV0VGhlbWU9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgZmllbGRzPXtkYXRhc2V0c1tkYXRhSWRdLmZpZWxkc31cbiAgICAgICAgICAgIHZhbHVlPXtBcnJheS5pc0FycmF5KGZpbHRlci5uYW1lKSA/IGZpbHRlci5uYW1lWzBdIDogZmlsdGVyLm5hbWV9XG4gICAgICAgICAgICBlcmFzYWJsZT17ZmFsc2V9XG4gICAgICAgICAgICBvblNlbGVjdD17dmFsdWUgPT5cbiAgICAgICAgICAgICAgZmlsdGVyQXBpKFxuICAgICAgICAgICAgICAgIGlkeCxcbiAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgICBkYXRhSWQsXG4gICAgICAgICAgICAgICAgZGF0YXNldHMsXG4gICAgICAgICAgICAgICAgYXV0aCxcbiAgICAgICAgICAgICAgICBwcm9qZWN0LFxuICAgICAgICAgICAgICAgIHNldEZpbHRlckFQSVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9GaWx0ZXJQYW5lbEhlYWRlcj5cbiAgICAgICAgPFN0eWxlZEZpbHRlckNvbnRlbnQgY2xhc3NOYW1lPVwiZmlsdGVyLXBhbmVsX19jb250ZW50XCI+XG4gICAgICAgICAge09iamVjdC5rZXlzKGRhdGFzZXRzKS5sZW5ndGggPiAxICYmIChcbiAgICAgICAgICAgIDxTb3VyY2VEYXRhU2VsZWN0b3JcbiAgICAgICAgICAgICAgaW5wdXRUaGVtZT1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICAgIGRhdGFzZXRzPXtkYXRhc2V0c31cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2ZpbHRlci5mcmVlemV9XG4gICAgICAgICAgICAgIGRhdGFJZD17ZmlsdGVyLmRhdGFJZH1cbiAgICAgICAgICAgICAgb25TZWxlY3Q9e3ZhbHVlID0+IHNldEZpbHRlcihpZHgsICdkYXRhSWQnLCB2YWx1ZSl9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG4gICAgICAgICAge2ZpbHRlci50eXBlICYmICFmaWx0ZXIuZW5sYXJnZWQgJiYgKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWx0ZXItcGFuZWxfX2ZpbHRlclwiPlxuICAgICAgICAgICAgICA8UmFuZ2VGaWx0ZXJcbiAgICAgICAgICAgICAgICBmaWx0ZXI9e2ZpbHRlcn1cbiAgICAgICAgICAgICAgICBpZHg9e2lkeH1cbiAgICAgICAgICAgICAgICBpc0FueUZpbHRlckFuaW1hdGluZz17aXNBbnlGaWx0ZXJBbmltYXRpbmd9XG4gICAgICAgICAgICAgICAgdG9nZ2xlQW5pbWF0aW9uPXt0b2dnbGVBbmltYXRpb259XG4gICAgICAgICAgICAgICAgc2V0RmlsdGVyPXt2YWx1ZSA9PlxuICAgICAgICAgICAgICAgICAgc2V0RmlsdGVyKGlkeCwgJ3ZhbHVlJywgdmFsdWUsIDAsIG1hcFN0YXRlLCBhdXRoLCBwcm9qZWN0KVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICl9XG4gICAgICAgIDwvU3R5bGVkRmlsdGVyQ29udGVudD5cbiAgICAgIDwvPlxuICAgIClcbiAgKTtcblxuICBSYW5nZUZpbHRlclBhbmVsLmRpc3BsYXlOYW1lID0gJ1JhbmdlRmlsdGVyUGFuZWwnO1xuXG4gIHJldHVybiBSYW5nZUZpbHRlclBhbmVsO1xufVxuXG5leHBvcnQgZGVmYXVsdCBSYW5nZUZpbHRlclBhbmVsRmFjdG9yeTtcbiJdfQ==