UNPKG

@stratakit/react

Version:

A React component library for StrataKit

45 lines (44 loc) 1.43 kB
import { jsx, jsxs } from "react/jsx-runtime"; import * as React from "react"; import { Icon } from "@stratakit/foundations"; import { unstable_AccordionItem as SkAccordionItem } from "@stratakit/structures"; import { useCompatProps } from "./~utils.js"; const ExpandableBlock = React.forwardRef((props, forwardedRef) => { const { isExpanded, onToggle, children, title, endIcon, // PARTIALLY IMPLEMENTED disabled, // PARTIALLY IMPLEMENTED // biome-ignore-start lint/correctness/noUnusedVariables: NOT IMPLEMENTED status, size, styleType, caption, // biome-ignore-end lint/correctness/noUnusedVariables: NOT IMPLEMENTED ...rest } = useCompatProps(props); return /* @__PURE__ */ jsxs( SkAccordionItem.Root, { ...rest, ref: forwardedRef, open: isExpanded, setOpen: onToggle, children: [ /* @__PURE__ */ jsxs(SkAccordionItem.Header, { children: [ /* @__PURE__ */ jsx(SkAccordionItem.Marker, {}), /* @__PURE__ */ jsx(SkAccordionItem.Button, { disabled, children: /* @__PURE__ */ jsx(SkAccordionItem.Label, { children: title }) }), endIcon ? /* @__PURE__ */ jsx(SkAccordionItem.Decoration, { children: /* @__PURE__ */ jsx(Icon, { render: endIcon }) }) : null ] }), /* @__PURE__ */ jsx(SkAccordionItem.Content, { children }) ] } ); }); export { ExpandableBlock };