@bananapus/nana-sdk-core 6.5.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 (57) hide show
  1. package/dist/cjs/utils/hook.d.ts +13 -0
  2. package/dist/cjs/utils/hook.d.ts.map +1 -1
  3. package/dist/cjs/utils/hook.js +49 -0
  4. package/dist/cjs/utils/hook.js.map +1 -1
  5. package/dist/cjs/v6/cashOut.d.ts +5 -1
  6. package/dist/cjs/v6/cashOut.d.ts.map +1 -1
  7. package/dist/cjs/v6/cashOut.js +14 -2
  8. package/dist/cjs/v6/cashOut.js.map +1 -1
  9. package/dist/cjs/v6/index.d.ts +1 -0
  10. package/dist/cjs/v6/index.d.ts.map +1 -1
  11. package/dist/cjs/v6/index.js +1 -0
  12. package/dist/cjs/v6/index.js.map +1 -1
  13. package/dist/cjs/v6/permit2.d.ts +106 -1
  14. package/dist/cjs/v6/permit2.d.ts.map +1 -1
  15. package/dist/cjs/v6/permit2.js +150 -1
  16. package/dist/cjs/v6/permit2.js.map +1 -1
  17. package/dist/cjs/v6/projectHooks.d.ts +53 -0
  18. package/dist/cjs/v6/projectHooks.d.ts.map +1 -0
  19. package/dist/cjs/v6/projectHooks.js +203 -0
  20. package/dist/cjs/v6/projectHooks.js.map +1 -0
  21. package/dist/cjs/v6/revnets.d.ts +42 -0
  22. package/dist/cjs/v6/revnets.d.ts.map +1 -1
  23. package/dist/cjs/v6/revnets.js +60 -0
  24. package/dist/cjs/v6/revnets.js.map +1 -1
  25. package/dist/cjs/v6/terminals.d.ts +24 -0
  26. package/dist/cjs/v6/terminals.d.ts.map +1 -1
  27. package/dist/cjs/v6/terminals.js +52 -0
  28. package/dist/cjs/v6/terminals.js.map +1 -1
  29. package/dist/esm/utils/hook.d.ts +13 -0
  30. package/dist/esm/utils/hook.d.ts.map +1 -1
  31. package/dist/esm/utils/hook.js +48 -0
  32. package/dist/esm/utils/hook.js.map +1 -1
  33. package/dist/esm/v6/cashOut.d.ts +5 -1
  34. package/dist/esm/v6/cashOut.d.ts.map +1 -1
  35. package/dist/esm/v6/cashOut.js +14 -2
  36. package/dist/esm/v6/cashOut.js.map +1 -1
  37. package/dist/esm/v6/index.d.ts +1 -0
  38. package/dist/esm/v6/index.d.ts.map +1 -1
  39. package/dist/esm/v6/index.js +1 -0
  40. package/dist/esm/v6/index.js.map +1 -1
  41. package/dist/esm/v6/permit2.d.ts +106 -1
  42. package/dist/esm/v6/permit2.d.ts.map +1 -1
  43. package/dist/esm/v6/permit2.js +145 -0
  44. package/dist/esm/v6/permit2.js.map +1 -1
  45. package/dist/esm/v6/projectHooks.d.ts +53 -0
  46. package/dist/esm/v6/projectHooks.d.ts.map +1 -0
  47. package/dist/esm/v6/projectHooks.js +200 -0
  48. package/dist/esm/v6/projectHooks.js.map +1 -0
  49. package/dist/esm/v6/revnets.d.ts +42 -0
  50. package/dist/esm/v6/revnets.d.ts.map +1 -1
  51. package/dist/esm/v6/revnets.js +58 -1
  52. package/dist/esm/v6/revnets.js.map +1 -1
  53. package/dist/esm/v6/terminals.d.ts +24 -0
  54. package/dist/esm/v6/terminals.d.ts.map +1 -1
  55. package/dist/esm/v6/terminals.js +51 -0
  56. package/dist/esm/v6/terminals.js.map +1 -1
  57. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"permit2.js","sourceRoot":"","sources":["../../../src/v6/permit2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permit2.js","sourceRoot":"","sources":["../../../src/v6/permit2.ts"],"names":[],"mappings":";;;AAiFA,4CAoBC;AAGD,oDA4BC;AAGD,oEAkBC;AAGD,oDA6BC;AAMD,8DAaC;AAGD,oFAgBC;AA2BD,kEA4DC;AAUD,sDAoCC;AAuBD,0EAsBC;AAgCD,8DAgCC;AAjdD,+BAMc;AACd,kDAA+C;AAE/C,8CAAqE;AACrE,uEAGmC;AAEnC,mEAAmE;AACtD,QAAA,eAAe,GAAG,iDAAuB,CAAC;AAEvD,gFAAgF;AACnE,QAAA,UAAU,GAAG;IACxB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,WAAW;QACjB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;SACrC;QACD,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;SAClC;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE;SACvC;QACD,OAAO,EAAE,EAAE;KACZ;CACO,CAAC;AAEX,wEAAwE;AAC3D,QAAA,aAAa,GAAG;IAC3B,aAAa,EAAE;QACb,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;QAClC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;QACnC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE;QACtC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;KAClC;IACD,YAAY,EAAE;QACZ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE;QAC1C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;QACpC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;KACzC;CACO,CAAC;AAkBX,0EAA0E;AAC1E,SAAgB,gBAAgB,CAAC,aAA4C;IAC3E,OAAO;QACL,MAAM,EAAE;YACN,IAAI,EAAE,SAAkB;YACxB,OAAO,EAAE,aAAa,CAAC,OAAO;YAC9B,iBAAiB,EAAE,uBAAe;SACnC;QACD,KAAK,EAAE,qBAAa;QACpB,WAAW,EAAE,cAAuB;QACpC,OAAO,EAAE;YACP,OAAO,EAAE;gBACP,KAAK,EAAE,aAAa,CAAC,KAAK;gBAC1B,MAAM,EAAE,aAAa,CAAC,MAAM;gBAC5B,UAAU,EAAE,aAAa,CAAC,UAAU;gBACpC,KAAK,EAAE,aAAa,CAAC,KAAK;aAC3B;YACD,OAAO,EAAE,aAAa,CAAC,OAAO;YAC9B,WAAW,EAAE,aAAa,CAAC,WAAW;SACvC;KACF,CAAC;AACJ,CAAC;AAED,qFAAqF;AAC9E,KAAK,UAAU,oBAAoB,CACxC,MAAoB,EACpB,EACE,OAAO,EACP,KAAK,EACL,KAAK,EACL,OAAO,GAMR;IAED,MAAM,eAAe,GACnB,OAAO,IAAI,IAAA,6CAAmB,EAAC,OAAO,CAAC,EAAE,eAAe,CAAC;IAC3D,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CACb,kDAAkD,OAAO,GAAG,CAC7D,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;QAC5D,OAAO,EAAE,uBAAe;QACxB,GAAG,EAAE,kBAAU;QACf,YAAY,EAAE,WAAW;QACzB,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC;KACtC,CAAC,CAAC;IACH,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;AACvC,CAAC;AAED,6EAA6E;AAC7E,SAAgB,4BAA4B,CAAC,EAC3C,SAAS,EACT,MAAM,EACN,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,EACnC,uBAAuB,GAAG,KAAK,GAMhC;IACC,IAAI,uBAAuB,GAAG,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,CACL,SAAS,CAAC,MAAM,GAAG,MAAM;QACzB,SAAS,CAAC,UAAU,IAAI,GAAG,GAAG,uBAAuB,CACtD,CAAC;AACJ,CAAC;AAED,uFAAuF;AAChF,KAAK,UAAU,oBAAoB,CAAC,EACzC,MAAM,EACN,OAAO,EACP,KAAK,EACL,KAAK,EACL,MAAM,EACN,GAAG,EACH,uBAAuB,GASxB;IACC,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,2BAAY,CAAC,WAAW,EAAE;QAAE,OAAO,KAAK,CAAC;IACrE,MAAM,SAAS,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE;QACnD,OAAO;QACP,KAAK;QACL,KAAK;KACN,CAAC,CAAC;IACH,OAAO,4BAA4B,CAAC;QAClC,SAAS;QACT,MAAM;QACN,GAAG;QACH,uBAAuB;KACxB,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAgB,yBAAyB,CAAC,EACxC,aAAa,EACb,mBAAmB,EACnB,cAAc,EACd,MAAM,GAMP;IACC,MAAM,UAAU,GAAG,CAAC,CAAC,cAAc,IAAI,cAAc,KAAK,IAAI,CAAC;IAC/D,OAAO,aAAa,IAAI,mBAAmB,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC;AACxE,CAAC;AAED,kFAAkF;AAClF,SAAgB,oCAAoC,CAAC,KAAc;IACjE,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,OAAO,GAAY,KAAK,CAAC;IAC7B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,OAAO,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,IAAI,OAAO,OAAO,KAAK,QAAQ;YAAE,MAAM;QACvC,MAAM,KAAK,GAAG,OAAkC,CAAC;QACjD,KAAK,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC;YACjE,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS;gBAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC;IACxB,CAAC;IACD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9C,IAAI,gDAAgD,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9E,OAAO,+IAA+I,CAAC,IAAI,CACzJ,IAAI,CACL,CAAC;AACJ,CAAC;AAED,iFAAiF;AACpE,QAAA,iCAAiC,GAAG,KAAK,CAAC;AAEvD,MAAM,WAAW,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;AAYtC;;;;;;;;;GASG;AACI,KAAK,UAAU,2BAA2B,CAC/C,MAAoB,EACpB,EACE,OAAO,EACP,KAAK,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,WAAW,GASZ;IAED,IAAI,MAAM,IAAI,EAAE,IAAI,MAAM,GAAG,WAAW,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IACD,MAAM,YAAY,GAAG,CAAC,OAAgB,EAAE,EAAE,CACxC,MAAM,CAAC,YAAY,CAAC;QAClB,OAAO,EAAE,KAAK;QACd,GAAG,EAAE,eAAQ;QACb,YAAY,EAAE,WAAW;QACzB,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC;QACtB,WAAW;KACZ,CAAC,CAAC;IACL,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,AAAD,EAAG,KAAK,CAAC,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACnE,YAAY,CAAC,KAAK,CAAC;QACnB,YAAY,CAAC,uBAAe,CAAC;QAC7B,MAAM,CAAC,YAAY,CAAC;YAClB,OAAO,EAAE,uBAAe;YACxB,GAAG,EAAE,kBAAU;YACf,YAAY,EAAE,WAAW;YACzB,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;YAC3B,WAAW;SACZ,CAAC;QACF,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;KACxC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACpC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IACD,MAAM,QAAQ,GAAG,GAAG,GAAG,yCAAiC,CAAC;IACzD,OAAO;QACL,MAAM,EAAE,MAAM,IAAI,MAAM;QACxB,kBAAkB,EAAE,YAAY,GAAG,MAAM;QACzC,aAAa,EAAE;YACb,OAAO;YACP,KAAK;YACL,OAAO,EAAE,KAAK;YACd,MAAM;YACN,UAAU,EAAE,QAAQ;YACpB,KAAK;YACL,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC;SAC9B;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,qBAAqB,CAAC,EACpC,QAAQ,EACR,aAAa,EACb,SAAS,GAKV;IACC,OAAO,IAAA,2BAAiB,EACtB,QAAQ,EACR,IAAA,wBAAc,EAAC,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,EAChD,IAAA,0BAAmB,EACjB;QACE;YACE,IAAI,EAAE,OAAO;YACb,UAAU,EAAE;gBACV,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;gBACxC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;gBACnC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACtC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACjC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE;aACrC;SACF;KACF,EACD;QACE;YACE,WAAW,EAAE,aAAa,CAAC,WAAW;YACtC,MAAM,EAAE,aAAa,CAAC,MAAM;YAC5B,UAAU,EAAE,aAAa,CAAC,UAAU;YACpC,KAAK,EAAE,aAAa,CAAC,KAAK;YAC1B,SAAS;SACV;KACF,CACF,CACF,CAAC;AACJ,CAAC;AAUD,6EAA6E;AAC7E,MAAM,gCAAgC,GAAG,GAAG,CAAC;AAE7C;;;;;;;;;GASG;AACH,SAAgB,+BAA+B,CAC7C,MAAwD,EACxD,KAAoC,EACpC,KAAc;IAEd,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1B,MAAM,GAAG,GAAG,MAAM,CAAC,aAAa,CAAC;IACjC,OAAO,CACL,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE;QAClD,GAAG,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;QAC7B,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE;QACrD,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE;QACzD,GAAG,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAC3B,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK;QACzB,sEAAsE;QACtE,8CAA8C;QAC9C,GAAG,CAAC,WAAW;YACb,KAAK,CAAC,WAAW;gBACf,MAAM,CACJ,yCAAiC,GAAG,gCAAgC,CACrE,CACN,CAAC;AACJ,CAAC;AAsBD;;;;;;;;;GASG;AACI,KAAK,UAAU,yBAAyB,CAC7C,MAAoB,EACpB,EACE,MAAM,EACN,GAAG,IAAI,EASR;IAED,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC/C,2BAA2B,CAAC,MAAM,EAAE,IAAI,CAAC;QACzC,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;KACxC,CAAC,CAAC;IACH,IAAI,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACzC,OAAO,yBAAyB,CAAC;QAC/B,aAAa,EAAE,IAAI;QACnB,mBAAmB,EAAE,IAAI;QACzB,cAAc;QACd,MAAM;KACP,CAAC;QACA,CAAC,CAAC;YACE,IAAI,EAAE,SAAS;YACf,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC;QACH,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;AACpE,CAAC"}
