UNPKG

@kubit-ui-web/react-components

Version:

Kubit React Components is a customizable, accessible library of React web components, designed to enhance your application's user experience

73 lines 3.23 kB
import { AvatarBackgroundColor, AvatarContentType } from '../../../../../components/avatar/types/content'; import { BORDERS, RADIUS } from '../../../../../designSystem/kubitWireframe/commons/foundations/borders'; import { SIZES } from '../../../../../designSystem/kubitWireframe/commons/foundations/sizes'; import { SPACINGS } from '../../../../../designSystem/kubitWireframe/commons/foundations/spacings'; import { FONT_WEIGHT, TEXT_ALIGN, } from '../../../../../designSystem/kubitWireframe/commons/foundations/typography'; import { TextVariantType } from '../../../../kubit/components/text/variants'; import { shadowAfterStyles, transformShadow } from '../../../utils/wireframe'; import { AvatarSize } from './variants'; const getContainerBackgroundColor = COLORS => ({ containerBackgroundColor: { [AvatarBackgroundColor.COLOR_DEFAULT]: { backgroundColor: COLORS.NEUTRAL.color_neutral_bg_250, contentColor: COLORS.NEUTRAL.color_neutral_icon_50, borderColor: COLORS.NEUTRAL.color_neutral_border_50, }, [AvatarBackgroundColor.COLOR_RED]: { backgroundColor: COLORS.NEUTRAL.color_neutral_bg_250, contentColor: COLORS.ACCENT.color_neutral_icon_50, borderColor: COLORS.NEUTRAL.color_neutral_border_50, }, [AvatarBackgroundColor.COLOR_WHITE]: { backgroundColor: COLORS.NEUTRAL.color_neutral_bg_250, contentColor: COLORS.NEUTRAL.color_neutral_icon_50, borderColor: COLORS.NEUTRAL.color_neutral_border_50, }, }, }); const commonLargeTokens = COLORS => ({ linkContainer: { width: SPACINGS.spacing_600, height: SPACINGS.spacing_600, border_radius: RADIUS.radius_300, overflow: 'visible', ...transformShadow(RADIUS.radius_300), ...shadowAfterStyles(RADIUS.radius_300, COLORS.BRAND.color_brand_bg_50, SPACINGS.spacing_50), }, avatarContainer: { width: SPACINGS.spacing_600, height: SPACINGS.spacing_600, max_width: SPACINGS.spacing_600, max_height: SPACINGS.spacing_600, border_radius: RADIUS.radius_300, }, }); export const getAvatarStyles = (COLORS) => { return { [AvatarSize.LARGE]: { [AvatarContentType.WITH_ICON]: { ...commonLargeTokens(COLORS), containerBorderWidth: BORDERS.border_50, ...getContainerBackgroundColor(COLORS), avatar: { width: SIZES.size_250, height: SIZES.size_250, }, }, [AvatarContentType.WITH_IMAGE]: { ...commonLargeTokens(COLORS), }, [AvatarContentType.WITH_INITIALS]: { ...commonLargeTokens(COLORS), containerBorderWidth: BORDERS.border_50, ...getContainerBackgroundColor(COLORS), initials: { font_variant: TextVariantType.PARAGRAPH_SMALL_EXTENDED, font_weight: FONT_WEIGHT.font_weight_600, text_align: TEXT_ALIGN.center, }, }, }, }; }; //# sourceMappingURL=styles.js.map