PresetPanel.js 923 B

12345678910111213141516171819202122232425262728293031
  1. import * as React from 'react';
  2. function executeValue(value) {
  3. return typeof value === 'function' ? value() : value;
  4. }
  5. export default function PresetPanel(props) {
  6. var prefixCls = props.prefixCls,
  7. presets = props.presets,
  8. _onClick = props.onClick,
  9. onHover = props.onHover;
  10. if (!presets.length) {
  11. return null;
  12. }
  13. return /*#__PURE__*/React.createElement("div", {
  14. className: "".concat(prefixCls, "-presets")
  15. }, /*#__PURE__*/React.createElement("ul", null, presets.map(function (_ref, index) {
  16. var label = _ref.label,
  17. value = _ref.value;
  18. return /*#__PURE__*/React.createElement("li", {
  19. key: index,
  20. onClick: function onClick() {
  21. _onClick(executeValue(value));
  22. },
  23. onMouseEnter: function onMouseEnter() {
  24. onHover(executeValue(value));
  25. },
  26. onMouseLeave: function onMouseLeave() {
  27. onHover(null);
  28. }
  29. }, label);
  30. })));
  31. }