UNPKG

@hitachivantara/uikit-react-core

Version:
59 lines (58 loc) 2.12 kB
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 };