UNPKG

kepler.gl

Version:

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

79 lines (78 loc) 16 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = exports.StyledDropdownSelect = exports.DropdownSelectValue = void 0; var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral")); var _react = _interopRequireDefault(require("react")); var _styledComponents = _interopRequireDefault(require("styled-components")); var _commonUtils = require("@kepler.gl/common-utils"); var _localization = require("@kepler.gl/localization"); var _icons = require("../icons"); var _dropdownList = require("./dropdown-list"); var _templateObject, _templateObject2, _templateObject3; // SPDX-License-Identifier: MIT // Copyright contributors to the kepler.gl project var StyledDropdownSelect = exports.StyledDropdownSelect = _styledComponents["default"].div.attrs({ className: 'item-selector__dropdown' })(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ", ";\n\n height: ", ";\n\n .list__item__anchor {\n ", ";\n }\n"])), function (props) { return props.inputTheme === 'secondary' ? props.theme.secondaryInput : props.inputTheme === 'light' ? props.theme.inputLT : props.theme.input; }, function (props) { return props.size === 'small' ? props.theme.inputBoxHeightSmall : props.theme.inputBoxHeight; }, function (props) { return props.theme.dropdownListAnchor; }); var DropdownSelectValue = exports.DropdownSelectValue = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n .list__item {\n ", ";\n }\n\n .list__item__anchor {\n ", ";\n }\n"])), function (props) { return props.hasPlaceholder && props.inputTheme === 'light' ? props.theme.selectColorPlaceHolderLT : props.hasPlaceholder ? props.theme.selectColorPlaceHolder : props.inputTheme === 'light' ? props.theme.selectColorLT : props.theme.selectColor; }, function (props) { return props.inputTheme === 'light' ? props.theme.dropdownListItemLT : props.theme.dropdownListItem; }, function (props) { return props.inputTheme === 'light' ? props.theme.dropdownListAnchorLT : props.theme.dropdownListAnchor; }); var DropdownSelectActionRight = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 2px;\n display: flex;\n color: ", ";\n\n &:hover {\n color: ", ";\n }\n"])), function (props) { return props.theme.subtextColor; }, function (props) { return props.theme.textColor; }); function DropdownSelect(_ref) { var className = _ref.className, displayOption = _ref.displayOption, disabled = _ref.disabled, onClick = _ref.onClick, inputTheme = _ref.inputTheme, size = _ref.size, value = _ref.value, placeholder = _ref.placeholder, erasable = _ref.erasable, showArrow = _ref.showArrow, onErase = _ref.onErase, showDropdown = _ref.showDropdown, _ref$DropDownLineItem = _ref.DropDownLineItemRenderComponent, DropDownLineItemRenderComponent = _ref$DropDownLineItem === void 0 ? _dropdownList.ListItem : _ref$DropDownLineItem; var hasValue = (0, _commonUtils.notNullorUndefined)(value); return /*#__PURE__*/_react["default"].createElement(StyledDropdownSelect, { className: className, onClick: onClick, inputTheme: inputTheme, size: size }, /*#__PURE__*/_react["default"].createElement(DropdownSelectValue, { hasPlaceholder: !hasValue, inputTheme: inputTheme, className: "item-selector__dropdown__value" }, hasValue ? /*#__PURE__*/_react["default"].createElement(DropDownLineItemRenderComponent, { displayOption: displayOption, value: value, disabled: Boolean(disabled), light: inputTheme === 'light' }) : /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, { id: placeholder || 'placeholder.selectValue' })), erasable && hasValue ? /*#__PURE__*/_react["default"].createElement(DropdownSelectActionRight, null, /*#__PURE__*/_react["default"].createElement(_icons.Delete, { height: "12px", onClick: onErase })) : showArrow ? /*#__PURE__*/_react["default"].createElement(DropdownSelectActionRight, null, /*#__PURE__*/_react["default"].createElement(_icons.ArrowDown, { height: "14px", onClick: showDropdown })) : null); } var _default = exports["default"] = DropdownSelect; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zdHlsZWRDb21wb25lbnRzIiwiX2NvbW1vblV0aWxzIiwiX2xvY2FsaXphdGlvbiIsIl9pY29ucyIsIl9kcm9wZG93bkxpc3QiLCJfdGVtcGxhdGVPYmplY3QiLCJfdGVtcGxhdGVPYmplY3QyIiwiX3RlbXBsYXRlT2JqZWN0MyIsIlN0eWxlZERyb3Bkb3duU2VsZWN0IiwiZXhwb3J0cyIsInN0eWxlZCIsImRpdiIsImF0dHJzIiwiY2xhc3NOYW1lIiwiX3RhZ2dlZFRlbXBsYXRlTGl0ZXJhbDIiLCJwcm9wcyIsImlucHV0VGhlbWUiLCJ0aGVtZSIsInNlY29uZGFyeUlucHV0IiwiaW5wdXRMVCIsImlucHV0Iiwic2l6ZSIsImlucHV0Qm94SGVpZ2h0U21hbGwiLCJpbnB1dEJveEhlaWdodCIsImRyb3Bkb3duTGlzdEFuY2hvciIsIkRyb3Bkb3duU2VsZWN0VmFsdWUiLCJzcGFuIiwiaGFzUGxhY2Vob2xkZXIiLCJzZWxlY3RDb2xvclBsYWNlSG9sZGVyTFQiLCJzZWxlY3RDb2xvclBsYWNlSG9sZGVyIiwic2VsZWN0Q29sb3JMVCIsInNlbGVjdENvbG9yIiwiZHJvcGRvd25MaXN0SXRlbUxUIiwiZHJvcGRvd25MaXN0SXRlbSIsImRyb3Bkb3duTGlzdEFuY2hvckxUIiwiRHJvcGRvd25TZWxlY3RBY3Rpb25SaWdodCIsInN1YnRleHRDb2xvciIsInRleHRDb2xvciIsIkRyb3Bkb3duU2VsZWN0IiwiX3JlZiIsImRpc3BsYXlPcHRpb24iLCJkaXNhYmxlZCIsIm9uQ2xpY2siLCJ2YWx1ZSIsInBsYWNlaG9sZGVyIiwiZXJhc2FibGUiLCJzaG93QXJyb3ciLCJvbkVyYXNlIiwic2hvd0Ryb3Bkb3duIiwiX3JlZiREcm9wRG93bkxpbmVJdGVtIiwiRHJvcERvd25MaW5lSXRlbVJlbmRlckNvbXBvbmVudCIsIkxpc3RJdGVtIiwiaGFzVmFsdWUiLCJub3ROdWxsb3JVbmRlZmluZWQiLCJjcmVhdGVFbGVtZW50IiwiQm9vbGVhbiIsImxpZ2h0IiwiRm9ybWF0dGVkTWVzc2FnZSIsImlkIiwiRGVsZXRlIiwiaGVpZ2h0IiwiQXJyb3dEb3duIiwiX2RlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbW9uL2l0ZW0tc2VsZWN0b3IvZHJvcGRvd24tc2VsZWN0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHtDb21wb25lbnRUeXBlfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcblxuaW1wb3J0IHtub3ROdWxsb3JVbmRlZmluZWR9IGZyb20gJ0BrZXBsZXIuZ2wvY29tbW9uLXV0aWxzJztcbmltcG9ydCB7Rm9ybWF0dGVkTWVzc2FnZX0gZnJvbSAnQGtlcGxlci5nbC9sb2NhbGl6YXRpb24nO1xuXG5pbXBvcnQge0Fycm93RG93biwgRGVsZXRlfSBmcm9tICcuLi9pY29ucyc7XG5pbXBvcnQge0xpc3RJdGVtfSBmcm9tICcuL2Ryb3Bkb3duLWxpc3QnO1xuXG5leHBvcnQgdHlwZSBMaXN0SXRlbVByb3BzPE9wdGlvbj4gPSB7XG4gIHZhbHVlOiBPcHRpb247XG4gIGRpc3BsYXlPcHRpb246IChvcHQ6IE9wdGlvbikgPT4gc3RyaW5nO1xuICBsaWdodDogYm9vbGVhbjtcbiAgZGlzYWJsZWQ6IGJvb2xlYW47XG59O1xuXG5leHBvcnQgdHlwZSBEcm9wZG93blNlbGVjdFByb3BzPE9wdGlvbj4gPSB7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgZGlzcGxheU9wdGlvbj86IHN0cmluZyB8ICgob3B0OiBPcHRpb24pID0+IHN0cmluZyk7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgb25DbGljazogKGU6IFJlYWN0Lk1vdXNlRXZlbnQpID0+IHZvaWQ7XG4gIGlucHV0VGhlbWU/OiBzdHJpbmc7XG4gIGVycm9yPzogYm9vbGVhbjtcbiAgc2l6ZT86IHN0cmluZztcbiAgdmFsdWU6IE9wdGlvbjtcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIGVyYXNhYmxlPzogYm9vbGVhbjtcbiAgc2hvd0Fycm93PzogYm9vbGVhbjtcbiAgb25FcmFzZT86IChlOiBSZWFjdC5Nb3VzZUV2ZW50KSA9PiB2b2lkO1xuICBzaG93RHJvcGRvd246IChlOiBSZWFjdC5Nb3VzZUV2ZW50KSA9PiB2b2lkO1xuICBEcm9wRG93bkxpbmVJdGVtUmVuZGVyQ29tcG9uZW50PzogQ29tcG9uZW50VHlwZTxMaXN0SXRlbVByb3BzPE9wdGlvbj4+O1xufTtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZERyb3Bkb3duU2VsZWN0ID0gc3R5bGVkLmRpdi5hdHRyczx7Y2xhc3NOYW1lPzogc3RyaW5nfT4oe1xuICBjbGFzc05hbWU6ICdpdGVtLXNlbGVjdG9yX19kcm9wZG93bidcbn0pPHtcbiAgc2l6ZTogRHJvcGRvd25TZWxlY3RQcm9wczxhbnk+WydzaXplJ107XG4gIGlucHV0VGhlbWU6IERyb3Bkb3duU2VsZWN0UHJvcHM8YW55PlsnaW5wdXRUaGVtZSddO1xufT5gXG4gICR7cHJvcHMgPT5cbiAgICBwcm9wcy5pbnB1dFRoZW1lID09PSAnc2Vjb25kYXJ5J1xuICAgICAgPyBwcm9wcy50aGVtZS5zZWNvbmRhcnlJbnB1dFxuICAgICAgOiBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnXG4gICAgICA/IHByb3BzLnRoZW1lLmlucHV0TFRcbiAgICAgIDogcHJvcHMudGhlbWUuaW5wdXR9O1xuXG4gIGhlaWdodDogJHtwcm9wcyA9PlxuICAgIHByb3BzLnNpemUgPT09ICdzbWFsbCcgPyBwcm9wcy50aGVtZS5pbnB1dEJveEhlaWdodFNtYWxsIDogcHJvcHMudGhlbWUuaW5wdXRCb3hIZWlnaHR9O1xuXG4gIC5saXN0X19pdGVtX19hbmNob3Ige1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QW5jaG9yfTtcbiAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IERyb3Bkb3duU2VsZWN0VmFsdWUgPSBzdHlsZWQuc3Bhbjx7XG4gIGlucHV0VGhlbWU6IERyb3Bkb3duU2VsZWN0UHJvcHM8YW55PlsnaW5wdXRUaGVtZSddO1xuICBoYXNQbGFjZWhvbGRlcjogYm9vbGVhbjtcbn0+YFxuICBjb2xvcjogJHtwcm9wcyA9PlxuICAgIHByb3BzLmhhc1BsYWNlaG9sZGVyICYmIHByb3BzLmlucHV0VGhlbWUgPT09ICdsaWdodCdcbiAgICAgID8gcHJvcHMudGhlbWUuc2VsZWN0Q29sb3JQbGFjZUhvbGRlckxUXG4gICAgICA6IHByb3BzLmhhc1BsYWNlaG9sZGVyXG4gICAgICA/IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yUGxhY2VIb2xkZXJcbiAgICAgIDogcHJvcHMuaW5wdXRUaGVtZSA9PT0gJ2xpZ2h0J1xuICAgICAgPyBwcm9wcy50aGVtZS5zZWxlY3RDb2xvckxUXG4gICAgICA6IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yfTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLmxpc3RfX2l0ZW0ge1xuICAgICR7cHJvcHMgPT5cbiAgICAgIHByb3BzLmlucHV0VGhlbWUgPT09ICdsaWdodCcgPyBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RJdGVtTFQgOiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RJdGVtfTtcbiAgfVxuXG4gIC5saXN0X19pdGVtX19hbmNob3Ige1xuICAgICR7cHJvcHMgPT5cbiAgICAgIHByb3BzLmlucHV0VGhlbWUgPT09ICdsaWdodCdcbiAgICAgICAgPyBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RBbmNob3JMVFxuICAgICAgICA6IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEFuY2hvcn07XG4gIH1cbmA7XG5cbmNvbnN0IERyb3Bkb3duU2VsZWN0QWN0aW9uUmlnaHQgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgZGlzcGxheTogZmxleDtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3VidGV4dENvbG9yfTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3J9O1xuICB9XG5gO1xuXG5mdW5jdGlvbiBEcm9wZG93blNlbGVjdDxPcHRpb24+KHtcbiAgLy8gZHJvcGRvd25TZWxlY3RQcm9wcyxcbiAgY2xhc3NOYW1lLFxuICBkaXNwbGF5T3B0aW9uLFxuICBkaXNhYmxlZCxcbiAgb25DbGljayxcbiAgaW5wdXRUaGVtZSxcbiAgc2l6ZSxcbiAgdmFsdWUsXG4gIHBsYWNlaG9sZGVyLFxuICBlcmFzYWJsZSxcbiAgc2hvd0Fycm93LFxuICBvbkVyYXNlLFxuICBzaG93RHJvcGRvd24sXG4gIERyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnQgPSBMaXN0SXRlbVxufTogRHJvcGRvd25TZWxlY3RQcm9wczxPcHRpb24+KTogSlNYLkVsZW1lbnQge1xuICBjb25zdCBoYXNWYWx1ZSA9IG5vdE51bGxvclVuZGVmaW5lZCh2YWx1ZSk7XG5cbiAgcmV0dXJuIChcbiAgICA8U3R5bGVkRHJvcGRvd25TZWxlY3RcbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lfVxuICAgICAgb25DbGljaz17b25DbGlja31cbiAgICAgIGlucHV0VGhlbWU9e2lucHV0VGhlbWV9XG4gICAgICBzaXplPXtzaXplfVxuICAgID5cbiAgICAgIDxEcm9wZG93blNlbGVjdFZhbHVlXG4gICAgICAgIGhhc1BsYWNlaG9sZGVyPXshaGFzVmFsdWV9XG4gICAgICAgIGlucHV0VGhlbWU9e2lucHV0VGhlbWV9XG4gICAgICAgIGNsYXNzTmFtZT1cIml0ZW0tc2VsZWN0b3JfX2Ryb3Bkb3duX192YWx1ZVwiXG4gICAgICA+XG4gICAgICAgIHtoYXNWYWx1ZSA/IChcbiAgICAgICAgICA8RHJvcERvd25MaW5lSXRlbVJlbmRlckNvbXBvbmVudFxuICAgICAgICAgICAgZGlzcGxheU9wdGlvbj17ZGlzcGxheU9wdGlvbiBhcyBMaXN0SXRlbVByb3BzPGFueT5bJ2Rpc3BsYXlPcHRpb24nXX1cbiAgICAgICAgICAgIHZhbHVlPXt2YWx1ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtCb29sZWFuKGRpc2FibGVkKX1cbiAgICAgICAgICAgIGxpZ2h0PXtpbnB1dFRoZW1lID09PSAnbGlnaHQnfVxuICAgICAgICAgIC8+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9e3BsYWNlaG9sZGVyIHx8ICdwbGFjZWhvbGRlci5zZWxlY3RWYWx1ZSd9IC8+XG4gICAgICAgICl9XG4gICAgICA8L0Ryb3Bkb3duU2VsZWN0VmFsdWU+XG4gICAgICB7ZXJhc2FibGUgJiYgaGFzVmFsdWUgPyAoXG4gICAgICAgIDxEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0PlxuICAgICAgICAgIDxEZWxldGUgaGVpZ2h0PVwiMTJweFwiIG9uQ2xpY2s9e29uRXJhc2V9IC8+XG4gICAgICAgIDwvRHJvcGRvd25TZWxlY3RBY3Rpb25SaWdodD5cbiAgICAgICkgOiBzaG93QXJyb3cgPyAoXG4gICAgICAgIDxEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0PlxuICAgICAgICAgIDxBcnJvd0Rvd24gaGVpZ2h0PVwiMTRweFwiIG9uQ2xpY2s9e3Nob3dEcm9wZG93bn0gLz5cbiAgICAgICAgPC9Ecm9wZG93blNlbGVjdEFjdGlvblJpZ2h0PlxuICAgICAgKSA6IG51bGx9XG4gICAgPC9TdHlsZWREcm9wZG93blNlbGVjdD5cbiAgKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgRHJvcGRvd25TZWxlY3Q7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsaUJBQUEsR0FBQUYsc0JBQUEsQ0FBQUMs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