@boostxyz/sdk 1.1.0-alpha.22 → 1.1.0-alpha.24

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 (150) hide show
  1. package/dist/Actions/Action.cjs +1 -1
  2. package/dist/Actions/Action.cjs.map +1 -1
  3. package/dist/Actions/Action.js +6 -6
  4. package/dist/Actions/EventAction.cjs +1 -1
  5. package/dist/Actions/EventAction.cjs.map +1 -1
  6. package/dist/Actions/EventAction.d.ts +36 -6
  7. package/dist/Actions/EventAction.d.ts.map +1 -1
  8. package/dist/Actions/EventAction.js +846 -15
  9. package/dist/Actions/EventAction.js.map +1 -1
  10. package/dist/AllowLists/AllowList.cjs +1 -1
  11. package/dist/AllowLists/AllowList.js +2 -2
  12. package/dist/AllowLists/OpenAllowList.d.ts +28 -28
  13. package/dist/AllowLists/SimpleAllowList.cjs +1 -1
  14. package/dist/AllowLists/SimpleAllowList.cjs.map +1 -1
  15. package/dist/AllowLists/SimpleAllowList.d.ts +28 -28
  16. package/dist/AllowLists/SimpleAllowList.d.ts.map +1 -1
  17. package/dist/AllowLists/SimpleAllowList.js +11 -10
  18. package/dist/AllowLists/SimpleAllowList.js.map +1 -1
  19. package/dist/AllowLists/SimpleDenyList.cjs +1 -1
  20. package/dist/AllowLists/SimpleDenyList.d.ts +28 -28
  21. package/dist/AllowLists/SimpleDenyList.d.ts.map +1 -1
  22. package/dist/AllowLists/SimpleDenyList.js +3 -3
  23. package/dist/Auth/PassthroughAuth.cjs +1 -1
  24. package/dist/Auth/PassthroughAuth.js +1 -1
  25. package/dist/BoostCore-Btl5BdAs.cjs +3 -0
  26. package/dist/BoostCore-Btl5BdAs.cjs.map +1 -0
  27. package/dist/{BoostCore-BVZExPPu.js → BoostCore-CD56zbYX.js} +1678 -499
  28. package/dist/BoostCore-CD56zbYX.js.map +1 -0
  29. package/dist/BoostCore.cjs +1 -1
  30. package/dist/BoostCore.d.ts +7 -7
  31. package/dist/BoostCore.d.ts.map +1 -1
  32. package/dist/BoostCore.js +6 -6
  33. package/dist/BoostRegistry.cjs +1 -1
  34. package/dist/BoostRegistry.cjs.map +1 -1
  35. package/dist/BoostRegistry.d.ts +6 -6
  36. package/dist/BoostRegistry.d.ts.map +1 -1
  37. package/dist/BoostRegistry.js +50 -50
  38. package/dist/BoostRegistry.js.map +1 -1
  39. package/dist/Budgets/Budget.cjs +1 -1
  40. package/dist/Budgets/Budget.js +1 -1
  41. package/dist/Budgets/ManagedBudget.cjs +1 -1
  42. package/dist/Budgets/ManagedBudget.cjs.map +1 -1
  43. package/dist/Budgets/ManagedBudget.d.ts +28 -28
  44. package/dist/Budgets/ManagedBudget.d.ts.map +1 -1
  45. package/dist/Budgets/ManagedBudget.js +30 -29
  46. package/dist/Budgets/ManagedBudget.js.map +1 -1
  47. package/dist/Budgets/VestingBudget.d.ts +28 -28
  48. package/dist/Budgets/VestingBudget.d.ts.map +1 -1
  49. package/dist/Deployable/DeployableTarget.cjs +1 -1
  50. package/dist/Deployable/DeployableTarget.js +1 -1
  51. package/dist/Deployable/DeployableTargetWithRBAC.cjs +1 -1
  52. package/dist/Deployable/DeployableTargetWithRBAC.cjs.map +1 -1
  53. package/dist/Deployable/DeployableTargetWithRBAC.d.ts +92 -23
  54. package/dist/Deployable/DeployableTargetWithRBAC.d.ts.map +1 -1
  55. package/dist/Deployable/DeployableTargetWithRBAC.js +145 -47
  56. package/dist/Deployable/DeployableTargetWithRBAC.js.map +1 -1
  57. package/dist/{Incentive-BhHaK3PZ.cjs → Incentive-CcnOIc8L.cjs} +2 -2
  58. package/dist/{Incentive-BhHaK3PZ.cjs.map → Incentive-CcnOIc8L.cjs.map} +1 -1
  59. package/dist/{Incentive-Cqg1w6wD.js → Incentive-rM5nKznp.js} +30 -29
  60. package/dist/{Incentive-Cqg1w6wD.js.map → Incentive-rM5nKznp.js.map} +1 -1
  61. package/dist/Incentives/AllowListIncentive.cjs +1 -1
  62. package/dist/Incentives/AllowListIncentive.cjs.map +1 -1
  63. package/dist/Incentives/AllowListIncentive.d.ts.map +1 -1
  64. package/dist/Incentives/AllowListIncentive.js +11 -10
  65. package/dist/Incentives/AllowListIncentive.js.map +1 -1
  66. package/dist/Incentives/CGDAIncentive.cjs +1 -1
  67. package/dist/Incentives/CGDAIncentive.cjs.map +1 -1
  68. package/dist/Incentives/CGDAIncentive.d.ts +28 -28
  69. package/dist/Incentives/CGDAIncentive.d.ts.map +1 -1
  70. package/dist/Incentives/CGDAIncentive.js +12 -11
  71. package/dist/Incentives/CGDAIncentive.js.map +1 -1
  72. package/dist/Incentives/ERC1155Incentive.d.ts +28 -28
  73. package/dist/Incentives/ERC1155Incentive.d.ts.map +1 -1
  74. package/dist/Incentives/ERC20Incentive.cjs +1 -1
  75. package/dist/Incentives/ERC20Incentive.cjs.map +1 -1
  76. package/dist/Incentives/ERC20Incentive.d.ts +34 -31
  77. package/dist/Incentives/ERC20Incentive.d.ts.map +1 -1
  78. package/dist/Incentives/ERC20Incentive.js +30 -27
  79. package/dist/Incentives/ERC20Incentive.js.map +1 -1
  80. package/dist/Incentives/ERC20VariableCriteriaIncentive.d.ts +28 -28
  81. package/dist/Incentives/ERC20VariableCriteriaIncentive.d.ts.map +1 -1
  82. package/dist/Incentives/ERC20VariableIncentive.d.ts +28 -28
  83. package/dist/Incentives/ERC20VariableIncentive.d.ts.map +1 -1
  84. package/dist/Incentives/Incentive.cjs +1 -1
  85. package/dist/Incentives/Incentive.js +2 -2
  86. package/dist/Incentives/PointsIncentive.cjs +1 -1
  87. package/dist/Incentives/PointsIncentive.cjs.map +1 -1
  88. package/dist/Incentives/PointsIncentive.d.ts.map +1 -1
  89. package/dist/Incentives/PointsIncentive.js +12 -11
  90. package/dist/Incentives/PointsIncentive.js.map +1 -1
  91. package/dist/{SimpleDenyList-CGaWjuld.js → SimpleDenyList-BDXpY74P.js} +18 -17
  92. package/dist/SimpleDenyList-BDXpY74P.js.map +1 -0
  93. package/dist/{SimpleDenyList-BUR17Tt1.cjs → SimpleDenyList-DNj5qDWM.cjs} +2 -2
  94. package/dist/SimpleDenyList-DNj5qDWM.cjs.map +1 -0
  95. package/dist/Validators/SignerValidator.cjs +1 -1
  96. package/dist/Validators/SignerValidator.cjs.map +1 -1
  97. package/dist/Validators/SignerValidator.d.ts.map +1 -1
  98. package/dist/Validators/SignerValidator.js +13 -12
  99. package/dist/Validators/SignerValidator.js.map +1 -1
  100. package/dist/Validators/Validator.cjs +1 -1
  101. package/dist/Validators/Validator.js +1 -1
  102. package/dist/deployments-DF_6-7hH.cjs +2 -0
  103. package/dist/deployments-DF_6-7hH.cjs.map +1 -0
  104. package/dist/deployments-fJsWblwS.js +56 -0
  105. package/dist/deployments-fJsWblwS.js.map +1 -0
  106. package/dist/deployments.json +26 -12
  107. package/dist/{generated-CKt2yCQd.js → generated-CsNyWPKA.js} +458 -443
  108. package/dist/generated-CsNyWPKA.js.map +1 -0
  109. package/dist/generated-DHerxf1y.cjs +3 -0
  110. package/dist/generated-DHerxf1y.cjs.map +1 -0
  111. package/dist/index.cjs +1 -1
  112. package/dist/index.js +116 -115
  113. package/package.json +4 -4
  114. package/src/Actions/EventAction.test.ts +384 -119
  115. package/src/Actions/EventAction.ts +76 -35
  116. package/src/AllowLists/SimpleAllowList.ts +1 -0
  117. package/src/AllowLists/SimpleDenyList.ts +1 -0
  118. package/src/BoostCore.test.ts +78 -78
  119. package/src/BoostCore.ts +19 -13
  120. package/src/BoostRegistry.ts +10 -10
  121. package/src/Budgets/ManagedBudget.test.ts +41 -17
  122. package/src/Budgets/ManagedBudget.ts +1 -11
  123. package/src/Budgets/VestingBudget.ts +3 -1
  124. package/src/Deployable/DeployableTargetWithRBAC.test.ts +103 -0
  125. package/src/Deployable/DeployableTargetWithRBAC.ts +160 -36
  126. package/src/Incentives/AllowListIncentive.test.ts +7 -7
  127. package/src/Incentives/AllowListIncentive.ts +1 -0
  128. package/src/Incentives/CGDAIncentive.ts +1 -0
  129. package/src/Incentives/ERC1155Incentive.ts +3 -1
  130. package/src/Incentives/ERC20Incentive.ts +10 -3
  131. package/src/Incentives/ERC20VariableCriteriaIncentive.ts +1 -0
  132. package/src/Incentives/ERC20VariableIncentive.ts +1 -0
  133. package/src/Incentives/PointsIncentive.ts +1 -0
  134. package/src/Validators/SignerValidator.ts +1 -0
  135. package/dist/BoostCore-BVZExPPu.js.map +0 -1
  136. package/dist/BoostCore-D-E-cnGI.cjs +0 -3
  137. package/dist/BoostCore-D-E-cnGI.cjs.map +0 -1
  138. package/dist/EventAction-BZt5cjbe.cjs +0 -2
  139. package/dist/EventAction-BZt5cjbe.cjs.map +0 -1
  140. package/dist/EventAction-C_-hJXWm.js +0 -1541
  141. package/dist/EventAction-C_-hJXWm.js.map +0 -1
  142. package/dist/SimpleDenyList-BUR17Tt1.cjs.map +0 -1
  143. package/dist/SimpleDenyList-CGaWjuld.js.map +0 -1
  144. package/dist/deployments-DVXioW2i.cjs +0 -2
  145. package/dist/deployments-DVXioW2i.cjs.map +0 -1
  146. package/dist/deployments-oykLv3_Z.js +0 -43
  147. package/dist/deployments-oykLv3_Z.js.map +0 -1
  148. package/dist/generated-CKt2yCQd.js.map +0 -1
  149. package/dist/generated-CyTNlOwM.cjs +0 -3
  150. package/dist/generated-CyTNlOwM.cjs.map +0 -1
