@boostxyz/sdk 7.6.0 → 7.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/dist/Actions/EventAction.cjs +1 -1
  2. package/dist/Actions/EventAction.cjs.map +1 -1
  3. package/dist/Actions/EventAction.d.ts +21 -0
  4. package/dist/Actions/EventAction.d.ts.map +1 -1
  5. package/dist/Actions/EventAction.js +133 -109
  6. package/dist/Actions/EventAction.js.map +1 -1
  7. package/dist/{AllowList-BYYm3b9d.cjs → AllowList-BJ9HQGFs.cjs} +2 -2
  8. package/dist/{AllowList-BYYm3b9d.cjs.map → AllowList-BJ9HQGFs.cjs.map} +1 -1
  9. package/dist/{AllowList-D_K4S6jV.js → AllowList-DiU7g4Hs.js} +3 -3
  10. package/dist/{AllowList-D_K4S6jV.js.map → AllowList-DiU7g4Hs.js.map} +1 -1
  11. package/dist/AllowLists/AllowList.cjs +1 -1
  12. package/dist/AllowLists/AllowList.js +2 -2
  13. package/dist/AllowLists/SimpleAllowList.cjs +1 -1
  14. package/dist/AllowLists/SimpleAllowList.js +1 -1
  15. package/dist/AllowLists/SimpleDenyList.cjs +1 -1
  16. package/dist/AllowLists/SimpleDenyList.js +2 -2
  17. package/dist/BoostCore.cjs +1 -1
  18. package/dist/BoostCore.js +6 -6
  19. package/dist/BoostRegistry.cjs +1 -1
  20. package/dist/BoostRegistry.js +1 -1
  21. package/dist/{Budget-DwVY-GGt.cjs → Budget-D_zhh1rh.cjs} +2 -2
  22. package/dist/{Budget-DwVY-GGt.cjs.map → Budget-D_zhh1rh.cjs.map} +1 -1
  23. package/dist/{Budget-DZlb1py_.js → Budget-YIhV65cc.js} +2 -2
  24. package/dist/{Budget-DZlb1py_.js.map → Budget-YIhV65cc.js.map} +1 -1
  25. package/dist/Budgets/Budget.cjs +1 -1
  26. package/dist/Budgets/Budget.js +1 -1
  27. package/dist/Budgets/ManagedBudget.cjs +1 -1
  28. package/dist/Budgets/ManagedBudget.js +1 -1
  29. package/dist/{Incentive-BKZisyIm.js → Incentive-CeoEla-t.js} +2 -2
  30. package/dist/{Incentive-BKZisyIm.js.map → Incentive-CeoEla-t.js.map} +1 -1
  31. package/dist/{Incentive-Ctfodrh5.cjs → Incentive-CrnbYN_a.cjs} +2 -2
  32. package/dist/{Incentive-Ctfodrh5.cjs.map → Incentive-CrnbYN_a.cjs.map} +1 -1
  33. package/dist/Incentives/AllowListIncentive.cjs +1 -1
  34. package/dist/Incentives/AllowListIncentive.js +2 -2
  35. package/dist/Incentives/CGDAIncentive.cjs +1 -1
  36. package/dist/Incentives/CGDAIncentive.js +1 -1
  37. package/dist/Incentives/ERC20Incentive.cjs +1 -1
  38. package/dist/Incentives/ERC20Incentive.js +1 -1
  39. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.cjs +1 -1
  40. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.js +1 -1
  41. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.cjs +1 -1
  42. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.js +1 -1
  43. package/dist/Incentives/ERC20VariableCriteriaIncentive.cjs +1 -1
  44. package/dist/Incentives/ERC20VariableCriteriaIncentive.js +1 -1
  45. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.cjs +1 -1
  46. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.js +1 -1
  47. package/dist/Incentives/ERC20VariableIncentive.cjs +1 -1
  48. package/dist/Incentives/ERC20VariableIncentive.js +1 -1
  49. package/dist/Incentives/Incentive.cjs +1 -1
  50. package/dist/Incentives/Incentive.js +1 -1
  51. package/dist/Incentives/PointsIncentive.cjs +1 -1
  52. package/dist/Incentives/PointsIncentive.js +1 -1
  53. package/dist/{SimpleDenyList-Bv2mSQJO.cjs → SimpleDenyList-7-VTqfsH.cjs} +2 -2
  54. package/dist/{SimpleDenyList-Bv2mSQJO.cjs.map → SimpleDenyList-7-VTqfsH.cjs.map} +1 -1
  55. package/dist/{SimpleDenyList-tEOqSTnD.js → SimpleDenyList-Dr03aOeP.js} +2 -2
  56. package/dist/{SimpleDenyList-tEOqSTnD.js.map → SimpleDenyList-Dr03aOeP.js.map} +1 -1
  57. package/dist/{Validator-ztOItKpP.js → Validator-DgvB9wge.js} +2 -2
  58. package/dist/{Validator-ztOItKpP.js.map → Validator-DgvB9wge.js.map} +1 -1
  59. package/dist/{Validator-CUGwkN06.cjs → Validator-rYW7PMwW.cjs} +2 -2
  60. package/dist/{Validator-CUGwkN06.cjs.map → Validator-rYW7PMwW.cjs.map} +1 -1
  61. package/dist/Validators/LimitedSignerValidator.cjs +1 -1
  62. package/dist/Validators/LimitedSignerValidator.js +1 -1
  63. package/dist/Validators/SignerValidator.cjs +1 -1
  64. package/dist/Validators/SignerValidator.js +1 -1
  65. package/dist/Validators/Validator.cjs +1 -1
  66. package/dist/Validators/Validator.js +1 -1
  67. package/dist/deployments-BjBgk03b.cjs +2 -0
  68. package/dist/deployments-BjBgk03b.cjs.map +1 -0
  69. package/dist/{deployments-EFoHkvCp.js → deployments-CHQ30INq.js} +31 -9
  70. package/dist/deployments-CHQ30INq.js.map +1 -0
  71. package/dist/deployments.json +23 -0
  72. package/dist/index.cjs +1 -1
  73. package/dist/index.js +185 -182
  74. package/package.json +1 -1
  75. package/src/Actions/EventAction.test.ts +161 -1
  76. package/src/Actions/EventAction.ts +52 -5
  77. package/dist/deployments-EFoHkvCp.js.map +0 -1
  78. package/dist/deployments-xekPSd2S.cjs +0 -2
  79. package/dist/deployments-xekPSd2S.cjs.map +0 -1
