import React, { useContext } from "react"; import styled, { ThemeContext } from "styled-components"; import { Link } from "react-router-dom"; import Logo from "./Logo"; import Toggle from "./Toggle"; import Form from "./Form"; const StyledHeader = styled.header` background-color: ${p => p.theme.cardColor}; min-height: 7rem; box-shadow: 0 1rem 2rem 0 rgba(0,0,0,0.1); display: flex; flex-wrap: wrap; align-items: center; padding: 0.5rem 6rem; justify-content: space-between; @media only screen and (max-width: 767px) { padding: 0.5rem 2rem; } & input { font-size: 2rem; } & svg { vertical-align: middle; font-size: 2rem; } @media only screen and (max-width: 600px) { & input { margin-bottom: 5px; padding: 1rem; width: 75%; } & svg { vertical-align: unset; } } & a { margin-top: 0.5rem; } & a:focus { outline: none; } @media only screen and (max-width: 633px) { & form { order: 1; margin-top: 0.7rem; margin-left: auto; margin-right: auto; } } `; const Header = () => { const { id, setTheme } = useContext(ThemeContext); return ( <StyledHeader> <Link to="/"> <Logo width='180px' /> </Link> <Form displaySpan={false} /> <Toggle isDark={id === 'dark'} onToggle={setTheme} /> </StyledHeader> ); }; export default Header;