Label is a contextual text label built in React. It should primarily be used to display just one or two words.
| Name | Description | Type | Default |
|---|---|---|---|
| as | Determines the HTML element used to render the Lozenge | string |
'span' |
| children* | The inner part of the Lozenge, generally just a string | node |
- |
| color | The primary color scheme of the Lozenge | 'primary' | 'info' | 'success' | 'warning' | 'error' |
'primary' |
| theme | Use this to pass in a theme. It will override any global theme | object |
- |
| type | Determines if the Lozenge has transparency (subtle) or filled (bold) | 'bold' | 'subtle' |
'subtle' |
*required prop
<Label>Primary</Label>
<Label color="info">Info</Label>
<Label color="success">Success</Label>
<Label color="warning" type="bold">Warning</Label>A label has no styling applied to it by default. All styling is done through supplying a theme object, either globally or by using the theme prop. The preferred method is a global theme which can be provided using the ThemeProvider wrapper from styled-components.
The theme object should have a key named label and at the bare minimum have a key named base. If you don't want to use one of allowed color or type simply leave it out of the theme object.
Each color object should be
[color]: {
[type]: {
[style]: ''
},
},The allowed styles you can customize per color -> type are:
background-colorborder-colorcolor
For background-color and border-color you need to leave off the -color portion. It's assumed that you are just setting a color so the key leaves off that part.
const label = {
base: {},
preview: {
subtle: {
background: '',
border: '',
color: '',
},
bold: {},
},
info: {
subtle: {},
bold: {},
},
success: {
subtle: {},
bold: {},
},
warning: {
subtle: {},
bold: {},
},
error: {
subtle: {},
bold: {},
},
};
const theme = {
label,
};const label = {
base: {},
preview: {
subtle: {
background: '',
border: '',
color: '',
},
bold: {},
},
info: {
subtle: {},
bold: {},
},
};
const theme = {
label,
};