You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

40 lines
1.2 KiB

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}-${typeof striped === 'string' ? `striped-${striped}` : '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;