Skip to content

Commit

Permalink
feat: update Avatar
Browse files Browse the repository at this point in the history
  • Loading branch information
kostasdano committed Apr 18, 2024
1 parent 979782d commit 60246b7
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 7 deletions.
15 changes: 8 additions & 7 deletions src/components/Avatar/Avatar.style.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { rem } from 'theme/utils';
import type { AvatarTokens } from './Avatar.tokens';
import { getAvatarTokens, parseAvatarIconSize } from './Avatar.tokens';
import type { AvatarColors, AvatarProps, AvatarSizes } from './Avatar.types';
import { avatarColorToSemColor } from './constants';
import type { Theme } from '../../theme';
import { flex } from '../../theme/functions';
import { generateStylesFromTokens } from 'components/Typography/utils';
Expand All @@ -18,7 +19,7 @@ export const iconStyles =
width: ${rem(parseFloat(tokens(`size.${size}` as AvatarTokens, parseAvatarIconSize)))};
height: ${rem(parseFloat(tokens(`size.${size}` as AvatarTokens, parseAvatarIconSize)))};
path {
fill: ${tokens(`textColor.${color}` as AvatarTokens)};
fill: ${theme.tokens.colors.get(avatarColorToSemColor[color].text)};
}
`;
};
Expand All @@ -32,12 +33,12 @@ export const avatarStyle =
${flex};
width: ${tokens(`size.${size}` as const)};
height: ${tokens(`size.${size}` as const)};
border-radius: ${tokens('borderRadius')};
border: ${tokens('borderWidth')} solid;
border-color: ${tokens(`borderColor.${color}` as const)};
border-radius: ${theme.dimension.borderRadius.get('circle')};
border: ${theme.dimension.borderWidth.get('default')} solid;
border-color: ${theme.tokens.colors.get(avatarColorToSemColor[color].border)};
box-sizing: border-box;
background-color: ${tokens(`backgroundColor.${color}` as const)};
color: ${tokens(`textColor.${color}` as const)};
background-color: ${theme.tokens.colors.get(avatarColorToSemColor[color].fill)};
color: ${theme.tokens.colors.get(avatarColorToSemColor[color].text)};
overflow: hidden;
position: relative;
align-items: center;
Expand All @@ -48,7 +49,7 @@ export const avatarStyle =
${generateStylesFromTokens(tokens(`label.${size}` as const))};
img {
border-radius: ${tokens('borderRadius')};
border-radius: ${theme.dimension.borderRadius.get('circle')};
width: 100%;
height: 100%;
}
Expand Down
31 changes: 31 additions & 0 deletions src/components/Avatar/constants.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
import type { SemanticColorsKey } from 'theme/tokens/semantic/colors';

import type { AvatarColors } from './Avatar.types';

export const avatarColorToSemColor: Record<AvatarColors, Record<string, SemanticColorsKey>> = {
blue: {
border: 'palette.primaryAlt.contrast',
fill: 'palette.primaryAlt.base',
text: 'textColor.default.active',
},
red: {
border: 'palette.error.contrast',
fill: 'palette.error.base',
text: 'textColor.default.error',
},
purple: {
border: 'palette.upsell.contrast',
fill: 'palette.upsell.base',
text: 'textColor.default.visited',
},
teal: {
border: 'palette.success.contrast',
fill: 'palette.success.base',
text: 'textColor.default.success',
},
orange: {
border: 'palette.warning.contrast',
fill: 'palette.warning.base',
text: 'textColor.default.warning',
},
};

0 comments on commit 60246b7

Please sign in to comment.