@agoric/orchestration 0.1.1-dev-19f1d8d.0 → 0.1.1-dev-be74a2b.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/package.json +2 -2
- package/src/examples/swap-anything.contract.d.ts +2 -2
- package/src/examples/swap-anything.flows.d.ts +1 -1
- package/src/examples/swap-anything.flows.d.ts.map +1 -1
- package/src/examples/swap-anything.flows.js +1 -1
- package/src/exos/ibc-packet.d.ts.map +1 -1
- package/src/exos/ibc-packet.js +19 -2
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-be74a2b.0+be74a2b",
|
|
4
4
|
"description": "Chain abstraction for Agoric's orchestration clients",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "index.js",
|
|
@@ -100,5 +100,5 @@
|
|
|
100
100
|
"typeCoverage": {
|
|
101
101
|
"atLeast": 97.7
|
|
102
102
|
},
|
|
103
|
-
"gitHead": "
|
|
103
|
+
"gitHead": "be74a2bc3be6c03203f4fe76e9e287f49271ef76"
|
|
104
104
|
}
|
|
@@ -14,7 +14,7 @@ export function contract(zcf: ZCF, privateArgs: OrchestrationPowers & {
|
|
|
14
14
|
storageNode: Remote<StorageNode>;
|
|
15
15
|
}, zone: Zone, { chainHub, orchestrate, vowTools, zoeTools }: OrchestrationTools): Promise<{
|
|
16
16
|
publicFacet: import("@endo/exo").Guarded<{
|
|
17
|
-
makeSwapInvitation(): Promise<globalThis.Invitation<Vow<
|
|
17
|
+
makeSwapInvitation(): Promise<globalThis.Invitation<Vow<string>, import("./swap-anything.flows.js").SwapInfo>>;
|
|
18
18
|
}>;
|
|
19
19
|
creatorFacet: import("@endo/exo").Guarded<{
|
|
20
20
|
registerChain(chainName: string, chainInfo: import("@agoric/orchestration").ChainInfo, ibcConnectionInfo?: import("@agoric/orchestration").IBCConnectionInfo): Promise<void>;
|
|
@@ -30,7 +30,7 @@ export const start: (zcf: globalThis.ZCF<Record<string, unknown>>, privateArgs:
|
|
|
30
30
|
storageNode: Remote<StorageNode>;
|
|
31
31
|
}, baggage: Baggage) => Promise<{
|
|
32
32
|
publicFacet: import("@endo/exo").Guarded<{
|
|
33
|
-
makeSwapInvitation(): Promise<globalThis.Invitation<Vow<
|
|
33
|
+
makeSwapInvitation(): Promise<globalThis.Invitation<Vow<string>, import("./swap-anything.flows.js").SwapInfo>>;
|
|
34
34
|
}>;
|
|
35
35
|
creatorFacet: import("@endo/exo").Guarded<{
|
|
36
36
|
registerChain(chainName: string, chainInfo: import("@agoric/orchestration").ChainInfo, ibcConnectionInfo?: import("@agoric/orchestration").IBCConnectionInfo): Promise<void>;
|
|
@@ -3,7 +3,7 @@ export function swapIt(orch: Orchestrator, { chainHub, sharedLocalAccountP, log,
|
|
|
3
3
|
sharedLocalAccountP: Promise<GuestInterface<LocalOrchestrationAccountKit["holder"]>>;
|
|
4
4
|
zoeTools: GuestInterface<ZoeTools>;
|
|
5
5
|
log: GuestOf<(msg: string, level?: string) => Vow<void>>;
|
|
6
|
-
}, seat: ZCFSeat, offerArgs: SwapInfo): Promise<
|
|
6
|
+
}, seat: ZCFSeat, offerArgs: SwapInfo): Promise<string>;
|
|
7
7
|
export function swapAnythingViaHook(_orch: Orchestrator, { chainHub, sharedLocalAccountP }: {
|
|
8
8
|
chainHub: GuestInterface<ChainHub>;
|
|
9
9
|
sharedLocalAccountP: Promise<GuestInterface<LocalOrchestrationAccountKit["holder"]>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swap-anything.flows.d.ts","sourceRoot":"","sources":["swap-anything.flows.js"],"names":[],"mappings":"AA8EO,6BAXI,YAAY,wFAEpB;IAAsC,QAAQ,EAAtC,eAAe,QAAQ,CAAC;IAC6C,mBAAmB,EAAxF,OAAO,CAAC,eAAe,4BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjC,QAAQ,EAAtC,eAAe,QAAQ,CAAC;IACiC,GAAG,EAA5D,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC;CAC3D,QAAQ,OAAO,aACP,QAAQ,
|
|
1
|
+
{"version":3,"file":"swap-anything.flows.d.ts","sourceRoot":"","sources":["swap-anything.flows.js"],"names":[],"mappings":"AA8EO,6BAXI,YAAY,wFAEpB;IAAsC,QAAQ,EAAtC,eAAe,QAAQ,CAAC;IAC6C,mBAAmB,EAAxF,OAAO,CAAC,eAAe,4BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjC,QAAQ,EAAtC,eAAe,QAAQ,CAAC;IACiC,GAAG,EAA5D,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC;CAC3D,QAAQ,OAAO,aACP,QAAQ,mBAwFlB;AAYM,2CAPI,YAAY,qCAEpB;IAAsC,QAAQ,EAAtC,eAAe,QAAQ,CAAC;IAC6C,mBAAmB,EAAxF,OAAO,CAAC,eAAe,4BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC;CACvE,oBAAQ,WAAW,YACX,QAAQ,iBAgDlB;uBAnNY;IACR,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC;IAChB,QAAQ,EAAE;QAAE,kBAAkB,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IAChE,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;kCAQsF,aAAa;8BAAb,aAAa;oCAN7D,oBAAoB;kDAIf,wCAAwC;8BAC5D,uBAAuB;yBAF5B,aAAa;6BAHO,oBAAoB;6BAEpC,aAAa;iCAImD,aAAa;2BAL/E,uBAAuB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ibc-packet.d.ts","sourceRoot":"","sources":["ibc-packet.js"],"names":[],"mappings":"AAMA,4CAA6C,MAAM,CAAC;AAsB7C,gDAHI,GAAG,GACD,OAAO,CAgCnB;AAOM,+CAHI,OAAO,mBAAmB,EAAE,IAAI,8BAChC,QAAQ,GAAG;IAAE,eAAe,EAAE,eAAe,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"ibc-packet.d.ts","sourceRoot":"","sources":["ibc-packet.js"],"names":[],"mappings":"AAMA,4CAA6C,MAAM,CAAC;AAsB7C,gDAHI,GAAG,GACD,OAAO,CAgCnB;AAOM,+CAHI,OAAO,mBAAmB,EAAE,IAAI,8BAChC,QAAQ,GAAG;IAAE,eAAe,EAAE,eAAe,CAAA;CAAE,IA2HhD,GAAG,MAFA,UAAU;eAvGH,iBAAiB,CAAC,WAAW,CAAC;;;;;QAU1C;;;;;WAKG;0BAJQ,IACV,SAAa,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAC,CAC9D,QACO,aAAa;;;;;;QAYxB;;;;;;;;;;;;;;;;WAgBG;oCAbQ,CACV,SACA,WACA,UAAkB,2CAA2C,CAAC,CACvD,CACF,CACF,OACO;YACN,IAAI,EAAE,aAAa,CAAC;YACpB,KAAK,EAAE,IACX,SAAe,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAC,CAC9D,CAAC;SACH;;;;;;;;GAgEK;IA/FT;;;;;OAKG;sBAJQ,IACV,SAAa,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAC,CAC9D,QACO,aAAa;;;;GA4F/B;AAaM,yCAHI,OAAO,mBAAmB,EAAE,IAAI,YAChC,QAAQ,IAqC6D,CAAC,SAAjE,SAAS,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAE,sFACjE,OAAO,UACP,IAAI,CAAC,CAAC,QACN,aAAa;;;EAmBzB;AAQM,sCAHI,OAAO,mBAAmB,EAAE,IAAI,YAChC,QAAQ;;mBAtLC,iBAAiB,CAAC,WAAW,CAAC;;;;QAU1C;;;;;WAKG;0BAJQ,IACV,SAAa,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAC,CAC9D,QACO,aAAa;;;;;sBA4IgD,CAAC,SAAjE,SAAS,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAE,sFACjE,OAAO,UACP,IAAI,CAAC,CAAC,QACN,aAAa;;;;EAkCzB;8BAba,UAAU,CAAC,OAAO,kBAAkB,CAAC;6BAxPpB,gBAAgB;8BAEf,aAAa;8BACP,cAAc;yBADpB,aAAa;mCAGb,mBAAmB;uCADf,gCAAgC;+BAHlB,sBAAsB;gCAAtB,sBAAsB;8BAAtB,sBAAsB"}
|
package/src/exos/ibc-packet.js
CHANGED
|
@@ -157,8 +157,25 @@ export const prepareIBCTransferSender = (zone, { watch, makeIBCReplyKit }) => {
|
|
|
157
157
|
const { result, error } = obj;
|
|
158
158
|
error === undefined || Fail`ICS20-1 transfer error ${error}`;
|
|
159
159
|
result ?? Fail`Missing result in ICS20-1 transfer ack ${obj}`;
|
|
160
|
-
result === ICS20_TRANSFER_SUCCESS_RESULT
|
|
161
|
-
|
|
160
|
+
if (result === ICS20_TRANSFER_SUCCESS_RESULT) {
|
|
161
|
+
return; // OK, transfer was successful, nothing to do
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
// Function to safely base64-decode and parse JSON
|
|
165
|
+
const decodeAndParse = b64 => {
|
|
166
|
+
try {
|
|
167
|
+
return JSON.parse(atob(b64));
|
|
168
|
+
} catch {
|
|
169
|
+
Fail`Decoding of base64-encoded ack obj object failed: ${JSON.stringify(b64)}`;
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
|
|
173
|
+
const outerDecoded = decodeAndParse(result);
|
|
174
|
+
const ibcAck =
|
|
175
|
+
outerDecoded?.ibc_ack && decodeAndParse(outerDecoded.ibc_ack);
|
|
176
|
+
|
|
177
|
+
ibcAck?.result === ICS20_TRANSFER_SUCCESS_RESULT ||
|
|
178
|
+
Fail`ICS20-1 transfer unsuccessful with ack result: ${outerDecoded}`;
|
|
162
179
|
},
|
|
163
180
|
},
|
|
164
181
|
},
|