@agoric/orchestration 0.1.1-dev-70e543c.0 → 0.1.1-dev-1c730f2.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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agoric/orchestration",
3
- "version": "0.1.1-dev-70e543c.0+70e543c",
3
+ "version": "0.1.1-dev-1c730f2.0+1c730f2",
4
4
  "description": "Chain abstraction for Agoric's orchestration clients",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -33,19 +33,19 @@
33
33
  },
34
34
  "homepage": "https://github.com/Agoric/agoric-sdk#readme",
35
35
  "dependencies": {
36
- "@agoric/async-flow": "0.1.1-dev-70e543c.0+70e543c",
37
- "@agoric/cosmic-proto": "0.4.1-dev-70e543c.0+70e543c",
38
- "@agoric/ertp": "0.16.3-dev-70e543c.0+70e543c",
39
- "@agoric/internal": "0.3.3-dev-70e543c.0+70e543c",
40
- "@agoric/network": "0.1.1-dev-70e543c.0+70e543c",
41
- "@agoric/notifier": "0.6.3-dev-70e543c.0+70e543c",
42
- "@agoric/store": "0.9.3-dev-70e543c.0+70e543c",
43
- "@agoric/time": "0.3.3-dev-70e543c.0+70e543c",
44
- "@agoric/vat-data": "0.5.3-dev-70e543c.0+70e543c",
45
- "@agoric/vats": "0.15.2-dev-70e543c.0+70e543c",
46
- "@agoric/vow": "0.1.1-dev-70e543c.0+70e543c",
47
- "@agoric/zoe": "0.26.3-dev-70e543c.0+70e543c",
48
- "@agoric/zone": "0.2.3-dev-70e543c.0+70e543c",
36
+ "@agoric/async-flow": "0.1.1-dev-1c730f2.0+1c730f2",
37
+ "@agoric/cosmic-proto": "0.4.1-dev-1c730f2.0+1c730f2",
38
+ "@agoric/ertp": "0.16.3-dev-1c730f2.0+1c730f2",
39
+ "@agoric/internal": "0.3.3-dev-1c730f2.0+1c730f2",
40
+ "@agoric/network": "0.1.1-dev-1c730f2.0+1c730f2",
41
+ "@agoric/notifier": "0.6.3-dev-1c730f2.0+1c730f2",
42
+ "@agoric/store": "0.9.3-dev-1c730f2.0+1c730f2",
43
+ "@agoric/time": "0.3.3-dev-1c730f2.0+1c730f2",
44
+ "@agoric/vat-data": "0.5.3-dev-1c730f2.0+1c730f2",
45
+ "@agoric/vats": "0.15.2-dev-1c730f2.0+1c730f2",
46
+ "@agoric/vow": "0.1.1-dev-1c730f2.0+1c730f2",
47
+ "@agoric/zoe": "0.26.3-dev-1c730f2.0+1c730f2",
48
+ "@agoric/zone": "0.2.3-dev-1c730f2.0+1c730f2",
49
49
  "@cosmjs/encoding": "^0.32.4",
50
50
  "@endo/base64": "^1.0.9",
51
51
  "@endo/errors": "^1.2.10",
@@ -56,7 +56,7 @@
56
56
  "bs58": "^6.0.0"
57
57
  },
58
58
  "devDependencies": {
59
- "@agoric/swingset-liveslots": "0.10.3-dev-70e543c.0+70e543c",
59
+ "@agoric/swingset-liveslots": "0.10.3-dev-1c730f2.0+1c730f2",
60
60
  "@chain-registry/client": "^1.47.4",
61
61
  "@cosmjs/amino": "^0.33.0",
62
62
  "@cosmjs/proto-signing": "^0.33.0",
@@ -65,9 +65,9 @@
65
65
  "@endo/ses-ava": "^1.2.10",
66
66
  "ava": "^5.3.1",
67
67
  "bech32": "^2.0.0",
68
- "c8": "^10.1.2",
69
- "prettier": "^3.4.2",
70
- "ts-blank-space": "^0.4.4"
68
+ "c8": "^10.1.3",
69
+ "prettier": "^3.5.3",
70
+ "ts-blank-space": "^0.6.1"
71
71
  },
