@typemove/aptos 1.13.5-rc.2 → 1.14.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/dist/esm/aptos-chain-adapter.d.ts +0 -3
- package/dist/esm/aptos-chain-adapter.d.ts.map +1 -1
- package/dist/esm/aptos-chain-adapter.js +10 -7
- package/dist/esm/aptos-chain-adapter.js.map +1 -1
- package/dist/esm/codegen/run.js +2 -2
- package/dist/esm/codegen/run.js.map +1 -1
- package/package.json +2 -2
- package/src/aptos-chain-adapter.ts +11 -8
- package/src/codegen/run.ts +2 -5
|
@@ -7,9 +7,6 @@ export declare class AptosChainAdapter extends ChainAdapter<MoveModuleBytecode,
|
|
|
7
7
|
fetchModules(account: string): Promise<MoveModuleBytecode[]>;
|
|
8
8
|
fetchModule(account: string, module: string): Promise<MoveModuleBytecode>;
|
|
9
9
|
toInternalModules(modules: MoveModuleBytecode[]): InternalMoveModule[];
|
|
10
|
-
toPersistableModules(modules: MoveModuleBytecode[]): {
|
|
11
|
-
abi: import("@aptos-labs/ts-sdk").MoveModule | undefined;
|
|
12
|
-
}[];
|
|
13
10
|
getMeaningfulFunctionParams(params: TypeDescriptor[]): TypeDescriptor[];
|
|
14
11
|
getAllEventStructs(modules: InternalMoveModule[]): Map<string, InternalMoveStruct>;
|
|
15
12
|
getType(data: Event | MoveResource): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aptos-chain-adapter.d.ts","sourceRoot":"","sources":["../../src/aptos-chain-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAGZ,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"aptos-chain-adapter.d.ts","sourceRoot":"","sources":["../../src/aptos-chain-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAGZ,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAUnF,qBAAa,iBAAkB,SAAQ,YAAY,CAAC,kBAAkB,EAAE,KAAK,GAAG,YAAY,CAAC;IAE3F,MAAM,EAAE,KAAK,CAAA;IACb,OAAO,CAAC,wBAAwB,CAAgB;gBAEpC,MAAM,EAAE,KAAK,EAAE,wBAAwB,UAAO;IAMpD,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAO5D,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQ/E,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,kBAAkB,EAAE;IAItE,2BAA2B,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE;IAUvE,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,EAAE;IAuDhD,OAAO,CAAC,IAAI,EAAE,KAAK,GAAG,YAAY,GAAG,MAAM;IAI3C,OAAO,CAAC,IAAI,EAAE,KAAK,GAAG,YAAY;IAO5B,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;CAMpC"}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { ChainAdapter, moduleQname, SPLITTER } from '@typemove/move';
|
|
2
2
|
import { toInternalModule } from './to-internal.js';
|
|
3
|
+
// Drop bytecode — typemove's codegen only reads `m.abi`, and bytecode is
|
|
4
|
+
// ~50% of each Aptos module entry's bytes. Cast is needed because
|
|
5
|
+
// MoveModuleBytecode declares `bytecode: string` as required.
|
|
6
|
+
function stripBytecode({ abi }) {
|
|
7
|
+
return { abi };
|
|
8
|
+
}
|
|
3
9
|
export class AptosChainAdapter extends ChainAdapter {
|
|
4
10
|
// static INSTANCE = new AptosChainAdapter()
|
|
5
11
|
client;
|
|
@@ -10,24 +16,21 @@ export class AptosChainAdapter extends ChainAdapter {
|
|
|
10
16
|
this.optimisticEventDetection = optimisticEventDetection;
|
|
11
17
|
}
|
|
12
18
|
async fetchModules(account) {
|
|
13
|
-
|
|
19
|
+
const modules = await this.client.getAccountModules({
|
|
14
20
|
accountAddress: account
|
|
15
21
|
});
|
|
22
|
+
return modules.map(stripBytecode);
|
|
16
23
|
}
|
|
17
24
|
async fetchModule(account, module) {
|
|
18
|
-
|
|
25
|
+
const m = await this.client.getAccountModule({
|
|
19
26
|
accountAddress: account,
|
|
20
27
|
moduleName: module
|
|
21
28
|
});
|
|
29
|
+
return stripBytecode(m);
|
|
22
30
|
}
|
|
23
31
|
toInternalModules(modules) {
|
|
24
32
|
return modules.flatMap((m) => (m.abi ? [toInternalModule(m)] : []));
|
|
25
33
|
}
|
|
26
|
-
// Drop bytecode from cached ABI files — only `abi` is consumed by codegen,
|
|
27
|
-
// and bytecode is ~50% of each Aptos ABI JSON's bytes.
|
|
28
|
-
toPersistableModules(modules) {
|
|
29
|
-
return modules.map(({ abi }) => ({ abi }));
|
|
30
|
-
}
|
|
31
34
|
getMeaningfulFunctionParams(params) {
|
|
32
35
|
if (params.length === 0) {
|
|
33
36
|
return params;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aptos-chain-adapter.js","sourceRoot":"","sources":["../../src/aptos-chain-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,QAAQ,EAIT,MAAM,gBAAgB,CAAA;AAGvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAEnD,MAAM,OAAO,iBAAkB,SAAQ,YAAsD;IAC3F,4CAA4C;IAC5C,MAAM,CAAO;IACL,wBAAwB,GAAY,IAAI,CAAA;IAEhD,YAAY,MAAa,EAAE,wBAAwB,GAAG,IAAI;QACxD,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAA;IAC1D,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAe;QAChC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"aptos-chain-adapter.js","sourceRoot":"","sources":["../../src/aptos-chain-adapter.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/codegen/run.js
CHANGED
|
@@ -47,12 +47,12 @@ program
|
|
|
47
47
|
let abisDir = location;
|
|
48
48
|
if (location.startsWith('0x')) {
|
|
49
49
|
const abiAddress = abisDir;
|
|
50
|
-
const abi = await aptosClient.
|
|
50
|
+
const abi = await new AptosChainAdapter(aptosClient).fetchModules(abiAddress);
|
|
51
51
|
abisDir = options.abiDir;
|
|
52
52
|
if (!fs.existsSync(abisDir)) {
|
|
53
53
|
fs.mkdirSync(abisDir, { recursive: true });
|
|
54
54
|
}
|
|
55
|
-
fs.writeFileSync(path.join(abisDir, abiAddress + '.json'), JSON.stringify(
|
|
55
|
+
fs.writeFileSync(path.join(abisDir, abiAddress + '.json'), JSON.stringify(abi, null, 2));
|
|
56
56
|
}
|
|
57
57
|
const num = await codegen(abisDir, options.targetDir, config, true);
|
|
58
58
|
process.exit(num == 0 ? 1 : 0);
|
|
@@ -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,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAChE,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,IAAI,GAAG,GAAG,SAAS,CAAA;AACnB,IAAI,CAAC;IACH,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;AACrC,CAAC;AAAC,OAAO,CAAC,EAAE,CAAC;IACX,GAAG,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAA;AACxC,CAAC;AAED,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,gBAAgB,CAAC;KACtB,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,sEAAsE,EACtE,SAAS,CACV;KACA,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;IAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAA;IAChC,IAAI,MAAmB,CAAA;IACvB,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC;QAC1B,MAAM,GAAG,IAAI,WAAW,CAAC;YACvB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAA;IACJ,CAAC;SAAM,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,GAAG,IAAI,WAAW,CAAC;YACvB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAA;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,IAAI,WAAW,CAAC;YACvB,OAAO,EAAE,OAAO,CAAC,MAAM;YACvB,QAAQ,EAAE,QAAQ;SACnB,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;IAErC,IAAI,OAAO,GAAG,QAAQ,CAAA;IACtB,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAG,OAAO,CAAA;QAC1B,MAAM,GAAG,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/codegen/run.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@typemove/aptos",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.14.0-rc.1",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"commander": "^14.0.0",
|
|
28
28
|
"prettier": "^3.2.4",
|
|
29
29
|
"radash": "^12.0.0",
|
|
30
|
-
"@typemove/move": "1.
|
|
30
|
+
"@typemove/move": "1.14.0-rc.1"
|
|
31
31
|
},
|
|
32
32
|
"url": "https://github.com/sentioxyz/typemove",
|
|
33
33
|
"scripts": {
|
|
@@ -10,6 +10,13 @@ import {
|
|
|
10
10
|
import { Aptos, Event, MoveModuleBytecode, MoveResource } from '@aptos-labs/ts-sdk'
|
|
11
11
|
import { toInternalModule } from './to-internal.js'
|
|
12
12
|
|
|
13
|
+
// Drop bytecode — typemove's codegen only reads `m.abi`, and bytecode is
|
|
14
|
+
// ~50% of each Aptos module entry's bytes. Cast is needed because
|
|
15
|
+
// MoveModuleBytecode declares `bytecode: string` as required.
|
|
16
|
+
function stripBytecode({ abi }: MoveModuleBytecode): MoveModuleBytecode {
|
|
17
|
+
return { abi } as MoveModuleBytecode
|
|
18
|
+
}
|
|
19
|
+
|
|
13
20
|
export class AptosChainAdapter extends ChainAdapter<MoveModuleBytecode, Event | MoveResource> {
|
|
14
21
|
// static INSTANCE = new AptosChainAdapter()
|
|
15
22
|
client: Aptos
|
|
@@ -22,28 +29,24 @@ export class AptosChainAdapter extends ChainAdapter<MoveModuleBytecode, Event |
|
|
|
22
29
|
}
|
|
23
30
|
|
|
24
31
|
async fetchModules(account: string): Promise<MoveModuleBytecode[]> {
|
|
25
|
-
|
|
32
|
+
const modules = await this.client.getAccountModules({
|
|
26
33
|
accountAddress: account
|
|
27
34
|
})
|
|
35
|
+
return modules.map(stripBytecode)
|
|
28
36
|
}
|
|
29
37
|
|
|
30
38
|
async fetchModule(account: string, module: string): Promise<MoveModuleBytecode> {
|
|
31
|
-
|
|
39
|
+
const m = await this.client.getAccountModule({
|
|
32
40
|
accountAddress: account,
|
|
33
41
|
moduleName: module
|
|
34
42
|
})
|
|
43
|
+
return stripBytecode(m)
|
|
35
44
|
}
|
|
36
45
|
|
|
37
46
|
toInternalModules(modules: MoveModuleBytecode[]): InternalMoveModule[] {
|
|
38
47
|
return modules.flatMap((m) => (m.abi ? [toInternalModule(m)] : []))
|
|
39
48
|
}
|
|
40
49
|
|
|
41
|
-
// Drop bytecode from cached ABI files — only `abi` is consumed by codegen,
|
|
42
|
-
// and bytecode is ~50% of each Aptos ABI JSON's bytes.
|
|
43
|
-
override toPersistableModules(modules: MoveModuleBytecode[]) {
|
|
44
|
-
return modules.map(({ abi }) => ({ abi }))
|
|
45
|
-
}
|
|
46
|
-
|
|
47
50
|
getMeaningfulFunctionParams(params: TypeDescriptor[]): TypeDescriptor[] {
|
|
48
51
|
if (params.length === 0) {
|
|
49
52
|
return params
|
package/src/codegen/run.ts
CHANGED
|
@@ -52,15 +52,12 @@ program
|
|
|
52
52
|
let abisDir = location
|
|
53
53
|
if (location.startsWith('0x')) {
|
|
54
54
|
const abiAddress = abisDir
|
|
55
|
-
const abi = await aptosClient.
|
|
55
|
+
const abi = await new AptosChainAdapter(aptosClient).fetchModules(abiAddress)
|
|
56
56
|
abisDir = options.abiDir
|
|
57
57
|
if (!fs.existsSync(abisDir)) {
|
|
58
58
|
fs.mkdirSync(abisDir, { recursive: true })
|
|
59
59
|
}
|
|
60
|
-
fs.writeFileSync(
|
|
61
|
-
path.join(abisDir, abiAddress + '.json'),
|
|
62
|
-
JSON.stringify(new AptosChainAdapter(aptosClient).toPersistableModules(abi), null, 2)
|
|
63
|
-
)
|
|
60
|
+
fs.writeFileSync(path.join(abisDir, abiAddress + '.json'), JSON.stringify(abi, null, 2))
|
|
64
61
|
}
|
|
65
62
|
|
|
66
63
|
const num = await codegen(abisDir, options.targetDir, config, true)
|