@@ -1,1541 +0,0 @@
1
- import { b9 as _, ba as Q, bb as X, bc as q, bd as J } from "./generated-CKt2yCQd.js";
2
- import { getTransactionReceipt as Y, getTransaction as Z } from "@wagmi/core";
3
- import { isAddressEqual as I, decodeEventLog as k, decodeFunctionData as L, isAddress as f0, fromHex as S, zeroHash as M, encodeAbiParameters as e0 } from "viem";
4
- import { d as t0 } from "./deployments-oykLv3_Z.js";
5
- import { DeployableTarget as n0 } from "./Deployable/DeployableTarget.js";
6
- import { ValidationAbiMissingError as E, FunctionDataDecodeError as U, UnparseableAbiParamError as a0, UnrecognizedFilterTypeError as d0, FieldValueNotComparableError as F, InvalidNumericalCriteriaError as G, DecodedArgsMalformedError as s0, FieldValueUndefinedError as j, NoEventActionStepsProvidedError as b0, TooManyEventActionStepsProvidedError as i0 } from "./errors.js";
7
- import { RegistryType as r0 } from "./utils.js";
8
- const c0 = "0x60a0604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f602c608760201b60201c565b90508054600181161560455763f92ee8a95f526004601cfd5b8160c01c808260011c146082578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b60805161231a6100c85f395f61034a015261231a5ff3fe608060405260043610610090575f3560e01c80639bc1cf81116100585780639bc1cf811461017d578063c26624e8146101a7578063d7768c47146101e3578063dbdf21101461021f578063ddd6ab081461024957610090565b806301ffc9a71461009457806309c5eabe146100d057806328d6183b14610101578063393df8cb1461012b578063439fab9114610155575b5f80fd5b34801561009f575f80fd5b506100ba60048036038101906100b59190611333565b610273565b6040516100c79190611378565b60405180910390f35b6100ea60048036038101906100e591906113f2565b6102ec565b6040516100f89291906114ad565b60405180910390f35b34801561010c575f80fd5b50610115610321565b60405161012291906114ea565b60405180910390f35b348015610136575f80fd5b5061013f610348565b60405161014c919061157d565b60405180910390f35b348015610160575f80fd5b5061017b600480360381019061017691906113f2565b61036c565b005b348015610188575f80fd5b506101916103f9565b60405161019e91906118e9565b60405180910390f35b3480156101b2575f80fd5b506101cd60048036038101906101c89190611933565b610648565b6040516101da91906119e4565b60405180910390f35b3480156101ee575f80fd5b50610209600480360381019061020491906113f2565b610875565b6040516102169190611a04565b60405180910390f35b34801561022a575f80fd5b506102336108a9565b6040516102409190611a8a565b60405180910390f35b348015610254575f80fd5b5061025d610981565b60405161026a9190611ab2565b60405180910390f35b5f7f7687b0ed000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806102e557506102e48261098d565b5b9050919050565b5f60606040517fd623472500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f7f7687b0ed00000000000000000000000000000000000000000000000000000000905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b5f610375610a06565b905080546003825580156103a75760018160011c14303b1061039e5763f92ee8a95f526004601cfd5b818160ff1b1b91505b506103bf83838101906103ba9190611fb0565b610a2f565b80156103f4576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b60606004805480602002602001604051908101604052809291908181526020015f905b8282101561063f578382905f5260205f2090600502016040518060c00160405290815f8201548152602001600182015f9054906101000a900460ff16600181111561046a576104696115d7565b5b600181111561047c5761047b6115d7565b5b81526020016001820160019054906101000a900460ff1660ff1660ff1681526020016001820160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160028201548152602001600382016040518060800160405290815f82015f9054906101000a900460ff1660058111156105305761052f6115d7565b5b6005811115610542576105416115d7565b5b81526020015f820160019054906101000a900460ff16600381111561056a576105696115d7565b5b600381111561057c5761057b6115d7565b5b81526020015f820160029054906101000a900460ff1660ff1660ff1681526020016001820180546105ac90612024565b80601f01602080910402602001604051908101604052809291908181526020018280546105d890612024565b80156106235780601f106105fa57610100808354040283529160200191610623565b820191905f5260205f20905b81548152906001019060200180831161060657829003601f168201915b505050505081525050815250508152602001906001019061041c565b50505050905090565b6106506111c4565b6004828154811061066457610663612054565b5b905f5260205f2090600502016040518060c00160405290815f8201548152602001600182015f9054906101000a900460ff1660018111156106a8576106a76115d7565b5b60018111156106ba576106b96115d7565b5b81526020016001820160019054906101000a900460ff1660ff1660ff1681526020016001820160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160028201548152602001600382016040518060800160405290815f82015f9054906101000a900460ff16600581111561076e5761076d6115d7565b5b60058111156107805761077f6115d7565b5b81526020015f820160019054906101000a900460ff1660038111156107a8576107a76115d7565b5b60038111156107ba576107b96115d7565b5b81526020015f820160029054906101000a900460ff1660ff1660ff1681526020016001820180546107ea90612024565b80601f016020809104026020016040519081016040528092919081815260200182805461081690612024565b80156108615780601f1061083857610100808354040283529160200191610861565b820191905f5260205f20905b81548152906001019060200180831161084457829003601f168201915b505050505081525050815250509050919050565b60606040517fd623472500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6108b1611229565b5f6040518060a00160405290815f82015f9054906101000a900460ff1660018111156108e0576108df6115d7565b5b60018111156108f2576108f16115d7565b5b815260200160018201548152602001600282015f9054906101000a900460ff1660ff1660ff1681526020016002820160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015481525050905090565b5f600480549050905090565b5f7fe6715795000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806109ff57506109fe826110be565b5b9050919050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b610a37611137565b805f01515f80820151815f015f6101000a81548160ff02191690836001811115610a6457610a636115d7565b5b0217905550602082015181600101556040820151816002015f6101000a81548160ff021916908360ff16021790555060608201518160020160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506080820151816003015590505060048160200151908060018154018082558091505060019003905f5260205f2090600502015f909190919091505f820151815f01556020820151816001015f6101000a81548160ff02191690836001811115610b4657610b456115d7565b5b021790555060408201518160010160016101000a81548160ff021916908360ff16021790555060608201518160010160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506080820151816002015560a0820151816003015f820151815f015f6101000a81548160ff02191690836005811115610bee57610bed6115d7565b5b02179055506020820151815f0160016101000a81548160ff02191690836003811115610c1d57610c1c6115d7565b5b02179055506040820151815f0160026101000a81548160ff021916908360ff1602179055506060820151816001019081610c579190612215565b505050505060048160400151908060018154018082558091505060019003905f5260205f2090600502015f909190919091505f820151815f01556020820151816001015f6101000a81548160ff02191690836001811115610cbb57610cba6115d7565b5b021790555060408201518160010160016101000a81548160ff021916908360ff16021790555060608201518160010160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506080820151816002015560a0820151816003015f820151815f015f6101000a81548160ff02191690836005811115610d6357610d626115d7565b5b02179055506020820151815f0160016101000a81548160ff02191690836003811115610d9257610d916115d7565b5b02179055506040820151815f0160026101000a81548160ff021916908360ff1602179055506060820151816001019081610dcc9190612215565b505050505060048160600151908060018154018082558091505060019003905f5260205f2090600502015f909190919091505f820151815f01556020820151816001015f6101000a81548160ff02191690836001811115610e3057610e2f6115d7565b5b021790555060408201518160010160016101000a81548160ff021916908360ff16021790555060608201518160010160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506080820151816002015560a0820151816003015f820151815f015f6101000a81548160ff02191690836005811115610ed857610ed76115d7565b5b02179055506020820151815f0160016101000a81548160ff02191690836003811115610f0757610f066115d7565b5b02179055506040820151815f0160026101000a81548160ff021916908360ff1602179055506060820151816001019081610f419190612215565b505050505060048160800151908060018154018082558091505060019003905f5260205f2090600502015f909190919091505f820151815f01556020820151816001015f6101000a81548160ff02191690836001811115610fa557610fa46115d7565b5b021790555060408201518160010160016101000a81548160ff021916908360ff16021790555060608201518160010160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506080820151816002015560a0820151816003015f820151815f015f6101000a81548160ff0219169083600581111561104d5761104c6115d7565b5b02179055506020820151815f0160016101000a81548160ff0219169083600381111561107c5761107b6115d7565b5b02179055506040820151815f0160026101000a81548160ff021916908360ff16021790555060608201518160010190816110b69190612215565b505050505050565b5f7f6ab67a0d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611130575061112f8261115b565b5b9050919050565b5f611140610a06565b905080546001166111585763d7e6bcf85f526004601cfd5b50565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6040518060c001604052805f80191681526020015f60018111156111eb576111ea6115d7565b5b81526020015f60ff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f8152602001611223611281565b81525090565b6040518060a001604052805f6001811115611247576112466115d7565b5b81526020015f80191681526020015f60ff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81525090565b60405180608001604052805f600581111561129f5761129e6115d7565b5b81526020015f60038111156112b7576112b66115d7565b5b81526020015f60ff168152602001606081525090565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611312816112de565b811461131c575f80fd5b50565b5f8135905061132d81611309565b92915050565b5f60208284031215611348576113476112d6565b5b5f6113558482850161131f565b91505092915050565b5f8115159050919050565b6113728161135e565b82525050565b5f60208201905061138b5f830184611369565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f8401126113b2576113b1611391565b5b8235905067ffffffffffffffff8111156113cf576113ce611395565b5b6020830191508360018202830111156113eb576113ea611399565b5b9250929050565b5f8060208385031215611408576114076112d6565b5b5f83013567ffffffffffffffff811115611425576114246112da565b5b6114318582860161139d565b92509250509250929050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61147f8261143d565b6114898185611447565b9350611499818560208601611457565b6114a281611465565b840191505092915050565b5f6040820190506114c05f830185611369565b81810360208301526114d28184611475565b90509392505050565b6114e4816112de565b82525050565b5f6020820190506114fd5f8301846114db565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f819050919050565b5f61154561154061153b84611503565b611522565b611503565b9050919050565b5f6115568261152b565b9050919050565b5f6115678261154c565b9050919050565b6115778161155d565b82525050565b5f6020820190506115905f83018461156e565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f819050919050565b6115d1816115bf565b82525050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60028110611615576116146115d7565b5b50565b5f81905061162582611604565b919050565b5f61163482611618565b9050919050565b6116448161162a565b82525050565b5f60ff82169050919050565b61165f8161164a565b82525050565b5f61166f82611503565b9050919050565b61167f81611665565b82525050565b5f819050919050565b61169781611685565b82525050565b600681106116ae576116ad6115d7565b5b50565b5f8190506116be8261169d565b919050565b5f6116cd826116b1565b9050919050565b6116dd816116c3565b82525050565b600481106116f4576116f36115d7565b5b50565b5f819050611704826116e3565b919050565b5f611713826116f7565b9050919050565b61172381611709565b82525050565b5f82825260208201905092915050565b5f6117438261143d565b61174d8185611729565b935061175d818560208601611457565b61176681611465565b840191505092915050565b5f608083015f8301516117865f8601826116d4565b506020830151611799602086018261171a565b5060408301516117ac6040860182611656565b50606083015184820360608601526117c48282611739565b9150508091505092915050565b5f60c083015f8301516117e65f8601826115c8565b5060208301516117f9602086018261163b565b50604083015161180c6040860182611656565b50606083015161181f6060860182611676565b506080830151611832608086018261168e565b5060a083015184820360a086015261184a8282611771565b9150508091505092915050565b5f61186283836117d1565b905092915050565b5f602082019050919050565b5f61188082611596565b61188a81856115a0565b93508360208202850161189c856115b0565b805f5b858110156118d757848403895281516118b88582611857565b94506118c38361186a565b925060208a0199505060018101905061189f565b50829750879550505050505092915050565b5f6020820190508181035f8301526119018184611876565b905092915050565b61191281611685565b811461191c575f80fd5b50565b5f8135905061192d81611909565b92915050565b5f60208284031215611948576119476112d6565b5b5f6119558482850161191f565b91505092915050565b5f60c083015f8301516119735f8601826115c8565b506020830151611986602086018261163b565b5060408301516119996040860182611656565b5060608301516119ac6060860182611676565b5060808301516119bf608086018261168e565b5060a083015184820360a08601526119d78282611771565b9150508091505092915050565b5f6020820190508181035f8301526119fc818461195e565b905092915050565b5f6020820190508181035f830152611a1c8184611475565b905092915050565b60a082015f820151611a385f85018261163b565b506020820151611a4b60208501826115c8565b506040820151611a5e6040850182611656565b506060820151611a716060850182611676565b506080820151611a84608085018261168e565b50505050565b5f60a082019050611a9d5f830184611a24565b92915050565b611aac81611685565b82525050565b5f602082019050611ac55f830184611aa3565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611b0582611465565b810181811067ffffffffffffffff82111715611b2457611b23611acf565b5b80604052505050565b5f611b366112cd565b9050611b428282611afc565b919050565b5f80fd5b60028110611b57575f80fd5b50565b5f81359050611b6881611b4b565b92915050565b611b77816115bf565b8114611b81575f80fd5b50565b5f81359050611b9281611b6e565b92915050565b611ba18161164a565b8114611bab575f80fd5b50565b5f81359050611bbc81611b98565b92915050565b611bcb81611665565b8114611bd5575f80fd5b50565b5f81359050611be681611bc2565b92915050565b5f60a08284031215611c0157611c00611acb565b5b611c0b60a0611b2d565b90505f611c1a84828501611b5a565b5f830152506020611c2d84828501611b84565b6020830152506040611c4184828501611bae565b6040830152506060611c5584828501611bd8565b6060830152506080611c698482850161191f565b60808301525092915050565b60068110611c81575f80fd5b50565b5f81359050611c9281611c75565b92915050565b60048110611ca4575f80fd5b50565b5f81359050611cb581611c98565b92915050565b5f80fd5b5f67ffffffffffffffff821115611cd957611cd8611acf565b5b611ce282611465565b9050602081019050919050565b828183375f83830152505050565b5f611d0f611d0a84611cbf565b611b2d565b905082815260208101848484011115611d2b57611d2a611cbb565b5b611d36848285611cef565b509392505050565b5f82601f830112611d5257611d51611391565b5b8135611d62848260208601611cfd565b91505092915050565b5f60808284031215611d8057611d7f611acb565b5b611d8a6080611b2d565b90505f611d9984828501611c84565b5f830152506020611dac84828501611ca7565b6020830152506040611dc084828501611bae565b604083015250606082013567ffffffffffffffff811115611de457611de3611b47565b5b611df084828501611d3e565b60608301525092915050565b5f60c08284031215611e1157611e10611acb565b5b611e1b60c0611b2d565b90505f611e2a84828501611b84565b5f830152506020611e3d84828501611b5a565b6020830152506040611e5184828501611bae565b6040830152506060611e6584828501611bd8565b6060830152506080611e798482850161191f565b60808301525060a082013567ffffffffffffffff811115611e9d57611e9c611b47565b5b611ea984828501611d6b565b60a08301525092915050565b5f6101208284031215611ecb57611eca611acb565b5b611ed560a0611b2d565b90505f611ee484828501611bec565b5f8301525060a082013567ffffffffffffffff811115611f0757611f06611b47565b5b611f1384828501611dfc565b60208301525060c082013567ffffffffffffffff811115611f3757611f36611b47565b5b611f4384828501611dfc565b60408301525060e082013567ffffffffffffffff811115611f6757611f66611b47565b5b611f7384828501611dfc565b60608301525061010082013567ffffffffffffffff811115611f9857611f97611b47565b5b611fa484828501611dfc565b60808301525092915050565b5f60208284031215611fc557611fc46112d6565b5b5f82013567ffffffffffffffff811115611fe257611fe16112da565b5b611fee84828501611eb5565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061203b57607f821691505b60208210810361204e5761204d611ff7565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026120dd7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826120a2565b6120e786836120a2565b95508019841693508086168417925050509392505050565b5f61211961211461210f84611685565b611522565b611685565b9050919050565b5f819050919050565b612132836120ff565b61214661213e82612120565b8484546120ae565b825550505050565b5f90565b61215a61214e565b612165818484612129565b505050565b5b818110156121885761217d5f82612152565b60018101905061216b565b5050565b601f8211156121cd5761219e81612081565b6121a784612093565b810160208510156121b6578190505b6121ca6121c285612093565b83018261216a565b50505b505050565b5f82821c905092915050565b5f6121ed5f19846008026121d2565b1980831691505092915050565b5f61220583836121de565b9150826002028217905092915050565b61221e8261143d565b67ffffffffffffffff81111561223757612236611acf565b5b6122418254612024565b61224c82828561218c565b5f60209050601f83116001811461227d575f841561226b578287015190505b61227585826121fa565b8655506122dc565b601f19841661228b86612081565b5f5b828110156122b25784890151825560018201915060208501945060208101905061228d565b868310156122cf57848901516122cb601f8916826121de565b8355505b6001600288020188555050505b50505050505056fea26469706673582212208eb365eda8d73b432dcac87772fa84d3bb11eb90f5c05dbe00a55fa3412254c364736f6c634300081a0033", o0 = {
9
- "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef": {
10
- name: "Transfer",
11
- type: "event",
12
- inputs: [
13
- {
14
- type: "address",
15
- indexed: !0
16
- },
17
- {
18
- type: "address",
19
- indexed: !0
20
- },
21
- {
22
- type: "uint256",
23
- indexed: !0
24
- }
25
- ]
26
- },
27
- "Transfer(address indexed,address indexed,uint256 indexed)": {
28
- name: "Transfer",
29
- type: "event",
30
- inputs: [
31
- {
32
- type: "address",
33
- indexed: !0
34
- },
35
- {
36
- type: "address",
37
- indexed: !0
38
- },
39
- {
40
- type: "uint256",
41
- indexed: !0
42
- }
43
- ]
44
- },
45
- "0xb362243af1e2070d7d5bf8d713f2e0fab64203f1b71462afbe20572909788c5e": {
46
- name: "Purchased",
47
- type: "event",
48
- inputs: [
49
- {
50
- type: "address",
51
- indexed: !0
52
- },
53
- {
54
- type: "address",
55
- indexed: !0
56
- },
57
- {
58
- type: "uint256",
59
- indexed: !0
60
- },
61
- {
62
- type: "uint256"
63
- },
64
- {
65
- type: "uint256"
66
- }
67
- ]
68
- },
69
- "Purchased(address indexed,address indexed,uint256 indexed,uint256,uint256)": {
70
- name: "Purchased",
71
- type: "event",
72
- inputs: [
73
- {
74
- type: "address",
75
- indexed: !0
76
- },
77
- {
78
- type: "address",
79
- indexed: !0
80
- },
81
- {
82
- type: "uint256",
83
- indexed: !0
84
- },
85
- {
86
- type: "uint256"
87
- },
88
- {
89
- type: "uint256"
90
- }
91
- ]
92
- },
93
- "0x69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf27": {
94
- name: "NameRegistered",
95
- type: "event",
96
- inputs: [
97
- {
98
- type: "string"
99
- },
100
- {
101
- type: "bytes32"
102
- },
103
- {
104
- type: "address"
105
- },
106
- {
107
- type: "uint256"
108
- },
109
- {
110
- type: "uint256"
111
- },
112
- {
113
- type: "uint256"
114
- }
115
- ]
116
- },
117
- "NameRegistered(string,bytes32,address,uint256,uint256,uint256)": {
118
- name: "NameRegistered",
119
- type: "event",
120
- inputs: [
121
- {
122
- type: "string"
123
- },
124
- {
125
- type: "bytes32"
126
- },
127
- {
128
- type: "address"
129
- },
130
- {
131
- type: "uint256"
132
- },
133
- {
134
- type: "uint256"
135
- },
136
- {
137
- type: "uint256"
138
- }
139
- ]
140
- },
141
- "0x3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f": {
142
- name: "DelegateChanged",
143
- type: "event",
144
- inputs: [
145
- {
146
- type: "address",
147
- indexed: !0
148
- },
149
- {
150
- type: "address",
151
- indexed: !0
152
- },
153
- {
154
- type: "address",
155
- indexed: !0
156
- }
157
- ]
158
- },
159
- "DelegateChanged(address indexed,address indexed,address indexed)": {
160
- name: "DelegateChanged",
161
- type: "event",
162
- inputs: [
163
- {
164
- type: "address",
165
- indexed: !0
166
- },
167
- {
168
- type: "address",
169
- indexed: !0
170
- },
171
- {
172
- type: "address",
173
- indexed: !0
174
- }
175
- ]
176
- },
177
- "0xe00361d207b252a464323eb23d45d42583e391f2031acdd2e9fa36efddd43cb0": {
178
- name: "SwappedV3",
179
- type: "event",
180
- inputs: [
181
- {
182
- type: "bytes16"
183
- },
184
- {
185
- type: "address"
186
- },
187
- {
188
- type: "uint256"
189
- },
190
- {
191
- type: "address"
192
- },
193
- {
194
- type: "address",
195
- indexed: !0
196
- },
197
- {
198
- type: "address",
199
- indexed: !0
200
- },
201
- {
202
- type: "address",
203
- indexed: !0
204
- },
205
- {
206
- type: "uint256"
207
- },
208
- {
209
- type: "uint256"
210
- },
211
- {
212
- type: "uint256"
213
- }
214
- ]
215
- },
216
- "SwappedV3(bytes16,address,uint256,address,address indexed,address indexed,address indexed,uint256,uint256,uint256)": {
217
- name: "SwappedV3",
218
- type: "event",
219
- inputs: [
220
- {
221
- type: "bytes16"
222
- },
223
- {
224
- type: "address"
225
- },
226
- {
227
- type: "uint256"
228
- },
229
- {
230
- type: "address"
231
- },
232
- {
233
- type: "address",
234
- indexed: !0
235
- },
236
- {
237
- type: "address",
238
- indexed: !0
239
- },
240
- {
241
- type: "address",
242
- indexed: !0
243
- },
244
- {
245
- type: "uint256"
246
- },
247
- {
248
- type: "uint256"
249
- },
250
- {
251
- type: "uint256"
252
- }
253
- ]
254
- },
255
- "0xb8e138887d0aa13bab447e82de9d5c1777041ecd21ca36ba824ff1e6c07ddda4": {
256
- name: "VoteCast",
257
- type: "event",
258
- inputs: [
259
- {
260
- type: "address",
261
- indexed: !0
262
- },
263
- {
264
- type: "uint256"
265
- },
266
- {
267
- type: "uint8"
268
- },
269
- {
270
- type: "uint256"
271
- },
272
- {
273
- type: "string"
274
- }
275
- ]
276
- },
277
- "VoteCast(address indexed,uint256,uint8,uint256,string)": {
278
- name: "VoteCast",
279
- type: "event",
280
- inputs: [
281
- {
282
- type: "address",
283
- indexed: !0
284
- },
285
- {
286
- type: "uint256"
287
- },
288
- {
289
- type: "uint8"
290
- },
291
- {
292
- type: "uint256"
293
- },
294
- {
295
- type: "string"
296
- }
297
- ]
298
- },
299
- "0x883a883a9ea847654d33471b1e5fb2dea76a2cfc86a6cc7da6c14102800e4d0b": {
300
- name: "InfoIndexed",
301
- type: "event",
302
- inputs: [
303
- {
304
- type: "address",
305
- indexed: !0
306
- },
307
- {
308
- type: "string",
309
- indexed: !0
310
- }
311
- ]
312
- },
313
- "InfoIndexed(address indexed,string indexed)": {
314
- name: "InfoIndexed",
315
- type: "event",
316
- inputs: [
317
- {
318
- type: "address",
319
- indexed: !0
320
- },
321
- {
322
- type: "string",
323
- indexed: !0
324
- }
325
- ]
326
- },
327
- "0xe46343e36b0721f173bdc76b8f25c08b04f417df09c27e1e83ba1980007fef8c": {
328
- name: "Info",
329
- type: "event",
330
- inputs: [
331
- {
332
- type: "address"
333
- },
334
- {
335
- type: "string"
336
- }
337
- ]
338
- },
339
- "Info(address,string)": {
340
- name: "Info",
341
- type: "event",
342
- inputs: [
343
- {
344
- type: "address"
345
- },
346
- {
347
- type: "string"
348
- }
349
- ]
350
- }
351
- }, u0 = {
352
- "Transfer(address indexed,address indexed,uint256 indexed)": "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
353
- "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef": "Transfer(address indexed,address indexed,uint256 indexed)",
354
- "Purchased(address indexed,address indexed,uint256 indexed,uint256,uint256)": "0xb362243af1e2070d7d5bf8d713f2e0fab64203f1b71462afbe20572909788c5e",
355
- "0xb362243af1e2070d7d5bf8d713f2e0fab64203f1b71462afbe20572909788c5e": "Purchased(address indexed,address indexed,uint256 indexed,uint256,uint256)",
356
- "NameRegistered(string,bytes32,address,uint256,uint256,uint256)": "0x69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf27",
357
- "0x69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf27": "NameRegistered(string,bytes32,address,uint256,uint256,uint256)",
358
- "DelegateChanged(address indexed,address indexed,address indexed)": "0x3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f",
359
- "0x3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f": "DelegateChanged(address indexed,address indexed,address indexed)",
360
- "SwappedV3(bytes16,address,uint256,address,address indexed,address indexed,address indexed,uint256,uint256,uint256)": "0xe00361d207b252a464323eb23d45d42583e391f2031acdd2e9fa36efddd43cb0",
361
- "0xe00361d207b252a464323eb23d45d42583e391f2031acdd2e9fa36efddd43cb0": "SwappedV3(bytes16,address,uint256,address,address indexed,address indexed,address indexed,uint256,uint256,uint256)",
362
- "VoteCast(address indexed,uint256,uint8,uint256,string)": "0xb8e138887d0aa13bab447e82de9d5c1777041ecd21ca36ba824ff1e6c07ddda4",
363
- "0xb8e138887d0aa13bab447e82de9d5c1777041ecd21ca36ba824ff1e6c07ddda4": "VoteCast(address indexed,uint256,uint8,uint256,string)",
364
- "InfoIndexed(address indexed,string indexed)": "0x883a883a9ea847654d33471b1e5fb2dea76a2cfc86a6cc7da6c14102800e4d0b",
365
- "0x883a883a9ea847654d33471b1e5fb2dea76a2cfc86a6cc7da6c14102800e4d0b": "InfoIndexed(address indexed,string indexed)",
366
- "Info(address,string)": "0xe46343e36b0721f173bdc76b8f25c08b04f417df09c27e1e83ba1980007fef8c",
367
- "0xe46343e36b0721f173bdc76b8f25c08b04f417df09c27e1e83ba1980007fef8c": "Info(address,string)"
368
- }, H = {
369
- abi: o0,
370
- selectors: u0
371
- }, p0 = {
372
- "0x0000000000000000000000000000000000000000000000000000000040c10f19": {
373
- name: "mint",
374
- type: "function",
375
- stateMutability: "nonpayable",
376
- inputs: [
377
- {
378
- type: "address",
379
- name: "to"
380
- },
381
- {
382
- type: "uint256",
383
- name: "amount"
384
- }
385
- ],
386
- outputs: []
387
- },
388
- "mint(address to, uint256 amount)": {
389
- name: "mint",
390
- type: "function",
391
- stateMutability: "nonpayable",
392
- inputs: [
393
- {
394
- type: "address",
395
- name: "to"
396
- },
397
- {
398
- type: "uint256",
399
- name: "amount"
400
- }
401
- ],
402
- outputs: []
403
- },
404
- "0x00000000000000000000000000000000000000000000000000000000a836f32f": {
405
- name: "mint",
406
- type: "function",
407
- stateMutability: "nonpayable",
408
- inputs: [
409
- {
410
- type: "address"
411
- },
412
- {
413
- type: "uint256"
414
- },
415
- {
416
- type: "address"
417
- },
418
- {
419
- type: "uint256"
420
- },
421
- {
422
- type: "address"
423
- },
424
- {
425
- type: "string"
426
- }
427
- ],
428
- outputs: []
429
- },
430
- "mint(address,uint256,address,uint256,address,string)": {
431
- name: "mint",
432
- type: "function",
433
- stateMutability: "nonpayable",
434
- inputs: [
435
- {
436
- type: "address"
437
- },
438
- {
439
- type: "uint256"
440
- },
441
- {
442
- type: "address"
443
- },
444
- {
445
- type: "uint256"
446
- },
447
- {
448
- type: "address"
449
- },
450
- {
451
- type: "string"
452
- }
453
- ],
454
- outputs: []
455
- },
456
- "0x0000000000000000000000000000000000000000000000000000000017d304b0": {
457
- name: "mintPayable",
458
- type: "function",
459
- stateMutability: "nonpayable",
460
- inputs: [
461
- {
462
- type: "address",
463
- name: "to"
464
- },
465
- {
466
- type: "uint256",
467
- name: "amount"
468
- }
469
- ],
470
- outputs: []
471
- },
472
- "mintPayable(address to, uint256 amount)": {
473
- name: "mintPayable",
474
- type: "function",
475
- stateMutability: "nonpayable",
476
- inputs: [
477
- {
478
- type: "address",
479
- name: "to"
480
- },
481
- {
482
- type: "uint256",
483
- name: "amount"
484
- }
485
- ],
486
- outputs: []
487
- },
488
- "0x0000000000000000000000000000000000000000000000000000000024856bc3": {
489
- name: "execute",
490
- type: "function",
491
- stateMutability: "nonpayable",
492
- inputs: [
493
- {
494
- type: "bytes",
495
- name: "commands"
496
- },
497
- {
498
- type: "bytes[]",
499
- name: "inputs"
500
- }
501
- ],
502
- outputs: []
503
- },
504
- "execute(bytes commands,bytes[] inputs)": {
505
- name: "execute",
506
- type: "function",
507
- stateMutability: "nonpayable",
508
- inputs: [
509
- {
510
- type: "bytes",
511
- name: "commands"
512
- },
513
- {
514
- type: "bytes[]",
515
- name: "inputs"
516
- }
517
- ],
518
- outputs: []
519
- },
520
- "0x0000000000000000000000000000000000000000000000000000000074694a2b": {
521
- name: "register",
522
- type: "function",
523
- stateMutability: "nonpayable",
524
- inputs: [
525
- {
526
- type: "string",
527
- name: "name"
528
- },
529
- {
530
- type: "address",
531
- name: "owner"
532
- },
533
- {
534
- type: "uint256",
535
- name: "duration"
536
- },
537
- {
538
- type: "bytes32",
539
- name: "secret"
540
- },
541
- {
542
- type: "address",
543
- name: "resolver"
544
- },
545
- {
546
- type: "bytes[]",
547
- name: "data"
548
- },
549
- {
550
- type: "bool",
551
- name: "reverseRecord"
552
- },
553
- {
554
- type: "uint16",
555
- name: "ownerControlledFuses"
556
- }
557
- ],
558
- outputs: []
559
- },
560
- "register(string name,address owner,uint256 duration,bytes32 secret,address resolver,bytes[] data,bool reverseRecord,uint16 ownerControlledFuses)": {
561
- name: "register",
562
- type: "function",
563
- stateMutability: "nonpayable",
564
- inputs: [
565
- {
566
- type: "string",
567
- name: "name"
568
- },
569
- {
570
- type: "address",
571
- name: "owner"
572
- },
573
- {
574
- type: "uint256",
575
- name: "duration"
576
- },
577
- {
578
- type: "bytes32",
579
- name: "secret"
580
- },
581
- {
582
- type: "address",
583
- name: "resolver"
584
- },
585
- {
586
- type: "bytes[]",
587
- name: "data"
588
- },
589
- {
590
- type: "bool",
591
- name: "reverseRecord"
592
- },
593
- {
594
- type: "uint16",
595
- name: "ownerControlledFuses"
596
- }
597
- ],
598
- outputs: []
599
- },
600
- "0x00000000000000000000000000000000000000000000000000000000eb9019d4": {
601
- name: "getVotes",
602
- type: "function",
603
- stateMutability: "view",
604
- inputs: [
605
- {
606
- type: "address",
607
- name: "account"
608
- },
609
- {
610
- type: "uint256",
611
- name: "blockNumber"
612
- }
613
- ],
614
- outputs: [
615
- {
616
- type: "uint256"
617
- }
618
- ]
619
- },
620
- "getVotes(address account, uint256 blockNumber) view returns (uint256)": {
621
- name: "getVotes",
622
- type: "function",
623
- stateMutability: "view",
624
- inputs: [
625
- {
626
- type: "address",
627
- name: "account"
628
- },
629
- {
630
- type: "uint256",
631
- name: "blockNumber"
632
- }
633
- ],
634
- outputs: [
635
- {
636
- type: "uint256"
637
- }
638
- ]
639
- },
640
- "0x0000000000000000000000000000000000000000000000000000000023b872dd": {
641
- name: "transferFrom",
642
- type: "function",
643
- stateMutability: "nonpayable",
644
- inputs: [
645
- {
646
- type: "address"
647
- },
648
- {
649
- type: "address"
650
- },
651
- {
652
- type: "uint256"
653
- }
654
- ],
655
- outputs: []
656
- },
657
- "transferFrom(address,address,uint256)": {
658
- name: "transferFrom",
659
- type: "function",
660
- stateMutability: "nonpayable",
661
- inputs: [
662
- {
663
- type: "address"
664
- },
665
- {
666
- type: "address"
667
- },
668
- {
669
- type: "uint256"
670
- }
671
- ],
672
- outputs: []
673
- },
674
- "0x000000000000000000000000000000000000000000000000000000006a627842": {
675
- name: "mint",
676
- type: "function",
677
- stateMutability: "nonpayable",
678
- inputs: [
679
- {
680
- type: "address"
681
- }
682
- ],
683
- outputs: []
684
- },
685
- "mint(address)": {
686
- name: "mint",
687
- type: "function",
688
- stateMutability: "nonpayable",
689
- inputs: [
690
- {
691
- type: "address"
692
- }
693
- ],
694
- outputs: []
695
- }
696
- }, y0 = {
697
- "mint(address to, uint256 amount)": "0x0000000000000000000000000000000000000000000000000000000040c10f19",
698
- "0x0000000000000000000000000000000000000000000000000000000040c10f19": "mint(address to, uint256 amount)",
699
- "mint(address,uint256,address,uint256,address,string)": "0x00000000000000000000000000000000000000000000000000000000a836f32f",
700
- "0x00000000000000000000000000000000000000000000000000000000a836f32f": "mint(address,uint256,address,uint256,address,string)",
701
- "mintPayable(address to, uint256 amount)": "0x0000000000000000000000000000000000000000000000000000000017d304b0",
702
- "0x0000000000000000000000000000000000000000000000000000000017d304b0": "mintPayable(address to, uint256 amount)",
703
- "execute(bytes commands,bytes[] inputs)": "0x0000000000000000000000000000000000000000000000000000000024856bc3",
704
- "0x0000000000000000000000000000000000000000000000000000000024856bc3": "execute(bytes commands,bytes[] inputs)",
705
- "register(string name,address owner,uint256 duration,bytes32 secret,address resolver,bytes[] data,bool reverseRecord,uint16 ownerControlledFuses)": "0x0000000000000000000000000000000000000000000000000000000074694a2b",
706
- "0x0000000000000000000000000000000000000000000000000000000074694a2b": "register(string name,address owner,uint256 duration,bytes32 secret,address resolver,bytes[] data,bool reverseRecord,uint16 ownerControlledFuses)",
707
- "getVotes(address account, uint256 blockNumber) view returns (uint256)": "0x00000000000000000000000000000000000000000000000000000000eb9019d4",
708
- "0x00000000000000000000000000000000000000000000000000000000eb9019d4": "getVotes(address account, uint256 blockNumber) view returns (uint256)",
709
- "transferFrom(address,address,uint256)": "0x0000000000000000000000000000000000000000000000000000000023b872dd",
710
- "0x0000000000000000000000000000000000000000000000000000000023b872dd": "transferFrom(address,address,uint256)",
711
- "mint(address)": "0x000000000000000000000000000000000000000000000000000000006a627842",
712
- "0x000000000000000000000000000000000000000000000000000000006a627842": "mint(address)"
713
- }, K = {
714
- abi: p0,
715
- selectors: y0
716
- }, h = Symbol.for("@ts-pattern/matcher"), l0 = Symbol.for("@ts-pattern/isVariadic"), P = "@ts-pattern/anonymous-select-key", V = (t) => !!(t && typeof t == "object"), N = (t) => t && !!t[h], l = (t, f, e) => {
717
- if (N(t)) {
718
- const n = t[h](), { matched: a, selections: d } = n.match(f);
719
- return a && d && Object.keys(d).forEach((s) => e(s, d[s])), a;
720
- }
721
- if (V(t)) {
722
- if (!V(f)) return !1;
723
- if (Array.isArray(t)) {
724
- if (!Array.isArray(f)) return !1;
725
- let n = [], a = [], d = [];
726
- for (const s of t.keys()) {
727
- const i = t[s];
728
- N(i) && i[l0] ? d.push(i) : d.length ? a.push(i) : n.push(i);
729
- }
730
- if (d.length) {
731
- if (d.length > 1) throw new Error("Pattern error: Using `...P.array(...)` several times in a single pattern is not allowed.");
732
- if (f.length < n.length + a.length) return !1;
733
- const s = f.slice(0, n.length), i = a.length === 0 ? [] : f.slice(-a.length), r = f.slice(n.length, a.length === 0 ? 1 / 0 : -a.length);
734
- return n.every((o, m) => l(o, s[m], e)) && a.every((o, m) => l(o, i[m], e)) && (d.length === 0 || l(d[0], r, e));
735
- }
736
- return t.length === f.length && t.every((s, i) => l(s, f[i], e));
737
- }
738
- return Reflect.ownKeys(t).every((n) => {
739
- const a = t[n];
740
- return (n in f || N(d = a) && d[h]().matcherType === "optional") && l(a, f[n], e);
741
- var d;
742
- });
743
- }
744
- return Object.is(f, t);
745
- }, A = (t) => {
746
- var f, e, n;
747
- return V(t) ? N(t) ? (f = (e = (n = t[h]()).getSelectionKeys) == null ? void 0 : e.call(n)) != null ? f : [] : Array.isArray(t) ? C(t, A) : C(Object.values(t), A) : [];
748
- }, C = (t, f) => t.reduce((e, n) => e.concat(f(n)), []);
749
- function u(t) {
750
- return Object.assign(t, { optional: () => m0(t), and: (f) => c(t, f), or: (f) => h0(t, f), select: (f) => f === void 0 ? O(t) : O(f, t) });
751
- }
752
- function m0(t) {
753
- return u({ [h]: () => ({ match: (f) => {
754
- let e = {};
755
- const n = (a, d) => {
756
- e[a] = d;
757
- };
758
- return f === void 0 ? (A(t).forEach((a) => n(a, void 0)), { matched: !0, selections: e }) : { matched: l(t, f, n), selections: e };
759
- }, getSelectionKeys: () => A(t), matcherType: "optional" }) });
760
- }
761
- function c(...t) {
762
- return u({ [h]: () => ({ match: (f) => {
763
- let e = {};
764
- const n = (a, d) => {
765
- e[a] = d;
766
- };
767
- return { matched: t.every((a) => l(a, f, n)), selections: e };
768
- }, getSelectionKeys: () => C(t, A), matcherType: "and" }) });
769
- }
770
- function h0(...t) {
771
- return u({ [h]: () => ({ match: (f) => {
772
- let e = {};
773
- const n = (a, d) => {
774
- e[a] = d;
775
- };
776
- return C(t, A).forEach((a) => n(a, void 0)), { matched: t.some((a) => l(a, f, n)), selections: e };
777
- }, getSelectionKeys: () => C(t, A), matcherType: "or" }) });
778
- }
779
- function b(t) {
780
- return { [h]: () => ({ match: (f) => ({ matched: !!t(f) }) }) };
781
- }
782
- function O(...t) {
783
- const f = typeof t[0] == "string" ? t[0] : void 0, e = t.length === 2 ? t[1] : typeof t[0] == "string" ? void 0 : t[0];
784
- return u({ [h]: () => ({ match: (n) => {
785
- let a = { [f ?? P]: n };
786
- return { matched: e === void 0 || l(e, n, (d, s) => {
787
- a[d] = s;
788
- }), selections: a };
789
- }, getSelectionKeys: () => [f ?? P].concat(e === void 0 ? [] : A(e)) }) });
790
- }
791
- function p(t) {
792
- return typeof t == "number";
793
- }
794
- function g(t) {
795
- return typeof t == "string";
796
- }
797
- function x(t) {
798
- return typeof t == "bigint";
799
- }
800
- u(b(function(t) {
801
- return !0;
802
- }));
803
- const w = (t) => Object.assign(u(t), { startsWith: (f) => {
804
- return w(c(t, (e = f, b((n) => g(n) && n.startsWith(e)))));
805
- var e;
806
- }, endsWith: (f) => {
807
- return w(c(t, (e = f, b((n) => g(n) && n.endsWith(e)))));
808
- var e;
809
- }, minLength: (f) => w(c(t, ((e) => b((n) => g(n) && n.length >= e))(f))), length: (f) => w(c(t, ((e) => b((n) => g(n) && n.length === e))(f))), maxLength: (f) => w(c(t, ((e) => b((n) => g(n) && n.length <= e))(f))), includes: (f) => {
810
- return w(c(t, (e = f, b((n) => g(n) && n.includes(e)))));
811
- var e;
812
- }, regex: (f) => {
813
- return w(c(t, (e = f, b((n) => g(n) && !!n.match(e)))));
814
- var e;
815
- } });
816
- w(b(g));
817
- const y = (t) => Object.assign(u(t), { between: (f, e) => y(c(t, ((n, a) => b((d) => p(d) && n <= d && a >= d))(f, e))), lt: (f) => y(c(t, ((e) => b((n) => p(n) && n < e))(f))), gt: (f) => y(c(t, ((e) => b((n) => p(n) && n > e))(f))), lte: (f) => y(c(t, ((e) => b((n) => p(n) && n <= e))(f))), gte: (f) => y(c(t, ((e) => b((n) => p(n) && n >= e))(f))), int: () => y(c(t, b((f) => p(f) && Number.isInteger(f)))), finite: () => y(c(t, b((f) => p(f) && Number.isFinite(f)))), positive: () => y(c(t, b((f) => p(f) && f > 0))), negative: () => y(c(t, b((f) => p(f) && f < 0))) });
818
- y(b(p));
819
- const v = (t) => Object.assign(u(t), { between: (f, e) => v(c(t, ((n, a) => b((d) => x(d) && n <= d && a >= d))(f, e))), lt: (f) => v(c(t, ((e) => b((n) => x(n) && n < e))(f))), gt: (f) => v(c(t, ((e) => b((n) => x(n) && n > e))(f))), lte: (f) => v(c(t, ((e) => b((n) => x(n) && n <= e))(f))), gte: (f) => v(c(t, ((e) => b((n) => x(n) && n >= e))(f))), positive: () => v(c(t, b((f) => x(f) && f > 0))), negative: () => v(c(t, b((f) => x(f) && f < 0))) });
820
- v(b(x));
821
- u(b(function(t) {
822
- return typeof t == "boolean";
823
- }));
824
- u(b(function(t) {
825
- return typeof t == "symbol";
826
- }));
827
- u(b(function(t) {
828
- return t == null;
829
- }));
830
- u(b(function(t) {
831
- return t != null;
832
- }));
833
- class g0 extends Error {
834
- constructor(f) {
835
- let e;
836
- try {
837
- e = JSON.stringify(f);
838
- } catch {
839
- e = f;
840
- }
841
- super(`Pattern matching error: no pattern matches value ${e}`), this.input = void 0, this.input = f;
842
- }
843
- }
844
- const B = { matched: !1, value: void 0 };
845
- function W(t) {
846
- return new R(t, B);
847
- }
848
- class R {
849
- constructor(f, e) {
850
- this.input = void 0, this.state = void 0, this.input = f, this.state = e;
851
- }
852
- with(...f) {
853
- if (this.state.matched) return this;
854
- const e = f[f.length - 1], n = [f[0]];
855
- let a;
856
- f.length === 3 && typeof f[1] == "function" ? a = f[1] : f.length > 2 && n.push(...f.slice(1, f.length - 1));
857
- let d = !1, s = {};
858
- const i = (o, m) => {
859
- d = !0, s[o] = m;
860
- }, r = !n.some((o) => l(o, this.input, i)) || a && !a(this.input) ? B : { matched: !0, value: e(d ? P in s ? s[P] : s : this.input, this.input) };
861
- return new R(this.input, r);
862
- }
863
- when(f, e) {
864
- if (this.state.matched) return this;
865
- const n = !!f(this.input);
866
- return new R(this.input, n ? { matched: !0, value: e(this.input, this.input) } : B);
867
- }
868
- otherwise(f) {
869
- return this.state.matched ? this.state.value : f(this.input);
870
- }
871
- exhaustive() {
872
- if (this.state.matched) return this.state.value;
873
- throw new g0(this.input);
874
- }
875
- run() {
876
- return this.exhaustive();
877
- }
878
- returnType() {
879
- return this;
880
- }
881
- }
882
- var x0 = /* @__PURE__ */ ((t) => (t[t.EQUAL = 0] = "EQUAL", t[t.NOT_EQUAL = 1] = "NOT_EQUAL", t[t.GREATER_THAN = 2] = "GREATER_THAN", t[t.LESS_THAN = 3] = "LESS_THAN", t[t.CONTAINS = 4] = "CONTAINS", t[t.REGEX = 5] = "REGEX", t))(x0 || {}), w0 = /* @__PURE__ */ ((t) => (t[t.UINT = 0] = "UINT", t[t.ADDRESS = 1] = "ADDRESS", t[t.BYTES = 2] = "BYTES", t[t.STRING = 3] = "STRING", t))(w0 || {}), v0 = /* @__PURE__ */ ((t) => (t[t.EVENT = 0] = "EVENT", t[t.FUNC = 1] = "FUNC", t))(v0 || {});
883
- function A0(t) {
884
- return Array.isArray(t.actionSteps);
885
- }
886
- const D = class D extends n0 {
887
- constructor() {
888
- super(...arguments), this.abi = _;
889
- }
890
- /**
891
- * Gets a specific action event by index
892
- *
893
- * @public
894
- * @async
895
- * @param {number} index The index of the action event to retrieve
896
- * @param {?ReadEventActionParams<'getActionStep'>} [params]
897
- * @returns {Promise<ActionStep>}
898
- */
899
- async getActionStep(f, e) {
900
- return (await this.getActionSteps(e)).at(f);
901
- }
902
- /**
903
- * Gets all action events
904
- *
905
- * @public
906
- * @async
907
- * @param {?ReadEventActionParams<'getActionSteps'>} [params]
908
- * @returns {Promise<ActionStep[]>}
909
- */
910
- async getActionSteps(f) {
911
- const e = await Q(this._config, {
912
- address: this.assertValidAddress(),
913
- ...this.optionallyAttachAccount(),
914
- // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
915
- ...f
916
- });
917
- return I0(e.map(z));
918
- }
919
- /**
920
- * Gets the count of action events
921
- *
922
- * @public
923
- * @async
924
- * @param {?ReadEventActionParams<'getActionStepsCount'>} [params]
925
- * @returns {Promise<bigint>}
926
- */
927
- async getActionStepsCount(f) {
928
- return (await this.getActionSteps(f)).length;
929
- }
930
- /**
931
- * Retrieves the payload describing how claimants can be identified from logs or function calls.
932
- *
933
- * @public
934
- * @async
935
- * @param {?ReadEventActionParams<'getActionClaimant'>} [params]
936
- * @returns {Promise<ActionClaimant>}
937
- */
938
- async getActionClaimant(f) {
939
- const e = await X(this._config, {
940
- address: this.assertValidAddress(),
941
- ...this.optionallyAttachAccount(),
942
- ...f
943
- });
944
- return z(e);
945
- }
946
- /**
947
- * Executes a prepared event action
948
- *
949
- * @public
950
- * @async
951
- * @param {Hex} data
952
- * @param {?WriteParams} [params]
953
- * @returns {Promise<readonly [boolean, `0x${string}`]>}
954
- */
955
- async execute(f, e) {
956
- return await this.awaitResult(this.executeRaw(f, e));
957
- }
958
- /**
959
- * Executes a prepared event action
960
- *
961
- * @public
962
- * @async
963
- * @param {Hex} data
964
- * @param {?WriteParams} [params]
965
- * @returns {Promise<{ hash: `0x${string}`; result: readonly [boolean, `0x${string}`]; }>}
966
- */
967
- async executeRaw(f, e) {
968
- const { request: n, result: a } = await q(this._config, {
969
- address: this.assertValidAddress(),
970
- ...this.optionallyAttachAccount(),
971
- // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
972
- ...e,
973
- args: [f]
974
- });
975
- return { hash: await J(this._config, n), result: a };
976
- }
977
- /**
978
- * Derives the action claimant address from a transaction based on the provided ActionClaimant configuration.
979
- * This method supports both event-based and function-based claimant derivation.
980
- *
981
- ** @example
982
- * // Example usage
983
- * const eventAction = boost.action as EventAction
984
- * const claimant = await eventAction.getActionClaimant() // {
985
- * signatureType: SignatureType.EVENT,
986
- * signature: '0x1234...',
987
- * fieldIndex: 2,
988
- * targetContract: '0xabcd...',
989
- * chainid: 1
990
- * };
991
- * const params: ValidateActionStepParams = {
992
- * hash: '0x5678...',
993
- * chainId: 1,
994
- * knownSignatures?: {
995
- * '0x1234...': {}
996
- * }
997
- * };
998
- * const claimantAddress = await eventAction.deriveActionClaimantFromTransaction(claimant, params);
999
- *
1000
- * @param {ActionClaimant} claimant - The configuration specifying how to derive the claimant.
1001
- * @param {ValidateActionStepParams} params - Parameters for validation, including transaction hash, known signatures, logs, and chain ID.
1002
- * @returns {Promise<Address | undefined>} The derived claimant address if found, undefined otherwise.
1003
- * @throws {ValidationAbiMissingError} If the ABI for the specified signature is not found.
1004
- * @throws {FunctionDataDecodeError} If there's an error decoding function data (for function-based derivation).
1005
- */
1006
- async deriveActionClaimantFromTransaction(f, e) {
1007
- const n = f.signature;
1008
- if (f.signatureType === 0) {
1009
- let a;
1010
- if (e.abiItem ? a = e.abiItem : a = {
1011
- ...H.abi,
1012
- ...e.knownSignatures || {}
1013
- }[n], !a)
1014
- throw new E(n);
1015
- let d;
1016
- if ("logs" in e) {
1017
- for (let r of e.logs) {
1018
- if (!I(r.address, f.targetContract)) continue;
1019
- let o = this.validateClaimantAgainstArgs(
1020
- f,
1021
- r
1022
- );
1023
- o && (d = o);
1024
- }
1025
- return d;
1026
- }
1027
- const i = (await Y(this._config, e)).logs.map((r) => {
1028
- const { eventName: o, args: m } = k({
1029
- abi: [a],
1030
- data: r.data,
1031
- topics: r.topics
1032
- });
1033
- return { ...r, eventName: o, args: m };
1034
- });
1035
- for (let r of i) {
1036
- if (!I(r.address, f.targetContract)) continue;
1037
- let o = this.validateClaimantAgainstArgs(f, r);
1038
- o && (d = o);
1039
- }
1040
- return d;
1041
- }
1042
- if (f.signatureType === 1 && "hash" in e && "chainId" in e) {
1043
- const a = await Z(this._config, {
1044
- hash: e.hash
1045
- });
1046
- if (!I(a.to, f.targetContract)) return;
1047
- let d;
1048
- if (e.abiItem ? d = e.abiItem : d = {
1049
- ...K.abi,
1050
- ...e.knownSignatures || {}
1051
- }[n], !d)
1052
- throw new E(f.signature);
1053
- let s;
1054
- try {
1055
- s = L({
1056
- abi: [d],
1057
- data: a.input
1058
- });
1059
- } catch (i) {
1060
- throw new U([d], i);
1061
- }
1062
- return this.validateClaimantAgainstArgs(f, s);
1063
- }
1064
- }
1065
- /**
1066
- * Validates the action claimant against the arguments of a log or function data.
1067
- *
1068
- * @param {ActionClaimant} claimant - The action claimant to validate.
1069
- * @param {Object} [logOrFnData] - Optional object containing the arguments to validate against.
1070
- * @param {Array<any> | readonly unknown[] | Record<string, unknown>} [logOrFnData.args] - The arguments from the log or function data.
1071
- * @returns {Address | undefined} The validated address if found and valid, otherwise undefined.
1072
- */
1073
- validateClaimantAgainstArgs(f, e) {
1074
- if (!e || !Array.isArray(e == null ? void 0 : e.args) || (e == null ? void 0 : e.args.length) <= f.fieldIndex)
1075
- return;
1076
- const n = e.args.at(f.fieldIndex);
1077
- if (f0(n)) return n;
1078
- }
1079
- /**
1080
- * Retrieves action steps, and uses them to validate against, and optionally fetch logs that match the step's signature.
1081
- * If logs are provided in the optional `params` argument, then those logs will be used instead of fetched with the configured client.
1082
- *
1083
- * @public
1084
- * @async
1085
- * @param ValidateActionStepParams params
1086
- * @returns {Promise<boolean>}
1087
- */
1088
- async validateActionSteps(f) {
1089
- const e = await this.getActionSteps();
1090
- for (const n of e)
1091
- if (!await this.isActionStepValid(n, f))
1092
- return !1;
1093
- return !0;
1094
- }
1095
- /**
1096
- * Validates a single action step with a given criteria against logs or function calls.
1097
- * If logs are provided in the optional `params` argument, then those logs will be used instead of being fetched with the configured client.
1098
- * For functions a hash is required.
1099
- *
1100
- * @public
1101
- * @async
1102
- * @param {ActionStep} actionStep - The action step to validate. Can be a function of event step.
1103
- * @param {ValidateActionStepParams} params - Additional parameters for validation, including hash, known events, logs, and chain ID.
1104
- * @returns {Promise<boolean>}
1105
- */
1106
- async isActionStepValid(f, e) {
1107
- if (f.signatureType === 0) {
1108
- const n = f.signature;
1109
- let a;
1110
- if (e.abiItem ? a = e.abiItem : a = {
1111
- ...H.abi,
1112
- ...e.knownSignatures || {}
1113
- }[n], !a)
1114
- throw new E(n);
1115
- if (this.isArraylikeIndexed(f, a))
1116
- throw new a0(
1117
- f.actionParameter.fieldIndex,
1118
- a
1119
- );
1120
- if ("logs" in e)
1121
- return this.isActionEventValid(f, e.logs);
1122
- const i = (await this._config.getClient({
1123
- chainId: e.chainId
1124
- }).getTransactionReceipt({
1125
- hash: e.hash
1126
- })).logs.map((r) => {
1127
- const { eventName: o, args: m } = k({
1128
- abi: [a],
1129
- data: r.data,
1130
- topics: r.topics
1131
- });
1132
- return { ...r, eventName: o, args: m };
1133
- });
1134
- return this.isActionEventValid(f, i);
1135
- }
1136
- if (f.signatureType === 1 && "hash" in e && "chainId" in e) {
1137
- const a = await this._config.getClient({
1138
- chainId: e.chainId
1139
- }).getTransaction({
1140
- hash: e.hash
1141
- });
1142
- return this.isActionFunctionValid(f, a, e);
1143
- }
1144
- return !1;
1145
- }
1146
- /**
1147
- * Validates a single action event with a given criteria against logs.
1148
- * If logs are provided in the optional `params` argument, then those logs will be used instead of being fetched with the configured client.
1149
- *
1150
- * @public
1151
- * @async
1152
- * @param {ActionStep} actionStep - The action step containing the event to validate.
1153
- * @param {EventLogs} logs - Event logs to validate the given step against
1154
- * @returns {Promise<boolean>} Resolves to true if the action event is valid, throws if input is invalid, otherwise false.
1155
- */
1156
- isActionEventValid(f, e) {
1157
- const n = f.actionParameter;
1158
- if (!e.length) return !1;
1159
- for (let a of e)
1160
- if (this.validateLogAgainstCriteria(n, a))
1161
- return !0;
1162
- return !1;
1163
- }
1164
- /**
1165
- * Validates a single action function with a given criteria against the transaction input.
1166
- *
1167
- * @public
1168
- * @param {ActionStep} actionStep - The action step containing the function to validate.
1169
- * @param {Transaction} transaction - The transaction that will be validated against.
1170
- * @param {Object} [params] - Optional parameters for validation.
1171
- * @param {AbiItem} [params.abiItem] - The ABI item for the function, if known.
1172
- * @param {Record<Hex, AbiEvent | AbiFunction>} [params.knownSignatures] - A record of known signatures.
1173
- * @returns {boolean} Returns true if the action function is valid, false otherwise.
1174
- * @throws {ValidationAbiMissingError} Throws if the ABI for the function signature is not found.
1175
- * @throws {FunctionDataDecodeError} Throws if there's an error decoding the function data.
1176
- */
1177
- isActionFunctionValid(f, e, n) {
1178
- const a = f.actionParameter;
1179
- let d = f.signature, s;
1180
- if (n != null && n.abiItem ? s = n == null ? void 0 : n.abiItem : s = {
1181
- ...K.abi,
1182
- ...(n == null ? void 0 : n.knownSignatures) || {}
1183
- }[d], !s)
1184
- throw new E(d);
1185
- let i;
1186
- try {
1187
- i = L({
1188
- abi: [s],
1189
- data: e.input
1190
- });
1191
- } catch (o) {
1192
- throw new U([s], o);
1193
- }
1194
- const r = i.args;
1195
- return !(!r || !i || !this.validateFunctionAgainstCriteria(
1196
- a,
1197
- r
1198
- ));
1199
- }
1200
- /**
1201
- * Validates a field against a given criteria.
1202
- *
1203
- * @param {Criteria} criteria - The criteria to validate against.
1204
- * @param {string | bigint | Hex} fieldValue - The field value to validate.
1205
- * @param {Object} input - Additional context for validation.
1206
- * @param {EventLogs[0]} [input.log] - The event log, if validating an event.
1207
- * @param {readonly (string | bigint)[]} [input.decodedArgs] - The decoded function arguments, if validating a function call.
1208
- * @returns {Promise<boolean>} - Returns true if the field passes the criteria, false otherwise.
1209
- */
1210
- validateFieldAgainstCriteria(f, e, n) {
1211
- if (f.filterType === 0 && f.fieldType === 2 && f.fieldIndex === 255)
1212
- return !0;
1213
- switch (f.filterType) {
1214
- case 0:
1215
- return W(f.fieldType).with(
1216
- 1,
1217
- () => I(f.filterData, e)
1218
- ).with(
1219
- 0,
1220
- () => BigInt(e) === BigInt(f.filterData)
1221
- ).with(
1222
- 3,
1223
- () => e === S(f.filterData, "string")
1224
- ).otherwise(() => e === f.filterData);
1225
- case 1:
1226
- return W(f.fieldType).with(
1227
- 1,
1228
- () => !I(f.filterData, e)
1229
- ).with(
1230
- 0,
1231
- () => BigInt(e) !== BigInt(f.filterData)
1232
- ).with(
1233
- 3,
1234
- () => e !== S(f.filterData, "string")
1235
- ).otherwise(() => e !== f.filterData);
1236
- case 2:
1237
- if (f.fieldType === 0)
1238
- return BigInt(e) > BigInt(f.filterData);
1239
- throw new G({
1240
- ...n,
1241
- criteria: f,
1242
- fieldValue: e
1243
- });
1244
- case 3:
1245
- if (f.fieldType === 0)
1246
- return BigInt(e) < BigInt(f.filterData);
1247
- throw new G({
1248
- ...n,
1249
- criteria: f,
1250
- fieldValue: e
1251
- });
1252
- case 4:
1253
- if (f.fieldType === 2 || f.fieldType === 3) {
1254
- let a;
1255
- return f.fieldType === 3 ? a = S(f.filterData, "string") : a = f.filterData.slice(2), e.includes(a);
1256
- }
1257
- throw new F({
1258
- ...n,
1259
- criteria: f,
1260
- fieldValue: e
1261
- });
1262
- case 5:
1263
- if (typeof e != "string")
1264
- throw new F({
1265
- ...n,
1266
- criteria: f,
1267
- fieldValue: e
1268
- });
1269
- if (f.fieldType === 3) {
1270
- const a = S(f.filterData, "string");
1271
- return new RegExp(a).test(e);
1272
- }
1273
- default:
1274
- throw new d0({
1275
- ...n,
1276
- criteria: f,
1277
- fieldValue: e
1278
- });
1279
- }
1280
- }
1281
- /**
1282
- * Validates a {@link Log} against a given criteria.
1283
- * If the criteria's fieldIndex is 255, it is reserved for anyValidation
1284
- *
1285
- * @param {Criteria} criteria - The criteria to validate against.
1286
- * @param {Log} log - The Viem event log.
1287
- * @returns {boolean} - Returns true if the log passes the criteria, false otherwise.
1288
- */
1289
- validateLogAgainstCriteria(f, e) {
1290
- if (!Array.isArray(e.args) || e.args.length <= f.fieldIndex && f.fieldIndex !== 255)
1291
- throw new s0({
1292
- log: e,
1293
- criteria: f,
1294
- fieldValue: void 0
1295
- });
1296
- const n = f.fieldIndex === 255 ? M : e.args.at(f.fieldIndex);
1297
- if (n === void 0)
1298
- throw new j({ log: e, criteria: f, fieldValue: n });
1299
- return this.validateFieldAgainstCriteria(f, n, { log: e });
1300
- }
1301
- /**
1302
- * Validates a function's decoded arguments against a given criteria.
1303
- * If the criteria's fieldIndex is 255, it is reserved for anyValidation
1304
- *
1305
- * @param {Criteria} criteria - The criteria to validate against.
1306
- * @param {unknown[]} decodedArgs - The decoded arguments of the function call.
1307
- * @returns {Promise<boolean>} - Returns true if the decoded argument passes the criteria, false otherwise.
1308
- */
1309
- validateFunctionAgainstCriteria(f, e) {
1310
- const n = f.fieldIndex === 255 ? M : e[f.fieldIndex];
1311
- if (n === void 0)
1312
- throw new j({
1313
- criteria: f,
1314
- fieldValue: n
1315
- });
1316
- return this.validateFieldAgainstCriteria(f, n, {
1317
- decodedArgs: e
1318
- });
1319
- }
1320
- /**
1321
- * @inheritdoc
1322
- *
1323
- * @public
1324
- * @param {?EventActionPayload} [_payload]
1325
- * @param {?DeployableOptions} [_options]
1326
- * @returns {GenericDeployableParams}
1327
- */
1328
- buildParameters(f, e) {
1329
- const [n, a] = this.validateDeploymentConfig(
1330
- f,
1331
- e
1332
- );
1333
- let d;
1334
- if (A0(n)) {
1335
- let s = n.actionSteps.filter((r) => !!r);
1336
- if (s.length === 0)
1337
- throw new b0();
1338
- if (s.length > 4)
1339
- throw new i0();
1340
- let i = Array.from({ length: 4 }, (r, o) => s.at(o) || s.at(-1));
1341
- d = {
1342
- actionClaimant: n.actionClaimant,
1343
- actionStepOne: i[0],
1344
- actionStepTwo: i[1],
1345
- actionStepThree: i[2],
1346
- actionStepFour: i[3]
1347
- };
1348
- } else
1349
- d = n;
1350
- return {
1351
- abi: _,
1352
- bytecode: c0,
1353
- args: [T0(d)],
1354
- ...this.optionallyAttachAccount(a.account)
1355
- };
1356
- }
1357
- isArraylikeIndexed(f, e) {
1358
- var n;
1359
- return !!((f.actionParameter.fieldType === 3 || f.actionParameter.fieldType === 2) && ((n = e.inputs[f.actionParameter.fieldIndex]) != null && n.indexed));
1360
- }
1361
- };
1362
- D.bases = {
1363
- ...t0
1364
- }, D.registryType = r0.ACTION;
1365
- let $ = D;
1366
- function I0(t) {
1367
- const f = [], e = {};
1368
- for (let n of t) {
1369
- const a = JSON.stringify(n);
1370
- e[a] || (f.push(n), e[a] = !0);
1371
- }
1372
- return f;
1373
- }
1374
- function T(t) {
1375
- return {
1376
- ...t,
1377
- chainid: BigInt(t.chainid)
1378
- };
1379
- }
1380
- function z(t) {
1381
- if (t.chainid > BigInt(Number.MAX_SAFE_INTEGER))
1382
- throw new Error("Chain ID exceeds max safe integer");
1383
- return {
1384
- ...t,
1385
- chainid: Number(t.chainid)
1386
- };
1387
- }
1388
- function T0({
1389
- actionClaimant: t,
1390
- actionStepOne: f,
1391
- actionStepTwo: e,
1392
- actionStepThree: n,
1393
- actionStepFour: a
1394
- }) {
1395
- return e0(
1396
- [
1397
- {
1398
- type: "tuple",
1399
- name: "initPayload",
1400
- components: [
1401
- {
1402
- type: "tuple",
1403
- name: "actionClaimant",
1404
- components: [
1405
- { type: "uint8", name: "signatureType" },
1406
- { type: "bytes32", name: "signature" },
1407
- { type: "uint8", name: "fieldIndex" },
1408
- { type: "address", name: "targetContract" },
1409
- { type: "uint256", name: "chainid" }
1410
- ]
1411
- },
1412
- {
1413
- type: "tuple",
1414
- name: "actionStepOne",
1415
- components: [
1416
- { type: "bytes32", name: "signature" },
1417
- { type: "uint8", name: "signatureType" },
1418
- { type: "uint8", name: "actionType" },
1419
- { type: "address", name: "targetContract" },
1420
- { type: "uint256", name: "chainid" },
1421
- {
1422
- type: "tuple",
1423
- name: "actionParameter",
1424
- components: [
1425
- { type: "uint8", name: "filterType" },
1426
- { type: "uint8", name: "fieldType" },
1427
- { type: "uint8", name: "fieldIndex" },
1428
- { type: "bytes", name: "filterData" }
1429
- ]
1430
- }
1431
- ]
1432
- },
1433
- {
1434
- type: "tuple",
1435
- name: "actionStepTwo",
1436
- components: [
1437
- { type: "bytes32", name: "signature" },
1438
- { type: "uint8", name: "signatureType" },
1439
- { type: "uint8", name: "actionType" },
1440
- { type: "address", name: "targetContract" },
1441
- { type: "uint256", name: "chainid" },
1442
- {
1443
- type: "tuple",
1444
- name: "actionParameter",
1445
- components: [
1446
- { type: "uint8", name: "filterType" },
1447
- { type: "uint8", name: "fieldType" },
1448
- { type: "uint8", name: "fieldIndex" },
1449
- { type: "bytes", name: "filterData" }
1450
- ]
1451
- }
1452
- ]
1453
- },
1454
- {
1455
- type: "tuple",
1456
- name: "actionStepThree",
1457
- components: [
1458
- { type: "bytes32", name: "signature" },
1459
- { type: "uint8", name: "signatureType" },
1460
- { type: "uint8", name: "actionType" },
1461
- { type: "address", name: "targetContract" },
1462
- { type: "uint256", name: "chainid" },
1463
- {
1464
- type: "tuple",
1465
- name: "actionParameter",
1466
- components: [
1467
- { type: "uint8", name: "filterType" },
1468
- { type: "uint8", name: "fieldType" },
1469
- { type: "uint8", name: "fieldIndex" },
1470
- { type: "bytes", name: "filterData" }
1471
- ]
1472
- }
1473
- ]
1474
- },
1475
- {
1476
- type: "tuple",
1477
- name: "actionStepFour",
1478
- components: [
1479
- { type: "bytes32", name: "signature" },
1480
- { type: "uint8", name: "signatureType" },
1481
- { type: "uint8", name: "actionType" },
1482
- { type: "address", name: "targetContract" },
1483
- { type: "uint256", name: "chainid" },
1484
- {
1485
- type: "tuple",
1486
- name: "actionParameter",
1487
- components: [
1488
- { type: "uint8", name: "filterType" },
1489
- { type: "uint8", name: "fieldType" },
1490
- { type: "uint8", name: "fieldIndex" },
1491
- { type: "bytes", name: "filterData" }
1492
- ]
1493
- }
1494
- ]
1495
- }
1496
- ]
1497
- }
1498
- ],
1499
- [
1500
- {
1501
- actionClaimant: T(t),
1502
- actionStepOne: {
1503
- ...T(f),
1504
- actionType: f.actionType || 0
1505
- },
1506
- actionStepTwo: {
1507
- ...T(e),
1508
- actionType: e.actionType || 0
1509
- },
1510
- actionStepThree: {
1511
- ...T(n),
1512
- actionType: n.actionType || 0
1513
- },
1514
- actionStepFour: {
1515
- ...T(a),
1516
- actionType: a.actionType || 0
1517
- }
1518
- }
1519
- ]
1520
- );
1521
- }
1522
- function M0() {
1523
- return {
1524
- filterType: 0,
1525
- fieldType: 2,
1526
- fieldIndex: 255,
1527
- filterData: M
1528
- };
1529
- }
1530
- export {
1531
- $ as E,
1532
- x0 as F,
1533
- w0 as P,
1534
- v0 as S,
1535
- M0 as a,
1536
- H as e,
1537
- K as f,
1538
- A0 as i,
1539
- T0 as p
1540
- };
1541
- //# sourceMappingURL=EventAction-C_-hJXWm.js.map