Update sidebar item component

This commit is contained in:
Hazem Krimi
2021-05-28 17:42:18 +01:00
parent 482d0dc2b6
commit a1a21acab3
2 changed files with 10 additions and 1 deletions
+3 -1
View File
@@ -3,6 +3,7 @@ import { Wrapper } from './styles';
type SidebarItemProps = { type SidebarItemProps = {
color?: 'client' | 'productOwner' | 'developer' | 'admin'; color?: 'client' | 'productOwner' | 'developer' | 'admin';
size?: 'small' | 'medium' | 'big'; size?: 'small' | 'medium' | 'big';
selected?: boolean;
text: string; text: string;
onClick: () => void; onClick: () => void;
}; };
@@ -10,11 +11,12 @@ type SidebarItemProps = {
const SidebarItem = ({ const SidebarItem = ({
color, color,
size = 'medium', size = 'medium',
selected = false,
text, text,
onClick, onClick,
}: SidebarItemProps) => { }: SidebarItemProps) => {
return ( return (
<Wrapper color={color} size={size} onClick={onClick}> <Wrapper color={color} size={size} selected={selected} onClick={onClick}>
{text} {text}
</Wrapper> </Wrapper>
); );
+7
View File
@@ -3,6 +3,7 @@ import styled, { css } from 'styled-components';
type WrapperProps = { type WrapperProps = {
color?: 'client' | 'productOwner' | 'developer' | 'admin'; color?: 'client' | 'productOwner' | 'developer' | 'admin';
size?: 'small' | 'medium' | 'big'; size?: 'small' | 'medium' | 'big';
selected?: boolean;
}; };
export const Wrapper = styled.button<WrapperProps>` export const Wrapper = styled.button<WrapperProps>`
@@ -19,6 +20,12 @@ export const Wrapper = styled.button<WrapperProps>`
justify-content: center; justify-content: center;
align-items: center; align-items: center;
${({ selected, theme }) =>
selected &&
css`
border: 2px solid ${theme.colors.white.main};
`}
${({ size }) => { ${({ size }) => {
switch (size) { switch (size) {
case 'small': case 'small':