Skip to content

Commit 5ab9aa2

Browse files
fsilvacoarturbien
authored andcommitted
feat: add primary prop to ListItem
1 parent f82026e commit 5ab9aa2

File tree

4 files changed

+118
-60
lines changed

4 files changed

+118
-60
lines changed

package-lock.json

+94-51
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/List/List.stories.js

+4-2
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ export default {
2323
export const Default = () => (
2424
<>
2525
<List>
26-
<ListItem>Photos</ListItem>
26+
<ListItem primary>Photos</ListItem>
2727
<ListItem as='a' href='https://expensive.toys' target='_blank'>
2828
Link
2929
</ListItem>
@@ -41,7 +41,9 @@ export const Default = () => (
4141
<ListItem disabled>Razor Leaf</ListItem>
4242
</List>
4343
<List>
44-
<ListItem size='sm'>View</ListItem>
44+
<ListItem primary size='sm'>
45+
View
46+
</ListItem>
4547
<Divider />
4648
<ListItem size='sm'>Paste</ListItem>
4749
<ListItem size='sm'>Paste Shortcut</ListItem>

src/ListItem/ListItem.js

+7-4
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export const StyledListItem = styled.li`
2222
line-height: ${props => blockSizes[props.size]};
2323
color: ${({ theme }) => theme.materialText};
2424
pointer-events: ${({ isDisabled }) => (isDisabled ? 'none' : 'auto')};
25-
25+
font-weight: ${({ primary }) => (primary ? 'bold' : 'normal')};
2626
&:hover {
2727
${({ theme, isDisabled }) =>
2828
!isDisabled &&
@@ -44,6 +44,7 @@ const ListItem = React.forwardRef(function ListItem(props, ref) {
4444
square,
4545
children,
4646
onClick,
47+
primary,
4748
...otherProps
4849
} = props;
4950
// let tabIndex;
@@ -57,6 +58,7 @@ const ListItem = React.forwardRef(function ListItem(props, ref) {
5758
isDisabled={disabled}
5859
square={square}
5960
onClick={disabled ? undefined : onClick}
61+
primary={primary}
6062
// tabIndex={tabIndex}
6163
role='menuitem'
6264
ref={ref}
@@ -73,8 +75,8 @@ ListItem.defaultProps = {
7375
size: 'lg',
7476
square: false,
7577
onClick: null,
76-
77-
children: null
78+
children: null,
79+
primary: false
7880
// tabIndex: undefined
7981
};
8082

@@ -83,7 +85,8 @@ ListItem.propTypes = {
8385
disabled: propTypes.bool,
8486
square: propTypes.bool,
8587
children: propTypes.node,
86-
onClick: propTypes.func
88+
onClick: propTypes.func,
89+
primary: propTypes.bool
8790
// tabIndex: propTypes.number
8891
};
8992

src/ListItem/ListItem.mdx

+13-3
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ menu: Components
55

66
import { Playground, Props } from 'docz';
77

8-
import ListItem from './ListItem'
9-
import List from '../List/List'
10-
import Divider from '../Divider/Divider'
8+
import ListItem from './ListItem';
9+
import List from '../List/List';
10+
import Divider from '../Divider/Divider';
1111

1212
# ListItem
1313

@@ -83,6 +83,16 @@ import Divider from '../Divider/Divider'
8383
</List>
8484
</Playground>
8585

86+
#### Primary
87+
88+
<Playground>
89+
<List>
90+
<ListItem primary>Item 1</ListItem>
91+
<ListItem>Item 2</ListItem>
92+
<ListItem>Item 3</ListItem>
93+
</List>
94+
</Playground>
95+
8696
## API
8797

8898
### Import

0 commit comments

Comments
 (0)