@typemove/iota 1.10.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/LICENSE +201 -0
- package/Readme.md +161 -0
- package/builtin/0x1/package.json +5 -0
- package/builtin/0x2/package.json +5 -0
- package/builtin/0x3/package.json +5 -0
- package/builtin/package.json +5 -0
- package/codegen/package.json +5 -0
- package/dist/cjs/builtin/0x1.d.ts +778 -0
- package/dist/cjs/builtin/0x1.d.ts.map +1 -0
- package/dist/cjs/builtin/0x1.js +4297 -0
- package/dist/cjs/builtin/0x1.js.map +1 -0
- package/dist/cjs/builtin/0x2.d.ts +4256 -0
- package/dist/cjs/builtin/0x2.d.ts.map +1 -0
- package/dist/cjs/builtin/0x2.js +16540 -0
- package/dist/cjs/builtin/0x2.js.map +1 -0
- package/dist/cjs/builtin/0x3.d.ts +1978 -0
- package/dist/cjs/builtin/0x3.d.ts.map +1 -0
- package/dist/cjs/builtin/0x3.js +6120 -0
- package/dist/cjs/builtin/0x3.js.map +1 -0
- package/dist/cjs/builtin/index.d.ts +4 -0
- package/dist/cjs/builtin/index.d.ts.map +1 -0
- package/dist/cjs/builtin/index.js +11 -0
- package/dist/cjs/builtin/index.js.map +1 -0
- package/dist/cjs/codegen/codegen.d.ts +20 -0
- package/dist/cjs/codegen/codegen.d.ts.map +1 -0
- package/dist/cjs/codegen/codegen.js +253 -0
- package/dist/cjs/codegen/codegen.js.map +1 -0
- package/dist/cjs/codegen/index.d.ts +2 -0
- package/dist/cjs/codegen/index.d.ts.map +1 -0
- package/dist/cjs/codegen/index.js +5 -0
- package/dist/cjs/codegen/index.js.map +1 -0
- package/dist/cjs/index.d.ts +4 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +11 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/models.d.ts +18 -0
- package/dist/cjs/models.d.ts.map +1 -0
- package/dist/cjs/models.js +5 -0
- package/dist/cjs/models.js.map +1 -0
- package/dist/cjs/move-coder.d.ts +27 -0
- package/dist/cjs/move-coder.d.ts.map +1 -0
- package/dist/cjs/move-coder.js +274 -0
- package/dist/cjs/move-coder.js.map +1 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/sui-chain-adapter.d.ts +15 -0
- package/dist/cjs/sui-chain-adapter.d.ts.map +1 -0
- package/dist/cjs/sui-chain-adapter.js +88 -0
- package/dist/cjs/sui-chain-adapter.js.map +1 -0
- package/dist/cjs/to-internal.d.ts +4 -0
- package/dist/cjs/to-internal.d.ts.map +1 -0
- package/dist/cjs/to-internal.js +99 -0
- package/dist/cjs/to-internal.js.map +1 -0
- package/dist/cjs/transaction.d.ts +15 -0
- package/dist/cjs/transaction.d.ts.map +1 -0
- package/dist/cjs/transaction.js +98 -0
- package/dist/cjs/transaction.js.map +1 -0
- package/dist/esm/builtin/0x1.d.ts +778 -0
- package/dist/esm/builtin/0x1.d.ts.map +1 -0
- package/dist/esm/builtin/0x1.js +4293 -0
- package/dist/esm/builtin/0x1.js.map +1 -0
- package/dist/esm/builtin/0x2.d.ts +4256 -0
- package/dist/esm/builtin/0x2.d.ts.map +1 -0
- package/dist/esm/builtin/0x2.js +16534 -0
- package/dist/esm/builtin/0x2.js.map +1 -0
- package/dist/esm/builtin/0x3.d.ts +1978 -0
- package/dist/esm/builtin/0x3.d.ts.map +1 -0
- package/dist/esm/builtin/0x3.js +6115 -0
- package/dist/esm/builtin/0x3.js.map +1 -0
- package/dist/esm/builtin/index.d.ts +4 -0
- package/dist/esm/builtin/index.d.ts.map +1 -0
- package/dist/esm/builtin/index.js +7 -0
- package/dist/esm/builtin/index.js.map +1 -0
- package/dist/esm/codegen/codegen.d.ts +20 -0
- package/dist/esm/codegen/codegen.d.ts.map +1 -0
- package/dist/esm/codegen/codegen.js +247 -0
- package/dist/esm/codegen/codegen.js.map +1 -0
- package/dist/esm/codegen/index.d.ts +2 -0
- package/dist/esm/codegen/index.d.ts.map +1 -0
- package/dist/esm/codegen/index.js +2 -0
- package/dist/esm/codegen/index.js.map +1 -0
- package/dist/esm/codegen/run.d.ts +3 -0
- package/dist/esm/codegen/run.d.ts.map +1 -0
- package/dist/esm/codegen/run.js +49 -0
- package/dist/esm/codegen/run.js.map +1 -0
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +4 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/models.d.ts +18 -0
- package/dist/esm/models.d.ts.map +1 -0
- package/dist/esm/models.js +2 -0
- package/dist/esm/models.js.map +1 -0
- package/dist/esm/move-coder.d.ts +27 -0
- package/dist/esm/move-coder.d.ts.map +1 -0
- package/dist/esm/move-coder.js +268 -0
- package/dist/esm/move-coder.js.map +1 -0
- package/dist/esm/sui-chain-adapter.d.ts +15 -0
- package/dist/esm/sui-chain-adapter.d.ts.map +1 -0
- package/dist/esm/sui-chain-adapter.js +84 -0
- package/dist/esm/sui-chain-adapter.js.map +1 -0
- package/dist/esm/to-internal.d.ts +4 -0
- package/dist/esm/to-internal.d.ts.map +1 -0
- package/dist/esm/to-internal.js +96 -0
- package/dist/esm/to-internal.js.map +1 -0
- package/dist/esm/transaction.d.ts +15 -0
- package/dist/esm/transaction.d.ts.map +1 -0
- package/dist/esm/transaction.js +83 -0
- package/dist/esm/transaction.js.map +1 -0
- package/package.json +63 -0
- package/src/abis/0x1.json +4213 -0
- package/src/abis/0x2.json +26692 -0
- package/src/abis/0x3.json +10598 -0
- package/src/builtin/0x1.ts +6110 -0
- package/src/builtin/0x2.ts +24700 -0
- package/src/builtin/0x3.ts +9680 -0
- package/src/builtin/index.ts +6 -0
- package/src/codegen/codegen.ts +290 -0
- package/src/codegen/index.ts +1 -0
- package/src/codegen/run.ts +57 -0
- package/src/index.ts +4 -0
- package/src/models.ts +21 -0
- package/src/move-coder.ts +318 -0
- package/src/sui-chain-adapter.ts +113 -0
- package/src/tests/abis/testnet/0x1e2b124f746a339b3cf99b9f969393a96594519aafb1d06517aacfeeae20e7a5.json +265 -0
- package/src/tests/abis/testnet/0x6c4a21e3e7e6b6d51c4604021633e1d97e24e37a696f8c082cd48f37503e602a.json +2429 -0
- package/src/tests/abis/testnet/0x7f7a37c826c88bcfe9aecc042453395ddfa9df6f29cb7c97590bf86cf2b0a75e.json +1356 -0
- package/src/tests/abis/testnet/0xebaa2ad3eacc230f309cd933958cc52684df0a41ae7ac214d186b80f830867d2.json +10060 -0
- package/src/tests/types/testnet/0x1e2b124f746a339b3cf99b9f969393a96594519aafb1d06517aacfeeae20e7a5.ts +291 -0
- package/src/tests/types/testnet/0x6c4a21e3e7e6b6d51c4604021633e1d97e24e37a696f8c082cd48f37503e602a.ts +2468 -0
- package/src/tests/types/testnet/0x7f7a37c826c88bcfe9aecc042453395ddfa9df6f29cb7c97590bf86cf2b0a75e.ts +1389 -0
- package/src/tests/types/testnet/0xebaa2ad3eacc230f309cd933958cc52684df0a41ae7ac214d186b80f830867d2.ts +9522 -0
- package/src/tests/types/testnet/index.ts +7 -0
- package/src/to-internal.ts +127 -0
- package/src/transaction.ts +127 -0
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
import { IotaClient } from '@iota/iota-sdk/client';
|
|
2
|
+
import * as fs from 'fs';
|
|
3
|
+
import chalk from 'chalk';
|
|
4
|
+
import { structQname, InternalMoveFunctionVisibility, normalizeToJSName, camel } from '@typemove/move';
|
|
5
|
+
import { AbstractCodegen } from '@typemove/move/codegen';
|
|
6
|
+
import { join } from 'path';
|
|
7
|
+
import { IotaChainAdapter } from '../sui-chain-adapter.js';
|
|
8
|
+
export async function codegen(abisDir, outDir = join('src', 'types', 'sui'), endpoint, genExample = false, builtin = false) {
|
|
9
|
+
if (!fs.existsSync(abisDir)) {
|
|
10
|
+
console.error(chalk.red(`ABIs directory ${abisDir} does not exist`));
|
|
11
|
+
return 0;
|
|
12
|
+
}
|
|
13
|
+
try {
|
|
14
|
+
const gen = new IotaCodegen(endpoint);
|
|
15
|
+
const numFiles = await gen.generate(abisDir, outDir, builtin);
|
|
16
|
+
if (numFiles > 0) {
|
|
17
|
+
console.log(chalk.green(`Generated for ${numFiles} accounts for Iota to ${outDir}`));
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
console.error(chalk.red(`No account found`));
|
|
21
|
+
}
|
|
22
|
+
return numFiles;
|
|
23
|
+
}
|
|
24
|
+
catch (e) {
|
|
25
|
+
console.error(chalk.red(`Failed to generate for ${abisDir}, please check if ABI json files are valid`));
|
|
26
|
+
console.log(e);
|
|
27
|
+
return 0;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
export class IotaCodegen extends AbstractCodegen {
|
|
31
|
+
ADDRESS_TYPE = 'string';
|
|
32
|
+
SYSTEM_PACKAGE = '@typemove/iota';
|
|
33
|
+
// ADDRESS_TYPE = 'string'
|
|
34
|
+
// MAIN_NET = IotaNetwork.MAIN_NET
|
|
35
|
+
// TEST_NET = IotaNetwork.TEST_NET
|
|
36
|
+
PREFIX = 'Iota';
|
|
37
|
+
// STRUCT_FIELD_NAME = 'fields'
|
|
38
|
+
// GENERATE_ON_ENTRY = true
|
|
39
|
+
PAYLOAD_OPTIONAL = true;
|
|
40
|
+
constructor(endpoint) {
|
|
41
|
+
super(new IotaChainAdapter(new IotaClient({ url: endpoint })));
|
|
42
|
+
}
|
|
43
|
+
readModulesFile(fullPath) {
|
|
44
|
+
const res = super.readModulesFile(fullPath);
|
|
45
|
+
if (res.result) {
|
|
46
|
+
return res.result;
|
|
47
|
+
}
|
|
48
|
+
return res;
|
|
49
|
+
}
|
|
50
|
+
generateStructs(module, struct, events) {
|
|
51
|
+
let content = '';
|
|
52
|
+
switch (structQname(module, struct)) {
|
|
53
|
+
// TODO they should still have module code generated
|
|
54
|
+
case '0x1::ascii::Char':
|
|
55
|
+
case '0x1::ascii::String':
|
|
56
|
+
case '0x2::object::ID':
|
|
57
|
+
content += `export type ${struct.name} = string`;
|
|
58
|
+
break;
|
|
59
|
+
case '0x2::coin::Coin':
|
|
60
|
+
content += `export type ${struct.name}<T> = string`;
|
|
61
|
+
break;
|
|
62
|
+
case '0x2::balance::Balance':
|
|
63
|
+
content += `export type ${struct.name}<T> = bigint`;
|
|
64
|
+
break;
|
|
65
|
+
case '0x1::option::Option':
|
|
66
|
+
content += `export type Option<T> = T | undefined`;
|
|
67
|
+
break;
|
|
68
|
+
}
|
|
69
|
+
return content + super.generateStructs(module, struct, events, content !== '');
|
|
70
|
+
}
|
|
71
|
+
generateForEvents(module, struct) {
|
|
72
|
+
switch (structQname(module, struct)) {
|
|
73
|
+
case '0x1::ascii::Char':
|
|
74
|
+
case '0x1::ascii::String':
|
|
75
|
+
case '0x2::object::ID':
|
|
76
|
+
case '0x2::coin::Coin':
|
|
77
|
+
case '0x1::option::Option':
|
|
78
|
+
case '0x2::balance::Balance':
|
|
79
|
+
return '';
|
|
80
|
+
}
|
|
81
|
+
return super.generateForEvents(module, struct);
|
|
82
|
+
}
|
|
83
|
+
generateExtra(address, module) {
|
|
84
|
+
const funcs = module.exposedFunctions.map((f) => this.generateBuilderForFunction(address || module.address, module, f));
|
|
85
|
+
const viewFuncs = module.exposedFunctions.map((f) => this.generateViewFunction(module, f));
|
|
86
|
+
return `
|
|
87
|
+
export namespace builder {
|
|
88
|
+
${funcs.join('\n')}
|
|
89
|
+
}
|
|
90
|
+
export namespace view {
|
|
91
|
+
${viewFuncs.join('\n')}
|
|
92
|
+
}
|
|
93
|
+
`;
|
|
94
|
+
}
|
|
95
|
+
generateArgs(module, func, isView) {
|
|
96
|
+
const args = [];
|
|
97
|
+
const argsLen = func.params.length;
|
|
98
|
+
for (const [idx, arg] of func.params.entries()) {
|
|
99
|
+
if (idx === argsLen - 1 && arg.qname === '0x2::tx_context::TxContext') {
|
|
100
|
+
// no op
|
|
101
|
+
}
|
|
102
|
+
else if (arg.reference) {
|
|
103
|
+
args.push({
|
|
104
|
+
paramType: isView
|
|
105
|
+
? this.ADDRESS_TYPE
|
|
106
|
+
: `${this.ADDRESS_TYPE} | TransactionObjectArgument | TransactionArgument`,
|
|
107
|
+
callValue: `_args.push(transactionArgumentOrObject(args[${idx}], tx))`
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
else if (arg.isVector()) {
|
|
111
|
+
// TODO fix pure vector
|
|
112
|
+
args.push({
|
|
113
|
+
paramType: isView
|
|
114
|
+
? `${this.ADDRESS_TYPE}[]`
|
|
115
|
+
: `(${this.ADDRESS_TYPE} | TransactionObjectArgument)[] | TransactionArgument`,
|
|
116
|
+
callValue: `_args.push(transactionArgumentOrVec(args[${idx}], tx))`
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
// Handle pure type
|
|
121
|
+
let pureFunction = '';
|
|
122
|
+
const paramType = isView
|
|
123
|
+
? this.generateTypeForDescriptor(arg, module.address)
|
|
124
|
+
: `${this.generateTypeForDescriptor(arg, module.address)} | TransactionArgument`;
|
|
125
|
+
switch (arg.qname.toLowerCase()) {
|
|
126
|
+
case 'u8':
|
|
127
|
+
pureFunction = `transactionArgumentOrPureU8`;
|
|
128
|
+
break;
|
|
129
|
+
case 'u16':
|
|
130
|
+
pureFunction = `transactionArgumentOrPureU16`;
|
|
131
|
+
break;
|
|
132
|
+
case 'u32':
|
|
133
|
+
pureFunction = `transactionArgumentOrPureU32`;
|
|
134
|
+
break;
|
|
135
|
+
case 'u64':
|
|
136
|
+
pureFunction = `transactionArgumentOrPureU64`;
|
|
137
|
+
break;
|
|
138
|
+
case 'u128':
|
|
139
|
+
pureFunction = `transactionArgumentOrPureU128`;
|
|
140
|
+
break;
|
|
141
|
+
case 'u256':
|
|
142
|
+
pureFunction = `transactionArgumentOrPureU256`;
|
|
143
|
+
break;
|
|
144
|
+
case 'bool':
|
|
145
|
+
pureFunction = `transactionArgumentOrPureBool`;
|
|
146
|
+
break;
|
|
147
|
+
case 'string':
|
|
148
|
+
pureFunction = `transactionArgumentOrPureString`;
|
|
149
|
+
break;
|
|
150
|
+
case 'address':
|
|
151
|
+
pureFunction = `transactionArgumentOrPureAddress`;
|
|
152
|
+
break;
|
|
153
|
+
// case 'vector':
|
|
154
|
+
// case 'option':
|
|
155
|
+
default:
|
|
156
|
+
pureFunction = `transactionArgumentOrPure`;
|
|
157
|
+
// paramType = 'TransactionArgument'
|
|
158
|
+
}
|
|
159
|
+
const callValue = pureFunction ? `_args.push(${pureFunction}(args[${idx}], tx))` : `_args.push(args[${idx}])`;
|
|
160
|
+
args.push({
|
|
161
|
+
paramType,
|
|
162
|
+
callValue
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
return args;
|
|
167
|
+
}
|
|
168
|
+
generateViewFunction(module, func) {
|
|
169
|
+
if (func.visibility === InternalMoveFunctionVisibility.PRIVATE) {
|
|
170
|
+
return '';
|
|
171
|
+
}
|
|
172
|
+
const genericString = this.generateFunctionTypeParameters(func);
|
|
173
|
+
const typeParamArg = func.typeParams
|
|
174
|
+
.map((v, idx) => {
|
|
175
|
+
return `TypeDescriptor<T${idx}> | string`;
|
|
176
|
+
})
|
|
177
|
+
.join(',');
|
|
178
|
+
const args = this.generateArgs(module, func, true);
|
|
179
|
+
const returnType = `${this.generateFunctionReturnTypeParameters(func, module.address)}`;
|
|
180
|
+
return `export async function ${camel(normalizeToJSName(func.name))}${genericString}(
|
|
181
|
+
client: IotaClient,
|
|
182
|
+
args: [${args.map((a) => a.paramType).join(',')}],
|
|
183
|
+
${typeParamArg.length > 0 ? `typeArguments: [${typeParamArg}]` : ``} ): Promise<TypedDevInspectResults<${returnType}>> {
|
|
184
|
+
const tx = new Transaction()
|
|
185
|
+
builder.${camel(normalizeToJSName(func.name))}(tx, args ${typeParamArg.length > 0 ? `, typeArguments` : ''})
|
|
186
|
+
const inspectRes = await client.devInspectTransactionBlock({
|
|
187
|
+
transactionBlock: tx,
|
|
188
|
+
sender: ZERO_ADDRESS
|
|
189
|
+
})
|
|
190
|
+
|
|
191
|
+
return (await getMoveCoder(client)).decodeDevInspectResult<${returnType}>(inspectRes)
|
|
192
|
+
}`;
|
|
193
|
+
}
|
|
194
|
+
generateBuilderForFunction(address, module, func) {
|
|
195
|
+
if (func.visibility === InternalMoveFunctionVisibility.PRIVATE && func.isEntry !== true) {
|
|
196
|
+
return '';
|
|
197
|
+
}
|
|
198
|
+
const args = this.generateArgs(module, func, false);
|
|
199
|
+
const genericString = this.generateFunctionTypeParameters(func);
|
|
200
|
+
const typeParamArg = func.typeParams
|
|
201
|
+
.map((v, idx) => {
|
|
202
|
+
return `TypeDescriptor<T${idx}> | string`;
|
|
203
|
+
})
|
|
204
|
+
.join(',');
|
|
205
|
+
const typeParamToString = func.typeParams
|
|
206
|
+
.map((v, idx) => {
|
|
207
|
+
return `typeof typeArguments[${idx}] === 'string' ? typeArguments[${idx}] : typeArguments[${idx}].getSignature()`;
|
|
208
|
+
})
|
|
209
|
+
.join(',');
|
|
210
|
+
return `export function ${camel(normalizeToJSName(func.name))}${genericString}(tx: Transaction,
|
|
211
|
+
args: [${args.map((a) => a.paramType).join(',')}],
|
|
212
|
+
${typeParamArg.length > 0 ? `typeArguments: [${typeParamArg}]` : ``} ):
|
|
213
|
+
TransactionArgument & [ ${'TransactionArgument,'.repeat(args.length)} ] {
|
|
214
|
+
const _args: any[] = []
|
|
215
|
+
${args.map((a) => a.callValue).join('\n')}
|
|
216
|
+
|
|
217
|
+
// @ts-ignore
|
|
218
|
+
return tx.moveCall({
|
|
219
|
+
target: "${address}::${module.name}::${func.name}",
|
|
220
|
+
arguments: _args,
|
|
221
|
+
${typeParamArg.length > 0 ? `typeArguments: [${typeParamToString}]` : ``}
|
|
222
|
+
})
|
|
223
|
+
}`;
|
|
224
|
+
}
|
|
225
|
+
generateImports() {
|
|
226
|
+
return `
|
|
227
|
+
${super.generateImports()}
|
|
228
|
+
import { ZERO_ADDRESS, TypedDevInspectResults, getMoveCoder } from '@typemove/iota'
|
|
229
|
+
import { Transaction, TransactionArgument, TransactionObjectArgument } from '@iota/iota-sdk/transactions'
|
|
230
|
+
import { IotaClient } from '@iota/iota-sdk/client'
|
|
231
|
+
import { transactionArgumentOrObject,
|
|
232
|
+
transactionArgumentOrVec,
|
|
233
|
+
transactionArgumentOrPure,
|
|
234
|
+
transactionArgumentOrPureU8,
|
|
235
|
+
transactionArgumentOrPureU16,
|
|
236
|
+
transactionArgumentOrPureU32,
|
|
237
|
+
transactionArgumentOrPureU64,
|
|
238
|
+
transactionArgumentOrPureU128,
|
|
239
|
+
transactionArgumentOrPureU256,
|
|
240
|
+
transactionArgumentOrPureBool,
|
|
241
|
+
transactionArgumentOrPureString,
|
|
242
|
+
transactionArgumentOrPureAddress,
|
|
243
|
+
} from '@typemove/iota'
|
|
244
|
+
`;
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
//# sourceMappingURL=codegen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../../src/codegen/codegen.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/codegen/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/codegen/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/codegen/run.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { codegen } from './codegen.js';
|
|
3
|
+
import { Command } from 'commander';
|
|
4
|
+
import { createRequire } from 'module';
|
|
5
|
+
import fs from 'fs';
|
|
6
|
+
import path from 'path';
|
|
7
|
+
import { IotaClient } from '@iota/iota-sdk/client';
|
|
8
|
+
const require = createRequire(import.meta.url);
|
|
9
|
+
let pkg = undefined;
|
|
10
|
+
try {
|
|
11
|
+
pkg = require('../../package.json');
|
|
12
|
+
}
|
|
13
|
+
catch (e) {
|
|
14
|
+
pkg = require('../../../package.json');
|
|
15
|
+
}
|
|
16
|
+
const program = new Command();
|
|
17
|
+
program
|
|
18
|
+
.name('typemove-sui')
|
|
19
|
+
.description('CLI to generate typescript types from SUI ABIs')
|
|
20
|
+
.showHelpAfterError()
|
|
21
|
+
.version(pkg.version)
|
|
22
|
+
.argument('<location>', 'Directory of ABI json files or address of account to generate types for')
|
|
23
|
+
.option('-a, --abi-dir <dir>', 'Directory to store downloaded ABI. Only useful if <location> is address', './abis')
|
|
24
|
+
.option('-t, --target-dir <dir>', 'Directory to output generated files', './types')
|
|
25
|
+
.option('-n, --network <mainnet|testnet|$url>', 'Network to use, could be either "mainnet", "testnet" or any node URL', 'mainnet')
|
|
26
|
+
.action(async (location, options) => {
|
|
27
|
+
let endpoint = options.network;
|
|
28
|
+
if (endpoint == 'mainnet') {
|
|
29
|
+
endpoint = 'https://api.mainnet.iota.cafe/';
|
|
30
|
+
}
|
|
31
|
+
if (endpoint == 'testnet') {
|
|
32
|
+
endpoint = 'https://api.testnet.iota.cafe/';
|
|
33
|
+
}
|
|
34
|
+
const suiClient = new IotaClient({ url: endpoint });
|
|
35
|
+
let abisDir = location;
|
|
36
|
+
if (location.startsWith('0x')) {
|
|
37
|
+
const abiAddress = abisDir;
|
|
38
|
+
const abi = await suiClient.getNormalizedMoveModulesByPackage({ package: abiAddress });
|
|
39
|
+
abisDir = options.abiDir;
|
|
40
|
+
if (!fs.existsSync(abisDir)) {
|
|
41
|
+
fs.mkdirSync(abisDir, { recursive: true });
|
|
42
|
+
}
|
|
43
|
+
fs.writeFileSync(path.join(abisDir, abiAddress + '.json'), JSON.stringify(abi, null, 2));
|
|
44
|
+
}
|
|
45
|
+
const num = await codegen(abisDir, options.targetDir, endpoint, true);
|
|
46
|
+
process.exit(num == 0 ? 1 : 0);
|
|
47
|
+
});
|
|
48
|
+
program.parse();
|
|
49
|
+
//# sourceMappingURL=run.js.map
|
|
@@ -0,0 +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,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,EAAE,MAAM,IAAI,CAAA;AACnB,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,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;AAC7B,OAAO;KACJ,IAAI,CAAC,cAAc,CAAC;KACpB,WAAW,CAAC,gDAAgD,CAAC;KAC7D,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,IAAI,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAA;IAC9B,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC;QAC1B,QAAQ,GAAG,gCAAgC,CAAA;IAC7C,CAAC;IACD,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC;QAC1B,QAAQ,GAAG,gCAAgC,CAAA;IAC7C,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAA;IAEnD,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,SAAS,CAAC,iCAAiC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAA;QACtF,OAAO,GAAG,OAAO,CAAC,MAAM,CAAA;QACxB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC5C,CAAC;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;IAC1F,CAAC;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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,kBAAkB,CAAA;AAEhC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,kBAAkB,CAAA;AAEhC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { IotaEvent, MoveCallIotaTransaction, IotaMoveObject, DevInspectResults } from '@iota/iota-sdk/client';
|
|
2
|
+
import { DecodedStruct } from '@typemove/move';
|
|
3
|
+
export declare const ZERO_ADDRESS = "0x0000000000000000000000000000000000000000000000000000000000000000";
|
|
4
|
+
export type TypedEventInstance<T> = DecodedStruct<IotaEvent, T>;
|
|
5
|
+
export type TypedIotaMoveObject<T> = DecodedStruct<IotaMoveObject, T>;
|
|
6
|
+
export type TypedFunctionPayload<T extends Array<any>> = MoveCallIotaTransaction & {
|
|
7
|
+
/**
|
|
8
|
+
* decoded argument data using ABI, undefined if there is decoding error, usually because the ABI/data mismatch
|
|
9
|
+
*/
|
|
10
|
+
arguments_decoded: T;
|
|
11
|
+
};
|
|
12
|
+
export type TypedDevInspectResults<T extends Array<any>> = DevInspectResults & {
|
|
13
|
+
/**
|
|
14
|
+
* Decoded return values using ABI, undefined if there is decoding error, usually because the ABI/data mismatch
|
|
15
|
+
*/
|
|
16
|
+
results_decoded?: T;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=models.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAClH,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAE9C,eAAO,MAAM,YAAY,uEAAuE,CAAA;AAEhG,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;AAC/D,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,aAAa,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA;AAErE,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,IAAI,uBAAuB,GAAG;IACjF;;OAEG;IACH,iBAAiB,EAAE,CAAC,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,sBAAsB,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,IAAI,iBAAiB,GAAG;IAC7E;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,CAAA;CACpB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,YAAY,GAAG,oEAAoE,CAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { TypedDevInspectResults, TypedEventInstance } from './models.js';
|
|
2
|
+
import { AbstractMoveCoder, DecodedStruct, TypeDescriptor, InternalMoveModule } from '@typemove/move';
|
|
3
|
+
import { MoveCallIotaTransaction, IotaCallArg, IotaEvent, IotaMoveNormalizedModule, IotaMoveObject, DevInspectResults, IotaClient } from '@iota/iota-sdk/client';
|
|
4
|
+
import { dynamic_field } from './builtin/0x2.js';
|
|
5
|
+
import { BcsType } from '@iota/iota-sdk/bcs';
|
|
6
|
+
export type Encoding = 'base58' | 'base64' | 'hex';
|
|
7
|
+
export declare class MoveCoder extends AbstractMoveCoder<IotaMoveNormalizedModule, IotaEvent | IotaMoveObject> {
|
|
8
|
+
constructor(client: IotaClient);
|
|
9
|
+
maybeGetMoveEnum(type: string): Promise<undefined>;
|
|
10
|
+
load(module: IotaMoveNormalizedModule, address: string): InternalMoveModule;
|
|
11
|
+
protected decode(data: any, type: TypeDescriptor): Promise<any>;
|
|
12
|
+
decodeEvent<T>(event: IotaEvent): Promise<TypedEventInstance<T> | undefined>;
|
|
13
|
+
filterAndDecodeEvents<T>(type: TypeDescriptor<T> | string, resources: IotaEvent[]): Promise<TypedEventInstance<T>[]>;
|
|
14
|
+
getDynamicFields<T1, T2>(objects: IotaMoveObject[], keyType?: TypeDescriptor<T1>, valueType?: TypeDescriptor<T2>): Promise<dynamic_field.Field<T1, T2>[]>;
|
|
15
|
+
filterAndDecodeObjects<T>(type: TypeDescriptor<T>, objects: IotaMoveObject[]): Promise<DecodedStruct<IotaMoveObject, T>[]>;
|
|
16
|
+
decodeFunctionPayload(payload: MoveCallIotaTransaction, inputs: IotaCallArg[]): Promise<MoveCallIotaTransaction>;
|
|
17
|
+
private bcsRegistered;
|
|
18
|
+
private bcsRegistry;
|
|
19
|
+
private getBCSTypeWithArgs;
|
|
20
|
+
getBCSType(type: TypeDescriptor): Promise<BcsType<any>>;
|
|
21
|
+
registerBCSTypes(type: TypeDescriptor): Promise<void>;
|
|
22
|
+
decodeBCS(type: TypeDescriptor, data: Uint8Array | string, encoding?: Encoding): Promise<any>;
|
|
23
|
+
decodeDevInspectResult<T extends any[]>(inspectRes: DevInspectResults): Promise<TypedDevInspectResults<T>>;
|
|
24
|
+
}
|
|
25
|
+
export declare function defaultMoveCoder(endpoint?: string): MoveCoder;
|
|
26
|
+
export declare function getMoveCoder(client: IotaClient): Promise<MoveCoder>;
|
|
27
|
+
//# sourceMappingURL=move-coder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"move-coder.d.ts","sourceRoot":"","sources":["../../src/move-coder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAwB,MAAM,aAAa,CAAA;AAC9F,OAAO,EACL,iBAAiB,EAEjB,aAAa,EAGb,cAAc,EACd,kBAAkB,EACnB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,uBAAuB,EACvB,WAAW,EACX,SAAS,EACT,wBAAwB,EACxB,cAAc,EACd,iBAAiB,EACjB,UAAU,EACX,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,OAAO,EAAO,MAAM,oBAAoB,CAAA;AAGjD,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAA;AAIlD,qBAAa,SAAU,SAAQ,iBAAiB,CAE9C,wBAAwB,EACxB,SAAS,GAAG,cAAc,CAC3B;gBACa,MAAM,EAAE,UAAU;IAIxB,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAInC,IAAI,CAAC,MAAM,EAAE,wBAAwB,EAAE,OAAO,EAAE,MAAM,GAAG,kBAAkB;cAY3D,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC;IAkErE,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAG5E,qBAAqB,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;IAO9G,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAC3B,OAAO,EAAE,cAAc,EAAE,EACzB,OAAO,GAAE,cAAc,CAAC,EAAE,CAAY,EACtC,SAAS,GAAE,cAAc,CAAC,EAAE,CAAY,GACvC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;IASzC,sBAAsB,CAAC,CAAC,EACtB,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,EACvB,OAAO,EAAE,cAAc,EAAE,GACxB,OAAO,CAAC,aAAa,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC;IAIxC,qBAAqB,CACzB,OAAO,EAAE,uBAAuB,EAChC,MAAM,EAAE,WAAW,EAAE,GACpB,OAAO,CAAC,uBAAuB,CAAC;IAgCnC,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,WAAW,CAAkC;YAEvC,kBAAkB;IA+C1B,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAOvD,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAWrD,SAAS,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAU7F,sBAAsB,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;CAkBjH;AAMD,wBAAgB,gBAAgB,CAAC,QAAQ,GAAE,MAAyB,GAAG,SAAS,CAO/E;AAMD,wBAAsB,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,CAiBzE"}
|