72
72
  "ava": {
73
73
  "extensions": {
@@ -99,5 +99,5 @@
99
99
  "typeCoverage": {
100
100
  "atLeast": 97.84
101
101
  },
102
- "gitHead": "70e543c8f952246ab36454f8f04ea2589f401d2f"
102
+ "gitHead": "1c730f2199678c14aec52792a0663d93a63741b1"
103
103
  }
@@ -287,11 +287,15 @@ export interface LocalAccountMethods extends StakingAccountActions {
287
287
  /**
288
288
  * Options for {@link OrchestrationAccountI} `transfer` method.
289
289
  *
290
+ * If specifying a custom timeout, use one of `timeoutHeight`, `timeoutTimestamp`, or `timeoutRelativeSeconds`.
291
+ *
290
292
  * @see {@link https://github.com/cosmos/ibc/tree/master/spec/app/ics-020-fungible-token-transfer#data-structures ICS 20 Data Structures}
291
293
  */
292
- export interface IBCMsgTransferOptions {
294
+ export type IBCMsgTransferOptions = {
293
295
  timeoutHeight?: MsgTransfer['timeoutHeight'];
294
296
  timeoutTimestamp?: MsgTransfer['timeoutTimestamp'];
297
+ /** converted using {@link TimerService} to a `timeoutTimestamp` value `timeoutRelativeSeconds` in the future */
298
+ timeoutRelativeSeconds?: bigint;
295
299
  memo?: string;
296
300
  forwardOpts?: {
297
301
  /** The recipient address for the intermediate transfer. Defaults to 'pfm' unless specified */
@@ -299,7 +303,7 @@ export interface IBCMsgTransferOptions {
299
303
  timeout?: ForwardInfo['forward']['timeout'];
300
304
  retries?: ForwardInfo['forward']['retries'];
301
305
  };
302
- }
306
+ };
303
307
  /**
304
308
  * Cosmos-specific methods to extend `OrchestrationAccountI`, parameterized
305
309
  * by `CosmosChainInfo`.
@@ -1 +1 @@
1
- {"version":3,"file":"cosmos-api.d.ts","sourceRoot":"","sources":["cosmos-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cosmos-api.d.ts","sourceRoot":"","sources":["cosmos-api.ts"],"names":[],"mappings":"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"}
package/src/cosmos-api.ts CHANGED
@@ -18,6 +18,7 @@ import type {
18
18
  } from '@agoric/cosmic-proto/tendermint/abci/types.js';
19
19
  import type { Amount, Payment } from '@agoric/ertp/src/types.js';
20
20
  import type { Port } from '@agoric/network';
21
+ import type { TimerService } from '@agoric/time';
21
22
  import type {
22
23
  IBCChannelID,
23
24
  IBCConnectionID,
@@ -360,11 +361,15 @@ export interface LocalAccountMethods extends StakingAccountActions {
360
361
  /**
361
362
  * Options for {@link OrchestrationAccountI} `transfer` method.
362
363
  *
364
+ * If specifying a custom timeout, use one of `timeoutHeight`, `timeoutTimestamp`, or `timeoutRelativeSeconds`.
365
+ *
363
366
  * @see {@link https://github.com/cosmos/ibc/tree/master/spec/app/ics-020-fungible-token-transfer#data-structures ICS 20 Data Structures}
364
367
  */
365
- export interface IBCMsgTransferOptions {
368
+ export type IBCMsgTransferOptions = {
366
369
  timeoutHeight?: MsgTransfer['timeoutHeight'];
367
370
  timeoutTimestamp?: MsgTransfer['timeoutTimestamp'];
371
+ /** converted using {@link TimerService} to a `timeoutTimestamp` value `timeoutRelativeSeconds` in the future */
372
+ timeoutRelativeSeconds?: bigint;
368
373
  memo?: string;
369
374
  forwardOpts?: {
370
375
  /** The recipient address for the intermediate transfer. Defaults to 'pfm' unless specified */
@@ -372,7 +377,7 @@ export interface IBCMsgTransferOptions {
372
377
  timeout?: ForwardInfo['forward']['timeout'];
373
378
  retries?: ForwardInfo['forward']['retries'];
374
379
  };
375
- }
380
+ };
376
381
 
377
382
  /**
378
383
  * Cosmos-specific methods to extend `OrchestrationAccountI`, parameterized
@@ -1 +1 @@
1
- {"version":3,"file":"cosmos-orchestration-account.d.ts","sourceRoot":"","sources":["cosmos-orchestration-account.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cosmos-orchestration-account.d.ts","sourceRoot":"","sources":["cosmos-orchestration-account.js"],"names":[],"mappings":"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"}
@@ -936,20 +936,15 @@ export const prepareCosmosOrchestrationAccountKit = (
936
936
  ),
937
937
  );
938
938
 
939
- // set a `timeoutTimestamp` if caller does not supply either `timeoutHeight` or `timeoutTimestamp`
940
- // TODO #9324 what's a reasonable default? currently 5 minutes
941
- const timeoutTimestampVowOrValue =
942
- opts?.timeoutTimestamp ??
943
- (opts?.timeoutHeight
944
- ? 0n
945
- : E(timestampHelper).getTimeoutTimestampNS());
946
-
947
939
  // Resolves when host chain successfully submits, but not when
948
940
  // the receiving chain acknowledges.
949
941
  // See https://github.com/Agoric/agoric-sdk/issues/9784 for a
950
942
  // solution that tracks the acknowledgement on the receiving chain.
951
943
  return watch(
952
- allVows([connectionInfoV, timeoutTimestampVowOrValue]),
944
+ allVows([
945
+ connectionInfoV,
946
+ timestampHelper.vowOrValueFromOpts(opts),
947
+ ]),
953
948
  this.facets.transferWatcher,
954
949
  { opts, token, destination: cosmosDest },
955
950
  );
@@ -1 +1 @@
1
- {"version":3,"file":"local-orchestration-account.d.ts","sourceRoot":"","sources":["local-orchestration-account.js"],"names":[],"mappings":"AAkGO,0DAVI,IAAI,qFAEZ;IAAgC,eAAe,EAAvC,eAAe;IACH,GAAG,EAAf,GAAG;IAC0B,YAAY,EAAzC,OAAO,YAAY,CAAC;IACH,QAAQ,EAAzB,QAAQ;IACS,QAAQ,EAAzB,QAAQ;IACmB,UAAU,EAArC,OAAO,UAAU,CAAC;IACD,QAAQ,EAAzB,QAAQ;CAClB;aAqFc,iBAAiB;aACjB,kBAAkB;;;;QAoBzB;;;WAGG;6BAFQ,SAAS,GACP,IAAI;;;QAOjB;;;WAGG;mCAFQ,MAAM,cACN,MAAM,CAAC,KAAK,CAAC;;QAiCxB;;;WAGG;qCAFQ,MAAM,cACN,MAAM,CAAC,KAAK,CAAC;;;uBAmBJ,YAAY;oBAAU,SAAS;;;uBAa/B,kBAAkB;qBAAW,SAAS,EAAE;;;oBAc3C,SAAS;yBACJ,YAAY;mBAClB,qBAAqB;;;;;QAmCrC;;;;;;WAMG;8BALQ,CACV,SACA,UAAgB,+CAA+C,CAAC,CAC3D,CACF;;;QAcJ;;;;;;WAMG;sCALQ,MAAM,mBACN;YACN,IAAI,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,aAAa,CAAC,CAAC;YAClD,KAAK,EAAE,aAAa,CAAC;SACtB;;IAsCN;;;OAGG;;QAED,kDAAkD;6BAAtC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;;;;;IAYxC;;;OAGG;;QAED;;;;WAIG;+BAHQ,MAAM,CAAC,KAAK,CAAC,SACb,WAAW,CAAC,OAAO,CAAC,GAClB,WAAW;;IAM1B,kDAAkD;;QAEhD;;;WAGG;uBAFQ,SAAS,QACT,OAAO;QAKlB;;;WAGG;2BAFQ,KAAK,QACL,OAAO;;IAOpB;;;OAGG;;QAED;;;;;WAKG;4BAJQ,WACV,UAAc,0CAA0C,CAAC,CACtD,GACS,WAAW;;IAU1B;;;OAGG;;QAED;;;;;;;WAOG;4BANQ,SACV,WACA,UAAgB,8CAA8C,CAAC,CAC1D,CACF,GACS,WAAW,EAAE;;;;;;;QA8F1B;;;WAGG;mCAFQ,MAAM,cACN,MAAM,CAAC,KAAK,CAAC;QAmBxB;;;;WAIG;qCAHQ,MAAM,cACN,MAAM,CAAC,KAAK,CAAC,GACX,IAAI,IAAI,GAAG,eAAe,CAAC;;;;;;;;;;;QAqFxC;;;;;;;;;;;WAWG;8BAVQ,YAAY,UACZ,SAAS,SAET,qBAAqB,GAGnB,IAAI,GAAG,CAAC;;;;;;;;;GAoE5B;;aAzrBa,MAAM;;;;;oBAKP;IACR,QAAQ,EAAE,YAAY,6BAA6B,CAAC,GAAG,SAAS,CAAC;IACjE,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,OAAO,EAAE,kBAAkB,CAAC;CAC7B;+CAirBU,UAAU,CAAC,OAAO,mCAAmC,CAAC;2CACtD,UAAU,CAAC,gCAAgC,CAAC;0BAjtBnC,cAAc;qCADU,6CAA6C;yBADrB,aAAa;kCAKpC,cAAc;4BAFrC,kBAAkB;8BAGX,aAAa;8BAIlB,gBAAgB;gCAZK,gCAAgC;8BAcrD,uBAAuB;uCAdF,gCAAgC;wCACgH,uBAAuB;+BAAvB,uBAAuB;0BAShM,kDAAkD;yBAFzC,aAAa;gCAN0B,aAAa;qCAKpC,cAAc;kCANkI,uBAAuB;2CAAvB,uBAAuB;+BAQrK,sBAAsB;8BAAtB,sBAAsB;mCARwH,uBAAuB;iCAAvB,uBAAuB;6BAChJ,aAAa;gCAOlC,sBAAsB;iCANzB,6CAA6C;iCAU9D,mBAAmB"}
1
+ {"version":3,"file":"local-orchestration-account.d.ts","sourceRoot":"","sources":["local-orchestration-account.js"],"names":[],"mappings":"AAkGO,0DAVI,IAAI,qFAEZ;IAAgC,eAAe,EAAvC,eAAe;IACH,GAAG,EAAf,GAAG;IAC0B,YAAY,EAAzC,OAAO,YAAY,CAAC;IACH,QAAQ,EAAzB,QAAQ;IACS,QAAQ,EAAzB,QAAQ;IACmB,UAAU,EAArC,OAAO,UAAU,CAAC;IACD,QAAQ,EAAzB,QAAQ;CAClB;aAqFc,iBAAiB;aACjB,kBAAkB;;;;QAoBzB;;;WAGG;6BAFQ,SAAS,GACP,IAAI;;;QAOjB;;;WAGG;mCAFQ,MAAM,cACN,MAAM,CAAC,KAAK,CAAC;;QAiCxB;;;WAGG;qCAFQ,MAAM,cACN,MAAM,CAAC,KAAK,CAAC;;;uBAmBJ,YAAY;oBAAU,SAAS;;;uBAa/B,kBAAkB;qBAAW,SAAS,EAAE;;;oBAc3C,SAAS;yBACJ,YAAY;mBAClB,qBAAqB;;;;;QAmCrC;;;;;;WAMG;8BALQ,CACV,SACA,UAAgB,+CAA+C,CAAC,CAC3D,CACF;;;QAcJ;;;;;;WAMG;sCALQ,MAAM,mBACN;YACN,IAAI,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,aAAa,CAAC,CAAC;YAClD,KAAK,EAAE,aAAa,CAAC;SACtB;;IAsCN;;;OAGG;;QAED,kDAAkD;6BAAtC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;;;;;IAYxC;;;OAGG;;QAED;;;;WAIG;+BAHQ,MAAM,CAAC,KAAK,CAAC,SACb,WAAW,CAAC,OAAO,CAAC,GAClB,WAAW;;IAM1B,kDAAkD;;QAEhD;;;WAGG;uBAFQ,SAAS,QACT,OAAO;QAKlB;;;WAGG;2BAFQ,KAAK,QACL,OAAO;;IAOpB;;;OAGG;;QAED;;;;;WAKG;4BAJQ,WACV,UAAc,0CAA0C,CAAC,CACtD,GACS,WAAW;;IAU1B;;;OAGG;;QAED;;;;;;;WAOG;4BANQ,SACV,WACA,UAAgB,8CAA8C,CAAC,CAC1D,CACF,GACS,WAAW,EAAE;;;;;;;QA8F1B;;;WAGG;mCAFQ,MAAM,cACN,MAAM,CAAC,KAAK,CAAC;QAmBxB;;;;WAIG;qCAHQ,MAAM,cACN,MAAM,CAAC,KAAK,CAAC,GACX,IAAI,IAAI,GAAG,eAAe,CAAC;;;;;;;;;;;QAqFxC;;;;;;;;;;;WAWG;8BAVQ,YAAY,UACZ,SAAS,SAET,qBAAqB,GAGnB,IAAI,GAAG,CAAC;;;;;;;;;GA4D5B;;aAjrBa,MAAM;;;;;oBAKP;IACR,QAAQ,EAAE,YAAY,6BAA6B,CAAC,GAAG,SAAS,CAAC;IACjE,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,OAAO,EAAE,kBAAkB,CAAC;CAC7B;+CAyqBU,UAAU,CAAC,OAAO,mCAAmC,CAAC;2CACtD,UAAU,CAAC,gCAAgC,CAAC;0BAzsBnC,cAAc;qCADU,6CAA6C;yBADrB,aAAa;kCAKpC,cAAc;4BAFrC,kBAAkB;8BAGX,aAAa;8BAIlB,gBAAgB;gCAZK,gCAAgC;8BAcrD,uBAAuB;uCAdF,gCAAgC;wCACgH,uBAAuB;+BAAvB,uBAAuB;0BAShM,kDAAkD;yBAFzC,aAAa;gCAN0B,aAAa;qCAKpC,cAAc;kCANkI,uBAAuB;2CAAvB,uBAAuB;+BAQrK,sBAAsB;8BAAtB,sBAAsB;mCARwH,uBAAuB;iCAAvB,uBAAuB;6BAChJ,aAAa;gCAOlC,sBAAsB;iCANzB,6CAA6C;iCAU9D,mBAAmB"}
@@ -703,18 +703,10 @@ export const prepareLocalOrchestrationAccountKit = (
703
703
  );
704
704
  trace('got transfer route', route);
705
705
 
706
- // set a `timeoutTimestamp` if caller does not supply either `timeoutHeight` or `timeoutTimestamp`
707
- // TODO #9324 what's a reasonable default? currently 5 minutes
708
- const timeoutTimestampVowOrValue =
709
- opts?.timeoutTimestamp ??
710
- (opts?.timeoutHeight
711
- ? 0n
712
- : asVow(() => E(timestampHelper).getTimeoutTimestampNS()));
713
-
714
706
  // don't resolve the vow until the transfer is confirmed on remote
715
707
  // and reject vow if the transfer fails for any reason
716
708
  const resultV = watch(
717
- timeoutTimestampVowOrValue,
709
+ timestampHelper.vowOrValueFromOpts(opts),
718
710
  this.facets.transferWatcher,
719
711
  {
720
712
  opts: rest,
@@ -1 +1 @@
1
- {"version":3,"file":"typeGuards.d.ts","sourceRoot":"","sources":["typeGuards.js"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH;;;;GAIG;AACH;;;GAQE;;;;;;AAYF,yCAAyC;AACzC,gCADW,aAAa,YAAY,CAAC,CAKnC;;AAMF;;;;GAIG;AACH,gCAFU,aAAa,YAAY,CAAC,CAEuC;AAE3E,sCAAsC;AACtC,0BADW,aAAa,SAAS,CAAC,CACoC;AAGtE,gBAAgB;AAChB,iEAA4C;AAE5C,gBAAgB;AAChB,mEAQG;AAEH,gBAAgB;AAChB,oEAA+C;AAE/C,gBAAgB;AAChB,sEASG;AAEH,4CAA4C;AAC5C,mCADW,aAAa,eAAe,CAAC,CASrC;AAWH,0CAA0C;AAC1C,iCADW,aAAa,aAAa,CAAC,CAIpC;AAGF,4CAA4C;AAC5C,mCADW,aAAa,eAAe,CAAC,CAetC;AAGF,sCAAsC;AACtC,6BADW,aAAa,SAAS,CAAC,CAC2C;AAG7E,0DAAqC;AAErC,iCAAiC;AACjC,wBADW,aAAa,IAAI,CAAC,CAK3B;AAGF,gDAAgD;AAChD,6BADW,aAAa,UAAU,GAAG,EAAE,GAAG,CAAC,CAAC,CAM1C;AAGF,wCAAwC;AACxC,+BADW,aAAa,WAAW,CAAC,CAIlC;AAGF,wCAAwC;AACxC,+BADW,aAAa,WAAW,CAAC,CACkC;AAGtE,0CAA0C;AAC1C,gCADW,aAAa,MAAM,CAAC,KAAK,CAAC,CAAC,CAIpC;AAGF,sCAAsC;AACtC,6BADW,aAAa,SAAS,CAAC,CACsC;AAExE;;;;;GAKG;AACH,8BALU,aAAa;IAClB,SAAS,EAAE,sBAAsB,CAAC;IAClC,MAAM,EAAE,SAAS,CAAC;CACnB,CAAC,CAQH;AAEF,sCAAsC;AACtC,2DAGE;AAEF,sCAAsC;AACtC,6BADW,aAAa,SAAS,CAAC,CACmC;;;;;;;;;AAmBrE;;;;GAIG;AACH,+DAQE;AAEF;;;GAGG;AACH,mEAGE;AAEF,gDAAgD;AAChD,uCADW,aAAa,mBAAmB,CAAC,CAO1C;AAYF,wCAAwC;AACxC,+BADW,aAAa,WAAW,CAAC,CAWlC;AAGF;;;;GAIG;AACH,+BAFU,aAAa,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAU1D;AAEF;;;GAGG;AACH,sCAHU,aAAa,qBAAqB,CAAC,CAc3C;kCA5S0N,YAAY;kCADzM,kBAAkB;kCAC2K,YAAY;sCACrM,6CAA6C;qCAD4I,YAAY;mCAAZ,YAAY;qCAAZ,YAAY;+BAAZ,YAAY;0BAGjN,kDAAkD;+BAHmJ,YAAY;iCAK1M,qBAAqB;iCALyK,YAAY;+BAAZ,YAAY;4CAAZ,YAAY;+BAI5M,sBAAsB;yCAJ0K,YAAY;iCAAZ,YAAY;2CAAZ,YAAY"}
1
+ {"version":3,"file":"typeGuards.d.ts","sourceRoot":"","sources":["typeGuards.js"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH;;;;GAIG;AACH;;;GAQE;;;;;;AAYF,yCAAyC;AACzC,gCADW,aAAa,YAAY,CAAC,CAKnC;;AAMF;;;;GAIG;AACH,gCAFU,aAAa,YAAY,CAAC,CAEuC;AAE3E,sCAAsC;AACtC,0BADW,aAAa,SAAS,CAAC,CACoC;AAGtE,gBAAgB;AAChB,iEAA4C;AAE5C,gBAAgB;AAChB,mEAQG;AAEH,gBAAgB;AAChB,oEAA+C;AAE/C,gBAAgB;AAChB,sEASG;AAEH,4CAA4C;AAC5C,mCADW,aAAa,eAAe,CAAC,CASrC;AAWH,0CAA0C;AAC1C,iCADW,aAAa,aAAa,CAAC,CAIpC;AAGF,4CAA4C;AAC5C,mCADW,aAAa,eAAe,CAAC,CAetC;AAGF,sCAAsC;AACtC,6BADW,aAAa,SAAS,CAAC,CAC2C;AAG7E,0DAAqC;AAErC,iCAAiC;AACjC,wBADW,aAAa,IAAI,CAAC,CAK3B;AAGF,gDAAgD;AAChD,6BADW,aAAa,UAAU,GAAG,EAAE,GAAG,CAAC,CAAC,CAM1C;AAGF,wCAAwC;AACxC,+BADW,aAAa,WAAW,CAAC,CAIlC;AAGF,wCAAwC;AACxC,+BADW,aAAa,WAAW,CAAC,CACkC;AAGtE,0CAA0C;AAC1C,gCADW,aAAa,MAAM,CAAC,KAAK,CAAC,CAAC,CAIpC;AAGF,sCAAsC;AACtC,6BADW,aAAa,SAAS,CAAC,CACsC;AAExE;;;;;GAKG;AACH,8BALU,aAAa;IAClB,SAAS,EAAE,sBAAsB,CAAC;IAClC,MAAM,EAAE,SAAS,CAAC;CACnB,CAAC,CAQH;AAEF,sCAAsC;AACtC,2DAGE;AAEF,sCAAsC;AACtC,6BADW,aAAa,SAAS,CAAC,CACmC;;;;;;;;;AAmBrE;;;;GAIG;AACH,+DAQE;AAEF;;;GAGG;AACH,mEAGE;AAEF,gDAAgD;AAChD,uCADW,aAAa,mBAAmB,CAAC,CAO1C;AAYF,wCAAwC;AACxC,+BADW,aAAa,WAAW,CAAC,CAWlC;AAGF;;;;GAIG;AACH,+BAFU,aAAa,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAU1D;AAEF;;;GAGG;AACH,sCAHU,aAAa,qBAAqB,CAAC,CAe3C;kCA7S0N,YAAY;kCADzM,kBAAkB;kCAC2K,YAAY;sCACrM,6CAA6C;qCAD4I,YAAY;mCAAZ,YAAY;qCAAZ,YAAY;+BAAZ,YAAY;0BAGjN,kDAAkD;+BAHmJ,YAAY;iCAK1M,qBAAqB;iCALyK,YAAY;+BAAZ,YAAY;4CAAZ,YAAY;+BAI5M,sBAAsB;yCAJ0K,YAAY;iCAAZ,YAAY;2CAAZ,YAAY"}
package/src/typeGuards.js CHANGED
@@ -301,6 +301,7 @@ export const IBCTransferOptionsShape = M.splitRecord(
301
301
  revisionHeight: M.bigint(),
302
302
  revisionNumber: M.bigint(),
303
303
  },
304
+ timeoutRelativeSeconds: M.bigint(),
304
305
  memo: M.string(),
305
306
  forwardOpts: ForwardOptsShape,
306
307
  },
@@ -7,20 +7,24 @@ export function makeTimestampHelper(timer: Remote<TimerService>): {
7
7
  /**
8
8
  * XXX do this need to be resumable / use Vows?
9
9
  *
10
- * Takes the current time from ChainTimerService and adds a relative time to
11
- * determine a timeout timestamp in nanoseconds. Useful for
12
- * {@link MsgTransfer.timeoutTimestamp}.
10
+ * Takes the current time from ChainTimerService and adds a relative time
11
+ * (`secondsInFuture`) to determine a timeout timestamp in nanoseconds.
12
+ * Useful for {@link MsgTransfer.timeoutTimestamp}.
13
13
  *
14
- * @param {RelativeTimeRecord} [relativeTime] defaults to 5 minutes
14
+ * @param {bigint} [secondsInFuture] defaults to 300n (5 minutes)
15
15
  * @returns {Promise<bigint>} Timeout timestamp in absolute nanoseconds
16
16
  * since unix epoch
17
17
  */
18
- getTimeoutTimestampNS(relativeTime?: RelativeTimeRecord): Promise<bigint>;
18
+ getTimeoutTimestampNS(secondsInFuture?: bigint): Promise<bigint>;
19
+ /** @param {IBCMsgTransferOptions} [opts] */
20
+ vowOrValueFromOpts(opts?: IBCMsgTransferOptions): bigint | Promise<bigint> | undefined;
19
21
  };
20
22
  /**
21
- * @import {RelativeTimeRecord, TimerBrand, TimerService} from '@agoric/time';
23
+ * @import {TimerService} from '@agoric/time';
22
24
  * @import {Remote} from '@agoric/internal';
23
25
  * @import {EReturn} from '@endo/far';
26
+ * @import {IBCMsgTransferOptions} from '../cosmos-api';
27
+ * @import {MsgTransfer} from '@agoric/cosmic-proto/ibc/applications/transfer/v1/tx.js';
24
28
  */
25
29
  export const SECONDS_PER_MINUTE: 60n;
26
30
  export const MILLISECONDS_PER_SECOND: 1000n;
@@ -29,6 +33,6 @@ export const NANOSECONDS_PER_SECOND: 1000000000n;
29
33
  export type TimestampHelper = EReturn<typeof makeTimestampHelper>;
30
34
  import type { TimerService } from '@agoric/time';
31
35
  import type { Remote } from '@agoric/internal';
32
- import type { RelativeTimeRecord } from '@agoric/time';
36
+ import type { IBCMsgTransferOptions } from '../cosmos-api';
33
37
  import type { EReturn } from '@endo/far';
34
38
  //# sourceMappingURL=time.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"time.d.ts","sourceRoot":"","sources":["time.js"],"names":[],"mappings":"AAcA;;;;GAIG;AACH,2CAFW,OAAO,YAAY,CAAC;IAI3B;;;;;;;;;;OAUG;yCAHQ,kBAAkB,GAChB,OAAO,CAAC,MAAM,CAAC;EAiB/B;AA3CD;;;;GAIG;AAEH,iCAAkC,GAAG,CAAC;AACtC,sCAAuC,KAAK,CAAC;AAC7C,0CAA2C,QAAU,CAAC;AACtD,qCAAsC,WAAc,CAAC;8BAoCvC,QAAQ,OAAO,mBAAmB,CAAC;kCA5Cc,cAAc;4BACpD,kBAAkB;wCADoB,cAAc;6BAEnD,WAAW"}
1
+ {"version":3,"file":"time.d.ts","sourceRoot":"","sources":["time.js"],"names":[],"mappings":"AAgBA;;;;GAIG;AACH,2CAFW,OAAO,YAAY,CAAC;IAI3B;;;;;;;;;;OAUG;4CAHQ,MAAM,GACJ,OAAO,CAAC,MAAM,CAAC;IAc5B,4CAA4C;8BAAhC,qBAAqB;EAYpC;AAtDD;;;;;;GAMG;AAEH,iCAAkC,GAAG,CAAC;AACtC,sCAAuC,KAAK,CAAC;AAC7C,0CAA2C,QAAU,CAAC;AACtD,qCAAsC,WAAc,CAAC;8BA6CvC,QAAQ,OAAO,mBAAmB,CAAC;kCAvDlB,cAAc;4BACpB,kBAAkB;2CAEH,eAAe;6BAD7B,WAAW"}
package/src/utils/time.js CHANGED
@@ -2,9 +2,11 @@ import { E } from '@endo/far';
2
2
  import { TimeMath } from '@agoric/time';
3
3
 
4
4
  /**
5
- * @import {RelativeTimeRecord, TimerBrand, TimerService} from '@agoric/time';
5
+ * @import {TimerService} from '@agoric/time';
6
6
  * @import {Remote} from '@agoric/internal';
7
7
  * @import {EReturn} from '@endo/far';
8
+ * @import {IBCMsgTransferOptions} from '../cosmos-api';
9
+ * @import {MsgTransfer} from '@agoric/cosmic-proto/ibc/applications/transfer/v1/tx.js';
8
10
  */
9
11
 
10
12
  export const SECONDS_PER_MINUTE = 60n;
@@ -18,32 +20,41 @@ export const NANOSECONDS_PER_SECOND = 1_000_000_000n;
18
20
  * @param {Remote<TimerService>} timer
19
21
  */
20
22
  export function makeTimestampHelper(timer) {
21
- return harden({
23
+ const self = harden({
22
24
  /**
23
25
  * XXX do this need to be resumable / use Vows?
24
26
  *
25
- * Takes the current time from ChainTimerService and adds a relative time to
26
- * determine a timeout timestamp in nanoseconds. Useful for
27
- * {@link MsgTransfer.timeoutTimestamp}.
27
+ * Takes the current time from ChainTimerService and adds a relative time
28
+ * (`secondsInFuture`) to determine a timeout timestamp in nanoseconds.
29
+ * Useful for {@link MsgTransfer.timeoutTimestamp}.
28
30
  *
29
- * @param {RelativeTimeRecord} [relativeTime] defaults to 5 minutes
31
+ * @param {bigint} [secondsInFuture] defaults to 300n (5 minutes)
30
32
  * @returns {Promise<bigint>} Timeout timestamp in absolute nanoseconds
31
33
  * since unix epoch
32
34
  */
33
- async getTimeoutTimestampNS(relativeTime) {
35
+ async getTimeoutTimestampNS(secondsInFuture = SECONDS_PER_MINUTE * 5n) {
34
36
  const currentTime = await E(timer).getCurrentTimestamp();
35
- const timeout =
36
- relativeTime ||
37
- TimeMath.coerceRelativeTimeRecord(
38
- SECONDS_PER_MINUTE * 5n,
39
- currentTime.timerBrand,
40
- );
37
+ const timeout = TimeMath.coerceRelativeTimeRecord(
38
+ secondsInFuture,
39
+ currentTime.timerBrand,
40
+ );
41
41
  return (
42
42
  TimeMath.addAbsRel(currentTime, timeout).absValue *
43
43
  NANOSECONDS_PER_SECOND
44
44
  );
45
45
  },
46
+ /** @param {IBCMsgTransferOptions} [opts] */
47
+ vowOrValueFromOpts(opts) {
48
+ if (opts && 'timeoutTimestamp' in opts) return opts.timeoutTimestamp;
49
+ if (opts && 'timeoutHeight' in opts) return 0n;
50
+ return self.getTimeoutTimestampNS(
51
+ opts && 'timeoutRelativeSeconds' in opts
52
+ ? opts.timeoutRelativeSeconds
53
+ : undefined,
54
+ );
55
+ },
46
56
  });
57
+ return self;
47
58
  }
48
59
 
49
60
  /** @typedef {EReturn<typeof makeTimestampHelper>} TimestampHelper */