UNPKG

react-bootstrap

Version:

Bootstrap 5 components built with React

49 lines (48 loc) 1.46 kB
"use client"; import classNames from 'classnames'; import * as React from 'react'; import { useBootstrapPrefix } from './ThemeProvider'; import CardBody from './CardBody'; import CardFooter from './CardFooter'; import CardHeader from './CardHeader'; import CardImg from './CardImg'; import CardImgOverlay from './CardImgOverlay'; import CardLink from './CardLink'; import CardSubtitle from './CardSubtitle'; import CardText from './CardText'; import CardTitle from './CardTitle'; import { jsx as _jsx } from "react/jsx-runtime"; const Card = /*#__PURE__*/React.forwardRef(({ bsPrefix, className, bg, text, border, body = false, children, // Need to define the default "as" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595 as: Component = 'div', ...props }, ref) => { const prefix = useBootstrapPrefix(bsPrefix, 'card'); return /*#__PURE__*/_jsx(Component, { ref: ref, ...props, className: classNames(className, prefix, bg && `bg-${bg}`, text && `text-${text}`, border && `border-${border}`), children: body ? /*#__PURE__*/_jsx(CardBody, { children: children }) : children }); }); Card.displayName = 'Card'; export default Object.assign(Card, { Img: CardImg, Title: CardTitle, Subtitle: CardSubtitle, Body: CardBody, Link: CardLink, Text: CardText, Header: CardHeader, Footer: CardFooter, ImgOverlay: CardImgOverlay });