diff options
-rw-r--r-- | packages/dev-tools-pages/ts/components/call_to_action.tsx | 61 | ||||
-rw-r--r-- | packages/dev-tools-pages/ts/pages/compiler.tsx | 4 | ||||
-rw-r--r-- | packages/dev-tools-pages/ts/pages/coverage.tsx | 2 | ||||
-rw-r--r-- | packages/dev-tools-pages/ts/pages/profiler.tsx | 2 | ||||
-rw-r--r-- | packages/dev-tools-pages/ts/pages/trace.tsx | 3 |
5 files changed, 72 insertions, 0 deletions
diff --git a/packages/dev-tools-pages/ts/components/call_to_action.tsx b/packages/dev-tools-pages/ts/components/call_to_action.tsx new file mode 100644 index 000000000..abb92b9d3 --- /dev/null +++ b/packages/dev-tools-pages/ts/components/call_to_action.tsx @@ -0,0 +1,61 @@ +import * as React from 'react'; +import styled from 'styled-components'; + +import { ContextInterface, ThemeContext } from 'ts/context'; +import { media } from 'ts/variables'; + +import { Button } from './button'; +import { Beta } from './typography'; + +const CallToAction: React.StatelessComponent<ContextInterface> = ({ children }) => ( + <ThemeContext.Consumer> + {({ subtitle, tagline, docLink }: ContextInterface) => ( + <StyledCallToAction> + <CallToActionContainer> + <Button as="a" href={docLink} target="_blank" large={true}> + Read the Docs + </Button> + </CallToActionContainer> + {navigator.userAgent !== 'ReactSnap' ? children : null} + </StyledCallToAction> + )} + </ThemeContext.Consumer> +); + +const StyledCallToAction = styled.section` + text-align: center; + padding-top: 0; + padding-bottom: 1rem; + padding-left: 2.5rem; + padding-right: 2.5rem; + min-height: min-content; + max-height: 37.5rem; + height: 20vh; + position: relative; +`; + +const CallToActionContainer = styled.div` + margin: 0 auto; + max-width: 590px; +`; + +const Subtitle = styled.h2` + font-size: 3.75rem; + line-height: 1.16; + margin-bottom: 1.5rem; + + ${media.small` + font-size: 2.25rem; + line-height: 1.1; + margin-bottom: 1.375rem; + `}; +`; + +const Tagline = styled(Beta)` + margin-bottom: 2rem; + ${media.small` + margin-bottom: 1.25rem; + `}; +`; + +export { CallToAction }; diff --git a/packages/dev-tools-pages/ts/pages/compiler.tsx b/packages/dev-tools-pages/ts/pages/compiler.tsx index 0468fd84f..27bbec831 100644 --- a/packages/dev-tools-pages/ts/pages/compiler.tsx +++ b/packages/dev-tools-pages/ts/pages/compiler.tsx @@ -6,6 +6,7 @@ import { context } from 'ts/context/compiler'; import { Base } from 'ts/components/base'; import { Breakout } from 'ts/components/breakout'; +import { CallToAction } from 'ts/components/call_to_action'; import { Code } from 'ts/components/code'; import { Compiler as CompilerComponent } from 'ts/components/compiler'; import { Content } from 'ts/components/content'; @@ -166,6 +167,9 @@ const Compiler: React.StatelessComponent<{}> = () => ( </Breakout> </ContentBlock> </Content> + <div style={{ paddingTop: '5rem' }}> + <CallToAction /> + </div> </Base> ); diff --git a/packages/dev-tools-pages/ts/pages/coverage.tsx b/packages/dev-tools-pages/ts/pages/coverage.tsx index 0e0630a0c..de61a4042 100644 --- a/packages/dev-tools-pages/ts/pages/coverage.tsx +++ b/packages/dev-tools-pages/ts/pages/coverage.tsx @@ -6,6 +6,7 @@ import { context } from 'ts/context/coverage'; import { Base } from 'ts/components/base'; import { Breakout } from 'ts/components/breakout'; +import { CallToAction } from 'ts/components/call_to_action'; import { Code } from 'ts/components/code'; import { Content } from 'ts/components/content'; import { ContentBlock } from 'ts/components/content-block'; @@ -161,6 +162,7 @@ providerEngine.start();`} </Breakout> </ContentBlock> </Content> + <CallToAction /> </Base> ); diff --git a/packages/dev-tools-pages/ts/pages/profiler.tsx b/packages/dev-tools-pages/ts/pages/profiler.tsx index 96fad3495..4ce69ea7b 100644 --- a/packages/dev-tools-pages/ts/pages/profiler.tsx +++ b/packages/dev-tools-pages/ts/pages/profiler.tsx @@ -6,6 +6,7 @@ import { context } from 'ts/context/profiler'; import { Base } from 'ts/components/base'; import { Breakout } from 'ts/components/breakout'; +import { CallToAction } from 'ts/components/call_to_action'; import { Code } from 'ts/components/code'; import { Content } from 'ts/components/content'; import { ContentBlock } from 'ts/components/content-block'; @@ -158,6 +159,7 @@ providerEngine.start();`} </Breakout> </ContentBlock> </Content> + <CallToAction /> </Base> ); diff --git a/packages/dev-tools-pages/ts/pages/trace.tsx b/packages/dev-tools-pages/ts/pages/trace.tsx index 8b2ec8373..465d995b5 100644 --- a/packages/dev-tools-pages/ts/pages/trace.tsx +++ b/packages/dev-tools-pages/ts/pages/trace.tsx @@ -6,6 +6,7 @@ import { context } from 'ts/context/trace'; import { Base } from 'ts/components/base'; import { Breakout } from 'ts/components/breakout'; +import { CallToAction } from 'ts/components/call_to_action'; import { Code } from 'ts/components/code'; import { Content } from 'ts/components/content'; import { ContentBlock } from 'ts/components/content-block'; @@ -126,8 +127,10 @@ providerEngine.addProvider(new RpcSubprovider({rpcUrl: 'http://localhost:8545'}) providerEngine.start();`} </Code> </Breakout> + <p>Stack traces will now be printed whenever your contracts revert!</p> </ContentBlock> </Content> + <CallToAction /> </Base> ); |