Tweak market maker

This commit is contained in:
Fred Carlsen
2018-12-18 14:05:10 +01:00
parent ee0a226c43
commit 55589698cf
7 changed files with 69 additions and 14 deletions

View File

@@ -31,7 +31,7 @@ interface BorderProps {
export const Banner: React.StatelessComponent<Props> = (props: Props) => {
const { heading, subline, mainCta, secondaryCta } = props;
return (
<CustomSection bgColor="light" isFlex={true} flexBreakpoint="900px" paddingMobile="120px 0">
<CustomSection bgColor={colors.brandDark} isFlex={true} flexBreakpoint="900px" paddingMobile="120px 0">
<Border />
<Border isBottom={true} />

View File

@@ -73,6 +73,12 @@ const ButtonBase =
outline: none;
transition: background-color 0.35s, border-color 0.35s;
// @todo Refactor to use theme props
${props => props.bgColor === 'dark' && `
background-color: ${colors.brandDark};
color: ${colors.white};
`}
svg {
margin-left: 9px;
transition: transform 0.5s;

View File

@@ -19,6 +19,7 @@ interface Props {
isWithMargin?: boolean;
icon: string;
iconSize?: 'medium' | 'large' | number;
fontSize?: 'default' | 'medium' | number;
title: string;
titleSize?: 'small' | 'default' | number;
description: React.ReactNode | string;
@@ -40,7 +41,7 @@ export const Definition = (props: Props) => (
</Heading>
{typeof props.description === 'string' ? (
<Paragraph isMuted={true}>{props.description}</Paragraph>
<Paragraph isMuted={true} size={props.fontSize || 'default'}>{props.description}</Paragraph>
) : (
<>{props.description}</>
)}
@@ -107,6 +108,9 @@ const TextWrap =
}
li {
color: ${props => props.theme.paragraphColor};
font-size: ${props => `var(--${props.fontSize || 'default'}Paragraph)`};
font-weight: 300;
list-style: disc;
opacity: 0.75;
line-height: 1.444444444;

View File

@@ -5,6 +5,8 @@ import {addFadeInAnimation} from 'ts/@next/constants/animations';
interface Props {
title: string;
maxWidth?: string;
maxWidthHeading?: string;
isLargeTitle?: boolean;
isFullWidth?: boolean;
description: string;
@@ -21,8 +23,8 @@ export const Hero = (props: Props) => (
</Content>
}
<Content width={props.figure ? '546px' : '678px'}>
<Title isLarge={props.isLargeTitle}>
<Content width={props.maxWidth ? props.maxWidth : (props.figure ? '546px' : '678px')}>
<Title isLarge={props.isLargeTitle} maxWidth={props.maxWidthHeading}>
{props.title}
</Title>
@@ -66,11 +68,14 @@ const Wrap = styled.div<{ isCentered?: boolean; isFullWidth?: boolean }>`
}
`;
const Title = styled.h1<{ isLarge?: any }>`
const Title = styled.h1<{ isLarge?: any; maxWidth?: string }>`
font-size: ${props => props.isLarge ? '80px' : '50px'};
font-weight: 300;
line-height: 1.1;
margin-left: auto;
margin-right: auto;
margin-bottom: 30px;
max-width: ${props => props.maxWidth};
${addFadeInAnimation('0.5s')}
@media (max-width: 1024px) {
@@ -85,9 +90,10 @@ const Title = styled.h1<{ isLarge?: any }>`
const Description = styled.p`
font-size: 22px;
line-height: 31px;
font-weight: 300;
padding: 0;
margin-bottom: 50px;
color: rgba(255, 255, 255, 0.75);
color: ${props => props.theme.introTextColor};
${addFadeInAnimation('0.5s', '0.15s')}
@media (max-width: 1024px) {

View File

@@ -24,6 +24,7 @@ export interface ThemeValuesInterface {
bgColor: string;
darkBgColor?: string;
lightBgColor: string;
introTextColor: string;
textColor: string;
paragraphColor: string;
linkColor: string;
@@ -48,6 +49,7 @@ const GLOBAL_THEMES: ThemeInterface = {
bgColor: '#000000',
darkBgColor: '#111A19',
lightBgColor: '#003831',
introTextColor: 'rgba(255, 255, 255, 0.75)',
textColor: '#FFFFFF',
paragraphColor: '#FFFFFF',
linkColor: colors.brandLight,
@@ -63,7 +65,9 @@ const GLOBAL_THEMES: ThemeInterface = {
},
light: {
bgColor: '#FFFFFF',
lightBgColor: '#003831',
lightBgColor: '#F3F6F4',
darkBgColor: '#003831',
introTextColor: 'rgba(92, 92, 92, 0.87)',
textColor: '#000000',
paragraphColor: '#474747',
linkColor: colors.brandDark,
@@ -81,6 +85,7 @@ const GLOBAL_THEMES: ThemeInterface = {
gray: {
bgColor: '#e0e0e0',
lightBgColor: '#003831',
introTextColor: 'rgba(92, 92, 92, 0.87)',
textColor: '#000000',
paragraphColor: '#777777',
linkColor: colors.brandDark,

View File

@@ -0,0 +1,30 @@
<svg width="82" height="82" viewBox="0 0 82 82" fill="none" xmlns="http://www.w3.org/2000/svg">
<mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="82" height="82">
<path d="M41 79.9333C62.5023 79.9333 79.9333 62.5023 79.9333 41C79.9333 19.4977 62.5023 2.06665 41 2.06665C19.4977 2.06665 2.06665 19.4977 2.06665 41C2.06665 62.5023 19.4977 79.9333 41 79.9333Z" fill="#00AE99" stroke="#00AE99" stroke-width="3" stroke-miterlimit="10"/>
</mask>
<g mask="url(#mask0)">
<ellipse cx="41" cy="76" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="41" cy="71" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="41" cy="66" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="41" cy="61" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="41" cy="56" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<circle cx="41" cy="50" r="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<circle cx="41" cy="44" r="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="18" cy="89" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="18" cy="84" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="18" cy="79" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="18" cy="74" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="18" cy="69" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<circle cx="18" cy="63" r="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<circle cx="18" cy="57" r="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="64" cy="70" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="64" cy="64" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="64" cy="59" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="64" cy="54" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="64" cy="49" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<ellipse cx="64" cy="44" rx="8" ry="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<circle cx="64" cy="38" r="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<circle cx="64" cy="32" r="8" fill="#F3F6F4" stroke="#00AE99" stroke-width="3"/>
<circle cx="41" cy="41" r="38.9333" stroke="#00AE99" stroke-width="3"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -1,11 +1,12 @@
import * as _ from 'lodash';
import * as React from 'react';
import {Hero} from 'ts/@next/components/hero';
import { colors } from 'ts/style/colors';
import { Banner } from 'ts/@next/components/banner';
import { Button } from 'ts/@next/components/button';
import { Definition } from 'ts/@next/components/definition';
import { Hero } from 'ts/@next/components/hero';
import { Icon } from 'ts/@next/components/icon';
import { SiteWrap } from 'ts/@next/components/siteWrap';
@@ -25,8 +26,8 @@ const offersData = [
title: 'Market Making Compensation',
description: (
<ul>
<li>Receive an infrastructure grant of $20,000+ for completing onboarding</li>
<li>Earn an additional $5,000 by referring other market makers to the Program</li>
<li>Receive an infrastructure grant of $20,000+ for completing onboarding*</li>
<li>Earn an additional $5,000 by referring other market makers to the Program*</li>
</ul>
),
},
@@ -43,8 +44,10 @@ export class NextMarketMaker extends React.Component {
};
public render(): React.ReactNode {
return (
<SiteWrap theme="dark">
<SiteWrap theme="light">
<Hero
maxWidth="865px"
maxWidthHeading="715px"
isLargeTitle={false}
isFullWidth={false}
title="Bring liquidity to the exchanges of the future"
@@ -53,7 +56,7 @@ export class NextMarketMaker extends React.Component {
/>
<Section
bgColor="dark"
bgColor="light"
isFlex={true}
maxWidth="1170px"
>
@@ -79,7 +82,7 @@ export class NextMarketMaker extends React.Component {
title="Low Cost"
titleSize="small"
description="Pay no fees on orders except for bulk cancellations"
icon="secureTrading"
icon="low-cost"
iconSize="medium"
isInline={true}
/>
@@ -94,6 +97,7 @@ export class NextMarketMaker extends React.Component {
description={item.description}
isInlineIcon={true}
iconSize={240}
fontSize="medium"
/>
))}
</Section>
@@ -120,7 +124,7 @@ export class NextMarketMaker extends React.Component {
const HeroActions = () => (
<>
<Button href="https://github.com/0xProject/0x-launch-kit" isInline={true}>
<Button href="https://github.com/0xProject/0x-launch-kit" bgColor="dark" isInline={true}>
Get Started
</Button>
</>