react-bootstrap
Version:
Bootstrap 5 components built with React
43 lines (42 loc) • 1.25 kB
JavaScript
"use client";
import classNames from 'classnames';
import * as React from 'react';
import { useContext } from 'react';
import { useBootstrapPrefix } from './ThemeProvider';
import AccordionCollapse from './AccordionCollapse';
import AccordionItemContext from './AccordionItemContext';
import { jsx as _jsx } from "react/jsx-runtime";
const AccordionBody = /*#__PURE__*/React.forwardRef(({
// 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',
bsPrefix,
className,
onEnter,
onEntering,
onEntered,
onExit,
onExiting,
onExited,
...props
}, ref) => {
bsPrefix = useBootstrapPrefix(bsPrefix, 'accordion-body');
const {
eventKey
} = useContext(AccordionItemContext);
return /*#__PURE__*/_jsx(AccordionCollapse, {
eventKey: eventKey,
onEnter: onEnter,
onEntering: onEntering,
onEntered: onEntered,
onExit: onExit,
onExiting: onExiting,
onExited: onExited,
children: /*#__PURE__*/_jsx(Component, {
ref: ref,
...props,
className: classNames(className, bsPrefix)
})
});
});
AccordionBody.displayName = 'AccordionBody';
export default AccordionBody;