@@ -0,0 +1,53 @@
1
+ import { type Address, type PublicClient } from "viem";
2
+ import type { JBChainId } from "../types.js";
3
+ /** Where a project's buyback hook was found. */
4
+ export type ProjectBuybackHookSource =
5
+ /** The ruleset's data hook is the buyback registry. */
6
+ "registry"
7
+ /** The data hook is a revnet's owner contract, which forwards to its registry. */
8
+ | "revnet"
9
+ /** The data hook is the omnichain deployer, which forwards to the project's extra hook. */
10
+ | "omnichain"
11
+ /** The data hook is a buyback hook itself. */
12
+ | "direct"
13
+ /** The ruleset calls no buyback hook in this direction. */
14
+ | "none";
15
+ export interface ResolvedProjectBuybackHook {
16
+ /** The buyback hook the project's current ruleset reaches, or null. */
17
+ hook: Address | null;
18
+ via: ProjectBuybackHookSource;
19
+ /** The current ruleset's data hook, or the zero address. */
20
+ dataHook: Address;
21
+ rulesetId: bigint;
22
+ /** The registry that resolved `hook`, when one did. */
23
+ registry: Address | null;
24
+ }
25
+ /**
26
+ * The buyback hook a project's current ruleset actually calls when it is paid
27
+ * or cashed out, found the way the contracts find it: through the ruleset's
28
+ * data hook.
29
+ *
30
+ * `JBBuybackHookRegistry.hookOf` answers for every project, with a cohort
31
+ * default when nothing is pinned, so reading it alone names a hook for
32
+ * projects whose rulesets never call one. This follows the data hook instead:
33
+ *
34
+ * - the registry itself: its `hookOf`;
35
+ * - a revnet's `REVOwner`: its own `BUYBACK_HOOK()` registry, then `hookOf`;
36
+ * - `JBOmnichainDeployer`: the project's extra data hook for this ruleset,
37
+ * when it is used in this direction, resolved by the rules above. On cash
38
+ * out the deployer skips the extra hook when the project's 721 hook handles
39
+ * cash outs;
40
+ * - a buyback hook of any generation: that hook;
41
+ * - anything else, no data hook, or the direction's use flag off: none.
42
+ *
43
+ * A failed read throws: "no hook" is an answer, never a guess.
44
+ *
45
+ * @link https://github.com/Bananapus/nana-omnichain-deployers-v6/blob/main/src/JBOmnichainDeployer.sol
46
+ * @link https://github.com/rev-net/revnet-core-v6/blob/main/src/REVOwner.sol
47
+ */
48
+ export declare function resolveProjectBuybackHook(client: PublicClient, { chainId, projectId, direction, }: {
49
+ chainId: JBChainId;
50
+ projectId: bigint;
51
+ direction?: "pay" | "cashOut";
52
+ }): Promise<ResolvedProjectBuybackHook>;
53
+ //# sourceMappingURL=projectHooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectHooks.d.ts","sourceRoot":"","sources":["../../../src/v6/projectHooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAA2B,MAAM,MAAM,CAAC;AAChF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAwG7C,gDAAgD;AAChD,MAAM,MAAM,wBAAwB;AAClC,uDAAuD;AACrD,UAAU;AACZ,kFAAkF;GAChF,QAAQ;AACV,2FAA2F;GACzF,WAAW;AACb,8CAA8C;GAC5C,QAAQ;AACV,2DAA2D;GACzD,MAAM,CAAC;AAEX,MAAM,WAAW,0BAA0B;IACzC,uEAAuE;IACvE,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IACrB,GAAG,EAAE,wBAAwB,CAAC;IAC9B,4DAA4D;IAC5D,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,SAAS,EACT,SAAiB,GAClB,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;CAC/B,GACA,OAAO,CAAC,0BAA0B,CAAC,CAwGrC"}
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveProjectBuybackHook = resolveProjectBuybackHook;
4
+ const viem_1 = require("viem");
5
+ const types_js_1 = require("./types.js");
6
+ // Only the reads below: the full ABIs would weigh on every card that asks.
7
+ const hookConfig = [
8
+ { name: "dataHook", type: "address" },
9
+ { name: "useDataHookForPay", type: "bool" },
10
+ { name: "useDataHookForCashOut", type: "bool" },
11
+ ];
12
+ const projectHooksAbi = [
13
+ {
14
+ type: "function",
15
+ name: "controllerOf",
16
+ stateMutability: "view",
17
+ inputs: [{ name: "projectId", type: "uint256" }],
18
+ outputs: [{ name: "", type: "address" }],
19
+ },
20
+ {
21
+ type: "function",
22
+ name: "currentRulesetOf",
23
+ stateMutability: "view",
24
+ inputs: [{ name: "projectId", type: "uint256" }],
25
+ outputs: [
26
+ {
27
+ name: "ruleset",
28
+ type: "tuple",
29
+ components: [
30
+ { name: "cycleNumber", type: "uint48" },
31
+ { name: "id", type: "uint48" },
32
+ { name: "basedOnId", type: "uint48" },
33
+ { name: "start", type: "uint48" },
34
+ { name: "duration", type: "uint32" },
35
+ { name: "weight", type: "uint112" },
36
+ { name: "weightCutPercent", type: "uint32" },
37
+ { name: "approvalHook", type: "address" },
38
+ { name: "metadata", type: "uint256" },
39
+ ],
40
+ },
41
+ {
42
+ name: "metadata",
43
+ type: "tuple",
44
+ components: [
45
+ { name: "reservedPercent", type: "uint16" },
46
+ { name: "cashOutTaxRate", type: "uint16" },
47
+ { name: "baseCurrency", type: "uint32" },
48
+ { name: "pausePay", type: "bool" },
49
+ { name: "pauseCreditTransfers", type: "bool" },
50
+ { name: "allowOwnerMinting", type: "bool" },
51
+ { name: "allowSetCustomToken", type: "bool" },
52
+ { name: "allowTerminalMigration", type: "bool" },
53
+ { name: "allowSetTerminals", type: "bool" },
54
+ { name: "allowSetController", type: "bool" },
55
+ { name: "allowAddAccountingContext", type: "bool" },
56
+ { name: "allowAddPriceFeed", type: "bool" },
57
+ { name: "ownerMustSendPayouts", type: "bool" },
58
+ { name: "holdFees", type: "bool" },
59
+ { name: "scopeCashOutsToLocalBalances", type: "bool" },
60
+ { name: "useDataHookForPay", type: "bool" },
61
+ { name: "useDataHookForCashOut", type: "bool" },
62
+ { name: "dataHook", type: "address" },
63
+ { name: "metadata", type: "uint16" },
64
+ ],
65
+ },
66
+ ],
67
+ },
68
+ {
69
+ type: "function",
70
+ name: "extraDataHookOf",
71
+ stateMutability: "view",
72
+ inputs: [
73
+ { name: "projectId", type: "uint256" },
74
+ { name: "rulesetId", type: "uint256" },
75
+ ],
76
+ outputs: [{ name: "hook", type: "tuple", components: hookConfig }],
77
+ },
78
+ {
79
+ type: "function",
80
+ name: "tiered721HookOf",
81
+ stateMutability: "view",
82
+ inputs: [
83
+ { name: "projectId", type: "uint256" },
84
+ { name: "rulesetId", type: "uint256" },
85
+ ],
86
+ outputs: [
87
+ { name: "hook", type: "address" },
88
+ { name: "useDataHookForCashOut", type: "bool" },
89
+ ],
90
+ },
91
+ {
92
+ type: "function",
93
+ name: "BUYBACK_HOOK",
94
+ stateMutability: "view",
95
+ inputs: [],
96
+ outputs: [{ name: "", type: "address" }],
97
+ },
98
+ {
99
+ type: "function",
100
+ name: "hookOf",
101
+ stateMutability: "view",
102
+ inputs: [{ name: "projectId", type: "uint256" }],
103
+ outputs: [{ name: "", type: "address" }],
104
+ },
105
+ ];
106
+ /**
107
+ * The buyback hook a project's current ruleset actually calls when it is paid
108
+ * or cashed out, found the way the contracts find it: through the ruleset's
109
+ * data hook.
110
+ *
111
+ * `JBBuybackHookRegistry.hookOf` answers for every project, with a cohort
112
+ * default when nothing is pinned, so reading it alone names a hook for
113
+ * projects whose rulesets never call one. This follows the data hook instead:
114
+ *
115
+ * - the registry itself: its `hookOf`;
116
+ * - a revnet's `REVOwner`: its own `BUYBACK_HOOK()` registry, then `hookOf`;
117
+ * - `JBOmnichainDeployer`: the project's extra data hook for this ruleset,
118
+ * when it is used in this direction, resolved by the rules above. On cash
119
+ * out the deployer skips the extra hook when the project's 721 hook handles
120
+ * cash outs;
121
+ * - a buyback hook of any generation: that hook;
122
+ * - anything else, no data hook, or the direction's use flag off: none.
123
+ *
124
+ * A failed read throws: "no hook" is an answer, never a guess.
125
+ *
126
+ * @link https://github.com/Bananapus/nana-omnichain-deployers-v6/blob/main/src/JBOmnichainDeployer.sol
127
+ * @link https://github.com/rev-net/revnet-core-v6/blob/main/src/REVOwner.sol
128
+ */
129
+ async function resolveProjectBuybackHook(client, { chainId, projectId, direction = "pay", }) {
130
+ const read = (address, functionName, args = []) => client.readContract({
131
+ address,
132
+ abi: projectHooksAbi,
133
+ functionName,
134
+ args,
135
+ });
136
+ const used = (hook) => direction === "pay" ? hook.useDataHookForPay : hook.useDataHookForCashOut;
137
+ const is = (address, contract) => (0, types_js_1.isV6Deployment)(address, contract, chainId);
138
+ const controller = (await read((0, types_js_1.v6Address)("JBDirectory", chainId), "controllerOf", [projectId]));
139
+ const none = (dataHook, rulesetId) => ({
140
+ hook: null,
141
+ via: "none",
142
+ dataHook,
143
+ rulesetId,
144
+ registry: null,
145
+ });
146
+ if (controller === viem_1.zeroAddress)
147
+ return none(viem_1.zeroAddress, 0n);
148
+ const [ruleset, metadata] = (await read(controller, "currentRulesetOf", [
149
+ projectId,
150
+ ]));
151
+ const rulesetId = BigInt(ruleset.id);
152
+ const dataHook = (0, viem_1.getAddress)(metadata.dataHook);
153
+ /** The buyback hook behind one data hook, without unwrapping the omnichain deployer. */
154
+ const behind = async (hook) => {
155
+ if (is(hook, "JBBuybackHook")) {
156
+ return { hook, via: "direct", registry: null };
157
+ }
158
+ const revnet = is(hook, "REVOwner");
159
+ if (!revnet && !is(hook, "JBBuybackHookRegistry")) {
160
+ return { hook: null, via: "none", registry: null };
161
+ }
162
+ const registry = revnet
163
+ ? (0, viem_1.getAddress)((await read(hook, "BUYBACK_HOOK")))
164
+ : hook;
165
+ const resolved = (await read(registry, "hookOf", [projectId]));
166
+ return {
167
+ hook: resolved === viem_1.zeroAddress ? null : (0, viem_1.getAddress)(resolved),
168
+ via: revnet ? "revnet" : "registry",
169
+ registry,
170
+ };
171
+ };
172
+ if (dataHook === viem_1.zeroAddress || !used(metadata)) {
173
+ return none(dataHook, rulesetId);
174
+ }
175
+ if (!is(dataHook, "JBOmnichainDeployer")) {
176
+ return { ...(await behind(dataHook)), dataHook, rulesetId };
177
+ }
178
+ if (direction === "cashOut") {
179
+ const [hook721, handlesCashOut] = (await read(dataHook, "tiered721HookOf", [
180
+ projectId,
181
+ rulesetId,
182
+ ]));
183
+ if (hook721 !== viem_1.zeroAddress && handlesCashOut) {
184
+ return none(dataHook, rulesetId);
185
+ }
186
+ }
187
+ const extra = (await read(dataHook, "extraDataHookOf", [
188
+ projectId,
189
+ rulesetId,
190
+ ]));
191
+ if (extra.dataHook === viem_1.zeroAddress || !used(extra)) {
192
+ return none(dataHook, rulesetId);
193
+ }
194
+ const found = await behind((0, viem_1.getAddress)(extra.dataHook));
195
+ return {
196
+ ...found,
197
+ // The deployer is how the hook is reached; the registry field still names what resolved it.
198
+ via: found.hook ? "omnichain" : "none",
199
+ dataHook,
200
+ rulesetId,
201
+ };
202
+ }
203
+ //# sourceMappingURL=projectHooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectHooks.js","sourceRoot":"","sources":["../../../src/v6/projectHooks.ts"],"names":[],"mappings":";;AAwJA,8DAmHC;AA3QD,+BAAgF;AAEhF,yCAAuD;AAEvD,2EAA2E;AAC3E,MAAM,UAAU,GAAG;IACjB,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;IACrC,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE;IAC3C,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,MAAM,EAAE;CACvC,CAAC;AACX,MAAM,eAAe,GAAG;IACtB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,cAAc;QACpB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAChD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,kBAAkB;QACxB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAChD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACvC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC9B,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACrC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACjC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;oBACnC,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5C,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;oBACzC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;iBACtC;aACF;YACD;gBACE,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC3C,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC1C,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;oBAClC,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,MAAM,EAAE;oBAC9C,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE;oBAC3C,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,MAAM,EAAE;oBAC7C,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,MAAM,EAAE;oBAChD,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE;oBAC3C,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,MAAM,EAAE;oBAC5C,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,MAAM,EAAE;oBACnD,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE;oBAC3C,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,MAAM,EAAE;oBAC9C,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;oBAClC,EAAE,IAAI,EAAE,8BAA8B,EAAE,IAAI,EAAE,MAAM,EAAE;oBACtD,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE;oBAC3C,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,MAAM,EAAE;oBAC/C,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;oBACrC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE;iBACrC;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,iBAAiB;QACvB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;YACtC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;SACvC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;KACnE;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,iBAAiB;QACvB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;YACtC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;SACvC;QACD,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE;YACjC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,MAAM,EAAE;SAChD;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,cAAc;QACpB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAChD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;CACO,CAAC;AA0BX;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACI,KAAK,UAAU,yBAAyB,CAC7C,MAAoB,EACpB,EACE,OAAO,EACP,SAAS,EACT,SAAS,GAAG,KAAK,GAKlB;IAED,MAAM,IAAI,GAAG,CACX,OAAgB,EAChB,YAAkB,EAClB,OAA0B,EAAE,EAC5B,EAAE,CACF,MAAM,CAAC,YAAY,CAAC;QAClB,OAAO;QACP,GAAG,EAAE,eAAe;QACpB,YAAY;QACZ,IAAI;KACI,CAAqB,CAAC;IAClC,MAAM,IAAI,GAAG,CAAC,IAGb,EAAE,EAAE,CACH,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC;IAC5E,MAAM,EAAE,GAAG,CACT,OAAgB,EAChB,QAA8C,EAC9C,EAAE,CAAC,IAAA,yBAAc,EAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEhD,MAAM,UAAU,GAAG,CAAC,MAAM,IAAI,CAC5B,IAAA,oBAAS,EAAC,aAAa,EAAE,OAAO,CAAC,EACjC,cAAc,EACd,CAAC,SAAS,CAAC,CACZ,CAAY,CAAC;IACd,MAAM,IAAI,GAAG,CAAC,QAAiB,EAAE,SAAiB,EAAE,EAAE,CAAC,CAAC;QACtD,IAAI,EAAE,IAAI;QACV,GAAG,EAAE,MAAe;QACpB,QAAQ;QACR,SAAS;QACT,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IACH,IAAI,UAAU,KAAK,kBAAW;QAAE,OAAO,IAAI,CAAC,kBAAW,EAAE,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,kBAAkB,EAAE;QACtE,SAAS;KACV,CAAC,CAOD,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,IAAA,iBAAU,EAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAE/C,wFAAwF;IACxF,MAAM,MAAM,GAAG,KAAK,EAClB,IAAa,EAC2D,EAAE;QAC1E,IAAI,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,EAAE,CAAC;YAC9B,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACjD,CAAC;QACD,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,uBAAuB,CAAC,EAAE,CAAC;YAClD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACrD,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM;YACrB,CAAC,CAAC,IAAA,iBAAU,EAAC,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAY,CAAC;YAC3D,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAY,CAAC;QAC1E,OAAO;YACL,IAAI,EAAE,QAAQ,KAAK,kBAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,iBAAU,EAAC,QAAQ,CAAC;YAC5D,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU;YACnC,QAAQ;SACT,CAAC;IACJ,CAAC,CAAC;IAEF,IAAI,QAAQ,KAAK,kBAAW,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACnC,CAAC;IACD,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,qBAAqB,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,GAAG,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC9D,CAAC;IACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,iBAAiB,EAAE;YACzE,SAAS;YACT,SAAS;SACV,CAAC,CAAuB,CAAC;QAC1B,IAAI,OAAO,KAAK,kBAAW,IAAI,cAAc,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,iBAAiB,EAAE;QACrD,SAAS;QACT,SAAS;KACV,CAAC,CAID,CAAC;IACF,IAAI,KAAK,CAAC,QAAQ,KAAK,kBAAW,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACnC,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAA,iBAAU,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvD,OAAO;QACL,GAAG,KAAK;QACR,4FAA4F;QAC5F,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM;QACtC,QAAQ;QACR,SAAS;KACV,CAAC;AACJ,CAAC"}
@@ -4483,5 +4483,47 @@ export declare function getRevnetTiered721Hook(client: PublicClient, args: {
4483
4483
  chainId: JBChainId;
4484
4484
  revnetId: bigint;
4485
4485
  }): Promise<Address>;
