Merge branch 'dev-tools-pages' into feature/variables
This commit is contained in:
34
packages/dev-tools-pages/ts/components/Content.tsx
Normal file
34
packages/dev-tools-pages/ts/components/Content.tsx
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
import * as React from 'react';
|
||||||
|
import styled from 'styled-components';
|
||||||
|
|
||||||
|
import Container from './Container';
|
||||||
|
|
||||||
|
const StyledMain =
|
||||||
|
styled.div <
|
||||||
|
MainProps >
|
||||||
|
`
|
||||||
|
padding-top: 6.25rem;
|
||||||
|
padding-bottom: 6.25rem;
|
||||||
|
${props =>
|
||||||
|
props.dark
|
||||||
|
? `
|
||||||
|
background-color: #000;
|
||||||
|
color: #fff;
|
||||||
|
`
|
||||||
|
: ''};
|
||||||
|
`;
|
||||||
|
|
||||||
|
interface MainProps {
|
||||||
|
dark?: boolean;
|
||||||
|
children: React.ReactNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
function Main(props: MainProps) {
|
||||||
|
return (
|
||||||
|
<StyledMain dark={props.dark}>
|
||||||
|
<Container>{props.children}</Container>
|
||||||
|
</StyledMain>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export default Main;
|
@@ -1,8 +1,9 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import styled from 'styled-components';
|
import styled from 'styled-components';
|
||||||
|
|
||||||
|
import { withContext, Props } from './withContext';
|
||||||
|
import { Beta, Alpha } from './Typography';
|
||||||
import { media } from 'ts/variables';
|
import { media } from 'ts/variables';
|
||||||
import { Beta } from './Typography';
|
|
||||||
|
|
||||||
const Base = styled.div`
|
const Base = styled.div`
|
||||||
display: flex;
|
display: flex;
|
||||||
@@ -42,9 +43,14 @@ const Item = styled.div`
|
|||||||
}
|
}
|
||||||
`;
|
`;
|
||||||
|
|
||||||
interface ContentBlockProps {
|
const StyledTitle = styled(Alpha)`
|
||||||
|
color: ${props => props.color};
|
||||||
|
`;
|
||||||
|
|
||||||
|
interface ContentBlockProps extends Props {
|
||||||
title: string;
|
title: string;
|
||||||
children: React.ReactNode;
|
main?: boolean;
|
||||||
|
children?: React.ReactNode;
|
||||||
}
|
}
|
||||||
|
|
||||||
function ContentBlock(props: ContentBlockProps) {
|
function ContentBlock(props: ContentBlockProps) {
|
||||||
@@ -52,12 +58,14 @@ function ContentBlock(props: ContentBlockProps) {
|
|||||||
return <Item>{child}</Item>;
|
return <Item>{child}</Item>;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const Title = props.main ? StyledTitle : Beta;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Base>
|
<Base>
|
||||||
<Beta>{props.title}</Beta>
|
<Title color={props.colors.main}>{props.title}</Title>
|
||||||
<Content>{children}</Content>
|
{children ? <Content>{children}</Content> : null}
|
||||||
</Base>
|
</Base>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
export default ContentBlock;
|
export default withContext(ContentBlock);
|
||||||
|
@@ -1,41 +0,0 @@
|
|||||||
import * as React from 'react';
|
|
||||||
import styled from 'styled-components';
|
|
||||||
|
|
||||||
import { media } from 'ts/variables';
|
|
||||||
import { withContext, Props } from './withContext';
|
|
||||||
|
|
||||||
import { Alpha } from './Typography';
|
|
||||||
|
|
||||||
const StyledMain = styled.div`
|
|
||||||
padding-top: 6.25rem;
|
|
||||||
padding-bottom: 6.25rem;
|
|
||||||
${media.small`
|
|
||||||
padding-top: 2.5rem;
|
|
||||||
padding-bottom: 2.5rem;
|
|
||||||
`};
|
|
||||||
`;
|
|
||||||
|
|
||||||
const Title = styled(Alpha)`
|
|
||||||
color: ${props => props.color};
|
|
||||||
margin-bottom: 6.25rem;
|
|
||||||
${media.small`
|
|
||||||
margin-bottom: 3.125rem;
|
|
||||||
`};
|
|
||||||
`;
|
|
||||||
|
|
||||||
interface MainProps extends Props {
|
|
||||||
children: React.ReactNode;
|
|
||||||
}
|
|
||||||
|
|
||||||
function Main(props: MainProps) {
|
|
||||||
return (
|
|
||||||
<StyledMain>
|
|
||||||
<Title as="h2" color={props.colors.main}>
|
|
||||||
Get started
|
|
||||||
</Title>
|
|
||||||
{props.children}
|
|
||||||
</StyledMain>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
export default withContext(Main);
|
|
@@ -1,6 +1,5 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import styled from 'styled-components';
|
import styled from 'styled-components';
|
||||||
|
|
||||||
import { colors } from 'ts/variables';
|
import { colors } from 'ts/variables';
|
||||||
import { Tabs as ReactTabs, Tab, TabList, TabPanel } from 'react-tabs';
|
import { Tabs as ReactTabs, Tab, TabList, TabPanel } from 'react-tabs';
|
||||||
import Breakout from './Breakout';
|
import Breakout from './Breakout';
|
||||||
|
@@ -3,8 +3,7 @@ import { render, hydrate } from 'react-dom';
|
|||||||
|
|
||||||
import context from 'ts/context/compiler';
|
import context from 'ts/context/compiler';
|
||||||
import Base from 'ts/components/Base';
|
import Base from 'ts/components/Base';
|
||||||
import Container from 'ts/components/Container';
|
import Content from 'ts/components/Content';
|
||||||
import Main from 'ts/components/Main';
|
|
||||||
import ContentBlock from 'ts/components/ContentBlock';
|
import ContentBlock from 'ts/components/ContentBlock';
|
||||||
import { Tabs, TabBlock } from 'ts/components/Tabs';
|
import { Tabs, TabBlock } from 'ts/components/Tabs';
|
||||||
import Code from 'ts/components/Code';
|
import Code from 'ts/components/Code';
|
||||||
@@ -15,40 +14,53 @@ import CompilerComponent from 'ts/components/Compiler';
|
|||||||
function Compiler() {
|
function Compiler() {
|
||||||
return (
|
return (
|
||||||
<Base context={context}>
|
<Base context={context}>
|
||||||
<Container>
|
<CompilerComponent />
|
||||||
<CompilerComponent />
|
<Content>
|
||||||
<Main>
|
<ContentBlock main title="Get started" />
|
||||||
<ContentBlock title="Required steps">
|
<ContentBlock title="Required steps">
|
||||||
<List items={['Step 1', 'Step 2']} />
|
<List items={['Step 1', 'Step 2']} />
|
||||||
</ContentBlock>
|
</ContentBlock>
|
||||||
<ContentBlock title="Prerequisites">
|
<ContentBlock title="Prerequisites">
|
||||||
<Code>npm install @0x/sol-trace --save</Code>
|
<Code>npm install @0x/sol-trace --save</Code>
|
||||||
<p>
|
<p>
|
||||||
Sol-trace is a subprovider that needs to be prepended to your{' '}
|
Sol-trace is a subprovider that needs to be prepended to your <a href="#">provider engine</a>.
|
||||||
<a href="#">provider engine</a>. Depending on your project setup, you will need to use a
|
Depending on your project setup, you will need to use a specific ArtifactAdapter. Sol-trace
|
||||||
specific ArtifactAdapter. Sol-trace ships with the{' '}
|
ships with the <InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with Sol-compiler and{' '}
|
||||||
<InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with Sol-compiler and{' '}
|
<InlineCode>TruffleArtifactAdapter</InlineCode> for use with the Truffle framework. You can also
|
||||||
<InlineCode>TruffleArtifactAdapter</InlineCode> for use with the Truffle framework. You can
|
write your own and support any artifact format.
|
||||||
also write your own and support any artifact format.
|
</p>
|
||||||
</p>
|
</ContentBlock>
|
||||||
</ContentBlock>
|
|
||||||
|
|
||||||
<ContentBlock title="Installation">
|
<ContentBlock title="Installation">
|
||||||
<Tabs>
|
<Tabs>
|
||||||
<TabBlock title="Sol-compiler">
|
<TabBlock title="Sol-compiler">
|
||||||
<Code language="js">
|
<Code language="js">
|
||||||
{`import { SolCompilerArtifactAdapter } from '@0x/sol-trace';
|
{`import { SolCompilerArtifactAdapter } from '@0x/sol-trace';
|
||||||
|
|
||||||
// Both artifactsDir and contractsDir are optional and will be fetched from compiler.json if not passed in
|
// Both artifactsDir and contractsDir are optional and will be fetched from compiler.json if not passed in
|
||||||
const artifactAdapter = new SolCompilerArtifactAdapter(artifactsDir, contractsDir);`}
|
const artifactAdapter = new SolCompilerArtifactAdapter(artifactsDir, contractsDir);`}
|
||||||
</Code>
|
</Code>
|
||||||
</TabBlock>
|
</TabBlock>
|
||||||
<TabBlock title="Truffle">Truffle</TabBlock>
|
<TabBlock title="Truffle">Truffle</TabBlock>
|
||||||
<TabBlock title="Custom">Custom</TabBlock>
|
<TabBlock title="Custom">Custom</TabBlock>
|
||||||
</Tabs>
|
</Tabs>
|
||||||
</ContentBlock>
|
</ContentBlock>
|
||||||
</Main>
|
</Content>
|
||||||
</Container>
|
<Content dark>
|
||||||
|
<ContentBlock main title="Artifacts">
|
||||||
|
<p>
|
||||||
|
Sol compiler uses solidity standard JSON output format for the artifacts. This way, you can
|
||||||
|
define which parts of the artifact you need.
|
||||||
|
</p>
|
||||||
|
</ContentBlock>
|
||||||
|
|
||||||
|
<ContentBlock title="Production">
|
||||||
|
<p>
|
||||||
|
Sol compiler uses solidity standard JSON output format for the artifacts. This way, you can
|
||||||
|
define which parts of the artifact you need.
|
||||||
|
</p>
|
||||||
|
</ContentBlock>
|
||||||
|
</Content>
|
||||||
</Base>
|
</Base>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@@ -3,8 +3,7 @@ import { render, hydrate } from 'react-dom';
|
|||||||
|
|
||||||
import context from 'ts/context/cov';
|
import context from 'ts/context/cov';
|
||||||
import Base from 'ts/components/Base';
|
import Base from 'ts/components/Base';
|
||||||
import Container from 'ts/components/Container';
|
import Content from 'ts/components/Content';
|
||||||
import Main from 'ts/components/Main';
|
|
||||||
import ContentBlock from 'ts/components/ContentBlock';
|
import ContentBlock from 'ts/components/ContentBlock';
|
||||||
import { Tabs, TabBlock } from 'ts/components/Tabs';
|
import { Tabs, TabBlock } from 'ts/components/Tabs';
|
||||||
import Code from 'ts/components/Code';
|
import Code from 'ts/components/Code';
|
||||||
@@ -15,46 +14,44 @@ import Intro from 'ts/components/Intro';
|
|||||||
function Cov() {
|
function Cov() {
|
||||||
return (
|
return (
|
||||||
<Base context={context}>
|
<Base context={context}>
|
||||||
<Container>
|
<Intro title="Measure your tests">
|
||||||
<Intro title="Measure your tests">
|
<p>
|
||||||
|
When it comes to writing smart contracts, testing is one of the most important steps of the process.
|
||||||
|
In order to quantify the robustness of your Solidity testing suite, you need to measure its code
|
||||||
|
coverage.
|
||||||
|
</p>
|
||||||
|
</Intro>
|
||||||
|
<Content>
|
||||||
|
<ContentBlock main title="Get started" />
|
||||||
|
<ContentBlock title="Required steps">
|
||||||
|
<List items={['Step 1', 'Step 2']} />
|
||||||
|
</ContentBlock>
|
||||||
|
<ContentBlock title="Prerequisites">
|
||||||
|
<Code>npm install @0x/sol-trace --save</Code>
|
||||||
<p>
|
<p>
|
||||||
When it comes to writing smart contracts, testing is one of the most important steps of the
|
Sol-trace is a subprovider that needs to be prepended to your <a href="#">provider engine</a>.
|
||||||
process. In order to quantify the robustness of your Solidity testing suite, you need to measure
|
Depending on your project setup, you will need to use a specific ArtifactAdapter. Sol-trace
|
||||||
its code coverage.
|
ships with the <InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with Sol-compiler and{' '}
|
||||||
|
<InlineCode>TruffleArtifactAdapter</InlineCode> for use with the Truffle framework. You can also
|
||||||
|
write your own and support any artifact format.
|
||||||
</p>
|
</p>
|
||||||
</Intro>
|
</ContentBlock>
|
||||||
<Main>
|
|
||||||
<ContentBlock title="Required steps">
|
|
||||||
<List items={['Step 1', 'Step 2']} />
|
|
||||||
</ContentBlock>
|
|
||||||
<ContentBlock title="Prerequisites">
|
|
||||||
<Code>npm install @0x/sol-trace --save</Code>
|
|
||||||
<p>
|
|
||||||
Sol-trace is a subprovider that needs to be prepended to your{' '}
|
|
||||||
<a href="#">provider engine</a>. Depending on your project setup, you will need to use a
|
|
||||||
specific ArtifactAdapter. Sol-trace ships with the{' '}
|
|
||||||
<InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with Sol-compiler and{' '}
|
|
||||||
<InlineCode>TruffleArtifactAdapter</InlineCode> for use with the Truffle framework. You can
|
|
||||||
also write your own and support any artifact format.
|
|
||||||
</p>
|
|
||||||
</ContentBlock>
|
|
||||||
|
|
||||||
<ContentBlock title="Installation">
|
<ContentBlock title="Installation">
|
||||||
<Tabs>
|
<Tabs>
|
||||||
<TabBlock title="Sol-compiler">
|
<TabBlock title="Sol-compiler">
|
||||||
<Code language="js">
|
<Code language="js">
|
||||||
{`import { SolCompilerArtifactAdapter } from '@0x/sol-trace';
|
{`import { SolCompilerArtifactAdapter } from '@0x/sol-trace';
|
||||||
|
|
||||||
// Both artifactsDir and contractsDir are optional and will be fetched from compiler.json if not passed in
|
// Both artifactsDir and contractsDir are optional and will be fetched from compiler.json if not passed in
|
||||||
const artifactAdapter = new SolCompilerArtifactAdapter(artifactsDir, contractsDir);`}
|
const artifactAdapter = new SolCompilerArtifactAdapter(artifactsDir, contractsDir);`}
|
||||||
</Code>
|
</Code>
|
||||||
</TabBlock>
|
</TabBlock>
|
||||||
<TabBlock title="Truffle">Truffle</TabBlock>
|
<TabBlock title="Truffle">Truffle</TabBlock>
|
||||||
<TabBlock title="Custom">Custom</TabBlock>
|
<TabBlock title="Custom">Custom</TabBlock>
|
||||||
</Tabs>
|
</Tabs>
|
||||||
</ContentBlock>
|
</ContentBlock>
|
||||||
</Main>
|
</Content>
|
||||||
</Container>
|
|
||||||
</Base>
|
</Base>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@@ -3,8 +3,7 @@ import { render, hydrate } from 'react-dom';
|
|||||||
|
|
||||||
import context from 'ts/context/profiler';
|
import context from 'ts/context/profiler';
|
||||||
import Base from 'ts/components/Base';
|
import Base from 'ts/components/Base';
|
||||||
import Container from 'ts/components/Container';
|
import Content from 'ts/components/Content';
|
||||||
import Main from 'ts/components/Main';
|
|
||||||
import ContentBlock from 'ts/components/ContentBlock';
|
import ContentBlock from 'ts/components/ContentBlock';
|
||||||
import { Tabs, TabBlock } from 'ts/components/Tabs';
|
import { Tabs, TabBlock } from 'ts/components/Tabs';
|
||||||
import Code from 'ts/components/Code';
|
import Code from 'ts/components/Code';
|
||||||
@@ -15,46 +14,44 @@ import Intro from 'ts/components/Intro';
|
|||||||
function Profiler() {
|
function Profiler() {
|
||||||
return (
|
return (
|
||||||
<Base context={context}>
|
<Base context={context}>
|
||||||
<Container>
|
<Intro title="ra">
|
||||||
<Intro title="ra">
|
<p>
|
||||||
|
Sol-profiler gathers line-by-line gas usage for any transaction submitted through your provider.
|
||||||
|
This will help you find unexpected inefficiencies in parts of your smart contract, and take a
|
||||||
|
data-driven approach to optimizing it.
|
||||||
|
</p>
|
||||||
|
</Intro>
|
||||||
|
<Content>
|
||||||
|
<ContentBlock main title="Get started" />
|
||||||
|
<ContentBlock title="Required steps">
|
||||||
|
<List items={['Step 1', 'Step 2']} />
|
||||||
|
</ContentBlock>
|
||||||
|
<ContentBlock title="Prerequisites">
|
||||||
|
<Code>npm install @0x/sol-trace --save</Code>
|
||||||
<p>
|
<p>
|
||||||
Sol-profiler gathers line-by-line gas usage for any transaction submitted through your provider.
|
Sol-trace is a subprovider that needs to be prepended to your <a href="#">provider engine</a>.
|
||||||
This will help you find unexpected inefficiencies in parts of your smart contract, and take a
|
Depending on your project setup, you will need to use a specific ArtifactAdapter. Sol-trace
|
||||||
data-driven approach to optimizing it.
|
ships with the <InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with Sol-compiler and{' '}
|
||||||
|
<InlineCode>TruffleArtifactAdapter</InlineCode> for use with the Truffle framework. You can also
|
||||||
|
write your own and support any artifact format.
|
||||||
</p>
|
</p>
|
||||||
</Intro>
|
</ContentBlock>
|
||||||
<Main>
|
|
||||||
<ContentBlock title="Required steps">
|
|
||||||
<List items={['Step 1', 'Step 2']} />
|
|
||||||
</ContentBlock>
|
|
||||||
<ContentBlock title="Prerequisites">
|
|
||||||
<Code>npm install @0x/sol-trace --save</Code>
|
|
||||||
<p>
|
|
||||||
Sol-trace is a subprovider that needs to be prepended to your{' '}
|
|
||||||
<a href="#">provider engine</a>. Depending on your project setup, you will need to use a
|
|
||||||
specific ArtifactAdapter. Sol-trace ships with the{' '}
|
|
||||||
<InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with Sol-compiler and{' '}
|
|
||||||
<InlineCode>TruffleArtifactAdapter</InlineCode> for use with the Truffle framework. You can
|
|
||||||
also write your own and support any artifact format.
|
|
||||||
</p>
|
|
||||||
</ContentBlock>
|
|
||||||
|
|
||||||
<ContentBlock title="Installation">
|
<ContentBlock title="Installation">
|
||||||
<Tabs>
|
<Tabs>
|
||||||
<TabBlock title="Sol-compiler">
|
<TabBlock title="Sol-compiler">
|
||||||
<Code language="js">
|
<Code language="js">
|
||||||
{`import { SolCompilerArtifactAdapter } from '@0x/sol-trace';
|
{`import { SolCompilerArtifactAdapter } from '@0x/sol-trace';
|
||||||
|
|
||||||
// Both artifactsDir and contractsDir are optional and will be fetched from compiler.json if not passed in
|
// Both artifactsDir and contractsDir are optional and will be fetched from compiler.json if not passed in
|
||||||
const artifactAdapter = new SolCompilerArtifactAdapter(artifactsDir, contractsDir);`}
|
const artifactAdapter = new SolCompilerArtifactAdapter(artifactsDir, contractsDir);`}
|
||||||
</Code>
|
</Code>
|
||||||
</TabBlock>
|
</TabBlock>
|
||||||
<TabBlock title="Truffle">Truffle</TabBlock>
|
<TabBlock title="Truffle">Truffle</TabBlock>
|
||||||
<TabBlock title="Custom">Custom</TabBlock>
|
<TabBlock title="Custom">Custom</TabBlock>
|
||||||
</Tabs>
|
</Tabs>
|
||||||
</ContentBlock>
|
</ContentBlock>
|
||||||
</Main>
|
</Content>
|
||||||
</Container>
|
|
||||||
</Base>
|
</Base>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@@ -3,8 +3,7 @@ import { render, hydrate } from 'react-dom';
|
|||||||
|
|
||||||
import context from 'ts/context/trace';
|
import context from 'ts/context/trace';
|
||||||
import Base from 'ts/components/Base';
|
import Base from 'ts/components/Base';
|
||||||
import Container from 'ts/components/Container';
|
import Content from 'ts/components/Content';
|
||||||
import Main from 'ts/components/Main';
|
|
||||||
import ContentBlock from 'ts/components/ContentBlock';
|
import ContentBlock from 'ts/components/ContentBlock';
|
||||||
import { Tabs, TabBlock } from 'ts/components/Tabs';
|
import { Tabs, TabBlock } from 'ts/components/Tabs';
|
||||||
import Code from 'ts/components/Code';
|
import Code from 'ts/components/Code';
|
||||||
@@ -16,39 +15,37 @@ function Trace() {
|
|||||||
return (
|
return (
|
||||||
<Base context={context}>
|
<Base context={context}>
|
||||||
<TraceComponent />
|
<TraceComponent />
|
||||||
<Container>
|
<Content>
|
||||||
<Main>
|
<ContentBlock main title="Get started" />
|
||||||
<ContentBlock title="Required steps">
|
<ContentBlock title="Required steps">
|
||||||
<List items={['Step 1', 'Step 2']} />
|
<List items={['Step 1', 'Step 2']} />
|
||||||
</ContentBlock>
|
</ContentBlock>
|
||||||
<ContentBlock title="Prerequisites">
|
<ContentBlock title="Prerequisites">
|
||||||
<Code>npm install @0x/sol-trace --save</Code>
|
<Code>npm install @0x/sol-trace --save</Code>
|
||||||
<p>
|
<p>
|
||||||
Sol-trace is a subprovider that needs to be prepended to your{' '}
|
Sol-trace is a subprovider that needs to be prepended to your <a href="#">provider engine</a>.
|
||||||
<a href="#">provider engine</a>. Depending on your project setup, you will need to use a
|
Depending on your project setup, you will need to use a specific ArtifactAdapter. Sol-trace
|
||||||
specific ArtifactAdapter. Sol-trace ships with the{' '}
|
ships with the <InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with Sol-compiler and{' '}
|
||||||
<InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with Sol-compiler and{' '}
|
<InlineCode>TruffleArtifactAdapter</InlineCode> for use with the Truffle framework. You can also
|
||||||
<InlineCode>TruffleArtifactAdapter</InlineCode> for use with the Truffle framework. You can
|
write your own and support any artifact format.
|
||||||
also write your own and support any artifact format.
|
</p>
|
||||||
</p>
|
</ContentBlock>
|
||||||
</ContentBlock>
|
|
||||||
|
|
||||||
<ContentBlock title="Installation">
|
<ContentBlock title="Installation">
|
||||||
<Tabs>
|
<Tabs>
|
||||||
<TabBlock title="Sol-compiler">
|
<TabBlock title="Sol-compiler">
|
||||||
<Code language="js">
|
<Code language="js">
|
||||||
{`import { SolCompilerArtifactAdapter } from '@0x/sol-trace';
|
{`import { SolCompilerArtifactAdapter } from '@0x/sol-trace';
|
||||||
|
|
||||||
// Both artifactsDir and contractsDir are optional and will be fetched from compiler.json if not passed in
|
// Both artifactsDir and contractsDir are optional and will be fetched from compiler.json if not passed in
|
||||||
const artifactAdapter = new SolCompilerArtifactAdapter(artifactsDir, contractsDir);`}
|
const artifactAdapter = new SolCompilerArtifactAdapter(artifactsDir, contractsDir);`}
|
||||||
</Code>
|
</Code>
|
||||||
</TabBlock>
|
</TabBlock>
|
||||||
<TabBlock title="Truffle">Truffle</TabBlock>
|
<TabBlock title="Truffle">Truffle</TabBlock>
|
||||||
<TabBlock title="Custom">Custom</TabBlock>
|
<TabBlock title="Custom">Custom</TabBlock>
|
||||||
</Tabs>
|
</Tabs>
|
||||||
</ContentBlock>
|
</ContentBlock>
|
||||||
</Main>
|
</Content>
|
||||||
</Container>
|
|
||||||
</Base>
|
</Base>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user