@aztec/cli 0.1.0-alpha37 → 0.1.0-alpha38
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/.tsbuildinfo +1 -1
- package/README.md +8 -8
- package/dest/bin/index.d.ts +3 -0
- package/dest/bin/index.d.ts.map +1 -0
- package/dest/bin/index.js +17 -0
- package/dest/{cli_encoder.d.ts → encoding.d.ts} +1 -1
- package/dest/encoding.d.ts.map +1 -0
- package/dest/encoding.js +87 -0
- package/dest/index.d.ts +9 -2
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +121 -87
- package/dest/utils.d.ts +1 -1
- package/dest/utils.js +4 -4
- package/package.json +8 -7
- package/src/bin/index.ts +20 -0
- package/src/index.ts +134 -105
- package/src/utils.ts +4 -4
- package/tsconfig.json +3 -0
- package/dest/cli_encoder.d.ts.map +0 -1
- package/dest/cli_encoder.js +0 -87
- /package/src/{cli_encoder.ts → encoding.ts} +0 -0
package/README.md
CHANGED
|
@@ -236,15 +236,15 @@ Example usage:
|
|
|
236
236
|
aztec-cli get-contract-data 0x123456789abcdef123456789abcdef12345678
|
|
237
237
|
```
|
|
238
238
|
|
|
239
|
-
### register-
|
|
239
|
+
### register-recipient
|
|
240
240
|
|
|
241
|
-
Register
|
|
241
|
+
Register a recipient account on the RPC server (called recipient because we can only send notes to this account and not receive them via this RPC server).
|
|
242
242
|
To read about how keys are generated and used, head to our docs [here](https://github.com/AztecProtocol/aztec-packages/blob/master/docs/docs/aztec/developer/wallet-providers/keys.md#addresses-partial-addresses-and-public-keys).
|
|
243
243
|
|
|
244
244
|
Syntax:
|
|
245
245
|
|
|
246
246
|
```shell
|
|
247
|
-
aztec-cli register-
|
|
247
|
+
aztec-cli register-recipient [options]
|
|
248
248
|
```
|
|
249
249
|
|
|
250
250
|
Options:
|
|
@@ -257,7 +257,7 @@ Options:
|
|
|
257
257
|
Example usage:
|
|
258
258
|
|
|
259
259
|
```shell
|
|
260
|
-
aztec-cli register-
|
|
260
|
+
aztec-cli register-recipient -p 0x20d9d93c4a9eb2b4bdb70ead07d28d1edb74bfd78443a8c36b098b024cd26f0e0647f5dbe3619453f42eb788c2beed0294c84676425047aadac23294605c4af9 -a 0x111fdc0f6bf831ca59f05863199762d643b782699d7ce6feaae40a923baf60af -pa 0x72bf7c9537875b0af267b4a8c497927e251f5988af6e30527feb16299042ed
|
|
261
261
|
```
|
|
262
262
|
|
|
263
263
|
### get-accounts
|
|
@@ -282,14 +282,14 @@ Example usage:
|
|
|
282
282
|
aztec-cli get-accounts
|
|
283
283
|
```
|
|
284
284
|
|
|
285
|
-
### get-account
|
|
285
|
+
### get-account
|
|
286
286
|
|
|
287
|
-
Gets an account
|
|
287
|
+
Gets an account given its Aztec address.
|
|
288
288
|
|
|
289
289
|
Syntax:
|
|
290
290
|
|
|
291
291
|
```shell
|
|
292
|
-
aztec-cli get-account
|
|
292
|
+
aztec-cli get-account <address> [options]
|
|
293
293
|
```
|
|
294
294
|
|
|
295
295
|
- `address`: The Aztec address to get the public key for.
|
|
@@ -303,7 +303,7 @@ This command retrieves and displays the public key of an account given its Aztec
|
|
|
303
303
|
Example usage:
|
|
304
304
|
|
|
305
305
|
```shell
|
|
306
|
-
aztec-cli get-account
|
|
306
|
+
aztec-cli get-account 0x123456789abcdef123456789abcdef12345678
|
|
307
307
|
```
|
|
308
308
|
|
|
309
309
|
### send
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bin/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
#!/usr/bin/env -S node --no-warnings
|
|
2
|
+
import { createDebugLogger } from '@aztec/aztec.js';
|
|
3
|
+
import { createConsoleLogger } from '@aztec/foundation/log';
|
|
4
|
+
import { getProgram } from '../index.js';
|
|
5
|
+
const debugLogger = createDebugLogger('aztec:cli');
|
|
6
|
+
const log = createConsoleLogger();
|
|
7
|
+
/** CLI main entrypoint */
|
|
8
|
+
async function main() {
|
|
9
|
+
const program = getProgram(log, debugLogger);
|
|
10
|
+
await program.parseAsync(process.argv);
|
|
11
|
+
}
|
|
12
|
+
main().catch(err => {
|
|
13
|
+
log(`Error in command execution`);
|
|
14
|
+
log(err);
|
|
15
|
+
process.exit(1);
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmluL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU1RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXpDLE1BQU0sV0FBVyxHQUFHLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQ25ELE1BQU0sR0FBRyxHQUFHLG1CQUFtQixFQUFFLENBQUM7QUFFbEMsMEJBQTBCO0FBQzFCLEtBQUssVUFBVSxJQUFJO0lBQ2pCLE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDN0MsTUFBTSxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBRUQsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFO0lBQ2pCLEdBQUcsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBQ2xDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbEIsQ0FBQyxDQUFDLENBQUMifQ==
|
|
@@ -12,4 +12,4 @@ export declare function parseStructString(str: string, abiType: StructType): any
|
|
|
12
12
|
* @returns The encoded array.
|
|
13
13
|
*/
|
|
14
14
|
export declare function encodeArgs(args: any[], params: ABIParameter[]): any[];
|
|
15
|
-
//# sourceMappingURL=
|
|
15
|
+
//# sourceMappingURL=encoding.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encoding.d.ts","sourceRoot":"","sources":["../src/encoding.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAW,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAE1E;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,OAcjE;AA8CD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,SAO7D"}
|
package/dest/encoding.js
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { Fr } from '@aztec/aztec.js';
|
|
2
|
+
/**
|
|
3
|
+
* Parses a hex string into an ABI struct type.
|
|
4
|
+
* @param str - The encoded hex string.
|
|
5
|
+
* @param abiType - The ABI Struct type.
|
|
6
|
+
* @returns An object in the ABI struct type's format.
|
|
7
|
+
*/
|
|
8
|
+
export function parseStructString(str, abiType) {
|
|
9
|
+
// Assing string bytes to struct fields.
|
|
10
|
+
const buf = Buffer.from(str.replace(/^0x/i, ''), 'hex');
|
|
11
|
+
const struct = {};
|
|
12
|
+
let byteIndex = 0;
|
|
13
|
+
let argIndex = 0;
|
|
14
|
+
while (byteIndex < buf.length) {
|
|
15
|
+
const { name } = abiType.fields[argIndex];
|
|
16
|
+
struct[name] = Fr.fromBuffer(buf.subarray(byteIndex, byteIndex + 32));
|
|
17
|
+
byteIndex += 32;
|
|
18
|
+
argIndex += 1;
|
|
19
|
+
}
|
|
20
|
+
return struct;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Helper function to encode CLI string args to an appropriate JS type.
|
|
24
|
+
* @param arg - The CLI argument.
|
|
25
|
+
* @param abiType - The type as described by the contract's ABI.
|
|
26
|
+
* @returns The encoded argument.
|
|
27
|
+
*/
|
|
28
|
+
function encodeArg(arg, abiType) {
|
|
29
|
+
const { kind } = abiType;
|
|
30
|
+
if (kind === 'field' || kind === 'integer') {
|
|
31
|
+
return BigInt(arg);
|
|
32
|
+
}
|
|
33
|
+
else if (kind === 'boolean') {
|
|
34
|
+
if (arg === 'true')
|
|
35
|
+
return true;
|
|
36
|
+
if (arg === 'false')
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
else if (kind === 'array') {
|
|
40
|
+
let arr;
|
|
41
|
+
try {
|
|
42
|
+
arr = JSON.parse(arg);
|
|
43
|
+
if (!Array.isArray(arr))
|
|
44
|
+
throw Error();
|
|
45
|
+
for (let i = 0; i < abiType.length; i += 1) {
|
|
46
|
+
return encodeArg(arg[i], abiType.type);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
throw new Error(`Unable to parse arg ${arg} as array`);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
else if (kind === 'struct') {
|
|
54
|
+
// check if input is encoded long string
|
|
55
|
+
if (arg.startsWith('0x')) {
|
|
56
|
+
return parseStructString(arg, abiType);
|
|
57
|
+
}
|
|
58
|
+
let obj;
|
|
59
|
+
try {
|
|
60
|
+
obj = JSON.parse(arg);
|
|
61
|
+
if (Array.isArray(obj))
|
|
62
|
+
throw Error();
|
|
63
|
+
const res = [];
|
|
64
|
+
for (const field of abiType.fields) {
|
|
65
|
+
res.push(encodeArg(obj[field.name], field.type));
|
|
66
|
+
}
|
|
67
|
+
return res;
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
throw new Error(`Unable to parse arg ${arg} as struct`);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Tries to encode function args to their equivalent TS type.
|
|
76
|
+
* @param args - An array of function's / constructor's args.
|
|
77
|
+
* @returns The encoded array.
|
|
78
|
+
*/
|
|
79
|
+
export function encodeArgs(args, params) {
|
|
80
|
+
return args
|
|
81
|
+
.map((arg, index) => {
|
|
82
|
+
const paramType = params[index].type;
|
|
83
|
+
return encodeArg(arg, paramType);
|
|
84
|
+
})
|
|
85
|
+
.flat();
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2RpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZW5jb2RpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBR3JDOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLEdBQVcsRUFBRSxPQUFtQjtJQUNoRSx3Q0FBd0M7SUFDeEMsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN4RCxNQUFNLE1BQU0sR0FBUSxFQUFFLENBQUM7SUFDdkIsSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDO0lBQ2xCLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQztJQUNqQixPQUFPLFNBQVMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFO1FBQzdCLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLFNBQVMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3RFLFNBQVMsSUFBSSxFQUFFLENBQUM7UUFDaEIsUUFBUSxJQUFJLENBQUMsQ0FBQztLQUNmO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsU0FBUyxTQUFTLENBQUMsR0FBVyxFQUFFLE9BQWdCO0lBQzlDLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxPQUFPLENBQUM7SUFDekIsSUFBSSxJQUFJLEtBQUssT0FBTyxJQUFJLElBQUksS0FBSyxTQUFTLEVBQUU7UUFDMUMsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDcEI7U0FBTSxJQUFJLElBQUksS0FBSyxTQUFTLEVBQUU7UUFDN0IsSUFBSSxHQUFHLEtBQUssTUFBTTtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ2hDLElBQUksR0FBRyxLQUFLLE9BQU87WUFBRSxPQUFPLEtBQUssQ0FBQztLQUNuQztTQUFNLElBQUksSUFBSSxLQUFLLE9BQU8sRUFBRTtRQUMzQixJQUFJLEdBQUcsQ0FBQztRQUNSLElBQUk7WUFDRixHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN0QixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7Z0JBQUUsTUFBTSxLQUFLLEVBQUUsQ0FBQztZQUN2QyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUMxQyxPQUFPLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3hDO1NBQ0Y7UUFBQyxNQUFNO1lBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsR0FBRyxXQUFXLENBQUMsQ0FBQztTQUN4RDtLQUNGO1NBQU0sSUFBSSxJQUFJLEtBQUssUUFBUSxFQUFFO1FBQzVCLHdDQUF3QztRQUN4QyxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDeEIsT0FBTyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDeEM7UUFDRCxJQUFJLEdBQUcsQ0FBQztRQUNSLElBQUk7WUFDRixHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN0QixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO2dCQUFFLE1BQU0sS0FBSyxFQUFFLENBQUM7WUFDdEMsTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFDO1lBQ2YsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFO2dCQUNsQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2FBQ2xEO1lBQ0QsT0FBTyxHQUFHLENBQUM7U0FDWjtRQUFDLE1BQU07WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLHVCQUF1QixHQUFHLFlBQVksQ0FBQyxDQUFDO1NBQ3pEO0tBQ0Y7QUFDSCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxVQUFVLENBQUMsSUFBVyxFQUFFLE1BQXNCO0lBQzVELE9BQU8sSUFBSTtTQUNSLEdBQUcsQ0FBQyxDQUFDLEdBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRTtRQUN2QixNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3JDLE9BQU8sU0FBUyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUNuQyxDQUFDLENBQUM7U0FDRCxJQUFJLEVBQUUsQ0FBQztBQUNaLENBQUMifQ==
|
package/dest/index.d.ts
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { DebugLogger, LogFn } from '@aztec/foundation/log';
|
|
2
|
+
import { Command } from 'commander';
|
|
3
|
+
/**
|
|
4
|
+
* Returns commander program that defines the CLI.
|
|
5
|
+
* @param log - Console logger.
|
|
6
|
+
* @param debugLogger - Debug logger.
|
|
7
|
+
* @returns The CLI.
|
|
8
|
+
*/
|
|
9
|
+
export declare function getProgram(log: LogFn, debugLogger: DebugLogger): Command;
|
|
3
10
|
//# sourceMappingURL=index.d.ts.map
|
package/dest/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAK3D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2BpC;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CA+axE"}
|