@hitachivantara/uikit-react-core
Version:
UI Kit Core React components.
59 lines (58 loc) • 2.12 kB
JavaScript
import { clsx } from "clsx";
//#region src/Table/hooks/useHvTableStyles.ts
var getTablePropsHook = (props, { instance }) => {
const nextProps = { component: instance.tableComponent };
if (instance.style != null) nextProps.style = instance.style;
if (instance.className != null) nextProps.className = instance.className;
if (instance.classes != null) nextProps.classes = instance.classes;
return [props, nextProps];
};
var getHeaderFooterPropsHook = (props, { column }) => {
const nextProps = {
variant: column.variant,
align: column.align
};
if (column.style != null || column.headerStyle != null) nextProps.style = {
...props.style,
...column.style,
...column.headerStyle
};
if (column.className != null || column.headerClassName != null) nextProps.className = clsx(props.className, column.className, column.headerClassName);
if (column.classes != null || column.headerClasses) nextProps.classes = {
...props.classes,
...column.classes,
...column.headerClasses
};
return [props, nextProps];
};
var getRowPropsHook = (props) => {
return [props, { hover: true }];
};
var getCellPropsHook = (props, { cell }) => {
const nextProps = {
variant: cell.column.variant,
align: cell.column.align
};
if (cell.column.style != null || cell.column.cellStyle != null) nextProps.style = {
...props.style,
...cell.column.style,
...cell.column.cellStyle
};
if (cell.column.className != null || cell.column.cellClassName != null) nextProps.className = clsx(props.className, cell.column.className, cell.column.cellClassName);
if (cell.column.classes != null || cell.column.cellClasses) nextProps.classes = {
...props.classes,
...cell.column.classes,
...cell.column.cellClasses
};
return [props, nextProps];
};
var useHvTableStyles = (hooks) => {
hooks.getTableProps.push(getTablePropsHook);
hooks.getHeaderProps.push(getHeaderFooterPropsHook);
hooks.getFooterProps.push(getHeaderFooterPropsHook);
hooks.getRowProps.push(getRowPropsHook);
hooks.getCellProps.push(getCellPropsHook);
};
useHvTableStyles.pluginName = "useHvTableStyles";
//#endregion
export { useHvTableStyles };