@bananapus/nana-sdk-core 2.17.0 → 2.19.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 (245) hide show
  1. package/dist/cjs/constants.d.ts +1 -13
  2. package/dist/cjs/constants.d.ts.map +1 -1
  3. package/dist/cjs/constants.js +4 -22
  4. package/dist/cjs/constants.js.map +1 -1
  5. package/dist/cjs/generated/abi/jbBuybackHookAbi.d.ts +1187 -0
  6. package/dist/cjs/generated/abi/jbBuybackHookAbi.d.ts.map +1 -0
  7. package/dist/cjs/generated/abi/jbBuybackHookAbi.js +841 -0
  8. package/dist/cjs/generated/abi/jbBuybackHookAbi.js.map +1 -0
  9. package/dist/cjs/generated/abi/jbBuybackHookRegistryAbi.d.ts +791 -0
  10. package/dist/cjs/generated/abi/jbBuybackHookRegistryAbi.d.ts.map +1 -0
  11. package/dist/cjs/generated/abi/jbBuybackHookRegistryAbi.js +632 -0
  12. package/dist/cjs/generated/abi/jbBuybackHookRegistryAbi.js.map +1 -0
  13. package/dist/cjs/generated/abi/jbControllerAbi.d.ts +2569 -0
  14. package/dist/cjs/generated/abi/jbControllerAbi.d.ts.map +1 -0
  15. package/dist/cjs/generated/abi/jbControllerAbi.js +1906 -0
  16. package/dist/cjs/generated/abi/jbControllerAbi.js.map +1 -0
  17. package/dist/cjs/generated/abi/jbDirectoryAbi.d.ts +410 -0
  18. package/dist/cjs/generated/abi/jbDirectoryAbi.d.ts.map +1 -0
  19. package/dist/cjs/generated/abi/jbDirectoryAbi.js +365 -0
  20. package/dist/cjs/generated/abi/jbDirectoryAbi.js.map +1 -0
  21. package/dist/cjs/generated/abi/jbMultiTerminalAbi.d.ts +1863 -0
  22. package/dist/cjs/generated/abi/jbMultiTerminalAbi.d.ts.map +1 -0
  23. package/dist/cjs/generated/abi/jbMultiTerminalAbi.js +1459 -0
  24. package/dist/cjs/generated/abi/jbMultiTerminalAbi.js.map +1 -0
  25. package/dist/cjs/generated/abi/jbPermissionsAbi.d.ts +240 -0
  26. package/dist/cjs/generated/abi/jbPermissionsAbi.d.ts.map +1 -0
  27. package/dist/cjs/generated/abi/jbPermissionsAbi.js +164 -0
  28. package/dist/cjs/generated/abi/jbPermissionsAbi.js.map +1 -0
  29. package/dist/cjs/generated/abi/jbProjectsAbi.d.ts +626 -0
  30. package/dist/cjs/generated/abi/jbProjectsAbi.d.ts.map +1 -0
  31. package/dist/cjs/generated/abi/jbProjectsAbi.js +470 -0
  32. package/dist/cjs/generated/abi/jbProjectsAbi.js.map +1 -0
  33. package/dist/cjs/generated/abi/jbRouterTerminalGatewayAbi.d.ts +1503 -0
  34. package/dist/cjs/generated/abi/jbRouterTerminalGatewayAbi.d.ts.map +1 -0
  35. package/dist/cjs/generated/abi/jbRouterTerminalGatewayAbi.js +1037 -0
  36. package/dist/cjs/generated/abi/jbRouterTerminalGatewayAbi.js.map +1 -0
  37. package/dist/cjs/generated/abi/jbRouterTerminalRegistryAbi.d.ts +1119 -0
  38. package/dist/cjs/generated/abi/jbRouterTerminalRegistryAbi.d.ts.map +1 -0
  39. package/dist/cjs/generated/abi/jbRouterTerminalRegistryAbi.js +925 -0
  40. package/dist/cjs/generated/abi/jbRouterTerminalRegistryAbi.js.map +1 -0
  41. package/dist/cjs/generated/abi/jbSplitsAbi.d.ts +244 -0
  42. package/dist/cjs/generated/abi/jbSplitsAbi.d.ts.map +1 -0
  43. package/dist/cjs/generated/abi/jbSplitsAbi.js +198 -0
  44. package/dist/cjs/generated/abi/jbSplitsAbi.js.map +1 -0
  45. package/dist/cjs/generated/abi/jbTokensAbi.d.ts +602 -0
  46. package/dist/cjs/generated/abi/jbTokensAbi.d.ts.map +1 -0
  47. package/dist/cjs/generated/abi/jbTokensAbi.js +501 -0
  48. package/dist/cjs/generated/abi/jbTokensAbi.js.map +1 -0
  49. package/dist/cjs/generated/juicebox.d.ts +25405 -36537
  50. package/dist/cjs/generated/juicebox.d.ts.map +1 -1
  51. package/dist/cjs/generated/juicebox.js +14362 -22761
  52. package/dist/cjs/generated/juicebox.js.map +1 -1
  53. package/dist/cjs/pureConstants.d.ts +15 -0
  54. package/dist/cjs/pureConstants.d.ts.map +1 -0
  55. package/dist/cjs/pureConstants.js +28 -0
  56. package/dist/cjs/pureConstants.js.map +1 -0
  57. package/dist/cjs/review/decode.d.ts.map +1 -1
  58. package/dist/cjs/review/decode.js +35 -51
  59. package/dist/cjs/review/decode.js.map +1 -1
  60. package/dist/cjs/review/relayr.d.ts.map +1 -1
  61. package/dist/cjs/review/relayr.js +11 -31
  62. package/dist/cjs/review/relayr.js.map +1 -1
  63. package/dist/cjs/safe.d.ts +376 -8
  64. package/dist/cjs/safe.d.ts.map +1 -1
  65. package/dist/cjs/safe.js +1088 -29
  66. package/dist/cjs/safe.js.map +1 -1
  67. package/dist/cjs/safeService.d.ts +361 -1
  68. package/dist/cjs/safeService.d.ts.map +1 -1
  69. package/dist/cjs/safeService.js +844 -6
  70. package/dist/cjs/safeService.js.map +1 -1
  71. package/dist/cjs/untrusted.d.ts +8 -0
  72. package/dist/cjs/untrusted.d.ts.map +1 -0
  73. package/dist/cjs/untrusted.js +33 -0
  74. package/dist/cjs/untrusted.js.map +1 -0
  75. package/dist/cjs/v6/deploymentAbi.d.ts +4 -0
  76. package/dist/cjs/v6/deploymentAbi.d.ts.map +1 -0
  77. package/dist/cjs/v6/deploymentAbi.js +15 -0
  78. package/dist/cjs/v6/deploymentAbi.js.map +1 -0
  79. package/dist/cjs/v6/deploymentDiagnostics.d.ts +45 -0
  80. package/dist/cjs/v6/deploymentDiagnostics.d.ts.map +1 -0
  81. package/dist/cjs/v6/deploymentDiagnostics.js +525 -0
  82. package/dist/cjs/v6/deploymentDiagnostics.js.map +1 -0
  83. package/dist/cjs/v6/distributions.d.ts +90 -0
  84. package/dist/cjs/v6/distributions.d.ts.map +1 -0
  85. package/dist/cjs/v6/distributions.js +287 -0
  86. package/dist/cjs/v6/distributions.js.map +1 -0
  87. package/dist/cjs/v6/index.d.ts +4 -0
  88. package/dist/cjs/v6/index.d.ts.map +1 -1
  89. package/dist/cjs/v6/index.js +4 -0
  90. package/dist/cjs/v6/index.js.map +1 -1
  91. package/dist/cjs/v6/nft.d.ts +15 -0
  92. package/dist/cjs/v6/nft.d.ts.map +1 -1
  93. package/dist/cjs/v6/nft.js +49 -29
  94. package/dist/cjs/v6/nft.js.map +1 -1
  95. package/dist/cjs/v6/omnichain.d.ts +3 -2
  96. package/dist/cjs/v6/omnichain.d.ts.map +1 -1
  97. package/dist/cjs/v6/omnichain.js +9 -4
  98. package/dist/cjs/v6/omnichain.js.map +1 -1
  99. package/dist/cjs/v6/permissionIds.d.ts +62 -0
  100. package/dist/cjs/v6/permissionIds.d.ts.map +1 -0
  101. package/dist/cjs/v6/permissionIds.js +70 -0
  102. package/dist/cjs/v6/permissionIds.js.map +1 -0
  103. package/dist/cjs/v6/permissions.d.ts +3 -62
  104. package/dist/cjs/v6/permissions.d.ts.map +1 -1
  105. package/dist/cjs/v6/permissions.js +6 -67
  106. package/dist/cjs/v6/permissions.js.map +1 -1
  107. package/dist/cjs/v6/revnet721.d.ts +42 -0
  108. package/dist/cjs/v6/revnet721.d.ts.map +1 -0
  109. package/dist/cjs/v6/revnet721.js +74 -0
  110. package/dist/cjs/v6/revnet721.js.map +1 -0
  111. package/dist/cjs/v6/revnets.d.ts +11 -3
  112. package/dist/cjs/v6/revnets.d.ts.map +1 -1
  113. package/dist/cjs/v6/revnets.js +36 -7
  114. package/dist/cjs/v6/revnets.js.map +1 -1
  115. package/dist/cjs/v6/splits.d.ts +1 -1
  116. package/dist/cjs/v6/splits.d.ts.map +1 -1
  117. package/dist/cjs/v6/splits.js +3 -3
  118. package/dist/cjs/v6/splits.js.map +1 -1
  119. package/dist/cjs/v6/sticky.d.ts +2 -2
  120. package/dist/cjs/v6/sticky.d.ts.map +1 -1
  121. package/dist/cjs/v6/types.d.ts +1 -1
  122. package/dist/cjs/v6/types.d.ts.map +1 -1
  123. package/dist/esm/constants.d.ts +1 -13
  124. package/dist/esm/constants.d.ts.map +1 -1
  125. package/dist/esm/constants.js +1 -21
  126. package/dist/esm/constants.js.map +1 -1
  127. package/dist/esm/generated/abi/jbBuybackHookAbi.d.ts +1187 -0
  128. package/dist/esm/generated/abi/jbBuybackHookAbi.d.ts.map +1 -0
  129. package/dist/esm/generated/abi/jbBuybackHookAbi.js +838 -0
  130. package/dist/esm/generated/abi/jbBuybackHookAbi.js.map +1 -0
  131. package/dist/esm/generated/abi/jbBuybackHookRegistryAbi.d.ts +791 -0
  132. package/dist/esm/generated/abi/jbBuybackHookRegistryAbi.d.ts.map +1 -0
  133. package/dist/esm/generated/abi/jbBuybackHookRegistryAbi.js +629 -0
  134. package/dist/esm/generated/abi/jbBuybackHookRegistryAbi.js.map +1 -0
  135. package/dist/esm/generated/abi/jbControllerAbi.d.ts +2569 -0
  136. package/dist/esm/generated/abi/jbControllerAbi.d.ts.map +1 -0
  137. package/dist/esm/generated/abi/jbControllerAbi.js +1903 -0
  138. package/dist/esm/generated/abi/jbControllerAbi.js.map +1 -0
  139. package/dist/esm/generated/abi/jbDirectoryAbi.d.ts +410 -0
  140. package/dist/esm/generated/abi/jbDirectoryAbi.d.ts.map +1 -0
  141. package/dist/esm/generated/abi/jbDirectoryAbi.js +362 -0
  142. package/dist/esm/generated/abi/jbDirectoryAbi.js.map +1 -0
  143. package/dist/esm/generated/abi/jbMultiTerminalAbi.d.ts +1863 -0
  144. package/dist/esm/generated/abi/jbMultiTerminalAbi.d.ts.map +1 -0
  145. package/dist/esm/generated/abi/jbMultiTerminalAbi.js +1456 -0
  146. package/dist/esm/generated/abi/jbMultiTerminalAbi.js.map +1 -0
  147. package/dist/esm/generated/abi/jbPermissionsAbi.d.ts +240 -0
  148. package/dist/esm/generated/abi/jbPermissionsAbi.d.ts.map +1 -0
  149. package/dist/esm/generated/abi/jbPermissionsAbi.js +161 -0
  150. package/dist/esm/generated/abi/jbPermissionsAbi.js.map +1 -0
  151. package/dist/esm/generated/abi/jbProjectsAbi.d.ts +626 -0
  152. package/dist/esm/generated/abi/jbProjectsAbi.d.ts.map +1 -0
  153. package/dist/esm/generated/abi/jbProjectsAbi.js +467 -0
  154. package/dist/esm/generated/abi/jbProjectsAbi.js.map +1 -0
  155. package/dist/esm/generated/abi/jbRouterTerminalGatewayAbi.d.ts +1503 -0
  156. package/dist/esm/generated/abi/jbRouterTerminalGatewayAbi.d.ts.map +1 -0
  157. package/dist/esm/generated/abi/jbRouterTerminalGatewayAbi.js +1034 -0
  158. package/dist/esm/generated/abi/jbRouterTerminalGatewayAbi.js.map +1 -0
  159. package/dist/esm/generated/abi/jbRouterTerminalRegistryAbi.d.ts +1119 -0
  160. package/dist/esm/generated/abi/jbRouterTerminalRegistryAbi.d.ts.map +1 -0
  161. package/dist/esm/generated/abi/jbRouterTerminalRegistryAbi.js +922 -0
  162. package/dist/esm/generated/abi/jbRouterTerminalRegistryAbi.js.map +1 -0
  163. package/dist/esm/generated/abi/jbSplitsAbi.d.ts +244 -0
  164. package/dist/esm/generated/abi/jbSplitsAbi.d.ts.map +1 -0
  165. package/dist/esm/generated/abi/jbSplitsAbi.js +195 -0
  166. package/dist/esm/generated/abi/jbSplitsAbi.js.map +1 -0
  167. package/dist/esm/generated/abi/jbTokensAbi.d.ts +602 -0
  168. package/dist/esm/generated/abi/jbTokensAbi.d.ts.map +1 -0
  169. package/dist/esm/generated/abi/jbTokensAbi.js +498 -0
  170. package/dist/esm/generated/abi/jbTokensAbi.js.map +1 -0
  171. package/dist/esm/generated/juicebox.d.ts +25405 -36537
  172. package/dist/esm/generated/juicebox.d.ts.map +1 -1
  173. package/dist/esm/generated/juicebox.js +14634 -23044
  174. package/dist/esm/generated/juicebox.js.map +1 -1
  175. package/dist/esm/pureConstants.d.ts +15 -0
  176. package/dist/esm/pureConstants.d.ts.map +1 -0
  177. package/dist/esm/pureConstants.js +25 -0
  178. package/dist/esm/pureConstants.js.map +1 -0
  179. package/dist/esm/review/decode.d.ts.map +1 -1
  180. package/dist/esm/review/decode.js +21 -37
  181. package/dist/esm/review/decode.js.map +1 -1
  182. package/dist/esm/review/relayr.d.ts.map +1 -1
  183. package/dist/esm/review/relayr.js +5 -25
  184. package/dist/esm/review/relayr.js.map +1 -1
  185. package/dist/esm/safe.d.ts +376 -8
  186. package/dist/esm/safe.d.ts.map +1 -1
  187. package/dist/esm/safe.js +1070 -29
  188. package/dist/esm/safe.js.map +1 -1
  189. package/dist/esm/safeService.d.ts +361 -1
  190. package/dist/esm/safeService.d.ts.map +1 -1
  191. package/dist/esm/safeService.js +818 -5
  192. package/dist/esm/safeService.js.map +1 -1
  193. package/dist/esm/untrusted.d.ts +8 -0
  194. package/dist/esm/untrusted.d.ts.map +1 -0
  195. package/dist/esm/untrusted.js +28 -0
  196. package/dist/esm/untrusted.js.map +1 -0
  197. package/dist/esm/v6/deploymentAbi.d.ts +4 -0
  198. package/dist/esm/v6/deploymentAbi.d.ts.map +1 -0
  199. package/dist/esm/v6/deploymentAbi.js +12 -0
  200. package/dist/esm/v6/deploymentAbi.js.map +1 -0
  201. package/dist/esm/v6/deploymentDiagnostics.d.ts +45 -0
  202. package/dist/esm/v6/deploymentDiagnostics.d.ts.map +1 -0
  203. package/dist/esm/v6/deploymentDiagnostics.js +521 -0
  204. package/dist/esm/v6/deploymentDiagnostics.js.map +1 -0
  205. package/dist/esm/v6/distributions.d.ts +90 -0
  206. package/dist/esm/v6/distributions.d.ts.map +1 -0
  207. package/dist/esm/v6/distributions.js +283 -0
  208. package/dist/esm/v6/distributions.js.map +1 -0
  209. package/dist/esm/v6/index.d.ts +4 -0
  210. package/dist/esm/v6/index.d.ts.map +1 -1
  211. package/dist/esm/v6/index.js +4 -0
  212. package/dist/esm/v6/index.js.map +1 -1
  213. package/dist/esm/v6/nft.d.ts +15 -0
  214. package/dist/esm/v6/nft.d.ts.map +1 -1
  215. package/dist/esm/v6/nft.js +48 -29
  216. package/dist/esm/v6/nft.js.map +1 -1
  217. package/dist/esm/v6/omnichain.d.ts +3 -2
  218. package/dist/esm/v6/omnichain.d.ts.map +1 -1
  219. package/dist/esm/v6/omnichain.js +9 -4
  220. package/dist/esm/v6/omnichain.js.map +1 -1
  221. package/dist/esm/v6/permissionIds.d.ts +62 -0
  222. package/dist/esm/v6/permissionIds.d.ts.map +1 -0
  223. package/dist/esm/v6/permissionIds.js +66 -0
  224. package/dist/esm/v6/permissionIds.js.map +1 -0
  225. package/dist/esm/v6/permissions.d.ts +3 -62
  226. package/dist/esm/v6/permissions.d.ts.map +1 -1
  227. package/dist/esm/v6/permissions.js +2 -64
  228. package/dist/esm/v6/permissions.js.map +1 -1
  229. package/dist/esm/v6/revnet721.d.ts +42 -0
  230. package/dist/esm/v6/revnet721.d.ts.map +1 -0
  231. package/dist/esm/v6/revnet721.js +70 -0
  232. package/dist/esm/v6/revnet721.js.map +1 -0
  233. package/dist/esm/v6/revnets.d.ts +11 -3
  234. package/dist/esm/v6/revnets.d.ts.map +1 -1
  235. package/dist/esm/v6/revnets.js +36 -7
  236. package/dist/esm/v6/revnets.js.map +1 -1
  237. package/dist/esm/v6/splits.d.ts +1 -1
  238. package/dist/esm/v6/splits.d.ts.map +1 -1
  239. package/dist/esm/v6/splits.js +1 -1
  240. package/dist/esm/v6/splits.js.map +1 -1
  241. package/dist/esm/v6/sticky.d.ts +2 -2
  242. package/dist/esm/v6/sticky.d.ts.map +1 -1
  243. package/dist/esm/v6/types.d.ts +1 -1
  244. package/dist/esm/v6/types.d.ts.map +1 -1
  245. package/package.json +1 -1
