@wordpress/components
Version:
UI components for WordPress.
37 lines (34 loc) • 913 B
JavaScript
import { cx as _cx } from "emotion";
/**
* WordPress dependencies
*/
import { useMemo } from '@wordpress/element';
/**
* Internal dependencies
*/
import { useContextSystem } from '../context';
import { useSurface } from '../surface';
import * as styles from './styles';
/**
* @param {import('../context').ViewOwnProps<import('./types').CardProps, 'div'>} props
*/
export function useCard(props) {
const {
className,
elevation = 2,
isBorderless = false,
isRounded = true,
...otherProps
} = useContextSystem(props, 'Card');
const classes = useMemo(() => {
return _cx(styles.Card, isBorderless && styles.borderless, isRounded && styles.rounded, className);
}, [className, isBorderless, isRounded]);
const surfaceProps = useSurface({ ...otherProps,
className: classes
});
return { ...surfaceProps,
elevation,
isRounded
};
}
//# sourceMappingURL=hook.js.map