You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
810 B
44 lines
810 B
3 years ago
|
|
||
|
# @styled-system/variant
|
||
|
|
||
|
Read the docs: https://styled-system.com/variants
|
||
|
|
||
|
## Usage
|
||
|
|
||
|
```js
|
||
|
import styled from 'styled-components'
|
||
|
import variant from '@styled-system/variant'
|
||
|
|
||
|
const Button = styled('button')(
|
||
|
variant({
|
||
|
variants: {
|
||
|
primary: {
|
||
|
color: 'white',
|
||
|
bg: 'primary',
|
||
|
':hover': {
|
||
|
bg: 'black',
|
||
|
}
|
||
|
},
|
||
|
secondary: {
|
||
|
color: 'white',
|
||
|
bg: 'secondary',
|
||
|
':hover': {
|
||
|
bg: 'black',
|
||
|
}
|
||
|
},
|
||
|
}
|
||
|
})
|
||
|
)
|
||
|
|
||
|
// <Button variant='primary' />
|
||
|
// <Button variant='secondary' />
|
||
|
```
|
||
|
|
||
|
## Options
|
||
|
|
||
|
- `variants`: object of theme-aware variant styles with user-defined shape
|
||
|
- `prop`: (default `variant`) custom prop name for variant
|
||
|
- `scale`: optional theme key for adding variants to the theme object
|
||
|
|
||
|
MIT License
|