@@ -0,0 +1,287 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.verifyPayoutReceipt = verifyPayoutReceipt;
4
+ exports.verifyReservedDistributionReceipt = verifyReservedDistributionReceipt;
5
+ const viem_1 = require("viem");
6
+ const pureConstants_js_1 = require("../pureConstants.js");
7
+ const jbControllerAbi_js_1 = require("../generated/abi/jbControllerAbi.js");
8
+ const jbMultiTerminalAbi_js_1 = require("../generated/abi/jbMultiTerminalAbi.js");
9
+ const jbTokensAbi_js_1 = require("../generated/abi/jbTokensAbi.js");
10
+ const untrusted_js_1 = require("../untrusted.js");
11
+ const splits_js_1 = require("./splits.js");
12
+ const BURN_BENEFICIARY = "0x000000000000000000000000000000000000dEaD";
13
+ function invalid(name, value) {
14
+ return new Error(`Invalid distribution expectation ${name}: ${String(value)}.`);
15
+ }
16
+ function readUint(name, value) {
17
+ const parsed = (0, untrusted_js_1.uint256)(value);
18
+ if (parsed === null)
19
+ throw invalid(name, value);
20
+ return parsed;
21
+ }
22
+ function readAddress(name, value) {
23
+ if (typeof value !== "string" || !(0, viem_1.isAddress)(value))
24
+ throw invalid(name, value);
25
+ return (0, viem_1.getAddress)(value);
26
+ }
27
+ function readSplits(splits) {
28
+ if (!Array.isArray(splits))
29
+ throw invalid("splits", splits);
30
+ let total = 0n;
31
+ return splits.map((split, index) => {
32
+ const name = `split ${index + 1}`;
33
+ if (!split || typeof split !== "object")
34
+ throw invalid(name, split);
35
+ const value = split;
36
+ const percent = readUint(`${name} percent`, value.percent);
37
+ total += percent;
38
+ if (total > BigInt(pureConstants_js_1.SPLITS_TOTAL_PERCENT)) {
39
+ throw invalid("split percents", `a total above ${pureConstants_js_1.SPLITS_TOTAL_PERCENT}`);
40
+ }
41
+ if (typeof value.preferAddToBalance !== "boolean") {
42
+ throw invalid(`${name} preferAddToBalance`, value.preferAddToBalance);
43
+ }
44
+ if (value.feeless !== undefined && typeof value.feeless !== "boolean") {
45
+ throw invalid(`${name} feeless`, value.feeless);
46
+ }
47
+ return {
48
+ percent,
49
+ projectId: readUint(`${name} projectId`, value.projectId),
50
+ beneficiary: readAddress(`${name} beneficiary`, value.beneficiary),
51
+ preferAddToBalance: value.preferAddToBalance,
52
+ lockedUntil: readUint(`${name} lockedUntil`, value.lockedUntil),
53
+ hook: readAddress(`${name} hook`, value.hook),
54
+ feeless: value.feeless,
55
+ };
56
+ });
57
+ }
58
+ function sameSplit(actual, expected) {
59
+ return (BigInt(actual.percent) === expected.percent &&
60
+ actual.projectId === expected.projectId &&
61
+ (0, viem_1.isAddressEqual)(actual.beneficiary, expected.beneficiary) &&
62
+ actual.preferAddToBalance === expected.preferAddToBalance &&
63
+ BigInt(actual.lockedUntil) === expected.lockedUntil &&
64
+ (0, viem_1.isAddressEqual)(actual.hook, expected.hook));
65
+ }
66
+ /**
67
+ * The receipt's events from `emitter`, decoded with `abi`, the contract's full
68
+ * ABI. A log of `emitter` that does not decode is refused, not skipped: a
69
+ * skipped PayoutTransferReverted, for one, would let a failed transfer pass.
70
+ */
71
+ function eventsFrom(receipt, emitter, abi) {
72
+ if (receipt?.status !== undefined && receipt.status !== "success") {
73
+ throw new Error("The distribution transaction did not succeed.");
74
+ }
75
+ if (!Array.isArray(receipt?.logs)) {
76
+ throw new Error("The distribution receipt has no logs.");
77
+ }
78
+ return receipt.logs.flatMap((log) => {
79
+ const { address, data, topics } = (log ?? {});
80
+ if (typeof address !== "string" ||
81
+ address.toLowerCase() !== emitter.toLowerCase()) {
82
+ return [];
83
+ }
84
+ try {
85
+ return [
86
+ (0, viem_1.decodeEventLog)({
87
+ abi: abi,
88
+ data: data,
89
+ topics: topics,
90
+ strict: true,
91
+ }),
92
+ ];
93
+ }
94
+ catch {
95
+ throw new Error(`The distribution receipt has a log from ${emitter} that its ABI cannot read, so the receipt proves nothing.`);
96
+ }
97
+ });
98
+ }
99
+ /** The fee the terminal takes from a gross amount: 2.5%, rounded down. */
100
+ function feeOf(amount) {
101
+ return amount / 40n;
102
+ }
103
+ function format(amount) {
104
+ return amount.toLocaleString("en-US");
105
+ }
106
+ /**
107
+ * Prove that a `sendPayoutsOf` receipt paid every reviewed split in full.
108
+ *
109
+ * The terminal must log, for the project, no `PayoutReverted` or
110
+ * `PayoutTransferReverted`; exactly one `SendPayouts` from the reviewed
111
+ * caller, in the reviewed ruleset and cycle, to the reviewed owner, for the
112
+ * reviewed amount, paying out at least the reviewed minimum with a fee within
113
+ * 2.5%; and one `SendPayoutToSplit` per reviewed split, in order, naming that
114
+ * exact split. Each split's gross is the terminal's successive remainder
115
+ * (`remaining × percent / remaining percent`). Its net must be the gross, or
116
+ * the gross less its 2.5% fee, and the gross alone for a split marked
117
+ * feeless: anything else is a hook that took only part of its share. The
118
+ * owner's net leftover follows the same rule.
119
+ *
120
+ * Throws, naming the first event that differs. A refusal means the receipt
121
+ * cannot show the payouts completed: keep the transaction, and do not send
122
+ * the same payouts again.
123
+ */
124
+ function verifyPayoutReceipt(receipt, expected) {
125
+ const terminal = readAddress("terminal", expected?.terminal);
126
+ const projectId = readUint("projectId", expected.projectId);
127
+ const rulesetId = readUint("rulesetId", expected.rulesetId);
128
+ const cycleNumber = readUint("cycleNumber", expected.cycleNumber);
129
+ const group = (0, splits_js_1.payoutSplitGroupId)(readAddress("token", expected.token));
130
+ const owner = readAddress("owner", expected.owner);
131
+ const caller = readAddress("caller", expected.caller);
132
+ const amount = readUint("amount", expected.amount);
133
+ const minimum = readUint("minimum", expected.minimum);
134
+ const splits = readSplits(expected.splits);
135
+ const subject = `Project ${projectId}'s payouts from ${terminal}`;
136
+ const refuse = (problem) => new Error(`${subject}: ${problem}. Keep this transaction, and do not send these payouts again.`);
137
+ const events = eventsFrom(receipt, terminal, jbMultiTerminalAbi_js_1.jbMultiTerminalAbi).filter((event) => event.args.projectId === projectId);
138
+ const failure = events.find((event) => event.eventName === "PayoutReverted" ||
139
+ event.eventName === "PayoutTransferReverted");
140
+ if (failure)
141
+ throw refuse(`a recipient failed (${failure.eventName})`);
142
+ const payouts = events.filter((event) => event.eventName === "SendPayouts");
143
+ if (payouts.length !== 1) {
144
+ throw refuse(`the receipt has ${payouts.length} SendPayouts events, not 1`);
145
+ }
146
+ const payout = payouts[0].args;
147
+ if (!(0, viem_1.isAddressEqual)(payout.caller, caller)) {
148
+ throw refuse(`they were sent by ${payout.caller}, not ${caller}`);
149
+ }
150
+ if (payout.rulesetId !== rulesetId ||
151
+ payout.rulesetCycleNumber !== cycleNumber) {
152
+ throw refuse(`they ran in ruleset ${payout.rulesetId} cycle ${payout.rulesetCycleNumber}, not ruleset ${rulesetId} cycle ${cycleNumber}`);
153
+ }
154
+ if (!(0, viem_1.isAddressEqual)(payout.projectOwner, owner)) {
155
+ throw refuse(`the owner was ${payout.projectOwner}, not ${owner}`);
156
+ }
157
+ if (payout.amount !== amount) {
158
+ throw refuse(`they were for ${format(payout.amount)}, not ${format(amount)}`);
159
+ }
160
+ if (payout.amountPaidOut <= 0n || payout.amountPaidOut < minimum) {
161
+ throw refuse(`they paid out ${format(payout.amountPaidOut)}, below the reviewed ${format(minimum)}`);
162
+ }
163
+ if (payout.fee > feeOf(payout.amountPaidOut)) {
164
+ throw refuse(`the fee ${format(payout.fee)} exceeds 2.5% of ${format(payout.amountPaidOut)}`);
165
+ }
166
+ const paid = events.filter((event) => event.eventName === "SendPayoutToSplit");
167
+ if (paid.length !== splits.length) {
168
+ throw refuse(`the receipt pays ${paid.length} splits, not the reviewed ${splits.length}`);
169
+ }
170
+ let remainingAmount = payout.amountPaidOut;
171
+ let remainingPercent = BigInt(pureConstants_js_1.SPLITS_TOTAL_PERCENT);
172
+ for (const [index, split] of splits.entries()) {
173
+ const event = paid[index].args;
174
+ const gross = (remainingAmount * split.percent) / remainingPercent;
175
+ const name = `split ${index + 1} (${split.beneficiary})`;
176
+ if (!(0, viem_1.isAddressEqual)(event.caller, caller) ||
177
+ event.rulesetId !== rulesetId ||
178
+ event.group !== group ||
179
+ !sameSplit(event.split, split)) {
180
+ throw refuse(`${name} is not the reviewed split`);
181
+ }
182
+ if (event.amount !== gross) {
183
+ throw refuse(`${name} was allotted ${format(event.amount)}, not ${format(gross)}`);
184
+ }
185
+ const allowed = split.feeless === true ? [gross] : [gross, gross - feeOf(gross)];
186
+ if (!allowed.includes(event.netAmount)) {
187
+ throw refuse(`${name} received ${format(event.netAmount)} of its ${format(gross)}`);
188
+ }
189
+ remainingAmount -= gross;
190
+ remainingPercent -= split.percent;
191
+ }
192
+ if (payout.netLeftoverPayoutAmount !== remainingAmount &&
193
+ payout.netLeftoverPayoutAmount !== remainingAmount - feeOf(remainingAmount)) {
194
+ throw refuse(`the owner received ${format(payout.netLeftoverPayoutAmount)} of the ${format(remainingAmount)} left`);
195
+ }
196
+ }
197
+ /**
198
+ * Prove that a `sendReservedTokensToSplitsOf` receipt sent every reviewed
199
+ * split its reserved tokens.
200
+ *
201
+ * The controller must log, for the project, no `ReservedDistributionReverted`
202
+ * or `SplitHookReverted`; exactly one `SendReservedTokensToSplits` from the
203
+ * reviewed caller, in the reviewed ruleset and cycle, to the reviewed owner,
204
+ * for the reviewed token count, leaving what the splits do not take; and one
205
+ * `SendReservedTokensToSplit` per reviewed split, in order, naming that exact
206
+ * split with `tokenCount × percent / 100%`. JBTokens must log burns from the
207
+ * controller of exactly the shares sent to 0x…dEaD: any other burn is tokens a
208
+ * hook did not take.
209
+ *
210
+ * Throws, naming the first event that differs. A refusal means the receipt
211
+ * cannot show the distribution completed: keep the transaction, and do not
212
+ * distribute the same reserved tokens again.
213
+ */
214
+ function verifyReservedDistributionReceipt(receipt, expected) {
215
+ const controller = readAddress("controller", expected?.controller);
216
+ const tokens = readAddress("tokens", expected.tokens);
217
+ const projectId = readUint("projectId", expected.projectId);
218
+ const rulesetId = readUint("rulesetId", expected.rulesetId);
219
+ const cycleNumber = readUint("cycleNumber", expected.cycleNumber);
220
+ const owner = readAddress("owner", expected.owner);
221
+ const caller = readAddress("caller", expected.caller);
222
+ const tokenCount = readUint("tokenCount", expected.tokenCount);
223
+ const splits = readSplits(expected.splits);
224
+ const subject = `Project ${projectId}'s reserved tokens from ${controller}`;
225
+ const refuse = (problem) => new Error(`${subject}: ${problem}. Keep this transaction, and do not distribute these reserved tokens again.`);
226
+ const events = eventsFrom(receipt, controller, jbControllerAbi_js_1.jbControllerAbi).filter((event) => event.args.projectId === projectId);
227
+ const failure = events.find((event) => event.eventName === "ReservedDistributionReverted" ||
228
+ event.eventName === "SplitHookReverted");
229
+ if (failure)
230
+ throw refuse(`a recipient failed (${failure.eventName})`);
231
+ const totals = events.filter((event) => event.eventName === "SendReservedTokensToSplits");
232
+ if (totals.length !== 1) {
233
+ throw refuse(`the receipt has ${totals.length} SendReservedTokensToSplits events, not 1`);
234
+ }
235
+ const total = totals[0].args;
236
+ if (!(0, viem_1.isAddressEqual)(total.caller, caller)) {
237
+ throw refuse(`they were sent by ${total.caller}, not ${caller}`);
238
+ }
239
+ if (total.rulesetId !== rulesetId ||
240
+ total.rulesetCycleNumber !== cycleNumber) {
241
+ throw refuse(`they ran in ruleset ${total.rulesetId} cycle ${total.rulesetCycleNumber}, not ruleset ${rulesetId} cycle ${cycleNumber}`);
242
+ }
243
+ if (!(0, viem_1.isAddressEqual)(total.owner, owner)) {
244
+ throw refuse(`the owner was ${total.owner}, not ${owner}`);
245
+ }
246
+ if (total.tokenCount !== tokenCount) {
247
+ throw refuse(`${format(total.tokenCount)} tokens were distributed, not the reviewed ${format(tokenCount)}`);
248
+ }
249
+ const sent = events.filter((event) => event.eventName === "SendReservedTokensToSplit");
250
+ if (sent.length !== splits.length) {
251
+ throw refuse(`the receipt sends to ${sent.length} splits, not the reviewed ${splits.length}`);
252
+ }
253
+ let leftover = tokenCount;
254
+ let burnShare = 0n;
255
+ for (const [index, split] of splits.entries()) {
256
+ const event = sent[index].args;
257
+ const share = (tokenCount * split.percent) / BigInt(pureConstants_js_1.SPLITS_TOTAL_PERCENT);
258
+ const name = `split ${index + 1} (${split.beneficiary})`;
259
+ if (!(0, viem_1.isAddressEqual)(event.caller, caller) ||
260
+ event.rulesetId !== rulesetId ||
261
+ event.groupId !== splits_js_1.RESERVED_TOKEN_SPLIT_GROUP_ID ||
262
+ !sameSplit(event.split, split)) {
263
+ throw refuse(`${name} is not the reviewed split`);
264
+ }
265
+ if (event.tokenCount !== share) {
266
+ throw refuse(`${name} was sent ${format(event.tokenCount)} tokens, not ${format(share)}`);
267
+ }
268
+ leftover -= share;
269
+ if (split.projectId === 0n &&
270
+ (0, viem_1.isAddressEqual)(split.hook, viem_1.zeroAddress) &&
271
+ (0, viem_1.isAddressEqual)(split.beneficiary, BURN_BENEFICIARY)) {
272
+ burnShare += share;
273
+ }
274
+ }
275
+ if (total.leftoverAmount !== leftover) {
276
+ throw refuse(`${format(total.leftoverAmount)} tokens were left to the owner, not ${format(leftover)}`);
277
+ }
278
+ const burned = eventsFrom(receipt, tokens, jbTokensAbi_js_1.jbTokensAbi)
279
+ .filter((event) => event.eventName === "Burn" &&
280
+ event.args.projectId === projectId &&
281
+ (0, viem_1.isAddressEqual)(event.args.holder, controller))
282
+ .reduce((sum, event) => sum + event.args.count, 0n);
283
+ if (burned !== burnShare) {
284
+ throw refuse(`the controller burned ${format(burned)} tokens, not the ${format(burnShare)} sent to ${BURN_BENEFICIARY}; a hook did not take its share`);
285
+ }
286
+ }
287
+ //# sourceMappingURL=distributions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"distributions.js","sourceRoot":"","sources":["../../../src/v6/distributions.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ export * from "./launch.js";
5
5
  export * from "./omnichain.js";
