kepler.gl
Version:
kepler.gl is a webgl based application to visualize large scale location data in the browser
64 lines (63 loc) • 12.1 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = AnimationSpeedSliderFactory;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
var _react = _interopRequireWildcard(require("react"));
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _react2 = require("@floating-ui/react");
var _constants = require("@kepler.gl/constants");
var _rangeSlider = _interopRequireDefault(require("../range-slider"));
var _templateObject, _templateObject2; // SPDX-License-Identifier: MIT
// Copyright contributors to the kepler.gl project
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; }
var SliderWrapper = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n"])));
var SpeedSliderContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n bottom: 50px;\n right: calc(0% - 32px);\n width: 180px;\n padding: 2px 8px 2px 12px;\n background-color: ", ";\n box-shadow: -2px -2px 0 0 rgba(0, 0, 0, 0.1);\n\n .kg-range-slider__input {\n width: 48px;\n padding: 6px;\n }\n"])), function (props) {
return props.theme.bottomWidgetBgd;
});
AnimationSpeedSliderFactory.deps = [_rangeSlider["default"]];
function AnimationSpeedSliderFactory(RangeSlider) {
var AnimationSpeedSlider = function AnimationSpeedSlider(_ref) {
var onHide = _ref.onHide,
speed = _ref.speed,
updateAnimationSpeed = _ref.updateAnimationSpeed;
// floating-ui boilerplate to establish close on outside click
var _useFloating = (0, _react2.useFloating)({
open: true,
onOpenChange: function onOpenChange(v) {
if (!v) {
onHide();
}
}
}),
refs = _useFloating.refs,
context = _useFloating.context;
var dismiss = (0, _react2.useDismiss)(context);
var _useInteractions = (0, _react2.useInteractions)([dismiss]),
getFloatingProps = _useInteractions.getFloatingProps;
var onChange = (0, _react.useCallback)(function (v) {
return updateAnimationSpeed(v[1]);
}, [updateAnimationSpeed]);
return /*#__PURE__*/_react["default"].createElement(SpeedSliderContainer, (0, _extends2["default"])({
className: "animation-control__speed-slider",
ref: refs.setFloating
}, getFloatingProps()), /*#__PURE__*/_react["default"].createElement(SliderWrapper, null, /*#__PURE__*/_react["default"].createElement(RangeSlider, {
range: _constants.SPEED_CONTROL_RANGE,
step: _constants.SPEED_CONTROL_STEP,
value0: 0,
value1: speed,
onChange: onChange,
isRanged: false,
showInput: true,
inputTheme: "secondary",
inputSize: "tiny"
})));
};
return AnimationSpeedSlider;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfcmVhY3QyIiwiX2NvbnN0YW50cyIsIl9yYW5nZVNsaWRlciIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJTbGlkZXJXcmFwcGVyIiwic3R5bGVkIiwiZGl2IiwiX3RhZ2dlZFRlbXBsYXRlTGl0ZXJhbDIiLCJTcGVlZFNsaWRlckNvbnRhaW5lciIsInByb3BzIiwidGhlbWUiLCJib3R0b21XaWRnZXRCZ2QiLCJBbmltYXRpb25TcGVlZFNsaWRlckZhY3RvcnkiLCJkZXBzIiwiUmFuZ2VTbGlkZXJGYWN0b3J5IiwiUmFuZ2VTbGlkZXIiLCJBbmltYXRpb25TcGVlZFNsaWRlciIsIl9yZWYiLCJvbkhpZGUiLCJzcGVlZCIsInVwZGF0ZUFuaW1hdGlvblNwZWVkIiwiX3VzZUZsb2F0aW5nIiwidXNlRmxvYXRpbmciLCJvcGVuIiwib25PcGVuQ2hhbmdlIiwidiIsInJlZnMiLCJjb250ZXh0IiwiZGlzbWlzcyIsInVzZURpc21pc3MiLCJfdXNlSW50ZXJhY3Rpb25zIiwidXNlSW50ZXJhY3Rpb25zIiwiZ2V0RmxvYXRpbmdQcm9wcyIsIm9uQ2hhbmdlIiwidXNlQ2FsbGJhY2siLCJjcmVhdGVFbGVtZW50IiwiX2V4dGVuZHMyIiwiY2xhc3NOYW1lIiwicmVmIiwic2V0RmxvYXRpbmciLCJyYW5nZSIsIlNQRUVEX0NPTlRST0xfUkFOR0UiLCJzdGVwIiwiU1BFRURfQ09OVFJPTF9TVEVQIiwidmFsdWUwIiwidmFsdWUxIiwiaXNSYW5nZWQiLCJzaG93SW5wdXQiLCJpbnB1dFRoZW1lIiwiaW5wdXRTaXplIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1vbi9hbmltYXRpb24tY29udHJvbC9hbmltYXRpb24tc3BlZWQtc2xpZGVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHt1c2VDYWxsYmFja30gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge3VzZURpc21pc3MsIHVzZUZsb2F0aW5nLCB1c2VJbnRlcmFjdGlvbnN9IGZyb20gJ0BmbG9hdGluZy11aS9yZWFjdCc7XG5cbmltcG9ydCB7U1BFRURfQ09OVFJPTF9SQU5HRSwgU1BFRURfQ09OVFJPTF9TVEVQfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5cbmltcG9ydCBSYW5nZVNsaWRlckZhY3RvcnkgZnJvbSAnLi4vcmFuZ2Utc2xpZGVyJztcblxuY29uc3QgU2xpZGVyV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IFNwZWVkU2xpZGVyQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDUwcHg7XG4gIHJpZ2h0OiBjYWxjKDAlIC0gMzJweCk7XG4gIHdpZHRoOiAxODBweDtcbiAgcGFkZGluZzogMnB4IDhweCAycHggMTJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5ib3R0b21XaWRnZXRCZ2R9O1xuICBib3gtc2hhZG93OiAtMnB4IC0ycHggMCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcblxuICAua2ctcmFuZ2Utc2xpZGVyX19pbnB1dCB7XG4gICAgd2lkdGg6IDQ4cHg7XG4gICAgcGFkZGluZzogNnB4O1xuICB9XG5gO1xuXG5BbmltYXRpb25TcGVlZFNsaWRlckZhY3RvcnkuZGVwcyA9IFtSYW5nZVNsaWRlckZhY3RvcnldO1xuXG5pbnRlcmZhY2UgQW5pbWF0aW9uU3BlZWRTbGlkZXJQcm9wcyB7XG4gIG9uSGlkZTogKCkgPT4gdm9pZDtcbiAgc3BlZWQ6IG51bWJlcjtcbiAgdXBkYXRlQW5pbWF0aW9uU3BlZWQ6ICh2YWw6IG51bWJlcikgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gQW5pbWF0aW9uU3BlZWRTbGlkZXJGYWN0b3J5KFxuICBSYW5nZVNsaWRlcjogUmV0dXJuVHlwZTx0eXBlb2YgUmFuZ2VTbGlkZXJGYWN0b3J5PlxuKTogUmVhY3QuRkM8QW5pbWF0aW9uU3BlZWRTbGlkZXJQcm9wcz4ge1xuICBjb25zdCBBbmltYXRpb25TcGVlZFNsaWRlcjogUmVhY3QuRkM8QW5pbWF0aW9uU3BlZWRTbGlkZXJQcm9wcz4gPSAoe1xuICAgIG9uSGlkZSxcbiAgICBzcGVlZCxcbiAgICB1cGRhdGVBbmltYXRpb25TcGVlZFxuICB9OiBBbmltYXRpb25TcGVlZFNsaWRlclByb3BzKSA9PiB7XG4gICAgLy8gZmxvYXRpbmctdWkgYm9pbGVycGxhdGUgdG8gZXN0YWJsaXNoIGNsb3NlIG9uIG91dHNpZGUgY2xpY2tcbiAgICBjb25zdCB7cmVmcywgY29udGV4dH0gPSB1c2VGbG9hdGluZyh7XG4gICAgICBvcGVuOiB0cnVlLFxuICAgICAgb25PcGVuQ2hhbmdlOiB2ID0+IHtcbiAgICAgICAgaWYgKCF2KSB7XG4gICAgICAgICAgb25IaWRlKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgICBjb25zdCBkaXNtaXNzID0gdXNlRGlzbWlzcyhjb250ZXh0KTtcbiAgICBjb25zdCB7Z2V0RmxvYXRpbmdQcm9wc30gPSB1c2VJbnRlcmFjdGlvbnMoW2Rpc21pc3NdKTtcblxuICAgIGNvbnN0IG9uQ2hhbmdlID0gdXNlQ2FsbGJhY2sodiA9PiB1cGRhdGVBbmltYXRpb25TcGVlZCh2WzFdKSwgW3VwZGF0ZUFuaW1hdGlvblNwZWVkXSk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPFNwZWVkU2xpZGVyQ29udGFpbmVyXG4gICAgICAgIGNsYXNzTmFtZT1cImFuaW1hdGlvbi1jb250cm9sX19zcGVlZC1zbGlkZXJcIlxuICAgICAgICByZWY9e3JlZnMuc2V0RmxvYXRpbmd9XG4gICAgICAgIHsuLi5nZXRGbG9hdGluZ1Byb3BzKCl9XG4gICAgICA+XG4gICAgICAgIDxTbGlkZXJXcmFwcGVyPlxuICAgICAgICAgIDxSYW5nZVNsaWRlclxuICAgICAgICAgICAgcmFuZ2U9e1NQRUVEX0NPTlRST0xfUkFOR0V9XG4gICAgICAgICAgICBzdGVwPXtTUEVFRF9DT05UUk9MX1NURVB9XG4gICAgICAgICAgICB2YWx1ZTA9ezB9XG4gICAgICAgICAgICB2YWx1ZTE9e3NwZWVkfVxuICAgICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgICAgaXNSYW5nZWQ9e2ZhbHNlfVxuICAgICAgICAgICAgc2hvd0lucHV0XG4gICAgICAgICAgICBpbnB1dFRoZW1lPVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICAgIGlucHV0U2l6ZT1cInRpbnlcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvU2xpZGVyV3JhcHBlcj5cbiAgICAgIDwvU3BlZWRTbGlkZXJDb250YWluZXI+XG4gICAgKTtcbiAgfTtcbiAgcmV0dXJuIEFuaW1hdGlvblNwZWVkU2xpZGVyO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsaUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLE9BQUEsR0FBQUgsT0FBQTtBQUVBLElBQUFJLFVBQUEsR0FB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
;