@agoric/orchestration 0.1.1-dev-d756c83.0.d756c83 → 0.1.1-dev-e9efaa1.0.e9efaa1
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/package.json +18 -18
- package/src/cosmos-api.js +585 -0
- package/src/{ethereum-api.ts → ethereum-api.js} +1 -1
- package/src/exos/exo-interfaces.js +35 -0
- package/src/orchestration-api.js +405 -0
- package/src/types.js +27 -0
- package/src/utils/abitype.js +13 -0
- package/src/utils/permit2/{signatureTransfer.ts → signatureTransfer.js} +109 -109
- package/src/utils/permit2/{signatureTransferHelpers.ts → signatureTransferHelpers.js} +81 -81
- package/src/utils/viem-utils/{hashTypedData.ts → hashTypedData.js} +15 -15
- package/src/utils/viem-utils/types.js +18 -0
- package/src/cosmos-api.ts +0 -585
- package/src/exos/exo-interfaces.ts +0 -35
- package/src/orchestration-api.ts +0 -405
- package/src/types.ts +0 -27
- package/src/utils/abitype.ts +0 -13
- package/src/utils/viem-utils/types.ts +0 -18
- /package/src/stubs/{viem-abi.ts → viem-abi.js} +0 -0
- /package/src/stubs/{viem-typedData.ts → viem-typedData.js} +0 -0
- /package/src/utils/{permit2.ts → permit2.js} +0 -0
- /package/src/utils/{viem.ts → viem.js} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agoric/orchestration",
|
|
3
|
-
"version": "0.1.1-dev-
|
|
3
|
+
"version": "0.1.1-dev-e9efaa1.0.e9efaa1",
|
|
4
4
|
"description": "Chain abstraction for Agoric's orchestration clients",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "index.js",
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
"codegen:viem-abi": "tsup",
|
|
14
14
|
"build": "yarn esbuild:axelar",
|
|
15
15
|
"codegen": "scripts/fetch-chain-info.ts",
|
|
16
|
-
"prepack": "yarn run -T
|
|
17
|
-
"postpack": "
|
|
16
|
+
"prepack": "yarn run -T prepack-package",
|
|
17
|
+
"postpack": "yarn run -T postpack-package",
|
|
18
18
|
"test": "ava",
|
|
19
19
|
"test:c8": "c8 --all ${C8_OPTIONS:-} ava",
|
|
20
20
|
"test:xs": "exit 0",
|
|
@@ -35,19 +35,19 @@
|
|
|
35
35
|
},
|
|
36
36
|
"homepage": "https://github.com/Agoric/agoric-sdk#readme",
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@agoric/async-flow": "0.1.1-dev-
|
|
39
|
-
"@agoric/cosmic-proto": "0.4.1-dev-
|
|
40
|
-
"@agoric/ertp": "0.16.3-dev-
|
|
41
|
-
"@agoric/internal": "0.3.3-dev-
|
|
42
|
-
"@agoric/network": "0.1.1-dev-
|
|
43
|
-
"@agoric/notifier": "0.6.3-dev-
|
|
44
|
-
"@agoric/store": "0.9.3-dev-
|
|
45
|
-
"@agoric/time": "0.3.3-dev-
|
|
46
|
-
"@agoric/vat-data": "0.5.3-dev-
|
|
47
|
-
"@agoric/vats": "0.15.2-dev-
|
|
48
|
-
"@agoric/vow": "0.1.1-dev-
|
|
49
|
-
"@agoric/zoe": "0.26.3-dev-
|
|
50
|
-
"@agoric/zone": "0.2.3-dev-
|
|
38
|
+
"@agoric/async-flow": "0.1.1-dev-e9efaa1.0.e9efaa1",
|
|
39
|
+
"@agoric/cosmic-proto": "0.4.1-dev-e9efaa1.0.e9efaa1",
|
|
40
|
+
"@agoric/ertp": "0.16.3-dev-e9efaa1.0.e9efaa1",
|
|
41
|
+
"@agoric/internal": "0.3.3-dev-e9efaa1.0.e9efaa1",
|
|
42
|
+
"@agoric/network": "0.1.1-dev-e9efaa1.0.e9efaa1",
|
|
43
|
+
"@agoric/notifier": "0.6.3-dev-e9efaa1.0.e9efaa1",
|
|
44
|
+
"@agoric/store": "0.9.3-dev-e9efaa1.0.e9efaa1",
|
|
45
|
+
"@agoric/time": "0.3.3-dev-e9efaa1.0.e9efaa1",
|
|
46
|
+
"@agoric/vat-data": "0.5.3-dev-e9efaa1.0.e9efaa1",
|
|
47
|
+
"@agoric/vats": "0.15.2-dev-e9efaa1.0.e9efaa1",
|
|
48
|
+
"@agoric/vow": "0.1.1-dev-e9efaa1.0.e9efaa1",
|
|
49
|
+
"@agoric/zoe": "0.26.3-dev-e9efaa1.0.e9efaa1",
|
|
50
|
+
"@agoric/zone": "0.2.3-dev-e9efaa1.0.e9efaa1",
|
|
51
51
|
"@cosmjs/encoding": "^0.36.0",
|
|
52
52
|
"@endo/base64": "^1.0.12",
|
|
53
53
|
"@endo/errors": "^1.2.13",
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
"bs58": "^6.0.0"
|
|
61
61
|
},
|
|
62
62
|
"devDependencies": {
|
|
63
|
-
"@agoric/swingset-liveslots": "0.10.3-dev-
|
|
63
|
+
"@agoric/swingset-liveslots": "0.10.3-dev-e9efaa1.0.e9efaa1",
|
|
64
64
|
"@chain-registry/client": "^1.53.194",
|
|
65
65
|
"@cosmjs/amino": "^0.36.0",
|
|
66
66
|
"@cosmjs/proto-signing": "^0.36.0",
|
|
@@ -106,5 +106,5 @@
|
|
|
106
106
|
"typeCoverage": {
|
|
107
107
|
"atLeast": 97.63
|
|
108
108
|
},
|
|
109
|
-
"gitHead": "
|
|
109
|
+
"gitHead": "e9efaa12254f2c9a6faffc40ade2f1d9a70b87ae"
|
|
110
110
|
}
|
|
@@ -0,0 +1,585 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-unused-vars -- fails to notice the @see uses */
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Record of Network API traffic for a specific data packet sent between two
|
|
59
|
+
* chains.
|
|
60
|
+
*/
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* The type of the `executeEncodedTx` options parameter on the underlying ICA.
|
|
85
|
+
*/
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* @example
|
|
95
|
+
*
|
|
96
|
+
* agoric1megzytg65cyrgzs6fvzxgrcqvwwl7ugpt62346
|
|
97
|
+
* cosmosvaloper1npm9gvss52mlmk
|
|
98
|
+
*/
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
/** An address for a validator on some blockchain, e.g., cosmos, eth, etc. */
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
/** Represents an IBC Connection between two chains, which can contain multiple Channels. */
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* https://github.com/cosmos/chain-registry/blob/master/assetlist.schema.json
|
|
130
|
+
*/
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
/**
|
|
152
|
+
* Info for a Cosmos-based chain.
|
|
153
|
+
*/
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
// #region Orchestration views on Cosmos response types
|
|
182
|
+
// Naming scheme: Cosmos for the chain system, Rewards b/c getRewards function,
|
|
183
|
+
// and Response because it's the return value.
|
|
184
|
+
|
|
185
|
+
/** @see {QueryDelegationTotalRewardsResponse} */
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
/** @see {DelegationResponse} */
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
// #endregion
|
|
198
|
+
|
|
199
|
+
/**
|
|
200
|
+
* Queries for the staking properties of an account.
|
|
201
|
+
*
|
|
202
|
+
* @see {@link https://docs.cosmos.network/main/build/modules/staking#messages x/staking messages}
|
|
203
|
+
* {@link https://cosmos.github.io/cosmjs/latest/stargate/interfaces/StakingExtension.html StakingExtension} in cosmjs
|
|
204
|
+
*/
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
|
|
254
|
+
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
/**
|
|
258
|
+
* Transactions for doing staking operations on an individual account.
|
|
259
|
+
*
|
|
260
|
+
* @see {@link https://docs.cosmos.network/main/build/modules/staking#messages x/staking messages} and
|
|
261
|
+
* {@link https://cosmos.github.io/cosmjs/latest/stargate/interfaces/StakingExtension.html StakingExtension} in cosmjs
|
|
262
|
+
*/
|
|
263
|
+
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
|
|
270
|
+
|
|
271
|
+
|
|
272
|
+
|
|
273
|
+
|
|
274
|
+
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
|
|
278
|
+
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
|
|
286
|
+
|
|
287
|
+
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
|
|
294
|
+
|
|
295
|
+
|
|
296
|
+
|
|
297
|
+
|
|
298
|
+
|
|
299
|
+
|
|
300
|
+
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
|
|
304
|
+
|
|
305
|
+
|
|
306
|
+
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
|
|
316
|
+
|
|
317
|
+
|
|
318
|
+
|
|
319
|
+
|
|
320
|
+
|
|
321
|
+
|
|
322
|
+
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
|
|
326
|
+
|
|
327
|
+
|
|
328
|
+
/**
|
|
329
|
+
* Low level methods from IcaAccount that we pass through to CosmosOrchestrationAccount
|
|
330
|
+
*/
|
|
331
|
+
|
|
332
|
+
|
|
333
|
+
|
|
334
|
+
|
|
335
|
+
|
|
336
|
+
|
|
337
|
+
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
|
|
342
|
+
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+
|
|
347
|
+
|
|
348
|
+
|
|
349
|
+
|
|
350
|
+
|
|
351
|
+
|
|
352
|
+
|
|
353
|
+
|
|
354
|
+
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
|
|
363
|
+
|
|
364
|
+
/**
|
|
365
|
+
* Low level object that supports queries and operations for an account on a remote chain.
|
|
366
|
+
*/
|
|
367
|
+
|
|
368
|
+
|
|
369
|
+
|
|
370
|
+
|
|
371
|
+
|
|
372
|
+
|
|
373
|
+
|
|
374
|
+
|
|
375
|
+
|
|
376
|
+
|
|
377
|
+
|
|
378
|
+
|
|
379
|
+
|
|
380
|
+
|
|
381
|
+
|
|
382
|
+
|
|
383
|
+
|
|
384
|
+
|
|
385
|
+
|
|
386
|
+
|
|
387
|
+
/**
|
|
388
|
+
* ICA-related account methods exposed on the Cosmos Orchestration Account
|
|
389
|
+
* holder facet.
|
|
390
|
+
*/
|
|
391
|
+
|
|
392
|
+
|
|
393
|
+
|
|
394
|
+
|
|
395
|
+
|
|
396
|
+
|
|
397
|
+
|
|
398
|
+
|
|
399
|
+
|
|
400
|
+
|
|
401
|
+
|
|
402
|
+
|
|
403
|
+
|
|
404
|
+
|
|
405
|
+
|
|
406
|
+
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
|
|
411
|
+
|
|
412
|
+
|
|
413
|
+
|
|
414
|
+
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
|
|
421
|
+
|
|
422
|
+
|
|
423
|
+
|
|
424
|
+
|
|
425
|
+
|
|
426
|
+
|
|
427
|
+
|
|
428
|
+
|
|
429
|
+
|
|
430
|
+
/** Methods on chains that support Liquid Staking */
|
|
431
|
+
|
|
432
|
+
|
|
433
|
+
|
|
434
|
+
|
|
435
|
+
|
|
436
|
+
|
|
437
|
+
|
|
438
|
+
/**
|
|
439
|
+
* Noble is the gateway to transferring USDC among Cosmos chains. We can
|
|
440
|
+
* transfer funds from any cosmos account using depositForBurn().
|
|
441
|
+
*/
|
|
442
|
+
|
|
443
|
+
|
|
444
|
+
|
|
445
|
+
|
|
446
|
+
|
|
447
|
+
|
|
448
|
+
|
|
449
|
+
|
|
450
|
+
|
|
451
|
+
|
|
452
|
+
|
|
453
|
+
// TODO support StakingAccountQueries
|
|
454
|
+
/** Methods supported only on Agoric chain accounts */
|
|
455
|
+
|
|
456
|
+
|
|
457
|
+
|
|
458
|
+
|
|
459
|
+
|
|
460
|
+
|
|
461
|
+
|
|
462
|
+
|
|
463
|
+
|
|
464
|
+
|
|
465
|
+
|
|
466
|
+
|
|
467
|
+
|
|
468
|
+
|
|
469
|
+
|
|
470
|
+
|
|
471
|
+
|
|
472
|
+
|
|
473
|
+
|
|
474
|
+
|
|
475
|
+
|
|
476
|
+
|
|
477
|
+
|
|
478
|
+
|
|
479
|
+
|
|
480
|
+
|
|
481
|
+
|
|
482
|
+
|
|
483
|
+
|
|
484
|
+
|
|
485
|
+
|
|
486
|
+
|
|
487
|
+
/**
|
|
488
|
+
* Options for {@link OrchestrationAccountI} `transfer` method.
|
|
489
|
+
*
|
|
490
|
+
* If specifying a custom timeout, use one of `timeoutHeight`, `timeoutTimestamp`, or `timeoutRelativeSeconds`.
|
|
491
|
+
*
|
|
492
|
+
* @see {@link https://github.com/cosmos/ibc/tree/master/spec/app/ics-020-fungible-token-transfer#data-structures ICS 20 Data Structures}
|
|
493
|
+
*/
|
|
494
|
+
|
|
495
|
+
|
|
496
|
+
|
|
497
|
+
|
|
498
|
+
|
|
499
|
+
|
|
500
|
+
|
|
501
|
+
|
|
502
|
+
|
|
503
|
+
|
|
504
|
+
|
|
505
|
+
|
|
506
|
+
|
|
507
|
+
|
|
508
|
+
/**
|
|
509
|
+
* Cosmos-specific methods to extend `OrchestrationAccountI`, parameterized
|
|
510
|
+
* by `CosmosChainInfo`.
|
|
511
|
+
*
|
|
512
|
+
* In particular, if the chain info includes a staking token, {@link StakingAccountActions}
|
|
513
|
+
* are available.
|
|
514
|
+
*
|
|
515
|
+
* @see {OrchestrationAccountI}
|
|
516
|
+
*/
|
|
517
|
+
|
|
518
|
+
|
|
519
|
+
|
|
520
|
+
|
|
521
|
+
|
|
522
|
+
|
|
523
|
+
|
|
524
|
+
|
|
525
|
+
|
|
526
|
+
|
|
527
|
+
|
|
528
|
+
|
|
529
|
+
/**
|
|
530
|
+
* Message structure for PFM memo
|
|
531
|
+
*
|
|
532
|
+
* @see {@link https://github.com/cosmos/chain-registry/blob/58b603bbe01f70e911e3ad2bdb6b90c4ca665735/_memo_keys/ICS20_memo_keys.json#L38-L60}
|
|
533
|
+
*/
|
|
534
|
+
|
|
535
|
+
|
|
536
|
+
|
|
537
|
+
|
|
538
|
+
|
|
539
|
+
|
|
540
|
+
|
|
541
|
+
|
|
542
|
+
|
|
543
|
+
|
|
544
|
+
|
|
545
|
+
|
|
546
|
+
|
|
547
|
+
|
|
548
|
+
|
|
549
|
+
/**
|
|
550
|
+
* Object used to help build MsgTransfer parameters for IBC transfers.
|
|
551
|
+
*
|
|
552
|
+
* If `forwardInfo` is present:
|
|
553
|
+
* - it must be stringified and provided as the `memo` field value for
|
|
554
|
+
* use with `MsgTransfer`.
|
|
555
|
+
* - `receiver` will be set to `"pfm"` - purposely invalid bech32. see {@link https://github.com/cosmos/ibc-apps/blob/26f3ad8f58e4ffc7769c6766cb42b954181dc100/middleware/packet-forward-middleware/README.md#minimal-example---chain-forward-a-b-c}
|
|
556
|
+
*/
|
|
557
|
+
|
|
558
|
+
|
|
559
|
+
|
|
560
|
+
|
|
561
|
+
|
|
562
|
+
|
|
563
|
+
|
|
564
|
+
|
|
565
|
+
|
|
566
|
+
|
|
567
|
+
|
|
568
|
+
|
|
569
|
+
|
|
570
|
+
|
|
571
|
+
|
|
572
|
+
|
|
573
|
+
|
|
574
|
+
/** Single units allowed in Go time duration strings */
|
|
575
|
+
|
|
576
|
+
|
|
577
|
+
/**
|
|
578
|
+
* Type for a time duration string in Go (cosmos-sdk). For example, "1h", "3m".
|
|
579
|
+
*
|
|
580
|
+
* Note: this does not support composite values like "1h30m", "1m30s",
|
|
581
|
+
* which are allowed in Go.
|
|
582
|
+
*
|
|
583
|
+
* @see https://pkg.go.dev/time#ParseDuration
|
|
584
|
+
*/
|
|
585
|
+
|