6
6
  export * from "./rulesets.js";
7
7
  export * from "./splits.js";
8
+ export * from "./distributions.js";
8
9
  export * from "./revnets.js";
9
10
  export * from "./terminals.js";
10
11
  export * from "./pay.js";
@@ -21,4 +22,7 @@ export * from "./permissions.js";
21
22
  export * from "./suckers.js";
22
23
  export * from "./loans.js";
23
24
  export * from "./sticky.js";
25
+ export * from "./revnet721.js";
26
+ export * from "./deploymentDiagnostics.js";
27
+ export * from "./deploymentAbi.js";
24
28
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v6/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v6/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC"}
@@ -21,6 +21,7 @@ __exportStar(require("./launch.js"), exports);
21
21
  __exportStar(require("./omnichain.js"), exports);
22
22
  __exportStar(require("./rulesets.js"), exports);
23
23
  __exportStar(require("./splits.js"), exports);
24
+ __exportStar(require("./distributions.js"), exports);
24
25
  __exportStar(require("./revnets.js"), exports);
25
26
  __exportStar(require("./terminals.js"), exports);
26
27
  __exportStar(require("./pay.js"), exports);
@@ -37,4 +38,7 @@ __exportStar(require("./permissions.js"), exports);
37
38
  __exportStar(require("./suckers.js"), exports);
