@boostxyz/sdk 7.3.0 → 7.5.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 (193) hide show
  1. package/dist/Actions/Action.cjs +1 -1
  2. package/dist/Actions/Action.js +2 -2
  3. package/dist/Actions/EventAction.cjs +1 -1
  4. package/dist/Actions/EventAction.cjs.map +1 -1
  5. package/dist/Actions/EventAction.d.ts.map +1 -1
  6. package/dist/Actions/EventAction.js +160 -159
  7. package/dist/Actions/EventAction.js.map +1 -1
  8. package/dist/AllowLists/AllowList.cjs +1 -1
  9. package/dist/AllowLists/AllowList.js +3 -3
  10. package/dist/AllowLists/SimpleAllowList.cjs +1 -1
  11. package/dist/AllowLists/SimpleAllowList.cjs.map +1 -1
  12. package/dist/AllowLists/SimpleAllowList.d.ts.map +1 -1
  13. package/dist/AllowLists/SimpleAllowList.js +30 -30
  14. package/dist/AllowLists/SimpleAllowList.js.map +1 -1
  15. package/dist/AllowLists/SimpleDenyList.cjs +1 -1
  16. package/dist/AllowLists/SimpleDenyList.d.ts.map +1 -1
  17. package/dist/AllowLists/SimpleDenyList.js +3 -3
  18. package/dist/Auth/PassthroughAuth.cjs +1 -1
  19. package/dist/Auth/PassthroughAuth.js +1 -1
  20. package/dist/BoostCore.cjs +2 -2
  21. package/dist/BoostCore.cjs.map +1 -1
  22. package/dist/BoostCore.d.ts +14 -0
  23. package/dist/BoostCore.d.ts.map +1 -1
  24. package/dist/BoostCore.js +199 -180
  25. package/dist/BoostCore.js.map +1 -1
  26. package/dist/BoostRegistry.cjs +1 -1
  27. package/dist/BoostRegistry.cjs.map +1 -1
  28. package/dist/BoostRegistry.d.ts.map +1 -1
  29. package/dist/BoostRegistry.js +31 -31
  30. package/dist/BoostRegistry.js.map +1 -1
  31. package/dist/Budget-DGg1wCa6.cjs +2 -0
  32. package/dist/Budget-DGg1wCa6.cjs.map +1 -0
  33. package/dist/{Budget-B-grnRq9.js → Budget-ZnzzZsjK.js} +102 -102
  34. package/dist/Budget-ZnzzZsjK.js.map +1 -0
  35. package/dist/Budgets/Budget.cjs +1 -1
  36. package/dist/Budgets/Budget.js +3 -3
  37. package/dist/Budgets/ManagedBudget.cjs +1 -1
  38. package/dist/Budgets/ManagedBudget.cjs.map +1 -1
  39. package/dist/Budgets/ManagedBudget.d.ts.map +1 -1
  40. package/dist/Budgets/ManagedBudget.js +48 -48
  41. package/dist/Budgets/ManagedBudget.js.map +1 -1
  42. package/dist/Budgets/ManagedBudgetWithFees.d.ts.map +1 -1
  43. package/dist/Budgets/ManagedBudgetWithFeesV2.d.ts.map +1 -1
  44. package/dist/Budgets/TransparentBudget.d.ts.map +1 -1
  45. package/dist/Budgets/VestingBudget.d.ts.map +1 -1
  46. package/dist/Deployable/DeployableTarget.cjs +1 -1
  47. package/dist/Deployable/DeployableTarget.cjs.map +1 -1
  48. package/dist/Deployable/DeployableTarget.d.ts.map +1 -1
  49. package/dist/Deployable/DeployableTarget.js +5 -8
  50. package/dist/Deployable/DeployableTarget.js.map +1 -1
  51. package/dist/Deployable/DeployableTargetWithRBAC.cjs +1 -1
  52. package/dist/Deployable/DeployableTargetWithRBAC.js +19 -19
  53. package/dist/{Incentive-Bz_g-nID.js → Incentive-CYj6lbM5.js} +64 -64
  54. package/dist/Incentive-CYj6lbM5.js.map +1 -0
  55. package/dist/{Incentive-Dufx0ZjH.cjs → Incentive-Ckxpw7EN.cjs} +2 -2
  56. package/dist/Incentive-Ckxpw7EN.cjs.map +1 -0
  57. package/dist/Incentives/AllowListIncentive.cjs +1 -1
  58. package/dist/Incentives/AllowListIncentive.cjs.map +1 -1
  59. package/dist/Incentives/AllowListIncentive.d.ts.map +1 -1
  60. package/dist/Incentives/AllowListIncentive.js +36 -36
  61. package/dist/Incentives/AllowListIncentive.js.map +1 -1
  62. package/dist/Incentives/CGDAIncentive.cjs +1 -1
  63. package/dist/Incentives/CGDAIncentive.cjs.map +1 -1
  64. package/dist/Incentives/CGDAIncentive.d.ts.map +1 -1
  65. package/dist/Incentives/CGDAIncentive.js +37 -37
  66. package/dist/Incentives/CGDAIncentive.js.map +1 -1
  67. package/dist/Incentives/ERC1155Incentive.d.ts.map +1 -1
  68. package/dist/Incentives/ERC20Incentive.cjs +1 -1
  69. package/dist/Incentives/ERC20Incentive.cjs.map +1 -1
  70. package/dist/Incentives/ERC20Incentive.d.ts.map +1 -1
  71. package/dist/Incentives/ERC20Incentive.js +44 -44
  72. package/dist/Incentives/ERC20Incentive.js.map +1 -1
  73. package/dist/Incentives/ERC20PeggedIncentive.d.ts.map +1 -1
  74. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.cjs +1 -1
  75. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.cjs.map +1 -1
  76. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.d.ts.map +1 -1
  77. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.js +63 -63
  78. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.js.map +1 -1
  79. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.cjs +1 -1
  80. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.cjs.map +1 -1
  81. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.d.ts.map +1 -1
  82. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.js +55 -53
  83. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.js.map +1 -1
  84. package/dist/Incentives/ERC20VariableCriteriaIncentive.cjs +1 -1
  85. package/dist/Incentives/ERC20VariableCriteriaIncentive.cjs.map +1 -1
  86. package/dist/Incentives/ERC20VariableCriteriaIncentive.d.ts.map +1 -1
  87. package/dist/Incentives/ERC20VariableCriteriaIncentive.js +45 -45
  88. package/dist/Incentives/ERC20VariableCriteriaIncentive.js.map +1 -1
  89. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.cjs +1 -1
  90. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.cjs.map +1 -1
  91. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.d.ts.map +1 -1
  92. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.js +51 -49
  93. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.js.map +1 -1
  94. package/dist/Incentives/ERC20VariableIncentive.cjs +1 -1
  95. package/dist/Incentives/ERC20VariableIncentive.cjs.map +1 -1
  96. package/dist/Incentives/ERC20VariableIncentive.d.ts.map +1 -1
  97. package/dist/Incentives/ERC20VariableIncentive.js +38 -38
  98. package/dist/Incentives/ERC20VariableIncentive.js.map +1 -1
  99. package/dist/Incentives/Incentive.cjs +1 -1
  100. package/dist/Incentives/Incentive.js +3 -3
  101. package/dist/Incentives/PointsIncentive.cjs +1 -1
  102. package/dist/Incentives/PointsIncentive.cjs.map +1 -1
  103. package/dist/Incentives/PointsIncentive.d.ts.map +1 -1
  104. package/dist/Incentives/PointsIncentive.js +35 -35
  105. package/dist/Incentives/PointsIncentive.js.map +1 -1
  106. package/dist/{SimpleDenyList-BlLgvhjE.js → SimpleDenyList-DUO4ex__.js} +32 -32
  107. package/dist/SimpleDenyList-DUO4ex__.js.map +1 -0
  108. package/dist/{SimpleDenyList-B2YDJ_gk.cjs → SimpleDenyList-v5G-fPfm.cjs} +2 -2
  109. package/dist/SimpleDenyList-v5G-fPfm.cjs.map +1 -0
  110. package/dist/Validator-BA8RC2J6.cjs +2 -0
  111. package/dist/Validator-BA8RC2J6.cjs.map +1 -0
  112. package/dist/Validator-D4CzwdB9.js +409 -0
  113. package/dist/Validator-D4CzwdB9.js.map +1 -0
  114. package/dist/Validators/LimitedSignerValidator.cjs +1 -1
  115. package/dist/Validators/LimitedSignerValidator.cjs.map +1 -1
  116. package/dist/Validators/LimitedSignerValidator.d.ts.map +1 -1
  117. package/dist/Validators/LimitedSignerValidator.js +39 -39
  118. package/dist/Validators/LimitedSignerValidator.js.map +1 -1
  119. package/dist/Validators/PayableLimitedSignerValidator.d.ts +829 -0
  120. package/dist/Validators/PayableLimitedSignerValidator.d.ts.map +1 -0
  121. package/dist/Validators/SignerValidator.cjs +1 -1
  122. package/dist/Validators/SignerValidator.cjs.map +1 -1
  123. package/dist/Validators/SignerValidator.d.ts.map +1 -1
  124. package/dist/Validators/SignerValidator.js +48 -48
  125. package/dist/Validators/SignerValidator.js.map +1 -1
  126. package/dist/Validators/Validator.cjs +1 -1
  127. package/dist/Validators/Validator.cjs.map +1 -1
  128. package/dist/Validators/Validator.d.ts +4 -3
  129. package/dist/Validators/Validator.d.ts.map +1 -1
  130. package/dist/Validators/Validator.js +14 -50
  131. package/dist/Validators/Validator.js.map +1 -1
  132. package/dist/componentInterfaces-D4QdH2Qz.cjs +2 -0
  133. package/dist/componentInterfaces-D4QdH2Qz.cjs.map +1 -0
  134. package/dist/componentInterfaces-DCTot4_O.js +24 -0
  135. package/dist/componentInterfaces-DCTot4_O.js.map +1 -0
  136. package/dist/{deployments-DKtAq6BT.js → deployments-B-ZU0zVY.js} +61 -34
  137. package/dist/{deployments-DKtAq6BT.js.map → deployments-B-ZU0zVY.js.map} +1 -1
  138. package/dist/deployments-CaacquP1.cjs +2 -0
  139. package/dist/deployments-CaacquP1.cjs.map +1 -0
  140. package/dist/deployments.json +32 -4
  141. package/dist/generated-BOBQ2ut4.cjs +3 -0
  142. package/dist/generated-BOBQ2ut4.cjs.map +1 -0
  143. package/dist/{generated-CINzoGbl.js → generated-ffteMTHN.js} +1157 -776
  144. package/dist/generated-ffteMTHN.js.map +1 -0
  145. package/dist/index.cjs +1 -1
  146. package/dist/index.d.ts +1 -0
  147. package/dist/index.d.ts.map +1 -1
  148. package/dist/index.js +123 -118
  149. package/package.json +1 -1
  150. package/src/Actions/EventAction.ts +3 -1
  151. package/src/AllowLists/SimpleAllowList.ts +3 -1
  152. package/src/AllowLists/SimpleDenyList.ts +3 -1
  153. package/src/BoostCore.ts +30 -1
  154. package/src/BoostRegistry.ts +3 -1
  155. package/src/Budgets/ManagedBudget.ts +3 -1
  156. package/src/Budgets/ManagedBudgetWithFees.ts +3 -1
  157. package/src/Budgets/ManagedBudgetWithFeesV2.ts +3 -1
  158. package/src/Budgets/TransparentBudget.ts +3 -1
  159. package/src/Budgets/VestingBudget.ts +3 -1
  160. package/src/Deployable/DeployableTarget.ts +2 -3
  161. package/src/Incentives/AllowListIncentive.ts +3 -1
  162. package/src/Incentives/CGDAIncentive.ts +3 -1
  163. package/src/Incentives/ERC1155Incentive.ts +3 -1
  164. package/src/Incentives/ERC20Incentive.ts +3 -1
  165. package/src/Incentives/ERC20PeggedIncentive.ts +3 -1
  166. package/src/Incentives/ERC20PeggedVariableCriteriaIncentive.ts +3 -1
  167. package/src/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.ts +6 -2
  168. package/src/Incentives/ERC20VariableCriteriaIncentive.ts +3 -1
  169. package/src/Incentives/ERC20VariableCriteriaIncentiveV2.ts +5 -1
  170. package/src/Incentives/ERC20VariableIncentive.ts +3 -1
  171. package/src/Incentives/PointsIncentive.ts +3 -1
  172. package/src/Validators/LimitedSignerValidator.ts +3 -1
  173. package/src/Validators/PayableLimitedSignerValidator.test.ts +202 -0
  174. package/src/Validators/PayableLimitedSignerValidator.ts +667 -0
  175. package/src/Validators/SignerValidator.ts +3 -1
  176. package/src/Validators/Validator.ts +7 -1
  177. package/src/index.ts +1 -0
  178. package/dist/Budget-B-grnRq9.js.map +0 -1
  179. package/dist/Budget-uGKa2qzz.cjs +0 -2
  180. package/dist/Budget-uGKa2qzz.cjs.map +0 -1
  181. package/dist/Incentive-Bz_g-nID.js.map +0 -1
  182. package/dist/Incentive-Dufx0ZjH.cjs.map +0 -1
  183. package/dist/SimpleDenyList-B2YDJ_gk.cjs.map +0 -1
  184. package/dist/SimpleDenyList-BlLgvhjE.js.map +0 -1
  185. package/dist/componentInterfaces-C5ig8mCK.cjs +0 -2
  186. package/dist/componentInterfaces-C5ig8mCK.cjs.map +0 -1
  187. package/dist/componentInterfaces-Ddus5rIA.js +0 -23
  188. package/dist/componentInterfaces-Ddus5rIA.js.map +0 -1
  189. package/dist/deployments-Dk-Z1L2X.cjs +0 -2
  190. package/dist/deployments-Dk-Z1L2X.cjs.map +0 -1
  191. package/dist/generated-CINzoGbl.js.map +0 -1
  192. package/dist/generated-C_JEoLDO.cjs +0 -3
  193. package/dist/generated-C_JEoLDO.cjs.map +0 -1
