diff --git a/package-lock.json b/package-lock.json index 4e9618d..128341c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.2.4", "license": "MIT", "dependencies": { - "abi-to-sol": "^0.6.6", + "abi-to-sol": "^0.7.1", "ganache": "^7.0.4", "minimist": "^1.2.5", "readline-sync": "^1.4.10", @@ -500,13 +500,13 @@ } }, "node_modules/@truffle/abi-utils": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@truffle/abi-utils/-/abi-utils-0.3.2.tgz", - "integrity": "sha512-32queMD64YKL/tmQgSV4Xs073dIaZ9tp7NP1icjwvFSA3Q9yeu7ApYbSbYMsx9H9zWkkVOsfcoJ2kJEieOCzsA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@truffle/abi-utils/-/abi-utils-1.0.0.tgz", + "integrity": "sha512-h1wGFB28YfByAWm/uBeMCwqDlGsrcMYTumLC/sB/qYhHisi1LK6tV47FEF7zKyf6Al2CtsO28v02+wfLXbUVRg==", "dependencies": { "change-case": "3.0.2", "fast-check": "3.1.1", - "web3-utils": "1.7.4" + "web3-utils": "1.10.0" } }, "node_modules/@truffle/contract-schema": { @@ -601,11 +601,11 @@ } }, "node_modules/abi-to-sol": { - "version": "0.6.6", - "resolved": "https://registry.npmjs.org/abi-to-sol/-/abi-to-sol-0.6.6.tgz", - "integrity": "sha512-PRn81rSpv6NXFPYQSw7ujruqIP6UkwZ/XoFldtiqCX8+2kHVc73xVaUVvdbro06vvBVZiwnxhEIGdI4BRMwGHw==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/abi-to-sol/-/abi-to-sol-0.7.1.tgz", + "integrity": "sha512-GcpyiHA+sTbmSEAbBWsXS5iO3WBGuqhsiBo3WH9VHthNFF/k438mXFJtS/SUxtm8HmbCMv/BnxokUX6w4y2eFg==", "dependencies": { - "@truffle/abi-utils": "^0.3.0", + "@truffle/abi-utils": "^1.0.0", "@truffle/contract-schema": "^3.3.1", "ajv": "^6.12.5", "better-ajv-errors": "^0.8.2", @@ -2345,6 +2345,7 @@ "version": "4.0.5", "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.5.tgz", "integrity": "sha512-HTm14iMQKK2FjFLRTM5lAVcyaUzOnqbPtesFIvREgXpJHdQm8bWS+GkQgIkfaBYRHuCnea7w8UVNfwiAQhlr9A==", + "hasInstallScript": true, "optional": true, "dependencies": { "node-gyp-build": "^4.3.0" @@ -2681,6 +2682,7 @@ "version": "5.0.7", "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.7.tgz", "integrity": "sha512-vLt1O5Pp+flcArHGIyKEQq883nBt8nN8tVBcoL0qUXj2XT1n7p70yGIq2VK98I5FdZ1YHc0wk/koOnHjnXWk1Q==", + "hasInstallScript": true, "optional": true, "dependencies": { "node-gyp-build": "^4.3.0" @@ -4204,13 +4206,19 @@ } }, "node_modules/pure-rand": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-5.0.3.tgz", - "integrity": "sha512-9N8x1h8dptBQpHyC7aZMS+iNOAm97WMGY0AFrguU1cpfW3I5jINkWe5BIY5md0ofy+1TCIELsVcm/GJXZSaPbw==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/fast-check" - } + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-5.0.5.tgz", + "integrity": "sha512-BwQpbqxSCBJVpamI6ydzcKqyFmnd5msMWUGvzXLm1aXvusbbgkbOto/EUPM00hjveJEaJtdbhUjKSzWRhQVkaw==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ] }, "node_modules/qs": { "version": "6.5.3", @@ -5949,9 +5957,9 @@ } }, "node_modules/web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.10.0.tgz", + "integrity": "sha512-kSaCM0uMcZTNUSmn5vMEhlo02RObGNRRCkdX0V9UTAU0+lrvn0HSaudyCo6CQzuXUsnuY2ERJGCGPfeWmv19Rg==", "dependencies": { "bn.js": "^5.2.1", "ethereum-bloom-filters": "^1.0.6", @@ -6472,13 +6480,13 @@ } }, "@truffle/abi-utils": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@truffle/abi-utils/-/abi-utils-0.3.2.tgz", - "integrity": "sha512-32queMD64YKL/tmQgSV4Xs073dIaZ9tp7NP1icjwvFSA3Q9yeu7ApYbSbYMsx9H9zWkkVOsfcoJ2kJEieOCzsA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@truffle/abi-utils/-/abi-utils-1.0.0.tgz", + "integrity": "sha512-h1wGFB28YfByAWm/uBeMCwqDlGsrcMYTumLC/sB/qYhHisi1LK6tV47FEF7zKyf6Al2CtsO28v02+wfLXbUVRg==", "requires": { "change-case": "3.0.2", "fast-check": "3.1.1", - "web3-utils": "1.7.4" + "web3-utils": "1.10.0" } }, "@truffle/contract-schema": { @@ -6573,11 +6581,11 @@ } }, "abi-to-sol": { - "version": "0.6.6", - "resolved": "https://registry.npmjs.org/abi-to-sol/-/abi-to-sol-0.6.6.tgz", - "integrity": "sha512-PRn81rSpv6NXFPYQSw7ujruqIP6UkwZ/XoFldtiqCX8+2kHVc73xVaUVvdbro06vvBVZiwnxhEIGdI4BRMwGHw==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/abi-to-sol/-/abi-to-sol-0.7.1.tgz", + "integrity": "sha512-GcpyiHA+sTbmSEAbBWsXS5iO3WBGuqhsiBo3WH9VHthNFF/k438mXFJtS/SUxtm8HmbCMv/BnxokUX6w4y2eFg==", "requires": { - "@truffle/abi-utils": "^0.3.0", + "@truffle/abi-utils": "^1.0.0", "@truffle/contract-schema": "^3.3.1", "ajv": "^6.12.5", "better-ajv-errors": "^0.8.2", @@ -9356,9 +9364,9 @@ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" }, "pure-rand": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-5.0.3.tgz", - "integrity": "sha512-9N8x1h8dptBQpHyC7aZMS+iNOAm97WMGY0AFrguU1cpfW3I5jINkWe5BIY5md0ofy+1TCIELsVcm/GJXZSaPbw==" + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-5.0.5.tgz", + "integrity": "sha512-BwQpbqxSCBJVpamI6ydzcKqyFmnd5msMWUGvzXLm1aXvusbbgkbOto/EUPM00hjveJEaJtdbhUjKSzWRhQVkaw==" }, "qs": { "version": "6.5.3", @@ -10830,9 +10838,9 @@ } }, "web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.10.0.tgz", + "integrity": "sha512-kSaCM0uMcZTNUSmn5vMEhlo02RObGNRRCkdX0V9UTAU0+lrvn0HSaudyCo6CQzuXUsnuY2ERJGCGPfeWmv19Rg==", "requires": { "bn.js": "^5.2.1", "ethereum-bloom-filters": "^1.0.6", diff --git a/package.json b/package.json index c1b142a..2eeff8d 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ ], "license": "MIT", "dependencies": { - "abi-to-sol": "^0.6.6", + "abi-to-sol": "^0.7.1", "ganache": "^7.0.4", "minimist": "^1.2.5", "readline-sync": "^1.4.10", diff --git a/src/compiler/remoteCompiler.js b/src/compiler/remoteCompiler.js index 12682cf..d620bcf 100644 --- a/src/compiler/remoteCompiler.js +++ b/src/compiler/remoteCompiler.js @@ -59,7 +59,7 @@ function getRemoteCompiler(solidityVersion) { //.import interface 0x40cfee8d71d67108db46f772b7e2cd55813bf2fb test2 function getRemoteInterfaceFromEtherscan(address, name, chain, solidityVersion, apikey) { return new Promise((resolve, reject) => { - + let provider = `https://api${(!chain || chain == "mainnet") ? "" : `-${chain}`}.etherscan.io` let url = `${provider}/api?module=contract&action=getabi&address=${address}&apikey=${apikey || 'YourApiKeyToken'}`; request.get(url, (err, res, body) => { @@ -75,9 +75,10 @@ function getRemoteInterfaceFromEtherscan(address, name, chain, solidityVersion, name: name, solidityVersion: solidityVersion, abi, + mode: "embedded", + outputAttribution: false, outputSource: false, }); - src = src.substring(src.indexOf("\n\n") + 2); // strip license/pragma return resolve(src) } })