38
39
  __exportStar(require("./loans.js"), exports);
39
40
  __exportStar(require("./sticky.js"), exports);
41
+ __exportStar(require("./revnet721.js"), exports);
42
+ __exportStar(require("./deploymentDiagnostics.js"), exports);
43
+ __exportStar(require("./deploymentAbi.js"), exports);
40
44
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/v6/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,gDAA8B;AAC9B,4CAA0B;AAC1B,8CAA4B;AAC5B,iDAA+B;AAC/B,gDAA8B;AAC9B,8CAA4B;AAC5B,+CAA6B;AAC7B,iDAA+B;AAC/B,2CAAyB;AACzB,kDAAgC;AAChC,iDAA+B;AAC/B,+CAA6B;AAC7B,qDAAmC;AACnC,+CAA6B;AAC7B,2CAAyB;AACzB,8CAA4B;AAC5B,iDAA+B;AAC/B,qDAAmC;AACnC,mDAAiC;AACjC,+CAA6B;AAC7B,6CAA2B;AAC3B,8CAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/v6/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,gDAA8B;AAC9B,4CAA0B;AAC1B,8CAA4B;AAC5B,iDAA+B;AAC/B,gDAA8B;AAC9B,8CAA4B;AAC5B,qDAAmC;AACnC,+CAA6B;AAC7B,iDAA+B;AAC/B,2CAAyB;AACzB,kDAAgC;AAChC,iDAA+B;AAC/B,+CAA6B;AAC7B,qDAAmC;AACnC,+CAA6B;AAC7B,2CAAyB;AACzB,8CAA4B;AAC5B,iDAA+B;AAC/B,qDAAmC;AACnC,mDAAiC;AACjC,+CAA6B;AAC7B,6CAA2B;AAC3B,8CAA4B;AAC5B,iDAA+B;AAC/B,6DAA2C;AAC3C,qDAAmC"}
@@ -177,6 +177,21 @@ export declare function get721MetadataIdTarget(client: PublicClient, { hook }: {
177
177
  chainId: JBChainId;
178
178
  hook: Address;
179
179
  }): Promise<Address>;