4486
+ /**
4487
+ * Whether a revnet takes its 2.5% fee from a cash out, as
4488
+ * `REVOwner.beforeCashOutRecordedWith` decides it. The fee is skipped when the
4489
+ * ruleset's cash out tax rate is zero, when the fee revnet has no primary
4490
+ * terminal for the reclaimed token, when the beneficiary is feeless, and for a
4491
+ * sucker moving tokens between chains.
4492
+ *
4493
+ * `undefined` while the tax rate is unknown: an unknown fee is not shown as
4494
+ * either extreme. This answers for revnets only; a project whose data hook is
4495
+ * not a `REVOwner` pays no such fee.
4496
+ *
4497
+ * @param args.feeTerminalExists From {@link revnetCashOutFeeTerminalExists}.
4498
+ * Defaults to true, the deployed fee revnet's state for the tokens it accepts.
4499
+ * @link https://github.com/rev-net/revnet-core-v6/blob/main/src/REVOwner.sol (`beforeCashOutRecordedWith`)
4500
+ */
4501
+ export declare function revnetCashOutFeeApplies({ cashOutTaxRate, feeTerminalExists, beneficiaryIsFeeless, holderIsSucker, }: {
4502
+ cashOutTaxRate: bigint | number | undefined;
4503
+ feeTerminalExists?: boolean;
4504
+ beneficiaryIsFeeless?: boolean;
4505
+ holderIsSucker?: boolean;
4506
+ }): boolean | undefined;
4507
+ /**
4508
+ * The token count a revnet cash out reclaims against once its fee is taken:
4509
+ * `count - count / 40`, the contract's own rounding. The other fortieth is
4510
+ * cashed out for the fee revnet. The terminal's protocol fee then comes out of
4511
+ * what this count reclaims (see `cashOutProtocolFee`).
4512
+ *
4513
+ * @param applies From {@link revnetCashOutFeeApplies}, once it is known; false returns the count unchanged.
4514
+ */
4515
+ export declare function cashOutCountAfterRevnetFee(cashOutCount: bigint, applies: boolean): bigint;
4516
+ /**
4517
+ * Whether the fee revnet can be paid in `token`: `REVOwner` charges its cash
4518
+ * out fee only when `JBDirectory.primaryTerminalOf(FEE_REVNET_ID, token)` is set.
4519
+ *
4520
+ * @param args.revOwner The revnet's data hook. Defaults to the current `REVOwner`.
4521
+ * @param args.token The token the cash out reclaims.
4522
+ */
4523
+ export declare function revnetCashOutFeeTerminalExists(client: PublicClient, args: {
4524
+ chainId: JBChainId;
4525
+ token: Address;
4526
+ revOwner?: Address;
4527
+ }): Promise<boolean>;
4486
4528
  export {};
