@boostxyz/sdk 8.0.0-canary.3 → 8.0.0-canary.4

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 (161) 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.js +45 -45
  5. package/dist/{AllowList-DQf-8HQC.js → AllowList-CTRuUBCQ.js} +41 -41
  6. package/dist/{AllowList-DQf-8HQC.js.map → AllowList-CTRuUBCQ.js.map} +1 -1
  7. package/dist/{AllowList-DaX239DR.cjs → AllowList-GEmUfOR1.cjs} +2 -2
  8. package/dist/{AllowList-DaX239DR.cjs.map → AllowList-GEmUfOR1.cjs.map} +1 -1
  9. package/dist/AllowLists/AllowList.cjs +1 -1
  10. package/dist/AllowLists/AllowList.js +4 -4
  11. package/dist/AllowLists/SimpleAllowList.cjs +1 -1
  12. package/dist/AllowLists/SimpleAllowList.js +7 -7
  13. package/dist/AllowLists/SimpleDenyList.cjs +1 -1
  14. package/dist/AllowLists/SimpleDenyList.js +3 -3
  15. package/dist/Auth/PassthroughAuth.cjs +1 -1
  16. package/dist/Auth/PassthroughAuth.js +2 -2
  17. package/dist/BoostCore.cjs +2 -2
  18. package/dist/BoostCore.cjs.map +1 -1
  19. package/dist/BoostCore.d.ts +137 -2
  20. package/dist/BoostCore.d.ts.map +1 -1
  21. package/dist/BoostCore.js +336 -206
  22. package/dist/BoostCore.js.map +1 -1
  23. package/dist/BoostRegistry.cjs +1 -1
  24. package/dist/BoostRegistry.js +21 -21
  25. package/dist/{Budget-LnAQ_Slw.js → Budget-BH0s7Bxu.js} +52 -52
  26. package/dist/{Budget-LnAQ_Slw.js.map → Budget-BH0s7Bxu.js.map} +1 -1
  27. package/dist/{Budget-WIB8IJoM.cjs → Budget-CwNhsa3m.cjs} +2 -2
  28. package/dist/{Budget-WIB8IJoM.cjs.map → Budget-CwNhsa3m.cjs.map} +1 -1
  29. package/dist/Budgets/Budget.cjs +1 -1
  30. package/dist/Budgets/Budget.js +3 -3
  31. package/dist/Budgets/ManagedBudget.cjs +1 -1
  32. package/dist/Budgets/ManagedBudget.js +26 -26
  33. package/dist/Deployable/DeployableTarget.cjs +1 -1
  34. package/dist/Deployable/DeployableTarget.js +1 -1
  35. package/dist/Deployable/DeployableTargetWithRBAC.cjs +1 -1
  36. package/dist/Deployable/DeployableTargetWithRBAC.js +17 -17
  37. package/dist/{Incentive-gT7z-4v3.cjs → Incentive-B2ZBE5LU.cjs} +2 -2
  38. package/dist/{Incentive-gT7z-4v3.cjs.map → Incentive-B2ZBE5LU.cjs.map} +1 -1
  39. package/dist/{Incentive-D_IBex5V.js → Incentive-BCSV7OtF.js} +41 -41
  40. package/dist/{Incentive-D_IBex5V.js.map → Incentive-BCSV7OtF.js.map} +1 -1
  41. package/dist/Incentives/AllowListIncentive.cjs +1 -1
  42. package/dist/Incentives/AllowListIncentive.js +17 -17
  43. package/dist/Incentives/CGDAIncentive.cjs +1 -1
  44. package/dist/Incentives/CGDAIncentive.js +14 -14
  45. package/dist/Incentives/ERC20Incentive.cjs +1 -1
  46. package/dist/Incentives/ERC20Incentive.js +13 -13
  47. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.cjs +1 -1
  48. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.js +71 -71
  49. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.cjs +1 -1
  50. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.js +35 -35
  51. package/dist/Incentives/ERC20VariableCriteriaIncentive.cjs +1 -1
  52. package/dist/Incentives/ERC20VariableCriteriaIncentive.js +9 -9
  53. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.cjs +1 -1
  54. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.js +12 -12
  55. package/dist/Incentives/ERC20VariableIncentive.cjs +1 -1
  56. package/dist/Incentives/ERC20VariableIncentive.js +8 -8
  57. package/dist/Incentives/Incentive.cjs +1 -1
  58. package/dist/Incentives/Incentive.js +3 -3
  59. package/dist/Incentives/PointsIncentive.cjs +1 -1
  60. package/dist/Incentives/PointsIncentive.js +28 -28
  61. package/dist/{SimpleDenyList-D5AoBdVi.cjs → SimpleDenyList-6_sxnZB0.cjs} +2 -2
  62. package/dist/{SimpleDenyList-D5AoBdVi.cjs.map → SimpleDenyList-6_sxnZB0.cjs.map} +1 -1
  63. package/dist/{SimpleDenyList-CtdXM49y.js → SimpleDenyList-CrjjFnn5.js} +17 -17
  64. package/dist/{SimpleDenyList-CtdXM49y.js.map → SimpleDenyList-CrjjFnn5.js.map} +1 -1
  65. package/dist/Validators/LimitedSignerValidator.cjs +1 -1
  66. package/dist/Validators/LimitedSignerValidator.cjs.map +1 -1
  67. package/dist/Validators/LimitedSignerValidator.d.ts +9 -9
  68. package/dist/Validators/LimitedSignerValidator.d.ts.map +1 -1
  69. package/dist/Validators/LimitedSignerValidator.js +19 -19
  70. package/dist/Validators/LimitedSignerValidator.js.map +1 -1
  71. package/dist/Validators/LimitedSignerValidatorV2.cjs +2 -0
  72. package/dist/Validators/LimitedSignerValidatorV2.cjs.map +1 -0
  73. package/dist/Validators/LimitedSignerValidatorV2.d.ts +842 -0
  74. package/dist/Validators/LimitedSignerValidatorV2.d.ts.map +1 -0
  75. package/dist/Validators/LimitedSignerValidatorV2.js +301 -0
  76. package/dist/Validators/LimitedSignerValidatorV2.js.map +1 -0
  77. package/dist/Validators/PayableLimitedSignerValidator.cjs +2 -0
  78. package/dist/Validators/PayableLimitedSignerValidator.cjs.map +1 -0
  79. package/dist/Validators/PayableLimitedSignerValidator.d.ts.map +1 -1
  80. package/dist/{Validator-BEUqV28V.js → Validators/PayableLimitedSignerValidator.js} +56 -102
  81. package/dist/Validators/PayableLimitedSignerValidator.js.map +1 -0
  82. package/dist/Validators/PayableLimitedSignerValidatorV2.cjs +2 -0
  83. package/dist/Validators/PayableLimitedSignerValidatorV2.cjs.map +1 -0
  84. package/dist/Validators/PayableLimitedSignerValidatorV2.d.ts +855 -0
  85. package/dist/Validators/PayableLimitedSignerValidatorV2.d.ts.map +1 -0
  86. package/dist/Validators/PayableLimitedSignerValidatorV2.js +372 -0
  87. package/dist/Validators/PayableLimitedSignerValidatorV2.js.map +1 -0
  88. package/dist/Validators/SignerValidator.cjs +1 -1
  89. package/dist/Validators/SignerValidator.cjs.map +1 -1
  90. package/dist/Validators/SignerValidator.d.ts +4 -2
  91. package/dist/Validators/SignerValidator.d.ts.map +1 -1
  92. package/dist/Validators/SignerValidator.js +12 -12
  93. package/dist/Validators/SignerValidator.js.map +1 -1
  94. package/dist/Validators/SignerValidatorV2.cjs +2 -0
  95. package/dist/Validators/SignerValidatorV2.cjs.map +1 -0
  96. package/dist/Validators/SignerValidatorV2.d.ts +728 -0
  97. package/dist/Validators/SignerValidatorV2.d.ts.map +1 -0
  98. package/dist/Validators/SignerValidatorV2.js +299 -0
  99. package/dist/Validators/SignerValidatorV2.js.map +1 -0
  100. package/dist/Validators/Validator.cjs +1 -1
  101. package/dist/Validators/Validator.cjs.map +1 -1
  102. package/dist/Validators/Validator.d.ts +19 -4
  103. package/dist/Validators/Validator.d.ts.map +1 -1
  104. package/dist/Validators/Validator.js +79 -14
  105. package/dist/Validators/Validator.js.map +1 -1
  106. package/dist/componentInterfaces-43ygGrVO.js +28 -0
  107. package/dist/componentInterfaces-43ygGrVO.js.map +1 -0
  108. package/dist/componentInterfaces-JU4NBkEc.cjs +2 -0
  109. package/dist/componentInterfaces-JU4NBkEc.cjs.map +1 -0
  110. package/dist/{deployments-Dw5Suk_D.js → deployments-COm00j8v.js} +48 -39
  111. package/dist/{deployments-Dw5Suk_D.js.map → deployments-COm00j8v.js.map} +1 -1
  112. package/dist/deployments-uLDgrxCp.cjs +2 -0
  113. package/dist/deployments-uLDgrxCp.cjs.map +1 -0
  114. package/dist/deployments.json +30 -21
  115. package/dist/generated-CkZm1EVH.cjs +3 -0
  116. package/dist/generated-CkZm1EVH.cjs.map +1 -0
  117. package/dist/{generated-krkFnwbV.js → generated-DRbljODL.js} +2314 -1284
  118. package/dist/generated-DRbljODL.js.map +1 -0
  119. package/dist/index.cjs +1 -1
  120. package/dist/index.d.ts +3 -0
  121. package/dist/index.d.ts.map +1 -1
  122. package/dist/index.js +185 -165
  123. package/dist/index.js.map +1 -1
  124. package/package.json +25 -1
  125. package/src/BoostCore.test.ts +77 -11
  126. package/src/BoostCore.ts +165 -4
  127. package/src/Budgets/ManagedBudgetWithFees.test.ts +14 -14
  128. package/src/Budgets/ManagedBudgetWithFeesV2.test.ts +3 -3
  129. package/src/Incentives/AllowListIncentive.test.ts +5 -5
  130. package/src/Incentives/CGDAIncentive.test.ts +6 -6
  131. package/src/Incentives/ERC1155Incentive.test.ts +2 -2
  132. package/src/Incentives/ERC20Incentive.test.ts +6 -6
  133. package/src/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.test.ts +5 -5
  134. package/src/Incentives/ERC20VariableCriteriaIncentiveV2.test.ts +5 -5
  135. package/src/Incentives/ERC20VariableIncentive.test.ts +7 -8
  136. package/src/Incentives/PointsIncentive.test.ts +5 -5
  137. package/src/Validators/LimitedSignerValidator.test.ts +1 -1
  138. package/src/Validators/LimitedSignerValidator.ts +9 -10
  139. package/src/Validators/LimitedSignerValidatorV2.test.ts +231 -0
  140. package/src/Validators/LimitedSignerValidatorV2.ts +707 -0
  141. package/src/Validators/PayableLimitedSignerValidator.test.ts +1 -1
  142. package/src/Validators/PayableLimitedSignerValidator.ts +0 -1
  143. package/src/Validators/PayableLimitedSignerValidatorV2.test.ts +202 -0
  144. package/src/Validators/PayableLimitedSignerValidatorV2.ts +688 -0
  145. package/src/Validators/SignerValidator.ts +4 -2
  146. package/src/Validators/SignerValidatorV2.test.ts +163 -0
  147. package/src/Validators/SignerValidatorV2.ts +635 -0
  148. package/src/Validators/Validator.ts +45 -2
  149. package/src/index.ts +3 -0
  150. package/dist/Validator-BEUqV28V.js.map +0 -1
  151. package/dist/Validator-FxcxYKhR.cjs +0 -2
  152. package/dist/Validator-FxcxYKhR.cjs.map +0 -1
  153. package/dist/componentInterfaces-BZ3fSNkT.cjs +0 -2
  154. package/dist/componentInterfaces-BZ3fSNkT.cjs.map +0 -1
  155. package/dist/componentInterfaces-D2s6AXlV.js +0 -25
  156. package/dist/componentInterfaces-D2s6AXlV.js.map +0 -1
  157. package/dist/deployments-DimWVnA4.cjs +0 -2
  158. package/dist/deployments-DimWVnA4.cjs.map +0 -1
  159. package/dist/generated-Cf82M-QP.cjs +0 -3
  160. package/dist/generated-Cf82M-QP.cjs.map +0 -1
  161. package/dist/generated-krkFnwbV.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LimitedSignerValidatorV2.d.ts","sourceRoot":"","sources":["../../src/Validators/LimitedSignerValidatorV2.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,301 @@
