kepler.gl
Version:
kepler.gl is a webgl based application to visualize large scale location data in the browser
106 lines (104 loc) • 17.4 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ArcLayerColorSelectorFactory = ArcLayerColorSelectorFactory;
exports.LayerColorRangeSelectorFactory = LayerColorRangeSelectorFactory;
exports.LayerColorSelectorFactory = LayerColorSelectorFactory;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = _interopRequireWildcard(require("react"));
var _colorSelector = _interopRequireDefault(require("./color-selector"));
var _styledComponents = require("../../common/styled-components");
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
// SPDX-License-Identifier: MIT
// Copyright contributors to the kepler.gl project
LayerColorSelectorFactory.deps = [_colorSelector["default"]];
function LayerColorSelectorFactory(ColorSelector) {
var LayerColorSelector = function LayerColorSelector(_ref) {
var layer = _ref.layer,
onChange = _ref.onChange,
selectedColor = _ref.selectedColor,
_ref$property = _ref.property,
property = _ref$property === void 0 ? 'color' : _ref$property,
setColorUI = _ref.setColorUI;
var onSetColorUI = (0, _react.useCallback)(function (newConfig) {
return setColorUI(property, newConfig);
}, [setColorUI, property]);
return /*#__PURE__*/_react["default"].createElement(_styledComponents.SidePanelSection, null, /*#__PURE__*/_react["default"].createElement(ColorSelector, {
colorSets: [{
selectedColor: selectedColor || layer.config.color,
setColor: function setColor(rgbValue) {
return onChange((0, _defineProperty2["default"])({}, property, rgbValue));
}
}],
colorUI: layer.config.colorUI[property],
setColorUI: onSetColorUI
}));
};
return LayerColorSelector;
}
LayerColorRangeSelectorFactory.deps = [_colorSelector["default"]];
function LayerColorRangeSelectorFactory(ColorSelector) {
var LayerColorRangeSelector = function LayerColorRangeSelector(_ref2) {
var layer = _ref2.layer,
onChange = _ref2.onChange,
_ref2$property = _ref2.property,
property = _ref2$property === void 0 ? 'colorRange' : _ref2$property,
setColorUI = _ref2.setColorUI;
var onSetColorUI = (0, _react.useCallback)(function (newConfig) {
return setColorUI(property, newConfig);
}, [setColorUI, property]);
return /*#__PURE__*/_react["default"].createElement(_styledComponents.SidePanelSection, null, /*#__PURE__*/_react["default"].createElement(ColorSelector, {
colorSets: [{
selectedColor: layer.config.visConfig[property],
isRange: true,
setColor: function setColor(colorRange) {
return onChange((0, _defineProperty2["default"])({}, property, colorRange));
}
}],
colorUI: layer.config.colorUI[property],
setColorUI: onSetColorUI
}));
};
return LayerColorRangeSelector;
}
ArcLayerColorSelectorFactory.deps = [_colorSelector["default"]];
function ArcLayerColorSelectorFactory(ColorSelector) {
var ArcLayerColorSelector = function ArcLayerColorSelector(_ref3) {
var layer = _ref3.layer,
onChangeConfig = _ref3.onChangeConfig,
onChangeVisConfig = _ref3.onChangeVisConfig,
_ref3$property = _ref3.property,
property = _ref3$property === void 0 ? 'color' : _ref3$property,
setColorUI = _ref3.setColorUI;
var onSetColorUI = (0, _react.useCallback)(function (newConfig) {
return setColorUI(property, newConfig);
}, [setColorUI, property]);
return /*#__PURE__*/_react["default"].createElement(_styledComponents.SidePanelSection, null, /*#__PURE__*/_react["default"].createElement(ColorSelector, {
colorSets: [{
selectedColor: layer.config.color,
setColor: function setColor(rgbValue) {
return onChangeConfig({
color: rgbValue
});
},
label: 'Source'
}, {
selectedColor: layer.config.visConfig.targetColor || layer.config.color,
setColor: function setColor(rgbValue) {
return onChangeVisConfig({
targetColor: rgbValue
});
},
label: 'Target'
}],
colorUI: layer.config.colorUI[property],
setColorUI: onSetColorUI
}));
};
return ArcLayerColorSelector;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfY29sb3JTZWxlY3RvciIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIkxheWVyQ29sb3JTZWxlY3RvckZhY3RvcnkiLCJkZXBzIiwiQ29sb3JTZWxlY3RvckZhY3RvcnkiLCJDb2xvclNlbGVjdG9yIiwiTGF5ZXJDb2xvclNlbGVjdG9yIiwiX3JlZiIsImxheWVyIiwib25DaGFuZ2UiLCJzZWxlY3RlZENvbG9yIiwiX3JlZiRwcm9wZXJ0eSIsInByb3BlcnR5Iiwic2V0Q29sb3JVSSIsIm9uU2V0Q29sb3JVSSIsInVzZUNhbGxiYWNrIiwibmV3Q29uZmlnIiwiY3JlYXRlRWxlbWVudCIsIlNpZGVQYW5lbFNlY3Rpb24iLCJjb2xvclNldHMiLCJjb25maWciLCJjb2xvciIsInNldENvbG9yIiwicmdiVmFsdWUiLCJfZGVmaW5lUHJvcGVydHkyIiwiY29sb3JVSSIsIkxheWVyQ29sb3JSYW5nZVNlbGVjdG9yRmFjdG9yeSIsIkxheWVyQ29sb3JSYW5nZVNlbGVjdG9yIiwiX3JlZjIiLCJfcmVmMiRwcm9wZXJ0eSIsInZpc0NvbmZpZyIsImlzUmFuZ2UiLCJjb2xvclJhbmdlIiwiQXJjTGF5ZXJDb2xvclNlbGVjdG9yRmFjdG9yeSIsIkFyY0xheWVyQ29sb3JTZWxlY3RvciIsIl9yZWYzIiwib25DaGFuZ2VDb25maWciLCJvbkNoYW5nZVZpc0NvbmZpZyIsIl9yZWYzJHByb3BlcnR5IiwibGFiZWwiLCJ0YXJnZXRDb2xvciJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zaWRlLXBhbmVsL2xheWVyLXBhbmVsL2xheWVyLWNvbG9yLXNlbGVjdG9yLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHt1c2VDYWxsYmFja30gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQge0NvbG9yUmFuZ2V9IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuaW1wb3J0IHtMYXllcn0gZnJvbSAnQGtlcGxlci5nbC9sYXllcnMnO1xuaW1wb3J0IHtOZXN0ZWRQYXJ0aWFsLCBSR0JDb2xvciwgQ29sb3JVSX0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5cbmltcG9ydCBDb2xvclNlbGVjdG9yRmFjdG9yeSBmcm9tICcuL2NvbG9yLXNlbGVjdG9yJztcbmltcG9ydCB7U2lkZVBhbmVsU2VjdGlvbn0gZnJvbSAnLi4vLi4vY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcblxudHlwZSBMYXllckNvbG9yU2VsZWN0b3JQcm9wcyA9IHtcbiAgbGF5ZXI6IExheWVyO1xuICBvbkNoYW5nZTogKHY6IFJlY29yZDxzdHJpbmcsIFJHQkNvbG9yPikgPT4gdm9pZDtcbiAgc2VsZWN0ZWRDb2xvcj86IFJHQkNvbG9yO1xuICBwcm9wZXJ0eT86IHN0cmluZztcbiAgc2V0Q29sb3JVSTogKHByb3A6IHN0cmluZywgbmV3Q29uZmlnOiBOZXN0ZWRQYXJ0aWFsPENvbG9yVUk+KSA9PiB2b2lkO1xufTtcblxudHlwZSBBcmNMYXllckNvbG9yU2VsZWN0b3JQcm9wcyA9IHtcbiAgbGF5ZXI6IExheWVyO1xuICBvbkNoYW5nZUNvbmZpZzogKHY6IHtjb2xvcjogUkdCQ29sb3J9KSA9PiB2b2lkO1xuICBvbkNoYW5nZVZpc0NvbmZpZzogKHY6IHt0YXJnZXRDb2xvcjogUkdCQ29sb3J9KSA9PiB2b2lkO1xuICBwcm9wZXJ0eT86IHN0cmluZztcbiAgc2V0Q29sb3JVSTogKHByb3A6IHN0cmluZywgbmV3Q29uZmlnOiBOZXN0ZWRQYXJ0aWFsPENvbG9yVUk+KSA9PiB2b2lkO1xufTtcblxudHlwZSBMYXllckNvbG9yUmFuZ2VTZWxlY3RvclByb3BzID0ge1xuICBsYXllcjogTGF5ZXI7XG4gIG9uQ2hhbmdlOiAodjogUmVjb3JkPHN0cmluZywgQ29sb3JSYW5nZT4pID0+IHZvaWQ7XG4gIHByb3BlcnR5Pzogc3RyaW5nO1xuICBzZXRDb2xvclVJOiAocHJvcDogc3RyaW5nLCBuZXdDb25maWc6IE5lc3RlZFBhcnRpYWw8Q29sb3JVST4pID0+IHZvaWQ7XG59O1xuXG5MYXllckNvbG9yU2VsZWN0b3JGYWN0b3J5LmRlcHMgPSBbQ29sb3JTZWxlY3RvckZhY3RvcnldO1xuZXhwb3J0IGZ1bmN0aW9uIExheWVyQ29sb3JTZWxlY3RvckZhY3RvcnkoQ29sb3JTZWxlY3Rvcikge1xuICBjb25zdCBMYXllckNvbG9yU2VsZWN0b3IgPSAoe1xuICAgIGxheWVyLFxuICAgIG9uQ2hhbmdlLFxuICAgIHNlbGVjdGVkQ29sb3IsXG4gICAgcHJvcGVydHkgPSAnY29sb3InLFxuICAgIHNldENvbG9yVUlcbiAgfTogTGF5ZXJDb2xvclNlbGVjdG9yUHJvcHMpID0+IHtcbiAgICBjb25zdCBvblNldENvbG9yVUkgPSB1c2VDYWxsYmFjayhcbiAgICAgIG5ld0NvbmZpZyA9PiBzZXRDb2xvclVJKHByb3BlcnR5LCBuZXdDb25maWcpLFxuICAgICAgW3NldENvbG9yVUksIHByb3BlcnR5XVxuICAgICk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPFNpZGVQYW5lbFNlY3Rpb24+XG4gICAgICAgIDxDb2xvclNlbGVjdG9yXG4gICAgICAgICAgY29sb3JTZXRzPXtbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHNlbGVjdGVkQ29sb3I6IHNlbGVjdGVkQ29sb3IgfHwgbGF5ZXIuY29uZmlnLmNvbG9yLFxuICAgICAgICAgICAgICBzZXRDb2xvcjogKHJnYlZhbHVlOiBSR0JDb2xvcikgPT4gb25DaGFuZ2Uoe1twcm9wZXJ0eV06IHJnYlZhbHVlfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdfVxuICAgICAgICAgIGNvbG9yVUk9e2xheWVyLmNvbmZpZy5jb2xvclVJW3Byb3BlcnR5XX1cbiAgICAgICAgICBzZXRDb2xvclVJPXtvblNldENvbG9yVUl9XG4gICAgICAgIC8+XG4gICAgICA8L1NpZGVQYW5lbFNlY3Rpb24+XG4gICAgKTtcbiAgfTtcbiAgcmV0dXJuIExheWVyQ29sb3JTZWxlY3Rvcjtcbn1cblxuTGF5ZXJDb2xvclJhbmdlU2VsZWN0b3JGYWN0b3J5LmRlcHMgPSBbQ29sb3JTZWxlY3RvckZhY3RvcnldO1xuZXhwb3J0IGZ1bmN0aW9uIExheWVyQ29sb3JSYW5nZVNlbGVjdG9yRmFjdG9yeShDb2xvclNlbGVjdG9yKSB7XG4gIGNvbnN0IExheWVyQ29sb3JSYW5nZVNlbGVjdG9yID0gKHtcbiAgICBsYXllcixcbiAgICBvbkNoYW5nZSxcbiAgICBwcm9wZXJ0eSA9ICdjb2xvclJhbmdlJyxcbiAgICBzZXRDb2xvclVJXG4gIH06IExheWVyQ29sb3JSYW5nZVNlbGVjdG9yUHJvcHMpID0+IHtcbiAgICBjb25zdCBvblNldENvbG9yVUkgPSB1c2VDYWxsYmFjayhcbiAgICAgIG5ld0NvbmZpZyA9PiBzZXRDb2xvclVJKHByb3BlcnR5LCBuZXdDb25maWcpLFxuICAgICAgW3NldENvbG9yVUksIHByb3BlcnR5XVxuICAgICk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPFNpZGVQYW5lbFNlY3Rpb24+XG4gICAgICAgIDxDb2xvclNlbGVjdG9yXG4gICAgICAgICAgY29sb3JTZXRzPXtbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHNlbGVjdGVkQ29sb3I6IGxheWVyLmNvbmZpZy52aXNDb25maWdbcHJvcGVydHldLFxuICAgICAgICAgICAgICBpc1JhbmdlOiB0cnVlLFxuICAgICAgICAgICAgICBzZXRDb2xvcjogKGNvbG9yUmFuZ2U6IENvbG9yUmFuZ2UpID0+IG9uQ2hhbmdlKHtbcHJvcGVydHldOiBjb2xvclJhbmdlfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdfVxuICAgICAgICAgIGNvbG9yVUk9e2xheWVyLmNvbmZpZy5jb2xvclVJW3Byb3BlcnR5XX1cbiAgICAgICAgICBzZXRDb2xvclVJPXtvblNldENvbG9yVUl9XG4gICAgICAgIC8+XG4gICAgICA8L1NpZGVQYW5lbFNlY3Rpb24+XG4gICAgKTtcbiAgfTtcbiAgcmV0dXJuIExheWVyQ29sb3JSYW5nZVNlbGVjdG9yO1xufVxuXG5BcmNMYXllckNvbG9yU2VsZWN0b3JGYWN0b3J5LmRlcHMgPSBbQ29sb3JTZWxlY3RvckZhY3RvcnldO1xuZXhwb3J0IGZ1bmN0aW9uIEFyY0xheWVyQ29sb3JTZWxlY3RvckZhY3RvcnkoQ29sb3JTZWxlY3Rvcikge1xuICBjb25zdCBBcmNMYXllckNvbG9yU2VsZWN0b3IgPSAoe1xuICAgIGxheWVyLFxuICAgIG9uQ2hhbmdlQ29uZmlnLFxuICAgIG9uQ2hhbmdlVmlzQ29uZmlnLFxuICAgIHByb3BlcnR5ID0gJ2NvbG9yJyxcbiAgICBzZXRDb2xvclVJXG4gIH06IEFyY0xheWVyQ29sb3JTZWxlY3RvclByb3BzKSA9PiB7XG4gICAgY29uc3Qgb25TZXRDb2xvclVJID0gdXNlQ2FsbGJhY2soXG4gICAgICBuZXdDb25maWcgPT4gc2V0Q29sb3JVSShwcm9wZXJ0eSwgbmV3Q29uZmlnKSxcbiAgICAgIFtzZXRDb2xvclVJLCBwcm9wZXJ0eV1cbiAgICApO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxTaWRlUGFuZWxTZWN0aW9uPlxuICAgICAgICA8Q29sb3JTZWxlY3RvclxuICAgICAgICAgIGNvbG9yU2V0cz17W1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBzZWxlY3RlZENvbG9yOiBsYXllci5jb25maWcuY29sb3IsXG4gICAgICAgICAgICAgIHNldENvbG9yOiAocmdiVmFsdWU6IFJHQkNvbG9yKSA9PiBvbkNoYW5nZUNvbmZpZyh7Y29sb3I6IHJnYlZhbHVlfSksXG4gICAgICAgICAgICAgIGxhYmVsOiAnU291cmNlJ1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgc2VsZWN0ZWRDb2xvcjogbGF5ZXIuY29uZmlnLnZpc0NvbmZpZy50YXJnZXRDb2xvciB8fCBsYXllci5jb25maWcuY29sb3IsXG4gICAgICAgICAgICAgIHNldENvbG9yOiAocmdiVmFsdWU6IFJHQkNvbG9yKSA9PiBvbkNoYW5nZVZpc0NvbmZpZyh7dGFyZ2V0Q29sb3I6IHJnYlZhbHVlfSksXG4gICAgICAgICAgICAgIGxhYmVsOiAnVGFyZ2V0J1xuICAgICAgICAgICAgfVxuICAgICAgICAgIF19XG4gICAgICAgICAgY29sb3JVST17bGF5ZXIuY29uZmlnLmNvbG9yVUlbcHJvcGVydHldfVxuICAgICAgICAgIHNldENvbG9yVUk9e29uU2V0Q29sb3JVSX1cbiAgICAgICAgLz5cbiAgICAgIDwvU2lkZVBhbmVsU2VjdGlvbj5cbiAgICApO1xuICB9O1xuICByZXR1cm4gQXJjTGF5ZXJDb2xvclNlbGVjdG9yO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQU1BLElBQUFDLGNBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLGlCQUFBLEdBQUFILE9BQUE7QUFBZ0UsU0FBQUkseUJBQUFDLENBQUEsNkJBQUFDLE9BQUEsbUJBQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLENBQUEsV0FBQUEsQ0FBQSxHQUFBRyxDQUFBLEdBQUFELENBQUEsS0FBQUYsQ0FBQTtBQUFBLFNBQUFOLHdCQUFBTSxDQUFBLEVBQUFFLENBQUEsU0FBQUEsQ0FBQSxJQUFBRixDQUFBLElB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
;