react-bootstrap
Version:
Bootstrap 5 components built with React
40 lines (35 loc) • 1.18 kB
JavaScript
import classNames from 'classnames';
import * as React from 'react';
import { useBootstrapPrefix } from './ThemeProvider';
import { jsx as _jsx } from "react/jsx-runtime";
const Table = /*#__PURE__*/React.forwardRef(({
bsPrefix,
className,
striped,
bordered,
borderless,
hover,
size,
variant,
responsive,
...props
}, ref) => {
const decoratedBsPrefix = useBootstrapPrefix(bsPrefix, 'table');
const classes = classNames(className, decoratedBsPrefix, variant && `${decoratedBsPrefix}-${variant}`, size && `${decoratedBsPrefix}-${size}`, striped && `${decoratedBsPrefix}-striped`, bordered && `${decoratedBsPrefix}-bordered`, borderless && `${decoratedBsPrefix}-borderless`, hover && `${decoratedBsPrefix}-hover`);
const table = /*#__PURE__*/_jsx("table", { ...props,
className: classes,
ref: ref
});
if (responsive) {
let responsiveClass = `${decoratedBsPrefix}-responsive`;
if (typeof responsive === 'string') {
responsiveClass = `${responsiveClass}-${responsive}`;
}
return /*#__PURE__*/_jsx("div", {
className: responsiveClass,
children: table
});
}
return table;
});
export default Table;