diff options
| author | Armand Philippot <git@armandphilippot.com> | 2023-09-29 21:29:45 +0200 |
|---|---|---|
| committer | Armand Philippot <git@armandphilippot.com> | 2023-11-11 18:14:41 +0100 |
| commit | 4f768afe543bbf9e1857c41d03804f8e37ab3512 (patch) | |
| tree | d751219a147688b5665c51db3c8dbdca1f1345ee /src/components/atoms/lists/list/list-item.tsx | |
| parent | 9128c224c65f8f2a172b22a443ccb4573c7acd90 (diff) | |
refactor(components): rewrite List component
* change `items` prop to children
* replace `kind` prop with `isHierarchical`, `isOrdered` & `isInline` props
* add `hideMarker` prop
* add `spacing` prop to control item spacing
* move lists styles to Sass placeholders to avoid repeats because of
headless WordPress
Diffstat (limited to 'src/components/atoms/lists/list/list-item.tsx')
| -rw-r--r-- | src/components/atoms/lists/list/list-item.tsx | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/components/atoms/lists/list/list-item.tsx b/src/components/atoms/lists/list/list-item.tsx new file mode 100644 index 0000000..3438eac --- /dev/null +++ b/src/components/atoms/lists/list/list-item.tsx @@ -0,0 +1,23 @@ +import type { FC, LiHTMLAttributes } from 'react'; +import styles from './list.module.scss'; + +export type ListItemProps = LiHTMLAttributes<HTMLElement>; + +/** + * ListItem component + * + * Used it inside a `<List />` component. + */ +export const ListItem: FC<ListItemProps> = ({ + children, + className = '', + ...props +}) => { + const itemClass = `${styles.item} ${className}`; + + return ( + <li {...props} className={itemClass}> + {children} + </li> + ); +}; |