@@ -1,2 +1,2 @@
1
- "use strict";const a=require("./generated-dd4FN0Fo.cjs"),r=require("./componentInterfaces-BZ3fSNkT.cjs"),u=require("@wagmi/core"),A=require("./errors.cjs"),h=require("viem"),p=require("./deployments-xekPSd2S.cjs"),g=require("./Deployable/DeployableTargetWithRBAC.cjs"),I=require("./utils.cjs"),s=require("./SimpleDenyList-Bv2mSQJO.cjs"),m=require("./AllowLists/SimpleAllowList.cjs"),D="0x6080604052348015600e575f80fd5b5060156019565b607c565b63409feecd198054600181161560365763f92ee8a95f526004601cfd5b6001600160401b03808260011c146077578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b612127806100895f395ff3fe608060405260043610610229575f3560e01c8063859aa08911610131578063e89079fa116100ac578063f04e283e1161007c578063fdee627a11610062578063fdee627a14610620578063fe9fbb8014610634578063fee81cf414610653575f80fd5b8063f04e283e146105fa578063f2fde38b1461060d575f80fd5b8063e89079fa14610587578063ec87621c146105a6578063ef05bda9146105ba578063ef4550bf146105d9575f80fd5b8063be4994f811610101578063dcc21361116100e7578063dcc2136114610526578063e3f756de14610545578063e611205f14610568575f80fd5b8063be4994f8146104e8578063cbb7de5114610507575f80fd5b8063859aa089146104535780638da5cb5b14610472578063937d599c146104aa57806399927eec146104c9575f80fd5b80632de94807116101c1578063514e62fc11610191578063715018a611610177578063715018a61461041857806375b238fc146104205780637e973e8214610434575f80fd5b8063514e62fc146103db57806354d1f13d14610410575f80fd5b80632de948071461034b5780634359d28a1461038a578063439fab91146103a95780634a4ee7b1146103c8575f80fd5b80631cd64df4116101fc5780631cd64df4146102b557806325692962146102ea57806328d6183b146102f25780632c297c181461032c575f80fd5b806301ffc9a71461022d578063096f199f14610261578063183a4f6e1461028d5780631c10893f146102a2575b5f80fd5b348015610238575f80fd5b5061024c610247366004611725565b610684565b60405190151581526020015b60405180910390f35b34801561026c575f80fd5b5061028061027b36600461176b565b6106df565b60405161025891906117b0565b6102a061029b36600461176b565b610785565b005b6102a06102b03660046117e3565b610792565b3480156102c0575f80fd5b5061024c6102cf3660046117e3565b638b78c6d8600c9081525f9290925260209091205481161490565b6102a06107a8565b3480156102fd575f80fd5b506040517f2a6b3c38000000000000000000000000000000000000000000000000000000008152602001610258565b348015610337575f80fd5b506102a0610346366004611852565b6107f5565b348015610356575f80fd5b5061037c610365366004611891565b638b78c6d8600c9081525f91909152602090205490565b604051908152602001610258565b348015610395575f80fd5b506102a06103a43660046118ed565b6108ea565b3480156103b4575f80fd5b506102a06103c3366004611852565b6109e4565b6102a06103d63660046117e3565b610ab7565b3480156103e6575f80fd5b5061024c6103f53660046117e3565b638b78c6d8600c9081525f9290925260209091205416151590565b6102a0610ac9565b6102a0610b02565b34801561042b575f80fd5b5061037c600281565b34801561043f575f80fd5b506102a061044e366004611852565b610b15565b34801561045e575f80fd5b506102a061046d366004611959565b610bfe565b34801561047d575f80fd5b50638b78c6d8195460405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610258565b3480156104b5575f80fd5b5061024c6104c4366004611852565b610ca0565b3480156104d4575f80fd5b5061024c6104e3366004611852565b610d15565b3480156104f3575f80fd5b506102a06105023660046118ed565b610d7f565b348015610512575f80fd5b506102a0610521366004611959565b610e1d565b348015610531575f80fd5b506102a06105403660046118ed565b610ebd565b348015610550575f80fd5b5061024c61055f36600461198c565b60019392505050565b348015610573575f80fd5b5061028061058236600461176b565b610f5b565b348015610592575f80fd5b506102a06105a1366004611852565b610f69565b3480156105b1575f80fd5b5061037c600181565b3480156105c5575f80fd5b506102a06105d4366004611852565b6110bc565b3480156105e4575f80fd5b506105ed6111bc565b60405161025891906119dd565b6102a0610608366004611891565b611290565b6102a061061b366004611891565b6112ca565b34801561062b575f80fd5b506105ed6112f0565b34801561063f575f80fd5b5061024c61064e366004611891565b6113ba565b34801561065e575f80fd5b5061037c61066d366004611891565b63389a75e1600c9081525f91909152602090205490565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f2a6b3c380000000000000000000000000000000000000000000000000000000014806106d957506106d982611419565b92915050565b600181815481106106ee575f80fd5b905f5260205f20015f91509050805461070690611a5e565b80601f016020809104026020016040519081016040528092919081815260200182805461073290611a5e565b801561077d5780601f106107545761010080835404028352916020019161077d565b820191905f5260205f20905b81548152906001019060200180831161076057829003601f168201915b505050505081565b61078f338261146e565b50565b61079a611479565b6107a48282611493565b5050565b5f6202a30067ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b6107fe336113ba565b610834576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61083e8282610ca0565b156108aa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f44656e796c69737420494420616c72656164792065786973747300000000000060448201526064015b60405180910390fd5b6001805480820182555f919091527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6016108e5828483611b27565b505050565b60026108f58161149f565b83821461092e576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b848110156109dc575f84848381811061094b5761094b611be1565b90506020020160208101906109609190611c0e565b90508015156001036109a25761099d87878481811061098157610981611be1565b90506020020160208101906109969190611891565b6001611493565b6109d3565b6109d38787848181106109b7576109b7611be1565b90506020020160208101906109cc9190611891565b600161146e565b50600101610930565b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011328054600382558015610a355760018160011c14303b10610a2c5763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f8080610a4585870187611d5e565b925092509250610a54836114d0565b8151610a66905f90602085019061164f565b508051610a7a90600190602084019061164f565b5050505080156108e5576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a1505050565b610abf611479565b6107a4828261146e565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b610b0a611479565b610b135f611518565b565b610b1e336113ba565b610b54576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b5e8282610d15565b15610bc5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f416c6c6f776c69737420494420616c726561647920657869737473000000000060448201526064016108a1565b5f80546001810182559080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563016108e5828483611b27565b610c07336113ba565b610c3d576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c4860015f6116a3565b5f5b818110156108e5576001838383818110610c6657610c66611be1565b9050602002810190610c789190611dd4565b82546001810184555f938452602090932090920191610c979183611b27565b50600101610c4a565b5f805b600154811015610d0c578383604051610cbd929190611e35565b604051809103902060018281548110610cd857610cd8611be1565b905f5260205f2001604051610ced9190611e44565b604051809103902003610d045760019150506106d9565b600101610ca3565b505f9392505050565b5f805b5f54811015610d0c578383604051610d31929190611e35565b60405180910390205f8281548110610d4b57610d4b611be1565b905f5260205f2001604051610d609190611e44565b604051809103902003610d775760019150506106d9565b600101610d18565b6002610d8a8161149f565b838214610dc3576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b848110156109dc57610e15868683818110610de257610de2611be1565b9050602002016020810190610df79190611891565b858584818110610e0957610e09611be1565b90506020020135611493565b600101610dc5565b610e26336113ba565b610e5c576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e665f806116a3565b5f5b818110156108e5575f838383818110610e8357610e83611be1565b9050602002810190610e959190611dd4565b82546001810184555f938452602090932090920191610eb49183611b27565b50600101610e68565b6002610ec88161149f565b838214610f01576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b848110156109dc57610f53868683818110610f2057610f20611be1565b9050602002016020810190610f359190611891565b858584818110610f4757610f47611be1565b9050602002013561146e565b600101610f03565b5f81815481106106ee575f80fd5b610f72336113ba565b610fa8576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b5f54811015611085578282604051610fc3929190611e35565b60405180910390205f8281548110610fdd57610fdd611be1565b905f5260205f2001604051610ff29190611e44565b60405180910390200361107d575f805461100e90600190611ed3565b8154811061101e5761101e611be1565b905f5260205f20015f828154811061103857611038611be1565b905f5260205f2001908161104c9190611f0b565b505f80548061105d5761105d611fe3565b600190038181905f5260205f20015f61107691906116be565b9055505050565b600101610faa565b5081816040517f8cf9845e0000000000000000000000000000000000000000000000000000000081526004016108a1929190612010565b6110c5336113ba565b6110fb576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b600154811015611085578282604051611117929190611e35565b60405180910390206001828154811061113257611132611be1565b905f5260205f20016040516111479190611e44565b6040518091039020036111b45760018054611163908290611ed3565b8154811061117357611173611be1565b905f5260205f20016001828154811061118e5761118e611be1565b905f5260205f200190816111a29190611f0b565b50600180548061105d5761105d611fe3565b6001016110fd565b60606001805480602002602001604051908101604052809291908181526020015f905b82821015611287578382905f5260205f200180546111fc90611a5e565b80601f016020809104026020016040519081016040528092919081815260200182805461122890611a5e565b80156112735780601f1061124a57610100808354040283529160200191611273565b820191905f5260205f20905b81548152906001019060200180831161125657829003601f168201915b5050505050815260200190600101906111df565b50505050905090565b611298611479565b63389a75e1600c52805f526020600c2080544211156112be57636f5e88185f526004601cfd5b5f905561078f81611518565b6112d2611479565b8060601b6112e757637448fbae5f526004601cfd5b61078f81611518565b60605f805480602002602001604051908101604052809291908181526020015f905b82821015611287578382905f5260205f2001805461132f90611a5e565b80601f016020809104026020016040519081016040528092919081815260200182805461135b90611a5e565b80156113a65780601f1061137d576101008083540402835291602001916113a6565b820191905f5260205f20905b81548152906001019060200180831161138957829003601f168201915b505050505081526020019060010190611312565b5f8173ffffffffffffffffffffffffffffffffffffffff166113df638b78c6d8195490565b73ffffffffffffffffffffffffffffffffffffffff1614806106d95750638b78c6d8600c9081525f839052602090205460031615156106d9565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fe2089f790000000000000000000000000000000000000000000000000000000014806106d957506106d982611562565b6107a482825f6115f8565b638b78c6d819543314610b13576382b429005f526004601cfd5b6107a4828260016115f8565b638b78c6d81954331461078f57638b78c6d8600c52335f52806020600c20541661078f576382b429005f526004601cfd5b73ffffffffffffffffffffffffffffffffffffffff16638b78c6d819819055805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a350565b638b78c6d819805473ffffffffffffffffffffffffffffffffffffffff9092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a355565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6ab67a0d0000000000000000000000000000000000000000000000000000000014806106d957507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146106d9565b638b78c6d8600c52825f526020600c20805483811783611619575080841681185b80835580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a3505050505050565b828054828255905f5260205f20908101928215611693579160200282015b828111156116935782518290611683908261203e565b509160200191906001019061166d565b5061169f9291506116f5565b5090565b5080545f8255905f5260205f209081019061078f91906116f5565b5080546116ca90611a5e565b5f825580601f106116d9575050565b601f0160209004905f5260205f209081019061078f9190611711565b8082111561169f575f61170882826116be565b506001016116f5565b5b8082111561169f575f8155600101611712565b5f60208284031215611735575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114611764575f80fd5b9392505050565b5f6020828403121561177b575f80fd5b5035919050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6117646020830184611782565b73ffffffffffffffffffffffffffffffffffffffff8116811461078f575f80fd5b5f80604083850312156117f4575f80fd5b82356117ff816117c2565b946020939093013593505050565b5f8083601f84011261181d575f80fd5b50813567ffffffffffffffff811115611834575f80fd5b60208301915083602082850101111561184b575f80fd5b9250929050565b5f8060208385031215611863575f80fd5b823567ffffffffffffffff811115611879575f80fd5b6118858582860161180d565b90969095509350505050565b5f602082840312156118a1575f80fd5b8135611764816117c2565b5f8083601f8401126118bc575f80fd5b50813567ffffffffffffffff8111156118d3575f80fd5b6020830191508360208260051b850101111561184b575f80fd5b5f805f8060408587031215611900575f80fd5b843567ffffffffffffffff811115611916575f80fd5b611922878288016118ac565b909550935050602085013567ffffffffffffffff811115611941575f80fd5b61194d878288016118ac565b95989497509550505050565b5f806020838503121561196a575f80fd5b823567ffffffffffffffff811115611980575f80fd5b611885858286016118ac565b5f805f6040848603121561199e575f80fd5b83356119a9816117c2565b9250602084013567ffffffffffffffff8111156119c4575f80fd5b6119d08682870161180d565b9497909650939450505050565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b82811015611a52577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0878603018452611a3d858351611782565b94506020938401939190910190600101611a03565b50929695505050505050565b600181811c90821680611a7257607f821691505b602082108103611aa9577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b601f8211156108e557805f5260205f20601f840160051c81016020851015611b015750805b601f840160051c820191505b81811015611b20575f8155600101611b0d565b5050505050565b67ffffffffffffffff831115611b3f57611b3f611aaf565b611b5383611b4d8354611a5e565b83611adc565b5f601f841160018114611b84575f8515611b6d5750838201355b5f19600387901b1c1916600186901b178355611b20565b5f83815260208120601f198716915b82811015611bb35786850135825560209485019460019092019101611b93565b5086821015611bcf575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215611c1e575f80fd5b81358015158114611764575f80fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611c5657611c56611aaf565b604052919050565b5f82601f830112611c6d575f80fd5b813567ffffffffffffffff811115611c8757611c87611aaf565b8060051b611c9760208201611c2d565b91825260208185018101929081019086841115611cb2575f80fd5b6020860192505b83831015611d5457823567ffffffffffffffff811115611cd7575f80fd5b8601603f81018813611ce7575f80fd5b602081013567ffffffffffffffff811115611d0457611d04611aaf565b611d176020601f19601f84011601611c2d565b8181526040838301018a1015611d2b575f80fd5b816040840160208301375f60208383010152808552505050602082019150602083019250611cb9565b9695505050505050565b5f805f60608486031215611d70575f80fd5b8335611d7b816117c2565b9250602084013567ffffffffffffffff811115611d96575f80fd5b611da286828701611c5e565b925050604084013567ffffffffffffffff811115611dbe575f80fd5b611dca86828701611c5e565b9150509250925092565b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112611e07575f80fd5b83018035915067ffffffffffffffff821115611e21575f80fd5b60200191503681900382131561184b575f80fd5b818382375f9101908152919050565b5f808354611e5181611a5e565b600182168015611e685760018114611e9b57611ec8565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0083168652811515820286019350611ec8565b865f5260205f205f5b83811015611ec057815488820152600190910190602001611ea4565b505081860193505b509195945050505050565b818103818111156106d9577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b818103611f16575050565b611f208254611a5e565b67ffffffffffffffff811115611f3857611f38611aaf565b611f4c81611f468454611a5e565b84611adc565b5f601f821160018114611f80575f8315611f665750848201545b600184901b5f19600386901b1c198216175b855550611b20565b5f8581526020808220868352908220601f198616925b83811015611fb65782860154825560019586019590910190602001611f96565b5085831015611fd357818501545f19600388901b60f8161c191681555b5050505050600190811b01905550565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b815167ffffffffffffffff81111561205857612058611aaf565b61206681611f468454611a5e565b6020601f821160018114612096575f8315611f66575081850151600184901b5f19600386901b1c19821617611f78565b5f84815260208120601f198516915b828110156120c557878501518255602094850194600190920191016120a5565b50848210156120e257868401515f19600387901b60f8161c191681555b50505050600190811b0190555056fea26469706673582212206100a11e4e0b5bdd589ed060e5af18faef222dc9a5fb78d50ce02911e161f36664736f6c634300081a0033",o={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1,VITE_BOOST_MAINNET_SIGNER_EOA:"0xCBD0C302040bC803B4B2EDaF21Be0e49Deff5480",VITE_BOOST_TESTNET_SIGNER_EOA:"0xd63167e9db11B108940b2E8236581F961f33f396"},n=class n extends g.DeployableTargetWithRBAC{constructor(){super(...arguments),this.abi=a.M}async owner(f){return await a.R4(this._config,{...this.optionallyAttachAccount(),...f,address:this.assertValidAddress(),args:[]})}isAllowed(f,b){throw new Error("isAllowed() not available for OffchainAccessList, implementation should be done offchain")}async getAllowlistIds(f){return await a.v4(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...f})}async getDenylistIds(f){return await a.w4(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...f})}async setAllowlistIds(f,b){return await this.awaitResult(this.setAllowlistIdsRaw(f,b))}async setAllowlistIdsRaw(f,b){const{request:d,result:e}=await a.lq(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await a.U4(this._config,d),result:e}}async setDenylistIds(f,b){return await this.awaitResult(this.setDenylistIdsRaw(f,b))}async setDenylistIdsRaw(f,b){const{request:d,result:e}=await a.dq(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await a.j4(this._config,d),result:e}}async addAllowlistId(f,b){return await this.awaitResult(this.addAllowlistIdRaw(f,b))}async addAllowlistIdRaw(f,b){const{request:d,result:e}=await a.J4(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await a.z4(this._config,d),result:e}}async addDenylistId(f,b){return await this.awaitResult(this.addDenylistIdRaw(f,b))}async addDenylistIdRaw(f,b){const{request:d,result:e}=await a.K4(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await a.B4(this._config,d),result:e}}async removeAllowlistId(f,b){return await this.awaitResult(this.removeAllowlistIdRaw(f,b))}async removeAllowlistIdRaw(f,b){const{request:d,result:e}=await a.aq(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await a.P4(this._config,d),result:e}}async removeDenylistId(f,b){return await this.awaitResult(this.removeDenylistIdRaw(f,b))}async removeDenylistIdRaw(f,b){const{request:d,result:e}=await a.iq(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await a.k4(this._config,d),result:e}}async hasAllowlistId(f,b){return await a.A4(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b})}async hasDenylistId(f,b){return await a.I4(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b})}buildParameters(f,b){var c;const[d,e]=this.validateDeploymentConfig(f,b);if(!d.owner||d.owner===h.zeroAddress){const w=e.account?e.account.address:e.config?u.getAccount(e.config).address:(c=this._account)==null?void 0:c.address;if(w)d.owner=w;else throw new A.DeployableUnknownOwnerProvidedError}return{abi:a.M,bytecode:D,args:[y(d)],...this.optionallyAttachAccount(e.account)}}};n.bases={...o!=null&&o.VITE_OFFCHAIN_ACCESS_LIST_BASE?{31337:void 0}:{},...p.OffchainAccessList},n.registryType=I.RegistryType.ALLOW_LIST;let i=n;function y({owner:t,allowlistIds:f,denylistIds:b}){return h.encodeAbiParameters([{type:"address",name:"owner"},{type:"string[]",name:"allowlistIds"},{type:"string[]",name:"denylistIds"}],[t,f,b])}const R=a.P;class _ extends s.SimpleDenyList{buildParameters(f,b){const[d,e]=this.validateDeploymentConfig({},b);return{abi:R,bytecode:s.bytecode,args:[s.prepareSimpleDenyListPayload({owner:h.zeroAddress,denied:[]})],...this.optionallyAttachAccount(e.account)}}}const l={[r.ASimpleAllowList]:m.SimpleAllowList,[r.ASimpleDenyList]:s.SimpleDenyList,[r.AOffchainAccessList]:i};async function L(t,f,b){const d=await u.readContract(t.config,{abi:a.k,functionName:"getComponentInterface",address:f,...b}),e=l[d];if(!e)throw new A.InvalidComponentInterfaceError(Object.keys(l),d);return new e(t,f)}exports.AllowListByComponentInterface=l;exports.OffchainAccessList=i;exports.OpenAllowList=_;exports.allowListFromAddress=L;exports.prepareOffchainAccessListPayload=y;
2
- //# sourceMappingURL=AllowList-BYYm3b9d.cjs.map
1
+ "use strict";const a=require("./generated-dd4FN0Fo.cjs"),r=require("./componentInterfaces-BZ3fSNkT.cjs"),u=require("@wagmi/core"),A=require("./errors.cjs"),h=require("viem"),p=require("./deployments-BjBgk03b.cjs"),g=require("./Deployable/DeployableTargetWithRBAC.cjs"),I=require("./utils.cjs"),s=require("./SimpleDenyList-7-VTqfsH.cjs"),m=require("./AllowLists/SimpleAllowList.cjs"),D="0x6080604052348015600e575f80fd5b5060156019565b607c565b63409feecd198054600181161560365763f92ee8a95f526004601cfd5b6001600160401b03808260011c146077578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b612127806100895f395ff3fe608060405260043610610229575f3560e01c8063859aa08911610131578063e89079fa116100ac578063f04e283e1161007c578063fdee627a11610062578063fdee627a14610620578063fe9fbb8014610634578063fee81cf414610653575f80fd5b8063f04e283e146105fa578063f2fde38b1461060d575f80fd5b8063e89079fa14610587578063ec87621c146105a6578063ef05bda9146105ba578063ef4550bf146105d9575f80fd5b8063be4994f811610101578063dcc21361116100e7578063dcc2136114610526578063e3f756de14610545578063e611205f14610568575f80fd5b8063be4994f8146104e8578063cbb7de5114610507575f80fd5b8063859aa089146104535780638da5cb5b14610472578063937d599c146104aa57806399927eec146104c9575f80fd5b80632de94807116101c1578063514e62fc11610191578063715018a611610177578063715018a61461041857806375b238fc146104205780637e973e8214610434575f80fd5b8063514e62fc146103db57806354d1f13d14610410575f80fd5b80632de948071461034b5780634359d28a1461038a578063439fab91146103a95780634a4ee7b1146103c8575f80fd5b80631cd64df4116101fc5780631cd64df4146102b557806325692962146102ea57806328d6183b146102f25780632c297c181461032c575f80fd5b806301ffc9a71461022d578063096f199f14610261578063183a4f6e1461028d5780631c10893f146102a2575b5f80fd5b348015610238575f80fd5b5061024c610247366004611725565b610684565b60405190151581526020015b60405180910390f35b34801561026c575f80fd5b5061028061027b36600461176b565b6106df565b60405161025891906117b0565b6102a061029b36600461176b565b610785565b005b6102a06102b03660046117e3565b610792565b3480156102c0575f80fd5b5061024c6102cf3660046117e3565b638b78c6d8600c9081525f9290925260209091205481161490565b6102a06107a8565b3480156102fd575f80fd5b506040517f2a6b3c38000000000000000000000000000000000000000000000000000000008152602001610258565b348015610337575f80fd5b506102a0610346366004611852565b6107f5565b348015610356575f80fd5b5061037c610365366004611891565b638b78c6d8600c9081525f91909152602090205490565b604051908152602001610258565b348015610395575f80fd5b506102a06103a43660046118ed565b6108ea565b3480156103b4575f80fd5b506102a06103c3366004611852565b6109e4565b6102a06103d63660046117e3565b610ab7565b3480156103e6575f80fd5b5061024c6103f53660046117e3565b638b78c6d8600c9081525f9290925260209091205416151590565b6102a0610ac9565b6102a0610b02565b34801561042b575f80fd5b5061037c600281565b34801561043f575f80fd5b506102a061044e366004611852565b610b15565b34801561045e575f80fd5b506102a061046d366004611959565b610bfe565b34801561047d575f80fd5b50638b78c6d8195460405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610258565b3480156104b5575f80fd5b5061024c6104c4366004611852565b610ca0565b3480156104d4575f80fd5b5061024c6104e3366004611852565b610d15565b3480156104f3575f80fd5b506102a06105023660046118ed565b610d7f565b348015610512575f80fd5b506102a0610521366004611959565b610e1d565b348015610531575f80fd5b506102a06105403660046118ed565b610ebd565b348015610550575f80fd5b5061024c61055f36600461198c565b60019392505050565b348015610573575f80fd5b5061028061058236600461176b565b610f5b565b348015610592575f80fd5b506102a06105a1366004611852565b610f69565b3480156105b1575f80fd5b5061037c600181565b3480156105c5575f80fd5b506102a06105d4366004611852565b6110bc565b3480156105e4575f80fd5b506105ed6111bc565b60405161025891906119dd565b6102a0610608366004611891565b611290565b6102a061061b366004611891565b6112ca565b34801561062b575f80fd5b506105ed6112f0565b34801561063f575f80fd5b5061024c61064e366004611891565b6113ba565b34801561065e575f80fd5b5061037c61066d366004611891565b63389a75e1600c9081525f91909152602090205490565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f2a6b3c380000000000000000000000000000000000000000000000000000000014806106d957506106d982611419565b92915050565b600181815481106106ee575f80fd5b905f5260205f20015f91509050805461070690611a5e565b80601f016020809104026020016040519081016040528092919081815260200182805461073290611a5e565b801561077d5780601f106107545761010080835404028352916020019161077d565b820191905f5260205f20905b81548152906001019060200180831161076057829003601f168201915b505050505081565b61078f338261146e565b50565b61079a611479565b6107a48282611493565b5050565b5f6202a30067ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b6107fe336113ba565b610834576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61083e8282610ca0565b156108aa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f44656e796c69737420494420616c72656164792065786973747300000000000060448201526064015b60405180910390fd5b6001805480820182555f919091527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6016108e5828483611b27565b505050565b60026108f58161149f565b83821461092e576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b848110156109dc575f84848381811061094b5761094b611be1565b90506020020160208101906109609190611c0e565b90508015156001036109a25761099d87878481811061098157610981611be1565b90506020020160208101906109969190611891565b6001611493565b6109d3565b6109d38787848181106109b7576109b7611be1565b90506020020160208101906109cc9190611891565b600161146e565b50600101610930565b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011328054600382558015610a355760018160011c14303b10610a2c5763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f8080610a4585870187611d5e565b925092509250610a54836114d0565b8151610a66905f90602085019061164f565b508051610a7a90600190602084019061164f565b5050505080156108e5576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a1505050565b610abf611479565b6107a4828261146e565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b610b0a611479565b610b135f611518565b565b610b1e336113ba565b610b54576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b5e8282610d15565b15610bc5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f416c6c6f776c69737420494420616c726561647920657869737473000000000060448201526064016108a1565b5f80546001810182559080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563016108e5828483611b27565b610c07336113ba565b610c3d576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c4860015f6116a3565b5f5b818110156108e5576001838383818110610c6657610c66611be1565b9050602002810190610c789190611dd4565b82546001810184555f938452602090932090920191610c979183611b27565b50600101610c4a565b5f805b600154811015610d0c578383604051610cbd929190611e35565b604051809103902060018281548110610cd857610cd8611be1565b905f5260205f2001604051610ced9190611e44565b604051809103902003610d045760019150506106d9565b600101610ca3565b505f9392505050565b5f805b5f54811015610d0c578383604051610d31929190611e35565b60405180910390205f8281548110610d4b57610d4b611be1565b905f5260205f2001604051610d609190611e44565b604051809103902003610d775760019150506106d9565b600101610d18565b6002610d8a8161149f565b838214610dc3576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b848110156109dc57610e15868683818110610de257610de2611be1565b9050602002016020810190610df79190611891565b858584818110610e0957610e09611be1565b90506020020135611493565b600101610dc5565b610e26336113ba565b610e5c576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e665f806116a3565b5f5b818110156108e5575f838383818110610e8357610e83611be1565b9050602002810190610e959190611dd4565b82546001810184555f938452602090932090920191610eb49183611b27565b50600101610e68565b6002610ec88161149f565b838214610f01576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b848110156109dc57610f53868683818110610f2057610f20611be1565b9050602002016020810190610f359190611891565b858584818110610f4757610f47611be1565b9050602002013561146e565b600101610f03565b5f81815481106106ee575f80fd5b610f72336113ba565b610fa8576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b5f54811015611085578282604051610fc3929190611e35565b60405180910390205f8281548110610fdd57610fdd611be1565b905f5260205f2001604051610ff29190611e44565b60405180910390200361107d575f805461100e90600190611ed3565b8154811061101e5761101e611be1565b905f5260205f20015f828154811061103857611038611be1565b905f5260205f2001908161104c9190611f0b565b505f80548061105d5761105d611fe3565b600190038181905f5260205f20015f61107691906116be565b9055505050565b600101610faa565b5081816040517f8cf9845e0000000000000000000000000000000000000000000000000000000081526004016108a1929190612010565b6110c5336113ba565b6110fb576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b600154811015611085578282604051611117929190611e35565b60405180910390206001828154811061113257611132611be1565b905f5260205f20016040516111479190611e44565b6040518091039020036111b45760018054611163908290611ed3565b8154811061117357611173611be1565b905f5260205f20016001828154811061118e5761118e611be1565b905f5260205f200190816111a29190611f0b565b50600180548061105d5761105d611fe3565b6001016110fd565b60606001805480602002602001604051908101604052809291908181526020015f905b82821015611287578382905f5260205f200180546111fc90611a5e565b80601f016020809104026020016040519081016040528092919081815260200182805461122890611a5e565b80156112735780601f1061124a57610100808354040283529160200191611273565b820191905f5260205f20905b81548152906001019060200180831161125657829003601f168201915b5050505050815260200190600101906111df565b50505050905090565b611298611479565b63389a75e1600c52805f526020600c2080544211156112be57636f5e88185f526004601cfd5b5f905561078f81611518565b6112d2611479565b8060601b6112e757637448fbae5f526004601cfd5b61078f81611518565b60605f805480602002602001604051908101604052809291908181526020015f905b82821015611287578382905f5260205f2001805461132f90611a5e565b80601f016020809104026020016040519081016040528092919081815260200182805461135b90611a5e565b80156113a65780601f1061137d576101008083540402835291602001916113a6565b820191905f5260205f20905b81548152906001019060200180831161138957829003601f168201915b505050505081526020019060010190611312565b5f8173ffffffffffffffffffffffffffffffffffffffff166113df638b78c6d8195490565b73ffffffffffffffffffffffffffffffffffffffff1614806106d95750638b78c6d8600c9081525f839052602090205460031615156106d9565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fe2089f790000000000000000000000000000000000000000000000000000000014806106d957506106d982611562565b6107a482825f6115f8565b638b78c6d819543314610b13576382b429005f526004601cfd5b6107a4828260016115f8565b638b78c6d81954331461078f57638b78c6d8600c52335f52806020600c20541661078f576382b429005f526004601cfd5b73ffffffffffffffffffffffffffffffffffffffff16638b78c6d819819055805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a350565b638b78c6d819805473ffffffffffffffffffffffffffffffffffffffff9092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a355565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6ab67a0d0000000000000000000000000000000000000000000000000000000014806106d957507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146106d9565b638b78c6d8600c52825f526020600c20805483811783611619575080841681185b80835580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a3505050505050565b828054828255905f5260205f20908101928215611693579160200282015b828111156116935782518290611683908261203e565b509160200191906001019061166d565b5061169f9291506116f5565b5090565b5080545f8255905f5260205f209081019061078f91906116f5565b5080546116ca90611a5e565b5f825580601f106116d9575050565b601f0160209004905f5260205f209081019061078f9190611711565b8082111561169f575f61170882826116be565b506001016116f5565b5b8082111561169f575f8155600101611712565b5f60208284031215611735575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114611764575f80fd5b9392505050565b5f6020828403121561177b575f80fd5b5035919050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6117646020830184611782565b73ffffffffffffffffffffffffffffffffffffffff8116811461078f575f80fd5b5f80604083850312156117f4575f80fd5b82356117ff816117c2565b946020939093013593505050565b5f8083601f84011261181d575f80fd5b50813567ffffffffffffffff811115611834575f80fd5b60208301915083602082850101111561184b575f80fd5b9250929050565b5f8060208385031215611863575f80fd5b823567ffffffffffffffff811115611879575f80fd5b6118858582860161180d565b90969095509350505050565b5f602082840312156118a1575f80fd5b8135611764816117c2565b5f8083601f8401126118bc575f80fd5b50813567ffffffffffffffff8111156118d3575f80fd5b6020830191508360208260051b850101111561184b575f80fd5b5f805f8060408587031215611900575f80fd5b843567ffffffffffffffff811115611916575f80fd5b611922878288016118ac565b909550935050602085013567ffffffffffffffff811115611941575f80fd5b61194d878288016118ac565b95989497509550505050565b5f806020838503121561196a575f80fd5b823567ffffffffffffffff811115611980575f80fd5b611885858286016118ac565b5f805f6040848603121561199e575f80fd5b83356119a9816117c2565b9250602084013567ffffffffffffffff8111156119c4575f80fd5b6119d08682870161180d565b9497909650939450505050565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b82811015611a52577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0878603018452611a3d858351611782565b94506020938401939190910190600101611a03565b50929695505050505050565b600181811c90821680611a7257607f821691505b602082108103611aa9577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b601f8211156108e557805f5260205f20601f840160051c81016020851015611b015750805b601f840160051c820191505b81811015611b20575f8155600101611b0d565b5050505050565b67ffffffffffffffff831115611b3f57611b3f611aaf565b611b5383611b4d8354611a5e565b83611adc565b5f601f841160018114611b84575f8515611b6d5750838201355b5f19600387901b1c1916600186901b178355611b20565b5f83815260208120601f198716915b82811015611bb35786850135825560209485019460019092019101611b93565b5086821015611bcf575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215611c1e575f80fd5b81358015158114611764575f80fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611c5657611c56611aaf565b604052919050565b5f82601f830112611c6d575f80fd5b813567ffffffffffffffff811115611c8757611c87611aaf565b8060051b611c9760208201611c2d565b91825260208185018101929081019086841115611cb2575f80fd5b6020860192505b83831015611d5457823567ffffffffffffffff811115611cd7575f80fd5b8601603f81018813611ce7575f80fd5b602081013567ffffffffffffffff811115611d0457611d04611aaf565b611d176020601f19601f84011601611c2d565b8181526040838301018a1015611d2b575f80fd5b816040840160208301375f60208383010152808552505050602082019150602083019250611cb9565b9695505050505050565b5f805f60608486031215611d70575f80fd5b8335611d7b816117c2565b9250602084013567ffffffffffffffff811115611d96575f80fd5b611da286828701611c5e565b925050604084013567ffffffffffffffff811115611dbe575f80fd5b611dca86828701611c5e565b9150509250925092565b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112611e07575f80fd5b83018035915067ffffffffffffffff821115611e21575f80fd5b60200191503681900382131561184b575f80fd5b818382375f9101908152919050565b5f808354611e5181611a5e565b600182168015611e685760018114611e9b57611ec8565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0083168652811515820286019350611ec8565b865f5260205f205f5b83811015611ec057815488820152600190910190602001611ea4565b505081860193505b509195945050505050565b818103818111156106d9577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b818103611f16575050565b611f208254611a5e565b67ffffffffffffffff811115611f3857611f38611aaf565b611f4c81611f468454611a5e565b84611adc565b5f601f821160018114611f80575f8315611f665750848201545b600184901b5f19600386901b1c198216175b855550611b20565b5f8581526020808220868352908220601f198616925b83811015611fb65782860154825560019586019590910190602001611f96565b5085831015611fd357818501545f19600388901b60f8161c191681555b5050505050600190811b01905550565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b815167ffffffffffffffff81111561205857612058611aaf565b61206681611f468454611a5e565b6020601f821160018114612096575f8315611f66575081850151600184901b5f19600386901b1c19821617611f78565b5f84815260208120601f198516915b828110156120c557878501518255602094850194600190920191016120a5565b50848210156120e257868401515f19600387901b60f8161c191681555b50505050600190811b0190555056fea26469706673582212206100a11e4e0b5bdd589ed060e5af18faef222dc9a5fb78d50ce02911e161f36664736f6c634300081a0033",o={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1,VITE_BOOST_MAINNET_SIGNER_EOA:"0xCBD0C302040bC803B4B2EDaF21Be0e49Deff5480",VITE_BOOST_TESTNET_SIGNER_EOA:"0xd63167e9db11B108940b2E8236581F961f33f396"},n=class n extends g.DeployableTargetWithRBAC{constructor(){super(...arguments),this.abi=a.M}async owner(f){return await a.R4(this._config,{...this.optionallyAttachAccount(),...f,address:this.assertValidAddress(),args:[]})}isAllowed(f,b){throw new Error("isAllowed() not available for OffchainAccessList, implementation should be done offchain")}async getAllowlistIds(f){return await a.v4(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...f})}async getDenylistIds(f){return await a.w4(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...f})}async setAllowlistIds(f,b){return await this.awaitResult(this.setAllowlistIdsRaw(f,b))}async setAllowlistIdsRaw(f,b){const{request:d,result:e}=await a.lq(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await a.U4(this._config,d),result:e}}async setDenylistIds(f,b){return await this.awaitResult(this.setDenylistIdsRaw(f,b))}async setDenylistIdsRaw(f,b){const{request:d,result:e}=await a.dq(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await a.j4(this._config,d),result:e}}async addAllowlistId(f,b){return await this.awaitResult(this.addAllowlistIdRaw(f,b))}async addAllowlistIdRaw(f,b){const{request:d,result:e}=await a.J4(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await a.z4(this._config,d),result:e}}async addDenylistId(f,b){return await this.awaitResult(this.addDenylistIdRaw(f,b))}async addDenylistIdRaw(f,b){const{request:d,result:e}=await a.K4(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await a.B4(this._config,d),result:e}}async removeAllowlistId(f,b){return await this.awaitResult(this.removeAllowlistIdRaw(f,b))}async removeAllowlistIdRaw(f,b){const{request:d,result:e}=await a.aq(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await a.P4(this._config,d),result:e}}async removeDenylistId(f,b){return await this.awaitResult(this.removeDenylistIdRaw(f,b))}async removeDenylistIdRaw(f,b){const{request:d,result:e}=await a.iq(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await a.k4(this._config,d),result:e}}async hasAllowlistId(f,b){return await a.A4(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b})}async hasDenylistId(f,b){return await a.I4(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b})}buildParameters(f,b){var c;const[d,e]=this.validateDeploymentConfig(f,b);if(!d.owner||d.owner===h.zeroAddress){const w=e.account?e.account.address:e.config?u.getAccount(e.config).address:(c=this._account)==null?void 0:c.address;if(w)d.owner=w;else throw new A.DeployableUnknownOwnerProvidedError}return{abi:a.M,bytecode:D,args:[y(d)],...this.optionallyAttachAccount(e.account)}}};n.bases={...o!=null&&o.VITE_OFFCHAIN_ACCESS_LIST_BASE?{31337:void 0}:{},...p.OffchainAccessList},n.registryType=I.RegistryType.ALLOW_LIST;let i=n;function y({owner:t,allowlistIds:f,denylistIds:b}){return h.encodeAbiParameters([{type:"address",name:"owner"},{type:"string[]",name:"allowlistIds"},{type:"string[]",name:"denylistIds"}],[t,f,b])}const R=a.P;class _ extends s.SimpleDenyList{buildParameters(f,b){const[d,e]=this.validateDeploymentConfig({},b);return{abi:R,bytecode:s.bytecode,args:[s.prepareSimpleDenyListPayload({owner:h.zeroAddress,denied:[]})],...this.optionallyAttachAccount(e.account)}}}const l={[r.ASimpleAllowList]:m.SimpleAllowList,[r.ASimpleDenyList]:s.SimpleDenyList,[r.AOffchainAccessList]:i};async function L(t,f,b){const d=await u.readContract(t.config,{abi:a.k,functionName:"getComponentInterface",address:f,...b}),e=l[d];if(!e)throw new A.InvalidComponentInterfaceError(Object.keys(l),d);return new e(t,f)}exports.AllowListByComponentInterface=l;exports.OffchainAccessList=i;exports.OpenAllowList=_;exports.allowListFromAddress=L;exports.prepareOffchainAccessListPayload=y;
2
+ //# sourceMappingURL=AllowList-BJ9HQGFs.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"AllowList-BYYm3b9d.cjs","sources":["../src/AllowLists/OffchainAccessList.ts","../src/AllowLists/OpenAllowList.ts","../src/AllowLists/AllowList.ts"],"sourcesContent":["import {\n offchainAccessListAbi,\n readOffchainAccessListGetAllowListIds,\n readOffchainAccessListGetDenyListIds,\n readOffchainAccessListHasAllowListId,\n readOffchainAccessListHasDenyListId,\n readOffchainAccessListOwner,\n simulateOffchainAccessListAddAllowListId,\n simulateOffchainAccessListAddDenyListId,\n simulateOffchainAccessListRemoveAllowListId,\n simulateOffchainAccessListRemoveDenyListId,\n simulateOffchainAccessListSetAllowListIds,\n simulateOffchainAccessListSetDenyListIds,\n writeOffchainAccessListAddAllowListId,\n writeOffchainAccessListAddDenyListId,\n writeOffchainAccessListRemoveAllowListId,\n writeOffchainAccessListRemoveDenyListId,\n writeOffchainAccessListSetAllowListIds,\n writeOffchainAccessListSetDenyListIds,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/allowlists/OffchainAccessList.sol/OffchainAccessList.json';\nimport { getAccount } from '@wagmi/core';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n encodeAbiParameters,\n zeroAddress,\n} from 'viem';\nimport { OffchainAccessList as OffchainAccessListBases } from '../../dist/deployments.json';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport { DeployableTargetWithRBAC } from '../Deployable/DeployableTargetWithRBAC';\nimport { DeployableUnknownOwnerProvidedError } from '../errors';\nimport {\n type GenericLog,\n type ReadParams,\n RegistryType,\n type WriteParams,\n} from '../utils';\n\nexport { offchainAccessListAbi };\n\n/**\n * Object representation of a {@link OffchainAccessList} initialization payload.\n *\n * @export\n * @interface OffchainAccessListPayload\n * @typedef {OffchainAccessListPayload}\n */\nexport interface OffchainAccessListPayload {\n /**\n * The access list's owner\n *\n * @type {Address}\n */\n owner: Address;\n /**\n * List of off-chain allowlist IDs.\n *\n * @type {string[]}\n */\n allowlistIds: string[];\n /**\n * List of off-chain denylist IDs.\n *\n * @type {string[]}\n */\n denylistIds: string[];\n}\n\n/**\n * A generic `viem.Log` event with support for `OffchainAccessList` event types.\n *\n * @export\n * @typedef {OffchainAccessListLog}\n * @template {ContractEventName<typeof offchainAccessListAbi>} [event=ContractEventName<\n * typeof offchainAccessListAbi\n * >]\n */\nexport type OffchainAccessListLog<\n event extends ContractEventName<\n typeof offchainAccessListAbi\n > = ContractEventName<typeof offchainAccessListAbi>,\n> = GenericLog<typeof offchainAccessListAbi, event>;\n\n/**\n * An AllowList that links on-chain boosts to off-chain access lists stored in a database.\n * This implementation always allows everyone (returns true) but stores references to off-chain allowlist and denylist IDs.\n *\n * @export\n * @class OffchainAccessList\n * @typedef {OffchainAccessList}\n * @extends {DeployableTargetWithRBAC<OffchainAccessListPayload>}\n */\nexport class OffchainAccessList extends DeployableTargetWithRBAC<\n OffchainAccessListPayload,\n typeof offchainAccessListAbi\n> {\n public override readonly abi = offchainAccessListAbi;\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_OFFCHAIN_ACCESS_LIST_BASE\n ? { 31337: import.meta.env.VITE_OFFCHAIN_ACCESS_LIST_BASE }\n : {}),\n ...(OffchainAccessListBases as Record<number, Address>),\n };\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.ALLOW_LIST;\n\n /**\n * Retrieves the owner\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<Address>} - The address of the owner\n */\n public async owner(params?: ReadParams): Promise<Address> {\n return await readOffchainAccessListOwner(this._config, {\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 address: this.assertValidAddress(),\n args: [],\n });\n }\n\n /**\n * Check if a user is authorized based on off-chain allowlists/denylists\n *\n * @public\n * @async\n * @param {Address} address - The address of the user\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the user is allowed\n */\n public isAllowed(_address: Address, _params?: ReadParams) {\n // TODO: check address against offchain allowlist/denylist using api calls\n throw new Error(\n 'isAllowed() not available for OffchainAccessList, implementation should be done offchain',\n );\n }\n\n /**\n * Get all allowlist IDs\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<string[]>} - Array of allowlist IDs\n */\n public async getAllowlistIds(params?: ReadParams) {\n return await readOffchainAccessListGetAllowListIds(this._config, {\n address: this.assertValidAddress(),\n args: [],\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\n /**\n * Get all denylist IDs\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<string[]>} - Array of denylist IDs\n */\n public async getDenylistIds(params?: ReadParams) {\n return await readOffchainAccessListGetDenyListIds(this._config, {\n address: this.assertValidAddress(),\n args: [],\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\n /**\n * Set allowlist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new allowlist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setAllowlistIds(ids: string[], params?: WriteParams) {\n return await this.awaitResult(this.setAllowlistIdsRaw(ids, params));\n }\n\n /**\n * Set allowlist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new allowlist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setAllowlistIdsRaw(ids: string[], params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListSetAllowListIds(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [ids],\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 writeOffchainAccessListSetAllowListIds(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Set denylist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new denylist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setDenylistIds(ids: string[], params?: WriteParams) {\n return await this.awaitResult(this.setDenylistIdsRaw(ids, params));\n }\n\n /**\n * Set denylist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new denylist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setDenylistIdsRaw(ids: string[], params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListSetDenyListIds(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [ids],\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 writeOffchainAccessListSetDenyListIds(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Add a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async addAllowlistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.addAllowlistIdRaw(id, params));\n }\n\n /**\n * Add a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async addAllowlistIdRaw(id: string, params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListAddAllowListId(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListAddAllowListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Add a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async addDenylistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.addDenylistIdRaw(id, params));\n }\n\n /**\n * Add a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async addDenylistIdRaw(id: string, params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListAddDenyListId(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListAddDenyListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Remove a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async removeAllowlistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.removeAllowlistIdRaw(id, params));\n }\n\n /**\n * Remove a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async removeAllowlistIdRaw(id: string, params?: WriteParams) {\n const { request, result } =\n await simulateOffchainAccessListRemoveAllowListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListRemoveAllowListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Remove a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async removeDenylistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.removeDenylistIdRaw(id, params));\n }\n\n /**\n * Remove a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async removeDenylistIdRaw(id: string, params?: WriteParams) {\n const { request, result } =\n await simulateOffchainAccessListRemoveDenyListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListRemoveDenyListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Check if an allowlist ID exists\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to check\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the ID exists\n */\n public async hasAllowlistId(\n id: string,\n params?: ReadParams,\n ): Promise<boolean> {\n return await readOffchainAccessListHasAllowListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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\n /**\n * Check if a denylist ID exists\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to check\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the ID exists\n */\n public async hasDenylistId(\n id: string,\n params?: ReadParams,\n ): Promise<boolean> {\n return await readOffchainAccessListHasDenyListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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\n /**\n * @inheritdoc\n *\n * @public\n * @param {?OffchainAccessListPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: OffchainAccessListPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n if (!payload.owner || payload.owner === zeroAddress) {\n const owner = options.account\n ? options.account.address\n : options.config\n ? getAccount(options.config).address\n : this._account?.address;\n if (owner) {\n payload.owner = owner;\n } else {\n throw new DeployableUnknownOwnerProvidedError();\n }\n }\n return {\n abi: offchainAccessListAbi,\n bytecode: bytecode as Hex,\n args: [prepareOffchainAccessListPayload(payload)],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n\n/**\n * Given a {@link OffchainAccessListPayload}, properly encode the initialization payload.\n *\n * @param {OffchainAccessListPayload} param0\n * @param {Address} param0.owner - The access list's owner\n * @param {string[]} param0.allowlistIds - List of off-chain allowlist IDs\n * @param {string[]} param0.denylistIds - List of off-chain denylist IDs\n * @returns {Hex}\n */\nexport function prepareOffchainAccessListPayload({\n owner,\n allowlistIds,\n denylistIds,\n}: OffchainAccessListPayload) {\n return encodeAbiParameters(\n [\n { type: 'address', name: 'owner' },\n { type: 'string[]', name: 'allowlistIds' },\n { type: 'string[]', name: 'denylistIds' },\n ],\n [owner, allowlistIds, denylistIds],\n );\n}\n","import { simpleDenyListAbi } from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/allowlists/SimpleDenyList.sol/SimpleDenyList.json';\nimport { type Hex, zeroAddress } from 'viem';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport {\n SimpleDenyList,\n type SimpleDenyListPayload,\n prepareSimpleDenyListPayload,\n} from './SimpleDenyList';\n\nexport const openAllowListAbi = simpleDenyListAbi;\n\n/**\n * A simple AllowList, extending {@link DenyList}, that is ownerless and allows anyone to claim.\n *\n * @export\n * @class OpenAllowList\n * @typedef {OpenAllowList}\n * @extends {DeployableTarget<OpenAllowListPayload>}\n */\nexport class OpenAllowList extends SimpleDenyList<undefined> {\n /**\n * @inheritdoc\n *\n * @public\n * @param {?SimpleDenyListPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: SimpleDenyListPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [_, options] = this.validateDeploymentConfig({}, _options);\n return {\n abi: openAllowListAbi,\n bytecode: bytecode as Hex,\n args: [prepareSimpleDenyListPayload({ owner: zeroAddress, denied: [] })],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n","import { aAllowListAbi } from '@boostxyz/evm';\nimport {\n AOffchainAccessList,\n ASimpleAllowList,\n ASimpleDenyList,\n} from '@boostxyz/evm/deploys/componentInterfaces.json';\nimport { readContract } from '@wagmi/core';\nimport type { Address, Hex } from 'viem';\nimport type { DeployableOptions } from '../Deployable/Deployable';\nimport { InvalidComponentInterfaceError } from '../errors';\nimport type { ReadParams } from '../utils';\nimport { OffchainAccessList } from './OffchainAccessList';\nimport { OpenAllowList } from './OpenAllowList';\nimport { SimpleAllowList } from './SimpleAllowList';\nimport { SimpleDenyList } from './SimpleDenyList';\n\nexport { OffchainAccessList, OpenAllowList, SimpleAllowList, SimpleDenyList };\n\n/**\n * A union type representing all valid protocol AllowList implementations\n *\n * @export\n * @typedef {AllowList}\n */\nexport type AllowList =\n | OffchainAccessList\n | OpenAllowList\n | SimpleAllowList\n | SimpleDenyList;\n\n/**\n * A map of AllowList component interfaces to their constructors.\n *\n * @type {{ \"0x1392d798\": SimpleAllowList; \"0x3d30a22c\": SimpleDenyList; \"0x2a6b3c38\": OffchainAccessList; }}\n */\nexport const AllowListByComponentInterface = {\n [ASimpleAllowList as Hex]: SimpleAllowList,\n [ASimpleDenyList as Hex]: SimpleDenyList,\n [AOffchainAccessList as Hex]: OffchainAccessList,\n};\n\n/**\n * A function that will read a contract's component interface using `getComponentInterface` and return the correct instantiated instance.\n * This function will never return an instance of {@link OpenAllowList} because it has the same component interface as {@link SimpleDenyList}\n *\n * @export\n * @async\n * @param {DeployableOptions} options\n * @param {Address} address\n * @returns {Promise<SimpleAllowList | SimpleDenyList>}\n * @throws {@link InvalidComponentInterfaceError}\n */\nexport async function allowListFromAddress(\n options: DeployableOptions,\n address: Address,\n params?: ReadParams,\n) {\n const interfaceId = (await readContract(options.config, {\n abi: aAllowListAbi,\n functionName: 'getComponentInterface',\n address,\n ...params,\n })) as keyof typeof AllowListByComponentInterface;\n const Ctor = AllowListByComponentInterface[interfaceId];\n if (!Ctor) {\n throw new InvalidComponentInterfaceError(\n Object.keys(AllowListByComponentInterface) as Hex[],\n interfaceId as Hex,\n );\n }\n return new Ctor(options, address) as\n | SimpleDenyList\n | SimpleAllowList\n | OffchainAccessList;\n}\n"],"names":["_OffchainAccessList","DeployableTargetWithRBAC","offchainAccessListAbi","params","readOffchainAccessListOwner","_address","_params","readOffchainAccessListGetAllowListIds","readOffchainAccessListGetDenyListIds","ids","request","result","simulateOffchainAccessListSetAllowListIds","writeOffchainAccessListSetAllowListIds","simulateOffchainAccessListSetDenyListIds","writeOffchainAccessListSetDenyListIds","id","simulateOffchainAccessListAddAllowListId","writeOffchainAccessListAddAllowListId","simulateOffchainAccessListAddDenyListId","writeOffchainAccessListAddDenyListId","simulateOffchainAccessListRemoveAllowListId","writeOffchainAccessListRemoveAllowListId","simulateOffchainAccessListRemoveDenyListId","writeOffchainAccessListRemoveDenyListId","readOffchainAccessListHasAllowListId","readOffchainAccessListHasDenyListId","_payload","_options","payload","options","zeroAddress","owner","getAccount","_a","DeployableUnknownOwnerProvidedError","bytecode","prepareOffchainAccessListPayload","__vite_import_meta_env__","OffchainAccessListBases","RegistryType","OffchainAccessList","allowlistIds","denylistIds","encodeAbiParameters","openAllowListAbi","simpleDenyListAbi","OpenAllowList","SimpleDenyList","_","prepareSimpleDenyListPayload","AllowListByComponentInterface","ASimpleAllowList","SimpleAllowList","ASimpleDenyList","AOffchainAccessList","allowListFromAddress","address","interfaceId","readContract","aAllowListAbi","Ctor","InvalidComponentInterfaceError"],"mappings":"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"}
1
+ {"version":3,"file":"AllowList-BJ9HQGFs.cjs","sources":["../src/AllowLists/OffchainAccessList.ts","../src/AllowLists/OpenAllowList.ts","../src/AllowLists/AllowList.ts"],"sourcesContent":["import {\n offchainAccessListAbi,\n readOffchainAccessListGetAllowListIds,\n readOffchainAccessListGetDenyListIds,\n readOffchainAccessListHasAllowListId,\n readOffchainAccessListHasDenyListId,\n readOffchainAccessListOwner,\n simulateOffchainAccessListAddAllowListId,\n simulateOffchainAccessListAddDenyListId,\n simulateOffchainAccessListRemoveAllowListId,\n simulateOffchainAccessListRemoveDenyListId,\n simulateOffchainAccessListSetAllowListIds,\n simulateOffchainAccessListSetDenyListIds,\n writeOffchainAccessListAddAllowListId,\n writeOffchainAccessListAddDenyListId,\n writeOffchainAccessListRemoveAllowListId,\n writeOffchainAccessListRemoveDenyListId,\n writeOffchainAccessListSetAllowListIds,\n writeOffchainAccessListSetDenyListIds,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/allowlists/OffchainAccessList.sol/OffchainAccessList.json';\nimport { getAccount } from '@wagmi/core';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n encodeAbiParameters,\n zeroAddress,\n} from 'viem';\nimport { OffchainAccessList as OffchainAccessListBases } from '../../dist/deployments.json';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport { DeployableTargetWithRBAC } from '../Deployable/DeployableTargetWithRBAC';\nimport { DeployableUnknownOwnerProvidedError } from '../errors';\nimport {\n type GenericLog,\n type ReadParams,\n RegistryType,\n type WriteParams,\n} from '../utils';\n\nexport { offchainAccessListAbi };\n\n/**\n * Object representation of a {@link OffchainAccessList} initialization payload.\n *\n * @export\n * @interface OffchainAccessListPayload\n * @typedef {OffchainAccessListPayload}\n */\nexport interface OffchainAccessListPayload {\n /**\n * The access list's owner\n *\n * @type {Address}\n */\n owner: Address;\n /**\n * List of off-chain allowlist IDs.\n *\n * @type {string[]}\n */\n allowlistIds: string[];\n /**\n * List of off-chain denylist IDs.\n *\n * @type {string[]}\n */\n denylistIds: string[];\n}\n\n/**\n * A generic `viem.Log` event with support for `OffchainAccessList` event types.\n *\n * @export\n * @typedef {OffchainAccessListLog}\n * @template {ContractEventName<typeof offchainAccessListAbi>} [event=ContractEventName<\n * typeof offchainAccessListAbi\n * >]\n */\nexport type OffchainAccessListLog<\n event extends ContractEventName<\n typeof offchainAccessListAbi\n > = ContractEventName<typeof offchainAccessListAbi>,\n> = GenericLog<typeof offchainAccessListAbi, event>;\n\n/**\n * An AllowList that links on-chain boosts to off-chain access lists stored in a database.\n * This implementation always allows everyone (returns true) but stores references to off-chain allowlist and denylist IDs.\n *\n * @export\n * @class OffchainAccessList\n * @typedef {OffchainAccessList}\n * @extends {DeployableTargetWithRBAC<OffchainAccessListPayload>}\n */\nexport class OffchainAccessList extends DeployableTargetWithRBAC<\n OffchainAccessListPayload,\n typeof offchainAccessListAbi\n> {\n public override readonly abi = offchainAccessListAbi;\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_OFFCHAIN_ACCESS_LIST_BASE\n ? { 31337: import.meta.env.VITE_OFFCHAIN_ACCESS_LIST_BASE }\n : {}),\n ...(OffchainAccessListBases as Record<number, Address>),\n };\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.ALLOW_LIST;\n\n /**\n * Retrieves the owner\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<Address>} - The address of the owner\n */\n public async owner(params?: ReadParams): Promise<Address> {\n return await readOffchainAccessListOwner(this._config, {\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 address: this.assertValidAddress(),\n args: [],\n });\n }\n\n /**\n * Check if a user is authorized based on off-chain allowlists/denylists\n *\n * @public\n * @async\n * @param {Address} address - The address of the user\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the user is allowed\n */\n public isAllowed(_address: Address, _params?: ReadParams) {\n // TODO: check address against offchain allowlist/denylist using api calls\n throw new Error(\n 'isAllowed() not available for OffchainAccessList, implementation should be done offchain',\n );\n }\n\n /**\n * Get all allowlist IDs\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<string[]>} - Array of allowlist IDs\n */\n public async getAllowlistIds(params?: ReadParams) {\n return await readOffchainAccessListGetAllowListIds(this._config, {\n address: this.assertValidAddress(),\n args: [],\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\n /**\n * Get all denylist IDs\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<string[]>} - Array of denylist IDs\n */\n public async getDenylistIds(params?: ReadParams) {\n return await readOffchainAccessListGetDenyListIds(this._config, {\n address: this.assertValidAddress(),\n args: [],\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\n /**\n * Set allowlist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new allowlist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setAllowlistIds(ids: string[], params?: WriteParams) {\n return await this.awaitResult(this.setAllowlistIdsRaw(ids, params));\n }\n\n /**\n * Set allowlist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new allowlist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setAllowlistIdsRaw(ids: string[], params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListSetAllowListIds(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [ids],\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 writeOffchainAccessListSetAllowListIds(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Set denylist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new denylist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setDenylistIds(ids: string[], params?: WriteParams) {\n return await this.awaitResult(this.setDenylistIdsRaw(ids, params));\n }\n\n /**\n * Set denylist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new denylist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setDenylistIdsRaw(ids: string[], params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListSetDenyListIds(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [ids],\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 writeOffchainAccessListSetDenyListIds(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Add a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async addAllowlistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.addAllowlistIdRaw(id, params));\n }\n\n /**\n * Add a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async addAllowlistIdRaw(id: string, params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListAddAllowListId(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListAddAllowListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Add a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async addDenylistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.addDenylistIdRaw(id, params));\n }\n\n /**\n * Add a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async addDenylistIdRaw(id: string, params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListAddDenyListId(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListAddDenyListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Remove a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async removeAllowlistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.removeAllowlistIdRaw(id, params));\n }\n\n /**\n * Remove a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async removeAllowlistIdRaw(id: string, params?: WriteParams) {\n const { request, result } =\n await simulateOffchainAccessListRemoveAllowListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListRemoveAllowListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Remove a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async removeDenylistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.removeDenylistIdRaw(id, params));\n }\n\n /**\n * Remove a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async removeDenylistIdRaw(id: string, params?: WriteParams) {\n const { request, result } =\n await simulateOffchainAccessListRemoveDenyListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListRemoveDenyListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Check if an allowlist ID exists\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to check\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the ID exists\n */\n public async hasAllowlistId(\n id: string,\n params?: ReadParams,\n ): Promise<boolean> {\n return await readOffchainAccessListHasAllowListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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\n /**\n * Check if a denylist ID exists\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to check\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the ID exists\n */\n public async hasDenylistId(\n id: string,\n params?: ReadParams,\n ): Promise<boolean> {\n return await readOffchainAccessListHasDenyListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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\n /**\n * @inheritdoc\n *\n * @public\n * @param {?OffchainAccessListPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: OffchainAccessListPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n if (!payload.owner || payload.owner === zeroAddress) {\n const owner = options.account\n ? options.account.address\n : options.config\n ? getAccount(options.config).address\n : this._account?.address;\n if (owner) {\n payload.owner = owner;\n } else {\n throw new DeployableUnknownOwnerProvidedError();\n }\n }\n return {\n abi: offchainAccessListAbi,\n bytecode: bytecode as Hex,\n args: [prepareOffchainAccessListPayload(payload)],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n\n/**\n * Given a {@link OffchainAccessListPayload}, properly encode the initialization payload.\n *\n * @param {OffchainAccessListPayload} param0\n * @param {Address} param0.owner - The access list's owner\n * @param {string[]} param0.allowlistIds - List of off-chain allowlist IDs\n * @param {string[]} param0.denylistIds - List of off-chain denylist IDs\n * @returns {Hex}\n */\nexport function prepareOffchainAccessListPayload({\n owner,\n allowlistIds,\n denylistIds,\n}: OffchainAccessListPayload) {\n return encodeAbiParameters(\n [\n { type: 'address', name: 'owner' },\n { type: 'string[]', name: 'allowlistIds' },\n { type: 'string[]', name: 'denylistIds' },\n ],\n [owner, allowlistIds, denylistIds],\n );\n}\n","import { simpleDenyListAbi } from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/allowlists/SimpleDenyList.sol/SimpleDenyList.json';\nimport { type Hex, zeroAddress } from 'viem';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport {\n SimpleDenyList,\n type SimpleDenyListPayload,\n prepareSimpleDenyListPayload,\n} from './SimpleDenyList';\n\nexport const openAllowListAbi = simpleDenyListAbi;\n\n/**\n * A simple AllowList, extending {@link DenyList}, that is ownerless and allows anyone to claim.\n *\n * @export\n * @class OpenAllowList\n * @typedef {OpenAllowList}\n * @extends {DeployableTarget<OpenAllowListPayload>}\n */\nexport class OpenAllowList extends SimpleDenyList<undefined> {\n /**\n * @inheritdoc\n *\n * @public\n * @param {?SimpleDenyListPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: SimpleDenyListPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [_, options] = this.validateDeploymentConfig({}, _options);\n return {\n abi: openAllowListAbi,\n bytecode: bytecode as Hex,\n args: [prepareSimpleDenyListPayload({ owner: zeroAddress, denied: [] })],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n","import { aAllowListAbi } from '@boostxyz/evm';\nimport {\n AOffchainAccessList,\n ASimpleAllowList,\n ASimpleDenyList,\n} from '@boostxyz/evm/deploys/componentInterfaces.json';\nimport { readContract } from '@wagmi/core';\nimport type { Address, Hex } from 'viem';\nimport type { DeployableOptions } from '../Deployable/Deployable';\nimport { InvalidComponentInterfaceError } from '../errors';\nimport type { ReadParams } from '../utils';\nimport { OffchainAccessList } from './OffchainAccessList';\nimport { OpenAllowList } from './OpenAllowList';\nimport { SimpleAllowList } from './SimpleAllowList';\nimport { SimpleDenyList } from './SimpleDenyList';\n\nexport { OffchainAccessList, OpenAllowList, SimpleAllowList, SimpleDenyList };\n\n/**\n * A union type representing all valid protocol AllowList implementations\n *\n * @export\n * @typedef {AllowList}\n */\nexport type AllowList =\n | OffchainAccessList\n | OpenAllowList\n | SimpleAllowList\n | SimpleDenyList;\n\n/**\n * A map of AllowList component interfaces to their constructors.\n *\n * @type {{ \"0x1392d798\": SimpleAllowList; \"0x3d30a22c\": SimpleDenyList; \"0x2a6b3c38\": OffchainAccessList; }}\n */\nexport const AllowListByComponentInterface = {\n [ASimpleAllowList as Hex]: SimpleAllowList,\n [ASimpleDenyList as Hex]: SimpleDenyList,\n [AOffchainAccessList as Hex]: OffchainAccessList,\n};\n\n/**\n * A function that will read a contract's component interface using `getComponentInterface` and return the correct instantiated instance.\n * This function will never return an instance of {@link OpenAllowList} because it has the same component interface as {@link SimpleDenyList}\n *\n * @export\n * @async\n * @param {DeployableOptions} options\n * @param {Address} address\n * @returns {Promise<SimpleAllowList | SimpleDenyList>}\n * @throws {@link InvalidComponentInterfaceError}\n */\nexport async function allowListFromAddress(\n options: DeployableOptions,\n address: Address,\n params?: ReadParams,\n) {\n const interfaceId = (await readContract(options.config, {\n abi: aAllowListAbi,\n functionName: 'getComponentInterface',\n address,\n ...params,\n })) as keyof typeof AllowListByComponentInterface;\n const Ctor = AllowListByComponentInterface[interfaceId];\n if (!Ctor) {\n throw new InvalidComponentInterfaceError(\n Object.keys(AllowListByComponentInterface) as Hex[],\n interfaceId as Hex,\n );\n }\n return new Ctor(options, address) as\n | SimpleDenyList\n | SimpleAllowList\n | OffchainAccessList;\n}\n"],"names":["_OffchainAccessList","DeployableTargetWithRBAC","offchainAccessListAbi","params","readOffchainAccessListOwner","_address","_params","readOffchainAccessListGetAllowListIds","readOffchainAccessListGetDenyListIds","ids","request","result","simulateOffchainAccessListSetAllowListIds","writeOffchainAccessListSetAllowListIds","simulateOffchainAccessListSetDenyListIds","writeOffchainAccessListSetDenyListIds","id","simulateOffchainAccessListAddAllowListId","writeOffchainAccessListAddAllowListId","simulateOffchainAccessListAddDenyListId","writeOffchainAccessListAddDenyListId","simulateOffchainAccessListRemoveAllowListId","writeOffchainAccessListRemoveAllowListId","simulateOffchainAccessListRemoveDenyListId","writeOffchainAccessListRemoveDenyListId","readOffchainAccessListHasAllowListId","readOffchainAccessListHasDenyListId","_payload","_options","payload","options","zeroAddress","owner","getAccount","_a","DeployableUnknownOwnerProvidedError","bytecode","prepareOffchainAccessListPayload","__vite_import_meta_env__","OffchainAccessListBases","RegistryType","OffchainAccessList","allowlistIds","denylistIds","encodeAbiParameters","openAllowListAbi","simpleDenyListAbi","OpenAllowList","SimpleDenyList","_","prepareSimpleDenyListPayload","AllowListByComponentInterface","ASimpleAllowList","SimpleAllowList","ASimpleDenyList","AOffchainAccessList","allowListFromAddress","address","interfaceId","readContract","aAllowListAbi","Ctor","InvalidComponentInterfaceError"],"mappings":"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"}
@@ -3,10 +3,10 @@ import { n as q, o as v, p as P } from "./componentInterfaces-D2s6AXlV.js";
3
3
  import { getAccount as N, readContract as x } from "@wagmi/core";
