diff options
| author | Armand Philippot <git@armandphilippot.com> | 2023-10-03 19:36:03 +0200 |
|---|---|---|
| committer | Armand Philippot <git@armandphilippot.com> | 2023-11-11 18:14:41 +0100 |
| commit | 0e60743d140aff66eca6df712f653ee20f5d4ef3 (patch) | |
| tree | e72bc8bf2314a26ba3c8e27e571d72e203bbf0c8 /src/components/organisms/widgets/social-media.tsx | |
| parent | a3fb0aa94717aafae897ac293488c43a099c0b2b (diff) | |
refactor(components): rewrite SocialLink component
* replace default label with a label prop
* rename name prop to icon prop
Diffstat (limited to 'src/components/organisms/widgets/social-media.tsx')
| -rw-r--r-- | src/components/organisms/widgets/social-media.tsx | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/components/organisms/widgets/social-media.tsx b/src/components/organisms/widgets/social-media.tsx index f9dea58..ddeb09c 100644 --- a/src/components/organisms/widgets/social-media.tsx +++ b/src/components/organisms/widgets/social-media.tsx @@ -3,7 +3,9 @@ import { List, ListItem, SocialLink, type SocialLinkProps } from '../../atoms'; import { Widget, type WidgetProps } from '../../molecules'; import styles from './social-media.module.scss'; -export type Media = SocialLinkProps; +export type Media = Required< + Pick<SocialLinkProps, 'icon' | 'id' | 'label' | 'url'> +>; export type SocialMediaProps = Pick<WidgetProps, 'level' | 'title'> & { media: Media[]; @@ -22,9 +24,9 @@ export const SocialMedia: FC<SocialMediaProps> = ({ media, ...props }) => { * @returns {JSX.Element[]} The social links. */ const getItems = (links: Media[]): JSX.Element[] => - links.map((link, index) => ( - <ListItem key={`media-${index}`}> - <SocialLink name={link.name} url={link.url} /> + links.map(({ id, ...link }) => ( + <ListItem key={id}> + <SocialLink {...link} /> </ListItem> )); |
