UNPKG

@hitachivantara/uikit-react-core

Version:
31 lines (30 loc) 1.29 kB
import TableContext from "../TableContext.js"; import { TableSectionContext } from "../TableSectionContext.js"; import { useClasses } from "./TableHead.styles.js"; import { useDefaultProps } from "@hitachivantara/uikit-react-utils"; import { forwardRef, useContext } from "react"; import { jsx } from "react/jsx-runtime"; //#region src/Table/TableHead/TableHead.tsx var tableSectionContext = { type: "head" }; var defaultComponent = "thead"; /** * HvTableHead acts as a `thead` element. * `HvTableCell` and `HvTableRow` elements in it inherit header-specific styles */ var HvTableHead = forwardRef(function HvTableHead(props, ref) { const { classes: classesProp, className, component, stickyHeader, ...others } = useDefaultProps("HvTableHead", props); const { classes, cx } = useClasses(classesProp); const tableContext = useContext(TableContext); const Component = component || tableContext?.components?.THead || defaultComponent; return /* @__PURE__ */ jsx(TableSectionContext.Provider, { value: tableSectionContext, children: /* @__PURE__ */ jsx(Component, { className: cx(classes.root, { [classes.stickyHeader]: stickyHeader }, className), ref, role: Component === defaultComponent ? null : "rowgroup", ...others }) }); }); //#endregion export { HvTableHead };