4487
4529
  //# sourceMappingURL=revnets.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"revnets.d.ts","sourceRoot":"","sources":["../../../src/v6/revnets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACnE,OAAO,EAAE,cAAc,EAAe,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAGL,KAAK,4BAA4B,EAClC,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAIrD,KAAK,aAAa,GAAG,oBAAoB,CACvC,OAAO,cAAc,EACrB,SAAS,EACT,WAAW,CACZ,CAAC;AAEF,KAAK,cAAc,GAAG,OAAO,CAC3B,aAAa,EACb,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAChE,CAAC;AAEF,KAAK,cAAc,GAAG,OAAO,CAC3B,aAAa,EACb,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAC9C,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;AAE1C;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,CAAC,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;AAE5D;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D;;;;;;GAMG;AACH,eAAO,MAAM,oCAAoC,QAAS,CAAC;AAE3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC3C,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,GAAG,cAAc,CAgBjB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,OAAO,EAAE,SAAS,CAAC;IACnB,MAAM,EAAE,SAAS,CAAC;IAClB,kBAAkB,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACnD,YAAY,EAAE,yBAAyB,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,2BAA2B,CAAC;IAC9C,mFAAmF;IACnF,gBAAgB,CAAC,EAAE;QACjB,mBAAmB,EAAE,4BAA4B,CAAC;QAClD,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,YAAY,CAAC,EAAE,SAAS,qBAAqB,EAAE,CAAC;CACjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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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":"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"}
