UNPKG

@gechiui/components

Version:
48 lines (42 loc) 1.01 kB
/** * GeChiUI dependencies */ import { useMemo } from '@gechiui/element'; /** * Internal dependencies */ import { useContextSystem } from '../../ui/context'; import * as styles from '../styles'; import { useCx } from '../../utils/hooks/use-cx'; /** * @param {import('../../ui/context').GeChiUIComponentProps<import('../types').HeaderProps, 'div'>} props */ export function useCardHeader( props ) { const { className, isBorderless = false, isShady = false, size = 'medium', ...otherProps } = useContextSystem( props, 'CardHeader' ); const cx = useCx(); const classes = useMemo( () => cx( styles.Header, styles.borderRadius, styles.borderColor, styles.cardPaddings[ size ], isBorderless && styles.borderless, isShady && styles.shady, // This classname is added for legacy compatibility reasons. 'components-card__header', className ), [ className, isBorderless, isShady, size ] ); return { ...otherProps, className: classes, }; }