From 81690d1ce508fc40ab90aff3539359efe7a93dba Mon Sep 17 00:00:00 2001 From: Ezekiel Aquino Date: Thu, 13 Dec 2018 16:39:03 +0100 Subject: Removes component, clean up Button.tsx --- packages/website/ts/@next/components/header.tsx | 135 +++++++++--------------- 1 file changed, 48 insertions(+), 87 deletions(-) (limited to 'packages/website/ts/@next/components/header.tsx') diff --git a/packages/website/ts/@next/components/header.tsx b/packages/website/ts/@next/components/header.tsx index 72082ce9f..35d53d21f 100644 --- a/packages/website/ts/@next/components/header.tsx +++ b/packages/website/ts/@next/components/header.tsx @@ -5,7 +5,7 @@ import styled, { withTheme } from 'styled-components'; import { colors } from 'ts/style/colors'; -import { Button, Link, NavLink } from 'ts/@next/components/button'; +import { Button } from 'ts/@next/components/button'; import { DropdownDevelopers } from 'ts/@next/components/dropdowns/dropdown_developers'; import { DropdownProducts } from 'ts/@next/components/dropdowns/dropdown_products'; import { Dropdown } from 'ts/@next/components/dropdowns/mock'; @@ -85,29 +85,6 @@ class HeaderBase extends React.Component { }); } - public getNavItem = (link: NavItem, index: number): React.ReactNode => { - const Wrapper = link.dropdownComponent ? LinkWrap : React.Fragment; - const Subnav = link.dropdownComponent; - - return ( - - - {link.text} - - - {link.dropdownComponent && - - - - } - - ); - } - public render(): React.ReactNode { const { isOpen } = this.state; const { isNavToggled, toggleMobileNav, theme } = this.props; @@ -121,7 +98,7 @@ class HeaderBase extends React.Component { {_.map(navItems, (link, index) => ( - this.getNavItem(link, index) + ))} @@ -143,6 +120,30 @@ class HeaderBase extends React.Component { export const Header = withTheme(HeaderBase); +const NavItem = (props): React.ReactNode => { + const { link, index } = props; + const Wrapper = link.dropdownComponent ? LinkWrap : React.Fragment; + const Subnav = link.dropdownComponent; + + return ( + + + {link.text} + + + {link.dropdownComponent && + + + + } + + ); +}; + const StyledHeader = styled(Section.withComponent('header'))` @media (max-width: 800px) { min-height: ${props => props.isOpen ? '385px' : '70px'}; @@ -156,11 +157,32 @@ const StyledHeader = styled(Section.withComponent('header'))` } `; -const StyledNavLink = styled(NavLink).attrs({ +const LinkWrap = styled.div` + position: relative; + + a { + display: block; + } + + @media (min-width: 800px) { + &:hover > div { + display: block; + visibility: visible; + opacity: 1; + transform: translate3d(0, 0, 0); + transition: opacity 0.35s, transform 0.35s, visibility 0s; + } + } +`; + +const StyledNavLink = styled(ReactRouterLink).attrs({ activeStyle: { opacity: 1 }, })` + color: ${props => props.theme.textColor}; opacity: 0.5; transition: opacity 0.35s; + padding: 15px 0; + margin: 0 30px; &:hover { opacity: 1; @@ -186,56 +208,6 @@ const StyledButtonWrap = styled.div` @media (max-width: 800px) { display: none; } - -/* - @media (max-width: 800px) { - background-color: #022924; - display: flex; - flex-wrap: wrap; - padding: 20px 20px; - - a { - text-align: left; - padding-left: 0; - } - - a + a { - margin-left: 0; - } - } */ -`; - -const MobileProductLinksWrap = styled(StyledButtonWrap)` - display: none; - - @media (max-width: 800px) { - display: block; - background-color: transparent; - flex-direction: column; - - a { - display: block; - width: 100%; - } - } -`; - -const LinkWrap = styled.div` - position: relative; - - a { - display: block; - } - - @media (min-width: 800px) { - &:hover > div { - display: block; - visibility: visible; - opacity: 1; - transform: translate3d(0, 0, 0); - transition: opacity 0.35s, transform 0.35s, visibility 0s; - } - } `; const DropdownWrap = styled.div` @@ -282,17 +254,6 @@ const DropdownWrap = styled.div` } `; -const Nav = styled.div` - @media (max-width: 800px) { - background-color: ${props => props.theme.bgColor}; - position: absolute; - top: 0; - left: 0; - right: 0; - padding-top: 65px; - } -`; - const TradeButton = styled(Button)` padding: 14px 22px; -- cgit v1.2.3