@vertisanpro/flowbite-react
Version:
Non-Official React components built for Flowbite and Tailwind CSS
16 lines (15 loc) • 524 B
JavaScript
'use client';
import React, { useState } from 'react';
import { AccordionPanelContext } from './AccordionPanelContext';
export const AccordionPanel = ({ children, ...props }) => {
const { alwaysOpen } = props;
const [isOpen, setOpen] = useState(props.isOpen);
const provider = alwaysOpen
? {
...props,
isOpen,
setOpen: () => setOpen(!isOpen),
}
: props;
return React.createElement(AccordionPanelContext.Provider, { value: provider }, children);
};