180
+ /** Resolve the shop hook/store without requiring pricing or tier reads.
181
+ * Missing custom hook capabilities return null; transport failures propagate.
182
+ * `includeInactiveHook` also inspects a configured but disabled pay hook.
183
+ */
184
+ export declare function resolveProject721Hook(client: PublicClient, { chainId, projectId, isRevnet, ruleset: suppliedRuleset, includeInactiveHook, }: {
185
+ chainId: JBChainId;
186
+ projectId: bigint;
187
+ isRevnet: boolean;
188
+ ruleset?: JBRulesetWithMetadata;
189
+ includeInactiveHook?: boolean;
190
+ }): Promise<{
191
+ hook: Address;
192
+ store: Address;
193
+ ruleset: JBRulesetWithMetadata | null;
194
+ } | null>;
180
195
  /**
181
196
  * Resolve a project's 721 tiers hook, its store, metadata id target, pricing
182
197
  * context, and tiers in one call.
@@ -1 +1 @@
1
- {"version":3,"file":"nft.d.ts","sourceRoot":"","sources":["../../../src/v6/nft.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nft.d.ts","sourceRoot":"","sources":["../../../src/v6/nft.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ exports.tierDisplayMetadata = tierDisplayMetadata;
13
13
  exports.buildTierCategoryPlan = buildTierCategoryPlan;
14
14
  exports.effectiveTierPrice = effectiveTierPrice;
15
15
  exports.get721MetadataIdTarget = get721MetadataIdTarget;
16
+ exports.resolveProject721Hook = resolveProject721Hook;
16
17
  exports.getProject721Shop = getProject721Shop;
17
18
  const viem_1 = require("viem");
18
19
  const contracts_js_1 = require("../contracts.js");
@@ -285,34 +286,11 @@ async function get721MetadataIdTarget(client, { hook }) {
285
286
  throw error;
286
287
  });
287
288
  }
288
- /**
289
- * Resolve a project's 721 tiers hook, its store, metadata id target, pricing
290
- * context, and tiers in one call.
291
- *
292
- * Hook resolution mirrors the app patterns: revnets read
293
- * `REVOwner.tiered721HookOf`; custom projects read the current ruleset's pay
294
- * data hook — either the omnichain deployer (the real hook lives in
295
- * `JBOmnichainDeployer.tiered721HookOf(projectId, rulesetId)`) or the 721 hook
296
- * itself, verified by probing `STORE()` (a proven revert or empty return means
297
- * it is not a 721 hook, so the project has no shop).
298
- *
299
- * Returns `null` only when the project authoritatively has no 721 shop. RPC and
300
- * transport failures throw — on authoritative reads and on the `STORE()` probe
301
- * alike — so a transient error surfaces as an error rather than a false
302
- * "no shop".
303
- *
304
- * @param client A viem public client on the given chain.
305
- * @param args.projectId The project (or revnet) id.
306
- * @param args.isRevnet Whether the project is a revnet (changes hook resolution).
307
- * @param args.tierLimit Max tiers to read from `tiersOf`. Defaults to 100.
308
- * @param args.categories Tier categories to filter by (empty = all). Defaults to `[]`.
309
- * @param args.includeResolvedUri Ask the store to run the hook's token URI
310
- * resolver for every tier (`tiersOf`'s `includeResolvedUri`). Defaults to
311
- * `false`: resolver output (often inline SVG data URIs) is packed into one
312
- * eth_call return, and over a large shop the upstream RPC rejects it. Turn it
313
- * on only for small reads that need `resolvedUri` without an indexer.
289
+ /** Resolve the shop hook/store without requiring pricing or tier reads.
290
+ * Missing custom hook capabilities return null; transport failures propagate.
291
+ * `includeInactiveHook` also inspects a configured but disabled pay hook.
314
292
  */