4
4
  import { DeployableUnknownOwnerProvidedError as F, InvalidComponentInterfaceError as k } from "./errors.js";
5
5
  import { zeroAddress as l, encodeAbiParameters as M } from "viem";
6
- import { O as U } from "./deployments-EFoHkvCp.js";
6
+ import { O as U } from "./deployments-CHQ30INq.js";
7
7
  import { DeployableTargetWithRBAC as W } from "./Deployable/DeployableTargetWithRBAC.js";
8
8
  import { RegistryType as j } from "./utils.js";
9
- import { S as h, b as z, p as G } from "./SimpleDenyList-tEOqSTnD.js";
9
+ import { S as h, b as z, p as G } from "./SimpleDenyList-Dr03aOeP.js";
10
10
  import { SimpleAllowList as J } from "./AllowLists/SimpleAllowList.js";
11
11
  const K = "0x6080604052348015600e575f80fd5b5060156019565b607c565b63409feecd198054600181161560365763f92ee8a95f526004601cfd5b6001600160401b03808260011c146077578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b612127806100895f395ff3fe608060405260043610610229575f3560e01c8063859aa08911610131578063e89079fa116100ac578063f04e283e1161007c578063fdee627a11610062578063fdee627a14610620578063fe9fbb8014610634578063fee81cf414610653575f80fd5b8063f04e283e146105fa578063f2fde38b1461060d575f80fd5b8063e89079fa14610587578063ec87621c146105a6578063ef05bda9146105ba578063ef4550bf146105d9575f80fd5b8063be4994f811610101578063dcc21361116100e7578063dcc2136114610526578063e3f756de14610545578063e611205f14610568575f80fd5b8063be4994f8146104e8578063cbb7de5114610507575f80fd5b8063859aa089146104535780638da5cb5b14610472578063937d599c146104aa57806399927eec146104c9575f80fd5b80632de94807116101c1578063514e62fc11610191578063715018a611610177578063715018a61461041857806375b238fc146104205780637e973e8214610434575f80fd5b8063514e62fc146103db57806354d1f13d14610410575f80fd5b80632de948071461034b5780634359d28a1461038a578063439fab91146103a95780634a4ee7b1146103c8575f80fd5b80631cd64df4116101fc5780631cd64df4146102b557806325692962146102ea57806328d6183b146102f25780632c297c181461032c575f80fd5b806301ffc9a71461022d578063096f199f14610261578063183a4f6e1461028d5780631c10893f146102a2575b5f80fd5b348015610238575f80fd5b5061024c610247366004611725565b610684565b60405190151581526020015b60405180910390f35b34801561026c575f80fd5b5061028061027b36600461176b565b6106df565b60405161025891906117b0565b6102a061029b36600461176b565b610785565b005b6102a06102b03660046117e3565b610792565b3480156102c0575f80fd5b5061024c6102cf3660046117e3565b638b78c6d8600c9081525f9290925260209091205481161490565b6102a06107a8565b3480156102fd575f80fd5b506040517f2a6b3c38000000000000000000000000000000000000000000000000000000008152602001610258565b348015610337575f80fd5b506102a0610346366004611852565b6107f5565b348015610356575f80fd5b5061037c610365366004611891565b638b78c6d8600c9081525f91909152602090205490565b604051908152602001610258565b348015610395575f80fd5b506102a06103a43660046118ed565b6108ea565b3480156103b4575f80fd5b506102a06103c3366004611852565b6109e4565b6102a06103d63660046117e3565b610ab7565b3480156103e6575f80fd5b5061024c6103f53660046117e3565b638b78c6d8600c9081525f9290925260209091205416151590565b6102a0610ac9565b6102a0610b02565b34801561042b575f80fd5b5061037c600281565b34801561043f575f80fd5b506102a061044e366004611852565b610b15565b34801561045e575f80fd5b506102a061046d366004611959565b610bfe565b34801561047d575f80fd5b50638b78c6d8195460405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610258565b3480156104b5575f80fd5b5061024c6104c4366004611852565b610ca0565b3480156104d4575f80fd5b5061024c6104e3366004611852565b610d15565b3480156104f3575f80fd5b506102a06105023660046118ed565b610d7f565b348015610512575f80fd5b506102a0610521366004611959565b610e1d565b348015610531575f80fd5b506102a06105403660046118ed565b610ebd565b348015610550575f80fd5b5061024c61055f36600461198c565b60019392505050565b348015610573575f80fd5b5061028061058236600461176b565b610f5b565b348015610592575f80fd5b506102a06105a1366004611852565b610f69565b3480156105b1575f80fd5b5061037c600181565b3480156105c5575f80fd5b506102a06105d4366004611852565b6110bc565b3480156105e4575f80fd5b506105ed6111bc565b60405161025891906119dd565b6102a0610608366004611891565b611290565b6102a061061b366004611891565b6112ca565b34801561062b575f80fd5b506105ed6112f0565b34801561063f575f80fd5b5061024c61064e366004611891565b6113ba565b34801561065e575f80fd5b5061037c61066d366004611891565b63389a75e1600c9081525f91909152602090205490565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f2a6b3c380000000000000000000000000000000000000000000000000000000014806106d957506106d982611419565b92915050565b600181815481106106ee575f80fd5b905f5260205f20015f91509050805461070690611a5e565b80601f016020809104026020016040519081016040528092919081815260200182805461073290611a5e565b801561077d5780601f106107545761010080835404028352916020019161077d565b820191905f5260205f20905b81548152906001019060200180831161076057829003601f168201915b505050505081565b61078f338261146e565b50565b61079a611479565b6107a48282611493565b5050565b5f6202a30067ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b6107fe336113ba565b610834576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61083e8282610ca0565b156108aa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f44656e796c69737420494420616c72656164792065786973747300000000000060448201526064015b60405180910390fd5b6001805480820182555f919091527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6016108e5828483611b27565b505050565b60026108f58161149f565b83821461092e576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b848110156109dc575f84848381811061094b5761094b611be1565b90506020020160208101906109609190611c0e565b90508015156001036109a25761099d87878481811061098157610981611be1565b90506020020160208101906109969190611891565b6001611493565b6109d3565b6109d38787848181106109b7576109b7611be1565b90506020020160208101906109cc9190611891565b600161146e565b50600101610930565b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011328054600382558015610a355760018160011c14303b10610a2c5763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f8080610a4585870187611d5e565b925092509250610a54836114d0565b8151610a66905f90602085019061164f565b508051610a7a90600190602084019061164f565b5050505080156108e5576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a1505050565b610abf611479565b6107a4828261146e565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b610b0a611479565b610b135f611518565b565b610b1e336113ba565b610b54576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b5e8282610d15565b15610bc5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f416c6c6f776c69737420494420616c726561647920657869737473000000000060448201526064016108a1565b5f80546001810182559080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563016108e5828483611b27565b610c07336113ba565b610c3d576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c4860015f6116a3565b5f5b818110156108e5576001838383818110610c6657610c66611be1565b9050602002810190610c789190611dd4565b82546001810184555f938452602090932090920191610c979183611b27565b50600101610c4a565b5f805b600154811015610d0c578383604051610cbd929190611e35565b604051809103902060018281548110610cd857610cd8611be1565b905f5260205f2001604051610ced9190611e44565b604051809103902003610d045760019150506106d9565b600101610ca3565b505f9392505050565b5f805b5f54811015610d0c578383604051610d31929190611e35565b60405180910390205f8281548110610d4b57610d4b611be1565b905f5260205f2001604051610d609190611e44565b604051809103902003610d775760019150506106d9565b600101610d18565b6002610d8a8161149f565b838214610dc3576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b848110156109dc57610e15868683818110610de257610de2611be1565b9050602002016020810190610df79190611891565b858584818110610e0957610e09611be1565b90506020020135611493565b600101610dc5565b610e26336113ba565b610e5c576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e665f806116a3565b5f5b818110156108e5575f838383818110610e8357610e83611be1565b9050602002810190610e959190611dd4565b82546001810184555f938452602090932090920191610eb49183611b27565b50600101610e68565b6002610ec88161149f565b838214610f01576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b848110156109dc57610f53868683818110610f2057610f20611be1565b9050602002016020810190610f359190611891565b858584818110610f4757610f47611be1565b9050602002013561146e565b600101610f03565b5f81815481106106ee575f80fd5b610f72336113ba565b610fa8576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b5f54811015611085578282604051610fc3929190611e35565b60405180910390205f8281548110610fdd57610fdd611be1565b905f5260205f2001604051610ff29190611e44565b60405180910390200361107d575f805461100e90600190611ed3565b8154811061101e5761101e611be1565b905f5260205f20015f828154811061103857611038611be1565b905f5260205f2001908161104c9190611f0b565b505f80548061105d5761105d611fe3565b600190038181905f5260205f20015f61107691906116be565b9055505050565b600101610faa565b5081816040517f8cf9845e0000000000000000000000000000000000000000000000000000000081526004016108a1929190612010565b6110c5336113ba565b6110fb576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b600154811015611085578282604051611117929190611e35565b60405180910390206001828154811061113257611132611be1565b905f5260205f20016040516111479190611e44565b6040518091039020036111b45760018054611163908290611ed3565b8154811061117357611173611be1565b905f5260205f20016001828154811061118e5761118e611be1565b905f5260205f200190816111a29190611f0b565b50600180548061105d5761105d611fe3565b6001016110fd565b60606001805480602002602001604051908101604052809291908181526020015f905b82821015611287578382905f5260205f200180546111fc90611a5e565b80601f016020809104026020016040519081016040528092919081815260200182805461122890611a5e565b80156112735780601f1061124a57610100808354040283529160200191611273565b820191905f5260205f20905b81548152906001019060200180831161125657829003601f168201915b5050505050815260200190600101906111df565b50505050905090565b611298611479565b63389a75e1600c52805f526020600c2080544211156112be57636f5e88185f526004601cfd5b5f905561078f81611518565b6112d2611479565b8060601b6112e757637448fbae5f526004601cfd5b61078f81611518565b60605f805480602002602001604051908101604052809291908181526020015f905b82821015611287578382905f5260205f2001805461132f90611a5e565b80601f016020809104026020016040519081016040528092919081815260200182805461135b90611a5e565b80156113a65780601f1061137d576101008083540402835291602001916113a6565b820191905f5260205f20905b81548152906001019060200180831161138957829003601f168201915b505050505081526020019060010190611312565b5f8173ffffffffffffffffffffffffffffffffffffffff166113df638b78c6d8195490565b73ffffffffffffffffffffffffffffffffffffffff1614806106d95750638b78c6d8600c9081525f839052602090205460031615156106d9565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fe2089f790000000000000000000000000000000000000000000000000000000014806106d957506106d982611562565b6107a482825f6115f8565b638b78c6d819543314610b13576382b429005f526004601cfd5b6107a4828260016115f8565b638b78c6d81954331461078f57638b78c6d8600c52335f52806020600c20541661078f576382b429005f526004601cfd5b73ffffffffffffffffffffffffffffffffffffffff16638b78c6d819819055805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a350565b638b78c6d819805473ffffffffffffffffffffffffffffffffffffffff9092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a355565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6ab67a0d0000000000000000000000000000000000000000000000000000000014806106d957507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146106d9565b638b78c6d8600c52825f526020600c20805483811783611619575080841681185b80835580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a3505050505050565b828054828255905f5260205f20908101928215611693579160200282015b828111156116935782518290611683908261203e565b509160200191906001019061166d565b5061169f9291506116f5565b5090565b5080545f8255905f5260205f209081019061078f91906116f5565b5080546116ca90611a5e565b5f825580601f106116d9575050565b601f0160209004905f5260205f209081019061078f9190611711565b8082111561169f575f61170882826116be565b506001016116f5565b5b8082111561169f575f8155600101611712565b5f60208284031215611735575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114611764575f80fd5b9392505050565b5f6020828403121561177b575f80fd5b5035919050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6117646020830184611782565b73ffffffffffffffffffffffffffffffffffffffff8116811461078f575f80fd5b5f80604083850312156117f4575f80fd5b82356117ff816117c2565b946020939093013593505050565b5f8083601f84011261181d575f80fd5b50813567ffffffffffffffff811115611834575f80fd5b60208301915083602082850101111561184b575f80fd5b9250929050565b5f8060208385031215611863575f80fd5b823567ffffffffffffffff811115611879575f80fd5b6118858582860161180d565b90969095509350505050565b5f602082840312156118a1575f80fd5b8135611764816117c2565b5f8083601f8401126118bc575f80fd5b50813567ffffffffffffffff8111156118d3575f80fd5b6020830191508360208260051b850101111561184b575f80fd5b5f805f8060408587031215611900575f80fd5b843567ffffffffffffffff811115611916575f80fd5b611922878288016118ac565b909550935050602085013567ffffffffffffffff811115611941575f80fd5b61194d878288016118ac565b95989497509550505050565b5f806020838503121561196a575f80fd5b823567ffffffffffffffff811115611980575f80fd5b611885858286016118ac565b5f805f6040848603121561199e575f80fd5b83356119a9816117c2565b9250602084013567ffffffffffffffff8111156119c4575f80fd5b6119d08682870161180d565b9497909650939450505050565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b82811015611a52577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0878603018452611a3d858351611782565b94506020938401939190910190600101611a03565b50929695505050505050565b600181811c90821680611a7257607f821691505b602082108103611aa9577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b601f8211156108e557805f5260205f20601f840160051c81016020851015611b015750805b601f840160051c820191505b81811015611b20575f8155600101611b0d565b5050505050565b67ffffffffffffffff831115611b3f57611b3f611aaf565b611b5383611b4d8354611a5e565b83611adc565b5f601f841160018114611b84575f8515611b6d5750838201355b5f19600387901b1c1916600186901b178355611b20565b5f83815260208120601f198716915b82811015611bb35786850135825560209485019460019092019101611b93565b5086821015611bcf575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215611c1e575f80fd5b81358015158114611764575f80fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611c5657611c56611aaf565b604052919050565b5f82601f830112611c6d575f80fd5b813567ffffffffffffffff811115611c8757611c87611aaf565b8060051b611c9760208201611c2d565b91825260208185018101929081019086841115611cb2575f80fd5b6020860192505b83831015611d5457823567ffffffffffffffff811115611cd7575f80fd5b8601603f81018813611ce7575f80fd5b602081013567ffffffffffffffff811115611d0457611d04611aaf565b611d176020601f19601f84011601611c2d565b8181526040838301018a1015611d2b575f80fd5b816040840160208301375f60208383010152808552505050602082019150602083019250611cb9565b9695505050505050565b5f805f60608486031215611d70575f80fd5b8335611d7b816117c2565b9250602084013567ffffffffffffffff811115611d96575f80fd5b611da286828701611c5e565b925050604084013567ffffffffffffffff811115611dbe575f80fd5b611dca86828701611c5e565b9150509250925092565b5f8083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112611e07575f80fd5b83018035915067ffffffffffffffff821115611e21575f80fd5b60200191503681900382131561184b575f80fd5b818382375f9101908152919050565b5f808354611e5181611a5e565b600182168015611e685760018114611e9b57611ec8565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0083168652811515820286019350611ec8565b865f5260205f205f5b83811015611ec057815488820152600190910190602001611ea4565b505081860193505b509195945050505050565b818103818111156106d9577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b818103611f16575050565b611f208254611a5e565b67ffffffffffffffff811115611f3857611f38611aaf565b611f4c81611f468454611a5e565b84611adc565b5f601f821160018114611f80575f8315611f665750848201545b600184901b5f19600386901b1c198216175b855550611b20565b5f8581526020808220868352908220601f198616925b83811015611fb65782860154825560019586019590910190602001611f96565b5085831015611fd357818501545f19600388901b60f8161c191681555b5050505050600190811b01905550565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b815167ffffffffffffffff81111561205857612058611aaf565b61206681611f468454611a5e565b6020601f821160018114612096575f8315611f66575081850151600184901b5f19600386901b1c19821617611f78565b5f84815260208120601f198516915b828110156120c557878501518255602094850194600190920191016120a5565b50848210156120e257868401515f19600387901b60f8161c191681555b50505050600190811b0190555056fea26469706673582212206100a11e4e0b5bdd589ed060e5af18faef222dc9a5fb78d50ce02911e161f36664736f6c634300081a0033", t = { 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 {
12
12
  constructor() {
@@ -423,4 +423,4 @@ export {
423
423
  t0 as b,
424
424
  $ as p
425
425
  };
426
- //# sourceMappingURL=AllowList-D_K4S6jV.js.map
426
+ //# sourceMappingURL=AllowList-DiU7g4Hs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AllowList-D_K4S6jV.js","sources":["../src/AllowLists/OffchainAccessList.ts","../src/AllowLists/OpenAllowList.ts","../src/AllowLists/AllowList.ts"],"sourcesContent":["import {\n offchainAccessListAbi,\n readOffchainAccessListGetAllowListIds,\n readOffchainAccessListGetDenyListIds,\n readOffchainAccessListHasAllowListId,\n readOffchainAccessListHasDenyListId,\n readOffchainAccessListOwner,\n simulateOffchainAccessListAddAllowListId,\n simulateOffchainAccessListAddDenyListId,\n simulateOffchainAccessListRemoveAllowListId,\n simulateOffchainAccessListRemoveDenyListId,\n simulateOffchainAccessListSetAllowListIds,\n simulateOffchainAccessListSetDenyListIds,\n writeOffchainAccessListAddAllowListId,\n writeOffchainAccessListAddDenyListId,\n writeOffchainAccessListRemoveAllowListId,\n writeOffchainAccessListRemoveDenyListId,\n writeOffchainAccessListSetAllowListIds,\n writeOffchainAccessListSetDenyListIds,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/allowlists/OffchainAccessList.sol/OffchainAccessList.json';\nimport { getAccount } from '@wagmi/core';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n encodeAbiParameters,\n zeroAddress,\n} from 'viem';\nimport { OffchainAccessList as OffchainAccessListBases } from '../../dist/deployments.json';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport { DeployableTargetWithRBAC } from '../Deployable/DeployableTargetWithRBAC';\nimport { DeployableUnknownOwnerProvidedError } from '../errors';\nimport {\n type GenericLog,\n type ReadParams,\n RegistryType,\n type WriteParams,\n} from '../utils';\n\nexport { offchainAccessListAbi };\n\n/**\n * Object representation of a {@link OffchainAccessList} initialization payload.\n *\n * @export\n * @interface OffchainAccessListPayload\n * @typedef {OffchainAccessListPayload}\n */\nexport interface OffchainAccessListPayload {\n /**\n * The access list's owner\n *\n * @type {Address}\n */\n owner: Address;\n /**\n * List of off-chain allowlist IDs.\n *\n * @type {string[]}\n */\n allowlistIds: string[];\n /**\n * List of off-chain denylist IDs.\n *\n * @type {string[]}\n */\n denylistIds: string[];\n}\n\n/**\n * A generic `viem.Log` event with support for `OffchainAccessList` event types.\n *\n * @export\n * @typedef {OffchainAccessListLog}\n * @template {ContractEventName<typeof offchainAccessListAbi>} [event=ContractEventName<\n * typeof offchainAccessListAbi\n * >]\n */\nexport type OffchainAccessListLog<\n event extends ContractEventName<\n typeof offchainAccessListAbi\n > = ContractEventName<typeof offchainAccessListAbi>,\n> = GenericLog<typeof offchainAccessListAbi, event>;\n\n/**\n * An AllowList that links on-chain boosts to off-chain access lists stored in a database.\n * This implementation always allows everyone (returns true) but stores references to off-chain allowlist and denylist IDs.\n *\n * @export\n * @class OffchainAccessList\n * @typedef {OffchainAccessList}\n * @extends {DeployableTargetWithRBAC<OffchainAccessListPayload>}\n */\nexport class OffchainAccessList extends DeployableTargetWithRBAC<\n OffchainAccessListPayload,\n typeof offchainAccessListAbi\n> {\n public override readonly abi = offchainAccessListAbi;\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_OFFCHAIN_ACCESS_LIST_BASE\n ? { 31337: import.meta.env.VITE_OFFCHAIN_ACCESS_LIST_BASE }\n : {}),\n ...(OffchainAccessListBases as Record<number, Address>),\n };\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.ALLOW_LIST;\n\n /**\n * Retrieves the owner\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<Address>} - The address of the owner\n */\n public async owner(params?: ReadParams): Promise<Address> {\n return await readOffchainAccessListOwner(this._config, {\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 address: this.assertValidAddress(),\n args: [],\n });\n }\n\n /**\n * Check if a user is authorized based on off-chain allowlists/denylists\n *\n * @public\n * @async\n * @param {Address} address - The address of the user\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the user is allowed\n */\n public isAllowed(_address: Address, _params?: ReadParams) {\n // TODO: check address against offchain allowlist/denylist using api calls\n throw new Error(\n 'isAllowed() not available for OffchainAccessList, implementation should be done offchain',\n );\n }\n\n /**\n * Get all allowlist IDs\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<string[]>} - Array of allowlist IDs\n */\n public async getAllowlistIds(params?: ReadParams) {\n return await readOffchainAccessListGetAllowListIds(this._config, {\n address: this.assertValidAddress(),\n args: [],\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\n /**\n * Get all denylist IDs\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<string[]>} - Array of denylist IDs\n */\n public async getDenylistIds(params?: ReadParams) {\n return await readOffchainAccessListGetDenyListIds(this._config, {\n address: this.assertValidAddress(),\n args: [],\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\n /**\n * Set allowlist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new allowlist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setAllowlistIds(ids: string[], params?: WriteParams) {\n return await this.awaitResult(this.setAllowlistIdsRaw(ids, params));\n }\n\n /**\n * Set allowlist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new allowlist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setAllowlistIdsRaw(ids: string[], params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListSetAllowListIds(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [ids],\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 writeOffchainAccessListSetAllowListIds(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Set denylist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new denylist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setDenylistIds(ids: string[], params?: WriteParams) {\n return await this.awaitResult(this.setDenylistIdsRaw(ids, params));\n }\n\n /**\n * Set denylist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new denylist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setDenylistIdsRaw(ids: string[], params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListSetDenyListIds(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [ids],\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 writeOffchainAccessListSetDenyListIds(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Add a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async addAllowlistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.addAllowlistIdRaw(id, params));\n }\n\n /**\n * Add a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async addAllowlistIdRaw(id: string, params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListAddAllowListId(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListAddAllowListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Add a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async addDenylistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.addDenylistIdRaw(id, params));\n }\n\n /**\n * Add a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async addDenylistIdRaw(id: string, params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListAddDenyListId(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListAddDenyListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Remove a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async removeAllowlistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.removeAllowlistIdRaw(id, params));\n }\n\n /**\n * Remove a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async removeAllowlistIdRaw(id: string, params?: WriteParams) {\n const { request, result } =\n await simulateOffchainAccessListRemoveAllowListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListRemoveAllowListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Remove a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async removeDenylistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.removeDenylistIdRaw(id, params));\n }\n\n /**\n * Remove a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async removeDenylistIdRaw(id: string, params?: WriteParams) {\n const { request, result } =\n await simulateOffchainAccessListRemoveDenyListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListRemoveDenyListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Check if an allowlist ID exists\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to check\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the ID exists\n */\n public async hasAllowlistId(\n id: string,\n params?: ReadParams,\n ): Promise<boolean> {\n return await readOffchainAccessListHasAllowListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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\n /**\n * Check if a denylist ID exists\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to check\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the ID exists\n */\n public async hasDenylistId(\n id: string,\n params?: ReadParams,\n ): Promise<boolean> {\n return await readOffchainAccessListHasDenyListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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\n /**\n * @inheritdoc\n *\n * @public\n * @param {?OffchainAccessListPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: OffchainAccessListPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n if (!payload.owner || payload.owner === zeroAddress) {\n const owner = options.account\n ? options.account.address\n : options.config\n ? getAccount(options.config).address\n : this._account?.address;\n if (owner) {\n payload.owner = owner;\n } else {\n throw new DeployableUnknownOwnerProvidedError();\n }\n }\n return {\n abi: offchainAccessListAbi,\n bytecode: bytecode as Hex,\n args: [prepareOffchainAccessListPayload(payload)],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n\n/**\n * Given a {@link OffchainAccessListPayload}, properly encode the initialization payload.\n *\n * @param {OffchainAccessListPayload} param0\n * @param {Address} param0.owner - The access list's owner\n * @param {string[]} param0.allowlistIds - List of off-chain allowlist IDs\n * @param {string[]} param0.denylistIds - List of off-chain denylist IDs\n * @returns {Hex}\n */\nexport function prepareOffchainAccessListPayload({\n owner,\n allowlistIds,\n denylistIds,\n}: OffchainAccessListPayload) {\n return encodeAbiParameters(\n [\n { type: 'address', name: 'owner' },\n { type: 'string[]', name: 'allowlistIds' },\n { type: 'string[]', name: 'denylistIds' },\n ],\n [owner, allowlistIds, denylistIds],\n );\n}\n","import { simpleDenyListAbi } from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/allowlists/SimpleDenyList.sol/SimpleDenyList.json';\nimport { type Hex, zeroAddress } from 'viem';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport {\n SimpleDenyList,\n type SimpleDenyListPayload,\n prepareSimpleDenyListPayload,\n} from './SimpleDenyList';\n\nexport const openAllowListAbi = simpleDenyListAbi;\n\n/**\n * A simple AllowList, extending {@link DenyList}, that is ownerless and allows anyone to claim.\n *\n * @export\n * @class OpenAllowList\n * @typedef {OpenAllowList}\n * @extends {DeployableTarget<OpenAllowListPayload>}\n */\nexport class OpenAllowList extends SimpleDenyList<undefined> {\n /**\n * @inheritdoc\n *\n * @public\n * @param {?SimpleDenyListPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: SimpleDenyListPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [_, options] = this.validateDeploymentConfig({}, _options);\n return {\n abi: openAllowListAbi,\n bytecode: bytecode as Hex,\n args: [prepareSimpleDenyListPayload({ owner: zeroAddress, denied: [] })],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n","import { aAllowListAbi } from '@boostxyz/evm';\nimport {\n AOffchainAccessList,\n ASimpleAllowList,\n ASimpleDenyList,\n} from '@boostxyz/evm/deploys/componentInterfaces.json';\nimport { readContract } from '@wagmi/core';\nimport type { Address, Hex } from 'viem';\nimport type { DeployableOptions } from '../Deployable/Deployable';\nimport { InvalidComponentInterfaceError } from '../errors';\nimport type { ReadParams } from '../utils';\nimport { OffchainAccessList } from './OffchainAccessList';\nimport { OpenAllowList } from './OpenAllowList';\nimport { SimpleAllowList } from './SimpleAllowList';\nimport { SimpleDenyList } from './SimpleDenyList';\n\nexport { OffchainAccessList, OpenAllowList, SimpleAllowList, SimpleDenyList };\n\n/**\n * A union type representing all valid protocol AllowList implementations\n *\n * @export\n * @typedef {AllowList}\n */\nexport type AllowList =\n | OffchainAccessList\n | OpenAllowList\n | SimpleAllowList\n | SimpleDenyList;\n\n/**\n * A map of AllowList component interfaces to their constructors.\n *\n * @type {{ \"0x1392d798\": SimpleAllowList; \"0x3d30a22c\": SimpleDenyList; \"0x2a6b3c38\": OffchainAccessList; }}\n */\nexport const AllowListByComponentInterface = {\n [ASimpleAllowList as Hex]: SimpleAllowList,\n [ASimpleDenyList as Hex]: SimpleDenyList,\n [AOffchainAccessList as Hex]: OffchainAccessList,\n};\n\n/**\n * A function that will read a contract's component interface using `getComponentInterface` and return the correct instantiated instance.\n * This function will never return an instance of {@link OpenAllowList} because it has the same component interface as {@link SimpleDenyList}\n *\n * @export\n * @async\n * @param {DeployableOptions} options\n * @param {Address} address\n * @returns {Promise<SimpleAllowList | SimpleDenyList>}\n * @throws {@link InvalidComponentInterfaceError}\n */\nexport async function allowListFromAddress(\n options: DeployableOptions,\n address: Address,\n params?: ReadParams,\n) {\n const interfaceId = (await readContract(options.config, {\n abi: aAllowListAbi,\n functionName: 'getComponentInterface',\n address,\n ...params,\n })) as keyof typeof AllowListByComponentInterface;\n const Ctor = AllowListByComponentInterface[interfaceId];\n if (!Ctor) {\n throw new InvalidComponentInterfaceError(\n Object.keys(AllowListByComponentInterface) as Hex[],\n interfaceId as Hex,\n );\n }\n return new Ctor(options, address) as\n | SimpleDenyList\n | SimpleAllowList\n | OffchainAccessList;\n}\n"],"names":["_OffchainAccessList","DeployableTargetWithRBAC","offchainAccessListAbi","params","readOffchainAccessListOwner","_address","_params","readOffchainAccessListGetAllowListIds","readOffchainAccessListGetDenyListIds","ids","request","result","simulateOffchainAccessListSetAllowListIds","writeOffchainAccessListSetAllowListIds","simulateOffchainAccessListSetDenyListIds","writeOffchainAccessListSetDenyListIds","id","simulateOffchainAccessListAddAllowListId","writeOffchainAccessListAddAllowListId","simulateOffchainAccessListAddDenyListId","writeOffchainAccessListAddDenyListId","simulateOffchainAccessListRemoveAllowListId","writeOffchainAccessListRemoveAllowListId","simulateOffchainAccessListRemoveDenyListId","writeOffchainAccessListRemoveDenyListId","readOffchainAccessListHasAllowListId","readOffchainAccessListHasDenyListId","_payload","_options","payload","options","zeroAddress","owner","getAccount","_a","DeployableUnknownOwnerProvidedError","bytecode","prepareOffchainAccessListPayload","__vite_import_meta_env__","OffchainAccessListBases","RegistryType","OffchainAccessList","allowlistIds","denylistIds","encodeAbiParameters","openAllowListAbi","simpleDenyListAbi","OpenAllowList","SimpleDenyList","_","prepareSimpleDenyListPayload","AllowListByComponentInterface","ASimpleAllowList","SimpleAllowList","ASimpleDenyList","AOffchainAccessList","allowListFromAddress","address","interfaceId","readContract","aAllowListAbi","Ctor","InvalidComponentInterfaceError"],"mappings":"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"}
1
+ {"version":3,"file":"AllowList-DiU7g4Hs.js","sources":["../src/AllowLists/OffchainAccessList.ts","../src/AllowLists/OpenAllowList.ts","../src/AllowLists/AllowList.ts"],"sourcesContent":["import {\n offchainAccessListAbi,\n readOffchainAccessListGetAllowListIds,\n readOffchainAccessListGetDenyListIds,\n readOffchainAccessListHasAllowListId,\n readOffchainAccessListHasDenyListId,\n readOffchainAccessListOwner,\n simulateOffchainAccessListAddAllowListId,\n simulateOffchainAccessListAddDenyListId,\n simulateOffchainAccessListRemoveAllowListId,\n simulateOffchainAccessListRemoveDenyListId,\n simulateOffchainAccessListSetAllowListIds,\n simulateOffchainAccessListSetDenyListIds,\n writeOffchainAccessListAddAllowListId,\n writeOffchainAccessListAddDenyListId,\n writeOffchainAccessListRemoveAllowListId,\n writeOffchainAccessListRemoveDenyListId,\n writeOffchainAccessListSetAllowListIds,\n writeOffchainAccessListSetDenyListIds,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/allowlists/OffchainAccessList.sol/OffchainAccessList.json';\nimport { getAccount } from '@wagmi/core';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n encodeAbiParameters,\n zeroAddress,\n} from 'viem';\nimport { OffchainAccessList as OffchainAccessListBases } from '../../dist/deployments.json';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport { DeployableTargetWithRBAC } from '../Deployable/DeployableTargetWithRBAC';\nimport { DeployableUnknownOwnerProvidedError } from '../errors';\nimport {\n type GenericLog,\n type ReadParams,\n RegistryType,\n type WriteParams,\n} from '../utils';\n\nexport { offchainAccessListAbi };\n\n/**\n * Object representation of a {@link OffchainAccessList} initialization payload.\n *\n * @export\n * @interface OffchainAccessListPayload\n * @typedef {OffchainAccessListPayload}\n */\nexport interface OffchainAccessListPayload {\n /**\n * The access list's owner\n *\n * @type {Address}\n */\n owner: Address;\n /**\n * List of off-chain allowlist IDs.\n *\n * @type {string[]}\n */\n allowlistIds: string[];\n /**\n * List of off-chain denylist IDs.\n *\n * @type {string[]}\n */\n denylistIds: string[];\n}\n\n/**\n * A generic `viem.Log` event with support for `OffchainAccessList` event types.\n *\n * @export\n * @typedef {OffchainAccessListLog}\n * @template {ContractEventName<typeof offchainAccessListAbi>} [event=ContractEventName<\n * typeof offchainAccessListAbi\n * >]\n */\nexport type OffchainAccessListLog<\n event extends ContractEventName<\n typeof offchainAccessListAbi\n > = ContractEventName<typeof offchainAccessListAbi>,\n> = GenericLog<typeof offchainAccessListAbi, event>;\n\n/**\n * An AllowList that links on-chain boosts to off-chain access lists stored in a database.\n * This implementation always allows everyone (returns true) but stores references to off-chain allowlist and denylist IDs.\n *\n * @export\n * @class OffchainAccessList\n * @typedef {OffchainAccessList}\n * @extends {DeployableTargetWithRBAC<OffchainAccessListPayload>}\n */\nexport class OffchainAccessList extends DeployableTargetWithRBAC<\n OffchainAccessListPayload,\n typeof offchainAccessListAbi\n> {\n public override readonly abi = offchainAccessListAbi;\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_OFFCHAIN_ACCESS_LIST_BASE\n ? { 31337: import.meta.env.VITE_OFFCHAIN_ACCESS_LIST_BASE }\n : {}),\n ...(OffchainAccessListBases as Record<number, Address>),\n };\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.ALLOW_LIST;\n\n /**\n * Retrieves the owner\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<Address>} - The address of the owner\n */\n public async owner(params?: ReadParams): Promise<Address> {\n return await readOffchainAccessListOwner(this._config, {\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 address: this.assertValidAddress(),\n args: [],\n });\n }\n\n /**\n * Check if a user is authorized based on off-chain allowlists/denylists\n *\n * @public\n * @async\n * @param {Address} address - The address of the user\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the user is allowed\n */\n public isAllowed(_address: Address, _params?: ReadParams) {\n // TODO: check address against offchain allowlist/denylist using api calls\n throw new Error(\n 'isAllowed() not available for OffchainAccessList, implementation should be done offchain',\n );\n }\n\n /**\n * Get all allowlist IDs\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<string[]>} - Array of allowlist IDs\n */\n public async getAllowlistIds(params?: ReadParams) {\n return await readOffchainAccessListGetAllowListIds(this._config, {\n address: this.assertValidAddress(),\n args: [],\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\n /**\n * Get all denylist IDs\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<string[]>} - Array of denylist IDs\n */\n public async getDenylistIds(params?: ReadParams) {\n return await readOffchainAccessListGetDenyListIds(this._config, {\n address: this.assertValidAddress(),\n args: [],\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\n /**\n * Set allowlist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new allowlist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setAllowlistIds(ids: string[], params?: WriteParams) {\n return await this.awaitResult(this.setAllowlistIdsRaw(ids, params));\n }\n\n /**\n * Set allowlist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new allowlist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setAllowlistIdsRaw(ids: string[], params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListSetAllowListIds(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [ids],\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 writeOffchainAccessListSetAllowListIds(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Set denylist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new denylist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setDenylistIds(ids: string[], params?: WriteParams) {\n return await this.awaitResult(this.setDenylistIdsRaw(ids, params));\n }\n\n /**\n * Set denylist IDs, replacing all existing ones. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string[]} ids - The new denylist IDs\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setDenylistIdsRaw(ids: string[], params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListSetDenyListIds(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [ids],\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 writeOffchainAccessListSetDenyListIds(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Add a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async addAllowlistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.addAllowlistIdRaw(id, params));\n }\n\n /**\n * Add a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async addAllowlistIdRaw(id: string, params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListAddAllowListId(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListAddAllowListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Add a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async addDenylistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.addDenylistIdRaw(id, params));\n }\n\n /**\n * Add a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to add\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async addDenylistIdRaw(id: string, params?: WriteParams) {\n const { request, result } = await simulateOffchainAccessListAddDenyListId(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListAddDenyListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Remove a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async removeAllowlistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.removeAllowlistIdRaw(id, params));\n }\n\n /**\n * Remove a single allowlist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async removeAllowlistIdRaw(id: string, params?: WriteParams) {\n const { request, result } =\n await simulateOffchainAccessListRemoveAllowListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListRemoveAllowListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Remove a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async removeDenylistId(id: string, params?: WriteParams) {\n return await this.awaitResult(this.removeDenylistIdRaw(id, params));\n }\n\n /**\n * Remove a single denylist ID. This function can only be called by authorized users.\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to remove\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async removeDenylistIdRaw(id: string, params?: WriteParams) {\n const { request, result } =\n await simulateOffchainAccessListRemoveDenyListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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 writeOffchainAccessListRemoveDenyListId(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Check if an allowlist ID exists\n *\n * @public\n * @async\n * @param {string} id - The allowlist ID to check\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the ID exists\n */\n public async hasAllowlistId(\n id: string,\n params?: ReadParams,\n ): Promise<boolean> {\n return await readOffchainAccessListHasAllowListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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\n /**\n * Check if a denylist ID exists\n *\n * @public\n * @async\n * @param {string} id - The denylist ID to check\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the ID exists\n */\n public async hasDenylistId(\n id: string,\n params?: ReadParams,\n ): Promise<boolean> {\n return await readOffchainAccessListHasDenyListId(this._config, {\n address: this.assertValidAddress(),\n args: [id],\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\n /**\n * @inheritdoc\n *\n * @public\n * @param {?OffchainAccessListPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: OffchainAccessListPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n if (!payload.owner || payload.owner === zeroAddress) {\n const owner = options.account\n ? options.account.address\n : options.config\n ? getAccount(options.config).address\n : this._account?.address;\n if (owner) {\n payload.owner = owner;\n } else {\n throw new DeployableUnknownOwnerProvidedError();\n }\n }\n return {\n abi: offchainAccessListAbi,\n bytecode: bytecode as Hex,\n args: [prepareOffchainAccessListPayload(payload)],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n\n/**\n * Given a {@link OffchainAccessListPayload}, properly encode the initialization payload.\n *\n * @param {OffchainAccessListPayload} param0\n * @param {Address} param0.owner - The access list's owner\n * @param {string[]} param0.allowlistIds - List of off-chain allowlist IDs\n * @param {string[]} param0.denylistIds - List of off-chain denylist IDs\n * @returns {Hex}\n */\nexport function prepareOffchainAccessListPayload({\n owner,\n allowlistIds,\n denylistIds,\n}: OffchainAccessListPayload) {\n return encodeAbiParameters(\n [\n { type: 'address', name: 'owner' },\n { type: 'string[]', name: 'allowlistIds' },\n { type: 'string[]', name: 'denylistIds' },\n ],\n [owner, allowlistIds, denylistIds],\n );\n}\n","import { simpleDenyListAbi } from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/allowlists/SimpleDenyList.sol/SimpleDenyList.json';\nimport { type Hex, zeroAddress } from 'viem';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport {\n SimpleDenyList,\n type SimpleDenyListPayload,\n prepareSimpleDenyListPayload,\n} from './SimpleDenyList';\n\nexport const openAllowListAbi = simpleDenyListAbi;\n\n/**\n * A simple AllowList, extending {@link DenyList}, that is ownerless and allows anyone to claim.\n *\n * @export\n * @class OpenAllowList\n * @typedef {OpenAllowList}\n * @extends {DeployableTarget<OpenAllowListPayload>}\n */\nexport class OpenAllowList extends SimpleDenyList<undefined> {\n /**\n * @inheritdoc\n *\n * @public\n * @param {?SimpleDenyListPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: SimpleDenyListPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [_, options] = this.validateDeploymentConfig({}, _options);\n return {\n abi: openAllowListAbi,\n bytecode: bytecode as Hex,\n args: [prepareSimpleDenyListPayload({ owner: zeroAddress, denied: [] })],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n","import { aAllowListAbi } from '@boostxyz/evm';\nimport {\n AOffchainAccessList,\n ASimpleAllowList,\n ASimpleDenyList,\n} from '@boostxyz/evm/deploys/componentInterfaces.json';\nimport { readContract } from '@wagmi/core';\nimport type { Address, Hex } from 'viem';\nimport type { DeployableOptions } from '../Deployable/Deployable';\nimport { InvalidComponentInterfaceError } from '../errors';\nimport type { ReadParams } from '../utils';\nimport { OffchainAccessList } from './OffchainAccessList';\nimport { OpenAllowList } from './OpenAllowList';\nimport { SimpleAllowList } from './SimpleAllowList';\nimport { SimpleDenyList } from './SimpleDenyList';\n\nexport { OffchainAccessList, OpenAllowList, SimpleAllowList, SimpleDenyList };\n\n/**\n * A union type representing all valid protocol AllowList implementations\n *\n * @export\n * @typedef {AllowList}\n */\nexport type AllowList =\n | OffchainAccessList\n | OpenAllowList\n | SimpleAllowList\n | SimpleDenyList;\n\n/**\n * A map of AllowList component interfaces to their constructors.\n *\n * @type {{ \"0x1392d798\": SimpleAllowList; \"0x3d30a22c\": SimpleDenyList; \"0x2a6b3c38\": OffchainAccessList; }}\n */\nexport const AllowListByComponentInterface = {\n [ASimpleAllowList as Hex]: SimpleAllowList,\n [ASimpleDenyList as Hex]: SimpleDenyList,\n [AOffchainAccessList as Hex]: OffchainAccessList,\n};\n\n/**\n * A function that will read a contract's component interface using `getComponentInterface` and return the correct instantiated instance.\n * This function will never return an instance of {@link OpenAllowList} because it has the same component interface as {@link SimpleDenyList}\n *\n * @export\n * @async\n * @param {DeployableOptions} options\n * @param {Address} address\n * @returns {Promise<SimpleAllowList | SimpleDenyList>}\n * @throws {@link InvalidComponentInterfaceError}\n */\nexport async function allowListFromAddress(\n options: DeployableOptions,\n address: Address,\n params?: ReadParams,\n) {\n const interfaceId = (await readContract(options.config, {\n abi: aAllowListAbi,\n functionName: 'getComponentInterface',\n address,\n ...params,\n })) as keyof typeof AllowListByComponentInterface;\n const Ctor = AllowListByComponentInterface[interfaceId];\n if (!Ctor) {\n throw new InvalidComponentInterfaceError(\n Object.keys(AllowListByComponentInterface) as Hex[],\n interfaceId as Hex,\n );\n }\n return new Ctor(options, address) as\n | SimpleDenyList\n | SimpleAllowList\n | OffchainAccessList;\n}\n"],"names":["_OffchainAccessList","DeployableTargetWithRBAC","offchainAccessListAbi","params","readOffchainAccessListOwner","_address","_params","readOffchainAccessListGetAllowListIds","readOffchainAccessListGetDenyListIds","ids","request","result","simulateOffchainAccessListSetAllowListIds","writeOffchainAccessListSetAllowListIds","simulateOffchainAccessListSetDenyListIds","writeOffchainAccessListSetDenyListIds","id","simulateOffchainAccessListAddAllowListId","writeOffchainAccessListAddAllowListId","simulateOffchainAccessListAddDenyListId","writeOffchainAccessListAddDenyListId","simulateOffchainAccessListRemoveAllowListId","writeOffchainAccessListRemoveAllowListId","simulateOffchainAccessListRemoveDenyListId","writeOffchainAccessListRemoveDenyListId","readOffchainAccessListHasAllowListId","readOffchainAccessListHasDenyListId","_payload","_options","payload","options","zeroAddress","owner","getAccount","_a","DeployableUnknownOwnerProvidedError","bytecode","prepareOffchainAccessListPayload","__vite_import_meta_env__","OffchainAccessListBases","RegistryType","OffchainAccessList","allowlistIds","denylistIds","encodeAbiParameters","openAllowListAbi","simpleDenyListAbi","OpenAllowList","SimpleDenyList","_","prepareSimpleDenyListPayload","AllowListByComponentInterface","ASimpleAllowList","SimpleAllowList","ASimpleDenyList","AOffchainAccessList","allowListFromAddress","address","interfaceId","readContract","aAllowListAbi","Ctor","InvalidComponentInterfaceError"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../generated-dd4FN0Fo.cjs");require("../componentInterfaces-BZ3fSNkT.cjs");require("@wagmi/core");require("../errors.cjs");const e=require("../AllowList-BYYm3b9d.cjs"),i=require("./SimpleAllowList.cjs"),l=require("../SimpleDenyList-Bv2mSQJO.cjs");exports.AllowListByComponentInterface=e.AllowListByComponentInterface;exports.OffchainAccessList=e.OffchainAccessList;exports.OpenAllowList=e.OpenAllowList;exports.allowListFromAddress=e.allowListFromAddress;exports.SimpleAllowList=i.SimpleAllowList;exports.SimpleDenyList=l.SimpleDenyList;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../generated-dd4FN0Fo.cjs");require("../componentInterfaces-BZ3fSNkT.cjs");require("@wagmi/core");require("../errors.cjs");const e=require("../AllowList-BJ9HQGFs.cjs"),i=require("./SimpleAllowList.cjs"),l=require("../SimpleDenyList-7-VTqfsH.cjs");exports.AllowListByComponentInterface=e.AllowListByComponentInterface;exports.OffchainAccessList=e.OffchainAccessList;exports.OpenAllowList=e.OpenAllowList;exports.allowListFromAddress=e.allowListFromAddress;exports.SimpleAllowList=i.SimpleAllowList;exports.SimpleDenyList=l.SimpleDenyList;
2
2
  //# sourceMappingURL=AllowList.cjs.map
@@ -2,9 +2,9 @@ import "../generated-B6mEIx8i.js";
2
2
  import "../componentInterfaces-D2s6AXlV.js";
3
3
  import "@wagmi/core";
4
4
  import "../errors.js";
5
- import { A as m, O as p, a as l, b as a } from "../AllowList-D_K4S6jV.js";
5
+ import { A as m, O as p, a as l, b as a } from "../AllowList-DiU7g4Hs.js";
6
6
  import { SimpleAllowList as n } from "./SimpleAllowList.js";
7
- import { S as L } from "../SimpleDenyList-tEOqSTnD.js";
7
+ import { S as L } from "../SimpleDenyList-Dr03aOeP.js";
8
8
  export {
9
9
  m as AllowListByComponentInterface,
10
10
  p as OffchainAccessList,
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../generated-dd4FN0Fo.cjs"),A=require("@wagmi/core"),o=require("viem"),h=require("../deployments-xekPSd2S.cjs"),n=require("../Deployable/DeployableTargetWithRBAC.cjs"),w=require("../errors.cjs"),y=require("../utils.cjs"),p="0x6080604052348015600e575f80fd5b5060156019565b607c565b63409feecd198054600181161560365763f92ee8a95f526004601cfd5b6001600160401b03808260011c146077578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b611160806100895f395ff3fe608060405260043610610183575f3560e01c806354d1f13d116100d1578063e3f756de1161007c578063f2fde38b11610057578063f2fde38b14610445578063fe9fbb8014610458578063fee81cf414610477575f80fd5b8063e3f756de146103d8578063ec87621c1461041e578063f04e283e14610432575f80fd5b80638da5cb5b116100ac5780638da5cb5b14610362578063be4994f81461039a578063dcc21361146103b9575f80fd5b806354d1f13d1461033e578063715018a61461034657806375b238fc1461034e575f80fd5b80632de9480711610131578063439fab911161010c578063439fab91146102d75780634a4ee7b1146102f6578063514e62fc14610309575f80fd5b80632de948071461025a5780633abb0604146102995780634359d28a146102b8575f80fd5b80631cd64df4116101615780631cd64df4146101e3578063256929621461021857806328d6183b14610220575f80fd5b806301ffc9a714610187578063183a4f6e146101bb5780631c10893f146101d0575b5f80fd5b348015610192575f80fd5b506101a66101a1366004610d5e565b6104a8565b60405190151581526020015b60405180910390f35b6101ce6101c9366004610da4565b610503565b005b6101ce6101de366004610dec565b610510565b3480156101ee575f80fd5b506101a66101fd366004610dec565b638b78c6d8600c9081525f9290925260209091205481161490565b6101ce610526565b34801561022b575f80fd5b506040517f1392d7980000000000000000000000000000000000000000000000000000000081526020016101b2565b348015610265575f80fd5b5061028b610274366004610e16565b638b78c6d8600c9081525f91909152602090205490565b6040519081526020016101b2565b3480156102a4575f80fd5b506101ce6102b3366004610e79565b610573565b3480156102c3575f80fd5b506101ce6102d2366004610e79565b6106a6565b3480156102e2575f80fd5b506101ce6102f1366004610f23565b6107a0565b6101ce610304366004610dec565b6108cf565b348015610314575f80fd5b506101a6610323366004610dec565b638b78c6d8600c9081525f9290925260209091205416151590565b6101ce6108e1565b6101ce61091a565b348015610359575f80fd5b5061028b600281565b34801561036d575f80fd5b50638b78c6d8195460405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101b2565b3480156103a5575f80fd5b506101ce6103b4366004610e79565b61092d565b3480156103c4575f80fd5b506101ce6103d3366004610e79565b6109cb565b3480156103e3575f80fd5b506101a66103f2366004610f62565b505073ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205460ff1690565b348015610429575f80fd5b5061028b600181565b6101ce610440366004610e16565b610a69565b6101ce610453366004610e16565b610aa3565b348015610463575f80fd5b506101a6610472366004610e16565b610ac9565b348015610482575f80fd5b5061028b610491366004610e16565b63389a75e1600c9081525f91909152602090205490565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f1392d7980000000000000000000000000000000000000000000000000000000014806104fd57506104fd82610b28565b92915050565b61050d3382610b7d565b50565b610518610b88565b6105228282610ba2565b5050565b5f6202a30067ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b61057c33610ac9565b6105b2576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8281146105eb576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b8381101561069f5782828281811061060757610607610fb3565b905060200201602081019061061c9190610fe0565b5f8087878581811061063057610630610fb3565b90506020020160208101906106459190610e16565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169115159190911790556001016105ed565b5050505050565b60026106b181610bae565b8382146106ea576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84811015610798575f84848381811061070757610707610fb3565b905060200201602081019061071c9190610fe0565b905080151560010361075e5761075987878481811061073d5761073d610fb3565b90506020020160208101906107529190610e16565b6001610ba2565b61078f565b61078f87878481811061077357610773610fb3565b90506020020160208101906107889190610e16565b6001610b7d565b506001016106ec565b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf60113280546003825580156107f15760018160011c14303b106107e85763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f806108008486018661102c565b9150915061080d82610bdf565b5f5b81518110156108925760015f8084848151811061082e5761082e610fb3565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905560010161080f565b50505080156108ca576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b6108d7610b88565b6105228282610b7d565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b610922610b88565b61092b5f610c27565b565b600261093881610bae565b838214610971576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84811015610798576109c386868381811061099057610990610fb3565b90506020020160208101906109a59190610e16565b8585848181106109b7576109b7610fb3565b90506020020135610ba2565b600101610973565b60026109d681610bae565b838214610a0f576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b8481101561079857610a61868683818110610a2e57610a2e610fb3565b9050602002016020810190610a439190610e16565b858584818110610a5557610a55610fb3565b90506020020135610b7d565b600101610a11565b610a71610b88565b63389a75e1600c52805f526020600c208054421115610a9757636f5e88185f526004601cfd5b5f905561050d81610c27565b610aab610b88565b8060601b610ac057637448fbae5f526004601cfd5b61050d81610c27565b5f8173ffffffffffffffffffffffffffffffffffffffff16610aee638b78c6d8195490565b73ffffffffffffffffffffffffffffffffffffffff1614806104fd5750638b78c6d8600c9081525f839052602090205460031615156104fd565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fe2089f790000000000000000000000000000000000000000000000000000000014806104fd57506104fd82610c71565b61052282825f610d07565b638b78c6d81954331461092b576382b429005f526004601cfd5b61052282826001610d07565b638b78c6d81954331461050d57638b78c6d8600c52335f52806020600c20541661050d576382b429005f526004601cfd5b73ffffffffffffffffffffffffffffffffffffffff16638b78c6d819819055805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a350565b638b78c6d819805473ffffffffffffffffffffffffffffffffffffffff9092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a355565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6ab67a0d0000000000000000000000000000000000000000000000000000000014806104fd57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146104fd565b638b78c6d8600c52825f526020600c20805483811783610d28575080841681185b80835580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a3505050505050565b5f60208284031215610d6e575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610d9d575f80fd5b9392505050565b5f60208284031215610db4575f80fd5b5035919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461050d575f80fd5b8035610de781610dbb565b919050565b5f8060408385031215610dfd575f80fd5b8235610e0881610dbb565b946020939093013593505050565b5f60208284031215610e26575f80fd5b8135610d9d81610dbb565b5f8083601f840112610e41575f80fd5b50813567ffffffffffffffff811115610e58575f80fd5b6020830191508360208260051b8501011115610e72575f80fd5b9250929050565b5f805f8060408587031215610e8c575f80fd5b843567ffffffffffffffff811115610ea2575f80fd5b610eae87828801610e31565b909550935050602085013567ffffffffffffffff811115610ecd575f80fd5b610ed987828801610e31565b95989497509550505050565b5f8083601f840112610ef5575f80fd5b50813567ffffffffffffffff811115610f0c575f80fd5b602083019150836020828501011115610e72575f80fd5b5f8060208385031215610f34575f80fd5b823567ffffffffffffffff811115610f4a575f80fd5b610f5685828601610ee5565b90969095509350505050565b5f805f60408486031215610f74575f80fd5b8335610f7f81610dbb565b9250602084013567ffffffffffffffff811115610f9a575f80fd5b610fa686828701610ee5565b9497909650939450505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215610ff0575f80fd5b81358015158114610d9d575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f806040838503121561103d575f80fd5b823561104881610dbb565b9150602083013567ffffffffffffffff811115611063575f80fd5b8301601f81018513611073575f80fd5b803567ffffffffffffffff81111561108d5761108d610fff565b8060051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811067ffffffffffffffff821117156110d8576110d8610fff565b6040529182526020818401810192908101888411156110f5575f80fd5b6020850194505b8385101561111b5761110d85610ddc565b8152602094850194016110fc565b5080945050505050925092905056fea26469706673582212208ea2f8d50b08c5f7201da49ca75834a3d5195e6d5f06fd686224f8d0cbbbc1f364736f6c634300081a0033",r={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1,VITE_BOOST_MAINNET_SIGNER_EOA:"0xCBD0C302040bC803B4B2EDaF21Be0e49Deff5480",VITE_BOOST_TESTNET_SIGNER_EOA:"0xd63167e9db11B108940b2E8236581F961f33f396"},E=n.Roles.MANAGER,t=class t extends n.DeployableTargetWithRBAC{constructor(){super(...arguments),this.abi=a.S}async owner(f){return await a.r3(this._config,{...this.optionallyAttachAccount(),...f,address:this.assertValidAddress(),args:[]})}async isAllowed(f,e){return await a.i3(this._config,{address:this.assertValidAddress(),args:[f,o.zeroHash],...this.optionallyAttachAccount(),...e})}async setAllowed(f,e,b){return await this.awaitResult(this.setAllowedRaw(f,e,b))}async setAllowedRaw(f,e,b){const{request:d,result:c}=await a.F3(this._config,{address:this.assertValidAddress(),args:[f,e],...this.optionallyAttachAccount(),...b});return{hash:await a.A3(this._config,d),result:c}}buildParameters(f,e){var c;const[b,d]=this.validateDeploymentConfig(f,e);if(!b.owner||b.owner===o.zeroAddress){const s=d.account?d.account.address:d.config?A.getAccount(d.config).address:(c=this._account)==null?void 0:c.address;if(s)b.owner=s;else throw new w.DeployableUnknownOwnerProvidedError}return{abi:a.S,bytecode:p,args:[l(b)],...this.optionallyAttachAccount(d.account)}}};t.bases={...r!=null&&r.VITE_SIMPLE_ALLOWLIST_BASE?{31337:void 0}:{},...h.SimpleAllowList},t.registryType=y.RegistryType.ALLOW_LIST;let i=t;function l({owner:u,allowed:f}){return o.encodeAbiParameters([{type:"address",name:"owner"},{type:"address[]",name:"allowed"}],[u,f])}exports.simpleAllowListAbi=a.S;exports.LIST_MANAGER_ROLE=E;exports.SimpleAllowList=i;exports.prepareSimpleAllowListPayload=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../generated-dd4FN0Fo.cjs"),A=require("@wagmi/core"),o=require("viem"),h=require("../deployments-BjBgk03b.cjs"),n=require("../Deployable/DeployableTargetWithRBAC.cjs"),w=require("../errors.cjs"),y=require("../utils.cjs"),p="0x6080604052348015600e575f80fd5b5060156019565b607c565b63409feecd198054600181161560365763f92ee8a95f526004601cfd5b6001600160401b03808260011c146077578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b611160806100895f395ff3fe608060405260043610610183575f3560e01c806354d1f13d116100d1578063e3f756de1161007c578063f2fde38b11610057578063f2fde38b14610445578063fe9fbb8014610458578063fee81cf414610477575f80fd5b8063e3f756de146103d8578063ec87621c1461041e578063f04e283e14610432575f80fd5b80638da5cb5b116100ac5780638da5cb5b14610362578063be4994f81461039a578063dcc21361146103b9575f80fd5b806354d1f13d1461033e578063715018a61461034657806375b238fc1461034e575f80fd5b80632de9480711610131578063439fab911161010c578063439fab91146102d75780634a4ee7b1146102f6578063514e62fc14610309575f80fd5b80632de948071461025a5780633abb0604146102995780634359d28a146102b8575f80fd5b80631cd64df4116101615780631cd64df4146101e3578063256929621461021857806328d6183b14610220575f80fd5b806301ffc9a714610187578063183a4f6e146101bb5780631c10893f146101d0575b5f80fd5b348015610192575f80fd5b506101a66101a1366004610d5e565b6104a8565b60405190151581526020015b60405180910390f35b6101ce6101c9366004610da4565b610503565b005b6101ce6101de366004610dec565b610510565b3480156101ee575f80fd5b506101a66101fd366004610dec565b638b78c6d8600c9081525f9290925260209091205481161490565b6101ce610526565b34801561022b575f80fd5b506040517f1392d7980000000000000000000000000000000000000000000000000000000081526020016101b2565b348015610265575f80fd5b5061028b610274366004610e16565b638b78c6d8600c9081525f91909152602090205490565b6040519081526020016101b2565b3480156102a4575f80fd5b506101ce6102b3366004610e79565b610573565b3480156102c3575f80fd5b506101ce6102d2366004610e79565b6106a6565b3480156102e2575f80fd5b506101ce6102f1366004610f23565b6107a0565b6101ce610304366004610dec565b6108cf565b348015610314575f80fd5b506101a6610323366004610dec565b638b78c6d8600c9081525f9290925260209091205416151590565b6101ce6108e1565b6101ce61091a565b348015610359575f80fd5b5061028b600281565b34801561036d575f80fd5b50638b78c6d8195460405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101b2565b3480156103a5575f80fd5b506101ce6103b4366004610e79565b61092d565b3480156103c4575f80fd5b506101ce6103d3366004610e79565b6109cb565b3480156103e3575f80fd5b506101a66103f2366004610f62565b505073ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205460ff1690565b348015610429575f80fd5b5061028b600181565b6101ce610440366004610e16565b610a69565b6101ce610453366004610e16565b610aa3565b348015610463575f80fd5b506101a6610472366004610e16565b610ac9565b348015610482575f80fd5b5061028b610491366004610e16565b63389a75e1600c9081525f91909152602090205490565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f1392d7980000000000000000000000000000000000000000000000000000000014806104fd57506104fd82610b28565b92915050565b61050d3382610b7d565b50565b610518610b88565b6105228282610ba2565b5050565b5f6202a30067ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b61057c33610ac9565b6105b2576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8281146105eb576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b8381101561069f5782828281811061060757610607610fb3565b905060200201602081019061061c9190610fe0565b5f8087878581811061063057610630610fb3565b90506020020160208101906106459190610e16565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169115159190911790556001016105ed565b5050505050565b60026106b181610bae565b8382146106ea576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84811015610798575f84848381811061070757610707610fb3565b905060200201602081019061071c9190610fe0565b905080151560010361075e5761075987878481811061073d5761073d610fb3565b90506020020160208101906107529190610e16565b6001610ba2565b61078f565b61078f87878481811061077357610773610fb3565b90506020020160208101906107889190610e16565b6001610b7d565b506001016106ec565b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf60113280546003825580156107f15760018160011c14303b106107e85763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f806108008486018661102c565b9150915061080d82610bdf565b5f5b81518110156108925760015f8084848151811061082e5761082e610fb3565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905560010161080f565b50505080156108ca576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b6108d7610b88565b6105228282610b7d565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b610922610b88565b61092b5f610c27565b565b600261093881610bae565b838214610971576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84811015610798576109c386868381811061099057610990610fb3565b90506020020160208101906109a59190610e16565b8585848181106109b7576109b7610fb3565b90506020020135610ba2565b600101610973565b60026109d681610bae565b838214610a0f576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b8481101561079857610a61868683818110610a2e57610a2e610fb3565b9050602002016020810190610a439190610e16565b858584818110610a5557610a55610fb3565b90506020020135610b7d565b600101610a11565b610a71610b88565b63389a75e1600c52805f526020600c208054421115610a9757636f5e88185f526004601cfd5b5f905561050d81610c27565b610aab610b88565b8060601b610ac057637448fbae5f526004601cfd5b61050d81610c27565b5f8173ffffffffffffffffffffffffffffffffffffffff16610aee638b78c6d8195490565b73ffffffffffffffffffffffffffffffffffffffff1614806104fd5750638b78c6d8600c9081525f839052602090205460031615156104fd565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fe2089f790000000000000000000000000000000000000000000000000000000014806104fd57506104fd82610c71565b61052282825f610d07565b638b78c6d81954331461092b576382b429005f526004601cfd5b61052282826001610d07565b638b78c6d81954331461050d57638b78c6d8600c52335f52806020600c20541661050d576382b429005f526004601cfd5b73ffffffffffffffffffffffffffffffffffffffff16638b78c6d819819055805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a350565b638b78c6d819805473ffffffffffffffffffffffffffffffffffffffff9092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a355565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6ab67a0d0000000000000000000000000000000000000000000000000000000014806104fd57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146104fd565b638b78c6d8600c52825f526020600c20805483811783610d28575080841681185b80835580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a3505050505050565b5f60208284031215610d6e575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610d9d575f80fd5b9392505050565b5f60208284031215610db4575f80fd5b5035919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461050d575f80fd5b8035610de781610dbb565b919050565b5f8060408385031215610dfd575f80fd5b8235610e0881610dbb565b946020939093013593505050565b5f60208284031215610e26575f80fd5b8135610d9d81610dbb565b5f8083601f840112610e41575f80fd5b50813567ffffffffffffffff811115610e58575f80fd5b6020830191508360208260051b8501011115610e72575f80fd5b9250929050565b5f805f8060408587031215610e8c575f80fd5b843567ffffffffffffffff811115610ea2575f80fd5b610eae87828801610e31565b909550935050602085013567ffffffffffffffff811115610ecd575f80fd5b610ed987828801610e31565b95989497509550505050565b5f8083601f840112610ef5575f80fd5b50813567ffffffffffffffff811115610f0c575f80fd5b602083019150836020828501011115610e72575f80fd5b5f8060208385031215610f34575f80fd5b823567ffffffffffffffff811115610f4a575f80fd5b610f5685828601610ee5565b90969095509350505050565b5f805f60408486031215610f74575f80fd5b8335610f7f81610dbb565b9250602084013567ffffffffffffffff811115610f9a575f80fd5b610fa686828701610ee5565b9497909650939450505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215610ff0575f80fd5b81358015158114610d9d575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f806040838503121561103d575f80fd5b823561104881610dbb565b9150602083013567ffffffffffffffff811115611063575f80fd5b8301601f81018513611073575f80fd5b803567ffffffffffffffff81111561108d5761108d610fff565b8060051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811067ffffffffffffffff821117156110d8576110d8610fff565b6040529182526020818401810192908101888411156110f5575f80fd5b6020850194505b8385101561111b5761110d85610ddc565b8152602094850194016110fc565b5080945050505050925092905056fea26469706673582212208ea2f8d50b08c5f7201da49ca75834a3d5195e6d5f06fd686224f8d0cbbbc1f364736f6c634300081a0033",r={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1,VITE_BOOST_MAINNET_SIGNER_EOA:"0xCBD0C302040bC803B4B2EDaF21Be0e49Deff5480",VITE_BOOST_TESTNET_SIGNER_EOA:"0xd63167e9db11B108940b2E8236581F961f33f396"},E=n.Roles.MANAGER,t=class t extends n.DeployableTargetWithRBAC{constructor(){super(...arguments),this.abi=a.S}async owner(f){return await a.r3(this._config,{...this.optionallyAttachAccount(),...f,address:this.assertValidAddress(),args:[]})}async isAllowed(f,e){return await a.i3(this._config,{address:this.assertValidAddress(),args:[f,o.zeroHash],...this.optionallyAttachAccount(),...e})}async setAllowed(f,e,b){return await this.awaitResult(this.setAllowedRaw(f,e,b))}async setAllowedRaw(f,e,b){const{request:d,result:c}=await a.F3(this._config,{address:this.assertValidAddress(),args:[f,e],...this.optionallyAttachAccount(),...b});return{hash:await a.A3(this._config,d),result:c}}buildParameters(f,e){var c;const[b,d]=this.validateDeploymentConfig(f,e);if(!b.owner||b.owner===o.zeroAddress){const s=d.account?d.account.address:d.config?A.getAccount(d.config).address:(c=this._account)==null?void 0:c.address;if(s)b.owner=s;else throw new w.DeployableUnknownOwnerProvidedError}return{abi:a.S,bytecode:p,args:[l(b)],...this.optionallyAttachAccount(d.account)}}};t.bases={...r!=null&&r.VITE_SIMPLE_ALLOWLIST_BASE?{31337:void 0}:{},...h.SimpleAllowList},t.registryType=y.RegistryType.ALLOW_LIST;let i=t;function l({owner:u,allowed:f}){return o.encodeAbiParameters([{type:"address",name:"owner"},{type:"address[]",name:"allowed"}],[u,f])}exports.simpleAllowListAbi=a.S;exports.LIST_MANAGER_ROLE=E;exports.SimpleAllowList=i;exports.prepareSimpleAllowListPayload=l;
2
2
  //# sourceMappingURL=SimpleAllowList.cjs.map
@@ -1,7 +1,7 @@
1
1
  import { S as r, aw as n, ax as l, ay as A, az as h } from "../generated-B6mEIx8i.js";
2
2
  import { getAccount as u } from "@wagmi/core";
3
3
  import { zeroHash as p, zeroAddress as w, encodeAbiParameters as y } from "viem";
4
- import { S as E } from "../deployments-EFoHkvCp.js";
4
+ import { S as E } from "../deployments-CHQ30INq.js";
5
5
  import { Roles as m, DeployableTargetWithRBAC as g } from "../Deployable/DeployableTargetWithRBAC.js";
6
6
  import { DeployableUnknownOwnerProvidedError as T } from "../errors.js";
7
7
  import { RegistryType as R } from "../utils.js";
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../generated-dd4FN0Fo.cjs"),e=require("../SimpleDenyList-Bv2mSQJO.cjs");require("@wagmi/core");require("viem");require("../deployments-xekPSd2S.cjs");require("../Deployable/DeployableTargetWithRBAC.cjs");require("../errors.cjs");require("../utils.cjs");exports.simpleDenyListAbi=r.P;exports.SimpleDenyList=e.SimpleDenyList;exports.prepareSimpleDenyListPayload=e.prepareSimpleDenyListPayload;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../generated-dd4FN0Fo.cjs"),e=require("../SimpleDenyList-7-VTqfsH.cjs");require("@wagmi/core");require("viem");require("../deployments-BjBgk03b.cjs");require("../Deployable/DeployableTargetWithRBAC.cjs");require("../errors.cjs");require("../utils.cjs");exports.simpleDenyListAbi=r.P;exports.SimpleDenyList=e.SimpleDenyList;exports.prepareSimpleDenyListPayload=e.prepareSimpleDenyListPayload;
2
2
  //# sourceMappingURL=SimpleDenyList.cjs.map
@@ -1,8 +1,8 @@
1
1
  import { P as a } from "../generated-B6mEIx8i.js";
2
- import { S as y, p as n } from "../SimpleDenyList-tEOqSTnD.js";
2
+ import { S as y, p as n } from "../SimpleDenyList-Dr03aOeP.js";
3
3
  import "@wagmi/core";
4
4
  import "viem";
5
- import "../deployments-EFoHkvCp.js";
5
+ import "../deployments-CHQ30INq.js";
6
6
  import "../Deployable/DeployableTargetWithRBAC.js";
7
7
  import "../errors.js";
8
8
  import "../utils.js";