Panel.js 840 B

12345678910111213141516171819202122232425262728293031
  1. "use client";
  2. import React, { forwardRef } from 'react';
  3. import classNames from 'classnames';
  4. export const InternalPanel = /*#__PURE__*/forwardRef((props, ref) => {
  5. const {
  6. prefixCls,
  7. className,
  8. children,
  9. size,
  10. style = {}
  11. } = props;
  12. const panelClassName = classNames(`${prefixCls}-panel`, {
  13. [`${prefixCls}-panel-hidden`]: size === 0
  14. }, className);
  15. const hasSize = size !== undefined;
  16. return /*#__PURE__*/React.createElement("div", {
  17. ref: ref,
  18. className: panelClassName,
  19. style: Object.assign(Object.assign({}, style), {
  20. // Use auto when start from ssr
  21. flexBasis: hasSize ? size : 'auto',
  22. flexGrow: hasSize ? 0 : 1
  23. })
  24. }, children);
  25. });
  26. if (process.env.NODE_ENV !== 'production') {
  27. InternalPanel.displayName = 'Panel';
  28. }
  29. const Panel = () => null;
  30. export default Panel;