@sentio/sdk 1.35.1-rc.2 → 1.36.0-rc.2
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/aptos/network.d.ts +1 -1
- package/lib/aptos/network.js +7 -7
- package/lib/aptos/network.js.map +1 -1
- package/lib/aptos-codegen/codegen.d.ts +1 -0
- package/lib/aptos-codegen/codegen.js +10 -2
- package/lib/aptos-codegen/codegen.js.map +1 -1
- package/lib/core/context.js +2 -2
- package/lib/core/context.js.map +1 -1
- package/lib/service.js +2 -2
- package/lib/service.js.map +1 -1
- package/lib/solana-codegen/codegen.d.ts +1 -0
- package/lib/{cli/build.js → solana-codegen/codegen.js} +3 -92
- package/lib/solana-codegen/codegen.js.map +1 -0
- package/lib/test-abi-code-gen.js +4 -3
- package/lib/test-abi-code-gen.js.map +1 -1
- package/lib/utils/chain.d.ts +86 -6
- package/lib/utils/chain.js +95 -91
- package/lib/utils/chain.js.map +1 -1
- package/package.json +3 -11
- package/src/aptos/network.ts +6 -6
- package/src/aptos-codegen/codegen.ts +10 -2
- package/src/core/context.ts +3 -3
- package/src/service.ts +3 -3
- package/src/{cli/build.ts → solana-codegen/codegen.ts} +1 -113
- package/src/test-abi-code-gen.ts +2 -1
- package/src/utils/chain.ts +94 -91
- package/lib/cli/build.d.ts +0 -4
- package/lib/cli/build.js.map +0 -1
- package/lib/cli/cli.d.ts +0 -2
- package/lib/cli/cli.js +0 -186
- package/lib/cli/cli.js.map +0 -1
- package/lib/cli/commands/login-server.d.ts +0 -7
- package/lib/cli/commands/login-server.js +0 -133
- package/lib/cli/commands/login-server.js.map +0 -1
- package/lib/cli/commands/run-create.d.ts +0 -1
- package/lib/cli/commands/run-create.js +0 -111
- package/lib/cli/commands/run-create.js.map +0 -1
- package/lib/cli/commands/run-login.d.ts +0 -1
- package/lib/cli/commands/run-login.js +0 -136
- package/lib/cli/commands/run-login.js.map +0 -1
- package/lib/cli/commands/run-version.d.ts +0 -1
- package/lib/cli/commands/run-version.js +0 -39
- package/lib/cli/commands/run-version.js.map +0 -1
- package/lib/cli/config.d.ts +0 -14
- package/lib/cli/config.js +0 -64
- package/lib/cli/config.js.map +0 -1
- package/lib/cli/key.d.ts +0 -2
- package/lib/cli/key.js +0 -44
- package/lib/cli/key.js.map +0 -1
- package/lib/cli/upload.d.ts +0 -2
- package/lib/cli/upload.js +0 -189
- package/lib/cli/upload.js.map +0 -1
- package/lib/cli/utils.d.ts +0 -1
- package/lib/cli/utils.js +0 -16
- package/lib/cli/utils.js.map +0 -1
- package/lib/cli/webpack.config.js +0 -47
- package/src/cli/cli.ts +0 -184
- package/src/cli/commands/login-server.ts +0 -119
- package/src/cli/commands/run-create.ts +0 -115
- package/src/cli/commands/run-login.ts +0 -111
- package/src/cli/commands/run-version.ts +0 -32
- package/src/cli/config.ts +0 -72
- package/src/cli/key.ts +0 -43
- package/src/cli/upload.ts +0 -214
- package/src/cli/utils.ts +0 -10
- package/src/cli/webpack.config.js +0 -47
- package/templates/aptos/abis/aptos/souffle.json +0 -389
- package/templates/aptos/jest.config.js +0 -7
- package/templates/aptos/package.json +0 -20
- package/templates/aptos/sentio.yaml +0 -1
- package/templates/aptos/src/processor.ts +0 -13
- package/templates/aptos/tsconfig.json +0 -20
- package/templates/evm/abis/evm/x2y2.json +0 -296
- package/templates/evm/jest.config.js +0 -7
- package/templates/evm/package.json +0 -20
- package/templates/evm/sentio.yaml +0 -3
- package/templates/evm/src/processor.ts +0 -29
- package/templates/evm/tsconfig.json +0 -20
- package/templates/raw/jest.config.js +0 -7
- package/templates/raw/package.json +0 -20
- package/templates/raw/sentio.yaml +0 -3
- package/templates/raw/src/processor.ts +0 -0
- package/templates/raw/tsconfig.json +0 -20
- package/templates/raw/yarn.lock +0 -4095
|
@@ -3,80 +3,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.codeGenSolanaProcessor =
|
|
7
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
6
|
+
exports.codeGenSolanaProcessor = void 0;
|
|
8
7
|
const path_1 = __importDefault(require("path"));
|
|
9
8
|
const fs_1 = __importDefault(require("fs"));
|
|
10
|
-
const
|
|
11
|
-
const codegen_1 = require("../aptos-codegen/codegen");
|
|
12
|
-
// import { EVM, SOLANA, Target } from './config'
|
|
13
|
-
async function buildProcessor(onlyGen) {
|
|
14
|
-
if (!onlyGen) {
|
|
15
|
-
await installDeps();
|
|
16
|
-
}
|
|
17
|
-
// targets.forEach(async (target) => await buildProcessorForTarget(onlyGen, target))
|
|
18
|
-
// for (const target) {
|
|
19
|
-
await buildProcessorForTarget(onlyGen);
|
|
20
|
-
// }
|
|
21
|
-
if (!onlyGen) {
|
|
22
|
-
const WEBPACK_CONFIG = path_1.default.join(__dirname, 'webpack.config.js');
|
|
23
|
-
await execStep('yarn tsc -p .', 'Compile');
|
|
24
|
-
await execStep('yarn webpack --config=' + WEBPACK_CONFIG, 'Packaging');
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
exports.buildProcessor = buildProcessor;
|
|
28
|
-
async function buildProcessorForTarget(onlyGen) {
|
|
29
|
-
await codeGenEthersProcessor(path_1.default.join('abis', 'evm'));
|
|
30
|
-
codeGenSolanaProcessor(path_1.default.join('abis', 'solana'));
|
|
31
|
-
codeGenAptosProcessor(path_1.default.join('abis', 'aptos'));
|
|
32
|
-
if (onlyGen) {
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
async function installDeps() {
|
|
37
|
-
await execStep('yarn install --ignore-scripts', 'Yarn Install');
|
|
38
|
-
}
|
|
39
|
-
function codeGenAptosProcessor(abisDir, outDir = 'src/types/aptos') {
|
|
40
|
-
if (!fs_1.default.existsSync(abisDir)) {
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
// const files = fs.readdirSync(abisDir)
|
|
44
|
-
console.log(chalk_1.default.green('Generated Types for Aptos'));
|
|
45
|
-
(0, codegen_1.generate)(abisDir, outDir);
|
|
46
|
-
// for (const file of files) {
|
|
47
|
-
// if (path.extname(file) === '.json') {
|
|
48
|
-
// if (!fs.existsSync(outDir)) {
|
|
49
|
-
// fs.mkdirSync(outDir, { recursive: true })
|
|
50
|
-
// }
|
|
51
|
-
// }
|
|
52
|
-
// const codegen = new AptosAccountCodegen({
|
|
53
|
-
// srcFile: path.join(abisDir, file),
|
|
54
|
-
// outputDir: outDir,
|
|
55
|
-
// })
|
|
56
|
-
// codegen.generate()
|
|
57
|
-
// }
|
|
58
|
-
}
|
|
59
|
-
exports.codeGenAptosProcessor = codeGenAptosProcessor;
|
|
60
|
-
async function codeGenEthersProcessor(abisDir, ETHERS_TARGET = path_1.default.join(__dirname, '../target-ethers-sentio'), outDir = 'src/types/internal') {
|
|
61
|
-
if (!fs_1.default.existsSync(abisDir)) {
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
let haveJson = false;
|
|
65
|
-
const files = fs_1.default.readdirSync(abisDir);
|
|
66
|
-
for (const file of files) {
|
|
67
|
-
if (file.toLowerCase().endsWith('.json')) {
|
|
68
|
-
haveJson = true;
|
|
69
|
-
break;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
if (!haveJson) {
|
|
73
|
-
return;
|
|
74
|
-
}
|
|
75
|
-
console.log(chalk_1.default.green('Generated Types for EVM'));
|
|
76
|
-
// TODO this will fail during postinstall, need to locate real typechain path
|
|
77
|
-
await execStep('yarn typechain --target ' + ETHERS_TARGET + ` --out-dir ${outDir} ${path_1.default.join(abisDir, '*.json')}`, 'Type definitions gen');
|
|
78
|
-
}
|
|
79
|
-
exports.codeGenEthersProcessor = codeGenEthersProcessor;
|
|
9
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
80
10
|
function codeGenSolanaProcessor(abisDir, targetPath = path_1.default.join('src', 'types', 'solana')) {
|
|
81
11
|
if (!fs_1.default.existsSync(abisDir)) {
|
|
82
12
|
return;
|
|
@@ -180,23 +110,4 @@ function toPascalCase(str) {
|
|
|
180
110
|
.replace(new RegExp(/\s+(.)(\w*)/, 'g'), ($1, $2, $3) => `${$2.toUpperCase() + $3}`)
|
|
181
111
|
.replace(new RegExp(/\w/), (s) => s.toUpperCase());
|
|
182
112
|
}
|
|
183
|
-
|
|
184
|
-
const child = (0, child_process_1.exec)(cmd);
|
|
185
|
-
console.log(chalk_1.default.blue(stepName + ' begin'));
|
|
186
|
-
if (!child.stdout || !child.stderr) {
|
|
187
|
-
console.error(chalk_1.default.red(stepName + ' failed'));
|
|
188
|
-
process.exit(1);
|
|
189
|
-
}
|
|
190
|
-
child.stdout.pipe(process.stdout);
|
|
191
|
-
child.stderr.pipe(process.stderr);
|
|
192
|
-
await new Promise((resolve) => {
|
|
193
|
-
child.on('close', resolve);
|
|
194
|
-
});
|
|
195
|
-
if (child.exitCode) {
|
|
196
|
-
console.error(chalk_1.default.red(stepName + ' failed'));
|
|
197
|
-
process.exit(child.exitCode);
|
|
198
|
-
}
|
|
199
|
-
console.log(chalk_1.default.blue(stepName + ' success'));
|
|
200
|
-
console.log();
|
|
201
|
-
}
|
|
202
|
-
//# sourceMappingURL=build.js.map
|
|
113
|
+
//# sourceMappingURL=codegen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../src/solana-codegen/codegen.ts"],"names":[],"mappings":"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","sourcesContent":["import path from 'path'\nimport fs from 'fs'\nimport chalk from 'chalk'\n\nexport function codeGenSolanaProcessor(abisDir: string, targetPath = path.join('src', 'types', 'solana')) {\n if (!fs.existsSync(abisDir)) {\n return\n }\n\n const abisFiles = fs.readdirSync(abisDir)\n\n if (abisFiles.length > 0) {\n console.log(chalk.green('Generated Types for Solana'))\n }\n\n for (const file of abisFiles) {\n if (path.extname(file) === '.json') {\n if (!fs.existsSync(targetPath)) {\n fs.mkdirSync(targetPath, { recursive: true })\n }\n const idlContent = fs.readFileSync(path.join(abisDir, file), 'utf-8')\n const idlObj = JSON.parse(idlContent)\n const idlName = idlObj.name\n const idlFile = path.join(targetPath, idlName + '.ts')\n fs.writeFileSync(idlFile, `export const ${idlName}_idl = ${idlContent}`)\n fs.writeFileSync(path.join(targetPath, `${idlName}_processor.ts`), codeGenSolanaIdlProcessor(idlObj))\n }\n }\n}\n\nfunction codeGenSolanaIdlProcessor(idlObj: any): string {\n const idlName = idlObj.name\n const idlNamePascalCase = toPascalCase(idlName)\n const instructions: any[] = idlObj.instructions\n return `import { BorshInstructionCoder, Instruction, Idl, BN } from '@project-serum/anchor'\nimport { SolanaBaseProcessor, SolanaContext, SolanaBindOptions } from \"@sentio/sdk\"\nimport { ${idlName}_idl } from \"./${idlName}\"\nimport bs58 from 'bs58'\nimport { PublicKey } from '@solana/web3.js'\n\nexport class ${idlNamePascalCase}Processor extends SolanaBaseProcessor {\n static bind(options: SolanaBindOptions): ${idlNamePascalCase}Processor {\n if (options && !options.name) {\n options.name = '${idlNamePascalCase}'\n }\n return new ${idlNamePascalCase}Processor(options)\n }\n\n decodeInstruction: (rawInstruction: string) => Instruction | null = (rawInstruction) => {\n const instructionCoder = new BorshInstructionCoder(${idlName}_idl as Idl)\n const decodedIns = instructionCoder.decode(Buffer.from(bs58.decode(rawInstruction)))\n return decodedIns\n }\n\n ${instructions.map((ins) => codeGenSolanaInstruction(idlNamePascalCase, ins)).join('')}\n}\n `\n}\n\nfunction codeGenSolanaInstruction(idlName: string, ins: any): string {\n const instructionName = ins.name\n const argsTypeString = codeGenInstructionArgs(ins.args)\n return `\n on${\n instructionName.charAt(0).toUpperCase() + instructionName.slice(1)\n }(handler: (args: ${argsTypeString}, accounts: string[], ctx: SolanaContext) => void): ${idlName}Processor {\n this.onInstruction('${instructionName}', (ins: Instruction, ctx, accounts: string[]) => {\n if (ins) {\n handler(ins.data as ${argsTypeString}, accounts, ctx)\n }\n })\n return this\n }\n `\n}\n\nfunction codeGenInstructionArgs(args: { name: string; type: string }[]): string {\n return `{ ${args.map((arg) => arg.name + ': ' + mapType(arg.type)).join(', ')} }`\n}\n\n// Reference: https://github.com/coral-xyz/anchor/blob/93332766f13e86efbe77c9986722731742317ede/ts/src/program/namespace/types.ts#L104\nfunction mapType(tpe: string): string {\n switch (tpe) {\n case 'publicKey':\n return 'PublicKey'\n case 'bool':\n return 'boolean'\n case 'string':\n return 'string'\n case 'u8':\n case 'i8':\n case 'u16':\n case 'i16':\n case 'u32':\n case 'i32':\n case 'f32':\n case 'f64':\n return 'number'\n case 'u64':\n case 'i64':\n case 'u128':\n case 'i128':\n return 'BN'\n default:\n return 'any'\n }\n}\n\nfunction toPascalCase(str: string) {\n return `${str}`\n .toLowerCase()\n .replace(new RegExp(/[-_]+/, 'g'), ' ')\n .replace(new RegExp(/[^\\w\\s]/, 'g'), '')\n .replace(new RegExp(/\\s+(.)(\\w*)/, 'g'), ($1, $2, $3) => `${$2.toUpperCase() + $3}`)\n .replace(new RegExp(/\\w/), (s) => s.toUpperCase())\n}\n"]}
|
package/lib/test-abi-code-gen.js
CHANGED
|
@@ -4,13 +4,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
5
|
};
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
const build_1 = require("./cli/build");
|
|
8
7
|
const path_1 = __importDefault(require("path"));
|
|
8
|
+
const codegen_1 = require("./solana-codegen/codegen");
|
|
9
|
+
const codegen_2 = require("./aptos-codegen/codegen");
|
|
9
10
|
if (process.argv.length > 3) {
|
|
10
11
|
const abisDir = process.argv[2];
|
|
11
12
|
const targetDir = process.argv[3];
|
|
12
|
-
(0,
|
|
13
|
-
(0,
|
|
13
|
+
(0, codegen_2.codeGenAptosProcessor)(path_1.default.join(abisDir, 'aptos'), path_1.default.join(targetDir, 'aptos'));
|
|
14
|
+
(0, codegen_1.codeGenSolanaProcessor)(path_1.default.join(abisDir, 'solana'), path_1.default.join(targetDir, 'solana'));
|
|
14
15
|
}
|
|
15
16
|
else {
|
|
16
17
|
console.error('Not enough argument');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-abi-code-gen.js","sourceRoot":"","sources":["../src/test-abi-code-gen.ts"],"names":[],"mappings":";;;;;;AAEA,
|
|
1
|
+
{"version":3,"file":"test-abi-code-gen.js","sourceRoot":"","sources":["../src/test-abi-code-gen.ts"],"names":[],"mappings":";;;;;;AAEA,gDAAuB;AACvB,sDAAiE;AACjE,qDAA+D;AAE/D,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;IAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC/B,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAEjC,IAAA,+BAAqB,EAAC,cAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;IACjF,IAAA,gCAAsB,EAAC,cAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAA;CACrF;KAAM;IACL,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;IACpC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;CAChB","sourcesContent":["#!/usr/bin/env node\n\nimport path from 'path'\nimport { codeGenSolanaProcessor } from './solana-codegen/codegen'\nimport { codeGenAptosProcessor } from './aptos-codegen/codegen'\n\nif (process.argv.length > 3) {\n const abisDir = process.argv[2]\n const targetDir = process.argv[3]\n\n codeGenAptosProcessor(path.join(abisDir, 'aptos'), path.join(targetDir, 'aptos'))\n codeGenSolanaProcessor(path.join(abisDir, 'solana'), path.join(targetDir, 'solana'))\n} else {\n console.error('Not enough argument')\n process.exit(1)\n}\n"]}
|
package/lib/utils/chain.d.ts
CHANGED
|
@@ -1,9 +1,89 @@
|
|
|
1
|
+
export declare const CHAIN_IDS: {
|
|
2
|
+
KARDIA: string;
|
|
3
|
+
ETHEREUM: string;
|
|
4
|
+
EXPANSE: string;
|
|
5
|
+
ROPSTEN: string;
|
|
6
|
+
RINKEBY: string;
|
|
7
|
+
GOERLI: string;
|
|
8
|
+
KOTTI: string;
|
|
9
|
+
UBIQ: string;
|
|
10
|
+
OPTIMISM: string;
|
|
11
|
+
SONGBIRD: string;
|
|
12
|
+
ELASTOS: string;
|
|
13
|
+
CRONOS: string;
|
|
14
|
+
RSK: string;
|
|
15
|
+
TELOS: string;
|
|
16
|
+
XDC: string;
|
|
17
|
+
CSC: string;
|
|
18
|
+
ZYX: string;
|
|
19
|
+
BINANCE: string;
|
|
20
|
+
SYSCOIN: string;
|
|
21
|
+
GOCHAIN: string;
|
|
22
|
+
ETHCLASSIC: string;
|
|
23
|
+
MORDOR: string;
|
|
24
|
+
OKEXCHAIN: string;
|
|
25
|
+
HOO: string;
|
|
26
|
+
METER: string;
|
|
27
|
+
TOMOCHAIN: string;
|
|
28
|
+
XDAI: string;
|
|
29
|
+
VELAS: string;
|
|
30
|
+
THUNDERCORE: string;
|
|
31
|
+
FUSE: string;
|
|
32
|
+
HECO: string;
|
|
33
|
+
POLYGON: string;
|
|
34
|
+
XDAIARB: string;
|
|
35
|
+
ASTOR: string;
|
|
36
|
+
ENERGYWEB: string;
|
|
37
|
+
FANTOM: string;
|
|
38
|
+
HPB: string;
|
|
39
|
+
BOBA: string;
|
|
40
|
+
KUCOIN: string;
|
|
41
|
+
SHIDEN: string;
|
|
42
|
+
THETA: string;
|
|
43
|
+
SX: string;
|
|
44
|
+
CANDLE: string;
|
|
45
|
+
ASTAR: string;
|
|
46
|
+
CALLISTO: string;
|
|
47
|
+
WANCHAIN: string;
|
|
48
|
+
METIS: string;
|
|
49
|
+
OMCHAIN: string;
|
|
50
|
+
MOONBEAM: string;
|
|
51
|
+
MOONRIVER: string;
|
|
52
|
+
DEV: string;
|
|
53
|
+
RONIN: string;
|
|
54
|
+
KAVA: string;
|
|
55
|
+
EZCHAIN: string;
|
|
56
|
+
PHI: string;
|
|
57
|
+
IOTEX: string;
|
|
58
|
+
XLC: string;
|
|
59
|
+
NAHMII: string;
|
|
60
|
+
NMACTEST: string;
|
|
61
|
+
KLAYTN: string;
|
|
62
|
+
EVMOS: string;
|
|
63
|
+
SMARTBCH: string;
|
|
64
|
+
CRYSTALEUM: string;
|
|
65
|
+
FUSION: string;
|
|
66
|
+
ARBITRUM: string;
|
|
67
|
+
CELO: string;
|
|
68
|
+
OASIS: string;
|
|
69
|
+
AVALANCHE: string;
|
|
70
|
+
GODWOKEN: string;
|
|
71
|
+
AKROMA: string;
|
|
72
|
+
POLIS: string;
|
|
73
|
+
ARBITRUM_TEST: string;
|
|
74
|
+
SEPOLIA: string;
|
|
75
|
+
AURORA: string;
|
|
76
|
+
HARMONY: string;
|
|
77
|
+
PALM: string;
|
|
78
|
+
CURIO: string;
|
|
79
|
+
SOLANA_MAINNET: string;
|
|
80
|
+
SOLANA_DEVNET: string;
|
|
81
|
+
SOLANA_TESTNET: string;
|
|
82
|
+
SOLANA_PYTH: string;
|
|
83
|
+
SUI_DEVNET: string;
|
|
84
|
+
APTOS_MAINNET: string;
|
|
85
|
+
APTOS_TESTNET: string;
|
|
86
|
+
};
|
|
1
87
|
export declare const CHAIN_MAP: Record<string, string>;
|
|
2
|
-
export declare const SOL_MAINMET_ID = "sol_mainnet";
|
|
3
|
-
export declare const SOL_DEVNET_ID = "sol_devnet";
|
|
4
|
-
export declare const SOL_TESTNENT_ID = "sol_testnet";
|
|
5
|
-
export declare const SUI_DEVNET_ID = "sui_devnet";
|
|
6
|
-
export declare const APTOS_TESTNET_ID = "aptos_testnet";
|
|
7
|
-
export declare const APTOS_MAINNET_ID = "aptos_mainnet";
|
|
8
88
|
export declare function getChainName(chainId: string | number | null | undefined): string;
|
|
9
89
|
export declare function getChainType(chainId?: string | number): string;
|
package/lib/utils/chain.js
CHANGED
|
@@ -2,98 +2,102 @@
|
|
|
2
2
|
// copy from https://github.com/DefiLlama/chainlist/blob/main/constants/chainIds.js
|
|
3
3
|
// and https://besu.hyperledger.org/en/stable/Concepts/NetworkID-And-ChainID/
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.getChainType = exports.getChainName = exports.
|
|
6
|
-
exports.
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
5
|
+
exports.getChainType = exports.getChainName = exports.CHAIN_MAP = exports.CHAIN_IDS = void 0;
|
|
6
|
+
exports.CHAIN_IDS = {
|
|
7
|
+
KARDIA: '0',
|
|
8
|
+
ETHEREUM: '1',
|
|
9
|
+
EXPANSE: '2',
|
|
10
|
+
ROPSTEN: '3',
|
|
11
|
+
RINKEBY: '4',
|
|
12
|
+
GOERLI: '5',
|
|
13
|
+
KOTTI: '6',
|
|
14
|
+
UBIQ: '8',
|
|
15
|
+
OPTIMISM: '10',
|
|
16
|
+
SONGBIRD: '19',
|
|
17
|
+
ELASTOS: '20',
|
|
18
|
+
CRONOS: '25',
|
|
19
|
+
RSK: '30',
|
|
20
|
+
TELOS: '40',
|
|
21
|
+
XDC: '50',
|
|
22
|
+
CSC: '52',
|
|
23
|
+
ZYX: '55',
|
|
24
|
+
BINANCE: '56',
|
|
25
|
+
SYSCOIN: '57',
|
|
26
|
+
GOCHAIN: '60',
|
|
27
|
+
ETHCLASSIC: '61',
|
|
28
|
+
MORDOR: '63',
|
|
29
|
+
OKEXCHAIN: '66',
|
|
30
|
+
HOO: '70',
|
|
31
|
+
METER: '82',
|
|
32
|
+
TOMOCHAIN: '88',
|
|
33
|
+
XDAI: '100',
|
|
34
|
+
VELAS: '106',
|
|
35
|
+
THUNDERCORE: '108',
|
|
36
|
+
FUSE: '122',
|
|
37
|
+
HECO: '128',
|
|
38
|
+
POLYGON: '137',
|
|
39
|
+
XDAIARB: '200',
|
|
40
|
+
ASTOR: '212',
|
|
41
|
+
ENERGYWEB: '246',
|
|
42
|
+
FANTOM: '250',
|
|
43
|
+
HPB: '269',
|
|
44
|
+
BOBA: '288',
|
|
45
|
+
KUCOIN: '321',
|
|
46
|
+
SHIDEN: '336',
|
|
47
|
+
THETA: '361',
|
|
48
|
+
SX: '416',
|
|
49
|
+
CANDLE: '534',
|
|
50
|
+
ASTAR: '592',
|
|
51
|
+
CALLISTO: '820',
|
|
52
|
+
WANCHAIN: '888',
|
|
53
|
+
METIS: '1088',
|
|
54
|
+
OMCHAIN: '1246',
|
|
55
|
+
MOONBEAM: '1284',
|
|
56
|
+
MOONRIVER: '1285',
|
|
57
|
+
DEV: '2018',
|
|
58
|
+
RONIN: '2020',
|
|
59
|
+
KAVA: '2222',
|
|
60
|
+
EZCHAIN: '2612',
|
|
61
|
+
PHI: '4181',
|
|
62
|
+
IOTEX: '4689',
|
|
63
|
+
XLC: '5050',
|
|
64
|
+
NAHMII: '5551',
|
|
65
|
+
NMACTEST: '7777',
|
|
66
|
+
KLAYTN: '8217',
|
|
67
|
+
EVMOS: '9001',
|
|
68
|
+
SMARTBCH: '10000',
|
|
69
|
+
CRYSTALEUM: '103090',
|
|
70
|
+
FUSION: '32659',
|
|
71
|
+
ARBITRUM: '42161',
|
|
72
|
+
CELO: '42220',
|
|
73
|
+
OASIS: '42262',
|
|
74
|
+
AVALANCHE: '43114',
|
|
75
|
+
GODWOKEN: '71402',
|
|
76
|
+
AKROMA: '200625',
|
|
77
|
+
POLIS: '333999',
|
|
78
|
+
ARBITRUM_TEST: '421613',
|
|
79
|
+
SEPOLIA: '11155111',
|
|
80
|
+
AURORA: '1313161554',
|
|
81
|
+
HARMONY: '1666600000',
|
|
82
|
+
PALM: '11297108109',
|
|
83
|
+
CURIO: '836542336838601',
|
|
84
|
+
SOLANA_MAINNET: 'sol_mainnet',
|
|
85
|
+
SOLANA_DEVNET: 'sol_devnet',
|
|
86
|
+
SOLANA_TESTNET: 'sol_testnet',
|
|
87
|
+
SOLANA_PYTH: 'sol_pyth',
|
|
88
|
+
SUI_DEVNET: 'sui_devnet',
|
|
89
|
+
APTOS_MAINNET: 'aptos_mainnet',
|
|
90
|
+
APTOS_TESTNET: 'aptos_testnet',
|
|
84
91
|
};
|
|
85
|
-
exports.
|
|
86
|
-
exports.
|
|
87
|
-
|
|
88
|
-
exports.CHAIN_MAP[
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
exports.APTOS_MAINNET_ID = 'aptos_mainnet';
|
|
95
|
-
exports.CHAIN_MAP[exports.APTOS_TESTNET_ID] = 'aptos-test';
|
|
96
|
-
exports.CHAIN_MAP[exports.APTOS_MAINNET_ID] = 'aptos-mainnet';
|
|
92
|
+
exports.CHAIN_MAP = {};
|
|
93
|
+
for (const [key, value] of Object.entries(exports.CHAIN_IDS)) {
|
|
94
|
+
const parts = key.split('_');
|
|
95
|
+
exports.CHAIN_MAP[value] = parts
|
|
96
|
+
.map((part, index) => {
|
|
97
|
+
return part[0] + part.slice(1).toLowerCase();
|
|
98
|
+
})
|
|
99
|
+
.join(' ');
|
|
100
|
+
}
|
|
97
101
|
function getChainName(chainId) {
|
|
98
102
|
if (typeof chainId === 'number') {
|
|
99
103
|
chainId = chainId.toString();
|
package/lib/utils/chain.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chain.js","sourceRoot":"","sources":["../../src/utils/chain.ts"],"names":[],"mappings":";AAAA,mFAAmF;AACnF,6EAA6E;;;AAEhE,QAAA,SAAS,
|
|
1
|
+
{"version":3,"file":"chain.js","sourceRoot":"","sources":["../../src/utils/chain.ts"],"names":[],"mappings":"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","sourcesContent":["// copy from https://github.com/DefiLlama/chainlist/blob/main/constants/chainIds.js\n// and https://besu.hyperledger.org/en/stable/Concepts/NetworkID-And-ChainID/\n\nexport const CHAIN_IDS = {\n KARDIA: '0',\n ETHEREUM: '1',\n EXPANSE: '2',\n ROPSTEN: '3',\n RINKEBY: '4',\n GOERLI: '5',\n KOTTI: '6',\n UBIQ: '8',\n OPTIMISM: '10',\n SONGBIRD: '19',\n ELASTOS: '20',\n CRONOS: '25',\n RSK: '30',\n TELOS: '40',\n XDC: '50',\n CSC: '52',\n ZYX: '55',\n BINANCE: '56',\n SYSCOIN: '57',\n GOCHAIN: '60',\n ETHCLASSIC: '61',\n MORDOR: '63',\n OKEXCHAIN: '66',\n HOO: '70',\n METER: '82',\n TOMOCHAIN: '88',\n XDAI: '100',\n VELAS: '106',\n THUNDERCORE: '108',\n FUSE: '122',\n HECO: '128',\n POLYGON: '137',\n XDAIARB: '200',\n ASTOR: '212',\n ENERGYWEB: '246',\n FANTOM: '250',\n HPB: '269',\n BOBA: '288',\n KUCOIN: '321',\n SHIDEN: '336',\n THETA: '361',\n SX: '416',\n CANDLE: '534',\n ASTAR: '592',\n CALLISTO: '820',\n WANCHAIN: '888',\n METIS: '1088',\n OMCHAIN: '1246',\n MOONBEAM: '1284',\n MOONRIVER: '1285',\n DEV: '2018',\n RONIN: '2020',\n KAVA: '2222',\n EZCHAIN: '2612',\n PHI: '4181',\n IOTEX: '4689',\n XLC: '5050',\n NAHMII: '5551',\n NMACTEST: '7777',\n KLAYTN: '8217',\n EVMOS: '9001',\n SMARTBCH: '10000',\n CRYSTALEUM: '103090',\n FUSION: '32659',\n ARBITRUM: '42161',\n CELO: '42220',\n OASIS: '42262',\n AVALANCHE: '43114',\n GODWOKEN: '71402',\n AKROMA: '200625',\n POLIS: '333999',\n ARBITRUM_TEST: '421613',\n SEPOLIA: '11155111',\n AURORA: '1313161554',\n HARMONY: '1666600000',\n PALM: '11297108109',\n CURIO: '836542336838601',\n SOLANA_MAINNET: 'sol_mainnet',\n SOLANA_DEVNET: 'sol_devnet',\n SOLANA_TESTNET: 'sol_testnet',\n SOLANA_PYTH: 'sol_pyth',\n SUI_DEVNET: 'sui_devnet',\n APTOS_MAINNET: 'aptos_mainnet',\n APTOS_TESTNET: 'aptos_testnet',\n}\n\nexport const CHAIN_MAP: Record<string, string> = {}\n\nfor (const [key, value] of Object.entries(CHAIN_IDS)) {\n const parts = key.split('_')\n CHAIN_MAP[value] = parts\n .map((part, index) => {\n return part[0] + part.slice(1).toLowerCase()\n })\n .join(' ')\n}\n\nexport function getChainName(chainId: string | number | null | undefined): string {\n if (typeof chainId === 'number') {\n chainId = chainId.toString()\n }\n if (chainId) {\n const name = CHAIN_MAP[chainId]\n if (name) {\n return name\n }\n }\n return chainId || ''\n}\n\nexport function getChainType(chainId?: string | number): string {\n const id = String(chainId).toLowerCase()\n if (id.startsWith('sol')) {\n return 'solana'\n }\n if (id.startsWith('sui')) {\n return 'sui'\n }\n if (id.startsWith('apt')) {\n return 'aptos'\n }\n return 'EVM'\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sentio/sdk",
|
|
3
3
|
"license": "Apache-2.0",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.36.0-rc.2",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"compile_target": "yarn tsc -b src/target-ethers-sentio/tsconfig.json",
|
|
7
|
-
"compile": "tsc -p . && cp src/
|
|
7
|
+
"compile": "tsc -p . && cp src/utils/*.csv lib/utils",
|
|
8
8
|
"build": "yarn gen && yarn compile",
|
|
9
9
|
"start_ts": "ts-node --files src/processor-runner.ts --log-format=json ../examples/x2y2/src/processor.ts",
|
|
10
10
|
"start": "ts-node --files src/processor-runner.ts ../examples/aptos/dist/lib.js",
|
|
11
11
|
"start_js": "node lib/processor-runner.js ../examples/aptos/dist/lib.js",
|
|
12
12
|
"ts-start": "ts-node --files src/processor-runner.ts ./src/anyswap/src/processor.ts",
|
|
13
|
-
"cli": "ts-node src/cli/cli.ts",
|
|
14
13
|
"test": "jest",
|
|
15
14
|
"test-nocache": "yarn jest --clearCache && yarn jest",
|
|
16
15
|
"gen": "yarn compile_target && yarn gen_bultin_evm && yarn gen_bultin_others && yarn gen_test_abi",
|
|
@@ -26,7 +25,6 @@
|
|
|
26
25
|
"@solana/web3.js": "^1.47.3",
|
|
27
26
|
"@typechain/ethers-v5": "^10.0.0",
|
|
28
27
|
"@types/bn.js": "^5.1.0",
|
|
29
|
-
"@types/express": "^4.17.14",
|
|
30
28
|
"@types/node-fetch": "^2.6.2",
|
|
31
29
|
"aptos-sdk": "npm:aptos@^1.3.17",
|
|
32
30
|
"bignumber.js": "^9.1.0",
|
|
@@ -36,7 +34,6 @@
|
|
|
36
34
|
"command-line-usage": "^6.1.3",
|
|
37
35
|
"csv-parse": "^5.3.0",
|
|
38
36
|
"ethers": "~5.7.1",
|
|
39
|
-
"express": "^4.18.2",
|
|
40
37
|
"form-data": "^4.0.0",
|
|
41
38
|
"fs-extra": "^11.0.0",
|
|
42
39
|
"google-protobuf": "^3.15.8",
|
|
@@ -45,12 +42,8 @@
|
|
|
45
42
|
"nice-grpc-client-middleware-retry": "^2.0.1",
|
|
46
43
|
"nice-grpc-error-details": "^0.1.4",
|
|
47
44
|
"node-fetch": "2",
|
|
48
|
-
"open": "^8.4.0",
|
|
49
45
|
"p-queue": "^6.6.2",
|
|
50
|
-
"ts-loader": "^9.3.0",
|
|
51
46
|
"typechain": "^8.0.0",
|
|
52
|
-
"webpack": "^5.72.1",
|
|
53
|
-
"webpack-cli": "^5.0.0",
|
|
54
47
|
"winston": "^3.8.2"
|
|
55
48
|
},
|
|
56
49
|
"resolutions": {
|
|
@@ -81,8 +74,7 @@
|
|
|
81
74
|
"typescript": "^4.8.0"
|
|
82
75
|
},
|
|
83
76
|
"bin": {
|
|
84
|
-
"processor-runner": "./lib/processor-runner.js"
|
|
85
|
-
"sentio": "./lib/cli/cli.js"
|
|
77
|
+
"processor-runner": "./lib/processor-runner.js"
|
|
86
78
|
},
|
|
87
79
|
"main": "./lib/index.js",
|
|
88
80
|
"types": "./lib/index.d.ts",
|
package/src/aptos/network.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CHAIN_IDS, CHAIN_MAP, getChainName } from '../utils/chain'
|
|
2
2
|
import { AptosClient } from 'aptos-sdk'
|
|
3
3
|
|
|
4
4
|
export enum AptosNetwork {
|
|
@@ -10,17 +10,17 @@ export enum AptosNetwork {
|
|
|
10
10
|
export function getChainId(network: AptosNetwork): string {
|
|
11
11
|
switch (network) {
|
|
12
12
|
case AptosNetwork.TEST_NET:
|
|
13
|
-
return
|
|
13
|
+
return CHAIN_IDS.APTOS_TESTNET
|
|
14
14
|
}
|
|
15
|
-
return
|
|
15
|
+
return CHAIN_IDS.APTOS_MAINNET
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
-
export function
|
|
18
|
+
export function getAptosChainName(network: AptosNetwork): string {
|
|
19
19
|
switch (network) {
|
|
20
20
|
case AptosNetwork.TEST_NET:
|
|
21
|
-
return
|
|
21
|
+
return getChainName(CHAIN_IDS.APTOS_TESTNET)
|
|
22
22
|
}
|
|
23
|
-
return
|
|
23
|
+
return getChainName(CHAIN_IDS.APTOS_MAINNET)
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
export function getRpcEndpoint(network: AptosNetwork): string {
|
|
@@ -5,9 +5,17 @@ import { MoveFunction, MoveModule, MoveModuleBytecode, MoveStruct } from 'aptos-
|
|
|
5
5
|
import { AccountModulesImportInfo, AccountRegister, generateType } from './typegen'
|
|
6
6
|
import { getMeaningfulFunctionParams, isFrameworkAccount, moduleQname, SPLITTER } from '../aptos/utils'
|
|
7
7
|
import chalk from 'chalk'
|
|
8
|
-
import { AptosNetwork,
|
|
8
|
+
import { AptosNetwork, getAptosChainName, getRpcClient } from '../aptos/network'
|
|
9
9
|
import { parseMoveType } from '../aptos/types'
|
|
10
10
|
|
|
11
|
+
export function codeGenAptosProcessor(abisDir: string, outDir = 'src/types/aptos') {
|
|
12
|
+
if (!fs.existsSync(abisDir)) {
|
|
13
|
+
return
|
|
14
|
+
}
|
|
15
|
+
console.log(chalk.green('Generated Types for Aptos'))
|
|
16
|
+
generate(abisDir, outDir)
|
|
17
|
+
}
|
|
18
|
+
|
|
11
19
|
export async function generate(srcDir: string, outputDir: string) {
|
|
12
20
|
await generateForNetwork(srcDir, outputDir, AptosNetwork.MAIN_NET)
|
|
13
21
|
await generateForNetwork(path.join(srcDir, 'testnet'), path.join(outputDir, 'testnet'), AptosNetwork.TEST_NET)
|
|
@@ -57,7 +65,7 @@ export async function generateForNetwork(srcDir: string, outputDir: string, netw
|
|
|
57
65
|
|
|
58
66
|
while (loader.pendingAccounts.size > 0) {
|
|
59
67
|
for (const account of loader.pendingAccounts) {
|
|
60
|
-
console.log(`download dependent module for account ${account} at ${
|
|
68
|
+
console.log(`download dependent module for account ${account} at ${getAptosChainName(network)}`)
|
|
61
69
|
|
|
62
70
|
try {
|
|
63
71
|
const modules = await client.getAccountModules(account)
|
package/src/core/context.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { normalizeLabels } from './meter'
|
|
|
5
5
|
import Long from 'long'
|
|
6
6
|
import { Trace } from './trace'
|
|
7
7
|
import { Labels } from './metadata'
|
|
8
|
-
import {
|
|
8
|
+
import { CHAIN_IDS } from '../utils/chain'
|
|
9
9
|
import { BaseContext } from './base-context'
|
|
10
10
|
|
|
11
11
|
export abstract class EthContext extends BaseContext {
|
|
@@ -176,7 +176,7 @@ export class SolanaContext extends BaseContext {
|
|
|
176
176
|
transactionIndex: 0,
|
|
177
177
|
transactionHash: '', // TODO add
|
|
178
178
|
logIndex: 0,
|
|
179
|
-
chainId:
|
|
179
|
+
chainId: CHAIN_IDS.SOLANA_MAINNET, // TODO set in context
|
|
180
180
|
name: name,
|
|
181
181
|
labels: normalizeLabels(labels),
|
|
182
182
|
}
|
|
@@ -202,7 +202,7 @@ export class SuiContext extends BaseContext {
|
|
|
202
202
|
transactionIndex: 0,
|
|
203
203
|
transactionHash: '', // TODO
|
|
204
204
|
logIndex: 0,
|
|
205
|
-
chainId:
|
|
205
|
+
chainId: CHAIN_IDS.SUI_DEVNET, // TODO set in context
|
|
206
206
|
name: name,
|
|
207
207
|
labels: normalizeLabels(labels),
|
|
208
208
|
}
|