@typemove/aptos 1.2.6-rc.2 → 1.2.6-rc.3

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.
@@ -1,6 +1,6 @@
1
1
  import { Event, MoveModuleBytecode, MoveResource } from '../move-types.js';
2
2
  import { AbstractCodegen, InternalMoveFunction, InternalMoveModule } from '@typemove/move';
3
- export declare function codegen(abisDir: string, outDir: string | undefined, endpoint: string, genExample?: boolean, builtin?: boolean): Promise<void>;
3
+ export declare function codegen(abisDir: string, outDir: string | undefined, endpoint: string, genExample?: boolean, builtin?: boolean): Promise<number>;
4
4
  export declare class AptosCodegen extends AbstractCodegen<MoveModuleBytecode, Event | MoveResource> {
5
5
  ADDRESS_TYPE: string;
6
6
  PREFIX: string;
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../../../src/codegen/codegen.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAI1E,OAAO,EAAE,eAAe,EAAS,oBAAoB,EAAE,kBAAkB,EAAqB,MAAM,gBAAgB,CAAA;AAGpH,wBAAsB,OAAO,CAC3B,OAAO,EAAE,MAAM,EACf,MAAM,oBAAgC,EACtC,QAAQ,EAAE,MAAM,EAChB,UAAU,UAAQ,EAClB,OAAO,UAAQ,iBAQhB;AAED,qBAAa,YAAa,SAAQ,eAAe,CAAC,kBAAkB,EAAE,KAAK,GAAG,YAAY,CAAC;IACzF,YAAY,SAAY;IACxB,MAAM,SAAU;IAChB,cAAc,SAAoB;gBAEtB,QAAQ,EAAE,MAAM;IAI5B,eAAe,IAAI,MAAM;IAMzB,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,kBAAkB;IAelD,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,GAAG,MAAM;IA2C9F,SAAS,CAAC,wBAAwB,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,GAAG,MAAM;CAmCnG"}
1
+ {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../../../src/codegen/codegen.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAI1E,OAAO,EAAE,eAAe,EAAS,oBAAoB,EAAE,kBAAkB,EAAqB,MAAM,gBAAgB,CAAA;AAGpH,wBAAsB,OAAO,CAC3B,OAAO,EAAE,MAAM,EACf,MAAM,oBAAgC,EACtC,QAAQ,EAAE,MAAM,EAChB,UAAU,UAAQ,EAClB,OAAO,UAAQ,mBAoBhB;AAED,qBAAa,YAAa,SAAQ,eAAe,CAAC,kBAAkB,EAAE,KAAK,GAAG,YAAY,CAAC;IACzF,YAAY,SAAY;IACxB,MAAM,SAAU;IAChB,cAAc,SAAoB;gBAEtB,QAAQ,EAAE,MAAM;IAI5B,eAAe,IAAI,MAAM;IAMzB,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,kBAAkB;IAelD,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,GAAG,MAAM;IA2C9F,SAAS,CAAC,wBAAwB,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,GAAG,MAAM;CAmCnG"}
@@ -10,11 +10,25 @@ const move_1 = require("@typemove/move");
10
10
  const aptos_1 = require("aptos");
11
11
  async function codegen(abisDir, outDir = (0, path_1.join)('src', 'types', 'aptos'), endpoint, genExample = false, builtin = false) {
12
12
  if (!fs.existsSync(abisDir)) {
13
- return;
13
+ console.error(chalk_1.default.red(`ABIs directory ${abisDir} does not exist`));
14
+ return 0;
14
15
  }
15
16
  const gen = new AptosCodegen(endpoint);
16
- const numFiles = await gen.generate(abisDir, outDir, builtin);
17
- console.log(chalk_1.default.green(`Generated ${numFiles} for Aptos`));
17
+ try {
18
+ const numFiles = await gen.generate(abisDir, outDir, builtin);
19
+ if (numFiles > 0) {
20
+ console.log(chalk_1.default.green(`Generated for ${numFiles} accounts for Aptos`));
21
+ }
22
+ else {
23
+ console.error(chalk_1.default.red(`No account found`));
24
+ }
25
+ return numFiles;
26
+ }
27
+ catch (e) {
28
+ console.error(chalk_1.default.red(`Failed to generate for ${abisDir}, please check if ABI json files are valid`));
29
+ console.log(e);
30
+ return 0;
31
+ }
18
32
  }
19
33
  exports.codegen = codegen;
20
34
  class AptosCodegen extends move_1.AbstractCodegen {
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../../src/codegen/codegen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../../src/codegen/codegen.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { Event, MoveModuleBytecode, MoveResource } from '../move-types.js';
2
2
  import { AbstractCodegen, InternalMoveFunction, InternalMoveModule } from '@typemove/move';
3
- export declare function codegen(abisDir: string, outDir: string | undefined, endpoint: string, genExample?: boolean, builtin?: boolean): Promise<void>;
3
+ export declare function codegen(abisDir: string, outDir: string | undefined, endpoint: string, genExample?: boolean, builtin?: boolean): Promise<number>;
4
4
  export declare class AptosCodegen extends AbstractCodegen<MoveModuleBytecode, Event | MoveResource> {
5
5
  ADDRESS_TYPE: string;
6
6
  PREFIX: string;
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../../../src/codegen/codegen.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAI1E,OAAO,EAAE,eAAe,EAAS,oBAAoB,EAAE,kBAAkB,EAAqB,MAAM,gBAAgB,CAAA;AAGpH,wBAAsB,OAAO,CAC3B,OAAO,EAAE,MAAM,EACf,MAAM,oBAAgC,EACtC,QAAQ,EAAE,MAAM,EAChB,UAAU,UAAQ,EAClB,OAAO,UAAQ,iBAQhB;AAED,qBAAa,YAAa,SAAQ,eAAe,CAAC,kBAAkB,EAAE,KAAK,GAAG,YAAY,CAAC;IACzF,YAAY,SAAY;IACxB,MAAM,SAAU;IAChB,cAAc,SAAoB;gBAEtB,QAAQ,EAAE,MAAM;IAI5B,eAAe,IAAI,MAAM;IAMzB,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,kBAAkB;IAelD,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,GAAG,MAAM;IA2C9F,SAAS,CAAC,wBAAwB,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,GAAG,MAAM;CAmCnG"}
1
+ {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../../../src/codegen/codegen.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAI1E,OAAO,EAAE,eAAe,EAAS,oBAAoB,EAAE,kBAAkB,EAAqB,MAAM,gBAAgB,CAAA;AAGpH,wBAAsB,OAAO,CAC3B,OAAO,EAAE,MAAM,EACf,MAAM,oBAAgC,EACtC,QAAQ,EAAE,MAAM,EAChB,UAAU,UAAQ,EAClB,OAAO,UAAQ,mBAoBhB;AAED,qBAAa,YAAa,SAAQ,eAAe,CAAC,kBAAkB,EAAE,KAAK,GAAG,YAAY,CAAC;IACzF,YAAY,SAAY;IACxB,MAAM,SAAU;IAChB,cAAc,SAAoB;gBAEtB,QAAQ,EAAE,MAAM;IAI5B,eAAe,IAAI,MAAM;IAMzB,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,kBAAkB;IAelD,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,GAAG,MAAM;IA2C9F,SAAS,CAAC,wBAAwB,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,GAAG,MAAM;CAmCnG"}
@@ -6,11 +6,25 @@ import { AbstractCodegen, camel, normalizeToJSName } from '@typemove/move';
6
6
  import { AptosClient } from 'aptos';
7
7
  export async function codegen(abisDir, outDir = join('src', 'types', 'aptos'), endpoint, genExample = false, builtin = false) {
8
8
  if (!fs.existsSync(abisDir)) {
9
- return;
9
+ console.error(chalk.red(`ABIs directory ${abisDir} does not exist`));
10
+ return 0;
10
11
  }
11
12
  const gen = new AptosCodegen(endpoint);
12
- const numFiles = await gen.generate(abisDir, outDir, builtin);
13
- console.log(chalk.green(`Generated ${numFiles} for Aptos`));
13
+ try {
14
+ const numFiles = await gen.generate(abisDir, outDir, builtin);
15
+ if (numFiles > 0) {
16
+ console.log(chalk.green(`Generated for ${numFiles} accounts for Aptos`));
17
+ }
18
+ else {
19
+ console.error(chalk.red(`No account found`));
20
+ }
21
+ return numFiles;
22
+ }
23
+ catch (e) {
24
+ console.error(chalk.red(`Failed to generate for ${abisDir}, please check if ABI json files are valid`));
25
+ console.log(e);
26
+ return 0;
27
+ }
14
28
  }
15
29
  export class AptosCodegen extends AbstractCodegen {
16
30
  ADDRESS_TYPE = 'Address';
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../../src/codegen/codegen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../../src/codegen/codegen.ts"],"names":[],"mappings":"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"}
@@ -3,30 +3,41 @@ import { codegen } from './codegen.js';
3
3
  import { AptosClient } from 'aptos';
4
4
  import * as path from 'path';
5
5
  import * as fs from 'fs';
6
- if (process.argv.length > 3) {
7
- let abisDir = process.argv[2];
8
- const targetDir = process.argv[3];
9
- let endpoint = process.argv[4];
10
- if (!endpoint || endpoint == 'mainnet') {
6
+ import { Command } from 'commander';
7
+ import { createRequire } from 'module';
8
+ const require = createRequire(import.meta.url);
9
+ const pkg = require('../../package.json');
10
+ const program = new Command();
11
+ program
12
+ .name(pkg.name)
13
+ .description('CLI to generate typescript types from aptos ABIs')
14
+ .showHelpAfterError()
15
+ .version(pkg.version)
16
+ .argument('<location>', 'Directory of ABI json files or address of account to generate types for')
17
+ .option('-a, --abi-dir <dir>', 'Directory to store downloaded ABI. Only useful if <location> is address', './abis')
18
+ .option('-t, --target-dir <dir>', 'Directory to output generated files', './types')
19
+ .option('-n, --network <mainnet|testnet|$url>', 'Aptos network to use, could be either "mainnet", "testnet" or any aptos node endpoint url', 'mainnet')
20
+ .action(async (location, options) => {
21
+ let endpoint = options.network;
22
+ if (endpoint == 'mainnet') {
11
23
  endpoint = 'https://mainnet.aptoslabs.com/';
12
24
  }
13
25
  if (endpoint == 'testnet') {
14
26
  endpoint = 'https://testnet.aptoslabs.com/';
15
27
  }
16
28
  const aptosClient = new AptosClient(endpoint);
17
- if (abisDir.startsWith('0x')) {
29
+ let abisDir = location;
30
+ if (location.startsWith('0x')) {
18
31
  const abiAddress = abisDir;
19
32
  const abi = await aptosClient.getAccountModules(abiAddress);
20
- abisDir = path.join(targetDir, '..', 'abis');
33
+ abisDir = options.abiDir;
21
34
  if (!fs.existsSync(abisDir)) {
22
35
  fs.mkdirSync(abisDir, { recursive: true });
23
36
  }
24
37
  fs.writeFileSync(path.join(abisDir, abiAddress + '.json'), JSON.stringify(abi, null, 2));
25
38
  }
26
- await codegen(abisDir, targetDir, endpoint, true);
27
- }
28
- else {
29
- console.error('Not enough argument');
30
- process.exit(1);
31
- }
39
+ const num = await codegen(abisDir, options.targetDir, endpoint, true);
40
+ process.exit(num == 0 ? 1 : 0);
41
+ });
42
+ program.parse();
32
43
  //# sourceMappingURL=run.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/codegen/run.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAC5B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AAExB,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;IAC3B,IAAI,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC7B,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjC,IAAI,QAAQ,GAAuB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAClD,IAAI,CAAC,QAAQ,IAAI,QAAQ,IAAI,SAAS,EAAE;QACtC,QAAQ,GAAG,gCAAgC,CAAA;KAC5C;IACD,IAAI,QAAQ,IAAI,SAAS,EAAE;QACzB,QAAQ,GAAG,gCAAgC,CAAA;KAC5C;IACD,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAA;IAC7C,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QAC5B,MAAM,UAAU,GAAG,OAAO,CAAA;QAC1B,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;QAC3D,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;QAC5C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YAC3B,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;SAC3C;QACD,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;KACzF;IAED,MAAM,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;CAClD;KAAM;IACL,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;IACpC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;CAChB"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/codegen/run.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAC5B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AACtC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;AAEzC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;KACd,WAAW,CAAC,kDAAkD,CAAC;KAC/D,kBAAkB,EAAE;KACpB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;KACpB,QAAQ,CAAC,YAAY,EAAE,yEAAyE,CAAC;KACjG,MAAM,CAAC,qBAAqB,EAAE,yEAAyE,EAAE,QAAQ,CAAC;KAClH,MAAM,CAAC,wBAAwB,EAAE,qCAAqC,EAAE,SAAS,CAAC;KAClF,MAAM,CACL,sCAAsC,EACtC,2FAA2F,EAC3F,SAAS,CACV;KACA,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;IAClC,IAAI,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAA;IAC9B,IAAI,QAAQ,IAAI,SAAS,EAAE;QACzB,QAAQ,GAAG,gCAAgC,CAAA;KAC5C;IACD,IAAI,QAAQ,IAAI,SAAS,EAAE;QACzB,QAAQ,GAAG,gCAAgC,CAAA;KAC5C;IACD,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAA;IAE7C,IAAI,OAAO,GAAG,QAAQ,CAAA;IACtB,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QAC7B,MAAM,UAAU,GAAG,OAAO,CAAA;QAC1B,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;QAC3D,OAAO,GAAG,OAAO,CAAC,MAAM,CAAA;QACxB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YAC3B,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;SAC3C;QACD,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;KACzF;IAED,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;IACrE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAChC,CAAC,CAAC,CAAA;AAEJ,OAAO,CAAC,KAAK,EAAE,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typemove/aptos",
3
- "version": "1.2.6-rc.2",
3
+ "version": "1.2.6-rc.3",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "exports": {
@@ -31,18 +31,19 @@
31
31
  "dependencies": {
32
32
  "aptos": "~1.20.0",
33
33
  "chalk": "^5.3.0",
34
+ "commander": "^11.1.0",
34
35
  "prettier": "^3.0.3",
35
36
  "radash": "^11.0.0",
36
- "@typemove/move": "1.2.6-rc.2"
37
+ "@typemove/move": "1.2.6-rc.3"
37
38
  },
38
39
  "url": "https://github.com/sentioxyz/typemove",
39
40
  "scripts": {
40
41
  "build": "pnpm gen && tsc && pnpm build:cjs",
41
42
  "build:all": "pnpm --filter=$(node -p \"require('./package.json').name\")... build",
42
43
  "build:cjs": "tsc --project tsconfig.cjs.json && cp ../../package.cjs.json ./dist/cjs/package.json",
43
- "gen": "pnpm gen:test && ts-node-esm src/codegen/run.ts src/abis src/builtin",
44
- "gen:test": "ts-node-esm src/codegen/run.ts src/tests/abis src/tests/types mainnet",
45
- "gen-with-address": "ts-node-esm src/codegen/run.ts 0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af ./src/tests/types mainnet",
44
+ "gen": "pnpm gen:test && ts-node-esm src/codegen/run.ts -t src/builtin src/abis",
45
+ "gen:test": "ts-node-esm src/codegen/run.ts -t src/tests/types src/tests/abis",
46
+ "gen-with-address": "ts-node-esm src/codegen/run.ts -t ./src/tests/types 0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af",
46
47
  "test": "NODE_OPTIONS=--experimental-vm-modules pnpm jest"
47
48
  }
48
49
  }
@@ -14,11 +14,23 @@ export async function codegen(
14
14
  builtin = false
15
15
  ) {
16
16
  if (!fs.existsSync(abisDir)) {
17
- return
17
+ console.error(chalk.red(`ABIs directory ${abisDir} does not exist`))
18
+ return 0
18
19
  }
19
20
  const gen = new AptosCodegen(endpoint)
20
- const numFiles = await gen.generate(abisDir, outDir, builtin)
21
- console.log(chalk.green(`Generated ${numFiles} for Aptos`))
21
+ try {
22
+ const numFiles = await gen.generate(abisDir, outDir, builtin)
23
+ if (numFiles > 0) {
24
+ console.log(chalk.green(`Generated for ${numFiles} accounts for Aptos`))
25
+ } else {
26
+ console.error(chalk.red(`No account found`))
27
+ }
28
+ return numFiles
29
+ } catch (e) {
30
+ console.error(chalk.red(`Failed to generate for ${abisDir}, please check if ABI json files are valid`))
31
+ console.log(e)
32
+ return 0
33
+ }
22
34
  }
23
35
 
24
36
  export class AptosCodegen extends AbstractCodegen<MoveModuleBytecode, Event | MoveResource> {
@@ -4,30 +4,49 @@ import { codegen } from './codegen.js'
4
4
  import { AptosClient } from 'aptos'
5
5
  import * as path from 'path'
6
6
  import * as fs from 'fs'
7
+ import { Command } from 'commander'
8
+ import { createRequire } from 'module'
9
+ const require = createRequire(import.meta.url)
10
+ const pkg = require('../../package.json')
7
11
 
8
- if (process.argv.length > 3) {
9
- let abisDir = process.argv[2]
10
- const targetDir = process.argv[3]
11
- let endpoint: string | undefined = process.argv[4]
12
- if (!endpoint || endpoint == 'mainnet') {
13
- endpoint = 'https://mainnet.aptoslabs.com/'
14
- }
15
- if (endpoint == 'testnet') {
16
- endpoint = 'https://testnet.aptoslabs.com/'
17
- }
18
- const aptosClient = new AptosClient(endpoint)
19
- if (abisDir.startsWith('0x')) {
20
- const abiAddress = abisDir
21
- const abi = await aptosClient.getAccountModules(abiAddress)
22
- abisDir = path.join(targetDir, '..', 'abis')
23
- if (!fs.existsSync(abisDir)) {
24
- fs.mkdirSync(abisDir, { recursive: true })
12
+ const program = new Command()
13
+
14
+ program
15
+ .name(pkg.name)
16
+ .description('CLI to generate typescript types from aptos ABIs')
17
+ .showHelpAfterError()
18
+ .version(pkg.version)
19
+ .argument('<location>', 'Directory of ABI json files or address of account to generate types for')
20
+ .option('-a, --abi-dir <dir>', 'Directory to store downloaded ABI. Only useful if <location> is address', './abis')
21
+ .option('-t, --target-dir <dir>', 'Directory to output generated files', './types')
22
+ .option(
23
+ '-n, --network <mainnet|testnet|$url>',
24
+ 'Aptos network to use, could be either "mainnet", "testnet" or any aptos node endpoint url',
25
+ 'mainnet'
26
+ )
27
+ .action(async (location, options) => {
28
+ let endpoint = options.network
29
+ if (endpoint == 'mainnet') {
30
+ endpoint = 'https://mainnet.aptoslabs.com/'
31
+ }
32
+ if (endpoint == 'testnet') {
33
+ endpoint = 'https://testnet.aptoslabs.com/'
25
34
  }
26
- fs.writeFileSync(path.join(abisDir, abiAddress + '.json'), JSON.stringify(abi, null, 2))
27
- }
35
+ const aptosClient = new AptosClient(endpoint)
36
+
37
+ let abisDir = location
38
+ if (location.startsWith('0x')) {
39
+ const abiAddress = abisDir
40
+ const abi = await aptosClient.getAccountModules(abiAddress)
41
+ abisDir = options.abiDir
42
+ if (!fs.existsSync(abisDir)) {
43
+ fs.mkdirSync(abisDir, { recursive: true })
44
+ }
45
+ fs.writeFileSync(path.join(abisDir, abiAddress + '.json'), JSON.stringify(abi, null, 2))
46
+ }
47
+
48
+ const num = await codegen(abisDir, options.targetDir, endpoint, true)
49
+ process.exit(num == 0 ? 1 : 0)
50
+ })
28
51
 
29
- await codegen(abisDir, targetDir, endpoint, true)
30
- } else {
31
- console.error('Not enough argument')
32
- process.exit(1)
33
- }
52
+ program.parse()