forked from esphome/esphome-devices
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Header.js
83 lines (71 loc) · 1.64 KB
/
Header.js
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
import React from "react";
import PropTypes from "prop-types";
import styled from "@emotion/styled";
import { GiHamburgerMenu } from "react-icons/gi";
import { useStaticQuery, graphql } from "gatsby";
const Container = styled.header`
display: flex;
justify-content: flex-start;
align-items: center;
height: 40px;
margin-bottom: 24px;
h2 {
margin: 0;
border: none;
padding: 0;
font-size: 18px;
@media (max-width: 359px) {
font-size: 14px;
}
}
button {
border: none;
background: none;
cursor: pointer;
margin-right: 16px;
display: flex;
justify-content: flex-start;
align-items: center;
}
@media (min-width: 780px) {
display: none;
}
`;
export default function Header({ handleMenuOpen }) {
const { site } = useStaticQuery(
graphql`
query {
site {
siteMetadata {
siteTitle
}
}
}
`
);
const { siteTitle } = site.siteMetadata;
return (
<Container>
<script
async
src="https://www.googletagmanager.com/gtag/js?id=G-0QG5MYES89"
></script>
<script
dangerouslySetInnerHTML={{
__html: `
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-0QG5MYES89');`,
}}
></script>
<button aria-label="Open sidebar" type="button" onClick={handleMenuOpen}>
<GiHamburgerMenu size={23} aria-hidden="true" />
</button>
<h2>{siteTitle}</h2>
</Container>
);
}
Header.propTypes = {
handleMenuOpen: PropTypes.func.isRequired,
};