Passed
Push — development ( 8e8ffd...1af938 )
by Peter
18:46 queued 06:25
created

Header.tsx ➔ Header   A

Complexity

Conditions 1

Size

Total Lines 31
Code Lines 28

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 28
dl 0
loc 31
ccs 2
cts 2
cp 1
crap 1
rs 9.208
c 0
b 0
f 0
1
import { useSelector } from 'react-redux';
2
import { RootState } from '../redux/store/store';
3
4
import { Link } from 'react-router-dom';
5
import logo from '../assets/images/Logo.webp';
6
import { Navbar } from "flowbite-react";
7
import Logout from './Logout';
8
import Login from './Login';
9
10
export default function Header() {
11
12 4
    const {isLoggedIn, role} = useSelector((state: RootState) =>  state.auth);
13
14 2
    return (
15
        <Navbar className="bg-purple-100 max-w-4xl px-2 py-2.5 sm:px-4 rounded mx-auto md:mb-10 md:pb-5 md:pt-5" data-testid="header"fluid rounded>
16
        
17
        <Navbar.Brand as={Link} to="/">
18
                <img src={logo} className="h-8" alt="Logo" />
19
                <span className="self-center text-2xl font-semibold whitespace-nowrap">Svenska Elsparkcyklar AB</span>
20
            </Navbar.Brand>
21
            <Navbar.Toggle />
22
23
        <Navbar.Collapse>
24
            <Navbar.Link as={Link} to="/">
25
            Home
26
            </Navbar.Link>
27
            { role =="admin" && <Navbar.Link as={Link} to="/adminstartpage">Adminsida</Navbar.Link>}
28
            { isLoggedIn && 
29
                <>
30
                    <Navbar.Link as={Link} to="/customerstartpage">Kundsida</Navbar.Link>
31
                    <Logout className="px-1 py-0.5" size="xs"></Logout>
32
                </>
33
            }
34
            {
35
                !isLoggedIn &&
36
                <Login className="px-1 py-0.5" size="xs"/>
37
            }
38
            </Navbar.Collapse>
39
        </Navbar>
40
      )
41
};
42