UNPKG

@s-ui/react-molecule-dropdown-list

Version:

`MoleculeDropdownList` is a composition of DropdownOptions

58 lines 2.01 kB
import _extends from "@babel/runtime/helpers/esm/extends"; import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose"; var _excluded = ["value", "selected"], _excluded2 = ["value", "selected"]; export var BASE_CLASS = "sui-MoleculeDropdownList"; export var CLASS_HIDDEN = "is-hidden"; export var DEBOUNCE_TIME = 500; export var DESIGNS = { FLAT: 'flat', SOLID: 'solid' }; export var SIZES = { SMALL: 'small', MEDIUM: 'medium', LARGE: 'large' }; export var POSITIONS = { TOP: 'top', BOTTOM: 'bottom' }; export var moleculeDropdownListSelectHandler = { single: function single(_ref) { var value = _ref.value, onSelect = _ref.onSelect; return function (event, _ref2) { var valueHandled = _ref2.value, selectedHandled = _ref2.selected, args = _objectWithoutPropertiesLoose(_ref2, _excluded); typeof onSelect === 'function' && onSelect(event, _extends({ value: selectedHandled || value !== valueHandled ? valueHandled : undefined, selected: selectedHandled }, args)); }; }, multiple: function multiple(_ref3) { var _ref3$value = _ref3.value, valueState = _ref3$value === void 0 ? [] : _ref3$value, onSelect = _ref3.onSelect; return function (event, _ref4) { var valueHandled = _ref4.value, selectedHandled = _ref4.selected, args = _objectWithoutPropertiesLoose(_ref4, _excluded2); var selected = !valueState.includes(valueHandled); if (selectedHandled === undefined) { selected = selectedHandled; } var value = selected === true || !valueState.includes(valueHandled) ? [].concat(valueState.filter(function (val) { return val !== valueHandled; }), [valueHandled]) : valueState.filter(function (val) { return val !== valueHandled; }); typeof onSelect === 'function' && onSelect(event, _extends({ value: value, selected: selected }, args)); }; } };