@bananapus/nana-sdk-core 6.4.0 → 6.6.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.
Files changed (79) hide show
  1. package/dist/cjs/review/decode.d.ts.map +1 -1
  2. package/dist/cjs/review/decode.js +10 -3
  3. package/dist/cjs/review/decode.js.map +1 -1
  4. package/dist/cjs/review/safeSend.d.ts +7 -3
  5. package/dist/cjs/review/safeSend.d.ts.map +1 -1
  6. package/dist/cjs/review/safeSend.js +17 -6
  7. package/dist/cjs/review/safeSend.js.map +1 -1
  8. package/dist/cjs/safeService.d.ts +6 -0
  9. package/dist/cjs/safeService.d.ts.map +1 -1
  10. package/dist/cjs/safeService.js +13 -0
  11. package/dist/cjs/safeService.js.map +1 -1
  12. package/dist/cjs/utils/hook.d.ts +13 -0
  13. package/dist/cjs/utils/hook.d.ts.map +1 -1
  14. package/dist/cjs/utils/hook.js +49 -0
  15. package/dist/cjs/utils/hook.js.map +1 -1
  16. package/dist/cjs/v6/cashOut.d.ts +5 -1
  17. package/dist/cjs/v6/cashOut.d.ts.map +1 -1
  18. package/dist/cjs/v6/cashOut.js +14 -2
  19. package/dist/cjs/v6/cashOut.js.map +1 -1
  20. package/dist/cjs/v6/index.d.ts +1 -0
  21. package/dist/cjs/v6/index.d.ts.map +1 -1
  22. package/dist/cjs/v6/index.js +1 -0
  23. package/dist/cjs/v6/index.js.map +1 -1
  24. package/dist/cjs/v6/permit2.d.ts +106 -1
  25. package/dist/cjs/v6/permit2.d.ts.map +1 -1
  26. package/dist/cjs/v6/permit2.js +150 -1
  27. package/dist/cjs/v6/permit2.js.map +1 -1
  28. package/dist/cjs/v6/projectHooks.d.ts +53 -0
  29. package/dist/cjs/v6/projectHooks.d.ts.map +1 -0
  30. package/dist/cjs/v6/projectHooks.js +203 -0
  31. package/dist/cjs/v6/projectHooks.js.map +1 -0
  32. package/dist/cjs/v6/revnets.d.ts +42 -0
  33. package/dist/cjs/v6/revnets.d.ts.map +1 -1
  34. package/dist/cjs/v6/revnets.js +60 -0
  35. package/dist/cjs/v6/revnets.js.map +1 -1
  36. package/dist/cjs/v6/terminals.d.ts +24 -0
  37. package/dist/cjs/v6/terminals.d.ts.map +1 -1
  38. package/dist/cjs/v6/terminals.js +52 -0
  39. package/dist/cjs/v6/terminals.js.map +1 -1
  40. package/dist/esm/review/decode.d.ts.map +1 -1
  41. package/dist/esm/review/decode.js +10 -3
  42. package/dist/esm/review/decode.js.map +1 -1
  43. package/dist/esm/review/safeSend.d.ts +7 -3
  44. package/dist/esm/review/safeSend.d.ts.map +1 -1
  45. package/dist/esm/review/safeSend.js +18 -7
  46. package/dist/esm/review/safeSend.js.map +1 -1
  47. package/dist/esm/safeService.d.ts +6 -0
  48. package/dist/esm/safeService.d.ts.map +1 -1
  49. package/dist/esm/safeService.js +12 -0
  50. package/dist/esm/safeService.js.map +1 -1
  51. package/dist/esm/utils/hook.d.ts +13 -0
  52. package/dist/esm/utils/hook.d.ts.map +1 -1
  53. package/dist/esm/utils/hook.js +48 -0
  54. package/dist/esm/utils/hook.js.map +1 -1
  55. package/dist/esm/v6/cashOut.d.ts +5 -1
  56. package/dist/esm/v6/cashOut.d.ts.map +1 -1
  57. package/dist/esm/v6/cashOut.js +14 -2
  58. package/dist/esm/v6/cashOut.js.map +1 -1
  59. package/dist/esm/v6/index.d.ts +1 -0
  60. package/dist/esm/v6/index.d.ts.map +1 -1
  61. package/dist/esm/v6/index.js +1 -0
  62. package/dist/esm/v6/index.js.map +1 -1
  63. package/dist/esm/v6/permit2.d.ts +106 -1
  64. package/dist/esm/v6/permit2.d.ts.map +1 -1
  65. package/dist/esm/v6/permit2.js +145 -0
  66. package/dist/esm/v6/permit2.js.map +1 -1
  67. package/dist/esm/v6/projectHooks.d.ts +53 -0
  68. package/dist/esm/v6/projectHooks.d.ts.map +1 -0
  69. package/dist/esm/v6/projectHooks.js +200 -0
  70. package/dist/esm/v6/projectHooks.js.map +1 -0
  71. package/dist/esm/v6/revnets.d.ts +42 -0
  72. package/dist/esm/v6/revnets.d.ts.map +1 -1
  73. package/dist/esm/v6/revnets.js +58 -1
  74. package/dist/esm/v6/revnets.js.map +1 -1
  75. package/dist/esm/v6/terminals.d.ts +24 -0
  76. package/dist/esm/v6/terminals.d.ts.map +1 -1
  77. package/dist/esm/v6/terminals.js +51 -0
  78. package/dist/esm/v6/terminals.js.map +1 -1
  79. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"revnets.d.ts","sourceRoot":"","sources":["../../../src/v6/revnets.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
1
+ {"version":3,"file":"revnets.d.ts","sourceRoot":"","sources":["../../../src/v6/revnets.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
@@ -8,7 +8,12 @@ exports.getAmountToAutoIssue = getAmountToAutoIssue;
8
8
  exports.getCashOutDelay = getCashOutDelay;
9
9
  exports.isRevnetOperator = isRevnetOperator;
10
10
  exports.getRevnetTiered721Hook = getRevnetTiered721Hook;
11
+ exports.revnetCashOutFeeApplies = revnetCashOutFeeApplies;
12
+ exports.cashOutCountAfterRevnetFee = cashOutCountAfterRevnetFee;
13
+ exports.revnetCashOutFeeTerminalExists = revnetCashOutFeeTerminalExists;
14
+ const viem_1 = require("viem");
11
15
  const juicebox_js_1 = require("../generated/juicebox.js");
16
+ const fees_js_1 = require("./fees.js");
12
17
  const revnet721_js_1 = require("./revnet721.js");
13
18
  const deploymentAbi_js_1 = require("./deploymentAbi.js");
14
19
  const types_js_1 = require("./types.js");
@@ -237,4 +242,59 @@ async function getRevnetTiered721Hook(client, args) {
237
242
  args: [args.revnetId],
238
243
  });
239
244
  }
245
+ /**
246
+ * Whether a revnet takes its 2.5% fee from a cash out, as
247
+ * `REVOwner.beforeCashOutRecordedWith` decides it. The fee is skipped when the
248
+ * ruleset's cash out tax rate is zero, when the fee revnet has no primary
249
+ * terminal for the reclaimed token, when the beneficiary is feeless, and for a
250
+ * sucker moving tokens between chains.
251
+ *
252
+ * `undefined` while the tax rate is unknown: an unknown fee is not shown as
253
+ * either extreme. This answers for revnets only; a project whose data hook is
254
+ * not a `REVOwner` pays no such fee.
255
+ *
256
+ * @param args.feeTerminalExists From {@link revnetCashOutFeeTerminalExists}.
257
+ * Defaults to true, the deployed fee revnet's state for the tokens it accepts.
258
+ * @link https://github.com/rev-net/revnet-core-v6/blob/main/src/REVOwner.sol (`beforeCashOutRecordedWith`)
259
+ */
260
+ function revnetCashOutFeeApplies({ cashOutTaxRate, feeTerminalExists = true, beneficiaryIsFeeless = false, holderIsSucker = false, }) {
261
+ if (holderIsSucker || beneficiaryIsFeeless || !feeTerminalExists) {
262
+ return false;
263
+ }
264
+ if (cashOutTaxRate === undefined)
265
+ return undefined;
266
+ return BigInt(cashOutTaxRate) !== 0n;
267
+ }
268
+ /**
269
+ * The token count a revnet cash out reclaims against once its fee is taken:
270
+ * `count - count / 40`, the contract's own rounding. The other fortieth is
271
+ * cashed out for the fee revnet. The terminal's protocol fee then comes out of
272
+ * what this count reclaims (see `cashOutProtocolFee`).
273
+ *
274
+ * @param applies From {@link revnetCashOutFeeApplies}, once it is known; false returns the count unchanged.
275
+ */
276
+ function cashOutCountAfterRevnetFee(cashOutCount, applies) {
277
+ return applies ? (0, fees_js_1.amountAfterFee)(cashOutCount) : cashOutCount;
278
+ }
279
+ /**
280
+ * Whether the fee revnet can be paid in `token`: `REVOwner` charges its cash
281
+ * out fee only when `JBDirectory.primaryTerminalOf(FEE_REVNET_ID, token)` is set.
282
+ *
283
+ * @param args.revOwner The revnet's data hook. Defaults to the current `REVOwner`.
284
+ * @param args.token The token the cash out reclaims.
285
+ */
286
+ async function revnetCashOutFeeTerminalExists(client, args) {
287
+ const feeRevnetId = await client.readContract({
288
+ address: args.revOwner ?? (0, types_js_1.v6Address)("REVOwner", args.chainId),
289
+ abi: juicebox_js_1.revOwnerAbi,
290
+ functionName: "FEE_REVNET_ID",
291
+ });
292
+ const terminal = await client.readContract({
293
+ address: (0, types_js_1.v6Address)("JBDirectory", args.chainId),
294
+ abi: juicebox_js_1.jbDirectoryAbi,
295
+ functionName: "primaryTerminalOf",
296
+ args: [feeRevnetId, args.token],
297
+ });
298
+ return terminal !== viem_1.zeroAddress;
299
+ }
240
300
  //# sourceMappingURL=revnets.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"revnets.js","sourceRoot":"","sources":["../../../src/v6/revnets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"revnets.js","sourceRoot":"","sources":["../../../src/v6/revnets.ts"],"names":[],"mappings":";;;AA6GA,wDAgCC;AA6BD,kDA8GC;AAOD,4CAaC;AAMD,oDAeC;AAQD,0CAUC;AAMD,4CAUC;AAMD,wDAUC;AAiBD,0DAgBC;AAUD,gEAKC;AASD,wEAgBC;AA5bD,+BAAgF;AAChF,0DAIkC;AAElC,uCAA2C;AAC3C,iDAIwB;AAExB,yDAAyD;AACzD,yCAAuC;AAuDvC;;;;;;GAMG;AACU,QAAA,oCAAoC,GAAG,CAAC,IAAI,CAAC,CAAC;AAE3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,SAAgB,sBAAsB,CAAC,IAgBtC;IACC,MAAM,aAAa,GACjB,IAAI,CAAC,qBAAqB,KAAK,KAAK;QAClC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC,GAAG,4CAAoC,CAAC;IACvE,OAAO;QACL,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,EAAE;QACvC,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,CAAC;QACpC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE;QACzB,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,IAAI,CAAC;QACpD,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,IAAI,CAAC;QAChD,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,CAAC;QACxC,aAAa;KACd,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,SAAgB,mBAAmB,CAAC,IAcnC;IACC,MAAM,OAAO,GAAG,IAAA,oBAAS,EAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;IAErC,4EAA4E;IAC5E,4EAA4E;IAC5E,8EAA8E;IAC9E,8EAA8E;IAC9E,IAAI,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAC5D,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,4CAAoC,CAAC;YACpE,CAAC,CACJ,CAAC;QACF,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,SAAS,YAAY,qDAAqD;gBACxE,uEAAuE;gBACvE,6DAA6D;gBAC7D,wEAAwE;gBACxE,qBAAqB,CACxB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,8DAA8D;IAC9D,IAAI,QAAQ,KAAK,EAAE,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAE,IAAI,CAAC,WAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;IAElE,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CACb,8DAA8D,CAC/D,CAAC;IACJ,CAAC;IACD,IACE,CAAC,IAAI,CAAC,eAAe;QACrB,CAAC,IAAI,CAAC,gBAAgB;QACtB,IAAI,CAAC,YAAY,EAAE,MAAM,EACzB,CAAC;QACD,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;IACJ,CAAC;IACD,MAAM,eAAe,GACnB,IAAI,CAAC,eAAe;QACpB,CAAC,IAAI,CAAC,gBAAgB;YACpB,CAAC,CAAC,IAAA,mCAAoB,EAAC;gBACnB,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,QAAQ;gBAC7C,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,OAAO;gBAChD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG;gBACxC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI;gBAClC,OAAO,EAAE,IAAA,uCAAwB,EAAC;oBAChC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY;oBAClC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;oBAC3C,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,eAAe;iBAChD,CAAC;gBACF,mBAAmB,EAAE,IAAI,CAAC,gBAAgB,CAAC,mBAAmB;aAC/D,CAAC;YACJ,CAAC,CAAC,SAAS,CAAC,CAAC;IACjB,IAAI,eAAe,EAAE,CAAC;QACpB,iFAAiF;QACjF,IAAA,uCAAwB,EACtB,eAAe,CAAC,4BAA4B,CAAC,WAAW,CACzD,CAAC;QACF,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO;YACP,GAAG,EAAE,IAAA,sCAAmB,EAAC,4BAAc,EAAE,WAAW,EAAE,CAAC,CAAC;YACxD,YAAY,EAAE,WAAoB;YAClC,IAAI,EAAE;gBACJ,QAAQ;gBACR,IAAI,CAAC,MAAM;gBACX,IAAI,CAAC,kBAAkB;gBACvB,IAAI,CAAC,YAAY;gBACjB,eAAe;gBACf,IAAI,CAAC,YAAY,IAAI,EAAE;aACf;YACV,KAAK;SACN,CAAC;IACJ,CAAC;IACD,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO;QACP,GAAG,EAAE,IAAA,sCAAmB,EAAC,4BAAc,EAAE,WAAW,EAAE,CAAC,CAAC;QACxD,YAAY,EAAE,WAAoB;QAClC,IAAI,EAAE;YACJ,QAAQ;YACR,IAAI,CAAC,MAAM;YACX,IAAI,CAAC,kBAAkB;YACvB,IAAI,CAAC,YAAY;SACT;QACV,KAAK;KACN,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,IAKhC;IACC,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO,EAAE,IAAA,oBAAS,EAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;QAC5C,GAAG,EAAE,yBAAW;QAChB,YAAY,EAAE,cAAuB;QACrC,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAU;KAC/D,CAAC;AACJ,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,oBAAoB,CACxC,MAAoB,EACpB,IAKC;IAED,OAAO,MAAM,CAAC,YAAY,CAAC;QACzB,OAAO,EAAE,IAAA,oBAAS,EAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;QAC5C,GAAG,EAAE,yBAAW;QAChB,YAAY,EAAE,mBAAmB;QACjC,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,eAAe,CACnC,MAAoB,EACpB,IAA8C;IAE9C,OAAO,MAAM,CAAC,YAAY,CAAC;QACzB,OAAO,EAAE,IAAA,oBAAS,EAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;QAC5C,GAAG,EAAE,yBAAW;QAChB,YAAY,EAAE,gBAAgB;QAC9B,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC;KACtB,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,gBAAgB,CACpC,MAAoB,EACpB,IAAiE;IAEjE,OAAO,MAAM,CAAC,YAAY,CAAC;QACzB,OAAO,EAAE,IAAA,oBAAS,EAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;QAC5C,GAAG,EAAE,yBAAW;QAChB,YAAY,EAAE,cAAc;QAC5B,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC;KACrC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,sBAAsB,CAC1C,MAAoB,EACpB,IAA8C;IAE9C,OAAO,MAAM,CAAC,YAAY,CAAC;QACzB,OAAO,EAAE,IAAA,oBAAS,EAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;QAC5C,GAAG,EAAE,yBAAW;QAChB,YAAY,EAAE,iBAAiB;QAC/B,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC;KACtB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,uBAAuB,CAAC,EACtC,cAAc,EACd,iBAAiB,GAAG,IAAI,EACxB,oBAAoB,GAAG,KAAK,EAC5B,cAAc,GAAG,KAAK,GAMvB;IACC,IAAI,cAAc,IAAI,oBAAoB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACjE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,cAAc,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACnD,OAAO,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;AACvC,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,0BAA0B,CACxC,YAAoB,EACpB,OAAgB;IAEhB,OAAO,OAAO,CAAC,CAAC,CAAC,IAAA,wBAAc,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;AAC/D,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,8BAA8B,CAClD,MAAoB,EACpB,IAAgE;IAEhE,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;QAC5C,OAAO,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAA,oBAAS,EAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;QAC7D,GAAG,EAAE,yBAAW;QAChB,YAAY,EAAE,eAAe;KAC9B,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;QACzC,OAAO,EAAE,IAAA,oBAAS,EAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC;QAC/C,GAAG,EAAE,4BAAc;QACnB,YAAY,EAAE,mBAAmB;QACjC,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC;KAChC,CAAC,CAAC;IACH,OAAO,QAAQ,KAAK,kBAAW,CAAC;AAClC,CAAC"}
@@ -123,6 +123,30 @@ export declare function resolveRouterPath(client: PublicClient, { chainId, proje
123
123
  chainId: JBChainId;
124
124
  projectId: bigint;
125
125
  }): Promise<ResolvedRouterPath>;
126
+ /** A project's router route, and whether its directory reaches it through the registry. */
127
+ export type ResolvedProjectRouterTerminal = ResolvedRouterPath & {
128
+ /** `registry`: the registry is one of the project's terminals. `direct`: a router or gateway is. */
129
+ via: "registry" | "direct" | "none";
130
+ };
131
+ /**
132
+ * The router route a project actually has, read from its own terminal list.
133
+ *
134
+ * `JBRouterTerminalRegistry.terminalOf` answers for every project, with a
135
+ * cohort default when nothing is pinned, so {@link resolveRouterPath} alone
136
+ * names a route for projects that never listed the registry. This reads
137
+ * `JBDirectory.terminalsOf` first:
138
+ *
139
+ * - the registry is listed: the registry's route (`via: "registry"`);
140
+ * - a gateway or router of any generation is listed instead: that terminal
141
+ * (`via: "direct"`), the first one in the project's own order;
142
+ * - neither: `unresolved` with `via: "none"`.
143
+ *
144
+ * RPC failures propagate to the caller.
145
+ */
146
+ export declare function resolveProjectRouterTerminal(client: PublicClient, { chainId, projectId, }: {
147
+ chainId: JBChainId;
148
+ projectId: bigint;
149
+ }): Promise<ResolvedProjectRouterTerminal>;
126
150
  /**
127
151
  * Read the accounting contexts (accepted tokens with their decimals and currencies)
128
152
  * registered for a project on the JBMultiTerminal.
@@ -1 +1 @@
1
- {"version":3,"file":"terminals.d.ts","sourceRoot":"","sources":["../../../src/v6/terminals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAe,MAAM,MAAM,CAAC;AAO1D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;;;;;;;;;OAaG;IACH,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,GAAG,CACrD;IACE,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,IAAI,CAAC;IACf,OAAO,EAAE,IAAI,CAAC;IACd,MAAM,EAAE,IAAI,CAAC;CACd,GACD;IACE,MAAM,EAAE,QAAQ,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,IAAI,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;CACjB,GACD;IACE,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;CACjB,GACD;IACE,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,IAAI,CAAC;IACd,MAAM,EAAE,IAAI,CAAC;CACd,CACJ,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,SAAS,EACT,KAAK,GACN,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;CAChB,GACA,OAAO,CAAC,uBAAuB,CAAC,CAgBlC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,SAAS,GACV,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,GACA,OAAO,CAAC,kBAAkB,CAAC,CAoD7B;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,SAAS,GACV,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,GACA,OAAO,CAAC,SAAS,mBAAmB,EAAE,CAAC,CAOzC"}
1
+ {"version":3,"file":"terminals.d.ts","sourceRoot":"","sources":["../../../src/v6/terminals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAe,MAAM,MAAM,CAAC;AAO1D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;;;;;;;;;OAaG;IACH,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,GAAG,CACrD;IACE,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,IAAI,CAAC;IACf,OAAO,EAAE,IAAI,CAAC;IACd,MAAM,EAAE,IAAI,CAAC;CACd,GACD;IACE,MAAM,EAAE,QAAQ,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,IAAI,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;CACjB,GACD;IACE,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;CACjB,GACD;IACE,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,IAAI,CAAC;IACd,MAAM,EAAE,IAAI,CAAC;CACd,CACJ,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,SAAS,EACT,KAAK,GACN,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;CAChB,GACA,OAAO,CAAC,uBAAuB,CAAC,CAgBlC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,SAAS,GACV,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,GACA,OAAO,CAAC,kBAAkB,CAAC,CAoB7B;AA4CD,2FAA2F;AAC3F,MAAM,MAAM,6BAA6B,GAAG,kBAAkB,GAAG;IAC/D,oGAAoG;IACpG,GAAG,EAAE,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;CACrC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,SAAS,GACV,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,GACA,OAAO,CAAC,6BAA6B,CAAC,CAkCxC;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,SAAS,GACV,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,GACA,OAAO,CAAC,SAAS,mBAAmB,EAAE,CAAC,CAOzC"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.resolvePaymentTerminal = resolvePaymentTerminal;
4
4
  exports.resolveRouterPath = resolveRouterPath;
5
+ exports.resolveProjectRouterTerminal = resolveProjectRouterTerminal;
5
6
  exports.getAccountingContexts = getAccountingContexts;
6
7
  const viem_1 = require("viem");
7
8
  const juicebox_js_1 = require("../generated/juicebox.js");
@@ -83,6 +84,10 @@ async function resolveRouterPath(client, { chainId, projectId, }) {
83
84
  router: null,
84
85
  };
85
86
  }
87
+ return routerPathOf(client, chainId, registry, terminal);
88
+ }
89
+ /** What a terminal on a router route is: a known gateway, a known router, or neither. */
90
+ async function routerPathOf(client, chainId, registry, terminal) {
86
91
  if ((0, types_js_1.isV6Deployment)(terminal, "JBRouterTerminalGateway", chainId)) {
87
92
  const router = await client.readContract({
88
93
  address: terminal,
@@ -114,6 +119,53 @@ async function resolveRouterPath(client, { chainId, projectId, }) {
114
119
  router: null,
115
120
  };
116
121
  }
122
+ /**
123
+ * The router route a project actually has, read from its own terminal list.
124
+ *
125
+ * `JBRouterTerminalRegistry.terminalOf` answers for every project, with a
126
+ * cohort default when nothing is pinned, so {@link resolveRouterPath} alone
127
+ * names a route for projects that never listed the registry. This reads
128
+ * `JBDirectory.terminalsOf` first:
129
+ *
130
+ * - the registry is listed: the registry's route (`via: "registry"`);
131
+ * - a gateway or router of any generation is listed instead: that terminal
132
+ * (`via: "direct"`), the first one in the project's own order;
133
+ * - neither: `unresolved` with `via: "none"`.
134
+ *
135
+ * RPC failures propagate to the caller.
136
+ */
137
+ async function resolveProjectRouterTerminal(client, { chainId, projectId, }) {
138
+ const registry = (0, types_js_1.v6Address)("JBRouterTerminalRegistry", chainId);
139
+ const terminals = await client.readContract({
140
+ address: (0, types_js_1.v6Address)("JBDirectory", chainId),
141
+ abi: juicebox_js_1.jbDirectoryAbi,
142
+ functionName: "terminalsOf",
143
+ args: [projectId],
144
+ });
145
+ const same = (a, b) => a.toLowerCase() === b.toLowerCase();
146
+ if (terminals.some((terminal) => same(terminal, registry))) {
147
+ return {
148
+ ...(await resolveRouterPath(client, { chainId, projectId })),
149
+ via: "registry",
150
+ };
151
+ }
152
+ const listed = terminals.find((terminal) => (0, types_js_1.isV6Deployment)(terminal, "JBRouterTerminalGateway", chainId) ||
153
+ (0, types_js_1.isV6Deployment)(terminal, "JBRouterTerminal", chainId));
154
+ if (!listed) {
155
+ return {
156
+ status: "unresolved",
157
+ registry,
158
+ terminal: null,
159
+ gateway: null,
160
+ router: null,
161
+ via: "none",
162
+ };
163
+ }
164
+ return {
165
+ ...(await routerPathOf(client, chainId, registry, listed)),
166
+ via: "direct",
167
+ };
168
+ }
117
169
  /**
118
170
  * Read the accounting contexts (accepted tokens with their decimals and currencies)
119
171
  * registered for a project on the JBMultiTerminal.
@@ -1 +1 @@
1
- {"version":3,"file":"terminals.js","sourceRoot":"","sources":["../../../src/v6/terminals.ts"],"names":[],"mappings":";;AA8GA,wDA2BC;AAsBD,8CA6DC;AAWD,sDAgBC;AAvPD,+BAA0D;AAC1D,0DAKkC;AAElC,yCAAuD;AA6EvD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACI,KAAK,UAAU,sBAAsB,CAC1C,MAAoB,EACpB,EACE,OAAO,EACP,SAAS,EACT,KAAK,GAKN;IAED,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;QAChD,OAAO,EAAE,IAAA,oBAAS,EAAC,aAAa,EAAE,OAAO,CAAC;QAC1C,GAAG,EAAE,4BAAc;QACnB,YAAY,EAAE,mBAAmB;QACjC,IAAI,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC;KACzB,CAAC,CAAC;IAEH,IAAI,eAAe,KAAK,kBAAW,EAAE,CAAC;QACpC,OAAO;YACL,OAAO,EAAE,IAAA,oBAAS,EAAC,0BAA0B,EAAE,OAAO,CAAC;YACvD,QAAQ,EAAE,IAAI;SACf,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AACvD,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACI,KAAK,UAAU,iBAAiB,CACrC,MAAoB,EACpB,EACE,OAAO,EACP,SAAS,GAIV;IAED,MAAM,QAAQ,GAAG,IAAA,oBAAS,EAAC,0BAA0B,EAAE,OAAO,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;QACzC,OAAO,EAAE,QAAQ;QACjB,GAAG,EAAE,yCAA2B;QAChC,YAAY,EAAE,YAAY;QAC1B,IAAI,EAAE,CAAC,SAAS,CAAC;KAClB,CAAC,CAAC;IAEH,IAAI,QAAQ,KAAK,kBAAW,EAAE,CAAC;QAC7B,OAAO;YACL,MAAM,EAAE,YAAY;YACpB,QAAQ;YACR,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;IAED,IAAI,IAAA,yBAAc,EAAC,QAAQ,EAAE,yBAAyB,EAAE,OAAO,CAAC,EAAE,CAAC;QACjE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;YACvC,OAAO,EAAE,QAAQ;YACjB,GAAG,EAAE,wCAA0B;YAC/B,YAAY,EAAE,QAAQ;SACvB,CAAC,CAAC;QAEH,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,QAAQ;YACR,QAAQ;YACR,OAAO,EAAE,QAAQ;YACjB,MAAM;SACP,CAAC;IACJ,CAAC;IAED,IAAI,IAAA,yBAAc,EAAC,QAAQ,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,CAAC;QAC1D,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,QAAQ;YACR,QAAQ;YACR,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,QAAQ;SACjB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,QAAQ;QACR,QAAQ;QACR,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,IAAI;KACb,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACI,KAAK,UAAU,qBAAqB,CACzC,MAAoB,EACpB,EACE,OAAO,EACP,SAAS,GAIV;IAED,OAAO,MAAM,CAAC,YAAY,CAAC;QACzB,OAAO,EAAE,IAAA,oBAAS,EAAC,iBAAiB,EAAE,OAAO,CAAC;QAC9C,GAAG,EAAE,gCAAkB;QACvB,YAAY,EAAE,sBAAsB;QACpC,IAAI,EAAE,CAAC,SAAS,CAAC;KAClB,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"terminals.js","sourceRoot":"","sources":["../../../src/v6/terminals.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"decode.d.ts","sourceRoot":"","sources":["../../../src/review/decode.ts"],"names":[],"mappings":"AAAA,OAAO,EAUL,KAAK,WAAW,EAKjB,MAAM,MAAM,CAAC;AA0Bd,OAAO,EAOL,KAAK,+BAA+B,EACrC,MAAM,iBAAiB,CAAC;AAKzB,OAAO,KAAK,EACV,qBAAqB,EACrB,wBAAwB,EACzB,MAAM,wBAAwB,CAAC;AAShC,iEAAiE;AACjE,MAAM,MAAM,UAAU,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAA;CAAE,CAAC;AA8DrE;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,EACd,UAAU,GAAE,SAAS,+BAA+B,EAAwC,GAC3F,MAAM,GAAG,IAAI,CAef;AAED,+DAA+D;AAC/D,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAGrE;AAED,2FAA2F;AAC3F,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAIvE;AAkBD;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,MAAM,GACd,MAAM,CAcR;AAED,4EAA4E;AAC5E,wBAAgB,UAAU,CACxB,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GACZ,OAAO,CAOT;AAED,6DAA6D;AAC7D,wBAAgB,WAAW,CAAC,KAAK,SAAK,GAAG,MAAM,CAE9C;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,CAAC,qBAAqB,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,cAAc,CAAC,GAC1E,WAAW,GAAG,IAAI,CAoBpB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,IAAI,CACX,wBAAwB,EACxB,OAAO,GAAG,aAAa,GAAG,MAAM,GAAG,YAAY,CAChD,GACA,MAAM,CAgBR;AAID,MAAM,MAAM,UAAU,GAClB;IACE,MAAM,EAAE,oBAAoB,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CACrD,GACD;IACE,MAAM,EAAE,oBAAoB,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CACtD,GACD;IACE,MAAM,EAAE,eAAe,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE;QACJ,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;QACZ,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CACrD,GACD;IACE,MAAM,EAAE,eAAe,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CACtD,GACD;IACE,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,GACD;IAAE,MAAM,EAAE,gBAAgB,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAyB7D;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,EAAE,GAAG,IAAI,CA0HxE;AA8CD;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAKzD;AAED,mGAAmG;AACnG,wBAAgB,WAAW,CACzB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE;IACN,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB,GACA,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAcpB;AA8GD;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,OAAO,EAAE,GAAG,SAAS,GACnC,UAAU,EAAE,GAAG,IAAI,CAgIrB;AA6FD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,KAAK,GAAG,SAAS,EAC1B,KAAK,EAAE,OAAO,GACb,UAAU,EAAE,GAAG,IAAI,CAiKrB;AAYD,8EAA8E;AAC9E,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,GACb,UAAU,EAAE,GAAG,IAAI,CAgDrB;AAyBD;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,OAAO,EACX,IAAI,EAAE,OAAO,EACb,UAAU,GAAE,SAAS,+BAA+B,EAAwC,GAC3F,UAAU,EAAE,GAAG,IAAI,CAoDrB;AAID,iFAAiF;AACjF,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,GACb,UAAU,EAAE,GAAG,IAAI,CAqErB;AAID,kFAAkF;AAClF,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,GACb,UAAU,EAAE,GAAG,IAAI,CA8CrB;AAkBD;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,EACd,UAAU,GAAE,SAAS,+BAA+B,EAAwC,GAC3F,UAAU,EAAE,GAAG,IAAI,CA4FrB"}
1
+ {"version":3,"file":"decode.d.ts","sourceRoot":"","sources":["../../../src/review/decode.ts"],"names":[],"mappings":"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"}
@@ -1114,6 +1114,12 @@ export function describeSplitGroups(chainId, value, collectors = STICKY_SOURCE_C
1114
1114
  (group.groupId !== 1n ||
1115
1115
  split.beneficiary.toLowerCase() === zeroAddress ||
1116
1116
  validateStickyGroupId(split.projectId) !== null);
1117
+ const hooked = typeof split.hook === "string" &&
1118
+ split.hook.toLowerCase() !== zeroAddress;
1119
+ // A hook with no project and no beneficiary is the split's only recipient.
1120
+ const hookOnly = hooked &&
1121
+ split.projectId === 0n &&
1122
+ split.beneficiary.toLowerCase() === zeroAddress;
1117
1123
  const parts = [
1118
1124
  collector
1119
1125
  ? collectorInvalid
@@ -1123,7 +1129,9 @@ export function describeSplitGroups(chainId, value, collectors = STICKY_SOURCE_C
1123
1129
  ? `${describeStickySplit({ projectId: split.projectId })} → Sticky token ${addressLabel(chainId, split.beneficiary)}`
1124
1130
  : split.projectId !== 0n
1125
1131
  ? `project #${split.projectId} (beneficiary ${split.beneficiary})`
1126
- : addressLabel(chainId, split.beneficiary),
1132
+ : hookOnly
1133
+ ? `hook ${addressLabel(chainId, split.hook)}`
1134
+ : addressLabel(chainId, split.beneficiary),
1127
1135
  ];
1128
1136
  if (collector) {
1129
1137
  parts.push(`via StickySourceCollector ${split.hook} (home chain ${collector.destinationChainId})`);
@@ -1131,8 +1139,7 @@ export function describeSplitGroups(chainId, value, collectors = STICKY_SOURCE_C
1131
1139
  else if (sticky) {
1132
1140
  parts.push(`via StickyDistributor ${split.hook}`);
1133
1141
  }
1134
- else if (typeof split.hook === "string" &&
1135
- split.hook.toLowerCase() !== zeroAddress) {
1142
+ else if (hooked && !hookOnly) {
1136
1143
  parts.push(`via hook ${split.hook}`);
1137
1144
  }
1138
1145
  if (split.preferAddToBalance === true) {
@@ -1 +1 @@
1
- {"version":3,"file":"decode.js","sourceRoot":"","sources":["../../../src/review/decode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decode.js","sourceRoot":"","sources":["../../../src/review/decode.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,11 @@ import { type ReviewedCall, type ReviewedResult, type ReviewedSendDeps } from ".
7
7
  * Proposes `calls` to `safe`'s owners through Safe's transaction service: one
8
8
  * zero-refund Safe transaction, a CALL for one call or a MultiSendCallOnly
9
9
  * batch for several, signed by the connected owner after one review. It takes
10
- * the nonce after everything already queued. A queued proposal of exactly
11
- * these calls is confirmed instead, or, when this owner already confirmed it,
12
- * returned as it is.
10
+ * the nonce after everything already queued, or `nonce`, one of
11
+ * `proposalNonceChoices`: a queued nonce offers this proposal as a replacement
12
+ * of what is queued there. A queued proposal of exactly these calls (at
13
+ * `nonce`, when given) is confirmed instead, or, when this owner already
14
+ * confirmed it, returned as it is.
13
15
  *
14
16
  * Mirrors jbm `src/lib/safe.ts` `runSafeCalls` (service path), `proposeSafeTx`
15
17
  * and `signSafeTx` (`:331-420`).
@@ -25,6 +27,8 @@ export declare function proposeReviewedSafeTransaction(input: {
25
27
  service?: SafeServiceOptions;
26
28
  /** A plan already reviewed with these calls from `safe` (`reviewPlan`): nothing is asked. */
27
29
  plan?: ReviewedPlan;
30
+ /** The Safe nonce to propose at, one of `proposalNonceChoices`. Default: the next free one. */
31
+ nonce?: number;
28
32
  }, deps: ReviewedSendDeps): Promise<{
29
33
  safeTxHash: Hex;
30
34
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"safeSend.d.ts","sourceRoot":"","sources":["../../../src/review/safeSend.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,OAAO,EACZ,KAAK,GAAG,EAET,MAAM,MAAM,CAAC;AAMd,OAAO,EAkBL,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACxB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACtB,MAAM,WAAW,CAAC;AAkInB;;;;;;;;;;GAUG;AACH,wBAAsB,8BAA8B,CAClD,KAAK,EAAE;IACL,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,6FAA6F;IAC7F,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB,EACD,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC;IAAE,UAAU,EAAE,GAAG,CAAA;CAAE,CAAC,CAuH9B;AAED;;;;;;;;GAQG;AACH,wBAAsB,8BAA8B,CAClD,KAAK,EAAE;IACL,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,qBAAqB,CAAC;IAC1B,OAAO,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACtC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,yGAAyG;IACzG,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB,EACD,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC;IAAE,UAAU,EAAE,GAAG,CAAA;CAAE,CAAC,CAE9B;AAmBD;;;;;;;;;;;GAWG;AACH,wBAAsB,8BAA8B,CAClD,KAAK,EAAE;IACL,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,qBAAqB,CAAC;IAC1B,OAAO,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAC;CACvC,EACD,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,cAAc,CAAC,CA4GzB"}
1
+ {"version":3,"file":"safeSend.d.ts","sourceRoot":"","sources":["../../../src/review/safeSend.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,OAAO,EACZ,KAAK,GAAG,EAET,MAAM,MAAM,CAAC;AAMd,OAAO,EAkBL,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACxB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACtB,MAAM,WAAW,CAAC;AAkInB;;;;;;;;;;;;GAYG;AACH,wBAAsB,8BAA8B,CAClD,KAAK,EAAE;IACL,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,6FAA6F;IAC7F,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,+FAA+F;IAC/F,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,EACD,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC;IAAE,UAAU,EAAE,GAAG,CAAA;CAAE,CAAC,CA4I9B;AAED;;;;;;;;GAQG;AACH,wBAAsB,8BAA8B,CAClD,KAAK,EAAE;IACL,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,qBAAqB,CAAC;IAC1B,OAAO,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACtC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,yGAAyG;IACzG,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB,EACD,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC;IAAE,UAAU,EAAE,GAAG,CAAA;CAAE,CAAC,CAE9B;AAmBD;;;;;;;;;;;GAWG;AACH,wBAAsB,8BAA8B,CAClD,KAAK,EAAE;IACL,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,qBAAqB,CAAC;IAC1B,OAAO,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAC;CACvC,EACD,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,cAAc,CAAC,CA4GzB"}
@@ -1,6 +1,6 @@
1
1
  import { decodeFunctionResult, encodeFunctionData, isAddressEqual, } from "viem";
2
2
  import { readAuthorityIdentity, readBoundedSafeNonce, } from "../safe.js";
3
- import { canonicalSafeTxHash, hasSafeService, listPendingSafeTransactions, nextProposalNonce, proposeSafeTransaction, readSafeTransaction, requireSafeExecutionSuccess, SAFE_EXEC_ABI, safeBatchProposalFor, safeExecutionArgs, safeProposalFor, safeTransactionHash, safeTransactionHasRefund, safeTransactionMatchesCall, safeTransactionMessage, submitSafeConfirmation, usableSafeConfirmations, } from "../safeService.js";
3
+ import { canonicalSafeTxHash, hasSafeService, listPendingSafeTransactions, proposalNonceChoices, proposeSafeTransaction, readSafeTransaction, requireSafeExecutionSuccess, SAFE_EXEC_ABI, safeBatchProposalFor, safeExecutionArgs, safeProposalFor, safeTransactionHash, safeTransactionHasRefund, safeTransactionMatchesCall, safeTransactionMessage, submitSafeConfirmation, usableSafeConfirmations, } from "../safeService.js";
4
4
  import { safeExecutionIntent } from "./intents.js";
5
5
  import { tell, waitForTrackedReceipt } from "./receipt.js";
6
6
  import { sendReviewed, } from "./send.js";
@@ -93,9 +93,11 @@ async function signAsOwner(input, deps) {
93
93
  * Proposes `calls` to `safe`'s owners through Safe's transaction service: one
94
94
  * zero-refund Safe transaction, a CALL for one call or a MultiSendCallOnly
95
95
  * batch for several, signed by the connected owner after one review. It takes
96
- * the nonce after everything already queued. A queued proposal of exactly
97
- * these calls is confirmed instead, or, when this owner already confirmed it,
98
- * returned as it is.
96
+ * the nonce after everything already queued, or `nonce`, one of
97
+ * `proposalNonceChoices`: a queued nonce offers this proposal as a replacement
98
+ * of what is queued there. A queued proposal of exactly these calls (at
99
+ * `nonce`, when given) is confirmed instead, or, when this owner already
100
+ * confirmed it, returned as it is.
99
101
  *
100
102
  * Mirrors jbm `src/lib/safe.ts` `runSafeCalls` (service path), `proposeSafeTx`
101
103
  * and `signSafeTx` (`:331-420`).
@@ -122,7 +124,13 @@ export async function proposeReviewedSafeTransaction(input, deps) {
122
124
  ? safeProposalFor(calls[0], nonce)
123
125
  : safeBatchProposalFor(calls, nonce);
124
126
  const shape = safeTransactionMessage(build(state.nonce));
125
- const queued = pending.find((tx) => safeTransactionMatchesCall(tx, shape));
127
+ const choices = proposalNonceChoices(state.nonce, pending);
128
+ if (input.nonce !== undefined && !choices.includes(input.nonce)) {
129
+ throw new Error(`Safe nonce ${input.nonce} is not available. Nothing was proposed; pick ${choices.join(", ")}.`);
130
+ }
131
+ const nonce = input.nonce ?? choices[choices.length - 1];
132
+ const queued = pending.find((tx) => safeTransactionMatchesCall(tx, shape) &&
133
+ (input.nonce === undefined || Number(tx.nonce) === nonce));
126
134
  if (queued) {
127
135
  const confirmed = usableSafeConfirmations(queued, state.identity.owners).some(({ owner }) => isAddressEqual(owner, account));
128
136
  if (confirmed) {
@@ -137,7 +145,10 @@ export async function proposeReviewedSafeTransaction(input, deps) {
137
145
  service,
138
146
  }, deps);
139
147
  }
140
- const nonce = nextProposalNonce(state.nonce, pending);
148
+ // What a chosen nonce knowingly replaces: anything queued there since is new.
149
+ const replaced = new Set(pending
150
+ .filter((other) => Number(other.nonce) === nonce)
151
+ .map((other) => other.safeTxHash));
141
152
  const tx = build(nonce);
142
153
  const safeTxHash = safeTransactionHash(chainId, safe, tx);
143
154
  const signature = await signAsOwner({
@@ -151,7 +162,7 @@ export async function proposeReviewedSafeTransaction(input, deps) {
151
162
  // Another proposal queued at this nonce meanwhile would be replaced by this one.
152
163
  beforePost: async () => {
153
164
  const since = await listPendingSafeTransactions(chainId, safe, state.nonce, service);
154
- if (since.some((other) => other.nonce === nonce)) {
165
+ if (since.some((other) => Number(other.nonce) === nonce && !replaced.has(other.safeTxHash))) {
155
166
  throw new Error(`Another proposal took Safe nonce ${nonce} during review. Nothing was proposed; review it again.`);
156
167
  }
157
168
  },