Element.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. "use strict";
  2. "use client";
  3. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
  4. var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
  5. Object.defineProperty(exports, "__esModule", {
  6. value: true
  7. });
  8. exports.default = void 0;
  9. var React = _interopRequireWildcard(require("react"));
  10. var _classnames = _interopRequireDefault(require("classnames"));
  11. const Element = props => {
  12. const {
  13. prefixCls,
  14. className,
  15. style,
  16. size,
  17. shape
  18. } = props;
  19. const sizeCls = (0, _classnames.default)({
  20. [`${prefixCls}-lg`]: size === 'large',
  21. [`${prefixCls}-sm`]: size === 'small'
  22. });
  23. const shapeCls = (0, _classnames.default)({
  24. [`${prefixCls}-circle`]: shape === 'circle',
  25. [`${prefixCls}-square`]: shape === 'square',
  26. [`${prefixCls}-round`]: shape === 'round'
  27. });
  28. const sizeStyle = React.useMemo(() => typeof size === 'number' ? {
  29. width: size,
  30. height: size,
  31. lineHeight: `${size}px`
  32. } : {}, [size]);
  33. return /*#__PURE__*/React.createElement("span", {
  34. className: (0, _classnames.default)(prefixCls, sizeCls, shapeCls, className),
  35. style: Object.assign(Object.assign({}, sizeStyle), style)
  36. });
  37. };
  38. var _default = exports.default = Element;