@hitachivantara/uikit-react-core
Version:
Core React components for the NEXT Design System.
54 lines (53 loc) • 1.92 kB
JavaScript
;
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const jsxRuntime = require("react/jsx-runtime");
const React = require("react");
const uikitReactUtils = require("@hitachivantara/uikit-react-utils");
const TableContext = require("../TableContext.cjs");
const TableSectionContext = require("../TableSectionContext.cjs");
const TableRow_styles = require("./TableRow.styles.cjs");
const defaultComponent = "tr";
const HvTableRow = React.forwardRef(
function HvTableRow2(props, ref) {
const {
classes: classesProp,
className,
component,
hover = false,
selected = false,
expanded = false,
striped = false,
...others
} = uikitReactUtils.useDefaultProps("HvTableRow", props);
const { classes, cx } = TableRow_styles.useClasses(classesProp);
const tableContext = React.useContext(TableContext.default);
const tableSectionContext = React.useContext(TableSectionContext.TableSectionContext);
const type = tableSectionContext?.type || "body";
const isList = tableContext.variant === "listrow";
const Component = component || tableContext?.components?.Tr || defaultComponent;
return /* @__PURE__ */ jsxRuntime.jsx(
Component,
{
ref,
className: cx(
tableSectionContext.filterClassName,
classes.root,
classes[type],
{
[classes.hover]: hover,
[classes.selected]: selected,
[classes.expanded]: expanded,
[classes.striped]: striped,
[classes.variantList]: isList && type === "body",
[classes.variantListHead]: isList && type === "head"
},
className
),
role: Component === defaultComponent ? null : "row",
...others
}
);
}
);
exports.tableRowClasses = TableRow_styles.staticClasses;
exports.HvTableRow = HvTableRow;