keecli 1.0.0 → 1.1.0
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/README.md +73 -20
- package/dist/commands/balance.d.ts.map +1 -1
- package/dist/commands/balance.js +8 -17
- package/dist/commands/balance.js.map +1 -1
- package/dist/commands/faucet.d.ts.map +1 -1
- package/dist/commands/faucet.js +23 -11
- package/dist/commands/faucet.js.map +1 -1
- package/dist/commands/list-conversions.d.ts.map +1 -1
- package/dist/commands/list-conversions.js +8 -17
- package/dist/commands/list-conversions.js.map +1 -1
- package/dist/commands/list-tokens.d.ts.map +1 -1
- package/dist/commands/list-tokens.js +8 -17
- package/dist/commands/list-tokens.js.map +1 -1
- package/dist/commands/receive.d.ts.map +1 -1
- package/dist/commands/receive.js +8 -11
- package/dist/commands/receive.js.map +1 -1
- package/dist/commands/send.d.ts.map +1 -1
- package/dist/commands/send.js +8 -17
- package/dist/commands/send.js.map +1 -1
- package/dist/commands/swap.d.ts.map +1 -1
- package/dist/commands/swap.js +9 -16
- package/dist/commands/swap.js.map +1 -1
- package/dist/index.js +6 -6
- package/dist/index.js.map +1 -1
- package/dist/lib/account.d.ts +13 -2
- package/dist/lib/account.d.ts.map +1 -1
- package/dist/lib/account.js +23 -4
- package/dist/lib/account.js.map +1 -1
- package/dist/lib/command-args.d.ts +18 -0
- package/dist/lib/command-args.d.ts.map +1 -0
- package/dist/lib/command-args.js +47 -0
- package/dist/lib/command-args.js.map +1 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# KeeCLI
|
|
2
2
|
|
|
3
|
-
A
|
|
3
|
+
A command-line interface for trading on the Keeta Network Network.
|
|
4
4
|
|
|
5
5
|
## Installation
|
|
6
6
|
|
|
@@ -14,47 +14,87 @@ npm install -g keecli
|
|
|
14
14
|
|
|
15
15
|
### Authentication
|
|
16
16
|
|
|
17
|
-
All commands require a passphrase
|
|
17
|
+
All commands require authentication via either a passphrase or seed. You can provide credentials via:
|
|
18
18
|
|
|
19
|
+
**Passphrase Authentication:**
|
|
19
20
|
- Command line flag: `-p "your passphrase"`
|
|
20
21
|
- Environment variable: `export KEECLI_PASSPHRASE="your passphrase"`
|
|
21
22
|
|
|
23
|
+
**Seed Authentication:**
|
|
24
|
+
- Command line flag: `-s "your-seed-string"`
|
|
25
|
+
- Environment variable: `export KEECLI_SEED="your-seed-string"`
|
|
26
|
+
|
|
27
|
+
**Additional Options:**
|
|
28
|
+
- Network: `-n test|main|staging|dev` (default: test)
|
|
29
|
+
- Account offset: `-o 0` (default: 0)
|
|
30
|
+
- Custom resolver: `-r "resolver_address"`
|
|
31
|
+
|
|
22
32
|
### Commands
|
|
23
33
|
|
|
24
34
|
#### List Available Tokens
|
|
25
35
|
```bash
|
|
36
|
+
# With passphrase on test network (default)
|
|
26
37
|
keecli list-tokens -p "your passphrase"
|
|
27
|
-
|
|
38
|
+
|
|
39
|
+
# With seed on main network
|
|
40
|
+
keecli list-tokens -s "your-seed-string" -n main
|
|
41
|
+
|
|
42
|
+
# With passphrase, custom offset, and resolver
|
|
43
|
+
keecli list-tokens -p "your passphrase" -o 5 -r "custom_resolver_address"
|
|
28
44
|
```
|
|
29
45
|
|
|
30
46
|
#### List Token Conversions
|
|
31
47
|
```bash
|
|
48
|
+
# With passphrase
|
|
32
49
|
keecli list-conversions -p "your passphrase" -t "TOKEN_SYMBOL"
|
|
50
|
+
|
|
51
|
+
# With seed on staging network
|
|
52
|
+
keecli list-conversions -s "your-seed" -n staging -t "TOKEN_SYMBOL"
|
|
33
53
|
```
|
|
34
54
|
|
|
35
55
|
#### Execute Token Swap
|
|
36
56
|
```bash
|
|
57
|
+
# Basic swap with passphrase
|
|
37
58
|
keecli swap -p "your passphrase" -f "FROM_TOKEN" -t "TO_TOKEN" -a "1000"
|
|
59
|
+
|
|
60
|
+
# Swap with seed on main network, offset 3
|
|
61
|
+
keecli swap -s "your-seed" -n main -o 3 -f "FROM_TOKEN" -t "TO_TOKEN" -a "1000"
|
|
38
62
|
```
|
|
39
63
|
|
|
40
64
|
#### Check Account Balances
|
|
41
65
|
```bash
|
|
66
|
+
# With passphrase
|
|
42
67
|
keecli balance -p "your passphrase"
|
|
68
|
+
|
|
69
|
+
# With seed, offset 2, on main network
|
|
70
|
+
keecli balance -s "your-seed" -o 2 -n main
|
|
43
71
|
```
|
|
44
72
|
|
|
45
73
|
#### Send Tokens
|
|
46
74
|
```bash
|
|
75
|
+
# With passphrase
|
|
47
76
|
keecli send TOKEN_SYMBOL recipient_address amount -p "your passphrase"
|
|
77
|
+
|
|
78
|
+
# With seed on different network
|
|
79
|
+
keecli send TOKEN_SYMBOL recipient_address amount -s "your-seed" -n main
|
|
48
80
|
```
|
|
49
81
|
|
|
50
82
|
#### Get Receive Address
|
|
51
83
|
```bash
|
|
84
|
+
# With passphrase
|
|
52
85
|
keecli receive -p "your passphrase"
|
|
86
|
+
|
|
87
|
+
# With seed and custom offset
|
|
88
|
+
keecli receive -s "your-seed" -o 10
|
|
53
89
|
```
|
|
54
90
|
|
|
55
91
|
#### Request Test Tokens (Faucet)
|
|
56
92
|
```bash
|
|
93
|
+
# Faucet only works on test network
|
|
57
94
|
keecli faucet -p "your passphrase"
|
|
95
|
+
keecli faucet -s "your-seed" -o 5
|
|
96
|
+
|
|
97
|
+
# Note: Faucet will error if you try to use it on other networks
|
|
58
98
|
```
|
|
59
99
|
|
|
60
100
|
### Environment Variables
|
|
@@ -62,7 +102,13 @@ keecli faucet -p "your passphrase"
|
|
|
62
102
|
Set environment variables to avoid repeating common parameters:
|
|
63
103
|
|
|
64
104
|
```bash
|
|
105
|
+
# Authentication (choose one)
|
|
65
106
|
export KEECLI_PASSPHRASE="your passphrase"
|
|
107
|
+
export KEECLI_SEED="your-seed-string"
|
|
108
|
+
|
|
109
|
+
# Optional configuration
|
|
110
|
+
export KEECLI_NETWORK="main"
|
|
111
|
+
export KEECLI_OFFSET="5"
|
|
66
112
|
export KEECLI_RESOLVER="custom_resolver_address"
|
|
67
113
|
|
|
68
114
|
# Now you can run commands without flags
|
|
@@ -72,33 +118,40 @@ keecli balance
|
|
|
72
118
|
|
|
73
119
|
### Global Options
|
|
74
120
|
|
|
75
|
-
|
|
76
|
-
- `-
|
|
121
|
+
**Authentication (required - choose one):**
|
|
122
|
+
- `-p, --passphrase`: Your account passphrase
|
|
123
|
+
- `-s, --seed`: Your account seed string
|
|
124
|
+
|
|
125
|
+
**Network Configuration (optional):**
|
|
126
|
+
- `-n, --network`: Network to connect to (test|main|staging|dev, default: test)
|
|
127
|
+
- `-o, --offset`: Account offset for seed derivation (default: 0)
|
|
128
|
+
- `-r, --resolver`: Custom resolver address
|
|
129
|
+
|
|
130
|
+
**General:**
|
|
77
131
|
- `-h, --help`: Show help
|
|
78
132
|
- `--version`: Show version
|
|
79
133
|
|
|
80
134
|
## Examples
|
|
81
135
|
|
|
82
136
|
```bash
|
|
83
|
-
# Check your balances
|
|
137
|
+
# Check your balances with passphrase
|
|
84
138
|
keecli balance -p "my secure passphrase"
|
|
85
139
|
|
|
86
|
-
# List
|
|
87
|
-
keecli list-tokens -
|
|
88
|
-
|
|
89
|
-
# Find what you can convert USDC to
|
|
90
|
-
keecli list-conversions -t "USDC" -p "my secure passphrase"
|
|
140
|
+
# List tokens using seed on main network
|
|
141
|
+
keecli list-tokens -s "my-seed-string" -n main
|
|
91
142
|
|
|
92
|
-
#
|
|
93
|
-
keecli
|
|
143
|
+
# Find conversions with offset account
|
|
144
|
+
keecli list-conversions -t "USDC" -p "my passphrase" -o 3
|
|
94
145
|
|
|
95
|
-
#
|
|
96
|
-
keecli
|
|
146
|
+
# Swap on staging network with seed
|
|
147
|
+
keecli swap -f "USDC" -t "ETH" -a "1000" -s "my-seed" -n staging
|
|
97
148
|
|
|
98
|
-
#
|
|
99
|
-
keecli
|
|
100
|
-
```
|
|
149
|
+
# Send using different account offset
|
|
150
|
+
keecli send USDC B62qn7... 500 -p "my passphrase" -o 2
|
|
101
151
|
|
|
102
|
-
|
|
152
|
+
# Get address for offset account 5
|
|
153
|
+
keecli receive -s "my-seed" -o 5
|
|
103
154
|
|
|
104
|
-
|
|
155
|
+
# Request test tokens (only works on test network)
|
|
156
|
+
keecli faucet -p "my passphrase"
|
|
157
|
+
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"balance.d.ts","sourceRoot":"","sources":["../../src/commands/balance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"balance.d.ts","sourceRoot":"","sources":["../../src/commands/balance.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,OAAO,EAAE,MAAkB,CAAC;AACzC,eAAO,MAAM,IAAI,EAAE,MAA+C,CAAC;AAEnE,eAAO,MAAM,OAAO,GAAI,OAAO,GAAG,QAAiC,CAAC;AAEpE,eAAO,MAAM,OAAO,GAAU,MAAM,GAAG,KAAG,OAAO,CAAC,IAAI,CA+FrD,CAAC"}
|
package/dist/commands/balance.js
CHANGED
|
@@ -1,26 +1,17 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createUserClient } from "../lib/account.js";
|
|
2
2
|
import { createFXClient } from "../lib/fx-client.js";
|
|
3
|
+
import { authArguments, validateAuthArgs, getAuthOptions, } from "../lib/command-args.js";
|
|
3
4
|
export const command = "balance";
|
|
4
5
|
export const desc = "Show account balances for all tokens";
|
|
5
|
-
export const builder = (yargs) => yargs.options(
|
|
6
|
-
passphrase: {
|
|
7
|
-
type: "string",
|
|
8
|
-
demandOption: true,
|
|
9
|
-
describe: "User passphrase for authentication",
|
|
10
|
-
alias: "p",
|
|
11
|
-
},
|
|
12
|
-
resolver: {
|
|
13
|
-
type: "string",
|
|
14
|
-
demandOption: false,
|
|
15
|
-
describe: "Resolver account public key string (uses default if not provided)",
|
|
16
|
-
alias: "r",
|
|
17
|
-
},
|
|
18
|
-
});
|
|
6
|
+
export const builder = (yargs) => yargs.options(authArguments);
|
|
19
7
|
export const handler = async (argv) => {
|
|
20
8
|
try {
|
|
9
|
+
// Validate authentication arguments
|
|
10
|
+
validateAuthArgs(argv);
|
|
21
11
|
console.log("Fetching account balances...");
|
|
22
|
-
// Create user client from
|
|
23
|
-
const
|
|
12
|
+
// Create user client from provided credentials
|
|
13
|
+
const authOptions = getAuthOptions(argv);
|
|
14
|
+
const userClient = await createUserClient(authOptions);
|
|
24
15
|
// Create FX client for token registry lookup
|
|
25
16
|
const fxClient = createFXClient(argv.resolver, userClient);
|
|
26
17
|
// Get token registry for ticker lookup
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"balance.js","sourceRoot":"","sources":["../../src/commands/balance.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"balance.js","sourceRoot":"","sources":["../../src/commands/balance.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"faucet.d.ts","sourceRoot":"","sources":["../../src/commands/faucet.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"faucet.d.ts","sourceRoot":"","sources":["../../src/commands/faucet.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,OAAO,EAAE,MAAiB,CAAC;AACxC,eAAO,MAAM,IAAI,EAAE,MACgD,CAAC;AAEpE,eAAO,MAAM,OAAO,GAAI,OAAO,GAAG,QASjC,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,MAAM,GAAG,KAAG,OAAO,CAAC,IAAI,CAiDrD,CAAC"}
|
package/dist/commands/faucet.js
CHANGED
|
@@ -1,21 +1,33 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createUserClient } from "../lib/account.js";
|
|
2
2
|
import { FaucetClient } from "../lib/faucet.js";
|
|
3
|
+
import { authArguments, validateAuthArgs, getAuthOptions, } from "../lib/command-args.js";
|
|
3
4
|
export const command = "faucet";
|
|
4
5
|
export const desc = "Request test tokens from the faucet and wait for them to arrive";
|
|
5
|
-
export const builder = (yargs) =>
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}
|
|
6
|
+
export const builder = (yargs) => {
|
|
7
|
+
const faucetArgs = { ...authArguments };
|
|
8
|
+
// Override network description to clarify test-only requirement
|
|
9
|
+
faucetArgs.network = {
|
|
10
|
+
...authArguments.network,
|
|
11
|
+
describe: "Network to connect to (faucet only works on 'test' network)",
|
|
12
|
+
default: "test",
|
|
13
|
+
};
|
|
14
|
+
return yargs.options(faucetArgs);
|
|
15
|
+
};
|
|
13
16
|
export const handler = async (argv) => {
|
|
14
17
|
try {
|
|
18
|
+
// Validate authentication arguments
|
|
19
|
+
validateAuthArgs(argv);
|
|
20
|
+
// Validate that faucet only works on test network
|
|
21
|
+
const authOptions = getAuthOptions(argv);
|
|
22
|
+
if (authOptions.network !== "test") {
|
|
23
|
+
console.error(`Error: Faucet is only available on the test network, but you specified: ${authOptions.network}`);
|
|
24
|
+
console.error("Please use --network test or omit the network flag (defaults to test)");
|
|
25
|
+
process.exit(1);
|
|
26
|
+
}
|
|
15
27
|
console.log("Requesting tokens from faucet...");
|
|
16
|
-
// Create user client from
|
|
28
|
+
// Create user client from provided credentials
|
|
17
29
|
console.log("Authenticating...");
|
|
18
|
-
const userClient = await
|
|
30
|
+
const userClient = await createUserClient(authOptions);
|
|
19
31
|
console.log(" User authenticated");
|
|
20
32
|
console.log(` Account: ${userClient.account.publicKeyString.get()}`);
|
|
21
33
|
// Request tokens and wait for them to arrive
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"faucet.js","sourceRoot":"","sources":["../../src/commands/faucet.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"faucet.js","sourceRoot":"","sources":["../../src/commands/faucet.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,cAAc,GAEf,MAAM,wBAAwB,CAAC;AAIhC,MAAM,CAAC,MAAM,OAAO,GAAW,QAAQ,CAAC;AACxC,MAAM,CAAC,MAAM,IAAI,GACf,iEAAiE,CAAC;AAEpE,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAU,EAAE,EAAE;IACpC,MAAM,UAAU,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC;IACxC,gEAAgE;IAChE,UAAU,CAAC,OAAO,GAAG;QACnB,GAAG,aAAa,CAAC,OAAO;QACxB,QAAQ,EAAE,6DAA6D;QACvE,OAAO,EAAE,MAAM;KAChB,CAAC;IACF,OAAO,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,IAAS,EAAiB,EAAE;IACxD,IAAI,CAAC;QACH,oCAAoC;QACpC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAEvB,kDAAkD;QAClD,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,WAAW,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YACnC,OAAO,CAAC,KAAK,CACX,2EAA2E,WAAW,CAAC,OAAO,EAAE,CACjG,CAAC;YACF,OAAO,CAAC,KAAK,CACX,uEAAuE,CACxE,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAEhD,+CAA+C;QAC/C,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACjC,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,WAAW,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,eAAe,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAEvE,6CAA6C;QAC7C,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,uBAAuB,CACvD,UAAU,EACV,UAAU,CAAC,OAAO,CACnB,CAAC;QAEF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YACpC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,QAAQ,aAAa,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,4BAA4B,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CACX,0BAA0B,EAC1B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC/C,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-conversions.d.ts","sourceRoot":"","sources":["../../src/commands/list-conversions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"list-conversions.d.ts","sourceRoot":"","sources":["../../src/commands/list-conversions.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,OAAO,EAAE,MAAmC,CAAC;AAC1D,eAAO,MAAM,IAAI,EAAE,MACoC,CAAC;AAExD,eAAO,MAAM,OAAO,GAAI,OAAO,GAAG,QAOP,CAAC;AAE5B,eAAO,MAAM,OAAO,GAAU,MAAM,GAAG,KAAG,OAAO,CAAC,IAAI,CAiDrD,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createUserClient } from "../lib/account.js";
|
|
2
2
|
import { createFXClient } from "../lib/fx-client.js";
|
|
3
|
+
import { authArguments, validateAuthArgs, getAuthOptions, } from "../lib/command-args.js";
|
|
3
4
|
export const command = "list-conversions <token>";
|
|
4
5
|
export const desc = "List all possible conversions from a specific token";
|
|
5
6
|
export const builder = (yargs) => yargs
|
|
@@ -8,25 +9,15 @@ export const builder = (yargs) => yargs
|
|
|
8
9
|
type: "string",
|
|
9
10
|
demandOption: true,
|
|
10
11
|
})
|
|
11
|
-
.options(
|
|
12
|
-
passphrase: {
|
|
13
|
-
type: "string",
|
|
14
|
-
demandOption: true,
|
|
15
|
-
describe: "User passphrase for authentication",
|
|
16
|
-
alias: "p",
|
|
17
|
-
},
|
|
18
|
-
resolver: {
|
|
19
|
-
type: "string",
|
|
20
|
-
demandOption: false,
|
|
21
|
-
describe: "Resolver account public key string (uses default if not provided)",
|
|
22
|
-
alias: "r",
|
|
23
|
-
},
|
|
24
|
-
});
|
|
12
|
+
.options(authArguments);
|
|
25
13
|
export const handler = async (argv) => {
|
|
26
14
|
try {
|
|
15
|
+
// Validate authentication arguments
|
|
16
|
+
validateAuthArgs(argv);
|
|
27
17
|
console.log(`Discovering conversions from ${argv.token}...`);
|
|
28
|
-
// Create user client from
|
|
29
|
-
const
|
|
18
|
+
// Create user client from provided credentials
|
|
19
|
+
const authOptions = getAuthOptions(argv);
|
|
20
|
+
const userClient = await createUserClient(authOptions);
|
|
30
21
|
// Create FX client
|
|
31
22
|
const fxClient = createFXClient(argv.resolver, userClient);
|
|
32
23
|
// Get token registry for ticker lookup
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-conversions.js","sourceRoot":"","sources":["../../src/commands/list-conversions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"list-conversions.js","sourceRoot":"","sources":["../../src/commands/list-conversions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-tokens.d.ts","sourceRoot":"","sources":["../../src/commands/list-tokens.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"list-tokens.d.ts","sourceRoot":"","sources":["../../src/commands/list-tokens.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,OAAO,EAAE,MAAsB,CAAC;AAC7C,eAAO,MAAM,IAAI,EAAE,MAAsD,CAAC;AAE1E,eAAO,MAAM,OAAO,GAAI,OAAO,GAAG,QAAiC,CAAC;AAEpE,eAAO,MAAM,OAAO,GAAU,MAAM,GAAG,KAAG,OAAO,CAAC,IAAI,CAkCrD,CAAC"}
|
|
@@ -1,26 +1,17 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createUserClient } from "../lib/account.js";
|
|
2
2
|
import { createFXClient } from "../lib/fx-client.js";
|
|
3
|
+
import { authArguments, validateAuthArgs, getAuthOptions, } from "../lib/command-args.js";
|
|
3
4
|
export const command = "list-tokens";
|
|
4
5
|
export const desc = "List all available tokens from the resolver";
|
|
5
|
-
export const builder = (yargs) => yargs.options(
|
|
6
|
-
passphrase: {
|
|
7
|
-
type: "string",
|
|
8
|
-
demandOption: true,
|
|
9
|
-
describe: "User passphrase for authentication",
|
|
10
|
-
alias: "p",
|
|
11
|
-
},
|
|
12
|
-
resolver: {
|
|
13
|
-
type: "string",
|
|
14
|
-
demandOption: false,
|
|
15
|
-
describe: "Resolver account public key string (uses default if not provided)",
|
|
16
|
-
alias: "r",
|
|
17
|
-
},
|
|
18
|
-
});
|
|
6
|
+
export const builder = (yargs) => yargs.options(authArguments);
|
|
19
7
|
export const handler = async (argv) => {
|
|
20
8
|
try {
|
|
9
|
+
// Validate authentication arguments
|
|
10
|
+
validateAuthArgs(argv);
|
|
21
11
|
console.log("Discovering available tokens...");
|
|
22
|
-
// Create user client from
|
|
23
|
-
const
|
|
12
|
+
// Create user client from provided credentials
|
|
13
|
+
const authOptions = getAuthOptions(argv);
|
|
14
|
+
const userClient = await createUserClient(authOptions);
|
|
24
15
|
// Create FX client
|
|
25
16
|
const fxClient = createFXClient(argv.resolver, userClient);
|
|
26
17
|
// List tokens
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-tokens.js","sourceRoot":"","sources":["../../src/commands/list-tokens.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"list-tokens.js","sourceRoot":"","sources":["../../src/commands/list-tokens.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,cAAc,GAEf,MAAM,wBAAwB,CAAC;AAIhC,MAAM,CAAC,MAAM,OAAO,GAAW,aAAa,CAAC;AAC7C,MAAM,CAAC,MAAM,IAAI,GAAW,6CAA6C,CAAC;AAE1E,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAEpE,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,IAAS,EAAiB,EAAE;IACxD,IAAI,CAAC;QACH,oCAAoC;QACpC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAEvB,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAE/C,+CAA+C;QAC/C,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAEvD,mBAAmB;QACnB,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAE3D,cAAc;QACd,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;QAE3C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,MAAM,YAAY,CAAC,CAAC;QAClD,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC9B,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,KAAK,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CACX,uBAAuB,EACvB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC/C,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"receive.d.ts","sourceRoot":"","sources":["../../src/commands/receive.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"receive.d.ts","sourceRoot":"","sources":["../../src/commands/receive.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,OAAO,EAAE,MAAkB,CAAC;AACzC,eAAO,MAAM,IAAI,EAAE,MAAsD,CAAC;AAE1E,eAAO,MAAM,OAAO,GAAI,OAAO,GAAG,QAAiC,CAAC;AAEpE,eAAO,MAAM,OAAO,GAAU,MAAM,GAAG,KAAG,OAAO,CAAC,IAAI,CA0BrD,CAAC"}
|
package/dist/commands/receive.js
CHANGED
|
@@ -1,19 +1,16 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createUserClient } from "../lib/account.js";
|
|
2
|
+
import { authArguments, validateAuthArgs, getAuthOptions, } from "../lib/command-args.js";
|
|
2
3
|
export const command = "receive";
|
|
3
4
|
export const desc = "Show your account address to receive tokens";
|
|
4
|
-
export const builder = (yargs) => yargs.options(
|
|
5
|
-
passphrase: {
|
|
6
|
-
type: "string",
|
|
7
|
-
demandOption: true,
|
|
8
|
-
describe: "User passphrase for authentication",
|
|
9
|
-
alias: "p",
|
|
10
|
-
},
|
|
11
|
-
});
|
|
5
|
+
export const builder = (yargs) => yargs.options(authArguments);
|
|
12
6
|
export const handler = async (argv) => {
|
|
13
7
|
try {
|
|
8
|
+
// Validate authentication arguments
|
|
9
|
+
validateAuthArgs(argv);
|
|
14
10
|
console.log("Getting your account address...");
|
|
15
|
-
// Create user client from
|
|
16
|
-
const
|
|
11
|
+
// Create user client from provided credentials
|
|
12
|
+
const authOptions = getAuthOptions(argv);
|
|
13
|
+
const userClient = await createUserClient(authOptions);
|
|
17
14
|
// Get the account address
|
|
18
15
|
const accountAddress = userClient.account.publicKeyString.get();
|
|
19
16
|
console.log(`\nYour account address:`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"receive.js","sourceRoot":"","sources":["../../src/commands/receive.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"receive.js","sourceRoot":"","sources":["../../src/commands/receive.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,cAAc,GAEf,MAAM,wBAAwB,CAAC;AAIhC,MAAM,CAAC,MAAM,OAAO,GAAW,SAAS,CAAC;AACzC,MAAM,CAAC,MAAM,IAAI,GAAW,6CAA6C,CAAC;AAE1E,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAEpE,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,IAAS,EAAiB,EAAE;IACxD,IAAI,CAAC;QACH,oCAAoC;QACpC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAEvB,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAE/C,+CAA+C;QAC/C,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAEvD,0BAA0B;QAC1B,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC;QAEhE,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,GAAG,cAAc,EAAE,CAAC,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;QAEvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CACX,gCAAgC,EAChC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC/C,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send.d.ts","sourceRoot":"","sources":["../../src/commands/send.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"send.d.ts","sourceRoot":"","sources":["../../src/commands/send.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,OAAO,EAAE,MAA4C,CAAC;AACnE,eAAO,MAAM,IAAI,EAAE,MAAyC,CAAC;AAE7D,eAAO,MAAM,OAAO,GAAI,OAAO,GAAG,QAiBP,CAAC;AAE5B,eAAO,MAAM,OAAO,GAAU,MAAM,GAAG,KAAG,OAAO,CAAC,IAAI,CA2DrD,CAAC"}
|
package/dist/commands/send.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createUserClient } from "../lib/account.js";
|
|
2
2
|
import { createFXClient } from "../lib/fx-client.js";
|
|
3
|
+
import { authArguments, validateAuthArgs, getAuthOptions, } from "../lib/command-args.js";
|
|
3
4
|
import * as KeetaNet from "@keetanetwork/keetanet-client";
|
|
4
5
|
export const command = "send <token> <recipient> <amount>";
|
|
5
6
|
export const desc = "Send tokens to another account";
|
|
@@ -19,25 +20,15 @@ export const builder = (yargs) => yargs
|
|
|
19
20
|
type: "string",
|
|
20
21
|
demandOption: true,
|
|
21
22
|
})
|
|
22
|
-
.options(
|
|
23
|
-
passphrase: {
|
|
24
|
-
type: "string",
|
|
25
|
-
demandOption: true,
|
|
26
|
-
describe: "User passphrase for authentication",
|
|
27
|
-
alias: "p",
|
|
28
|
-
},
|
|
29
|
-
resolver: {
|
|
30
|
-
type: "string",
|
|
31
|
-
demandOption: false,
|
|
32
|
-
describe: "Resolver account public key string (uses default if not provided)",
|
|
33
|
-
alias: "r",
|
|
34
|
-
},
|
|
35
|
-
});
|
|
23
|
+
.options(authArguments);
|
|
36
24
|
export const handler = async (argv) => {
|
|
37
25
|
try {
|
|
26
|
+
// Validate authentication arguments
|
|
27
|
+
validateAuthArgs(argv);
|
|
38
28
|
console.log(`Sending ${argv.amount} ${argv.token} to ${argv.recipient}...`);
|
|
39
|
-
// Create user client from
|
|
40
|
-
const
|
|
29
|
+
// Create user client from provided credentials
|
|
30
|
+
const authOptions = getAuthOptions(argv);
|
|
31
|
+
const userClient = await createUserClient(authOptions);
|
|
41
32
|
// Create FX client for token registry lookup
|
|
42
33
|
const fxClient = createFXClient(argv.resolver, userClient);
|
|
43
34
|
// Get token registry to resolve ticker to address if needed
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send.js","sourceRoot":"","sources":["../../src/commands/send.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"send.js","sourceRoot":"","sources":["../../src/commands/send.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,cAAc,GAEf,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAQ1D,MAAM,CAAC,MAAM,OAAO,GAAW,mCAAmC,CAAC;AACnE,MAAM,CAAC,MAAM,IAAI,GAAW,gCAAgC,CAAC;AAE7D,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAU,EAAE,EAAE,CACpC,KAAK;KACF,UAAU,CAAC,OAAO,EAAE;IACnB,QAAQ,EAAE,iCAAiC;IAC3C,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE,IAAI;CACnB,CAAC;KACD,UAAU,CAAC,WAAW,EAAE;IACvB,QAAQ,EAAE,2BAA2B;IACrC,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE,IAAI;CACnB,CAAC;KACD,UAAU,CAAC,QAAQ,EAAE;IACpB,QAAQ,EAAE,+BAA+B;IACzC,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE,IAAI;CACnB,CAAC;KACD,OAAO,CAAC,aAAa,CAAC,CAAC;AAE5B,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,IAAS,EAAiB,EAAE;IACxD,IAAI,CAAC;QACH,oCAAoC;QACpC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAEvB,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC;QAE5E,+CAA+C;QAC/C,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAEvD,6CAA6C;QAC7C,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAE3D,4DAA4D;QAC5D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC3C,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACtE,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAExE,4CAA4C;QAC5C,IAAI,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC;QAC9B,IAAI,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC;QAE9B,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,wCAAwC;YACxC,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAE,CAAC;YAC5C,YAAY,GAAG,GAAG,IAAI,CAAC,KAAK,KAAK,YAAY,GAAG,CAAC;QACnD,CAAC;aAAM,IAAI,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACzC,uDAAuD;YACvD,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7C,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC;QACvE,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,aAAa,YAAY,EAAE,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAE/C,2BAA2B;QAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEnC,kCAAkC;QAClC,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAC/D,IAAI,CAAC,SAAS,CACf,CAAC;QAEF,uBAAuB;QACvB,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,MAAM,UAAU,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QAE9D,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAEhD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CACX,uBAAuB,EACvB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC/C,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../../src/commands/swap.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../../src/commands/swap.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,OAAO,EAAE,MAAe,CAAC;AACtC,eAAO,MAAM,IAAI,EAAE,MAA+B,CAAC;AAEnD,eAAO,MAAM,OAAO,GAAI,OAAO,GAAG,QA4B9B,CAAC;AAEL,eAAO,MAAM,OAAO,GAAU,MAAM,GAAG,KAAG,OAAO,CAAC,IAAI,CA4CrD,CAAC"}
|
package/dist/commands/swap.js
CHANGED
|
@@ -1,20 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createUserClient } from "../lib/account.js";
|
|
2
2
|
import { createFXClient } from "../lib/fx-client.js";
|
|
3
|
+
import { authArguments, validateAuthArgs, getAuthOptions, } from "../lib/command-args.js";
|
|
3
4
|
export const command = "swap";
|
|
4
5
|
export const desc = "Execute a token swap";
|
|
5
6
|
export const builder = (yargs) => yargs.options({
|
|
6
|
-
|
|
7
|
-
type: "string",
|
|
8
|
-
demandOption: true,
|
|
9
|
-
describe: "User passphrase for authentication",
|
|
10
|
-
alias: "p",
|
|
11
|
-
},
|
|
12
|
-
resolver: {
|
|
13
|
-
type: "string",
|
|
14
|
-
demandOption: false,
|
|
15
|
-
describe: "Resolver account public key string (uses default if not provided)",
|
|
16
|
-
alias: "r",
|
|
17
|
-
},
|
|
7
|
+
...authArguments,
|
|
18
8
|
from: {
|
|
19
9
|
type: "string",
|
|
20
10
|
demandOption: true,
|
|
@@ -37,18 +27,21 @@ export const builder = (yargs) => yargs.options({
|
|
|
37
27
|
type: "string",
|
|
38
28
|
choices: ["from", "to"],
|
|
39
29
|
default: "from",
|
|
40
|
-
describe: "
|
|
30
|
+
describe: "Which token the amount refers to ('from' or 'to'). Default is 'from'",
|
|
41
31
|
},
|
|
42
32
|
});
|
|
43
33
|
export const handler = async (argv) => {
|
|
44
34
|
try {
|
|
35
|
+
// Validate authentication arguments
|
|
36
|
+
validateAuthArgs(argv);
|
|
45
37
|
console.log(`Preparing to swap ${argv.amount} ${argv.affinity === "from" ? argv.from : argv.to}...`);
|
|
46
38
|
console.log(` From: ${argv.from}`);
|
|
47
39
|
console.log(` To: ${argv.to}`);
|
|
48
40
|
console.log(` Amount: ${argv.amount} (${argv.affinity} token units)`);
|
|
49
|
-
// Create user client from
|
|
41
|
+
// Create user client from provided credentials
|
|
50
42
|
console.log("\nAuthenticating...");
|
|
51
|
-
const
|
|
43
|
+
const authOptions = getAuthOptions(argv);
|
|
44
|
+
const userClient = await createUserClient(authOptions);
|
|
52
45
|
console.log(" User authenticated");
|
|
53
46
|
// Create FX client
|
|
54
47
|
console.log("Connecting to FX service...");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swap.js","sourceRoot":"","sources":["../../src/commands/swap.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"swap.js","sourceRoot":"","sources":["../../src/commands/swap.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -31,12 +31,12 @@ async function main() {
|
|
|
31
31
|
.command(receive);
|
|
32
32
|
// Add examples
|
|
33
33
|
cli
|
|
34
|
-
.example('$0 list-tokens -p "my passphrase"', "List all available tokens (
|
|
35
|
-
.example('$0 list-tokens -
|
|
36
|
-
.example('$0 list-
|
|
37
|
-
.example('$0 swap -p "my passphrase" -f "
|
|
38
|
-
.example('$0 faucet -p "my passphrase"', "Request test tokens from faucet")
|
|
39
|
-
.example('$0 balance -
|
|
34
|
+
.example('$0 list-tokens -p "my passphrase"', "List all available tokens with passphrase (test network)")
|
|
35
|
+
.example('$0 list-tokens -s "my-seed-string" --network main', "List tokens with seed on main network")
|
|
36
|
+
.example('$0 list-tokens -p "my passphrase" -o 5 -n staging', "List tokens with passphrase, offset 5, staging network")
|
|
37
|
+
.example('$0 swap -p "my passphrase" -f "TOKEN_A" -t "TOKEN_B" -a "1000"', "Swap 1000 TOKEN_A to TOKEN_B")
|
|
38
|
+
.example('$0 faucet -p "my passphrase"', "Request test tokens from faucet (test network only)")
|
|
39
|
+
.example('$0 balance -s "seed" -o 3 --network main', "Show balances using seed with offset 3 on main network")
|
|
40
40
|
.example('$0 send USDC recipient_address 1000 -p "my passphrase"', "Send 1000 USDC tokens to recipient")
|
|
41
41
|
.example('$0 receive -p "my passphrase"', "Show your account address to receive tokens");
|
|
42
42
|
// Parse and execute
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,kBAAkB;AAClB,OAAO,KAAK,UAAU,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,eAAe,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,sBAAsB,CAAC;AAC/C,OAAO,KAAK,OAAO,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,uBAAuB,CAAC;AAEjD,KAAK,UAAU,IAAI;IACjB,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACrC,UAAU,CAAC,QAAQ,CAAC;SACpB,KAAK,CAAC,wBAAwB,CAAC;SAC/B,OAAO,CAAC,OAAO,CAAC;SAChB,IAAI,CAAC,GAAG,CAAC;SACT,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC;SAClB,aAAa,CAAC,CAAC,EAAE,4BAA4B,CAAC;SAC9C,MAAM,EAAE;SACR,GAAG,CAAC,QAAQ,CAAC;SACb,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IAErD,oBAAoB;IACpB,GAAG;SACA,OAAO,CAAC,UAAU,CAAC;SACnB,OAAO,CAAC,eAAe,CAAC;SACxB,OAAO,CAAC,IAAI,CAAC;SACb,OAAO,CAAC,MAAM,CAAC;SACf,OAAO,CAAC,OAAO,CAAC;SAChB,OAAO,CAAC,IAAI,CAAC;SACb,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpB,eAAe;IACf,GAAG;SACA,OAAO,CACN,mCAAmC,EACnC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,kBAAkB;AAClB,OAAO,KAAK,UAAU,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,eAAe,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,sBAAsB,CAAC;AAC/C,OAAO,KAAK,OAAO,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,uBAAuB,CAAC;AAEjD,KAAK,UAAU,IAAI;IACjB,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACrC,UAAU,CAAC,QAAQ,CAAC;SACpB,KAAK,CAAC,wBAAwB,CAAC;SAC/B,OAAO,CAAC,OAAO,CAAC;SAChB,IAAI,CAAC,GAAG,CAAC;SACT,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC;SAClB,aAAa,CAAC,CAAC,EAAE,4BAA4B,CAAC;SAC9C,MAAM,EAAE;SACR,GAAG,CAAC,QAAQ,CAAC;SACb,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IAErD,oBAAoB;IACpB,GAAG;SACA,OAAO,CAAC,UAAU,CAAC;SACnB,OAAO,CAAC,eAAe,CAAC;SACxB,OAAO,CAAC,IAAI,CAAC;SACb,OAAO,CAAC,MAAM,CAAC;SACf,OAAO,CAAC,OAAO,CAAC;SAChB,OAAO,CAAC,IAAI,CAAC;SACb,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpB,eAAe;IACf,GAAG;SACA,OAAO,CACN,mCAAmC,EACnC,0DAA0D,CAC3D;SACA,OAAO,CACN,mDAAmD,EACnD,uCAAuC,CACxC;SACA,OAAO,CACN,mDAAmD,EACnD,wDAAwD,CACzD;SACA,OAAO,CACN,gEAAgE,EAChE,8BAA8B,CAC/B;SACA,OAAO,CACN,8BAA8B,EAC9B,qDAAqD,CACtD;SACA,OAAO,CACN,0CAA0C,EAC1C,wDAAwD,CACzD;SACA,OAAO,CACN,wDAAwD,EACxD,oCAAoC,CACrC;SACA,OAAO,CACN,+BAA+B,EAC/B,6CAA6C,CAC9C,CAAC;IAEJ,oBAAoB;IACpB,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;AACpB,CAAC;AAED,sCAAsC;AACtC,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;IACnD,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC5E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,6BAA6B;AAC7B,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,KAAK,EAAE,EAAE;IACxC,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;IACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,cAAc;AACd,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;IAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
package/dist/lib/account.d.ts
CHANGED
|
@@ -1,8 +1,19 @@
|
|
|
1
1
|
import * as KeetaNet from "@keetanetwork/keetanet-client";
|
|
2
|
+
export type NetworkType = "test" | "main" | "staging" | "dev";
|
|
3
|
+
export interface AccountOptions {
|
|
4
|
+
passphrase?: string;
|
|
5
|
+
seed?: string;
|
|
6
|
+
offset?: number;
|
|
7
|
+
network?: NetworkType;
|
|
8
|
+
}
|
|
2
9
|
/**
|
|
3
|
-
* Create a user client from passphrase and network
|
|
10
|
+
* Create a user client from passphrase or seed with optional offset and network
|
|
4
11
|
*/
|
|
5
|
-
export declare function
|
|
12
|
+
export declare function createUserClient(options: AccountOptions): Promise<KeetaNet.UserClient>;
|
|
13
|
+
/**
|
|
14
|
+
* Create a user client from passphrase and network (legacy function for backward compatibility)
|
|
15
|
+
*/
|
|
16
|
+
export declare function createUserClientFromPassphrase(passphrase: string, network?: NetworkType, offset?: number): Promise<KeetaNet.UserClient>;
|
|
6
17
|
/**
|
|
7
18
|
* Create an account from a public key string (for resolver accounts)
|
|
8
19
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../../src/lib/account.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAE1D;;GAEG;AACH,wBAAsB,8BAA8B,CAClD,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,
|
|
1
|
+
{"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../../src/lib/account.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAE1D,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,KAAK,CAAC;AAE9D,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,WAAW,CAAC;CACvB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAyB9B;AAED;;GAEG;AACH,wBAAsB,8BAA8B,CAClD,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,WAAoB,EAC7B,MAAM,GAAE,MAAU,GACjB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAE9B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,eAAe,EAAE,MAAM,GAAG,GAAG,CAEvE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM,CAEtD"}
|
package/dist/lib/account.js
CHANGED
|
@@ -1,12 +1,31 @@
|
|
|
1
1
|
import * as KeetaNet from "@keetanetwork/keetanet-client";
|
|
2
2
|
/**
|
|
3
|
-
* Create a user client from passphrase and network
|
|
3
|
+
* Create a user client from passphrase or seed with optional offset and network
|
|
4
4
|
*/
|
|
5
|
-
export async function
|
|
6
|
-
const seed =
|
|
7
|
-
|
|
5
|
+
export async function createUserClient(options) {
|
|
6
|
+
const { passphrase, seed: providedSeed, offset = 0, network = "test", } = options;
|
|
7
|
+
if (!passphrase && !providedSeed) {
|
|
8
|
+
throw new Error("Either passphrase or seed must be provided");
|
|
9
|
+
}
|
|
10
|
+
if (passphrase && providedSeed) {
|
|
11
|
+
throw new Error("Cannot provide both passphrase and seed - choose one");
|
|
12
|
+
}
|
|
13
|
+
let seed;
|
|
14
|
+
if (passphrase) {
|
|
15
|
+
seed = await KeetaNet.lib.Account.seedFromPassphrase(passphrase);
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
seed = providedSeed;
|
|
19
|
+
}
|
|
20
|
+
const account = KeetaNet.lib.Account.fromSeed(seed, offset);
|
|
8
21
|
return KeetaNet.UserClient.fromNetwork(network, account);
|
|
9
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* Create a user client from passphrase and network (legacy function for backward compatibility)
|
|
25
|
+
*/
|
|
26
|
+
export async function createUserClientFromPassphrase(passphrase, network = "test", offset = 0) {
|
|
27
|
+
return createUserClient({ passphrase, network, offset });
|
|
28
|
+
}
|
|
10
29
|
/**
|
|
11
30
|
* Create an account from a public key string (for resolver accounts)
|
|
12
31
|
*/
|
package/dist/lib/account.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.js","sourceRoot":"","sources":["../../src/lib/account.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"account.js","sourceRoot":"","sources":["../../src/lib/account.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAW1D;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAuB;IAEvB,MAAM,EACJ,UAAU,EACV,IAAI,EAAE,YAAY,EAClB,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,MAAqB,GAChC,GAAG,OAAO,CAAC;IAEZ,IAAI,CAAC,UAAU,IAAI,CAAC,YAAY,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,UAAU,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,IAAS,CAAC;IACd,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACnE,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,YAAa,CAAC;IACvB,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC5D,OAAO,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,UAAkB,EAClB,UAAuB,MAAM,EAC7B,SAAiB,CAAC;IAElB,OAAO,gBAAgB,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B,CAAC,eAAuB;IAChE,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAC;AACnE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAY;IAC5C,OAAO,OAAO,CAAC,OAAO,CAAC;AACzB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Options } from "yargs";
|
|
2
|
+
import { NetworkType } from "./account.js";
|
|
3
|
+
export interface AuthOptions {
|
|
4
|
+
passphrase?: string;
|
|
5
|
+
seed?: string;
|
|
6
|
+
offset?: number;
|
|
7
|
+
network?: NetworkType;
|
|
8
|
+
resolver?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare const authArguments: Record<string, Options>;
|
|
11
|
+
export declare function validateAuthArgs(argv: AuthOptions): void;
|
|
12
|
+
export declare function getAuthOptions(argv: AuthOptions): {
|
|
13
|
+
passphrase: string | undefined;
|
|
14
|
+
seed: string | undefined;
|
|
15
|
+
offset: number;
|
|
16
|
+
network: NetworkType;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=command-args.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-args.d.ts","sourceRoot":"","sources":["../../src/lib/command-args.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,WAAW,WAAW;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CA6BjD,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAQxD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW;;;;;EAO/C"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
export const authArguments = {
|
|
2
|
+
passphrase: {
|
|
3
|
+
type: "string",
|
|
4
|
+
describe: "User passphrase for authentication (mutually exclusive with seed)",
|
|
5
|
+
alias: "p",
|
|
6
|
+
},
|
|
7
|
+
seed: {
|
|
8
|
+
type: "string",
|
|
9
|
+
describe: "User seed for authentication (mutually exclusive with passphrase)",
|
|
10
|
+
alias: "s",
|
|
11
|
+
},
|
|
12
|
+
offset: {
|
|
13
|
+
type: "number",
|
|
14
|
+
describe: "Account offset/index for seed derivation",
|
|
15
|
+
alias: "o",
|
|
16
|
+
default: 0,
|
|
17
|
+
},
|
|
18
|
+
network: {
|
|
19
|
+
type: "string",
|
|
20
|
+
describe: "Network to connect to",
|
|
21
|
+
alias: "n",
|
|
22
|
+
choices: ["test", "main", "staging", "dev"],
|
|
23
|
+
default: "test",
|
|
24
|
+
},
|
|
25
|
+
resolver: {
|
|
26
|
+
type: "string",
|
|
27
|
+
describe: "Resolver account public key string (uses default if not provided)",
|
|
28
|
+
alias: "r",
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
export function validateAuthArgs(argv) {
|
|
32
|
+
if (!argv.passphrase && !argv.seed) {
|
|
33
|
+
throw new Error("Either --passphrase or --seed must be provided");
|
|
34
|
+
}
|
|
35
|
+
if (argv.passphrase && argv.seed) {
|
|
36
|
+
throw new Error("Cannot provide both --passphrase and --seed - choose one");
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
export function getAuthOptions(argv) {
|
|
40
|
+
return {
|
|
41
|
+
passphrase: argv.passphrase,
|
|
42
|
+
seed: argv.seed,
|
|
43
|
+
offset: argv.offset || 0,
|
|
44
|
+
network: argv.network || "test",
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=command-args.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-args.js","sourceRoot":"","sources":["../../src/lib/command-args.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,MAAM,aAAa,GAA4B;IACpD,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,mEAAmE;QAC7E,KAAK,EAAE,GAAG;KACX;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,mEAAmE;QAC7E,KAAK,EAAE,GAAG;KACX;IACD,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,0CAA0C;QACpD,KAAK,EAAE,GAAG;QACV,OAAO,EAAE,CAAC;KACX;IACD,OAAO,EAAE;QACP,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,uBAAuB;QACjC,KAAK,EAAE,GAAG;QACV,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAU;QACpD,OAAO,EAAE,MAAqB;KAC/B;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,mEAAmE;QAC7E,KAAK,EAAE,GAAG;KACX;CACF,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,IAAiB;IAChD,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAiB;IAC9C,OAAO;QACL,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,CAAC;QACxB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,MAAqB;KAC/C,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED