@sentio/cli 2.5.2 → 2.6.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/abi.js +3 -3
- package/lib/abi.js.map +1 -1
- package/package.json +2 -2
- package/src/abi.ts +3 -3
package/lib/abi.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AptosClient } from 'aptos-sdk';
|
|
2
|
-
import { JsonRpcProvider } from '@mysten/sui.js';
|
|
2
|
+
import { JsonRpcProvider, Connection } from '@mysten/sui.js';
|
|
3
3
|
import { CHAIN_IDS } from './chain.js';
|
|
4
4
|
import chalk from 'chalk';
|
|
5
5
|
import process from 'process';
|
|
@@ -23,7 +23,7 @@ export async function getABI(chain, address, name) {
|
|
|
23
23
|
// suiClient = new JsonRpcProvider('https://fullnode.mainnet.sui.io/')
|
|
24
24
|
// break
|
|
25
25
|
case CHAIN_IDS.SUI_TESTNET:
|
|
26
|
-
suiClient = new JsonRpcProvider('https://fullnode.testnet.sui.io/');
|
|
26
|
+
suiClient = new JsonRpcProvider(new Connection({ fullnode: 'https://fullnode.testnet.sui.io/' }));
|
|
27
27
|
break;
|
|
28
28
|
case CHAIN_IDS.ETHEREUM:
|
|
29
29
|
ethApi = init();
|
|
@@ -71,7 +71,7 @@ export async function getABI(chain, address, name) {
|
|
|
71
71
|
if (suiClient) {
|
|
72
72
|
try {
|
|
73
73
|
return {
|
|
74
|
-
abi: await suiClient.getNormalizedMoveModulesByPackage(address),
|
|
74
|
+
abi: await suiClient.getNormalizedMoveModulesByPackage({ package: address }),
|
|
75
75
|
};
|
|
76
76
|
}
|
|
77
77
|
catch (e) {
|
package/lib/abi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abi.js","sourceRoot":"","sources":["../src/abi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"abi.js","sourceRoot":"","sources":["../src/abi.ts"],"names":[],"mappings":"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","sourcesContent":["import { AptosClient } from 'aptos-sdk'\nimport { JsonRpcProvider, Connection } from '@mysten/sui.js'\nimport { CHAIN_IDS } from './chain.js'\nimport chalk from 'chalk'\nimport process from 'process'\nimport path from 'path'\nimport fs from 'fs-extra'\n// @ts-ignore no types\nimport { init } from 'etherscan-api'\n\nexport async function getABI(\n chain: string,\n address: string,\n name: string | undefined\n): Promise<{ name?: string; abi: object | string }> {\n let ethApi\n let aptosClient: AptosClient | undefined\n let suiClient: JsonRpcProvider | undefined\n\n switch (chain) {\n case CHAIN_IDS.APTOS_MAINNET:\n aptosClient = new AptosClient('https://mainnet.aptoslabs.com/')\n break\n case CHAIN_IDS.APTOS_TESTNET:\n aptosClient = new AptosClient('https://testnet.aptoslabs.com/')\n break\n case CHAIN_IDS.SUI_MAINNET:\n throw Error('SUI mainnet is not support yet, try sui/testnet')\n // suiClient = new JsonRpcProvider('https://fullnode.mainnet.sui.io/')\n // break\n case CHAIN_IDS.SUI_TESTNET:\n suiClient = new JsonRpcProvider(new Connection({ fullnode: 'https://fullnode.testnet.sui.io/' }))\n break\n case CHAIN_IDS.ETHEREUM:\n ethApi = init()\n break\n // case CHAIN_IDS.ROPSTEN:\n // ethApi = init(undefined, \"ropsten\")\n // break\n // case CHAIN_IDS.RINKEBY:\n // ethApi = init(undefined, \"rinkeby\")\n // break\n case CHAIN_IDS.GOERLI:\n ethApi = init(undefined, 'goerli')\n break\n // case CHAIN_IDS.SEPOLIA:\n // ethApi = init(undefined, \"sepolia\")\n // break\n\n case CHAIN_IDS.ARBITRUM:\n ethApi = init(undefined, 'arbitrum')\n break\n case CHAIN_IDS.ARBITRUM_GOERLI:\n ethApi = init(undefined, 'arbitrum_rinkeby')\n break\n case CHAIN_IDS.AVALANCHE:\n ethApi = init(undefined, 'avalanche')\n break\n // case CHAIN_IDS.KOVAN:\n // ethApi = init(undefined, \"kovan\")\n // break\n default:\n console.error(chalk.red(`chain ${chain} not supported for direct add, please download the ABI manually`))\n process.exit(1)\n }\n\n const baseErrMsg = chalk.red(\n `Failed to automatic download contract ${address} from ${chain}, please manually download abi and put it into abis/eth directory`\n )\n\n if (aptosClient) {\n try {\n return {\n abi: await aptosClient.getAccountModules(address),\n }\n } catch (e) {\n console.error(baseErrMsg, e)\n process.exit(1)\n }\n }\n if (suiClient) {\n try {\n return {\n abi: await suiClient.getNormalizedMoveModulesByPackage({ package: address }),\n }\n } catch (e) {\n console.error(baseErrMsg, e)\n process.exit(1)\n }\n }\n\n try {\n let resp = await ethApi.contract.getabi(address)\n if (resp.status !== '1') {\n throw Error(resp.message)\n }\n const abi = resp.result\n\n if (!name) {\n await new Promise((resolve) => setTimeout(resolve, 1000))\n resp = await ethApi.contract.getsourcecode(address)\n if (resp.status !== '1') {\n throw Error(resp.message)\n }\n const contractName = resp.result[0].ContractName\n if (contractName) {\n name = contractName\n }\n }\n return {\n name,\n abi,\n }\n } catch (e) {\n console.error(baseErrMsg, e)\n process.exit(1)\n }\n}\n\nexport function getABIFilePath(chain: string, name: string): string {\n let subpath\n switch (chain) {\n case CHAIN_IDS.APTOS_MAINNET:\n subpath = 'aptos'\n break\n case CHAIN_IDS.APTOS_TESTNET:\n subpath = 'aptos/testnet'\n break\n case CHAIN_IDS.SUI_MAINNET:\n subpath = 'sui'\n break\n case CHAIN_IDS.SUI_TESTNET:\n subpath = 'sui/testnet'\n break\n default:\n subpath = 'eth'\n }\n\n return path.join('abis', subpath, name + '.json')\n}\n\nexport function writeABIFile(obj: string | object, output: string) {\n if (typeof obj === 'string') {\n obj = JSON.parse(obj)\n }\n const data = JSON.stringify(obj, null, 2)\n fs.mkdirSync(path.dirname(output), { recursive: true })\n fs.writeFileSync(output, data)\n console.log(chalk.green('ABI has been downloaded to', output))\n}\n"]}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"license": "Apache-2.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
|
-
"version": "2.
|
|
6
|
+
"version": "2.6.0-rc.1",
|
|
7
7
|
"scripts": {
|
|
8
8
|
"compile": "tsc",
|
|
9
9
|
"build": "yarn compile",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
15
|
"@jest/types": "^29.4.1",
|
|
16
|
-
"@mysten/sui.js": "npm:@sentio/sui.js
|
|
16
|
+
"@mysten/sui.js": "npm:@sentio/sui.js@^0.30.0",
|
|
17
17
|
"@types/jest": "^29.0.0",
|
|
18
18
|
"@types/node": "^18.11.18",
|
|
19
19
|
"aptos-sdk": "npm:aptos@^1.7.1",
|
package/src/abi.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AptosClient } from 'aptos-sdk'
|
|
2
|
-
import { JsonRpcProvider } from '@mysten/sui.js'
|
|
2
|
+
import { JsonRpcProvider, Connection } from '@mysten/sui.js'
|
|
3
3
|
import { CHAIN_IDS } from './chain.js'
|
|
4
4
|
import chalk from 'chalk'
|
|
5
5
|
import process from 'process'
|
|
@@ -29,7 +29,7 @@ export async function getABI(
|
|
|
29
29
|
// suiClient = new JsonRpcProvider('https://fullnode.mainnet.sui.io/')
|
|
30
30
|
// break
|
|
31
31
|
case CHAIN_IDS.SUI_TESTNET:
|
|
32
|
-
suiClient = new JsonRpcProvider('https://fullnode.testnet.sui.io/')
|
|
32
|
+
suiClient = new JsonRpcProvider(new Connection({ fullnode: 'https://fullnode.testnet.sui.io/' }))
|
|
33
33
|
break
|
|
34
34
|
case CHAIN_IDS.ETHEREUM:
|
|
35
35
|
ethApi = init()
|
|
@@ -81,7 +81,7 @@ export async function getABI(
|
|
|
81
81
|
if (suiClient) {
|
|
82
82
|
try {
|
|
83
83
|
return {
|
|
84
|
-
abi: await suiClient.getNormalizedMoveModulesByPackage(address),
|
|
84
|
+
abi: await suiClient.getNormalizedMoveModulesByPackage({ package: address }),
|
|
85
85
|
}
|
|
86
86
|
} catch (e) {
|
|
87
87
|
console.error(baseErrMsg, e)
|