import { CardTypes } from '../utils/prop-types' import { HuiThemesPalette } from '../themes/presets' export type CardStyles = { color: string bgColor: string borderColor: string } export const getStyles = ( type: CardTypes, palette: HuiThemesPalette, isShadow?: boolean ): CardStyles => { const colors: { [key in CardTypes]: Omit } = { default: { color: palette.foreground, bgColor: palette.background }, dark: { color: palette.background, bgColor: palette.foreground }, secondary: { color: palette.background, bgColor: palette.secondary }, success: { color: palette.background, bgColor: palette.success }, warning: { color: palette.background, bgColor: palette.warning }, error: { color: palette.background, bgColor: palette.error }, lite: { color: palette.foreground, bgColor: palette.background }, alert: { color: 'white', bgColor: palette.alert }, purple: { color: 'white', bgColor: palette.purple }, violet: { color: 'white', bgColor: palette.violet }, viridian: { color: 'black', bgColor: palette.viridian } } const showBorder = type === 'default' && !isShadow return { ...colors[type], borderColor: showBorder ? palette.border : 'transparent' } }