Skip to content

Commit

Permalink
Add source code of smart proxy contract to zip archive for download
Browse files Browse the repository at this point in the history
  • Loading branch information
Mariano Aguero committed Sep 3, 2018
1 parent 0034ba4 commit 4dc4362
Showing 1 changed file with 13 additions and 6 deletions.
19 changes: 13 additions & 6 deletions src/components/stepFour/index.js
Expand Up @@ -256,6 +256,9 @@ export class stepFour extends React.Component {
}
})

const fileName = crowdsaleStore.isMintedCappedCrowdsale ? 'MintedCappedProxy.sol' : 'DutchProxy.sol'
zip.file(fileName, this.getContractBySourceType('src'))

zip.generateAsync({ type: DOWNLOAD_TYPE.blob }).then(content => {
const downloadName = getDownloadName()
download({ zip: content, filename: downloadName })
Expand Down Expand Up @@ -320,20 +323,24 @@ export class stepFour extends React.Component {
)
}

renderContractSource = sourceType => {
getContractBySourceType = sourceType => {
const { crowdsaleStore, contractStore } = this.props
const parseContent = content => (isObservableArray(content) ? JSON.stringify(content.slice()) : content)

return crowdsaleStore.strategy === CROWDSALE_STRATEGIES.MINTED_CAPPED_CROWDSALE
? parseContent(contractStore.MintedCappedProxy[sourceType])
: parseContent(contractStore.DutchProxy[sourceType])
}

renderContractSource = sourceType => {
const sourceTypeName = {
abi: 'ABI',
bin: 'Creation Code',
src: 'Source Code'
}
const parseContent = content => (isObservableArray(content) ? JSON.stringify(content.slice()) : content)

const label = `Crowdsale Proxy Contract ${sourceTypeName[sourceType]}`
const value =
crowdsaleStore.strategy === CROWDSALE_STRATEGIES.MINTED_CAPPED_CROWDSALE
? parseContent(contractStore.MintedCappedProxy[sourceType])
: parseContent(contractStore.DutchProxy[sourceType])
const value = this.getContractBySourceType(sourceType)

return <DisplayTextArea label={label} value={value} description={label} />
}
Expand Down

0 comments on commit 4dc4362

Please sign in to comment.