API url as param

pull/3744/head
Aniket-Engg 1 year ago committed by Aniket
parent 1934ae03b1
commit e4b3a19cf7
  1. 6
      apps/etherscan/src/app/utils/scripts.ts
  2. 17
      apps/etherscan/src/app/utils/verify.ts

@ -5,13 +5,13 @@ export const verifyScript = `
* @param {string} contractArguments - Parameters used in the contract constructor during the initial deployment. It should be the hex encoded value. * @param {string} contractArguments - Parameters used in the contract constructor during the initial deployment. It should be the hex encoded value.
* @param {string} contractName - Name of the contract * @param {string} contractName - Name of the contract
* @param {string} contractFile - File where the contract is located * @param {string} contractFile - File where the contract is located
* @param {number | string} chainId - Network chain id * @param {number | string} chainRef - Network chain id or API URL
* @returns {{ guid, status, message, succeed }} verification result * @returns {{ guid, status, message, succeed }} verification result
*/ */
export const verify = async (apikey: string, contractAddress: string, contractArguments: string, contractName: string, contractFile: string, chainId: number | string) => { export const verify = async (apikey: string, contractAddress: string, contractArguments: string, contractName: string, contractFile: string, chainRef: number | string) => {
const compilationResultParam = await remix.call('compilerArtefacts' as any, 'getCompilerAbstract', contractFile) const compilationResultParam = await remix.call('compilerArtefacts' as any, 'getCompilerAbstract', contractFile)
console.log('verifying.. ' + contractName) console.log('verifying.. ' + contractName)
return await remix.call('etherscan' as any, 'verify', apikey, contractAddress, contractArguments, contractName, compilationResultParam, chainId) return await remix.call('etherscan' as any, 'verify', apikey, contractAddress, contractArguments, contractName, compilationResultParam, chainRef)
}` }`
export const receiptGuidScript = ` export const receiptGuidScript = `

@ -21,24 +21,31 @@ export const verify = async (
contractArgumentsParam: string, contractArgumentsParam: string,
contractName: string, contractName: string,
compilationResultParam: CompilerAbstract, compilationResultParam: CompilerAbstract,
chainId: number | string, chainRef: number | string,
client: PluginClient, client: PluginClient,
onVerifiedContract: (value: EtherScanReturn) => void, onVerifiedContract: (value: EtherScanReturn) => void,
setResults: (value: string) => void setResults: (value: string) => void
) => { ) => {
let networkChainId let networkChainId
if (chainId) networkChainId = chainId let etherscanApi
else { if (chainRef) {
if (typeof chainRef === 'number') {
networkChainId = chainRef
etherscanApi = getEtherScanApi(networkChainId)
} else if (typeof chainRef === 'string') etherscanApi = chainRef
} else {
const { network, networkId } = await getNetworkName(client) const { network, networkId } = await getNetworkName(client)
if (network === "vm") { if (network === "vm") {
return { return {
succeed: false, succeed: false,
message: "Cannot verify in the selected network" message: "Cannot verify in the selected network"
} }
} else networkChainId = networkId } else {
networkChainId = networkId
etherscanApi = getEtherScanApi(networkChainId)
}
} }
const etherscanApi = getEtherScanApi(networkChainId)
try { try {
const contractMetadata = getContractMetadata( const contractMetadata = getContractMetadata(

Loading…
Cancel
Save