315
- async function getProject721Shop(client, { chainId, projectId, isRevnet, tierLimit = 100, categories = [], includeResolvedUri = false, }) {
293
+ async function resolveProject721Hook(client, { chainId, projectId, isRevnet, ruleset: suppliedRuleset, includeInactiveHook = false, }) {
316
294
  // 1. Resolve the 721 hook.
317
295
  let hook = null;
318
296
  // A non-authoritative candidate is the ruleset data hook, which might be some
@@ -327,10 +305,14 @@ async function getProject721Shop(client, { chainId, projectId, isRevnet, tierLim
327
305
  hook = revnetHook !== viem_1.zeroAddress ? revnetHook : null;
328
306
  }
329
307
  else {
330
- currentRuleset = await (0, rulesets_js_1.getCurrentRuleset)(client, { chainId, projectId });
308
+ currentRuleset =
309
+ suppliedRuleset ??
310
+ (await (0, rulesets_js_1.getCurrentRuleset)(client, { chainId, projectId }));
331
311
  const { ruleset, metadata } = currentRuleset;
332
312
  const dataHook = metadata.dataHook;
333
- if (metadata.useDataHookForPay && dataHook && dataHook !== viem_1.zeroAddress) {
313
+ if ((metadata.useDataHookForPay || includeInactiveHook) &&
314
+ dataHook &&
315
+ dataHook !== viem_1.zeroAddress) {
334
316
  const omni = juicebox_js_1.jbContractAddress["6"][contracts_js_1.JBOmnichainDeployerContracts.JBOmnichainDeployer]?.[chainId];
335
317
  if (omni && dataHook.toLowerCase() === omni.toLowerCase()) {
336
318
  // Omnichain project: the real 721 hook lives in the deployer's
@@ -370,6 +352,44 @@ async function getProject721Shop(client, { chainId, projectId, isRevnet, tierLim
370
352
  });
371
353
  if (!store)
372
354
  return null;
355
+ return { hook, store, ruleset: currentRuleset };
356
+ }
357
+ /**
358
+ * Resolve a project's 721 tiers hook, its store, metadata id target, pricing
359
+ * context, and tiers in one call.
360
+ *
361
+ * Hook resolution mirrors the app patterns: revnets read
362
+ * `REVOwner.tiered721HookOf`; custom projects read the current ruleset's pay
363
+ * data hook — either the omnichain deployer (the real hook lives in
364
+ * `JBOmnichainDeployer.tiered721HookOf(projectId, rulesetId)`) or the 721 hook
365
+ * itself, verified by probing `STORE()` (a proven revert or empty return means
366
+ * it is not a 721 hook, so the project has no shop).
367
+ *
368
+ * Returns `null` only when the project authoritatively has no 721 shop. RPC and
369
+ * transport failures throw — on authoritative reads and on the `STORE()` probe
370
+ * alike — so a transient error surfaces as an error rather than a false
371
+ * "no shop".
372
+ *
373
+ * @param client A viem public client on the given chain.
374
+ * @param args.projectId The project (or revnet) id.
375
+ * @param args.isRevnet Whether the project is a revnet (changes hook resolution).
376
+ * @param args.tierLimit Max tiers to read from `tiersOf`. Defaults to 100.
377
+ * @param args.categories Tier categories to filter by (empty = all). Defaults to `[]`.
378
+ * @param args.includeResolvedUri Ask the store to run the hook's token URI
379
+ * resolver for every tier (`tiersOf`'s `includeResolvedUri`). Defaults to
380
+ * `false`: resolver output (often inline SVG data URIs) is packed into one
381
+ * eth_call return, and over a large shop the upstream RPC rejects it. Turn it
382
+ * on only for small reads that need `resolvedUri` without an indexer.
383
+ */
384
+ async function getProject721Shop(client, { chainId, projectId, isRevnet, tierLimit = 100, categories = [], includeResolvedUri = false, }) {
385
+ const resolved = await resolveProject721Hook(client, {
386
+ chainId,
387
+ projectId,
388
+ isRevnet,
389
+ });
390
+ if (!resolved)
391
+ return null;
392
+ const { hook, store, ruleset: currentRuleset } = resolved;
373
393
  // 3. Metadata id target + pricing context. Pricing is meaningless without the
374
394
  // hook's exact currency + decimals, so a failure here is an error, not a
375
395
  // fallback.
@@ -1 +1 @@
1
- {"version":3,"file":"nft.js","sourceRoot":"","sources":["../../../src/v6/nft.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nft.js","sourceRoot":"","sources":["../../../src/v6/nft.ts"],"names":[],"mappings":"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"}
@@ -50,8 +50,9 @@ export type JBSuckerDeploymentConfig = OmnichainLaunchArgs6[5];
50
50
  * bridges: Ethereum<->L2 pairs and the native token only), or "both" (a
51
51
  * native AND a CCIP sucker per pair where both exist, for redundancy).
52
52
  * @param args.salt The shared salt (use the same value on every chain).
53
- * @param args.deploy721Config Optional tiered 721 hook to deploy with the
54
- * project (uses the 7-arg overload when given).
53
+ * @param args.deploy721Config Explicit shop configuration (7-arg overload).
54
+ * Both launch overloads create a shop; omitting this config preserves the
55
+ * contract's empty shop with 18-decimal pricing.
55
56
  * @param args.creationFee The exact fee from `JBProjects.creationFee()` on
56
57
  * this chain.
57
58
  */