From ec6b47ded03af5459b78f6deabeef37bdf852217 Mon Sep 17 00:00:00 2001 From: Fred Carlsen Date: Wed, 28 Nov 2018 17:40:02 +0100 Subject: Add footer --- packages/website/ts/@next/components/footer.tsx | 121 ++++++++++++++++++++++ packages/website/ts/@next/components/siteWrap.tsx | 9 +- 2 files changed, 125 insertions(+), 5 deletions(-) create mode 100644 packages/website/ts/@next/components/footer.tsx (limited to 'packages') diff --git a/packages/website/ts/@next/components/footer.tsx b/packages/website/ts/@next/components/footer.tsx new file mode 100644 index 000000000..cf64d6d38 --- /dev/null +++ b/packages/website/ts/@next/components/footer.tsx @@ -0,0 +1,121 @@ +import * as _ from 'lodash'; +import * as React from 'react'; +import styled from 'styled-components'; + +import { colors } from 'ts/style/colors'; + +import { Button } from './button'; +import { Container } from './container'; +import { Logo } from './logo'; + +export interface FooterInterface { +} + +export interface ColInterface { + width: string | number; +} + +export interface LinkInterface { + text: string; + url: string; + newWindow?: boolean; +} + +export interface LinkRowInterface { + heading: string; + links: LinkInterface[]; +} + +const StyledFooter = styled.footer` + background-color: #181818; + margin-top: 3.529411765rem; // 60px +`; + +const Inner = styled.div` + display: flex; + justify-content: space-between; + padding: 2.352941176rem 3.529411765rem; // 40px 60px + text-align: left; +`; + +const Links = styled.div` + display: flex; + justify-content: space-between; +`; + +const Col = styled.div` + width: ${props => props.width}; +`; + +const Link = styled.a` + color: rgba(255, 255, 255, 0.5); + display: block; + font-size: 16px; + line-height: 20px; + transition: color 0.25s ease-in-out; + text-decoration: none; + + &:hover { + color: rgba(255, 255, 255, 1); + } +`; + +const RowHeading = styled.h1` + color: ${colors.white}; + font-weight: 500; + font-size: 16px; + line-height: 20px; + margin-bottom: 1.25em; +`; + +const linkRows = [ + { + heading: 'Products', + links: [ + { url: '#', text: '0x Instant' }, + { url: '#', text: '0x Launch Kit' }, + ], + }, + { + heading: 'About', + links: [ + { url: '#', text: 'Mission' }, + { url: '#', text: 'Team' }, + { url: '#', text: 'Jobs' }, + { url: '#', text: 'Press Kit' }, + ], + }, + { + heading: 'Community', + links: [ + { url: '#', text: 'Twitter' }, + { url: '#', text: 'Rocket Chat' }, + { url: '#', text: 'Facebook' }, + { url: '#', text: 'Reddit' }, + ], + }, +]; + +const LinkRow: React.StatelessComponent = ({heading, links}) => ( + + {heading} + {_.map(links, (link, index) => {link.text})} + +) + +export const Footer: React.StatelessComponent = ({}) => ( + + + + + + + + + {_.map(linkRows, (row, index) => )} + + + + + +); diff --git a/packages/website/ts/@next/components/siteWrap.tsx b/packages/website/ts/@next/components/siteWrap.tsx index 952364f03..406f724f5 100644 --- a/packages/website/ts/@next/components/siteWrap.tsx +++ b/packages/website/ts/@next/components/siteWrap.tsx @@ -2,7 +2,7 @@ import * as React from 'react'; import styled from 'styled-components'; import { GlobalStyles } from 'ts/@next/constants/globalStyle'; import { Header } from 'ts/@next/components/header'; - +import { Footer } from 'ts/@next/components/footer'; interface Props { @@ -18,10 +18,10 @@ const SiteWrap: React.StatelessComponent = props => {
- { children } + {children}
-
OMG FOOTER
+