PurePanel.js 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. "use client";
  2. var __rest = this && this.__rest || function (s, e) {
  3. var t = {};
  4. for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
  5. if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
  6. if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
  7. }
  8. return t;
  9. };
  10. /* eslint-disable react/no-array-index-key */
  11. import * as React from 'react';
  12. import classNames from 'classnames';
  13. import { ConfigContext } from '../config-provider';
  14. import BackTop from './BackTop';
  15. import FloatButton, { floatButtonPrefixCls } from './FloatButton';
  16. import FloatButtonGroup from './FloatButtonGroup';
  17. const PureFloatButton = _a => {
  18. var {
  19. backTop
  20. } = _a,
  21. props = __rest(_a, ["backTop"]);
  22. return backTop ? /*#__PURE__*/React.createElement(BackTop, Object.assign({}, props, {
  23. visibilityHeight: 0
  24. })) : /*#__PURE__*/React.createElement(FloatButton, Object.assign({}, props));
  25. };
  26. /** @private Internal Component. Do not use in your production. */
  27. const PurePanel = _a => {
  28. var {
  29. className,
  30. items
  31. } = _a,
  32. props = __rest(_a, ["className", "items"]);
  33. const {
  34. prefixCls: customizePrefixCls
  35. } = props;
  36. const {
  37. getPrefixCls
  38. } = React.useContext(ConfigContext);
  39. const prefixCls = getPrefixCls(floatButtonPrefixCls, customizePrefixCls);
  40. const pureCls = `${prefixCls}-pure`;
  41. if (items) {
  42. return /*#__PURE__*/React.createElement(FloatButtonGroup, Object.assign({
  43. className: classNames(className, pureCls)
  44. }, props), items.map((item, index) => (/*#__PURE__*/React.createElement(PureFloatButton, Object.assign({
  45. key: index
  46. }, item)))));
  47. }
  48. return /*#__PURE__*/React.createElement(PureFloatButton, Object.assign({
  49. className: classNames(className, pureCls)
  50. }, props));
  51. };
  52. export default PurePanel;