@@ -1,29 +1,29 @@
1
- import { C as n, a9 as u, aa as l, ab as w, ac as g, ad as p, ae as A, af as y, ag as m, ah as R, ai as T, aj as _, ak as P, al as V, am as k } from "../generated-CINzoGbl.js";
2
- import { getAccount as B } from "@wagmi/core";
3
- import { zeroAddress as t, encodeAbiParameters as E, parseAbiParameters as v } from "viem";
4
- import { M as D } from "../deployments-DKtAq6BT.js";
5
- import { DeployableTargetWithRBAC as q } from "../Deployable/DeployableTargetWithRBAC.js";
6
- import { DeployableUnknownOwnerProvidedError as C, UnknownTransferPayloadSupplied as F } from "../errors.js";
7
- import { prepareFungibleTransfer as N, prepareERC1155Transfer as x } from "../transfers.js";
8
- import { RegistryType as z } from "../utils.js";
9
- const G = "0x6080604052348015600e575f80fd5b5060156019565b607c565b63409feecd198054600181161560365763f92ee8a95f526004601cfd5b6001600160401b03808260011c146077578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b612bba806100895f395ff3fe608060405260043610610252575f3560e01c8063715018a611610137578063ec87621c116100af578063f8724aba1161007e578063fa4ca9b111610063578063fa4ca9b11461076e578063fe9fbb801461078d578063fee81cf4146107ac57610259565b8063f8724aba14610730578063f9a802c31461074f57610259565b8063ec87621c146106b1578063f04e283e146106c5578063f23a6e61146106d8578063f2fde38b1461071d57610259565b8063b300579311610106578063be4994f8116100eb578063be4994f814610654578063d2514e8414610673578063dcc213611461069257610259565b8063b3005793146105c4578063bc197c811461060d57610259565b8063715018a61461052257806375b238fc1461052a578063774c33ab1461053e5780638da5cb5b1461058c57610259565b8063439fab91116101ca578063514e62fc11610199578063578bcf351161017e578063578bcf35146104af5780635aef467a146104f057806361400c991461050357610259565b8063514e62fc1461047257806354d1f13d146104a757610259565b8063439fab9114610400578063451cc1911461041f578063474f5a44146104405780634a4ee7b11461045f57610259565b80631cd64df41161022157806328d6183b1161020657806328d6183b146103515780632de94807146103b05780634359d28a146103e157610259565b80631cd64df414610314578063256929621461034957610259565b806301ffc9a71461028b57806310098ad5146102bf578063183a4f6e146102ec5780631c10893f1461030157610259565b3661025957005b6040517fd623472500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b348015610296575f80fd5b506102aa6102a53660046120b8565b6107dd565b60405190151581526020015b60405180910390f35b3480156102ca575f80fd5b506102de6102d9366004612118565b6108d0565b6040519081526020016102b6565b6102ff6102fa366004612133565b610919565b005b6102ff61030f36600461214a565b610926565b34801561031f575f80fd5b506102aa61032e36600461214a565b638b78c6d8600c9081525f9290925260209091205481161490565b6102ff61093c565b34801561035c575f80fd5b507f5fbfaa4e000000000000000000000000000000000000000000000000000000005b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016102b6565b3480156103bb575f80fd5b506102de6103ca366004612118565b638b78c6d8600c9081525f91909152602090205490565b3480156103ec575f80fd5b506102ff6103fb3660046121bc565b610989565b34801561040b575f80fd5b506102ff61041a366004612266565b610a83565b34801561042a575f80fd5b506102de610439366004612266565b5f92915050565b34801561044b575f80fd5b506102de61045a366004612266565b610b87565b6102ff61046d36600461214a565b610d4a565b34801561047d575f80fd5b506102aa61048c36600461214a565b638b78c6d8600c9081525f9290925260209091205416151590565b6102ff610d5c565b3480156104ba575f80fd5b506102de6104c9366004612118565b73ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205490565b6102aa6104fe366004612266565b610d95565b34801561050e575f80fd5b506102aa61051d3660046122a5565b6110f5565b6102ff61113c565b348015610535575f80fd5b506102de600281565b348015610549575f80fd5b506102de61055836600461214a565b73ffffffffffffffffffffffffffffffffffffffff919091165f908152600160209081526040808320938352929052205490565b348015610597575f80fd5b50638b78c6d8195460405173ffffffffffffffffffffffffffffffffffffffff90911681526020016102b6565b3480156105cf575f80fd5b506105e36105de3660046122d8565b61114f565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016102b6565b348015610618575f80fd5b5061037f61062736600461233a565b7fbc197c810000000000000000000000000000000000000000000000000000000098975050505050505050565b34801561065f575f80fd5b506102ff61066e3660046121bc565b6112e4565b34801561067e575f80fd5b506102de61068d366004612118565b611382565b34801561069d575f80fd5b506102ff6106ac3660046121bc565b6113ba565b3480156106bc575f80fd5b506102de600181565b6102ff6106d3366004612118565b611458565b3480156106e3575f80fd5b5061037f6106f23660046123fd565b7ff23a6e61000000000000000000000000000000000000000000000000000000009695505050505050565b6102ff61072b366004612118565b611492565b34801561073b575f80fd5b506102de61074a36600461214a565b6114b8565b34801561075a575f80fd5b506102de61076936600461214a565b611552565b348015610779575f80fd5b506102aa610788366004612266565b611609565b348015610798575f80fd5b506102aa6107a7366004612118565b6118e1565b3480156107b7575f80fd5b506102de6107c6366004612118565b63389a75e1600c9081525f91909152602090205490565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f5fbfaa4e00000000000000000000000000000000000000000000000000000000148061086f57507fffffffff0000000000000000000000000000000000000000000000000000000082167f4e2312e000000000000000000000000000000000000000000000000000000000145b806108bb57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b806108ca57506108ca82611940565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff8216156109125761090d73ffffffffffffffffffffffffffffffffffffffff831630611995565b6108ca565b4792915050565b61092333826119c8565b50565b61092e6119d3565b61093882826119ed565b5050565b5f6202a30067ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b6002610994816119f9565b8382146109cd576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84811015610a7b575f8484838181106109ea576109ea612474565b90506020020160208101906109ff91906124a1565b9050801515600103610a4157610a3c878784818110610a2057610a20612474565b9050602002016020810190610a359190612118565b60016119ed565b610a72565b610a72878784818110610a5657610a56612474565b9050602002016020810190610a6b9190612118565b60016119c8565b506001016109cf565b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011328054600382558015610ad45760018160011c14303b10610acb5763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f610ae283850185612615565b9050610af0815f0151611a2a565b5f5b816020015151811015610b4b57610b4382602001518281518110610b1857610b18612474565b602002602001015183604001518381518110610b3657610b36612474565b6020026020010151611a72565b600101610af2565b50508015610b82576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f6002610b93816119f9565b5f610ba084860186612764565b90505f8082516002811115610bb757610bb761284a565b1480610bd55750600182516002811115610bd357610bd361284a565b145b15610c2c575f8260600151806020019051810190610bf39190612877565b602084015160408501518251929350610c249215610c12578351611ab3565b610c1f86602001516108d0565b611ab3565b519050610d3f565b600282516002811115610c4157610c4161284a565b03610d36575f8260600151806020019051810190610c5f91906128b9565b9050610d2b83602001518460400151835f015184602001515f14610c87578460200151610d21565b602087015185516040517efdd58e000000000000000000000000000000000000000000000000000000008152306004820152602481019190915273ffffffffffffffffffffffffffffffffffffffff9091169062fdd58e90604401602060405180830381865afa158015610cfd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d219190612977565b8560400151611c71565b602001519050610d3f565b9250610d439050565b9250505b5092915050565b610d526119d3565b61093882826119c8565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f80610da383850185612764565b90505f81516002811115610db957610db961284a565b03610e44575f8160600151806020019051810190610dd79190612877565b80519091503414610e3e57602082015181516040517fcece04c500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff909216600483015260248201526044015b60405180910390fd5b506110eb565b600181516002811115610e5957610e5961284a565b03610f2d575f8160600151806020019051810190610e779190612877565b604083015181516020850151929350610ea99273ffffffffffffffffffffffffffffffffffffffff1691903090611eb3565b80516020830151610ed09073ffffffffffffffffffffffffffffffffffffffff1630611995565b1015610e3e57602082015181516040517fcece04c500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90921660048301526024820152604401610e35565b600281516002811115610f4257610f4261284a565b036110e2575f8160600151806020019051810190610f6091906128b9565b9050816020015173ffffffffffffffffffffffffffffffffffffffff1663f242432a836040015130845f0151856020015186604001516040518663ffffffff1660e01b8152600401610fb69594939291906129da565b5f604051808303815f87803b158015610fcd575f80fd5b505af1158015610fdf573d5f803e3d5ffd5b5050506020808301519084015183516040517efdd58e000000000000000000000000000000000000000000000000000000008152306004820152602481019190915291925073ffffffffffffffffffffffffffffffffffffffff169062fdd58e90604401602060405180830381865afa15801561105e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110829190612977565b1015610e3e57602080830151908201516040517fcece04c500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90921660048301526024820152604401610e35565b5f9150506108ca565b5060019392505050565b5f805b828110156110eb5761112784848381811061111557611115612474565b90506020028101906107889190612a3b565b611134575f9150506108ca565b6001016110f8565b6111446119d3565b61114d5f611f15565b565b5f8061115a336118e1565b611190576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60405180604001604052803073ffffffffffffffffffffffffffffffffffffffff16815260200188888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509390945250506040519293508a92909150819073ffffffffffffffffffffffffffffffffffffffff84169063dd98558c90611228908790602001612a9c565b6040516020818303038152906040528a8a6040518463ffffffff1660e01b815260040161125793929190612ade565b60408051808303815f875af1158015611272573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112969190612b02565b73ffffffffffffffffffffffffffffffffffffffff81165f908152602081905260408120805493955091935084926112cf908490612b5e565b90915550919b909a5098505050505050505050565b60026112ef816119f9565b838214611328576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84811015610a7b5761137a86868381811061134757611347612474565b905060200201602081019061135c9190612118565b85858481811061136e5761136e612474565b905060200201356119ed565b60010161132a565b73ffffffffffffffffffffffffffffffffffffffff81165f908152602081905260408120546113b0836108d0565b6108ca9190612b71565b60026113c5816119f9565b8382146113fe576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84811015610a7b5761145086868381811061141d5761141d612474565b90506020020160208101906114329190612118565b85858481811061144457611444612474565b905060200201356119c8565b600101611400565b6114606119d3565b63389a75e1600c52805f526020600c20805442111561148657636f5e88185f526004601cfd5b5f905561092381611f15565b61149a6119d3565b8060601b6114af57637448fbae5f526004601cfd5b61092381611f15565b6040517efdd58e000000000000000000000000000000000000000000000000000000008152306004820152602481018290525f9073ffffffffffffffffffffffffffffffffffffffff84169062fdd58e90604401602060405180830381865afa158015611527573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061154b9190612977565b9392505050565b73ffffffffffffffffffffffffffffffffffffffff82165f8181526001602090815260408083208584529091528082205490517efdd58e000000000000000000000000000000000000000000000000000000008152306004820152602481018590529192909162fdd58e90604401602060405180830381865afa1580156115db573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115ff9190612977565b61154b9190612b71565b5f611613336118e1565b611649576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f61165683850185612764565b905060018151600281111561166d5761166d61284a565b148061168a57505f815160028111156116885761168861284a565b145b15611780575f81606001518060200190518101906116a89190612877565b90505f6116b883602001516108d0565b905080825f0151111561172357602083015182516040517f5c54305e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9092166004830152602482018390526044820152606401610e35565b815160208085015173ffffffffffffffffffffffffffffffffffffffff165f9081529081905260408120805490919061175d908490612b71565b9091555050602083015160408401518351611779929190611ab3565b50506110eb565b6002815160028111156117955761179561284a565b036110e2575f81606001518060200190518101906117b391906128b9565b602083015181516040517efdd58e00000000000000000000000000000000000000000000000000000000815230600482015260248101919091529192505f9173ffffffffffffffffffffffffffffffffffffffff9091169062fdd58e90604401602060405180830381865afa15801561182e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118529190612977565b905080826020015111156118c157602080840151908301516040517f5c54305e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9092166004830152602482018390526044820152606401610e35565b61177983602001518460400151845f015185602001518660400151611c71565b5f8173ffffffffffffffffffffffffffffffffffffffff16611906638b78c6d8195490565b73ffffffffffffffffffffffffffffffffffffffff1614806108ca5750638b78c6d8600c9081525f839052602090205460031615156108ca565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fe49cedd70000000000000000000000000000000000000000000000000000000014806108ca57506108ca82611f5f565b5f816014526f70a082310000000000000000000000005f5260208060246010865afa601f3d111660205102905092915050565b61093882825f611ff5565b638b78c6d81954331461114d576382b429005f526004601cfd5b61093882826001611ff5565b638b78c6d81954331461092357638b78c6d8600c52335f52806020600c205416610923576382b429005f526004601cfd5b73ffffffffffffffffffffffffffffffffffffffff16638b78c6d819819055805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a350565b638b78c6d8600c52815f52806020600c205580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a35050565b3068929eee149b4bd212685403611ad15763ab143c065f526004601cfd5b3068929eee149b4bd212685573ffffffffffffffffffffffffffffffffffffffff8216611b51576040517fbf182be800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff80851660048301528316602482015260448101829052606401610e35565b611b5a836108d0565b811115611bc25782611b6b846108d0565b6040517f5c54305e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9092166004830152602482015260448101829052606401610e35565b73ffffffffffffffffffffffffffffffffffffffff8316611bec57611be7828261204c565b611c0d565b611c0d73ffffffffffffffffffffffffffffffffffffffff84168383612065565b6040805173ffffffffffffffffffffffffffffffffffffffff8481168252602082018490528516917fad4a9acf26d8bba7a8cf1a41160d59be042ee554578e256c98d2ab74cdd43542910160405180910390a23868929eee149b4bd2126855505050565b3068929eee149b4bd212685403611c8f5763ab143c065f526004601cfd5b3068929eee149b4bd212685573ffffffffffffffffffffffffffffffffffffffff8416611d0f576040517fbf182be800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff80871660048301528516602482015260448101839052606401610e35565b611d1985846114b8565b821115611d825784611d2b86856114b8565b6040517f5c54305e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9092166004830152602482015260448101839052606401610e35565b73ffffffffffffffffffffffffffffffffffffffff85165f90815260016020908152604080832086845290915281208054849290611dc1908490612b71565b90915550506040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86169063f242432a90611e2090309088908890889088906004016129da565b5f604051808303815f87803b158015611e37575f80fd5b505af1158015611e49573d5f803e3d5ffd5b50506040805173ffffffffffffffffffffffffffffffffffffffff888116825260208201879052891693507fad4a9acf26d8bba7a8cf1a41160d59be042ee554578e256c98d2ab74cdd4354292500160405180910390a23868929eee149b4bd21268555050505050565b60405181606052826040528360601b602c526f23b872dd000000000000000000000000600c5260205f6064601c5f895af18060015f511416611f0757803d873b151710611f0757637939f4245f526004601cfd5b505f60605260405250505050565b638b78c6d819805473ffffffffffffffffffffffffffffffffffffffff9092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a355565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6ab67a0d0000000000000000000000000000000000000000000000000000000014806108ca57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146108ca565b638b78c6d8600c52825f526020600c20805483811783612016575080841681185b80835580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a3505050505050565b5f385f3884865af16109385763b12d13eb5f526004601cfd5b81601452806034526fa9059cbb0000000000000000000000005f5260205f604460105f875af18060015f5114166120ae57803d853b1517106120ae576390b8ec185f526004601cfd5b505f603452505050565b5f602082840312156120c8575f80fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461154b575f80fd5b73ffffffffffffffffffffffffffffffffffffffff81168114610923575f80fd5b5f60208284031215612128575f80fd5b813561154b816120f7565b5f60208284031215612143575f80fd5b5035919050565b5f806040838503121561215b575f80fd5b8235612166816120f7565b946020939093013593505050565b5f8083601f840112612184575f80fd5b50813567ffffffffffffffff81111561219b575f80fd5b6020830191508360208260051b85010111156121b5575f80fd5b9250929050565b5f805f80604085870312156121cf575f80fd5b843567ffffffffffffffff8111156121e5575f80fd5b6121f187828801612174565b909550935050602085013567ffffffffffffffff811115612210575f80fd5b61221c87828801612174565b95989497509550505050565b5f8083601f840112612238575f80fd5b50813567ffffffffffffffff81111561224f575f80fd5b6020830191508360208285010111156121b5575f80fd5b5f8060208385031215612277575f80fd5b823567ffffffffffffffff81111561228d575f80fd5b61229985828601612228565b90969095509350505050565b5f80602083850312156122b6575f80fd5b823567ffffffffffffffff8111156122cc575f80fd5b61229985828601612174565b5f805f805f608086880312156122ec575f80fd5b85356122f7816120f7565b9450602086013567ffffffffffffffff811115612312575f80fd5b61231e88828901612228565b9699909850959660408101359660609091013595509350505050565b5f805f805f805f8060a0898b031215612351575f80fd5b883561235c816120f7565b9750602089013561236c816120f7565b9650604089013567ffffffffffffffff811115612387575f80fd5b6123938b828c01612174565b909750955050606089013567ffffffffffffffff8111156123b2575f80fd5b6123be8b828c01612174565b909550935050608089013567ffffffffffffffff8111156123dd575f80fd5b6123e98b828c01612228565b999c989b5096995094979396929594505050565b5f805f805f8060a08789031215612412575f80fd5b863561241d816120f7565b9550602087013561242d816120f7565b94506040870135935060608701359250608087013567ffffffffffffffff811115612456575f80fd5b61246289828a01612228565b979a9699509497509295939492505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f602082840312156124b1575f80fd5b8135801515811461154b575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040516060810167ffffffffffffffff81118282101715612510576125106124c0565b60405290565b6040516080810167ffffffffffffffff81118282101715612510576125106124c0565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612580576125806124c0565b604052919050565b5f67ffffffffffffffff8211156125a1576125a16124c0565b5060051b60200190565b5f82601f8301126125ba575f80fd5b81356125cd6125c882612588565b612539565b8082825260208201915060208360051b8601019250858311156125ee575f80fd5b602085015b8381101561260b5780358352602092830192016125f3565b5095945050505050565b5f60208284031215612625575f80fd5b813567ffffffffffffffff81111561263b575f80fd5b82016060818503121561264c575f80fd5b6126546124ed565b813561265f816120f7565b8152602082013567ffffffffffffffff81111561267a575f80fd5b8201601f8101861361268a575f80fd5b80356126986125c882612588565b8082825260208201915060208360051b8501019250888311156126b9575f80fd5b6020840193505b828410156126e45783356126d3816120f7565b8252602093840193909101906126c0565b6020850152505050604082013567ffffffffffffffff811115612705575f80fd5b612711868285016125ab565b604083015250949350505050565b5f67ffffffffffffffff821115612738576127386124c0565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f60208284031215612774575f80fd5b813567ffffffffffffffff81111561278a575f80fd5b82016080818503121561279b575f80fd5b6127a3612516565b8135600381106127b1575f80fd5b815260208201356127c1816120f7565b602082015260408201356127d4816120f7565b6040820152606082013567ffffffffffffffff8111156127f2575f80fd5b80830192505084601f830112612806575f80fd5b81356128146125c88261271f565b818152866020838601011115612828575f80fd5b816020850160208301375f918101602001919091526060820152949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b5f6020828403128015612888575f80fd5b506040516020810167ffffffffffffffff811182821017156128ac576128ac6124c0565b6040529151825250919050565b5f602082840312156128c9575f80fd5b815167ffffffffffffffff8111156128df575f80fd5b8201606081850312156128f0575f80fd5b6128f86124ed565b8151815260208083015190820152604082015167ffffffffffffffff81111561291f575f80fd5b80830192505084601f830112612933575f80fd5b81516129416125c88261271f565b818152866020838601011115612955575f80fd5b8160208501602083015e5f918101602001919091526040820152949350505050565b5f60208284031215612987575f80fd5b5051919050565b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b73ffffffffffffffffffffffffffffffffffffffff8616815273ffffffffffffffffffffffffffffffffffffffff8516602082015283604082015282606082015260a060808201525f612a3060a083018461298e565b979650505050505050565b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112612a6e575f80fd5b83018035915067ffffffffffffffff821115612a88575f80fd5b6020019150368190038213156121b5575f80fd5b6020815273ffffffffffffffffffffffffffffffffffffffff82511660208201525f6020830151604080840152612ad6606084018261298e565b949350505050565b606081525f612af0606083018661298e565b60208301949094525060400152919050565b5f8060408385031215612b13575f80fd5b82516020840151909250612b26816120f7565b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b818103818111156108ca576108ca612b31565b808201808211156108ca576108ca612b3156fea264697066735822122046c94008e6e9f40d780be9afd13f29f60c7d13d80bc5bdd187b40201a133d17164736f6c634300081a0033";
10
- var I = /* @__PURE__ */ ((d) => (d[d.MANAGER = 1n] = "MANAGER", d[d.ADMIN = 2n] = "ADMIN", d))(I || {});
11
- function M(d) {
1
+ import { C as o, a9 as l, aa as w, ab as A, ac as g, ad as p, ae as y, af as m, ag as E, ah as R, ai as T, aj as P, ak as _, al as B, am as D } from "../generated-ffteMTHN.js";
2
+ import { getAccount as S } from "@wagmi/core";
3
+ import { zeroAddress as t, encodeAbiParameters as V, parseAbiParameters as N } from "viem";
4
+ import { M as k } from "../deployments-B-ZU0zVY.js";
5
+ import { DeployableTargetWithRBAC as C } from "../Deployable/DeployableTargetWithRBAC.js";
6
+ import { DeployableUnknownOwnerProvidedError as I, UnknownTransferPayloadSupplied as O } from "../errors.js";
7
+ import { prepareFungibleTransfer as F, prepareERC1155Transfer as G } from "../transfers.js";
8
+ import { RegistryType as M } from "../utils.js";
9
+ const q = "0x6080604052348015600e575f80fd5b5060156019565b607c565b63409feecd198054600181161560365763f92ee8a95f526004601cfd5b6001600160401b03808260011c146077578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b612bba806100895f395ff3fe608060405260043610610252575f3560e01c8063715018a611610137578063ec87621c116100af578063f8724aba1161007e578063fa4ca9b111610063578063fa4ca9b11461076e578063fe9fbb801461078d578063fee81cf4146107ac57610259565b8063f8724aba14610730578063f9a802c31461074f57610259565b8063ec87621c146106b1578063f04e283e146106c5578063f23a6e61146106d8578063f2fde38b1461071d57610259565b8063b300579311610106578063be4994f8116100eb578063be4994f814610654578063d2514e8414610673578063dcc213611461069257610259565b8063b3005793146105c4578063bc197c811461060d57610259565b8063715018a61461052257806375b238fc1461052a578063774c33ab1461053e5780638da5cb5b1461058c57610259565b8063439fab91116101ca578063514e62fc11610199578063578bcf351161017e578063578bcf35146104af5780635aef467a146104f057806361400c991461050357610259565b8063514e62fc1461047257806354d1f13d146104a757610259565b8063439fab9114610400578063451cc1911461041f578063474f5a44146104405780634a4ee7b11461045f57610259565b80631cd64df41161022157806328d6183b1161020657806328d6183b146103515780632de94807146103b05780634359d28a146103e157610259565b80631cd64df414610314578063256929621461034957610259565b806301ffc9a71461028b57806310098ad5146102bf578063183a4f6e146102ec5780631c10893f1461030157610259565b3661025957005b6040517fd623472500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b348015610296575f80fd5b506102aa6102a53660046120b8565b6107dd565b60405190151581526020015b60405180910390f35b3480156102ca575f80fd5b506102de6102d9366004612118565b6108d0565b6040519081526020016102b6565b6102ff6102fa366004612133565b610919565b005b6102ff61030f36600461214a565b610926565b34801561031f575f80fd5b506102aa61032e36600461214a565b638b78c6d8600c9081525f9290925260209091205481161490565b6102ff61093c565b34801561035c575f80fd5b507f5fbfaa4e000000000000000000000000000000000000000000000000000000005b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016102b6565b3480156103bb575f80fd5b506102de6103ca366004612118565b638b78c6d8600c9081525f91909152602090205490565b3480156103ec575f80fd5b506102ff6103fb3660046121bc565b610989565b34801561040b575f80fd5b506102ff61041a366004612266565b610a83565b34801561042a575f80fd5b506102de610439366004612266565b5f92915050565b34801561044b575f80fd5b506102de61045a366004612266565b610b87565b6102ff61046d36600461214a565b610d4a565b34801561047d575f80fd5b506102aa61048c36600461214a565b638b78c6d8600c9081525f9290925260209091205416151590565b6102ff610d5c565b3480156104ba575f80fd5b506102de6104c9366004612118565b73ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205490565b6102aa6104fe366004612266565b610d95565b34801561050e575f80fd5b506102aa61051d3660046122a5565b6110f5565b6102ff61113c565b348015610535575f80fd5b506102de600281565b348015610549575f80fd5b506102de61055836600461214a565b73ffffffffffffffffffffffffffffffffffffffff919091165f908152600160209081526040808320938352929052205490565b348015610597575f80fd5b50638b78c6d8195460405173ffffffffffffffffffffffffffffffffffffffff90911681526020016102b6565b3480156105cf575f80fd5b506105e36105de3660046122d8565b61114f565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016102b6565b348015610618575f80fd5b5061037f61062736600461233a565b7fbc197c810000000000000000000000000000000000000000000000000000000098975050505050505050565b34801561065f575f80fd5b506102ff61066e3660046121bc565b6112e4565b34801561067e575f80fd5b506102de61068d366004612118565b611382565b34801561069d575f80fd5b506102ff6106ac3660046121bc565b6113ba565b3480156106bc575f80fd5b506102de600181565b6102ff6106d3366004612118565b611458565b3480156106e3575f80fd5b5061037f6106f23660046123fd565b7ff23a6e61000000000000000000000000000000000000000000000000000000009695505050505050565b6102ff61072b366004612118565b611492565b34801561073b575f80fd5b506102de61074a36600461214a565b6114b8565b34801561075a575f80fd5b506102de61076936600461214a565b611552565b348015610779575f80fd5b506102aa610788366004612266565b611609565b348015610798575f80fd5b506102aa6107a7366004612118565b6118e1565b3480156107b7575f80fd5b506102de6107c6366004612118565b63389a75e1600c9081525f91909152602090205490565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f5fbfaa4e00000000000000000000000000000000000000000000000000000000148061086f57507fffffffff0000000000000000000000000000000000000000000000000000000082167f4e2312e000000000000000000000000000000000000000000000000000000000145b806108bb57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b806108ca57506108ca82611940565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff8216156109125761090d73ffffffffffffffffffffffffffffffffffffffff831630611995565b6108ca565b4792915050565b61092333826119c8565b50565b61092e6119d3565b61093882826119ed565b5050565b5f6202a30067ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b6002610994816119f9565b8382146109cd576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84811015610a7b575f8484838181106109ea576109ea612474565b90506020020160208101906109ff91906124a1565b9050801515600103610a4157610a3c878784818110610a2057610a20612474565b9050602002016020810190610a359190612118565b60016119ed565b610a72565b610a72878784818110610a5657610a56612474565b9050602002016020810190610a6b9190612118565b60016119c8565b506001016109cf565b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011328054600382558015610ad45760018160011c14303b10610acb5763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f610ae283850185612615565b9050610af0815f0151611a2a565b5f5b816020015151811015610b4b57610b4382602001518281518110610b1857610b18612474565b602002602001015183604001518381518110610b3657610b36612474565b6020026020010151611a72565b600101610af2565b50508015610b82576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f6002610b93816119f9565b5f610ba084860186612764565b90505f8082516002811115610bb757610bb761284a565b1480610bd55750600182516002811115610bd357610bd361284a565b145b15610c2c575f8260600151806020019051810190610bf39190612877565b602084015160408501518251929350610c249215610c12578351611ab3565b610c1f86602001516108d0565b611ab3565b519050610d3f565b600282516002811115610c4157610c4161284a565b03610d36575f8260600151806020019051810190610c5f91906128b9565b9050610d2b83602001518460400151835f015184602001515f14610c87578460200151610d21565b602087015185516040517efdd58e000000000000000000000000000000000000000000000000000000008152306004820152602481019190915273ffffffffffffffffffffffffffffffffffffffff9091169062fdd58e90604401602060405180830381865afa158015610cfd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d219190612977565b8560400151611c71565b602001519050610d3f565b9250610d439050565b9250505b5092915050565b610d526119d3565b61093882826119c8565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f80610da383850185612764565b90505f81516002811115610db957610db961284a565b03610e44575f8160600151806020019051810190610dd79190612877565b80519091503414610e3e57602082015181516040517fcece04c500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff909216600483015260248201526044015b60405180910390fd5b506110eb565b600181516002811115610e5957610e5961284a565b03610f2d575f8160600151806020019051810190610e779190612877565b604083015181516020850151929350610ea99273ffffffffffffffffffffffffffffffffffffffff1691903090611eb3565b80516020830151610ed09073ffffffffffffffffffffffffffffffffffffffff1630611995565b1015610e3e57602082015181516040517fcece04c500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90921660048301526024820152604401610e35565b600281516002811115610f4257610f4261284a565b036110e2575f8160600151806020019051810190610f6091906128b9565b9050816020015173ffffffffffffffffffffffffffffffffffffffff1663f242432a836040015130845f0151856020015186604001516040518663ffffffff1660e01b8152600401610fb69594939291906129da565b5f604051808303815f87803b158015610fcd575f80fd5b505af1158015610fdf573d5f803e3d5ffd5b5050506020808301519084015183516040517efdd58e000000000000000000000000000000000000000000000000000000008152306004820152602481019190915291925073ffffffffffffffffffffffffffffffffffffffff169062fdd58e90604401602060405180830381865afa15801561105e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110829190612977565b1015610e3e57602080830151908201516040517fcece04c500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90921660048301526024820152604401610e35565b5f9150506108ca565b5060019392505050565b5f805b828110156110eb5761112784848381811061111557611115612474565b90506020028101906107889190612a3b565b611134575f9150506108ca565b6001016110f8565b6111446119d3565b61114d5f611f15565b565b5f8061115a336118e1565b611190576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60405180604001604052803073ffffffffffffffffffffffffffffffffffffffff16815260200188888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509390945250506040519293508a92909150819073ffffffffffffffffffffffffffffffffffffffff84169063dd98558c90611228908790602001612a9c565b6040516020818303038152906040528a8a6040518463ffffffff1660e01b815260040161125793929190612ade565b60408051808303815f875af1158015611272573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112969190612b02565b73ffffffffffffffffffffffffffffffffffffffff81165f908152602081905260408120805493955091935084926112cf908490612b5e565b90915550919b909a5098505050505050505050565b60026112ef816119f9565b838214611328576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84811015610a7b5761137a86868381811061134757611347612474565b905060200201602081019061135c9190612118565b85858481811061136e5761136e612474565b905060200201356119ed565b60010161132a565b73ffffffffffffffffffffffffffffffffffffffff81165f908152602081905260408120546113b0836108d0565b6108ca9190612b71565b60026113c5816119f9565b8382146113fe576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84811015610a7b5761145086868381811061141d5761141d612474565b90506020020160208101906114329190612118565b85858481811061144457611444612474565b905060200201356119c8565b600101611400565b6114606119d3565b63389a75e1600c52805f526020600c20805442111561148657636f5e88185f526004601cfd5b5f905561092381611f15565b61149a6119d3565b8060601b6114af57637448fbae5f526004601cfd5b61092381611f15565b6040517efdd58e000000000000000000000000000000000000000000000000000000008152306004820152602481018290525f9073ffffffffffffffffffffffffffffffffffffffff84169062fdd58e90604401602060405180830381865afa158015611527573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061154b9190612977565b9392505050565b73ffffffffffffffffffffffffffffffffffffffff82165f8181526001602090815260408083208584529091528082205490517efdd58e000000000000000000000000000000000000000000000000000000008152306004820152602481018590529192909162fdd58e90604401602060405180830381865afa1580156115db573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115ff9190612977565b61154b9190612b71565b5f611613336118e1565b611649576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f61165683850185612764565b905060018151600281111561166d5761166d61284a565b148061168a57505f815160028111156116885761168861284a565b145b15611780575f81606001518060200190518101906116a89190612877565b90505f6116b883602001516108d0565b905080825f0151111561172357602083015182516040517f5c54305e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9092166004830152602482018390526044820152606401610e35565b815160208085015173ffffffffffffffffffffffffffffffffffffffff165f9081529081905260408120805490919061175d908490612b71565b9091555050602083015160408401518351611779929190611ab3565b50506110eb565b6002815160028111156117955761179561284a565b036110e2575f81606001518060200190518101906117b391906128b9565b602083015181516040517efdd58e00000000000000000000000000000000000000000000000000000000815230600482015260248101919091529192505f9173ffffffffffffffffffffffffffffffffffffffff9091169062fdd58e90604401602060405180830381865afa15801561182e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118529190612977565b905080826020015111156118c157602080840151908301516040517f5c54305e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9092166004830152602482018390526044820152606401610e35565b61177983602001518460400151845f015185602001518660400151611c71565b5f8173ffffffffffffffffffffffffffffffffffffffff16611906638b78c6d8195490565b73ffffffffffffffffffffffffffffffffffffffff1614806108ca5750638b78c6d8600c9081525f839052602090205460031615156108ca565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fe49cedd70000000000000000000000000000000000000000000000000000000014806108ca57506108ca82611f5f565b5f816014526f70a082310000000000000000000000005f5260208060246010865afa601f3d111660205102905092915050565b61093882825f611ff5565b638b78c6d81954331461114d576382b429005f526004601cfd5b61093882826001611ff5565b638b78c6d81954331461092357638b78c6d8600c52335f52806020600c205416610923576382b429005f526004601cfd5b73ffffffffffffffffffffffffffffffffffffffff16638b78c6d819819055805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a350565b638b78c6d8600c52815f52806020600c205580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a35050565b3068929eee149b4bd212685403611ad15763ab143c065f526004601cfd5b3068929eee149b4bd212685573ffffffffffffffffffffffffffffffffffffffff8216611b51576040517fbf182be800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff80851660048301528316602482015260448101829052606401610e35565b611b5a836108d0565b811115611bc25782611b6b846108d0565b6040517f5c54305e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9092166004830152602482015260448101829052606401610e35565b73ffffffffffffffffffffffffffffffffffffffff8316611bec57611be7828261204c565b611c0d565b611c0d73ffffffffffffffffffffffffffffffffffffffff84168383612065565b6040805173ffffffffffffffffffffffffffffffffffffffff8481168252602082018490528516917fad4a9acf26d8bba7a8cf1a41160d59be042ee554578e256c98d2ab74cdd43542910160405180910390a23868929eee149b4bd2126855505050565b3068929eee149b4bd212685403611c8f5763ab143c065f526004601cfd5b3068929eee149b4bd212685573ffffffffffffffffffffffffffffffffffffffff8416611d0f576040517fbf182be800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff80871660048301528516602482015260448101839052606401610e35565b611d1985846114b8565b821115611d825784611d2b86856114b8565b6040517f5c54305e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9092166004830152602482015260448101839052606401610e35565b73ffffffffffffffffffffffffffffffffffffffff85165f90815260016020908152604080832086845290915281208054849290611dc1908490612b71565b90915550506040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86169063f242432a90611e2090309088908890889088906004016129da565b5f604051808303815f87803b158015611e37575f80fd5b505af1158015611e49573d5f803e3d5ffd5b50506040805173ffffffffffffffffffffffffffffffffffffffff888116825260208201879052891693507fad4a9acf26d8bba7a8cf1a41160d59be042ee554578e256c98d2ab74cdd4354292500160405180910390a23868929eee149b4bd21268555050505050565b60405181606052826040528360601b602c526f23b872dd000000000000000000000000600c5260205f6064601c5f895af18060015f511416611f0757803d873b151710611f0757637939f4245f526004601cfd5b505f60605260405250505050565b638b78c6d819805473ffffffffffffffffffffffffffffffffffffffff9092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a355565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6ab67a0d0000000000000000000000000000000000000000000000000000000014806108ca57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146108ca565b638b78c6d8600c52825f526020600c20805483811783612016575080841681185b80835580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a3505050505050565b5f385f3884865af16109385763b12d13eb5f526004601cfd5b81601452806034526fa9059cbb0000000000000000000000005f5260205f604460105f875af18060015f5114166120ae57803d853b1517106120ae576390b8ec185f526004601cfd5b505f603452505050565b5f602082840312156120c8575f80fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461154b575f80fd5b73ffffffffffffffffffffffffffffffffffffffff81168114610923575f80fd5b5f60208284031215612128575f80fd5b813561154b816120f7565b5f60208284031215612143575f80fd5b5035919050565b5f806040838503121561215b575f80fd5b8235612166816120f7565b946020939093013593505050565b5f8083601f840112612184575f80fd5b50813567ffffffffffffffff81111561219b575f80fd5b6020830191508360208260051b85010111156121b5575f80fd5b9250929050565b5f805f80604085870312156121cf575f80fd5b843567ffffffffffffffff8111156121e5575f80fd5b6121f187828801612174565b909550935050602085013567ffffffffffffffff811115612210575f80fd5b61221c87828801612174565b95989497509550505050565b5f8083601f840112612238575f80fd5b50813567ffffffffffffffff81111561224f575f80fd5b6020830191508360208285010111156121b5575f80fd5b5f8060208385031215612277575f80fd5b823567ffffffffffffffff81111561228d575f80fd5b61229985828601612228565b90969095509350505050565b5f80602083850312156122b6575f80fd5b823567ffffffffffffffff8111156122cc575f80fd5b61229985828601612174565b5f805f805f608086880312156122ec575f80fd5b85356122f7816120f7565b9450602086013567ffffffffffffffff811115612312575f80fd5b61231e88828901612228565b9699909850959660408101359660609091013595509350505050565b5f805f805f805f8060a0898b031215612351575f80fd5b883561235c816120f7565b9750602089013561236c816120f7565b9650604089013567ffffffffffffffff811115612387575f80fd5b6123938b828c01612174565b909750955050606089013567ffffffffffffffff8111156123b2575f80fd5b6123be8b828c01612174565b909550935050608089013567ffffffffffffffff8111156123dd575f80fd5b6123e98b828c01612228565b999c989b5096995094979396929594505050565b5f805f805f8060a08789031215612412575f80fd5b863561241d816120f7565b9550602087013561242d816120f7565b94506040870135935060608701359250608087013567ffffffffffffffff811115612456575f80fd5b61246289828a01612228565b979a9699509497509295939492505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f602082840312156124b1575f80fd5b8135801515811461154b575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040516060810167ffffffffffffffff81118282101715612510576125106124c0565b60405290565b6040516080810167ffffffffffffffff81118282101715612510576125106124c0565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612580576125806124c0565b604052919050565b5f67ffffffffffffffff8211156125a1576125a16124c0565b5060051b60200190565b5f82601f8301126125ba575f80fd5b81356125cd6125c882612588565b612539565b8082825260208201915060208360051b8601019250858311156125ee575f80fd5b602085015b8381101561260b5780358352602092830192016125f3565b5095945050505050565b5f60208284031215612625575f80fd5b813567ffffffffffffffff81111561263b575f80fd5b82016060818503121561264c575f80fd5b6126546124ed565b813561265f816120f7565b8152602082013567ffffffffffffffff81111561267a575f80fd5b8201601f8101861361268a575f80fd5b80356126986125c882612588565b8082825260208201915060208360051b8501019250888311156126b9575f80fd5b6020840193505b828410156126e45783356126d3816120f7565b8252602093840193909101906126c0565b6020850152505050604082013567ffffffffffffffff811115612705575f80fd5b612711868285016125ab565b604083015250949350505050565b5f67ffffffffffffffff821115612738576127386124c0565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f60208284031215612774575f80fd5b813567ffffffffffffffff81111561278a575f80fd5b82016080818503121561279b575f80fd5b6127a3612516565b8135600381106127b1575f80fd5b815260208201356127c1816120f7565b602082015260408201356127d4816120f7565b6040820152606082013567ffffffffffffffff8111156127f2575f80fd5b80830192505084601f830112612806575f80fd5b81356128146125c88261271f565b818152866020838601011115612828575f80fd5b816020850160208301375f918101602001919091526060820152949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b5f6020828403128015612888575f80fd5b506040516020810167ffffffffffffffff811182821017156128ac576128ac6124c0565b6040529151825250919050565b5f602082840312156128c9575f80fd5b815167ffffffffffffffff8111156128df575f80fd5b8201606081850312156128f0575f80fd5b6128f86124ed565b8151815260208083015190820152604082015167ffffffffffffffff81111561291f575f80fd5b80830192505084601f830112612933575f80fd5b81516129416125c88261271f565b818152866020838601011115612955575f80fd5b8160208501602083015e5f918101602001919091526040820152949350505050565b5f60208284031215612987575f80fd5b5051919050565b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b73ffffffffffffffffffffffffffffffffffffffff8616815273ffffffffffffffffffffffffffffffffffffffff8516602082015283604082015282606082015260a060808201525f612a3060a083018461298e565b979650505050505050565b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112612a6e575f80fd5b83018035915067ffffffffffffffff821115612a88575f80fd5b6020019150368190038213156121b5575f80fd5b6020815273ffffffffffffffffffffffffffffffffffffffff82511660208201525f6020830151604080840152612ad6606084018261298e565b949350505050565b606081525f612af0606083018661298e565b60208301949094525060400152919050565b5f8060408385031215612b13575f80fd5b82516020840151909250612b26816120f7565b809150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b818103818111156108ca576108ca612b31565b808201808211156108ca576108ca612b3156fea264697066735822122046c94008e6e9f40d780be9afd13f29f60c7d13d80bc5bdd187b40201a133d17164736f6c634300081a0033", n = { BASE_URL: "/", DEV: !1, MODE: "production", PROD: !0, SSR: !1, VITE_BOOST_MAINNET_SIGNER_EOA: "0xCBD0C302040bC803B4B2EDaF21Be0e49Deff5480", VITE_BOOST_TESTNET_SIGNER_EOA: "0xd63167e9db11B108940b2E8236581F961f33f396" };
10
+ var x = /* @__PURE__ */ ((d) => (d[d.MANAGER = 1n] = "MANAGER", d[d.ADMIN = 2n] = "ADMIN", d))(x || {});
11
+ function U(d) {
12
12
  return d.tokenId === void 0;
13
13
  }
14
- function U(d) {
14
+ function v(d) {
15
15
  return d.tokenId !== void 0;
16
16
  }
17
17
  function r(d) {
18
- if (M(d))
19
- return N(d);
20
18
  if (U(d))
21
- return x(d);
22
- throw new F(d);
19
+ return F(d);
20
+ if (v(d))
21
+ return G(d);
22
+ throw new O(d);
23
23
  }
24
- const i = class i extends q {
24
+ const i = class i extends C {
25
25
  constructor() {
26
- super(...arguments), this.abi = n;
26
+ super(...arguments), this.abi = o;
27
27
  }
28
28
  /**
29
29
  * Allocates assets to the budget.
@@ -51,7 +51,7 @@ const i = class i extends q {
51
51
  * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if the allocation was successful
52
52
  */
53
53
  async allocateRaw(f, b) {
54
- const { request: a, result: e } = await u(
54
+ const { request: a, result: e } = await l(
55
55
  this._config,
56
56
  {
57
57
  address: this.assertValidAddress(),
@@ -61,7 +61,7 @@ const i = class i extends q {
61
61
  ...b
62
62
  }
63
63
  );
64
- return { hash: await l(this._config, a), result: e };
64
+ return { hash: await w(this._config, a), result: e };
65
65
  }
66
66
  /**
67
67
  * Clawbacks assets from the budget.
@@ -91,7 +91,7 @@ const i = class i extends q {
91
91
  * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if the request was successful
92
92
  */
93
93
  async clawbackRaw(f, b) {
94
- const { request: a, result: e } = await w(
94
+ const { request: a, result: e } = await A(
95
95
  this._config,
96
96
  {
97
97
  address: this.assertValidAddress(),
@@ -155,7 +155,7 @@ const i = class i extends q {
155
155
  * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - Returns transaction hash and simulated result
156
156
  */
157
157
  async clawbackFromTargetRaw(f, b, a, e, c) {
158
- const { request: s, result: h } = await p(
158
+ const { request: s, result: u } = await p(
159
159
  this._config,
160
160
  {
161
161
  address: this.assertValidAddress(),
@@ -165,10 +165,10 @@ const i = class i extends q {
165
165
  ...c
166
166
  }
167
167
  );
168
- return { hash: await A(
168
+ return { hash: await y(
169
169
  this._config,
170
170
  s
171
- ), result: h };
171
+ ), result: u };
172
172
  }
173
173
  /**
174
174
  * Disburses assets from the budget to a single recipient
@@ -194,7 +194,7 @@ const i = class i extends q {
194
194
  * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if the disbursement was successful
195
195
  */
196
196
  async disburseRaw(f, b) {
197
- const { request: a, result: e } = await y(
197
+ const { request: a, result: e } = await m(
198
198
  this._config,
199
199
  {
200
200
  address: this.assertValidAddress(),
@@ -204,7 +204,7 @@ const i = class i extends q {
204
204
  ...b
205
205
  }
206
206
  );
207
- return { hash: await m(this._config, a), result: e };
207
+ return { hash: await E(this._config, a), result: e };
208
208
  }
209
209
  /**
210
210
  * Disburses assets from the budget to multiple recipients
@@ -248,7 +248,7 @@ const i = class i extends q {
248
248
  * @returns {Promise<Address>}
249
249
  */
250
250
  owner(f) {
251
- return _(this._config, {
251
+ return P(this._config, {
252
252
  address: this.assertValidAddress(),
253
253
  args: [],
254
254
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -266,7 +266,7 @@ const i = class i extends q {
266
266
  * @returns {Promise<bigint>} - The total amount of assets
267
267
  */
268
268
  total(f = t, b, a) {
269
- return P(this._config, {
269
+ return _(this._config, {
270
270
  address: this.assertValidAddress(),
271
271
  args: b ? [f, b] : [f],
272
272
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -284,7 +284,7 @@ const i = class i extends q {
284
284
  * @returns {Promise<bigint>} - The amount of assets available
285
285
  */
286
286
  available(f = t, b, a) {
287
- return V(this._config, {
287
+ return B(this._config, {
288
288
  address: this.assertValidAddress(),
289
289
  args: b ? [f, b] : [f],
290
290
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -302,7 +302,7 @@ const i = class i extends q {
302
302
  * @returns {Promise<bigint>} - The amount of assets distributed
303
303
  */
304
304
  distributed(f = t, b, a) {
305
- return k(this._config, {
305
+ return D(this._config, {
306
306
  address: this.assertValidAddress(),
307
307
  args: b ? [f, b] : [f],
308
308
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -324,43 +324,43 @@ const i = class i extends q {
324
324
  b
325
325
  );
326
326
  if (!a.owner || a.owner === t) {
327
- const s = e.account ? e.account.address : e.config ? B(e.config).address : (c = this._account) == null ? void 0 : c.address;
327
+ const s = e.account ? e.account.address : e.config ? S(e.config).address : (c = this._account) == null ? void 0 : c.address;
328
328
  if (s)
329
329
  a.owner = s;
330
330
  else
331
- throw new C();
331
+ throw new I();
332
332
  }
333
333
  return {
334
- abi: n,
335
- bytecode: G,
336
- args: [j(a)],
334
+ abi: o,
335
+ bytecode: q,
336
+ args: [z(a)],
337
337
  ...this.optionallyAttachAccount(e.account)
338
338
  };
339
339
  }
340
340
  };
341
341
  i.bases = {
342
- 31337: void 0,
343
- ...D
344
- }, i.registryType = z.BUDGET;
345
- let o = i;
346
- const j = ({
342
+ ...n != null && n.VITE_MANAGED_BUDGET_BASE ? { 31337: void 0 } : {},
343
+ ...k
344
+ }, i.registryType = M.BUDGET;
345
+ let h = i;
346
+ const z = ({
347
347
  owner: d,
348
348
  authorized: f,
349
349
  roles: b
350
- }) => E(
351
- v([
350
+ }) => V(
351
+ N([
352
352
  "ManagedBudgetPayload payload",
353
353
  "struct ManagedBudgetPayload { address owner; address[] authorized; uint256[] roles; }"
354
354
  ]),
355
355
  [{ owner: d, authorized: f, roles: b }]
356
356
  );
357
357
  export {
358
- o as ManagedBudget,
359
- I as ManagedBudgetRoles,
360
- U as isERC1155TransferPayload,
361
- M as isFungibleTransfer,
362
- n as managedBudgetAbi,
363
- j as prepareManagedBudgetPayload,
358
+ h as ManagedBudget,
359
+ x as ManagedBudgetRoles,
360
+ v as isERC1155TransferPayload,
361
+ U as isFungibleTransfer,
362
+ o as managedBudgetAbi,
363
+ z as prepareManagedBudgetPayload,
364
364
  r as prepareTransfer
365
365
  };
366
366
  //# sourceMappingURL=ManagedBudget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ManagedBudget.js","sources":["../../src/Budgets/ManagedBudget.ts"],"sourcesContent":["import {\n managedBudgetAbi,\n readManagedBudgetAvailable,\n readManagedBudgetDistributed,\n readManagedBudgetOwner,\n readManagedBudgetTotal,\n simulateManagedBudgetAllocate,\n simulateManagedBudgetClawback,\n simulateManagedBudgetClawbackFromTarget,\n simulateManagedBudgetDisburse,\n simulateManagedBudgetDisburseBatch,\n writeManagedBudgetAllocate,\n writeManagedBudgetClawback,\n writeManagedBudgetClawbackFromTarget,\n writeManagedBudgetDisburse,\n writeManagedBudgetDisburseBatch,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/budgets/ManagedBudget.sol/ManagedBudget.json';\nimport { getAccount } from '@wagmi/core';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n encodeAbiParameters,\n isAddress,\n parseAbiParameters,\n zeroAddress,\n} from 'viem';\nimport { ManagedBudget as ManagedBudgetBases } from '../../dist/deployments.json';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport { DeployableTarget } from '../Deployable/DeployableTarget';\nimport {\n DeployableTargetWithRBAC,\n type Roles,\n} from '../Deployable/DeployableTargetWithRBAC';\nimport type { Incentive } from '../Incentives/Incentive';\nimport {\n DeployableUnknownOwnerProvidedError,\n UnknownTransferPayloadSupplied,\n} from '../errors';\nimport {\n type ERC1155TransferPayload,\n type FungibleTransferPayload,\n prepareERC1155Transfer,\n prepareFungibleTransfer,\n} from '../transfers';\nimport {\n type GenericLog,\n type ReadParams,\n RegistryType,\n type WriteParams,\n} from '../utils';\nexport { managedBudgetAbi };\nexport type { ERC1155TransferPayload, FungibleTransferPayload };\n\n/**\n * The object representation of a `ManagedBudgetPayload.InitPayload`\n *\n * @export\n * @interface ManagedBudgetPayload\n * @typedef {ManagedBudgetPayload}\n */\nexport interface ManagedBudgetPayload {\n /**\n * The budget's owner\n *\n * @type {Address}\n */\n owner: Address;\n /**\n * List of accounts authorized to use the budget. This list should include a Boost core address to interact with the protocol.\n *\n * @type {Address[]}\n */\n authorized: Address[];\n /**\n * List of roles to assign to the corresponding account by index.\n *\n * @type {Roles[]}\n */\n roles: Roles[];\n}\n\n/**\n * Enum representing available roles for use in the `ManagedBudget`.\n * `MANAGER` can disburse funds.\n * `ADMIN` can additionally manage authorized users on the budget.\n *\n * @deprecated use {@link Roles} instead\n * @export\n * @type {{ readonly MANAGER: 1n; readonly ADMIN_ROLE: 2n; }}\n * @enum {bigint}\n */\nexport enum ManagedBudgetRoles {\n //@ts-expect-error ts doesn't like bigint enum values\n MANAGER = 1n,\n //@ts-expect-error ts doesn't like bigint enum values\n ADMIN = 2n,\n}\n\n/**\n * A generic `viem.Log` event with support for `ManagedBudget` event types.\n *\n * @export\n * @typedef {ManagedBudgetLog}\n * @template {ContractEventName<typeof managedBudgetAbi>} [event=ContractEventName<\n * typeof managedBudgetAbi\n * >]\n */\nexport type ManagedBudgetLog<\n event extends ContractEventName<typeof managedBudgetAbi> = ContractEventName<\n typeof managedBudgetAbi\n >,\n> = GenericLog<typeof managedBudgetAbi, event>;\n\n/**\n * Typeguard to determine if a transfer payload is a Fungible Transfer\n *\n * @export\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @returns {transfer is FungibleTransferPayload}\n */\nexport function isFungibleTransfer(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n): transfer is FungibleTransferPayload {\n return (transfer as ERC1155TransferPayload).tokenId === undefined;\n}\n\n/**\n * Typeguard to determine if a transfer payload is an ERC1155 Transfer\n *\n * @export\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @returns {transfer is ERC1155TransferPayload}\n */\nexport function isERC1155TransferPayload(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n): transfer is ERC1155TransferPayload {\n return (transfer as ERC1155TransferPayload).tokenId !== undefined;\n}\n\n/**\n * Given either a Fungible transfer, or ERC1155 transfer, will properly encode parameters for transfers, claims, disbursements, allocations, etc.\n *\n * @export\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @returns {Hex}\n * @throws {@link UnknownTransferPayloadSupplied}\n */\nexport function prepareTransfer(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n) {\n if (isFungibleTransfer(transfer)) {\n return prepareFungibleTransfer(transfer);\n }\n if (isERC1155TransferPayload(transfer)) {\n return prepareERC1155Transfer(transfer);\n }\n throw new UnknownTransferPayloadSupplied(transfer);\n}\n\n/**\n * A minimal budget implementation that simply holds and distributes tokens (ERC20-like and native)\n * This type of budget supports ETH, ERC20, and ERC1155 assets only\n *\n * @export\n * @class ManagedBudget\n * @typedef {ManagedBudget}\n * @extends {DeployableTargetWithRBAC<ManagedBudgetPayload>}\n */\nexport class ManagedBudget extends DeployableTargetWithRBAC<\n ManagedBudgetPayload,\n typeof managedBudgetAbi\n> {\n /**\n * @inheritdoc\n *\n * @public\n * @readonly\n * @type {*}\n */\n public override readonly abi = managedBudgetAbi;\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {Record<number, Address>}\n */\n public static override bases: Record<number, Address> = {\n 31337: import.meta.env.VITE_MANAGED_BUDGET_BASE,\n ...(ManagedBudgetBases as Record<number, Address>),\n };\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.BUDGET;\n\n /**\n * Allocates assets to the budget.\n * The caller must have already approved the contract to transfer the asset\n * If the asset transfer fails, the allocation will revert\n *\n * @public\n * @async\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if the allocation was successful\n */\n public async allocate(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n params?: WriteParams,\n ) {\n return await this.awaitResult(this.allocateRaw(transfer, params));\n }\n\n /**\n * Allocates assets to the budget.\n * The caller must have already approved the contract to transfer the asset\n * If the asset transfer fails, the allocation will revert\n *\n * @public\n * @async\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if the allocation was successful\n */\n public async allocateRaw(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n params?: WriteParams,\n ) {\n const { request, result } = await simulateManagedBudgetAllocate(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [prepareTransfer(transfer)],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeManagedBudgetAllocate(this._config, request);\n return { hash, result };\n }\n\n /**\n * Clawbacks assets from the budget.\n * Only the owner can directly clawback assets from the budget\n * If the amount is zero, the entire balance of the asset will be transferred to the receiver\n * If the asset transfer fails, the reclamation will revert\n *\n * @public\n * @async\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if the request was successful\n */\n public async clawback(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n params?: WriteParams,\n ) {\n return await this.awaitResult(this.clawbackRaw(transfer, params));\n }\n\n /**\n * Clawbacks assets from the budget.\n * Only the owner or admin can directly clawback assets from the budget\n * If the amount is zero, the entire balance of the asset will be transferred to the receiver\n * If the asset transfer fails, the reclamation will revert\n *\n * @public\n * @async\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if the request was successful\n */\n public async clawbackRaw(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n params?: WriteParams,\n ) {\n const { request, result } = await simulateManagedBudgetClawback(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [prepareTransfer(transfer)],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeManagedBudgetClawback(this._config, request);\n return { hash, result };\n }\n\n /**\n * Clawbacks assets from an incentive associated with the budget via Boost Core.\n * Only the authorized users can clawback assets from an incentive.\n * If the asset transfer fails, the reclamation will revert.\n *\n * @example\n * ```ts\n * const [amount, address] = await budgets.budget.clawbackFromTarget(\n * core.assertValidAddress(),\n * erc20Incentive.buildClawbackData(1n),\n * boost.id,\n * incentiveId,\n * );\n * ```\n * @public\n * @async\n * @param {Address} target - The address of a contract implementing clawback, typically `BoostCore`\n * @param {Hex} data - The encoded data payload for the clawback, can be acquired with `incentive.buildClawbackData`\n * @param {bigint | number} boostId - The ID of the boost\n * @param {bigint | number} incentiveId - The ID of the incentive\n * @param {?WriteParams} [params] - Optional write parameters\n * @returns {Promise<[bigint, Address]>} - Returns a tuple of amount reclaimed and the address reclaimed from\n */\n public async clawbackFromTarget(\n target: Address,\n data: Hex,\n boostId: bigint | number,\n incentiveId: bigint | number,\n params?: WriteParams,\n ) {\n return await this.awaitResult(\n this.clawbackFromTargetRaw(target, data, boostId, incentiveId, params),\n );\n }\n\n /**\n * Clawbacks assets from an incentive associated with the budget via Boost Core.\n * Only the authorized users can clawback assets from an incentive.\n * If the asset transfer fails, the reclamation will revert.\n *\n * @example\n * ```ts\n * const { hash, result: [ amount, address ] } = await budgets.budget.clawbackFromTargetRaw(\n * core.assertValidAddress(),\n * erc20Incentive.buildClawbackData(1n),\n * boost.id,\n * incentiveId,\n * );\n * ```\n * @public\n * @async\n * @param {Address} target - The address of a contract implementing clawback, typically `BoostCore`\n * @param {Hex} data - The encoded data payload for the clawback, can be acquired with `incentive.buildClawbackData`\n * @param {bigint | number} boostId - The ID of the boost\n * @param {bigint | number} incentiveId - The ID of the incentive\n * @param {?WriteParams} [params] - Optional write parameters\n * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - Returns transaction hash and simulated result\n */\n public async clawbackFromTargetRaw(\n target: Address,\n data: Hex,\n boostId: bigint | number,\n incentiveId: bigint | number,\n params?: WriteParams,\n ) {\n const { request, result } = await simulateManagedBudgetClawbackFromTarget(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [target, data, BigInt(boostId), BigInt(incentiveId)],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeManagedBudgetClawbackFromTarget(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Disburses assets from the budget to a single recipient\n * If the asset transfer fails, the disbursement will revert\n *\n * @public\n * @async\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if the disbursement was successful\n */\n public async disburse(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n params?: WriteParams,\n ) {\n return await this.awaitResult(this.disburseRaw(transfer, params));\n }\n\n /**\n * Disburses assets from the budget to a single recipient\n * If the asset transfer fails, the disbursement will revert\n *\n * @public\n * @async\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if the disbursement was successful\n */\n public async disburseRaw(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n params?: WriteParams,\n ) {\n const { request, result } = await simulateManagedBudgetDisburse(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [prepareTransfer(transfer)],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeManagedBudgetDisburse(this._config, request);\n return { hash, result };\n }\n\n /**\n * Disburses assets from the budget to multiple recipients\n *\n * @public\n * @async\n * @param {Array<FungibleTransferPayload | ERC1155TransferPayload>} transfers\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if all disbursements were successful\n */\n public async disburseBatch(\n transfers: Array<FungibleTransferPayload | ERC1155TransferPayload>,\n params?: WriteParams,\n ) {\n return await this.awaitResult(this.disburseBatchRaw(transfers, params));\n }\n\n /**\n * Disburses assets from the budget to multiple recipients\n *\n * @public\n * @async\n * @param {Array<FungibleTransferPayload | ERC1155TransferPayload>} transfers\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if all disbursements were successful\n */\n public async disburseBatchRaw(\n transfers: Array<FungibleTransferPayload | ERC1155TransferPayload>,\n params?: WriteParams,\n ) {\n const { request, result } = await simulateManagedBudgetDisburseBatch(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [transfers.map(prepareTransfer)],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeManagedBudgetDisburseBatch(this._config, request);\n return { hash, result };\n }\n\n /**\n * Get the owner of the budget\n *\n * @public\n * @param {?ReadParams} [params]\n * @returns {Promise<Address>}\n */\n public owner(params?: ReadParams) {\n return readManagedBudgetOwner(this._config, {\n address: this.assertValidAddress(),\n args: [],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * Get the total amount of assets allocated to the budget, including any that have been distributed\n * If a tokenId is provided, get the total amount of ERC1155 assets allocated to the budget, including any that have been distributed\n *\n * @public\n * @param {Address} [asset=\"0x0000000000000000000000000000000000000000\"] - The address of the asset\n * @param {?(bigint | undefined)} [tokenId] - The ID of the token\n * @param {?ReadParams} [params]\n * @returns {Promise<bigint>} - The total amount of assets\n */\n public total(\n asset: Address = zeroAddress,\n tokenId?: bigint | undefined,\n params?: ReadParams,\n ) {\n return readManagedBudgetTotal(this._config, {\n address: this.assertValidAddress(),\n args: tokenId ? [asset, tokenId] : [asset],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * Get the amount of assets available for distribution from the budget.\n * If a tokenId is provided, get the amount of ERC1155 assets available for distribution from the budget\n *\n * @public\n * @param {Address} [asset=\"0x0000000000000000000000000000000000000000\"]\n * @param {?(bigint | undefined)} [tokenId]\n * @param {?ReadParams} [params]\n * @returns {Promise<bigint>} - The amount of assets available\n */\n public available(\n asset: Address = zeroAddress,\n tokenId?: bigint | undefined,\n params?: ReadParams,\n ) {\n return readManagedBudgetAvailable(this._config, {\n address: this.assertValidAddress(),\n args: tokenId ? [asset, tokenId] : [asset],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * Get the amount of assets that have been distributed from the budget.\n * If a tokenId is provided, get the amount of ERC1155 assets that have been distributed from the budget\n *\n * @public\n * @param {Address} [asset=\"0x0000000000000000000000000000000000000000\"]\n * @param {?(bigint | undefined)} [tokenId]\n * @param {?ReadParams} [params]\n * @returns {Promise<bigint>} - The amount of assets distributed\n */\n public distributed(\n asset: Address = zeroAddress,\n tokenId?: bigint | undefined,\n params?: ReadParams,\n ) {\n return readManagedBudgetDistributed(this._config, {\n address: this.assertValidAddress(),\n args: tokenId ? [asset, tokenId] : [asset],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * @inheritdoc\n *\n * @public\n * @param {?ManagedBudgetPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: ManagedBudgetPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n if (!payload.owner || payload.owner === zeroAddress) {\n const owner = options.account\n ? options.account.address\n : options.config\n ? getAccount(options.config).address\n : this._account?.address;\n if (owner) {\n payload.owner = owner;\n } else {\n throw new DeployableUnknownOwnerProvidedError();\n }\n }\n return {\n abi: managedBudgetAbi,\n bytecode: bytecode as Hex,\n args: [prepareManagedBudgetPayload(payload)],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n\n/**\n * Given a {@link ManagedBudgetPayload}, properly encode a `ManagedBudget.InitPayload` for use with {@link ManagedBudget} initialization.\n *\n * @param {ManagedBudgetPayload} param0\n * @param {Address} param0.owner - The budget's owner\n * @param {{}} param0.authorized - List of accounts authorized to use the budget. This list should include a Boost core address to interact with the protocol.\n * @param {{}} param0.roles - List of roles to assign to the corresponding account by index.\n * @returns {Hex}\n */\nexport const prepareManagedBudgetPayload = ({\n owner,\n authorized,\n roles,\n}: ManagedBudgetPayload) => {\n return encodeAbiParameters(\n parseAbiParameters([\n 'ManagedBudgetPayload payload',\n 'struct ManagedBudgetPayload { address owner; address[] authorized; uint256[] roles; }',\n ]),\n [{ owner, authorized, roles: roles as unknown as Array<bigint> }],\n );\n};\n"],"names":["ManagedBudgetRoles","isFungibleTransfer","transfer","isERC1155TransferPayload","prepareTransfer","prepareFungibleTransfer","prepareERC1155Transfer","UnknownTransferPayloadSupplied","_ManagedBudget","DeployableTargetWithRBAC","managedBudgetAbi","params","request","result","simulateManagedBudgetAllocate","writeManagedBudgetAllocate","simulateManagedBudgetClawback","writeManagedBudgetClawback","target","data","boostId","incentiveId","simulateManagedBudgetClawbackFromTarget","writeManagedBudgetClawbackFromTarget","simulateManagedBudgetDisburse","writeManagedBudgetDisburse","transfers","simulateManagedBudgetDisburseBatch","writeManagedBudgetDisburseBatch","readManagedBudgetOwner","asset","zeroAddress","tokenId","readManagedBudgetTotal","readManagedBudgetAvailable","readManagedBudgetDistributed","_payload","_options","payload","options","owner","getAccount","_a","DeployableUnknownOwnerProvidedError","bytecode","prepareManagedBudgetPayload","ManagedBudgetBases","RegistryType","ManagedBudget","authorized","roles","encodeAbiParameters","parseAbiParameters"],"mappings":"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"}
1
+ {"version":3,"file":"ManagedBudget.js","sources":["../../src/Budgets/ManagedBudget.ts"],"sourcesContent":["import {\n managedBudgetAbi,\n readManagedBudgetAvailable,\n readManagedBudgetDistributed,\n readManagedBudgetOwner,\n readManagedBudgetTotal,\n simulateManagedBudgetAllocate,\n simulateManagedBudgetClawback,\n simulateManagedBudgetClawbackFromTarget,\n simulateManagedBudgetDisburse,\n simulateManagedBudgetDisburseBatch,\n writeManagedBudgetAllocate,\n writeManagedBudgetClawback,\n writeManagedBudgetClawbackFromTarget,\n writeManagedBudgetDisburse,\n writeManagedBudgetDisburseBatch,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/budgets/ManagedBudget.sol/ManagedBudget.json';\nimport { getAccount } from '@wagmi/core';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n encodeAbiParameters,\n isAddress,\n parseAbiParameters,\n zeroAddress,\n} from 'viem';\nimport { ManagedBudget as ManagedBudgetBases } from '../../dist/deployments.json';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport { DeployableTarget } from '../Deployable/DeployableTarget';\nimport {\n DeployableTargetWithRBAC,\n type Roles,\n} from '../Deployable/DeployableTargetWithRBAC';\nimport type { Incentive } from '../Incentives/Incentive';\nimport {\n DeployableUnknownOwnerProvidedError,\n UnknownTransferPayloadSupplied,\n} from '../errors';\nimport {\n type ERC1155TransferPayload,\n type FungibleTransferPayload,\n prepareERC1155Transfer,\n prepareFungibleTransfer,\n} from '../transfers';\nimport {\n type GenericLog,\n type ReadParams,\n RegistryType,\n type WriteParams,\n} from '../utils';\nexport { managedBudgetAbi };\nexport type { ERC1155TransferPayload, FungibleTransferPayload };\n\n/**\n * The object representation of a `ManagedBudgetPayload.InitPayload`\n *\n * @export\n * @interface ManagedBudgetPayload\n * @typedef {ManagedBudgetPayload}\n */\nexport interface ManagedBudgetPayload {\n /**\n * The budget's owner\n *\n * @type {Address}\n */\n owner: Address;\n /**\n * List of accounts authorized to use the budget. This list should include a Boost core address to interact with the protocol.\n *\n * @type {Address[]}\n */\n authorized: Address[];\n /**\n * List of roles to assign to the corresponding account by index.\n *\n * @type {Roles[]}\n */\n roles: Roles[];\n}\n\n/**\n * Enum representing available roles for use in the `ManagedBudget`.\n * `MANAGER` can disburse funds.\n * `ADMIN` can additionally manage authorized users on the budget.\n *\n * @deprecated use {@link Roles} instead\n * @export\n * @type {{ readonly MANAGER: 1n; readonly ADMIN_ROLE: 2n; }}\n * @enum {bigint}\n */\nexport enum ManagedBudgetRoles {\n //@ts-expect-error ts doesn't like bigint enum values\n MANAGER = 1n,\n //@ts-expect-error ts doesn't like bigint enum values\n ADMIN = 2n,\n}\n\n/**\n * A generic `viem.Log` event with support for `ManagedBudget` event types.\n *\n * @export\n * @typedef {ManagedBudgetLog}\n * @template {ContractEventName<typeof managedBudgetAbi>} [event=ContractEventName<\n * typeof managedBudgetAbi\n * >]\n */\nexport type ManagedBudgetLog<\n event extends ContractEventName<typeof managedBudgetAbi> = ContractEventName<\n typeof managedBudgetAbi\n >,\n> = GenericLog<typeof managedBudgetAbi, event>;\n\n/**\n * Typeguard to determine if a transfer payload is a Fungible Transfer\n *\n * @export\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @returns {transfer is FungibleTransferPayload}\n */\nexport function isFungibleTransfer(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n): transfer is FungibleTransferPayload {\n return (transfer as ERC1155TransferPayload).tokenId === undefined;\n}\n\n/**\n * Typeguard to determine if a transfer payload is an ERC1155 Transfer\n *\n * @export\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @returns {transfer is ERC1155TransferPayload}\n */\nexport function isERC1155TransferPayload(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n): transfer is ERC1155TransferPayload {\n return (transfer as ERC1155TransferPayload).tokenId !== undefined;\n}\n\n/**\n * Given either a Fungible transfer, or ERC1155 transfer, will properly encode parameters for transfers, claims, disbursements, allocations, etc.\n *\n * @export\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @returns {Hex}\n * @throws {@link UnknownTransferPayloadSupplied}\n */\nexport function prepareTransfer(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n) {\n if (isFungibleTransfer(transfer)) {\n return prepareFungibleTransfer(transfer);\n }\n if (isERC1155TransferPayload(transfer)) {\n return prepareERC1155Transfer(transfer);\n }\n throw new UnknownTransferPayloadSupplied(transfer);\n}\n\n/**\n * A minimal budget implementation that simply holds and distributes tokens (ERC20-like and native)\n * This type of budget supports ETH, ERC20, and ERC1155 assets only\n *\n * @export\n * @class ManagedBudget\n * @typedef {ManagedBudget}\n * @extends {DeployableTargetWithRBAC<ManagedBudgetPayload>}\n */\nexport class ManagedBudget extends DeployableTargetWithRBAC<\n ManagedBudgetPayload,\n typeof managedBudgetAbi\n> {\n /**\n * @inheritdoc\n *\n * @public\n * @readonly\n * @type {*}\n */\n public override readonly abi = managedBudgetAbi;\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {Record<number, Address>}\n */\n public static override bases: Record<number, Address> = {\n ...(import.meta.env?.VITE_MANAGED_BUDGET_BASE\n ? { 31337: import.meta.env.VITE_MANAGED_BUDGET_BASE }\n : {}),\n ...(ManagedBudgetBases as Record<number, Address>),\n };\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.BUDGET;\n\n /**\n * Allocates assets to the budget.\n * The caller must have already approved the contract to transfer the asset\n * If the asset transfer fails, the allocation will revert\n *\n * @public\n * @async\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if the allocation was successful\n */\n public async allocate(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n params?: WriteParams,\n ) {\n return await this.awaitResult(this.allocateRaw(transfer, params));\n }\n\n /**\n * Allocates assets to the budget.\n * The caller must have already approved the contract to transfer the asset\n * If the asset transfer fails, the allocation will revert\n *\n * @public\n * @async\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if the allocation was successful\n */\n public async allocateRaw(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n params?: WriteParams,\n ) {\n const { request, result } = await simulateManagedBudgetAllocate(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [prepareTransfer(transfer)],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeManagedBudgetAllocate(this._config, request);\n return { hash, result };\n }\n\n /**\n * Clawbacks assets from the budget.\n * Only the owner can directly clawback assets from the budget\n * If the amount is zero, the entire balance of the asset will be transferred to the receiver\n * If the asset transfer fails, the reclamation will revert\n *\n * @public\n * @async\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if the request was successful\n */\n public async clawback(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n params?: WriteParams,\n ) {\n return await this.awaitResult(this.clawbackRaw(transfer, params));\n }\n\n /**\n * Clawbacks assets from the budget.\n * Only the owner or admin can directly clawback assets from the budget\n * If the amount is zero, the entire balance of the asset will be transferred to the receiver\n * If the asset transfer fails, the reclamation will revert\n *\n * @public\n * @async\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if the request was successful\n */\n public async clawbackRaw(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n params?: WriteParams,\n ) {\n const { request, result } = await simulateManagedBudgetClawback(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [prepareTransfer(transfer)],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeManagedBudgetClawback(this._config, request);\n return { hash, result };\n }\n\n /**\n * Clawbacks assets from an incentive associated with the budget via Boost Core.\n * Only the authorized users can clawback assets from an incentive.\n * If the asset transfer fails, the reclamation will revert.\n *\n * @example\n * ```ts\n * const [amount, address] = await budgets.budget.clawbackFromTarget(\n * core.assertValidAddress(),\n * erc20Incentive.buildClawbackData(1n),\n * boost.id,\n * incentiveId,\n * );\n * ```\n * @public\n * @async\n * @param {Address} target - The address of a contract implementing clawback, typically `BoostCore`\n * @param {Hex} data - The encoded data payload for the clawback, can be acquired with `incentive.buildClawbackData`\n * @param {bigint | number} boostId - The ID of the boost\n * @param {bigint | number} incentiveId - The ID of the incentive\n * @param {?WriteParams} [params] - Optional write parameters\n * @returns {Promise<[bigint, Address]>} - Returns a tuple of amount reclaimed and the address reclaimed from\n */\n public async clawbackFromTarget(\n target: Address,\n data: Hex,\n boostId: bigint | number,\n incentiveId: bigint | number,\n params?: WriteParams,\n ) {\n return await this.awaitResult(\n this.clawbackFromTargetRaw(target, data, boostId, incentiveId, params),\n );\n }\n\n /**\n * Clawbacks assets from an incentive associated with the budget via Boost Core.\n * Only the authorized users can clawback assets from an incentive.\n * If the asset transfer fails, the reclamation will revert.\n *\n * @example\n * ```ts\n * const { hash, result: [ amount, address ] } = await budgets.budget.clawbackFromTargetRaw(\n * core.assertValidAddress(),\n * erc20Incentive.buildClawbackData(1n),\n * boost.id,\n * incentiveId,\n * );\n * ```\n * @public\n * @async\n * @param {Address} target - The address of a contract implementing clawback, typically `BoostCore`\n * @param {Hex} data - The encoded data payload for the clawback, can be acquired with `incentive.buildClawbackData`\n * @param {bigint | number} boostId - The ID of the boost\n * @param {bigint | number} incentiveId - The ID of the incentive\n * @param {?WriteParams} [params] - Optional write parameters\n * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - Returns transaction hash and simulated result\n */\n public async clawbackFromTargetRaw(\n target: Address,\n data: Hex,\n boostId: bigint | number,\n incentiveId: bigint | number,\n params?: WriteParams,\n ) {\n const { request, result } = await simulateManagedBudgetClawbackFromTarget(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [target, data, BigInt(boostId), BigInt(incentiveId)],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeManagedBudgetClawbackFromTarget(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Disburses assets from the budget to a single recipient\n * If the asset transfer fails, the disbursement will revert\n *\n * @public\n * @async\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if the disbursement was successful\n */\n public async disburse(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n params?: WriteParams,\n ) {\n return await this.awaitResult(this.disburseRaw(transfer, params));\n }\n\n /**\n * Disburses assets from the budget to a single recipient\n * If the asset transfer fails, the disbursement will revert\n *\n * @public\n * @async\n * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if the disbursement was successful\n */\n public async disburseRaw(\n transfer: FungibleTransferPayload | ERC1155TransferPayload,\n params?: WriteParams,\n ) {\n const { request, result } = await simulateManagedBudgetDisburse(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [prepareTransfer(transfer)],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeManagedBudgetDisburse(this._config, request);\n return { hash, result };\n }\n\n /**\n * Disburses assets from the budget to multiple recipients\n *\n * @public\n * @async\n * @param {Array<FungibleTransferPayload | ERC1155TransferPayload>} transfers\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if all disbursements were successful\n */\n public async disburseBatch(\n transfers: Array<FungibleTransferPayload | ERC1155TransferPayload>,\n params?: WriteParams,\n ) {\n return await this.awaitResult(this.disburseBatchRaw(transfers, params));\n }\n\n /**\n * Disburses assets from the budget to multiple recipients\n *\n * @public\n * @async\n * @param {Array<FungibleTransferPayload | ERC1155TransferPayload>} transfers\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if all disbursements were successful\n */\n public async disburseBatchRaw(\n transfers: Array<FungibleTransferPayload | ERC1155TransferPayload>,\n params?: WriteParams,\n ) {\n const { request, result } = await simulateManagedBudgetDisburseBatch(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [transfers.map(prepareTransfer)],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeManagedBudgetDisburseBatch(this._config, request);\n return { hash, result };\n }\n\n /**\n * Get the owner of the budget\n *\n * @public\n * @param {?ReadParams} [params]\n * @returns {Promise<Address>}\n */\n public owner(params?: ReadParams) {\n return readManagedBudgetOwner(this._config, {\n address: this.assertValidAddress(),\n args: [],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * Get the total amount of assets allocated to the budget, including any that have been distributed\n * If a tokenId is provided, get the total amount of ERC1155 assets allocated to the budget, including any that have been distributed\n *\n * @public\n * @param {Address} [asset=\"0x0000000000000000000000000000000000000000\"] - The address of the asset\n * @param {?(bigint | undefined)} [tokenId] - The ID of the token\n * @param {?ReadParams} [params]\n * @returns {Promise<bigint>} - The total amount of assets\n */\n public total(\n asset: Address = zeroAddress,\n tokenId?: bigint | undefined,\n params?: ReadParams,\n ) {\n return readManagedBudgetTotal(this._config, {\n address: this.assertValidAddress(),\n args: tokenId ? [asset, tokenId] : [asset],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * Get the amount of assets available for distribution from the budget.\n * If a tokenId is provided, get the amount of ERC1155 assets available for distribution from the budget\n *\n * @public\n * @param {Address} [asset=\"0x0000000000000000000000000000000000000000\"]\n * @param {?(bigint | undefined)} [tokenId]\n * @param {?ReadParams} [params]\n * @returns {Promise<bigint>} - The amount of assets available\n */\n public available(\n asset: Address = zeroAddress,\n tokenId?: bigint | undefined,\n params?: ReadParams,\n ) {\n return readManagedBudgetAvailable(this._config, {\n address: this.assertValidAddress(),\n args: tokenId ? [asset, tokenId] : [asset],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * Get the amount of assets that have been distributed from the budget.\n * If a tokenId is provided, get the amount of ERC1155 assets that have been distributed from the budget\n *\n * @public\n * @param {Address} [asset=\"0x0000000000000000000000000000000000000000\"]\n * @param {?(bigint | undefined)} [tokenId]\n * @param {?ReadParams} [params]\n * @returns {Promise<bigint>} - The amount of assets distributed\n */\n public distributed(\n asset: Address = zeroAddress,\n tokenId?: bigint | undefined,\n params?: ReadParams,\n ) {\n return readManagedBudgetDistributed(this._config, {\n address: this.assertValidAddress(),\n args: tokenId ? [asset, tokenId] : [asset],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * @inheritdoc\n *\n * @public\n * @param {?ManagedBudgetPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: ManagedBudgetPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n if (!payload.owner || payload.owner === zeroAddress) {\n const owner = options.account\n ? options.account.address\n : options.config\n ? getAccount(options.config).address\n : this._account?.address;\n if (owner) {\n payload.owner = owner;\n } else {\n throw new DeployableUnknownOwnerProvidedError();\n }\n }\n return {\n abi: managedBudgetAbi,\n bytecode: bytecode as Hex,\n args: [prepareManagedBudgetPayload(payload)],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n\n/**\n * Given a {@link ManagedBudgetPayload}, properly encode a `ManagedBudget.InitPayload` for use with {@link ManagedBudget} initialization.\n *\n * @param {ManagedBudgetPayload} param0\n * @param {Address} param0.owner - The budget's owner\n * @param {{}} param0.authorized - List of accounts authorized to use the budget. This list should include a Boost core address to interact with the protocol.\n * @param {{}} param0.roles - List of roles to assign to the corresponding account by index.\n * @returns {Hex}\n */\nexport const prepareManagedBudgetPayload = ({\n owner,\n authorized,\n roles,\n}: ManagedBudgetPayload) => {\n return encodeAbiParameters(\n parseAbiParameters([\n 'ManagedBudgetPayload payload',\n 'struct ManagedBudgetPayload { address owner; address[] authorized; uint256[] roles; }',\n ]),\n [{ owner, authorized, roles: roles as unknown as Array<bigint> }],\n );\n};\n"],"names":["ManagedBudgetRoles","isFungibleTransfer","transfer","isERC1155TransferPayload","prepareTransfer","prepareFungibleTransfer","prepareERC1155Transfer","UnknownTransferPayloadSupplied","_ManagedBudget","DeployableTargetWithRBAC","managedBudgetAbi","params","request","result","simulateManagedBudgetAllocate","writeManagedBudgetAllocate","simulateManagedBudgetClawback","writeManagedBudgetClawback","target","data","boostId","incentiveId","simulateManagedBudgetClawbackFromTarget","writeManagedBudgetClawbackFromTarget","simulateManagedBudgetDisburse","writeManagedBudgetDisburse","transfers","simulateManagedBudgetDisburseBatch","writeManagedBudgetDisburseBatch","readManagedBudgetOwner","asset","zeroAddress","tokenId","readManagedBudgetTotal","readManagedBudgetAvailable","readManagedBudgetDistributed","_payload","_options","payload","options","owner","getAccount","_a","DeployableUnknownOwnerProvidedError","bytecode","prepareManagedBudgetPayload","__vite_import_meta_env__","ManagedBudgetBases","RegistryType","ManagedBudget","authorized","roles","encodeAbiParameters","parseAbiParameters"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ManagedBudgetWithFees.d.ts","sourceRoot":"","sources":["../../src/Budgets/ManagedBudgetWithFees.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ManagedBudgetWithFees.d.ts","sourceRoot":"","sources":["../../src/Budgets/ManagedBudgetWithFees.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EAoBzB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,iBAAiB,EACtB,KAAK,GAAG,EAIT,MAAM,MAAM,CAAC;AAEd,OAAO,KAAK,EACV,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,wBAAwB,EACxB,KAAK,KAAK,EACX,MAAM,wCAAwC,CAAC;AAEhD,OAAO,KAAK,EACV,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,UAAU,EACf,KAAK,UAAU,EACf,YAAY,EACZ,KAAK,WAAW,EACjB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,wBAAwB,EAAE,CAAC;AACpC,YAAY,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;;OAIG;IACH,KAAK,EAAE,OAAO,CAAC;IACf;;;;OAIG;IACH,UAAU,EAAE,OAAO,EAAE,CAAC;IACtB;;;;OAIG;IACH,KAAK,EAAE,KAAK,EAAE,CAAC;IACf;;;;OAIG;IACH,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,wBAAwB,CAClC,KAAK,SAAS,iBAAiB,CAC7B,OAAO,wBAAwB,CAChC,GAAG,iBAAiB,CAAC,OAAO,wBAAwB,CAAC,IACpD,UAAU,CAAC,OAAO,wBAAwB,EAAE,KAAK,CAAC,CAAC;AAEvD;;;;;;;;GAQG;AACH,qBAAa,qBAAsB,SAAQ,wBAAwB,CACjE,4BAA4B,EAC5B,OAAO,wBAAwB,CAChC;IACC;;;;;;OAMG;IACH,SAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAA4B;IACxD;;;;;;OAMG;IACH,OAAuB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAKnD;IACF;;;;;;OAMG;IACH,OAAuB,YAAY,EAAE,YAAY,CAAuB;IAExE;;;;;;;;;;OAUG;IACU,QAAQ,CACnB,QAAQ,EAAE,uBAAuB,GAAG,sBAAsB,EAC1D,MAAM,CAAC,EAAE,WAAW;IAKtB;;;;;;;;;;OAUG;IACU,WAAW,CACtB,QAAQ,EAAE,uBAAuB,GAAG,sBAAsB,EAC1D,MAAM,CAAC,EAAE,WAAW;;;;IAgBtB;;;;;;;;;;;OAWG;IACU,QAAQ,CACnB,QAAQ,EAAE,uBAAuB,GAAG,sBAAsB,EAC1D,MAAM,CAAC,EAAE,WAAW;IAKtB;;;;;;;;;;;OAWG;IACU,WAAW,CACtB,QAAQ,EAAE,uBAAuB,GAAG,sBAAsB,EAC1D,MAAM,CAAC,EAAE,WAAW;;;;IAgBtB;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACU,kBAAkB,CAC7B,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,WAAW,EAAE,MAAM,GAAG,MAAM,EAC5B,MAAM,CAAC,EAAE,WAAW;IAOtB;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACU,qBAAqB,CAChC,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,WAAW,EAAE,MAAM,GAAG,MAAM,EAC5B,MAAM,CAAC,EAAE,WAAW;;;;IAmBtB;;;;;;;;;OASG;IACU,QAAQ,CACnB,QAAQ,EAAE,uBAAuB,GAAG,sBAAsB,EAC1D,MAAM,CAAC,EAAE,WAAW;IAKtB;;;;;;;;;OASG;IACU,WAAW,CACtB,QAAQ,EAAE,uBAAuB,GAAG,sBAAsB,EAC1D,MAAM,CAAC,EAAE,WAAW;;;;IAgBtB;;;;;;;;OAQG;IACU,aAAa,CACxB,SAAS,EAAE,KAAK,CAAC,uBAAuB,GAAG,sBAAsB,CAAC,EAClE,MAAM,CAAC,EAAE,WAAW;IAKtB;;;;;;;;OAQG;IACU,gBAAgB,CAC3B,SAAS,EAAE,KAAK,CAAC,uBAAuB,GAAG,sBAAsB,CAAC,EAClE,MAAM,CAAC,EAAE,WAAW;;;;IAgBtB;;;;;;;;;;OAUG;IACU,gBAAgB,CAC3B,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,WAAW,EAAE,MAAM,GAAG,MAAM,EAC5B,MAAM,CAAC,EAAE,WAAW;IAOtB;;;;;;;;;OASG;IACU,mBAAmB,CAC9B,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,WAAW,EAAE,MAAM,GAAG,MAAM,EAC5B,MAAM,CAAC,EAAE,WAAW;;;;IAiBtB;;;;;;;OAOG;IACU,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW;IAMzE;;;;;;;OAOG;IACU,mBAAmB,CAC9B,aAAa,EAAE,MAAM,EACrB,MAAM,CAAC,EAAE,WAAW;;;;IAiBtB;;;;;OAKG;IACU,aAAa,CAAC,MAAM,CAAC,EAAE,UAAU;IAS9C;;;;;;OAMG;IACI,KAAK,CAAC,MAAM,CAAC,EAAE,UAAU;IAShC;;;;;;;;;OASG;IACI,KAAK,CACV,KAAK,GAAE,OAAqB,EAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,EAC5B,MAAM,CAAC,EAAE,UAAU;IAUrB;;;;;;;;;OASG;IACI,SAAS,CACd,KAAK,GAAE,OAAqB,EAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,EAC5B,MAAM,CAAC,EAAE,UAAU;IAUrB;;;;;;;;;OASG;IACI,WAAW,CAChB,KAAK,GAAE,OAAqB,EAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,EAC5B,MAAM,CAAC,EAAE,UAAU;IAUrB;;;;;;;OAOG;IACa,eAAe,CAC7B,QAAQ,CAAC,EAAE,4BAA4B,EACvC,QAAQ,CAAC,EAAE,iBAAiB,GAC3B,uBAAuB;CAwB3B;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,mCAAmC,iDAK7C,4BAA4B,kBAe9B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ManagedBudgetWithFeesV2.d.ts","sourceRoot":"","sources":["../../src/Budgets/ManagedBudgetWithFeesV2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ManagedBudgetWithFeesV2.d.ts","sourceRoot":"","sources":["../../src/Budgets/ManagedBudgetWithFeesV2.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"TransparentBudget.d.ts","sourceRoot":"","sources":["../../src/Budgets/TransparentBudget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TransparentBudget.d.ts","sourceRoot":"","sources":["../../src/Budgets/TransparentBudget.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"VestingBudget.d.ts","sourceRoot":"","sources":["../../src/Budgets/VestingBudget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VestingBudget.d.ts","sourceRoot":"","sources":["../../src/Budgets/VestingBudget.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("../generated-C_JEoLDO.cjs"),u=require("@wagmi/core"),i=require("viem"),d=require("../errors.cjs"),l=require("../utils.cjs"),h=require("./Deployable.cjs"),a=class a extends h.Deployable{constructor(e,s,t){super(e,s),this._isBase=!0,typeof s=="string"&&i.isAddress(s)&&s!==i.zeroAddress&&!Object.values(this.bases).some(r=>!s||!r?!1:i.isAddressEqual(s,r))&&(t=!1),t!==void 0&&(this._isBase=t)}get isBase(){return this.address&&Object.values(this.bases).some(e=>i.isAddressEqual(this.address,e))?!0:this._isBase}get bases(){return this.constructor.bases}get registryType(){return this.constructor.registryType}async deploy(e,s,t){return await super.deploy(e,s,t),this.assertValidAddress(),this}async deployRaw(e,s){if(this.address)throw new d.DeployableAlreadyDeployedError(this.address);const t=e||this._payload,r=(s==null?void 0:s.config)||this._config,{args:y,...o}=this.buildParameters(t);return await u.deployContract(r,{...o,...this.optionallyAttachAccount(s==null?void 0:s.account),args:[]})}async supportsInterface(e,s){return await c.as(this._config,{address:this.assertValidAddress(),...this.optionallyAttachAccount(),...s,args:[e]})}async getComponentInterface(e){return await c.ns(this._config,{address:this.assertValidAddress(),...this.optionallyAttachAccount(),...e,args:[]})}validateDeploymentConfig(e,s){const t=e||this._payload;if(!t)throw new d.DeployableMissingPayloadError;return super.validateDeploymentConfig(t,s)}};a.bases={},a.registryType=l.RegistryType.ACTION;let n=a;exports.DeployableTarget=n;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("../generated-BOBQ2ut4.cjs"),u=require("@wagmi/core"),i=require("viem"),d=require("../errors.cjs"),l=require("../utils.cjs"),h=require("./Deployable.cjs"),a=class a extends h.Deployable{constructor(e,s,t){super(e,s),this._isBase=!0,typeof s=="string"&&i.isAddress(s)&&s!==i.zeroAddress&&!Object.values(this.bases).some(r=>!s||!r?!1:i.isAddressEqual(s,r))&&(t=!1),t!==void 0&&(this._isBase=t)}get isBase(){return this.address&&Object.values(this.bases).some(e=>e&&this.address&&i.isAddressEqual(this.address,e))?!0:this._isBase}get bases(){return this.constructor.bases}get registryType(){return this.constructor.registryType}async deploy(e,s,t){return await super.deploy(e,s,t),this.assertValidAddress(),this}async deployRaw(e,s){if(this.address)throw new d.DeployableAlreadyDeployedError(this.address);const t=e||this._payload,r=(s==null?void 0:s.config)||this._config,{args:y,...o}=this.buildParameters(t);return await u.deployContract(r,{...o,...this.optionallyAttachAccount(s==null?void 0:s.account),args:[]})}async supportsInterface(e,s){return await c.rs(this._config,{address:this.assertValidAddress(),...this.optionallyAttachAccount(),...s,args:[e]})}async getComponentInterface(e){return await c.ss(this._config,{address:this.assertValidAddress(),...this.optionallyAttachAccount(),...e,args:[]})}validateDeploymentConfig(e,s){const t=e||this._payload;if(!t)throw new d.DeployableMissingPayloadError;return super.validateDeploymentConfig(t,s)}};a.bases={},a.registryType=l.RegistryType.ACTION;let n=a;exports.DeployableTarget=n;
2
2
  //# sourceMappingURL=DeployableTarget.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"DeployableTarget.cjs","sources":["../../src/Deployable/DeployableTarget.ts"],"sourcesContent":["import {\n type aCloneableAbi,\n readACloneableGetComponentInterface,\n readACloneableSupportsInterface,\n} from '@boostxyz/evm';\nimport { deployContract } from '@wagmi/core';\nimport {\n type Abi,\n type Address,\n type Hash,\n type Hex,\n type WaitForTransactionReceiptParameters,\n isAddress,\n isAddressEqual,\n zeroAddress,\n} from 'viem';\nimport {\n DeployableAlreadyDeployedError,\n DeployableMissingPayloadError,\n} from '../errors';\nimport { type ReadParams, RegistryType } from '../utils';\nimport {\n Deployable,\n type DeployableOptions,\n type DeployablePayloadOrAddress,\n} from './Deployable';\n\n/**\n * A base class representing a generic base Boost Protocol target contract, extended by Actions, AllowLists, Budgets, Incentives, and Validators.\n *\n * @export\n * @class DeployableTarget\n * @typedef {DeployableTarget}\n * @template [Payload=unknown]\n * @extends {Deployable<Payload>}\n */\nexport class DeployableTarget<\n Payload,\n ContractAbi extends Abi,\n> extends Deployable<Payload, ContractAbi> {\n /**\n * A static property representing a map of stringified chain ID's to the address of the base implementation on chain, used when cloning base contracts.\n *\n * @static\n * @readonly\n * @type {Record<string, Address>}\n */\n static readonly bases: Record<number, Address> = {};\n /**\n * The target's registry type.\n *\n * @static\n * @readonly\n * @type {RegistryType}\n */\n static readonly registryType: RegistryType = RegistryType.ACTION;\n /**\n * A property asserting that the protocol should eiher clone and initialize a new target from the base implementation, or re-use an existing contract without initializing.\n *\n * @readonly\n * @type {boolean}\n */\n readonly _isBase: boolean = true;\n public get isBase() {\n if (\n !!this.address &&\n Object.values(this.bases).some((base) =>\n // biome-ignore lint/style/noNonNullAssertion: won't evaluate this if address checked and defined above\n isAddressEqual(this.address!, base),\n )\n )\n return true;\n return this._isBase;\n }\n\n /**\n * Creates an instance of DeployableTarget.\n *\n * @constructor\n * @param {DeployableOptions} options\n * @param {DeployablePayloadOrAddress<Payload>} payload - Either a given implementation's initialization payload, or an address to an existing on chain target.\n * @param {?boolean} [isBase] - A property asserting that the protocol should eiher clone and initialize a new target from the base implementation, or re-use an existing contract without initializing.\n */\n constructor(\n options: DeployableOptions,\n payload?: DeployablePayloadOrAddress<Payload>,\n isBase?: boolean,\n ) {\n super(options, payload);\n // if supplying a custom address, safe enough to assume it is not a base address which makes reusing contracts like budgets easier\n if (\n typeof payload === 'string' &&\n isAddress(payload) &&\n payload !== zeroAddress &&\n !Object.values(this.bases).some((base) => {\n if (!payload || !base) return false;\n return isAddressEqual(payload, base);\n })\n )\n isBase = false;\n if (isBase !== undefined) this._isBase = isBase;\n }\n\n /**\n * A getter that will return the base implementation's static addresses by numerical chain ID\n *\n * @public\n * @readonly\n * @type {Record<number, Address>}\n */\n public get bases(): Record<number, Address> {\n return (this.constructor as typeof DeployableTarget).bases;\n }\n\n /**\n * A getter that returns the registry type of the base implementation\n *\n * @public\n * @readonly\n * @type {RegistryType}\n */\n public get registryType(): RegistryType {\n return (this.constructor as typeof DeployableTarget).registryType;\n }\n\n /**\n * @inheritdoc\n *\n * @public\n * @async\n * @param {?Payload} [payload]\n * @param {?DeployableOptions} [options]\n * @param {?Omit<WaitForTransactionReceiptParameters, 'hash'>} [waitParams]\n * @returns {Promise<this>}\n */\n protected override async deploy(\n payload?: Payload,\n options?: DeployableOptions,\n waitParams?: Omit<WaitForTransactionReceiptParameters, 'hash'>,\n ) {\n await super.deploy(payload, options, waitParams);\n this.assertValidAddress();\n return this;\n }\n\n /**\n * @inheritdoc\n *\n * @public\n * @async\n * @param {?Payload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {Promise<Hash>}\n */\n protected override async deployRaw(\n _payload?: Payload,\n _options?: DeployableOptions,\n ): Promise<Hash> {\n if (this.address) throw new DeployableAlreadyDeployedError(this.address);\n const payload = _payload || this._payload;\n const config = _options?.config || this._config;\n const { args, ...deployment } = this.buildParameters(payload);\n return await deployContract(config, {\n ...deployment,\n ...this.optionallyAttachAccount(_options?.account),\n // Deployable targets don't construct with arguments, they initialize with encoded payloads\n args: [],\n });\n }\n\n /**\n * Check if the contract supports the given interface\n *\n * @public\n * @async\n * @param {Hex} interfaceId - The interface identifier\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the contract supports the interface\n */\n public async supportsInterface(interfaceId: Hex, params?: ReadParams) {\n return await readACloneableSupportsInterface(this._config, {\n address: this.assertValidAddress(),\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n args: [interfaceId],\n });\n }\n\n /**\n * Return a cloneable's unique identifier for downstream consumers to differentiate various targets\n * All implementations must override this function\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<Hex>}\n */\n public async getComponentInterface(params?: ReadParams) {\n return await readACloneableGetComponentInterface(this._config, {\n address: this.assertValidAddress(),\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n args: [],\n });\n }\n\n /**\n * @inheritdoc\n *\n * @protected\n * @template [P=Payload]\n * @param {?P} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {[P, DeployableOptions]}\n */\n protected override validateDeploymentConfig<P = Payload>(\n _payload?: P,\n _options?: DeployableOptions,\n ) {\n const payload = _payload || this._payload;\n if (!payload) throw new DeployableMissingPayloadError();\n return super.validateDeploymentConfig(payload, _options) as [\n P,\n DeployableOptions,\n ];\n }\n}\n"],"names":["_DeployableTarget","Deployable","options","payload","isBase","isAddress","zeroAddress","base","isAddressEqual","waitParams","_payload","_options","DeployableAlreadyDeployedError","config","args","deployment","deployContract","interfaceId","params","readACloneableSupportsInterface","readACloneableGetComponentInterface","DeployableMissingPayloadError","RegistryType","DeployableTarget"],"mappings":"2PAoCaA,EAAN,MAAMA,UAGHC,EAAAA,UAAiC,CA4CzC,YACEC,EACAC,EACAC,EACA,CACA,MAAMF,EAASC,CAAO,EA1BxB,KAAS,QAAmB,GA6BxB,OAAOA,GAAY,UACnBE,EAAU,UAAAF,CAAO,GACjBA,IAAYG,EAAAA,aACZ,CAAC,OAAO,OAAO,KAAK,KAAK,EAAE,KAAMC,GAC3B,CAACJ,GAAW,CAACI,EAAa,GACvBC,EAAA,eAAeL,EAASI,CAAI,CACpC,IAEQH,EAAA,IACPA,IAAW,SAAW,KAAK,QAAUA,EAC3C,CAtCA,IAAW,QAAS,CAEhB,OAAE,KAAK,SACP,OAAO,OAAO,KAAK,KAAK,EAAE,KAAMG,GAE9BC,iBAAe,KAAK,QAAUD,CAAI,CACpC,EAEO,GACF,KAAK,OACd,CAqCA,IAAW,OAAiC,CAC1C,OAAQ,KAAK,YAAwC,KACvD,CASA,IAAW,cAA6B,CACtC,OAAQ,KAAK,YAAwC,YACvD,CAYA,MAAyB,OACvBJ,EACAD,EACAO,EACA,CACA,aAAM,MAAM,OAAON,EAASD,EAASO,CAAU,EAC/C,KAAK,mBAAmB,EACjB,IACT,CAWA,MAAyB,UACvBC,EACAC,EACe,CACf,GAAI,KAAK,QAAS,MAAM,IAAIC,EAAAA,+BAA+B,KAAK,OAAO,EACjE,MAAAT,EAAUO,GAAY,KAAK,SAC3BG,GAASF,GAAA,YAAAA,EAAU,SAAU,KAAK,QAClC,CAAE,KAAAG,EAAM,GAAGC,GAAe,KAAK,gBAAgBZ,CAAO,EACrD,OAAA,MAAMa,iBAAeH,EAAQ,CAClC,GAAGE,EACH,GAAG,KAAK,wBAAwBJ,GAAA,YAAAA,EAAU,OAAO,EAEjD,KAAM,CAAC,CAAA,CACR,CACH,CAWA,MAAa,kBAAkBM,EAAkBC,EAAqB,CAC7D,OAAA,MAAMC,EAAAA,GAAgC,KAAK,QAAS,CACzD,QAAS,KAAK,mBAAmB,EACjC,GAAG,KAAK,wBAAwB,EAEhC,GAAID,EACJ,KAAM,CAACD,CAAW,CAAA,CACnB,CACH,CAWA,MAAa,sBAAsBC,EAAqB,CAC/C,OAAA,MAAME,EAAAA,GAAoC,KAAK,QAAS,CAC7D,QAAS,KAAK,mBAAmB,EACjC,GAAG,KAAK,wBAAwB,EAEhC,GAAIF,EACJ,KAAM,CAAC,CAAA,CACR,CACH,CAWmB,yBACjBR,EACAC,EACA,CACM,MAAAR,EAAUO,GAAY,KAAK,SACjC,GAAI,CAACP,EAAe,MAAA,IAAIkB,EAAAA,8BACjB,OAAA,MAAM,yBAAyBlB,EAASQ,CAAQ,CAIzD,CACF,EArLEX,EAAgB,MAAiC,GAQjDA,EAAgB,aAA6BsB,EAAa,aAAA,OAnBrD,IAAMC,EAANvB"}
1
+ {"version":3,"file":"DeployableTarget.cjs","sources":["../../src/Deployable/DeployableTarget.ts"],"sourcesContent":["import {\n type aCloneableAbi,\n readACloneableGetComponentInterface,\n readACloneableSupportsInterface,\n} from '@boostxyz/evm';\nimport { deployContract } from '@wagmi/core';\nimport {\n type Abi,\n type Address,\n type Hash,\n type Hex,\n type WaitForTransactionReceiptParameters,\n isAddress,\n isAddressEqual,\n zeroAddress,\n} from 'viem';\nimport {\n DeployableAlreadyDeployedError,\n DeployableMissingPayloadError,\n} from '../errors';\nimport { type ReadParams, RegistryType } from '../utils';\nimport {\n Deployable,\n type DeployableOptions,\n type DeployablePayloadOrAddress,\n} from './Deployable';\n\n/**\n * A base class representing a generic base Boost Protocol target contract, extended by Actions, AllowLists, Budgets, Incentives, and Validators.\n *\n * @export\n * @class DeployableTarget\n * @typedef {DeployableTarget}\n * @template [Payload=unknown]\n * @extends {Deployable<Payload>}\n */\nexport class DeployableTarget<\n Payload,\n ContractAbi extends Abi,\n> extends Deployable<Payload, ContractAbi> {\n /**\n * A static property representing a map of stringified chain ID's to the address of the base implementation on chain, used when cloning base contracts.\n *\n * @static\n * @readonly\n * @type {Record<string, Address>}\n */\n static readonly bases: Record<number, Address> = {};\n /**\n * The target's registry type.\n *\n * @static\n * @readonly\n * @type {RegistryType}\n */\n static readonly registryType: RegistryType = RegistryType.ACTION;\n /**\n * A property asserting that the protocol should eiher clone and initialize a new target from the base implementation, or re-use an existing contract without initializing.\n *\n * @readonly\n * @type {boolean}\n */\n readonly _isBase: boolean = true;\n public get isBase() {\n if (\n !!this.address &&\n Object.values(this.bases).some(\n (base) => base && this.address && isAddressEqual(this.address, base),\n )\n )\n return true;\n return this._isBase;\n }\n\n /**\n * Creates an instance of DeployableTarget.\n *\n * @constructor\n * @param {DeployableOptions} options\n * @param {DeployablePayloadOrAddress<Payload>} payload - Either a given implementation's initialization payload, or an address to an existing on chain target.\n * @param {?boolean} [isBase] - A property asserting that the protocol should eiher clone and initialize a new target from the base implementation, or re-use an existing contract without initializing.\n */\n constructor(\n options: DeployableOptions,\n payload?: DeployablePayloadOrAddress<Payload>,\n isBase?: boolean,\n ) {\n super(options, payload);\n // if supplying a custom address, safe enough to assume it is not a base address which makes reusing contracts like budgets easier\n if (\n typeof payload === 'string' &&\n isAddress(payload) &&\n payload !== zeroAddress &&\n !Object.values(this.bases).some((base) => {\n if (!payload || !base) return false;\n return isAddressEqual(payload, base);\n })\n )\n isBase = false;\n if (isBase !== undefined) this._isBase = isBase;\n }\n\n /**\n * A getter that will return the base implementation's static addresses by numerical chain ID\n *\n * @public\n * @readonly\n * @type {Record<number, Address>}\n */\n public get bases(): Record<number, Address> {\n return (this.constructor as typeof DeployableTarget).bases;\n }\n\n /**\n * A getter that returns the registry type of the base implementation\n *\n * @public\n * @readonly\n * @type {RegistryType}\n */\n public get registryType(): RegistryType {\n return (this.constructor as typeof DeployableTarget).registryType;\n }\n\n /**\n * @inheritdoc\n *\n * @public\n * @async\n * @param {?Payload} [payload]\n * @param {?DeployableOptions} [options]\n * @param {?Omit<WaitForTransactionReceiptParameters, 'hash'>} [waitParams]\n * @returns {Promise<this>}\n */\n protected override async deploy(\n payload?: Payload,\n options?: DeployableOptions,\n waitParams?: Omit<WaitForTransactionReceiptParameters, 'hash'>,\n ) {\n await super.deploy(payload, options, waitParams);\n this.assertValidAddress();\n return this;\n }\n\n /**\n * @inheritdoc\n *\n * @public\n * @async\n * @param {?Payload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {Promise<Hash>}\n */\n protected override async deployRaw(\n _payload?: Payload,\n _options?: DeployableOptions,\n ): Promise<Hash> {\n if (this.address) throw new DeployableAlreadyDeployedError(this.address);\n const payload = _payload || this._payload;\n const config = _options?.config || this._config;\n const { args, ...deployment } = this.buildParameters(payload);\n return await deployContract(config, {\n ...deployment,\n ...this.optionallyAttachAccount(_options?.account),\n // Deployable targets don't construct with arguments, they initialize with encoded payloads\n args: [],\n });\n }\n\n /**\n * Check if the contract supports the given interface\n *\n * @public\n * @async\n * @param {Hex} interfaceId - The interface identifier\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the contract supports the interface\n */\n public async supportsInterface(interfaceId: Hex, params?: ReadParams) {\n return await readACloneableSupportsInterface(this._config, {\n address: this.assertValidAddress(),\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n args: [interfaceId],\n });\n }\n\n /**\n * Return a cloneable's unique identifier for downstream consumers to differentiate various targets\n * All implementations must override this function\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<Hex>}\n */\n public async getComponentInterface(params?: ReadParams) {\n return await readACloneableGetComponentInterface(this._config, {\n address: this.assertValidAddress(),\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n args: [],\n });\n }\n\n /**\n * @inheritdoc\n *\n * @protected\n * @template [P=Payload]\n * @param {?P} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {[P, DeployableOptions]}\n */\n protected override validateDeploymentConfig<P = Payload>(\n _payload?: P,\n _options?: DeployableOptions,\n ) {\n const payload = _payload || this._payload;\n if (!payload) throw new DeployableMissingPayloadError();\n return super.validateDeploymentConfig(payload, _options) as [\n P,\n DeployableOptions,\n ];\n }\n}\n"],"names":["_DeployableTarget","Deployable","options","payload","isBase","isAddress","zeroAddress","base","isAddressEqual","waitParams","_payload","_options","DeployableAlreadyDeployedError","config","args","deployment","deployContract","interfaceId","params","readACloneableSupportsInterface","readACloneableGetComponentInterface","DeployableMissingPayloadError","RegistryType","DeployableTarget"],"mappings":"2PAoCaA,EAAN,MAAMA,UAGHC,EAAAA,UAAiC,CA2CzC,YACEC,EACAC,EACAC,EACA,CACA,MAAMF,EAASC,CAAO,EAzBxB,KAAS,QAAmB,GA4BxB,OAAOA,GAAY,UACnBE,EAAU,UAAAF,CAAO,GACjBA,IAAYG,EAAAA,aACZ,CAAC,OAAO,OAAO,KAAK,KAAK,EAAE,KAAMC,GAC3B,CAACJ,GAAW,CAACI,EAAa,GACvBC,EAAA,eAAeL,EAASI,CAAI,CACpC,IAEQH,EAAA,IACPA,IAAW,SAAW,KAAK,QAAUA,EAC3C,CArCA,IAAW,QAAS,CAEhB,OAAE,KAAK,SACP,OAAO,OAAO,KAAK,KAAK,EAAE,KACvBG,GAASA,GAAQ,KAAK,SAAWC,EAAAA,eAAe,KAAK,QAASD,CAAI,CACrE,EAEO,GACF,KAAK,OACd,CAqCA,IAAW,OAAiC,CAC1C,OAAQ,KAAK,YAAwC,KACvD,CASA,IAAW,cAA6B,CACtC,OAAQ,KAAK,YAAwC,YACvD,CAYA,MAAyB,OACvBJ,EACAD,EACAO,EACA,CACA,aAAM,MAAM,OAAON,EAASD,EAASO,CAAU,EAC/C,KAAK,mBAAmB,EACjB,IACT,CAWA,MAAyB,UACvBC,EACAC,EACe,CACf,GAAI,KAAK,QAAS,MAAM,IAAIC,EAAAA,+BAA+B,KAAK,OAAO,EACjE,MAAAT,EAAUO,GAAY,KAAK,SAC3BG,GAASF,GAAA,YAAAA,EAAU,SAAU,KAAK,QAClC,CAAE,KAAAG,EAAM,GAAGC,GAAe,KAAK,gBAAgBZ,CAAO,EACrD,OAAA,MAAMa,iBAAeH,EAAQ,CAClC,GAAGE,EACH,GAAG,KAAK,wBAAwBJ,GAAA,YAAAA,EAAU,OAAO,EAEjD,KAAM,CAAC,CAAA,CACR,CACH,CAWA,MAAa,kBAAkBM,EAAkBC,EAAqB,CAC7D,OAAA,MAAMC,EAAAA,GAAgC,KAAK,QAAS,CACzD,QAAS,KAAK,mBAAmB,EACjC,GAAG,KAAK,wBAAwB,EAEhC,GAAID,EACJ,KAAM,CAACD,CAAW,CAAA,CACnB,CACH,CAWA,MAAa,sBAAsBC,EAAqB,CAC/C,OAAA,MAAME,EAAAA,GAAoC,KAAK,QAAS,CAC7D,QAAS,KAAK,mBAAmB,EACjC,GAAG,KAAK,wBAAwB,EAEhC,GAAIF,EACJ,KAAM,CAAC,CAAA,CACR,CACH,CAWmB,yBACjBR,EACAC,EACA,CACM,MAAAR,EAAUO,GAAY,KAAK,SACjC,GAAI,CAACP,EAAe,MAAA,IAAIkB,EAAAA,8BACjB,OAAA,MAAM,yBAAyBlB,EAASQ,CAAQ,CAIzD,CACF,EApLEX,EAAgB,MAAiC,GAQjDA,EAAgB,aAA6BsB,EAAa,aAAA,OAnBrD,IAAMC,EAANvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"DeployableTarget.d.ts","sourceRoot":"","sources":["../../src/Deployable/DeployableTarget.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,KAAK,GAAG,EACR,KAAK,OAAO,EACZ,KAAK,IAAI,EACT,KAAK,GAAG,EACR,KAAK,mCAAmC,EAIzC,MAAM,MAAM,CAAC;AAKd,OAAO,EAAE,KAAK,UAAU,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACzD,OAAO,EACL,UAAU,EACV,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,EAChC,MAAM,cAAc,CAAC;AAEtB;;;;;;;;GAQG;AACH,qBAAa,gBAAgB,CAC3B,OAAO,EACP,WAAW,SAAS,GAAG,CACvB,SAAQ,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC;IACxC;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IACpD;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAuB;IACjE;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAQ;IACjC,IAAW,MAAM,YAUhB;IAED;;;;;;;OAOG;gBAED,OAAO,EAAE,iBAAiB,EAC1B,OAAO,CAAC,EAAE,0BAA0B,CAAC,OAAO,CAAC,EAC7C,MAAM,CAAC,EAAE,OAAO;IAiBlB;;;;;;OAMG;IACH,IAAW,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE1C;IAED;;;;;;OAMG;IACH,IAAW,YAAY,IAAI,YAAY,CAEtC;IAED;;;;;;;;;OASG;cACsB,MAAM,CAC7B,OAAO,CAAC,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,iBAAiB,EAC3B,UAAU,CAAC,EAAE,IAAI,CAAC,mCAAmC,EAAE,MAAM,CAAC;IAOhE;;;;;;;;OAQG;cACsB,SAAS,CAChC,QAAQ,CAAC,EAAE,OAAO,EAClB,QAAQ,CAAC,EAAE,iBAAiB,GAC3B,OAAO,CAAC,IAAI,CAAC;IAahB;;;;;;;;OAQG;IACU,iBAAiB,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,UAAU;IAUpE;;;;;;;;OAQG;IACU,qBAAqB,CAAC,MAAM,CAAC,EAAE,UAAU;IAUtD;;;;;;;;OAQG;cACgB,wBAAwB,CAAC,CAAC,GAAG,OAAO,EACrD,QAAQ,CAAC,EAAE,CAAC,EACZ,QAAQ,CAAC,EAAE,iBAAiB,GAIgC,CAC1D,CAAC,EACD,iBAAiB,CAClB;CAEJ"}
1
+ {"version":3,"file":"DeployableTarget.d.ts","sourceRoot":"","sources":["../../src/Deployable/DeployableTarget.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,KAAK,GAAG,EACR,KAAK,OAAO,EACZ,KAAK,IAAI,EACT,KAAK,GAAG,EACR,KAAK,mCAAmC,EAIzC,MAAM,MAAM,CAAC;AAKd,OAAO,EAAE,KAAK,UAAU,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACzD,OAAO,EACL,UAAU,EACV,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,EAChC,MAAM,cAAc,CAAC;AAEtB;;;;;;;;GAQG;AACH,qBAAa,gBAAgB,CAC3B,OAAO,EACP,WAAW,SAAS,GAAG,CACvB,SAAQ,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC;IACxC;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IACpD;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAuB;IACjE;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAQ;IACjC,IAAW,MAAM,YAShB;IAED;;;;;;;OAOG;gBAED,OAAO,EAAE,iBAAiB,EAC1B,OAAO,CAAC,EAAE,0BAA0B,CAAC,OAAO,CAAC,EAC7C,MAAM,CAAC,EAAE,OAAO;IAiBlB;;;;;;OAMG;IACH,IAAW,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE1C;IAED;;;;;;OAMG;IACH,IAAW,YAAY,IAAI,YAAY,CAEtC;IAED;;;;;;;;;OASG;cACsB,MAAM,CAC7B,OAAO,CAAC,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,iBAAiB,EAC3B,UAAU,CAAC,EAAE,IAAI,CAAC,mCAAmC,EAAE,MAAM,CAAC;IAOhE;;;;;;;;OAQG;cACsB,SAAS,CAChC,QAAQ,CAAC,EAAE,OAAO,EAClB,QAAQ,CAAC,EAAE,iBAAiB,GAC3B,OAAO,CAAC,IAAI,CAAC;IAahB;;;;;;;;OAQG;IACU,iBAAiB,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,UAAU;IAUpE;;;;;;;;OAQG;IACU,qBAAqB,CAAC,MAAM,CAAC,EAAE,UAAU;IAUtD;;;;;;;;OAQG;cACgB,wBAAwB,CAAC,CAAC,GAAG,OAAO,EACrD,QAAQ,CAAC,EAAE,CAAC,EACZ,QAAQ,CAAC,EAAE,iBAAiB,GAIgC,CAC1D,CAAC,EACD,iBAAiB,CAClB;CAEJ"}