diff options
| author | Armand Philippot <git@armandphilippot.com> | 2023-09-28 18:03:43 +0200 |
|---|---|---|
| committer | Armand Philippot <git@armandphilippot.com> | 2023-10-24 12:25:00 +0200 |
| commit | 837e0e904c40f7b87561c34ca3f49edd5d8d1c52 (patch) | |
| tree | 37835dd2c84ed770b5719152aab0b74d93c0878c /src/components/atoms/images/icons/hamburger-icon/hamburger-icon.tsx | |
| parent | d17d894f398650209c0ddd29502308de8c07bd93 (diff) | |
feat(components): replace icons with a generic Icon component
Sizes are also predefined and can be set using the `size` prop,
so the consumers should no longer adjust the size in CSS.
Diffstat (limited to 'src/components/atoms/images/icons/hamburger-icon/hamburger-icon.tsx')
| -rw-r--r-- | src/components/atoms/images/icons/hamburger-icon/hamburger-icon.tsx | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/components/atoms/images/icons/hamburger-icon/hamburger-icon.tsx b/src/components/atoms/images/icons/hamburger-icon/hamburger-icon.tsx new file mode 100644 index 0000000..edd25ba --- /dev/null +++ b/src/components/atoms/images/icons/hamburger-icon/hamburger-icon.tsx @@ -0,0 +1,25 @@ +import type { FC, HTMLAttributes } from 'react'; +import styles from './hamburger-icon.module.scss'; + +export type HamburgerIconProps = Omit< + HTMLAttributes<HTMLSpanElement>, + 'children' +>; + +/** + * HamburgerIcon component + * + * Render a Hamburger icon. + */ +export const HamburgerIcon: FC<HamburgerIconProps> = ({ + className = '', + ...props +}) => { + const wrapperClass = `${styles.wrapper} ${className}`; + + return ( + <span {...props} className={wrapperClass}> + <span className={styles.icon} /> + </span> + ); +}; |