@@ -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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"}
@@ -34,4 +34,17 @@ export declare function hookMetadataId(target: Address, purpose: string): Hex;
34
34
  * @link https://github.com/Bananapus/nana-core-v6/blob/main/src/libraries/JBMetadataResolver.sol (`createMetadata`)
35
35
  */
36
36
  export declare function createHookMetadata(ids: string[], metadatas: string[]): Hex;
37
+ /**
38
+ * Add one `{id: data}` entry to packed hook metadata, as
39
+ * `JBMetadataResolver.addToMetadata` does: the existing entries keep their
40
+ * order and payloads, and the lookup table is rebuilt with the new one last.
41
+ * Every payload must be whole words, as {@link createHookMetadata} packs them:
42
+ * a last payload that is not cannot be told from one that was cut off.
43
+ *
44
+ * @param metadata Packed metadata from {@link createHookMetadata}, or `0x`.
45
+ * @param id The 4-byte lookup id, from {@link hookMetadataId}.
46
+ * @param data The payload for `id`.
47
+ * @link https://github.com/Bananapus/nana-core-v6/blob/main/src/libraries/JBMetadataResolver.sol (`addToMetadata`)
48
+ */
49
+ export declare function addToHookMetadata(metadata: string | undefined, id: string, data: string): Hex;
37
50
  //# sourceMappingURL=hook.d.ts.map