Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Navigation improvements #563

Merged
merged 32 commits into from
Aug 11, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
c635331
chore: use emotion to style sidebar
jerelmiller Aug 7, 2020
799b78c
chore: fix prop type warning
jerelmiller Aug 7, 2020
b17e01c
refactor: use location to determine if page has changed
jerelmiller Aug 7, 2020
688861a
refactor: use location.pathname to determine if on current page
jerelmiller Aug 7, 2020
58bf88d
refactor: use location to determine current page
jerelmiller Aug 7, 2020
b0b24b0
style: add curlys around if condition
jerelmiller Aug 7, 2020
3f61d5c
fix: some tightening of the sidebar
jerelmiller Aug 7, 2020
61c9896
refactor: move ul to NavigationItems component
jerelmiller Aug 7, 2020
9af0f49
refactor(NavigationItems): use divs as wrapper instead of ul
jerelmiller Aug 7, 2020
9e0147b
refactor: only apply breadcrumb/current page styles depending on how …
jerelmiller Aug 7, 2020
c798f13
chore: rename className
jerelmiller Aug 7, 2020
c76c91a
fix: add background for current page
jerelmiller Aug 7, 2020
34c5fd4
fix: better alignment of background with its parent
jerelmiller Aug 7, 2020
32ac1ae
fix: always render hover color + only change text on dark mode
jerelmiller Aug 7, 2020
5f03ee8
chore: remove unused variables
jerelmiller Aug 7, 2020
3e44395
chore: shorten margin on sidebar
jerelmiller Aug 7, 2020
6e473ea
refactor: extract common variables
jerelmiller Aug 7, 2020
ddd6107
refactor: extract condition for determining when to render nav item
jerelmiller Aug 7, 2020
91c2854
fix: move chevrons to right of the link
jerelmiller Aug 7, 2020
e626b1e
fix: thinner chevrons
jerelmiller Aug 7, 2020
c8a69b6
fix: show chevrons for top level nav items
jerelmiller Aug 7, 2020
71d309f
fix: ensure header covers up selected nav item
jerelmiller Aug 9, 2020
ff98df6
chore: move MobileHeader styles to emotion
jerelmiller Aug 9, 2020
48b65ff
fix: use HamburgerMenu from the theme
jerelmiller Aug 9, 2020
5c46e39
fix: better mobile menu
jerelmiller Aug 9, 2020
641f057
fix: close mobile nav after navigating to a new page
jerelmiller Aug 9, 2020
de74639
fix: dont open links on home page
jerelmiller Aug 9, 2020
e7fc9ad
fix: match font weight on selected top-level nav item
jerelmiller Aug 9, 2020
2c62bd3
chore: remove partial link match styling
jerelmiller Aug 9, 2020
d00e2df
fix: only toggle current page if active
jerelmiller Aug 9, 2020
3b9ba0c
chore: use useMatch to determine current page
jerelmiller Aug 9, 2020
04f402d
fix: use SearchInput from gatsby theme in nav
jerelmiller Aug 9, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 0 additions & 30 deletions src/components/HamburgerMenu.js

This file was deleted.

36 changes: 0 additions & 36 deletions src/components/HamburgerMenu.module.scss

This file was deleted.

49 changes: 35 additions & 14 deletions src/components/MobileHeader.js
Original file line number Diff line number Diff line change
@@ -1,43 +1,64 @@
import React, { useState } from 'react';
import PropTypes from 'prop-types';
import { css } from '@emotion/core';
import { Link } from 'gatsby';
import cx from 'classnames';
import Logo from './Logo';
import Navigation from './Navigation';
import HamburgerMenu from './HamburgerMenu';
import SearchInput from './SearchInput';
import styles from './MobileHeader.module.scss';
import { HamburgerMenu, SearchInput } from '@newrelic/gatsby-theme-newrelic';

const MobileHeader = ({ className, isOpen, toggle }) => {
const [searchTerm, setSearchTerm] = useState('');

return (
<header
data-swiftype-index={false}
className={cx(styles.container, className)}
className={className}
css={css`
position: relative;
padding: 0 2rem;

width: 100vw;
`}
>
<div className={styles.menuBar}>
<div
css={css`
display: flex;
align-items: center;
justify-content: space-between;
height: var(--height-mobile-nav-bar);
`}
>
<Link to="/">
<Logo className={styles.logo} />
<Logo
css={css`
display: block;
width: 150px;
`}
/>
</Link>

<HamburgerMenu
className={styles.hamburgerMenu}
toggle={toggle}
isOpen={isOpen}
/>
<HamburgerMenu onToggle={toggle} isOpen={isOpen} />
</div>

{isOpen && (
<>
<SearchInput
className={styles.searchInput}
placeholder="Search developer docs"
onClear={() => setSearchTerm('')}
onChange={(e) => setSearchTerm(e.target.value)}
value={searchTerm}
/>
<Navigation searchTerm={searchTerm} className={styles.navigation} />
<Navigation
searchTerm={searchTerm}
css={css`
font-size: 1rem;
padding: 1.5rem 0rem;
height: calc(
100vh -
(var(--height-mobile-nav-bar) + var(--height-global-header))
);
`}
/>
</>
)}
</header>
Expand Down
27 changes: 0 additions & 27 deletions src/components/MobileHeader.module.scss

This file was deleted.

12 changes: 5 additions & 7 deletions src/components/Navigation.js
Original file line number Diff line number Diff line change
Expand Up @@ -45,13 +45,11 @@ const Navigation = ({ className, searchTerm }) => {
role="navigation"
aria-label="Navigation"
>
<ul className={styles.listNav}>
<NavigationItems
searchTerm={searchTermSanitized}
pages={pages}
filteredPageNames={filteredPageNames}
/>
</ul>
<NavigationItems
searchTerm={searchTermSanitized}
pages={pages}
filteredPageNames={filteredPageNames}
/>
</nav>
);
};
Expand Down
5 changes: 0 additions & 5 deletions src/components/Navigation.module.scss
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,6 @@
font-size: 0.875rem;
}

.listNav {
list-style: none;
padding-left: 0;
}

.emptyResults {
font-size: 0.875rem;
padding-top: 1rem;
Expand Down
Loading