borders
Confira as propriedades de estilos destinadas as bordas dos componentes.
como utilizar
Nós temos diversas propriedades disponíveis em relação as bordas:
import {
border,
borderTop,
borderRight,
borderBottom,
borderLeft,
borderColor,
borderTopColor,
borderRightColor,
borderBottomColor,
borderLeftColor,
borderWidth,
borderTopWidth,
borderRightWidth,
borderBottomWidth,
borderLeftWidth,
borderRadius,
borderTopLeftRadius,
borderTopRightRadius,
borderBottomLeftRadius,
borderBottomRightRadius,
} from '@olist/styled-system';
Você pode importar somente a desejada ou pode utilizar a função borders
que
encapsula todas em uma só.
// isso é o equivalente que importar todas as funções acima
import { borders } from '@olist/styled-system';
Para utilizar basta aplicar a função desejada em seu "styled-component"
:
import styled from 'styled-components';
import { borderRadius } from '@olist/styled-system';
const MyComponent = styled.div`
${borderRadius}
`;
// ...
<MyComponent borderRadius="pill" />
<MyComponent bRadius="circle" />
<MyComponent borderRadius="large" />
<MyComponent bRadius="medium" />
<MyComponent borderRadius="small" />
<MyComponent bRadius="1xsmall" />
Você também pode utilizar qualquer valor válido para as propriedades, não há restrição para utilizar somente os valores do tema:
import styled from 'styled-components';
import { borderRadius } from '@olist/styled-system';
const MyComponent = styled.div`
${borderRadius}
`;
// ...
<MyComponent borderRadius="10px" />;
<MyComponent bRadius="10px" />;
Essa lógica é aplicada para qualquer função exportada pelo @olist/styled-system
.
utilização com typescript
Para utilizar as funções de border com typescript é necessário importar o tipo
correspondente a função utilizada do pacote @olist/styled-system
:
Supondo que você está utilizando a função borderRadius
você deve importar o tipo
BordersRadiusProps
:
import styled from 'styled-components';
import { borderColor, type BorderColorProps } from '@olist/styled-system';
const MyComponent = styled.div<BorderColorProps>`
${borderColor}
`;
// ...
<MyComponent borderColor="primary.base" />;
utilizando todas as propriedades de uma só vez
Você pode utilizar a função borders
para aplicar todas as propriedades
de uma só vez, basta importar a função borders
e o seu tipo BordersProps
:
import styled from 'styled-components';
import { borders, type BordersProps } from '@olist/styled-system';
const MyComponent = styled.div<BordersProps>`
${borders}
`;
// ...
<MyComponent
border="1px solid"
borderColor="primary.base"
borderRadius="circle"
/>;
utilizando a função borders
você terá disponível as seguintes propriedades
para utilizar em seu componente:
propriedade | aliases | type |
---|---|---|
border | - | BorderProps |
borders | - | BordersProps |
borderTop | - | BorderTopProps |
borderRight | - | BorderRightProps |
borderBottom | - | BorderBottomProps |
borderLeft | - | BorderLeftProps |
borderColor | - | BorderColorProps |
borderTopColor | - | BorderTopColorProps |
borderRightColor | - | BorderRightColorProps |
borderBottomColor | - | BorderBottomColorProps |
borderLeftColor | - | BorderLeftColorProps |
borderWidth | - | BorderWidthProps |
borderTopWidth | - | BorderTopWidthProps |
borderRightWidth | - | BorderRightWidthProps |
borderBottomWidth | - | BorderBottomWidthProps |
borderLeftWidth | - | BorderLeftWidthProps |
borderRadius | bRadius | BorderRadiusProps |
borderTopLeftRadius | - | BorderTopLeftRadiusProps |
borderTopRightRadius | - | BorderTopRightRadiusProps |
borderBottomLeftRadius | - | BorderBottomLeftRadiusProps |
borderBottomRightRadius | - | BorderBottomRightRadiusProps |