1
+ import { W as o, cE as p, cF as g, cG as A, cH as D, cI as V, cJ as w, cK as R, cL as E } from "../generated-DRbljODL.js";
2
+ import { encodeAbiParameters as r } from "viem";
3
+ import { j as I } from "../deployments-COm00j8v.js";
4
+ import { DeployableTarget as S } from "../Deployable/DeployableTarget.js";
5
+ import { RegistryType as T } from "../utils.js";
6
+ const C = "0x610120604052348015610010575f80fd5b50306080524660a0525f60c081905260e081905261010052610030610035565b61009a565b63409feecd19805460018116156100535763f92ee8a95f526004601cfd5b6001600160401b03808260011c14610095578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b60805160a05160c05160e051610100516119cf6100c85f395f50505f50505f50505f50505f50506119cf5ff3fe608060405260043610610157575f3560e01c8063703b6900116100bb578063a1d2756f11610071578063f04e283e11610057578063f04e283e146103d2578063f2fde38b146103e5578063fee81cf4146103f8575f80fd5b8063a1d2756f1461039e578063ce5c134f146103bd575f80fd5b8063736c0d5b116100a1578063736c0d5b146102f657806384b0196e146103245780638da5cb5b1461034b575f80fd5b8063703b6900146102db578063715018a6146102ee575f80fd5b8063394ff18111610110578063439fab91116100f6578063439fab911461029557806354d1f13d146102b4578063637d7cbe146102bc575f80fd5b8063394ff1811461022b5780634359d28a14610276575f80fd5b8063256929621161014057806325692962146101bc57806328d6183b146101c65780632f9e058b14610200575f80fd5b806301ffc9a71461015b5780630668e9d41461018f575b5f80fd5b348015610166575f80fd5b5061017a610175366004611170565b610429565b60405190151581526020015b60405180910390f35b34801561019a575f80fd5b506101ae6101a93660046111d0565b610484565b604051908152602001610186565b6101c46104e5565b005b3480156101d1575f80fd5b506040517ff1a436d9000000000000000000000000000000000000000000000000000000008152602001610186565b34801561020b575f80fd5b506101ae61021a366004611206565b60016020525f908152604090205481565b348015610236575f80fd5b50604080518082018252601881527f4c696d697465645369676e657256616c696461746f7256320000000000000000602082015290516101869190611269565b348015610281575f80fd5b506101c46102903660046112c3565b610532565b3480156102a0575f80fd5b506101c46102af36600461136d565b61062e565b6101c46107c3565b3480156102c7575f80fd5b506101ae6102d63660046114f6565b6107fc565b61017a6102e9366004611572565b61089d565b6101c461095f565b348015610301575f80fd5b5061017a6103103660046115d7565b5f6020819052908152604090205460ff1681565b34801561032f575f80fd5b50610338610972565b60405161018697969594939291906115f2565b348015610356575f80fd5b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739275460405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610186565b3480156103a9575f80fd5b506101c46103b83660046115d7565b610a1a565b3480156103c8575f80fd5b506101ae60025481565b6101c46103e03660046115d7565b610a69565b6101c46103f33660046115d7565b610aa6565b348015610403575f80fd5b506101ae6104123660046115d7565b63389a75e1600c9081525f91909152602090205490565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167ff1a436d900000000000000000000000000000000000000000000000000000000148061047e575061047e82610acc565b92915050565b6040805160208101859052908101839052606082811b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016908201525f906074016040516020818303038152906040528051906020012090505b9392505050565b5f6202a30067ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b61053a610b21565b828114610573576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b838110156106275782828281811061058f5761058f6116b1565b90506020020160208101906105a491906116de565b5f808787858181106105b8576105b86116b1565b90506020020160208101906105cd91906115d7565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055600101610575565b5050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf601132805460038255801561067f5760018160011c14303b106106765763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f808061068f8587018761170d565b9250925092506106b7835f815181106106aa576106aa6116b1565b6020026020010151610b56565b60028190555f5b83518110156107415760015f808684815181106106dd576106dd6116b1565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169115159190911790556001016106be565b5050600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff929092169190911790555080156107be576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b8151602080840191909120604080517f8fb7610832fbad31db1c5a2a863d64e24447977c1c2eee76e29788abaf1cf3a593810193909352820187905260ff8616606083015273ffffffffffffffffffffffffffffffffffffffff808616608084015260a0830191909152821660c08201525f906108919060e00160405160208183030381529060405280519060200120610bb9565b90505b95945050505050565b5f806108aa878787610484565b5f81815260016020819052604082205492935090916108c8916117dd565b9050600254811115610923576040517f059b704500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871660048201526024015b60405180910390fd5b5f6109318989898989610be5565b905080610943575f9350505050610894565b505f918252600160208190526040909220559695505050505050565b610967610b21565b6109705f610d72565b565b7f0f000000000000000000000000000000000000000000000000000000000000006060805f808083610a08604080518082018252601881527f4c696d697465645369676e657256616c696461746f72563200000000000000006020808301919091528251808401909352600183527f31000000000000000000000000000000000000000000000000000000000000009083015291565b97989097965046955030945091925090565b610a22610b21565b600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b610a71610b21565b63389a75e1600c52805f526020600c208054421115610a9757636f5e88185f526004601cfd5b5f9055610aa381610d72565b50565b610aae610b21565b8060601b610ac357637448fbae5f526004601cfd5b610aa381610d72565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167ff1a436d900000000000000000000000000000000000000000000000000000000148061047e575061047e82610dd7565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314610970576382b429005f526004601cfd5b73ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927819055805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a350565b5f610bc2610e2c565b6719010000000000005f908152601a91909152603a928352604260182092525090565b6004545f9073ffffffffffffffffffffffffffffffffffffffff163314610c38576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f610c4583850185611815565b90505f815f0151806020019051810190610c5f91906118ce565b90505f610c7b89836040015189866020015187604001516107fc565b905087826040015160ff1611610ccf5760408083015190517f17c66bc700000000000000000000000000000000000000000000000000000000815260ff90911660048201526024810189905260440161091a565b815173ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205460ff16610d2e576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610d3a6003828a610ef9565b60208201518251610d659173ffffffffffffffffffffffffffffffffffffffff909116908390610f87565b9998505050505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927805473ffffffffffffffffffffffffffffffffffffffff9092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a355565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f81818aa300000000000000000000000000000000000000000000000000000000148061047e575061047e8261108a565b5f805f80610e9e604080518082018252601881527f4c696d697465645369676e657256616c696461746f72563200000000000000006020808301919091528251808401909352600183527f31000000000000000000000000000000000000000000000000000000000000009083015291565b8151602092830120815191830191909120604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8152938401929092529082015246606082015230608082015260a09020949350505050565b7f3f57fc5c000000000000000000000000000000000000000000000000000000007f4de1225a000000000000000000000000000000000000000000000000000000006007831115610f5057815f528260045260245ffd5b84602052835f5260405f206001841b81541880851c6001166001188015610f7d57835f528560045260245ffd5b5090555050505050565b5f73ffffffffffffffffffffffffffffffffffffffff8416156104de57604051843b61104257825160408114610fc55760418114610fff5750611082565b604084015160ff81901c601b016020527f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16606052611012565b60608401515f1a60205260408401516060525b50835f5260208301516040526020600160805f60015afa5180861860601b3d119250505f60605280604052611082565b631626ba7e60e01b808252846004830152602482016040815284516020018060448501828860045afa905060208260443d01868b5afa9151911691141691505b509392505050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f5912b89c00000000000000000000000000000000000000000000000000000000148061047e575061047e825f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6ab67a0d00000000000000000000000000000000000000000000000000000000148061047e57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461047e565b5f60208284031215611180575f80fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146104de575f80fd5b73ffffffffffffffffffffffffffffffffffffffff81168114610aa3575f80fd5b5f805f606084860312156111e2575f80fd5b833592506020840135915060408401356111fb816111af565b809150509250925092565b5f60208284031215611216575f80fd5b5035919050565b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081525f6104de602083018461121d565b5f8083601f84011261128b575f80fd5b50813567ffffffffffffffff8111156112a2575f80fd5b6020830191508360208260051b85010111156112bc575f80fd5b9250929050565b5f805f80604085870312156112d6575f80fd5b843567ffffffffffffffff8111156112ec575f80fd5b6112f88782880161127b565b909550935050602085013567ffffffffffffffff811115611317575f80fd5b6113238782880161127b565b95989497509550505050565b5f8083601f84011261133f575f80fd5b50813567ffffffffffffffff811115611356575f80fd5b6020830191508360208285010111156112bc575f80fd5b5f806020838503121561137e575f80fd5b823567ffffffffffffffff811115611394575f80fd5b6113a08582860161132f565b90969095509350505050565b60ff81168114610aa3575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040516060810167ffffffffffffffff8111828210171561140a5761140a6113ba565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611457576114576113ba565b604052919050565b5f67ffffffffffffffff821115611478576114786113ba565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f82601f8301126114b3575f80fd5b81356114c66114c18261145f565b611410565b8181528460208386010111156114da575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f805f60a0868803121561150a575f80fd5b85359450602086013561151c816113ac565b9350604086013561152c816111af565b9250606086013567ffffffffffffffff811115611547575f80fd5b611553888289016114a4565b9250506080860135611564816111af565b809150509295509295909350565b5f805f805f60808688031215611586575f80fd5b8535945060208601359350604086013561159f816111af565b9250606086013567ffffffffffffffff8111156115ba575f80fd5b6115c68882890161132f565b969995985093965092949392505050565b5f602082840312156115e7575f80fd5b81356104de816111af565b7fff000000000000000000000000000000000000000000000000000000000000008816815260e060208201525f61162c60e083018961121d565b828103604084015261163e818961121d565b6060840188905273ffffffffffffffffffffffffffffffffffffffff8716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b818110156116a0578351835260209384019390920191600101611682565b50909b9a5050505050505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f602082840312156116ee575f80fd5b813580151581146104de575f80fd5b8035611708816111af565b919050565b5f805f6060848603121561171f575f80fd5b833567ffffffffffffffff811115611735575f80fd5b8401601f81018613611745575f80fd5b803567ffffffffffffffff81111561175f5761175f6113ba565b8060051b61176f60208201611410565b9182526020818401810192908101908984111561178a575f80fd5b6020850194505b838510156117b857843592506117a6836111af565b82825260209485019490910190611791565b80975050505050506117cc602085016116fd565b929592945050506040919091013590565b8082018082111561047e577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f60208284031215611825575f80fd5b813567ffffffffffffffff81111561183b575f80fd5b82016060818503121561184c575f80fd5b6118546113e7565b813567ffffffffffffffff81111561186a575f80fd5b611876868285016114a4565b825250602082013567ffffffffffffffff811115611892575f80fd5b61189e868285016114a4565b602083015250604082013591506118b4826111af565b60408101919091529392505050565b8051611708816113ac565b5f602082840312156118de575f80fd5b815167ffffffffffffffff8111156118f4575f80fd5b820160608185031215611905575f80fd5b61190d6113e7565b8151611918816111af565b8152602082015167ffffffffffffffff811115611933575f80fd5b8201601f81018613611943575f80fd5b80516119516114c18261145f565b818152876020838501011115611965575f80fd5b8160208401602083015e5f6020838301015280602085015250505061198c604083016118c3565b604082015294935050505056fea2646970667358221220c58cb33920f4b88f418d656aad642d41d5150afcb4c7d65e8e3ce9c7b790967264736f6c634300081a0033", s = { BASE_URL: "/", DEV: !1, MODE: "production", PROD: !0, SSR: !1, VITE_BOOST_MAINNET_SIGNER_EOA: "0xCBD0C302040bC803B4B2EDaF21Be0e49Deff5480", VITE_BOOST_TESTNET_SIGNER_EOA: "0xd63167e9db11B108940b2E8236581F961f33f396" }, c = class c extends S {
7
+ constructor() {
8
+ super(...arguments), this.abi = o;
9
+ }
10
+ /**
11
+ * The set of authorized signers
12
+ *
13
+ * @public
14
+ * @async
15
+ * @param {Address} address
16
+ * @param {?ReadParams} [params]
17
+ * @returns {Promise<boolean>}
18
+ */
19
+ async signers(f, a) {
20
+ return await p(this._config, {
21
+ address: this.assertValidAddress(),
22
+ args: [f],
23
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
24
+ ...a
25
+ });
26
+ }
27
+ /**
28
+ * Retrieve the hash and signer data for a given hash
29
+ *
30
+ * @public
31
+ * @async
32
+ * @param {SignerValidatorSignaturePayload} payload
33
+ * @param {?ReadParams} [params]
34
+ * @returns {Promise<Hex>}
35
+ */
36
+ async hashSignerData(f, a) {
37
+ const b = f.referrer ?? f.claimant;
38
+ return await g(this._config, {
39
+ address: this.assertValidAddress(),
40
+ args: [
41
+ f.boostId,
42
+ f.incentiveQuantity,
43
+ f.claimant,
44
+ f.incentiveData,
45
+ b
46
+ ],
47
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
48
+ ...a
49
+ });
50
+ }
51
+ /**
52
+ * Validate that the action has been completed successfully. The data payload is expected to be a tuple of (address signer, bytes32 hash, bytes signature). The signature is expected to be a valid ECDSA or EIP-1271 signature of a unique hash by an authorized signer.
53
+ *
54
+ * @public
55
+ * @async
56
+ * @param {LimitedSignerValidatorV2ValidatePayload} payload
57
+ * @param {?WriteParams} [params]
58
+ * @returns {Promise<boolean>} - True if the action has been validated based on the data payload
59
+ */
60
+ async validate(f, a) {
61
+ return await this.awaitResult(this.validateRaw(f, a));
62
+ }
63
+ /**
64
+ * Validate that the action has been completed successfully. The data payload is expected to be a tuple of (address signer, bytes32 hash, bytes signature). The signature is expected to be a valid ECDSA or EIP-1271 signature of a unique hash by an authorized signer.
65
+ *
66
+ * @public
67
+ * @async
68
+ * @param {LimitedSignerValidatorV2ValidatePayload} payload
69
+ * @param {?WriteParams} [params]
70
+ * @returns {Promise<boolean>} - True if the action has been validated based on the data payload
71
+ */
72
+ async validateRaw(f, a) {
73
+ const { request: b, result: e } = await A(
74
+ this._config,
75
+ {
76
+ address: this.assertValidAddress(),
77
+ args: [
78
+ f.boostId,
79
+ f.incentiveId,
80
+ f.claimant,
81
+ f.claimData
82
+ ],
83
+ ...this.optionallyAttachAccount(),
84
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
85
+ ...a
86
+ }
87
+ );
88
+ return { hash: await D(
89
+ this._config,
90
+ b
91
+ ), result: e };
92
+ }
93
+ /**
94
+ * Set the authorized status of a signer
95
+ *
96
+ * @public
97
+ * @async
98
+ * @param {Address[]} addresses - The list of signers to update
99
+ * @param {boolean[]} allowed - The authorized status of each signer
100
+ * @param {?WriteParams} [params]
101
+ * @returns {Promise<void>}
102
+ */
103
+ async setAuthorized(f, a, b) {
104
+ return await this.awaitResult(
105
+ this.setAuthorizedRaw(f, a, b)
106
+ );
107
+ }
108
+ /**
109
+ * Set the authorized status of a signer
110
+ *
111
+ * @public
112
+ * @async
113
+ * @param {Address[]} addresses - The list of signers to update
114
+ * @param {boolean[]} allowed - The authorized status of each signer
115
+ * @param {?WriteParams} [params]
116
+ * @returns {Promise<{ hash: `0x${string}`; result: void; }>}
117
+ */
118
+ async setAuthorizedRaw(f, a, b) {
119
+ const { request: e, result: t } = await V(this._config, {
120
+ address: this.assertValidAddress(),
121
+ args: [f, a],
122
+ ...this.optionallyAttachAccount(),
123
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
124
+ ...b
125
+ });
126
+ return { hash: await w(
127
+ this._config,
128
+ e
129
+ ), result: t };
130
+ }
131
+ /**
132
+ * Update the authorized caller of the validator function
133
+ *
134
+ * @public
135
+ * @async
136
+ * @param {Address} address
137
+ * @param {?WriteParams} [params]
138
+ * @returns {Promise<{ hash: `0x${string}`; result: void; }>}
139
+ */
140
+ async setValidatorCallerRaw(f, a) {
141
+ const { request: b, result: e } = await R(this._config, {
142
+ address: this.assertValidAddress(),
143
+ args: [f],
144
+ ...this.optionallyAttachAccount(),
145
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
146
+ ...a
147
+ });
148
+ return { hash: await E(
149
+ this._config,
150
+ b
151
+ ), result: e };
152
+ }
153
+ /**
154
+ * Update the authorized caller of the validator function
155
+ *
156
+ * @public
157
+ * @async
158
+ * @param {Address} address
159
+ * @param {?WriteParams} [params]
160
+ * @returns {Promise<void>}
161
+ */
162
+ async setValidatorCaller(f, a) {
163
+ return await this.awaitResult(this.setValidatorCallerRaw(f, a));
164
+ }
165
+ /**
166
+ * Properly encodes the data needed to claim
167
+ *
168
+ * @public
169
+ * @async
170
+ * @param {LimitedSignerValidatorV2ClaimDataParams} params
171
+ * @returns {Promise<Hex>}
172
+ */
173
+ async encodeClaimData(f) {
174
+ return await v({
175
+ ...f,
176
+ validator: this.assertValidAddress()
177
+ });
178
+ }
179
+ /**
180
+ * @inheritdoc
181
+ *
182
+ * @public
183
+ * @param {?LimitedSignerValidatorV2Payload} [_payload]
184
+ * @param {?DeployableOptions} [_options]
185
+ * @returns {GenericDeployableParams}
186
+ */
187
+ buildParameters(f, a) {
188
+ const [b, e] = this.validateDeploymentConfig(
189
+ f,
190
+ a
191
+ );
192
+ return {
193
+ abi: o,
194
+ bytecode: C,
195
+ args: [B(b)],
196
+ ...this.optionallyAttachAccount(e.account)
197
+ };
198
+ }
199
+ };
200
+ c.bases = {
201
+ ...s != null && s.VITE_LIMITED_SIGNER_VALIDATOR_BASE ? { 31337: void 0 } : {},
202
+ ...I
203
+ }, c.registryType = T.VALIDATOR;
204
+ let l = c;
205
+ async function v({
206
+ signer: d,
207
+ incentiveData: f,
208
+ chainId: a,
209
+ validator: b,
210
+ incentiveQuantity: e,
211
+ claimant: t,
212
+ boostId: i,
213
+ referrer: u
214
+ }) {
215
+ const n = u ?? t, m = {
216
+ domain: {
217
+ name: "LimitedSignerValidatorV2",
218
+ version: "1",
219
+ chainId: a,
220
+ verifyingContract: b
221
+ },
222
+ types: {
223
+ SignerValidatorData: [
224
+ { name: "boostId", type: "uint256" },
225
+ { name: "incentiveQuantity", type: "uint8" },
226
+ { name: "claimant", type: "address" },
227
+ { name: "incentiveData", type: "bytes" },
228
+ { name: "referrer", type: "address" }
229
+ ]
230
+ },
231
+ primaryType: "SignerValidatorData",
232
+ message: {
233
+ boostId: i,
234
+ incentiveQuantity: e,
235
+ claimant: t,
236
+ incentiveData: f,
237
+ referrer: n
238
+ }
239
+ }, h = await d.privateKey.signTypedData(m), y = _({
240
+ signer: d.account,
241
+ signature: h,
242
+ incentiveQuantity: e
243
+ // Adjust incentive quantity as necessary
244
+ });
245
+ return r(
246
+ [
247
+ {
248
+ type: "tuple",
249
+ name: "BoostClaimDataWithReferrer",
250
+ components: [
251
+ { type: "bytes", name: "validatorData" },
252
+ { type: "bytes", name: "incentiveData" },
253
+ { type: "address", name: "referrer" }
254
+ ]
255
+ }
256
+ ],
257
+ [{ validatorData: y, incentiveData: f, referrer: n }]
258
+ );
259
+ }
260
+ function _({
261
+ signer: d,
262
+ signature: f,
263
+ incentiveQuantity: a
264
+ }) {
265
+ return r(
266
+ [
267
+ {
268
+ type: "tuple",
269
+ name: "SignerValidatorInputParams",
270
+ components: [
271
+ { type: "address", name: "signer" },
272
+ { type: "bytes", name: "signature" },
273
+ { type: "uint8", name: "incentiveQuantity" }
274
+ ]
275
+ }
276
+ ],
277
+ [{ signer: d, signature: f, incentiveQuantity: a }]
278
+ );
279
+ }
280
+ function B({
281
+ signers: d,
282
+ validatorCaller: f,
283
+ maxClaimCount: a
284
+ }) {
285
+ return r(
286
+ [
287
+ { type: "address[]", name: "signers" },
288
+ { type: "address", name: "validatorCaller" },
289
+ { type: "uint256", name: "maxClaimCount" }
290
+ ],
291
+ [d, f, BigInt(a)]
292
+ );
293
+ }
294
+ export {
295
+ l as LimitedSignerValidatorV2,
296
+ o as limitedSignerValidatorV2Abi,
297
+ v as prepareLimitedSignerValidatorV2ClaimDataPayload,
298
+ _ as prepareLimitedSignerValidatorV2InputParams,
299
+ B as prepareLimitedSignerValidatorV2Payload
300
+ };
301
+ //# sourceMappingURL=LimitedSignerValidatorV2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LimitedSignerValidatorV2.js","sources":["../../src/Validators/LimitedSignerValidatorV2.ts"],"sourcesContent":["import {\n limitedSignerValidatorV2Abi,\n readLimitedSignerValidatorV2HashSignerData,\n readLimitedSignerValidatorV2Signers,\n simulateLimitedSignerValidatorV2SetAuthorized,\n simulateLimitedSignerValidatorV2SetValidatorCaller,\n simulateLimitedSignerValidatorV2Validate,\n writeLimitedSignerValidatorV2SetAuthorized,\n writeLimitedSignerValidatorV2SetValidatorCaller,\n writeLimitedSignerValidatorV2Validate,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/validators/LimitedSignerValidatorV2.sol/LimitedSignerValidatorV2.json';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n type PrivateKeyAccount,\n encodeAbiParameters,\n} from 'viem';\nimport { LimitedSignerValidatorV2 as SignerValidatorBases } from '../../dist/deployments.json';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport { DeployableTarget } from '../Deployable/DeployableTarget';\nimport {\n type GenericLog,\n type ReadParams,\n RegistryType,\n type WriteParams,\n} from '../utils';\n\nexport { limitedSignerValidatorV2Abi };\n\n/**\n * Object reprentation of a {@link LimitedSignerValidatorV2} initialization payload\n *\n * @export\n * @interface LimitedSignerValidatorV2Payload\n * @typedef {LimitedSignerValidatorV2Payload}\n */\nexport interface LimitedSignerValidatorV2Payload {\n /**\n * The list of authorized signers. The first address in the list will be the initial owner of the contract.\n *\n * @type {Address[]}\n */\n signers: Address[];\n /**\n * The authorized caller of the {@link prepareSignerValidator} function\n * @type {Address}\n */\n validatorCaller: Address;\n /**\n * The max quantity of claims a user can make for a given incentive,\n * regardless of how many valid transactions they have\n * @type {number}\n */\n maxClaimCount: number;\n}\n\n/**\n * Description placeholder\n *\n * @export\n * @interface LimitedSignerValidatorV2ValidatePayload\n * @typedef {LimitedSignerValidatorV2ValidatePayload}\n */\nexport interface LimitedSignerValidatorV2ValidatePayload {\n /**\n * The ID of the boost.\n *\n * @type {bigint}\n */\n boostId: bigint;\n /**\n * The ID of the incentive.\n *\n * @type {bigint}\n */\n incentiveId: bigint;\n /**\n * The address of the claimant.\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The claim data.\n *\n * @type {Hex}\n */\n claimData: Hex;\n}\n\n/**\n * Object reprentation of a {@link LimitedSignerValidatorV2} initialization payload\n *\n * @export\n * @interface LimitedSignerValidatorV2Payload\n * @typedef {LimitedSignerValidatorV2Payload}\n */\nexport interface LimitedSignerValidatorV2Payload {\n /**\n * The list of authorized signers. The first address in the list will be the initial owner of the contract.\n *\n * @type {Address[]}\n */\n signers: Address[];\n /**\n * The authorized caller of the {@link prepareSignerValidator} function\n * @type {Address}\n */\n validatorCaller: Address;\n}\n\n/**\n * Description placeholder\n *\n * @export\n * @interface LimitedSignerValidatorV2ValidatePayload\n * @typedef {LimitedSignerValidatorV2ValidatePayload}\n */\nexport interface LimitedSignerValidatorV2ValidatePayload {\n /**\n * The ID of the boost.\n *\n * @type {bigint}\n */\n boostId: bigint;\n /**\n * The ID of the incentive.\n *\n * @type {bigint}\n */\n incentiveId: bigint;\n /**\n * The address of the claimant.\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The claim data.\n *\n * @type {Hex}\n */\n claimData: Hex;\n}\n\n/**\n * Signer Validator Claim Data Payload\n *\n * @export\n * @interface LimitedSignerValidatorV2ClaimDataParams\n * @typedef {LimitedSignerValidatorV2ClaimDataParams}\n */\nexport interface LimitedSignerValidatorV2ClaimDataParams {\n /**\n * The signer with which to sign the input\n *\n * @type {{\n * account: Address;\n * key: Hex;\n * privateKey: PrivateKeyAccount;\n * }}\n */\n signer: {\n account: Address;\n key: Hex;\n privateKey: PrivateKeyAccount;\n };\n /**\n * The encoded data to provide the underlying incentive. You can use {@link prepareAllowListIncentivePayload}, {@link prepareCGDAIncentivePayload}, {@link prepareERC20IncentivePayload}, {@link prepareERC1155IncentivePayload}, or {@link preparePointsIncentivePayload}\n *\n * @type {Hex}\n */\n incentiveData: Hex;\n /**\n * The chain id to target\n *\n * @type {number}\n */\n chainId: number;\n /**\n * The address of the validator\n *\n * @type {Address}\n */\n validator: Address;\n /**\n * The incentive quantity.\n *\n * @type {number}\n */\n incentiveQuantity: number;\n /**\n * The address of the claimant\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The ID of the boost\n *\n * @type {bigint}\n */\n boostId: bigint;\n /**\n * The address of the referrer\n *\n * @type {?Address}\n */\n referrer?: Address;\n}\n\n/**\n * Object representation of a {@link LimitedSignerValidatorV2InputParams} initialization payload\n *\n * @export\n * @interface LimitedSignerValidatorV2InputParams\n * @typedef {LimitedSignerValidatorV2InputParams}\n */\nexport interface LimitedSignerValidatorV2InputParams {\n /**\n * The signer address.\n *\n * @type {Address}\n */\n signer: Address;\n\n /**\n * The signature data.\n *\n * @type {Hex}\n */\n signature: Hex;\n\n /**\n * The incentive quantity.\n *\n * @type {number}\n */\n incentiveQuantity: number;\n}\n\n/**\n * Object representing the payload for signing before validaton.\n *\n * @export\n * @interface LimitedSignerValidatorV2SignaturePayload\n * @typedef {LimitedSignerValidatorV2SignaturePayload}\n */\nexport interface LimitedSignerValidatorV2SignaturePayload {\n /**\n * The ID of the boost.\n *\n * @type {bigint}\n */\n boostId: bigint;\n /**\n * The ID of the incentive.\n *\n * @type {number}\n */\n incentiveQuantity: number;\n /**\n * The address of the claimant.\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The claim data.\n *\n * @type {Hex}\n */\n incentiveData: Hex;\n /**\n * The address of the referrer (defaults to claimant if omitted)\n *\n * @type {?Address}\n */\n referrer?: Address;\n}\n\n/**\n * A generic `viem.Log` event with support for `BoostCore` event types.\n *\n * @export\n * @typedef {LimitedSignerValidatorV2Log}\n * @template {ContractEventName<\n * typeof limitedSignerValidatorV2Abi\n * >} [event=ContractEventName<typeof limitedSignerValidatorV2Abi>]\n */\nexport type LimitedSignerValidatorV2Log<\n event extends ContractEventName<\n typeof limitedSignerValidatorV2Abi\n > = ContractEventName<typeof limitedSignerValidatorV2Abi>,\n> = GenericLog<typeof limitedSignerValidatorV2Abi, event>;\n\n/**\n * A simple implementation of a Validator that verifies a given signature and checks the recovered address against a set of authorized signers\n *\n * @export\n * @class LimitedSignerValidatorV2\n * @typedef {LimitedSignerValidatorV2}\n * @extends {DeployableTarget<LimitedSignerValidatorV2Payload>}\n */\nexport class LimitedSignerValidatorV2 extends DeployableTarget<\n LimitedSignerValidatorV2Payload,\n typeof limitedSignerValidatorV2Abi\n> {\n /**\n * @inheritdoc\n *\n * @public\n * @readonly\n * @type {*}\n */\n public override readonly abi = limitedSignerValidatorV2Abi;\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_LIMITED_SIGNER_VALIDATOR_BASE\n ? { 31337: import.meta.env.VITE_LIMITED_SIGNER_VALIDATOR_BASE }\n : {}),\n ...(SignerValidatorBases as Record<number, Address>),\n };\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.VALIDATOR;\n\n /**\n * The set of authorized signers\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>}\n */\n public async signers(address: Address, params?: ReadParams) {\n return await readLimitedSignerValidatorV2Signers(this._config, {\n address: this.assertValidAddress(),\n args: [address],\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 * Retrieve the hash and signer data for a given hash\n *\n * @public\n * @async\n * @param {SignerValidatorSignaturePayload} payload\n * @param {?ReadParams} [params]\n * @returns {Promise<Hex>}\n */\n public async hashSignerData(\n payload: LimitedSignerValidatorV2SignaturePayload,\n params?: ReadParams,\n ) {\n const referrer = payload.referrer ?? payload.claimant;\n return await readLimitedSignerValidatorV2HashSignerData(this._config, {\n address: this.assertValidAddress(),\n args: [\n payload.boostId,\n payload.incentiveQuantity,\n payload.claimant,\n payload.incentiveData,\n referrer,\n ],\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 * Validate that the action has been completed successfully. The data payload is expected to be a tuple of (address signer, bytes32 hash, bytes signature). The signature is expected to be a valid ECDSA or EIP-1271 signature of a unique hash by an authorized signer.\n *\n * @public\n * @async\n * @param {LimitedSignerValidatorV2ValidatePayload} payload\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if the action has been validated based on the data payload\n */\n public async validate(\n payload: LimitedSignerValidatorV2ValidatePayload,\n params?: WriteParams,\n ) {\n return await this.awaitResult(this.validateRaw(payload, params));\n }\n\n /**\n * Validate that the action has been completed successfully. The data payload is expected to be a tuple of (address signer, bytes32 hash, bytes signature). The signature is expected to be a valid ECDSA or EIP-1271 signature of a unique hash by an authorized signer.\n *\n * @public\n * @async\n * @param {LimitedSignerValidatorV2ValidatePayload} payload\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if the action has been validated based on the data payload\n */\n public async validateRaw(\n payload: LimitedSignerValidatorV2ValidatePayload,\n params?: WriteParams,\n ) {\n const { request, result } = await simulateLimitedSignerValidatorV2Validate(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [\n payload.boostId,\n payload.incentiveId,\n payload.claimant,\n payload.claimData,\n ],\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 writeLimitedSignerValidatorV2Validate(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Set the authorized status of a signer\n *\n * @public\n * @async\n * @param {Address[]} addresses - The list of signers to update\n * @param {boolean[]} allowed - The authorized status of each signer\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setAuthorized(\n addresses: Address[],\n allowed: boolean[],\n params?: WriteParams,\n ) {\n return await this.awaitResult(\n this.setAuthorizedRaw(addresses, allowed, params),\n );\n }\n\n /**\n * Set the authorized status of a signer\n *\n * @public\n * @async\n * @param {Address[]} addresses - The list of signers to update\n * @param {boolean[]} allowed - The authorized status of each signer\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setAuthorizedRaw(\n addresses: Address[],\n allowed: boolean[],\n params?: WriteParams,\n ) {\n const { request, result } =\n await simulateLimitedSignerValidatorV2SetAuthorized(this._config, {\n address: this.assertValidAddress(),\n args: [addresses, allowed],\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 const hash = await writeLimitedSignerValidatorV2SetAuthorized(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Update the authorized caller of the validator function\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setValidatorCallerRaw(address: Address, params?: WriteParams) {\n const { request, result } =\n await simulateLimitedSignerValidatorV2SetValidatorCaller(this._config, {\n address: this.assertValidAddress(),\n args: [address],\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 const hash = await writeLimitedSignerValidatorV2SetValidatorCaller(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Update the authorized caller of the validator function\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setValidatorCaller(address: Address, params?: WriteParams) {\n return await this.awaitResult(this.setValidatorCallerRaw(address, params));\n }\n\n /**\n * Properly encodes the data needed to claim\n *\n * @public\n * @async\n * @param {LimitedSignerValidatorV2ClaimDataParams} params\n * @returns {Promise<Hex>}\n */\n public async encodeClaimData(\n params: Omit<LimitedSignerValidatorV2ClaimDataParams, 'validator'>,\n ): Promise<Hex> {\n return await prepareLimitedSignerValidatorV2ClaimDataPayload({\n ...params,\n validator: this.assertValidAddress(),\n });\n }\n\n /**\n * @inheritdoc\n *\n * @public\n * @param {?LimitedSignerValidatorV2Payload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: LimitedSignerValidatorV2Payload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n return {\n abi: limitedSignerValidatorV2Abi,\n bytecode: bytecode as Hex,\n args: [prepareLimitedSignerValidatorV2Payload(payload)],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n\n/**\n * Signer Validator Claim Data Payload Preparation\n *\n * @export\n * @async\n * @param {LimitedSignerValidatorV2ClaimDataParams} param0\n * @param {{ account: Address; key: Hex; privateKey: PrivateKeyAccount; }} param0.signer\n * @param {Hex} param0.incentiveData\n * @param {number} param0.chainId\n * @param {Address} param0.validator\n * @param {number} param0.incentiveQuantity\n * @param {Address} param0.claimant\n * @param {bigint} param0.boostId\n * @returns {Promise<Hex>}\n */\nexport async function prepareLimitedSignerValidatorV2ClaimDataPayload({\n signer,\n incentiveData,\n chainId,\n validator,\n incentiveQuantity,\n claimant,\n boostId,\n referrer,\n}: LimitedSignerValidatorV2ClaimDataParams): Promise<Hex> {\n const _referrer = referrer ?? claimant;\n const domain = {\n name: 'LimitedSignerValidatorV2',\n version: '1',\n chainId: chainId,\n verifyingContract: validator,\n };\n const typedData = {\n domain,\n types: {\n SignerValidatorData: [\n { name: 'boostId', type: 'uint256' },\n { name: 'incentiveQuantity', type: 'uint8' },\n { name: 'claimant', type: 'address' },\n { name: 'incentiveData', type: 'bytes' },\n { name: 'referrer', type: 'address' },\n ],\n },\n primaryType: 'SignerValidatorData' as const,\n message: {\n boostId,\n incentiveQuantity,\n claimant,\n incentiveData: incentiveData,\n referrer: _referrer,\n },\n };\n\n const trustedSignature = await signer.privateKey.signTypedData(typedData);\n\n // Prepare the claim data payload using the new helper\n const validatorData = prepareLimitedSignerValidatorV2InputParams({\n signer: signer.account,\n signature: trustedSignature,\n incentiveQuantity, // Adjust incentive quantity as necessary\n });\n\n const boostClaimDataPayload = encodeAbiParameters(\n [\n {\n type: 'tuple',\n name: 'BoostClaimDataWithReferrer',\n components: [\n { type: 'bytes', name: 'validatorData' },\n { type: 'bytes', name: 'incentiveData' },\n { type: 'address', name: 'referrer' },\n ],\n },\n ],\n [{ validatorData, incentiveData, referrer: _referrer }],\n );\n\n return boostClaimDataPayload;\n}\n\n/**\n * Given a {@link SignerValidatorInputParams}, properly encode the initialization payload.\n *\n * @param {SignerValidatorInputParams} param0\n * @param {Address} param0.signer\n * @param {Hex} param0.signature\n * @param {number} param0.incentiveQuantity\n * @returns {Hex}\n */\nexport function prepareLimitedSignerValidatorV2InputParams({\n signer,\n signature,\n incentiveQuantity,\n}: LimitedSignerValidatorV2InputParams) {\n return encodeAbiParameters(\n [\n {\n type: 'tuple',\n name: 'SignerValidatorInputParams',\n components: [\n { type: 'address', name: 'signer' },\n { type: 'bytes', name: 'signature' },\n { type: 'uint8', name: 'incentiveQuantity' },\n ],\n },\n ],\n [{ signer, signature, incentiveQuantity }],\n );\n}\n\n/**\n * Given a {@link LimitedSignerValidatorV2Payload}, properly encode the initialization payload.\n *\n * @param {LimitedSignerValidatorV2Payload} param0\n SignerValidator: class TSignerValidator extends SignerValidator {\n public static override bases: Record<number, Address> = {\n [chainId]: signerValidatorBase,\n };\n },\n * @param {Address[]} param0.signers\n * @param {Address} param0.validatorCaller\n * @returns {Hex}\n */\nexport function prepareLimitedSignerValidatorV2Payload({\n signers,\n validatorCaller,\n maxClaimCount,\n}: LimitedSignerValidatorV2Payload) {\n return encodeAbiParameters(\n [\n { type: 'address[]', name: 'signers' },\n { type: 'address', name: 'validatorCaller' },\n { type: 'uint256', name: 'maxClaimCount' },\n ],\n [signers, validatorCaller, BigInt(maxClaimCount)],\n );\n}\n"],"names":["_LimitedSignerValidatorV2","DeployableTarget","limitedSignerValidatorV2Abi","address","params","readLimitedSignerValidatorV2Signers","payload","referrer","readLimitedSignerValidatorV2HashSignerData","request","result","simulateLimitedSignerValidatorV2Validate","writeLimitedSignerValidatorV2Validate","addresses","allowed","simulateLimitedSignerValidatorV2SetAuthorized","writeLimitedSignerValidatorV2SetAuthorized","simulateLimitedSignerValidatorV2SetValidatorCaller","writeLimitedSignerValidatorV2SetValidatorCaller","prepareLimitedSignerValidatorV2ClaimDataPayload","_payload","_options","options","bytecode","prepareLimitedSignerValidatorV2Payload","__vite_import_meta_env__","SignerValidatorBases","RegistryType","LimitedSignerValidatorV2","signer","incentiveData","chainId","validator","incentiveQuantity","claimant","boostId","_referrer","typedData","trustedSignature","validatorData","prepareLimitedSignerValidatorV2InputParams","encodeAbiParameters","signature","signers","validatorCaller","maxClaimCount"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("../generated-CkZm1EVH.cjs"),l=require("viem"),A=require("../deployments-uLDgrxCp.cjs"),w=require("../Deployable/DeployableTarget.cjs"),D=require("../utils.cjs"),V="0x610120604052348015610010575f80fd5b50604051611fe4380380611fe483398101604081905261002f91610131565b306080524660a0525f60c081905260e08190526101005261004e610091565b6001600160a01b038216610074576040516282b42960e81b815260040160405180910390fd5b61007d826100f6565b600381905561008a610091565b5050610168565b63409feecd19805460018116156100af5763f92ee8a95f526004601cfd5b6001600160401b03808260011c146100f1578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b6001600160a01b0316638b78c6d819819055805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a350565b5f8060408385031215610142575f80fd5b82516001600160a01b0381168114610158575f80fd5b6020939093015192949293505050565b60805160a05160c05160e05161010051611e4e6101965f395f50505f50505f50505f50505f5050611e4e5ff3fe60806040526004361061016d575f3560e01c8063715018a6116100c6578063a1d2756f1161007c578063f04e283e11610057578063f04e283e146103e5578063f2fde38b146103f8578063fee81cf41461040b575f80fd5b8063a1d2756f14610392578063ce5c134f146103b1578063d3de6e75146103c6575f80fd5b806384b0196e116100ac57806384b0196e146103035780638da5cb5b1461032a57806399d32fc41461037d575f80fd5b8063715018a6146102cd578063736c0d5b146102d5575f80fd5b80632f9e058b116101265780634f361c9a116101015780634f361c9a1461029e57806354d1f13d146102b2578063703b6900146102ba575f80fd5b80632f9e058b146102355780634359d28a14610260578063439fab911461027f575f80fd5b8063256929621161015657806325692962146101d257806328d6183b146101dc5780632e75ab5014610216575f80fd5b806301ffc9a7146101715780630668e9d4146101a5575b5f80fd5b34801561017c575f80fd5b5061019061018b3660046115cc565b61043c565b60405190151581526020015b60405180910390f35b3480156101b0575f80fd5b506101c46101bf36600461162c565b610497565b60405190815260200161019c565b6101da6104f8565b005b3480156101e7575f80fd5b506040517fb0fafe5800000000000000000000000000000000000000000000000000000000815260200161019c565b348015610221575f80fd5b506101da610230366004611662565b610545565b348015610240575f80fd5b506101c461024f366004611662565b60016020525f908152604090205481565b34801561026b575f80fd5b506101da61027a3660046116c1565b6105d8565b34801561028a575f80fd5b506101da61029936600461176b565b6106d4565b3480156102a9575f80fd5b506101c46108ae565b6101da6108bc565b6101906102c83660046117aa565b6108f5565b6101da610b03565b3480156102e0575f80fd5b506101906102ef36600461180f565b5f6020819052908152604090205460ff1681565b34801561030e575f80fd5b50610317610b16565b60405161019c9796959493929190611876565b348015610335575f80fd5b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739275460405173ffffffffffffffffffffffffffffffffffffffff909116815260200161019c565b348015610388575f80fd5b506101c460035481565b34801561039d575f80fd5b506101da6103ac36600461180f565b610bbe565b3480156103bc575f80fd5b506101c460025481565b3480156103d1575f80fd5b506101c46103e0366004611a7f565b610c0d565b6101da6103f336600461180f565b610ca0565b6101da61040636600461180f565b610cdd565b348015610416575f80fd5b506101c461042536600461180f565b63389a75e1600c9081525f91909152602090205490565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fb0fafe58000000000000000000000000000000000000000000000000000000001480610491575061049182610d03565b92915050565b6040805160208101859052908101839052606082811b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016908201525f906074016040516020818303038152906040528051906020012090505b9392505050565b5f6202a30067ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b61054d610d58565b60065473ffffffffffffffffffffffffffffffffffffffff161561059d576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60038190556040518181527f64374f1a975abb9bc8e8857d704b9ead41989ff599d90c1e8f7d34bc2ebea92a9060200160405180910390a150565b6105e0610d58565b828114610619576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b838110156106cd5782828281811061063557610635611ae7565b905060200201602081019061064a9190611b14565b5f8087878581811061065e5761065e611ae7565b9050602002016020810190610673919061180f565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905560010161061b565b5050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf60113280546003825580156107255760018160011c14303b1061071c5763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f80808061073686880188611b43565b9350935093509350610760845f8151811061075357610753611ae7565b6020026020010151610d8d565b6002829055600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555f5b845181101561082a5760015f808784815181106107c6576107c6611ae7565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169115159190911790556001016107a7565b5050600580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9390931692909217909155505080156108a9576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f6108b7610df0565b905090565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f806108ff610df0565b905080341461093a576040517faf2eb37300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6109488888888888610ea5565b90505f821180156109565750805b15610af857600554604080517f39a51be500000000000000000000000000000000000000000000000000000000815290515f9273ffffffffffffffffffffffffffffffffffffffff16916339a51be59160048083019260209291908290030181865afa1580156109c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109ec9190611c23565b90505f8173ffffffffffffffffffffffffffffffffffffffff16846040515f6040518083038185875af1925050503d805f8114610a44576040519150601f19603f3d011682016040523d82523d5f602084013e610a49565b606091505b5050905080610a84576040517f4033e4e300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b888a8973ffffffffffffffffffffffffffffffffffffffff167fb671e5a07ab020a275a7ca33dc2074f9761157b5f6e779751e8fd89909dafc6e8786604051610aed92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405180910390a450505b979650505050505050565b610b0b610d58565b610b145f610f1b565b565b7f0f000000000000000000000000000000000000000000000000000000000000006060805f808083610bac604080518082018252601d81527f50617961626c654c696d697465645369676e657256616c696461746f720000006020808301919091528251808401909352600183527f31000000000000000000000000000000000000000000000000000000000000009083015291565b97989097965046955030945091925090565b610bc6610d58565b600580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b8051602080830191909120604080517ffea51d5bd45bcd3c2ecc3679b43a3b80b0bd0923f8c16f822455b8cdecd9852f93810193909352820186905260ff8516606083015273ffffffffffffffffffffffffffffffffffffffff8416608083015260a08201525f90610c979060c00160405160208183030381529060405280519060200120610f80565b95945050505050565b610ca8610d58565b63389a75e1600c52805f526020600c208054421115610cce57636f5e88185f526004601cfd5b5f9055610cda81610f1b565b50565b610ce5610d58565b8060601b610cfa57637448fbae5f526004601cfd5b610cda81610f1b565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fc8ebc758000000000000000000000000000000000000000000000000000000001480610491575061049182610fac565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314610b14576382b429005f526004601cfd5b73ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927819055805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a350565b6006545f9073ffffffffffffffffffffffffffffffffffffffff1615610e9e5760065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166399d32fc46040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e7a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b79190611c3e565b5060035490565b5f610eb1868686611001565b610f04576040517f059b704500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff851660048201526024015b60405180910390fd5b610f11868686868661105b565b9695505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927805473ffffffffffffffffffffffffffffffffffffffff9092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a355565b5f610f896111e3565b6719010000000000005f908152601a91909152603a928352604260182092525090565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fb0fafe580000000000000000000000000000000000000000000000000000000014806104915750610491826112b0565b5f8061100e858585610497565b5f818152600160208190526040822054929350909161102c91611c55565b9050600254811115611042575f925050506104f1565b5f91825260016020819052604090922055949350505050565b6005545f9073ffffffffffffffffffffffffffffffffffffffff1633146110ae576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6110bb83850185611c8d565b90505f815f01518060200190518101906110d59190611d4d565b90505f6110ec898360400151898660200151610c0d565b905087826040015160ff16116111405760408083015190517f17c66bc700000000000000000000000000000000000000000000000000000000815260ff909116600482015260248101899052604401610efb565b815173ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205460ff1661119f576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6111ab6004828a611305565b602082015182516111d69173ffffffffffffffffffffffffffffffffffffffff909116908390611393565b9998505050505050505050565b5f805f80611255604080518082018252601d81527f50617961626c654c696d697465645369676e657256616c696461746f720000006020808301919091528251808401909352600183527f31000000000000000000000000000000000000000000000000000000000000009083015291565b8151602092830120815191830191909120604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8152938401929092529082015246606082015230608082015260a09020949350505050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fc8ebc758000000000000000000000000000000000000000000000000000000001480610491575061049182611496565b7f3f57fc5c000000000000000000000000000000000000000000000000000000007f4de1225a00000000000000000000000000000000000000000000000000000000600783111561135c57815f528260045260245ffd5b84602052835f5260405f206001841b81541880851c600116600118801561138957835f528560045260245ffd5b5090555050505050565b5f73ffffffffffffffffffffffffffffffffffffffff8416156104f157604051843b61144e578251604081146113d1576041811461140b575061148e565b604084015160ff81901c601b016020527f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1660605261141e565b60608401515f1a60205260408401516060525b50835f5260208301516040526020600160805f60015afa5180861860601b3d119250505f6060528060405261148e565b631626ba7e60e01b808252846004830152602482016040815284516020018060448501828860045afa905060208260443d01868b5afa9151911691141691505b509392505050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fb8ce7b220000000000000000000000000000000000000000000000000000000014806104915750610491825f7fffffffff0000000000000000000000000000000000000000000000000000000082167f5912b89c0000000000000000000000000000000000000000000000000000000014806104915750610491825f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6ab67a0d00000000000000000000000000000000000000000000000000000000148061049157507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610491565b5f602082840312156115dc575f80fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146104f1575f80fd5b73ffffffffffffffffffffffffffffffffffffffff81168114610cda575f80fd5b5f805f6060848603121561163e575f80fd5b833592506020840135915060408401356116578161160b565b809150509250925092565b5f60208284031215611672575f80fd5b5035919050565b5f8083601f840112611689575f80fd5b50813567ffffffffffffffff8111156116a0575f80fd5b6020830191508360208260051b85010111156116ba575f80fd5b9250929050565b5f805f80604085870312156116d4575f80fd5b843567ffffffffffffffff8111156116ea575f80fd5b6116f687828801611679565b909550935050602085013567ffffffffffffffff811115611715575f80fd5b61172187828801611679565b95989497509550505050565b5f8083601f84011261173d575f80fd5b50813567ffffffffffffffff811115611754575f80fd5b6020830191508360208285010111156116ba575f80fd5b5f806020838503121561177c575f80fd5b823567ffffffffffffffff811115611792575f80fd5b61179e8582860161172d565b90969095509350505050565b5f805f805f608086880312156117be575f80fd5b853594506020860135935060408601356117d78161160b565b9250606086013567ffffffffffffffff8111156117f2575f80fd5b6117fe8882890161172d565b969995985093965092949392505050565b5f6020828403121561181f575f80fd5b81356104f18161160b565b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b7fff000000000000000000000000000000000000000000000000000000000000008816815260e060208201525f6118b060e083018961182a565b82810360408401526118c2818961182a565b6060840188905273ffffffffffffffffffffffffffffffffffffffff8716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b81811015611924578351835260209384019390920191600101611906565b50909b9a5050505050505050505050565b60ff81168114610cda575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040516060810167ffffffffffffffff8111828210171561199357611993611943565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156119e0576119e0611943565b604052919050565b5f67ffffffffffffffff821115611a0157611a01611943565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f82601f830112611a3c575f80fd5b8135611a4f611a4a826119e8565b611999565b818152846020838601011115611a63575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f8060808587031215611a92575f80fd5b843593506020850135611aa481611935565b92506040850135611ab48161160b565b9150606085013567ffffffffffffffff811115611acf575f80fd5b611adb87828801611a2d565b91505092959194509250565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215611b24575f80fd5b813580151581146104f1575f80fd5b8035611b3e8161160b565b919050565b5f805f8060808587031215611b56575f80fd5b843567ffffffffffffffff811115611b6c575f80fd5b8501601f81018713611b7c575f80fd5b803567ffffffffffffffff811115611b9657611b96611943565b8060051b611ba660208201611999565b9182526020818401810192908101908a841115611bc1575f80fd5b6020850194505b83851015611bef5784359250611bdd8361160b565b82825260209485019490910190611bc8565b8098505050505050611c0360208601611b33565b925060408501359150611c1860608601611b33565b905092959194509250565b5f60208284031215611c33575f80fd5b81516104f18161160b565b5f60208284031215611c4e575f80fd5b5051919050565b80820180821115610491577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f60208284031215611c9d575f80fd5b813567ffffffffffffffff811115611cb3575f80fd5b820160408185031215611cc4575f80fd5b6040805190810167ffffffffffffffff81118282101715611ce757611ce7611943565b604052813567ffffffffffffffff811115611d00575f80fd5b611d0c86828501611a2d565b825250602082013567ffffffffffffffff811115611d28575f80fd5b611d3486828501611a2d565b602083015250949350505050565b8051611b3e81611935565b5f60208284031215611d5d575f80fd5b815167ffffffffffffffff811115611d73575f80fd5b820160608185031215611d84575f80fd5b611d8c611970565b8151611d978161160b565b8152602082015167ffffffffffffffff811115611db2575f80fd5b8201601f81018613611dc2575f80fd5b8051611dd0611a4a826119e8565b818152876020838501011115611de4575f80fd5b8160208401602083015e5f60208383010152806020850152505050611e0b60408301611d42565b604082015294935050505056fea26469706673582212202bb33777c1d237cb84529b646322ad93d2145d70f7cb89638854d86314a7142764736f6c634300081a0033",n={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1,VITE_BOOST_MAINNET_SIGNER_EOA:"0xCBD0C302040bC803B4B2EDaF21Be0e49Deff5480",VITE_BOOST_TESTNET_SIGNER_EOA:"0xd63167e9db11B108940b2E8236581F961f33f396"},s=class s extends w.DeployableTarget{constructor(){super(...arguments),this.abi=b.U}async getClaimFee(f){return await b.U8(this._config,{address:this.assertValidAddress(),...f})}async setClaimFee(f,a){return await this.awaitResult(this.setClaimFeeRaw(f,a))}async setClaimFeeRaw(f,a){const{request:e,result:d}=await b.v7(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...a});return{hash:await b.r7(this._config,e),result:d}}async signers(f,a){return await b.K8(this._config,{address:this.assertValidAddress(),args:[f],...a})}async hashSignerData(f,a){return await b.Z8(this._config,{address:this.assertValidAddress(),args:[f.boostId,f.incentiveQuantity,f.claimant,f.incentiveData],...a})}async validate(f,a){return await this.awaitResult(this.validateRaw(f,a))}async validateRaw(f,a){const{request:e,result:d}=await b.g7(this._config,{address:this.assertValidAddress(),args:[f.boostId,f.incentiveId,f.claimant,f.claimData],value:f.value,...this.optionallyAttachAccount(),...a});return{hash:await b.u7(this._config,e),result:d}}async setAuthorized(f,a,e){return await this.awaitResult(this.setAuthorizedRaw(f,a,e))}async setAuthorizedRaw(f,a,e){const{request:d,result:t}=await b.f7(this._config,{address:this.assertValidAddress(),args:[f,a],...this.optionallyAttachAccount(),...e});return{hash:await b.s7(this._config,d),result:t}}async setValidatorCallerRaw(f,a){const{request:e,result:d}=await b.T7(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...a});return{hash:await b.o7(this._config,e),result:d}}async setValidatorCaller(f,a){return await this.awaitResult(this.setValidatorCallerRaw(f,a))}async encodeClaimData(f){return await u({...f,validator:this.assertValidAddress()})}buildParameters(f,a){var r;const[e,d]=this.validateDeploymentConfig(f,a),t=(r=this._config.getClient().chain)==null?void 0:r.id;if(!t)throw new Error("Chain ID is required for PayableLimitedSignerValidator deployment");const i=s.bases[t];if(!i)throw new Error(`Base implementation not found for chain ID ${t}. Please ensure PayableLimitedSignerValidator is deployed on this chain.`);return{abi:b.U,bytecode:V,args:[m({...e,baseImplementation:i})],...this.optionallyAttachAccount(d.account)}}};s.bases={...n!=null&&n.VITE_PAYABLE_LIMITED_SIGNER_VALIDATOR_BASE?{31337:void 0}:{},...A.PayableLimitedSignerValidator},s.registryType=D.RegistryType.VALIDATOR;let o=s;async function u({signer:c,incentiveData:f,chainId:a,validator:e,incentiveQuantity:d,claimant:t,boostId:i}){const y={domain:{name:"PayableLimitedSignerValidator",version:"1",chainId:a,verifyingContract:e},types:{SignerValidatorData:[{name:"boostId",type:"uint256"},{name:"incentiveQuantity",type:"uint8"},{name:"claimant",type:"address"},{name:"incentiveData",type:"bytes"}]},primaryType:"SignerValidatorData",message:{boostId:i,incentiveQuantity:d,claimant:t,incentiveData:f}},g=await c.privateKey.signTypedData(y),p=h({signer:c.account,signature:g,incentiveQuantity:d});return l.encodeAbiParameters([{type:"tuple",name:"BoostClaimData",components:[{type:"bytes",name:"validatorData"},{type:"bytes",name:"incentiveData"}]}],[{validatorData:p,incentiveData:f}])}function h({signer:c,signature:f,incentiveQuantity:a}){return l.encodeAbiParameters([{type:"tuple",name:"SignerValidatorInputParams",components:[{type:"address",name:"signer"},{type:"bytes",name:"signature"},{type:"uint8",name:"incentiveQuantity"}]}],[{signer:c,signature:f,incentiveQuantity:a}])}function m(c){return l.encodeAbiParameters([{name:"signers",type:"address[]"},{name:"validatorCaller",type:"address"},{name:"maxClaimCount",type:"uint256"},{name:"baseImplementation",type:"address"}],[c.signers,c.validatorCaller,BigInt(c.maxClaimCount),c.baseImplementation])}exports.payableLimitedSignerValidatorAbi=b.U;exports.PayableLimitedSignerValidator=o;exports.preparePayableLimitedSignerValidatorClaimDataPayload=u;exports.preparePayableLimitedSignerValidatorInputParams=h;exports.preparePayableLimitedSignerValidatorPayload=m;
2
+ //# sourceMappingURL=PayableLimitedSignerValidator.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PayableLimitedSignerValidator.cjs","sources":["../../src/Validators/PayableLimitedSignerValidator.ts"],"sourcesContent":["import {\n payableLimitedSignerValidatorAbi,\n readPayableLimitedSignerValidatorGetClaimFee,\n readPayableLimitedSignerValidatorHashSignerData,\n readPayableLimitedSignerValidatorSigners,\n simulatePayableLimitedSignerValidatorSetAuthorized,\n simulatePayableLimitedSignerValidatorSetClaimFee,\n simulatePayableLimitedSignerValidatorSetValidatorCaller,\n simulatePayableLimitedSignerValidatorValidate,\n writePayableLimitedSignerValidatorSetAuthorized,\n writePayableLimitedSignerValidatorSetClaimFee,\n writePayableLimitedSignerValidatorSetValidatorCaller,\n writePayableLimitedSignerValidatorValidate,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/validators/PayableLimitedSignerValidator.sol/PayableLimitedSignerValidator.json';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n type PrivateKeyAccount,\n encodeAbiParameters,\n} from 'viem';\nimport { PayableLimitedSignerValidator as PayableLimitedSignerValidatorBases } from '../../dist/deployments.json';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport { DeployableTarget } from '../Deployable/DeployableTarget';\nimport {\n type GenericLog,\n type ReadParams,\n RegistryType,\n type WriteParams,\n} from '../utils';\nimport type {\n LimitedSignerValidatorInputParams,\n LimitedSignerValidatorValidatePayload,\n} from './LimitedSignerValidator';\n\nexport { payableLimitedSignerValidatorAbi };\n\n/**\n * Object representation of a {@link PayableLimitedSignerValidator} initialization payload\n *\n * @export\n * @interface PayableLimitedSignerValidatorPayload\n * @typedef {PayableLimitedSignerValidatorPayload}\n */\nexport interface PayableLimitedSignerValidatorPayload {\n /**\n * The list of authorized signers. The first address in the list will be the initial owner of the contract.\n *\n * @type {Address[]}\n */\n signers: Address[];\n /**\n * The authorized caller of the validator function\n * @type {Address}\n */\n validatorCaller: Address;\n /**\n * The max quantity of claims a user can make for a given incentive\n * @type {number}\n */\n maxClaimCount: number;\n}\n\n/**\n * Extended validate payload that includes the payment value\n *\n * @export\n * @interface PayableLimitedSignerValidatorValidatePayload\n * @typedef {PayableLimitedSignerValidatorValidatePayload}\n */\nexport interface PayableLimitedSignerValidatorValidatePayload\n extends LimitedSignerValidatorValidatePayload {\n /**\n * The amount of ETH to send with the validation call (must match claimFee exactly)\n *\n * @type {bigint}\n */\n value: bigint;\n}\n\n/**\n * Signer Validator Claim Data Payload\n *\n * @export\n * @interface PayableLimitedSignerValidatorClaimDataParams\n * @typedef {PayableLimitedSignerValidatorClaimDataParams}\n */\nexport interface PayableLimitedSignerValidatorClaimDataParams {\n /**\n * The signer with which to sign the input\n *\n * @type {{\n * account: Address;\n * key: Hex;\n * privateKey: PrivateKeyAccount;\n * }}\n */\n signer: {\n account: Address;\n key: Hex;\n privateKey: PrivateKeyAccount;\n };\n /**\n * The encoded data to provide the underlying incentive\n *\n * @type {Hex}\n */\n incentiveData: Hex;\n /**\n * The chain id to target\n *\n * @type {number}\n */\n chainId: number;\n /**\n * The address of the validator\n *\n * @type {Address}\n */\n validator: Address;\n /**\n * The incentive quantity.\n *\n * @type {number}\n */\n incentiveQuantity: number;\n /**\n * The address of the claimant\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The ID of the boost\n *\n * @type {bigint}\n */\n boostId: bigint;\n}\n\n/**\n * Object representing the payload for signing before validation.\n *\n * @export\n * @interface PayableLimitedSignerValidatorSignaturePayload\n * @typedef {PayableLimitedSignerValidatorSignaturePayload}\n */\nexport interface PayableLimitedSignerValidatorSignaturePayload {\n /**\n * The ID of the boost.\n *\n * @type {bigint}\n */\n boostId: bigint;\n /**\n * The ID of the incentive.\n *\n * @type {number}\n */\n incentiveQuantity: number;\n /**\n * The address of the claimant.\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The claim data.\n *\n * @type {Hex}\n */\n incentiveData: Hex;\n}\n\n/**\n * A generic `viem.Log` event with support for `PayableLimitedSignerValidator` event types.\n *\n * @export\n * @typedef {PayableLimitedSignerValidatorLog}\n */\nexport type PayableLimitedSignerValidatorLog<\n event extends ContractEventName<\n typeof payableLimitedSignerValidatorAbi\n > = ContractEventName<typeof payableLimitedSignerValidatorAbi>,\n> = GenericLog<typeof payableLimitedSignerValidatorAbi, event>;\n\n/**\n * A validator that verifies signatures, limits claims per address, and requires a claim fee.\n * The claim fee is stored on the base implementation and all clones read from it.\n * This allows updating the fee globally by only changing it on the base.\n *\n * @export\n * @class PayableLimitedSignerValidator\n * @extends {DeployableTarget}\n */\nexport class PayableLimitedSignerValidator extends DeployableTarget<\n PayableLimitedSignerValidatorPayload,\n typeof payableLimitedSignerValidatorAbi\n> {\n /**\n * @inheritdoc\n *\n * @public\n * @readonly\n * @type {*}\n */\n public override readonly abi = payableLimitedSignerValidatorAbi;\n\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_PAYABLE_LIMITED_SIGNER_VALIDATOR_BASE\n ? { 31337: import.meta.env.VITE_PAYABLE_LIMITED_SIGNER_VALIDATOR_BASE }\n : {}),\n ...(PayableLimitedSignerValidatorBases as Record<number, Address>),\n };\n\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.VALIDATOR;\n\n /**\n * Get the current claim fee. For clones, this reads from the base implementation.\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<bigint>}\n */\n public async getClaimFee(params?: ReadParams): Promise<bigint> {\n return await readPayableLimitedSignerValidatorGetClaimFee(this._config, {\n address: this.assertValidAddress(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters\n ...(params as any),\n });\n }\n\n /**\n * Set the claim fee (only callable on the base implementation by the owner)\n *\n * @public\n * @async\n * @param {bigint} newFee - The new claim fee amount in wei\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setClaimFee(\n newFee: bigint,\n params?: WriteParams,\n ): Promise<void> {\n return await this.awaitResult(this.setClaimFeeRaw(newFee, params));\n }\n\n /**\n * Set the claim fee (only callable on the base implementation by the owner)\n *\n * @public\n * @async\n * @param {bigint} newFee - The new claim fee amount in wei\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setClaimFeeRaw(newFee: bigint, params?: WriteParams) {\n const { request, result } =\n await simulatePayableLimitedSignerValidatorSetClaimFee(this._config, {\n address: this.assertValidAddress(),\n args: [newFee],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters\n ...(params as any),\n });\n const hash = await writePayableLimitedSignerValidatorSetClaimFee(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * The set of authorized signers\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>}\n */\n public async signers(address: Address, params?: ReadParams) {\n return await readPayableLimitedSignerValidatorSigners(this._config, {\n address: this.assertValidAddress(),\n args: [address],\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 * Retrieve the hash and signer data for a given hash\n *\n * @public\n * @async\n * @param {PayableLimitedSignerValidatorSignaturePayload} payload\n * @param {?ReadParams} [params]\n * @returns {Promise<Hex>}\n */\n public async hashSignerData(\n payload: PayableLimitedSignerValidatorSignaturePayload,\n params?: ReadParams,\n ) {\n return await readPayableLimitedSignerValidatorHashSignerData(this._config, {\n address: this.assertValidAddress(),\n args: [\n payload.boostId,\n payload.incentiveQuantity,\n payload.claimant,\n payload.incentiveData,\n ],\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 * Validate that the action has been completed successfully.\n * Requires exact payment of the claim fee.\n *\n * @public\n * @async\n * @param {PayableLimitedSignerValidatorValidatePayload} payload\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if the action has been validated\n */\n protected async validate(\n payload: PayableLimitedSignerValidatorValidatePayload,\n params?: WriteParams,\n ): Promise<boolean> {\n return await this.awaitResult(this.validateRaw(payload, params));\n }\n\n /**\n * Validate that the action has been completed successfully.\n * Requires exact payment of the claim fee.\n *\n * @public\n * @async\n * @param {PayableLimitedSignerValidatorValidatePayload} payload\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>}\n */\n protected async validateRaw(\n payload: PayableLimitedSignerValidatorValidatePayload,\n params?: WriteParams,\n ) {\n const { request, result } =\n await simulatePayableLimitedSignerValidatorValidate(this._config, {\n address: this.assertValidAddress(),\n args: [\n payload.boostId,\n payload.incentiveId,\n payload.claimant,\n payload.claimData,\n ],\n value: payload.value,\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters\n ...(params as any),\n });\n const hash = await writePayableLimitedSignerValidatorValidate(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Set the authorized status of a signer\n *\n * @public\n * @async\n * @param {Address[]} addresses - The list of signers to update\n * @param {boolean[]} allowed - The authorized status of each signer\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setAuthorized(\n addresses: Address[],\n allowed: boolean[],\n params?: WriteParams,\n ) {\n return await this.awaitResult(\n this.setAuthorizedRaw(addresses, allowed, params),\n );\n }\n\n /**\n * Set the authorized status of a signer\n *\n * @public\n * @async\n * @param {Address[]} addresses - The list of signers to update\n * @param {boolean[]} allowed - The authorized status of each signer\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setAuthorizedRaw(\n addresses: Address[],\n allowed: boolean[],\n params?: WriteParams,\n ) {\n const { request, result } =\n await simulatePayableLimitedSignerValidatorSetAuthorized(this._config, {\n address: this.assertValidAddress(),\n args: [addresses, allowed],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters\n ...(params as any),\n });\n const hash = await writePayableLimitedSignerValidatorSetAuthorized(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Update the authorized caller of the validator function\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setValidatorCallerRaw(address: Address, params?: WriteParams) {\n const { request, result } =\n await simulatePayableLimitedSignerValidatorSetValidatorCaller(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [address],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters\n ...(params as any),\n },\n );\n const hash = await writePayableLimitedSignerValidatorSetValidatorCaller(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Update the authorized caller of the validator function\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setValidatorCaller(address: Address, params?: WriteParams) {\n return await this.awaitResult(this.setValidatorCallerRaw(address, params));\n }\n\n /**\n * Properly encodes the data needed to claim\n *\n * @public\n * @async\n * @param {PayableLimitedSignerValidatorClaimDataParams} params\n * @returns {Promise<Hex>}\n */\n public async encodeClaimData(\n params: Omit<PayableLimitedSignerValidatorClaimDataParams, 'validator'>,\n ): Promise<Hex> {\n return await preparePayableLimitedSignerValidatorClaimDataPayload({\n ...params,\n validator: this.assertValidAddress(),\n });\n }\n\n /**\n * @inheritdoc\n *\n * @public\n * @param {?PayableLimitedSignerValidatorPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: PayableLimitedSignerValidatorPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n\n // set the base implementation address\n const chainId = this._config.getClient().chain?.id;\n if (!chainId) {\n throw new Error(\n 'Chain ID is required for PayableLimitedSignerValidator deployment',\n );\n }\n const baseImplementation = PayableLimitedSignerValidator.bases[chainId];\n if (!baseImplementation) {\n throw new Error(\n `Base implementation not found for chain ID ${chainId}. Please ensure PayableLimitedSignerValidator is deployed on this chain.`,\n );\n }\n\n return {\n abi: payableLimitedSignerValidatorAbi,\n bytecode: bytecode as Hex,\n args: [\n preparePayableLimitedSignerValidatorPayload({\n ...payload,\n baseImplementation,\n }),\n ],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n\n/**\n * Payable Limited Signer Validator Claim Data Payload Preparation\n *\n * @export\n * @async\n * @param {PayableLimitedSignerValidatorClaimDataParams} param0\n * @returns {Promise<Hex>}\n */\nexport async function preparePayableLimitedSignerValidatorClaimDataPayload({\n signer,\n incentiveData,\n chainId,\n validator,\n incentiveQuantity,\n claimant,\n boostId,\n}: PayableLimitedSignerValidatorClaimDataParams): Promise<Hex> {\n const domain = {\n name: 'PayableLimitedSignerValidator',\n version: '1',\n chainId: chainId,\n verifyingContract: validator,\n };\n const typedData = {\n domain,\n types: {\n SignerValidatorData: [\n { name: 'boostId', type: 'uint256' },\n { name: 'incentiveQuantity', type: 'uint8' },\n { name: 'claimant', type: 'address' },\n { name: 'incentiveData', type: 'bytes' },\n ],\n },\n primaryType: 'SignerValidatorData' as const,\n message: {\n boostId,\n incentiveQuantity,\n claimant,\n incentiveData: incentiveData,\n },\n };\n\n const trustedSignature = await signer.privateKey.signTypedData(typedData);\n\n // Prepare the claim data payload using the new helper\n const validatorData = preparePayableLimitedSignerValidatorInputParams({\n signer: signer.account,\n signature: trustedSignature,\n incentiveQuantity,\n });\n\n const boostClaimDataPayload = encodeAbiParameters(\n [\n {\n type: 'tuple',\n name: 'BoostClaimData',\n components: [\n { type: 'bytes', name: 'validatorData' },\n { type: 'bytes', name: 'incentiveData' },\n ],\n },\n ],\n [{ validatorData, incentiveData }],\n );\n\n return boostClaimDataPayload;\n}\n\n/**\n * Given a {@link PayableLimitedSignerValidatorInputParams}, properly encode the initialization payload.\n *\n * @param {LimitedSignerValidatorInputParams} param0\n * @param {Address} param0.signer\n * @param {Hex} param0.signature\n * @param {number} param0.incentiveQuantity\n * @returns {Hex}\n */\nexport function preparePayableLimitedSignerValidatorInputParams({\n signer,\n signature,\n incentiveQuantity,\n}: LimitedSignerValidatorInputParams) {\n return encodeAbiParameters(\n [\n {\n type: 'tuple',\n name: 'SignerValidatorInputParams',\n components: [\n { type: 'address', name: 'signer' },\n { type: 'bytes', name: 'signature' },\n { type: 'uint8', name: 'incentiveQuantity' },\n ],\n },\n ],\n [{ signer, signature, incentiveQuantity }],\n );\n}\n\n/**\n * Prepare the initialization payload for a PayableLimitedSignerValidator\n *\n * @export\n * @param {PayableLimitedSignerValidatorPayload & { baseImplementation: Address }} payload\n * @returns {Hex}\n */\nexport function preparePayableLimitedSignerValidatorPayload(\n payload: PayableLimitedSignerValidatorPayload & {\n baseImplementation: Address;\n },\n): Hex {\n return encodeAbiParameters(\n [\n { name: 'signers', type: 'address[]' },\n { name: 'validatorCaller', type: 'address' },\n { name: 'maxClaimCount', type: 'uint256' },\n { name: 'baseImplementation', type: 'address' },\n ],\n [\n payload.signers,\n payload.validatorCaller,\n BigInt(payload.maxClaimCount),\n payload.baseImplementation,\n ],\n );\n}\n"],"names":["_PayableLimitedSignerValidator","DeployableTarget","payableLimitedSignerValidatorAbi","params","readPayableLimitedSignerValidatorGetClaimFee","newFee","request","result","simulatePayableLimitedSignerValidatorSetClaimFee","writePayableLimitedSignerValidatorSetClaimFee","address","readPayableLimitedSignerValidatorSigners","payload","readPayableLimitedSignerValidatorHashSignerData","simulatePayableLimitedSignerValidatorValidate","writePayableLimitedSignerValidatorValidate","addresses","allowed","simulatePayableLimitedSignerValidatorSetAuthorized","writePayableLimitedSignerValidatorSetAuthorized","simulatePayableLimitedSignerValidatorSetValidatorCaller","writePayableLimitedSignerValidatorSetValidatorCaller","preparePayableLimitedSignerValidatorClaimDataPayload","_payload","_options","options","chainId","_a","baseImplementation","bytecode","preparePayableLimitedSignerValidatorPayload","__vite_import_meta_env__","PayableLimitedSignerValidatorBases","RegistryType","PayableLimitedSignerValidator","signer","incentiveData","validator","incentiveQuantity","claimant","boostId","typedData","trustedSignature","validatorData","preparePayableLimitedSignerValidatorInputParams","encodeAbiParameters","signature"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PayableLimitedSignerValidator.d.ts","sourceRoot":"","sources":["../../src/Validators/PayableLimitedSignerValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PayableLimitedSignerValidator.d.ts","sourceRoot":"","sources":["../../src/Validators/PayableLimitedSignerValidator.ts"],"names":[],"mappings":"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"}