@hitachivantara/uikit-react-core
Version:
Core React components for the NEXT Design System.
43 lines (42 loc) • 1.34 kB
JavaScript
import { jsx } from "react/jsx-runtime";
import { forwardRef, useContext } from "react";
import { useDefaultProps } from "@hitachivantara/uikit-react-utils";
import TableContext from "../TableContext.js";
import { TableSectionContext } from "../TableSectionContext.js";
import { useClasses } from "./TableHead.styles.js";
import { staticClasses } from "./TableHead.styles.js";
const tableSectionContext = {
type: "head"
};
const defaultComponent = "thead";
const HvTableHead = forwardRef(
function HvTableHead2(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
}
) });
}
);
export {
HvTableHead,
staticClasses as tableHeadClasses
};