All files / src/components/Header Header.jsx

91.66% Statements 44/48
33.33% Branches 1/3
100% Functions 1/1
91.66% Lines 44/48

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 491x 1x 1x 1x 1x 1x 1x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x         7x 7x 7x 7x 7x 7x 7x 7x 1x 1x  
import React from "react";
import "./Header.css";
import c2si from "../../assets/c2si.png";
import { Link } from "react-router-dom";
import { useTheme } from "../../context/ThemeContext";
 
const Header = () => {
  const { isDark, toggleMode } = useTheme();
 
  return (
    <div className="header">
      <div className="head">
        <div className="img">
          <img src={c2si} alt="C2SI" />
        </div>
        <div className="login">
          <button
            className="mode-toggle"
            onClick={toggleMode}
            title={isDark ? "Switch to light mode" : "Switch to dark mode"}
            aria-label="Toggle dark/light mode"
          >
            {isDark ? (
              <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
                <circle cx="12" cy="12" r="5" />
                <line x1="12" y1="1" x2="12" y2="3" />
                <line x1="12" y1="21" x2="12" y2="23" />
                <line x1="4.22" y1="4.22" x2="5.64" y2="5.64" />
                <line x1="18.36" y1="18.36" x2="19.78" y2="19.78" />
                <line x1="1" y1="12" x2="3" y2="12" />
                <line x1="21" y1="12" x2="23" y2="12" />
                <line x1="4.22" y1="19.78" x2="5.64" y2="18.36" />
                <line x1="18.36" y1="5.64" x2="19.78" y2="4.22" />
              </svg>
            ) : (
              <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
                <path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z" />
              </svg>
            )}
          </button>
          <Link to="/login">Login</Link>
        </div>
      </div>
    </div>
  );
};
 
export default Header;