diff --git a/apps/remix-ide/src/app/plugins/vyper-compilation-details.tsx b/apps/remix-ide/src/app/plugins/vyper-compilation-details.tsx
index 1db215c50f..d3cb4240ca 100644
--- a/apps/remix-ide/src/app/plugins/vyper-compilation-details.tsx
+++ b/apps/remix-ide/src/app/plugins/vyper-compilation-details.tsx
@@ -45,10 +45,11 @@ export class VyperCompilationDetailsPlugin extends ViewPlugin {
}
async showDetails(sentPayload: any) {
- console.log({ sentPayload })
+ console.log(sentPayload )
const contractName = Object.entries(sentPayload).find(([key, value]) => key )
- this.profile.displayName = `${contractName}`
await this.call('tabs', 'focus', 'vyperCompilationDetails')
+ this.profile.displayName = `${contractName}`
+ this.renderComponent()
this.payload = sentPayload
this.renderComponent()
}
@@ -74,12 +75,7 @@ export class VyperCompilationDetailsPlugin extends ViewPlugin {
updateComponent(state: any) {
return (
)
}
diff --git a/apps/vyper/src/app/app.css b/apps/vyper/src/app/app.css
index 67e0fb59b1..7e4107ba67 100644
--- a/apps/vyper/src/app/app.css
+++ b/apps/vyper/src/app/app.css
@@ -48,14 +48,6 @@ html, body, #root, main {
}
-#compile-btn {
-
-}
-
-#compile-btn * {
- width: 100%;
-}
-
#result {
flex: 1;
display: flex;
diff --git a/apps/vyper/src/app/components/CompilerButton.tsx b/apps/vyper/src/app/components/CompilerButton.tsx
index 4e2459aebd..9d32799dad 100644
--- a/apps/vyper/src/app/components/CompilerButton.tsx
+++ b/apps/vyper/src/app/components/CompilerButton.tsx
@@ -1,4 +1,4 @@
-import React, { useState } from 'react'
+import React, { Fragment, useState } from 'react'
import {isVyper, compile, toStandardOutput, VyperCompilationOutput, isCompilationError, remixClient, normalizeContractPath} from '../utils'
import Button from 'react-bootstrap/Button'
import _ from 'lodash'
@@ -46,25 +46,29 @@ function CompilerButton({contract, setOutput, compilerUrl, resetCompilerState}:
setOutput(_contract.name, {status: 'failed', message: e.message})
return
}
- // console.log({ output })
- // const compileReturnType = () => {
- // const t: any = toStandardOutput(contract, output)
- // const temp = _.merge(t['contracts'][contract])
- // const normal = normalizeContractPath(contract)[2]
- // const abi = temp[normal]['abi']
- // const evm = _.merge(temp[normal]['evm'])
- // const dpb = evm.deployedBytecode
- // const runtimeBytecode = evm.bytecode
+ console.log({ output })
+ const compileReturnType = () => {
+ const t: any = toStandardOutput(contract, output)
+ console.log(t)
+ const temp = _.merge(t['contracts'][contract])
+ const normal = normalizeContractPath(contract)[2]
+ const abi = temp[normal]['abi']
+ const evm = _.merge(temp[normal]['evm'])
+ const dpb = evm.deployedBytecode
+ const runtimeBytecode = evm.bytecode
+ const methodIdentifiers = evm.methodIdentifiers
- // const result = {
- // contractName: normal,
- // abi: abi,
- // bytecode: dpb,
- // runtimeBytecode: runtimeBytecode,
- // ir: ''
- // }
- // return result
- // }
+ const result = {
+ contractName: normal,
+ abi: abi,
+ bytecode: dpb,
+ runtimeBytecode: runtimeBytecode,
+ ir: '',
+ methodIdentifiers: methodIdentifiers
+ }
+ console.log(result)
+ return result
+ }
// setOutput(_contract.name, compileReturnType())
// ERROR
@@ -111,9 +115,9 @@ function CompilerButton({contract, setOutput, compilerUrl, resetCompilerState}:
})
const data = toStandardOutput(_contract.name, output)
remixClient.compilationFinish(_contract.name, _contract.content, data)
- console.log(data)
- setOutput(_contract.name, data)
- setLoadingSpinnerState(false)
+ // console.log(data)
+ setOutput(_contract.name, compileReturnType())
+ // setLoadingSpinnerState(false)
// remixClient.call('compilationDetails' as any, 'showDetails', data)
} catch (err: any) {
remixClient.changeStatus({
@@ -125,13 +129,15 @@ function CompilerButton({contract, setOutput, compilerUrl, resetCompilerState}:
}
return (
-
+
+
+
)
}
diff --git a/apps/vyper/src/app/components/VyperResult.tsx b/apps/vyper/src/app/components/VyperResult.tsx
index bc3a789ad4..4689be6635 100644
--- a/apps/vyper/src/app/components/VyperResult.tsx
+++ b/apps/vyper/src/app/components/VyperResult.tsx
@@ -53,7 +53,7 @@ function VyperResult({ output, plugin }: VyperResultProps) {
)
}
-
+ console.log(output)
return (
<>
diff --git a/libs/remix-ui/solidity-compile-details/src/lib/solidity-compile-details.tsx b/libs/remix-ui/solidity-compile-details/src/lib/solidity-compile-details.tsx
index b2d743f8db..042c27baa9 100644
--- a/libs/remix-ui/solidity-compile-details/src/lib/solidity-compile-details.tsx
+++ b/libs/remix-ui/solidity-compile-details/src/lib/solidity-compile-details.tsx
@@ -5,7 +5,6 @@ import { ContractPropertyName } from '@remix-ui/solidity-compiler'
import React from 'react'
import SolidityCompile from './components/solidityCompile'
-import VyperCompile from './components/vyperCompile'
export interface RemixUiCompileDetailsProps {
plugin?: any
diff --git a/libs/remix-ui/vyper-compile-details/src/lib/vyper-compile-details.tsx b/libs/remix-ui/vyper-compile-details/src/lib/vyper-compile-details.tsx
index 5bfb4543c4..a017fa8ee6 100644
--- a/libs/remix-ui/vyper-compile-details/src/lib/vyper-compile-details.tsx
+++ b/libs/remix-ui/vyper-compile-details/src/lib/vyper-compile-details.tsx
@@ -1,12 +1,24 @@
import React from 'react'
+import VyperCompile from './vyperCompile'
+//@ts-nocheck
-export function RemixUiVyperCompileDetails() {
+
+interface RemixUiVyperCompileDetailsProps {
+ payload: any
+}
+
+export function RemixUiVyperCompileDetails({ payload }: RemixUiVyperCompileDetailsProps) {
+ const dpayload = Object.values(payload) as any
return (
<>
-
-
Welcome to Vyper Compile Details Plugin!!
-
+
>
)
}
diff --git a/libs/remix-ui/solidity-compile-details/src/lib/components/vyperCompile.tsx b/libs/remix-ui/vyper-compile-details/src/lib/vyperCompile.tsx
similarity index 72%
rename from libs/remix-ui/solidity-compile-details/src/lib/components/vyperCompile.tsx
rename to libs/remix-ui/vyper-compile-details/src/lib/vyperCompile.tsx
index 10e73d5031..18608b3056 100644
--- a/libs/remix-ui/solidity-compile-details/src/lib/components/vyperCompile.tsx
+++ b/libs/remix-ui/vyper-compile-details/src/lib/vyperCompile.tsx
@@ -12,43 +12,43 @@ import { ABIDescription } from '@remixproject/plugin-api'
const _paq = (window._paq = window._paq || [])
export interface VyperCompilationResult {
- status: 'success'
+ status?: 'success'
bytecode: string
- bytecode_runtime: string
+ bytecodeRuntime: string
abi: ABIDescription[]
ir: string
- method_identifiers: {
+ methodIdentifiers: {
[method: string]: string
}
}
-export default function VyperCompile({ saveAs, contractProperties, selectedContract }: any) {
+export default function VyperCompile(props: VyperCompilationResult) {
const intl = useIntl()
- const downloadFn = () => {
- _paq.push(['trackEvent', 'compiler', 'compilerDetails', 'download'])
- saveAs(new Blob([JSON.stringify(contractProperties, null, '\t')]), `${selectedContract}_compData.json`)
- }
+ // const downloadFn = () => {
+ // _paq.push(['trackEvent', 'compiler', 'compilerDetails', 'download'])
+ // saveAs(new Blob([JSON.stringify(contractProperties, null, '\t')]), `${selectedContract}_compData.json`)
+ // }
const [active, setActive] = useState('abi')
const tabContent = [
{
tabHeadingText: 'ABI',
- tabPayload: Object.values(contractProperties)[0]['abi'],
+ tabPayload: props.abi, //Object.values(props)[0]['abi'],
tabMemberType: 'abi',
tabButtonText: () => 'Copy ABI',
eventKey: 'abi'
},
{
tabHeadingText: 'Bytecode',
- tabPayload: Object.values(contractProperties)[0]['bytecode'].object.toString(),
+ tabPayload: props.bytecode, //Object.values(props)[0]['bytecode'].object.toString(),
tabMemberType: 'bytecode',
tabButtonText: () => 'Copy Bytecode',
eventKey: 'bytecode'
},
{
tabHeadingText: 'Runtime Bytecode',
- tabPayload: Object.values(contractProperties)[0]['runtimeBytecode'].object.toString(),
+ tabPayload: props.bytecodeRuntime,// Object.values(props)[0]['runtimeBytecode'].object.toString(),
tabMemberType: 'bytecode_runtime',
tabButtonText: () => 'Copy Runtime Bytecode',
eventKey: 'bytecode_runtime'
@@ -63,28 +63,28 @@ export default function VyperCompile({ saveAs, contractProperties, selectedContr
]
return (
<>
-
+ {/*
{selectedContract}
Download
-
+
*/}
setActive(key)} justify>
{tabContent.map((content, index) => (
- content.eventKey !== 'abi' ? content.tabPayload : JSON.stringify(Object.values(contractProperties)[0]['abi'])}>
+ content.eventKey !== 'abi' ? content.tabPayload : JSON.stringify(Object.values(props)[0]['abi'])}>
{
- content.eventKey === 'abi' ? : (
-
+ content.eventKey === 'abi' ? : (
+
)
}
- */}
))}
>