thirdweb 5.50.0 → 5.50.1

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 (337) hide show
  1. package/dist/cjs/contract/deployment/deploy-via-autofactory.js +11 -0
  2. package/dist/cjs/contract/deployment/deploy-via-autofactory.js.map +1 -1
  3. package/dist/cjs/contract/deployment/publisher.js +3 -0
  4. package/dist/cjs/contract/deployment/publisher.js.map +1 -1
  5. package/dist/cjs/contract/deployment/utils/bootstrap.js +41 -1
  6. package/dist/cjs/contract/deployment/utils/bootstrap.js.map +1 -1
  7. package/dist/cjs/contract/deployment/zksync/zkDeployContract.js +43 -0
  8. package/dist/cjs/contract/deployment/zksync/zkDeployContract.js.map +1 -0
  9. package/dist/cjs/contract/deployment/zksync/zkDeployCreate2Factory.js +55 -0
  10. package/dist/cjs/contract/deployment/zksync/zkDeployCreate2Factory.js.map +1 -0
  11. package/dist/cjs/contract/deployment/zksync/zkDeployDeterministic.js +86 -0
  12. package/dist/cjs/contract/deployment/zksync/zkDeployDeterministic.js.map +1 -0
  13. package/dist/cjs/contract/deployment/zksync/zkDeployProxy.js +41 -0
  14. package/dist/cjs/contract/deployment/zksync/zkDeployProxy.js.map +1 -0
  15. package/dist/cjs/exports/extensions/erc4337.js +16 -1
  16. package/dist/cjs/exports/extensions/erc4337.js.map +1 -1
  17. package/dist/cjs/exports/extensions/permissions.js +11 -3
  18. package/dist/cjs/exports/extensions/permissions.js.map +1 -1
  19. package/dist/cjs/exports/extensions/thirdweb.js +9 -2
  20. package/dist/cjs/exports/extensions/thirdweb.js.map +1 -1
  21. package/dist/cjs/extensions/erc4337/account/addAdmin.js +16 -0
  22. package/dist/cjs/extensions/erc4337/account/addAdmin.js.map +1 -1
  23. package/dist/cjs/extensions/erc4337/account/addSessionKey.js +16 -0
  24. package/dist/cjs/extensions/erc4337/account/addSessionKey.js.map +1 -1
  25. package/dist/cjs/extensions/erc4337/account/removeAdmin.js +16 -0
  26. package/dist/cjs/extensions/erc4337/account/removeAdmin.js.map +1 -1
  27. package/dist/cjs/extensions/erc4337/account/removeSessionKey.js +16 -0
  28. package/dist/cjs/extensions/erc4337/account/removeSessionKey.js.map +1 -1
  29. package/dist/cjs/extensions/permissions/read/getAllMembers.js +18 -0
  30. package/dist/cjs/extensions/permissions/read/getAllMembers.js.map +1 -1
  31. package/dist/cjs/extensions/permissions/read/getRoleAdmin.js +3 -0
  32. package/dist/cjs/extensions/permissions/read/getRoleAdmin.js.map +1 -1
  33. package/dist/cjs/extensions/permissions/read/getRoleMember.js +3 -0
  34. package/dist/cjs/extensions/permissions/read/getRoleMember.js.map +1 -1
  35. package/dist/cjs/extensions/permissions/read/getRoleMemberCount.js +3 -0
  36. package/dist/cjs/extensions/permissions/read/getRoleMemberCount.js.map +1 -1
  37. package/dist/cjs/extensions/permissions/read/hasRole.js +3 -0
  38. package/dist/cjs/extensions/permissions/read/hasRole.js.map +1 -1
  39. package/dist/cjs/extensions/permissions/write/{grant.js → grantRole.js} +4 -1
  40. package/dist/cjs/extensions/permissions/write/grantRole.js.map +1 -0
  41. package/dist/cjs/extensions/permissions/write/renounceRole.js +3 -0
  42. package/dist/cjs/extensions/permissions/write/renounceRole.js.map +1 -1
  43. package/dist/cjs/extensions/permissions/write/revokeRole.js +3 -0
  44. package/dist/cjs/extensions/permissions/write/revokeRole.js.map +1 -1
  45. package/dist/cjs/extensions/prebuilts/deploy-published.js +39 -13
  46. package/dist/cjs/extensions/prebuilts/deploy-published.js.map +1 -1
  47. package/dist/cjs/extensions/thirdweb/read/contractType.js +49 -0
  48. package/dist/cjs/extensions/thirdweb/read/contractType.js.map +1 -0
  49. package/dist/cjs/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.js +33 -0
  50. package/dist/cjs/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.js.map +1 -0
  51. package/dist/cjs/react/web/hooks/transaction/useSendTransaction.js +6 -5
  52. package/dist/cjs/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
  53. package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js +3 -0
  54. package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
  55. package/dist/cjs/react/web/ui/ConnectWallet/Details.js +37 -30
  56. package/dist/cjs/react/web/ui/ConnectWallet/Details.js.map +1 -1
  57. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +22 -17
  58. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  59. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js +44 -25
  60. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js.map +1 -1
  61. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +13 -2
  62. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
  63. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.js +2 -2
  64. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.js.map +1 -1
  65. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js +16 -11
  66. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js.map +1 -1
  67. package/dist/cjs/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js +8 -4
  68. package/dist/cjs/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js.map +1 -1
  69. package/dist/cjs/stories/ConnectButton/hideButtons.stories.js +74 -0
  70. package/dist/cjs/stories/ConnectButton/hideButtons.stories.js.map +1 -0
  71. package/dist/cjs/stories/{ConnectButton.stories.js → ConnectButton/themes.stories.js} +4 -5
  72. package/dist/cjs/stories/ConnectButton/themes.stories.js.map +1 -0
  73. package/dist/cjs/transaction/actions/send-transaction.js +8 -0
  74. package/dist/cjs/transaction/actions/send-transaction.js.map +1 -1
  75. package/dist/cjs/transaction/actions/zksync/getEip721Domain.js +4 -3
  76. package/dist/cjs/transaction/actions/zksync/getEip721Domain.js.map +1 -1
  77. package/dist/cjs/transaction/extract-error.js +4 -2
  78. package/dist/cjs/transaction/extract-error.js.map +1 -1
  79. package/dist/cjs/utils/abi/encodeAbiParameters.js +1 -1
  80. package/dist/cjs/utils/abi/encodeAbiParameters.js.map +1 -1
  81. package/dist/cjs/utils/any-evm/deploy-metadata.js +9 -2
  82. package/dist/cjs/utils/any-evm/deploy-metadata.js.map +1 -1
  83. package/dist/cjs/utils/any-evm/zksync/computeDeploymentAddress.js +15 -0
  84. package/dist/cjs/utils/any-evm/zksync/computeDeploymentAddress.js.map +1 -0
  85. package/dist/cjs/utils/any-evm/zksync/constants.js +43 -0
  86. package/dist/cjs/utils/any-evm/zksync/constants.js.map +1 -0
  87. package/dist/cjs/utils/any-evm/zksync/create2Address.js +21 -0
  88. package/dist/cjs/utils/any-evm/zksync/create2Address.js.map +1 -0
  89. package/dist/cjs/utils/any-evm/zksync/isZkSyncChain.js +10 -0
  90. package/dist/cjs/utils/any-evm/zksync/isZkSyncChain.js.map +1 -0
  91. package/dist/cjs/version.js +1 -1
  92. package/dist/cjs/wallets/smart/index.js +2 -2
  93. package/dist/cjs/wallets/smart/index.js.map +1 -1
  94. package/dist/cjs/wallets/smart/lib/utils.js +0 -7
  95. package/dist/cjs/wallets/smart/lib/utils.js.map +1 -1
  96. package/dist/esm/contract/deployment/deploy-via-autofactory.js +11 -0
  97. package/dist/esm/contract/deployment/deploy-via-autofactory.js.map +1 -1
  98. package/dist/esm/contract/deployment/publisher.js +3 -0
  99. package/dist/esm/contract/deployment/publisher.js.map +1 -1
  100. package/dist/esm/contract/deployment/utils/bootstrap.js +41 -1
  101. package/dist/esm/contract/deployment/utils/bootstrap.js.map +1 -1
  102. package/dist/esm/contract/deployment/zksync/zkDeployContract.js +40 -0
  103. package/dist/esm/contract/deployment/zksync/zkDeployContract.js.map +1 -0
  104. package/dist/esm/contract/deployment/zksync/zkDeployCreate2Factory.js +52 -0
  105. package/dist/esm/contract/deployment/zksync/zkDeployCreate2Factory.js.map +1 -0
  106. package/dist/esm/contract/deployment/zksync/zkDeployDeterministic.js +83 -0
  107. package/dist/esm/contract/deployment/zksync/zkDeployDeterministic.js.map +1 -0
  108. package/dist/esm/contract/deployment/zksync/zkDeployProxy.js +38 -0
  109. package/dist/esm/contract/deployment/zksync/zkDeployProxy.js.map +1 -0
  110. package/dist/esm/exports/extensions/erc4337.js +14 -13
  111. package/dist/esm/exports/extensions/erc4337.js.map +1 -1
  112. package/dist/esm/exports/extensions/permissions.js +8 -8
  113. package/dist/esm/exports/extensions/permissions.js.map +1 -1
  114. package/dist/esm/exports/extensions/thirdweb.js +5 -0
  115. package/dist/esm/exports/extensions/thirdweb.js.map +1 -1
  116. package/dist/esm/extensions/erc4337/account/addAdmin.js +16 -1
  117. package/dist/esm/extensions/erc4337/account/addAdmin.js.map +1 -1
  118. package/dist/esm/extensions/erc4337/account/addSessionKey.js +16 -1
  119. package/dist/esm/extensions/erc4337/account/addSessionKey.js.map +1 -1
  120. package/dist/esm/extensions/erc4337/account/removeAdmin.js +16 -1
  121. package/dist/esm/extensions/erc4337/account/removeAdmin.js.map +1 -1
  122. package/dist/esm/extensions/erc4337/account/removeSessionKey.js +16 -1
  123. package/dist/esm/extensions/erc4337/account/removeSessionKey.js.map +1 -1
  124. package/dist/esm/extensions/permissions/read/getAllMembers.js +19 -2
  125. package/dist/esm/extensions/permissions/read/getAllMembers.js.map +1 -1
  126. package/dist/esm/extensions/permissions/read/getRoleAdmin.js +1 -0
  127. package/dist/esm/extensions/permissions/read/getRoleAdmin.js.map +1 -1
  128. package/dist/esm/extensions/permissions/read/getRoleMember.js +1 -0
  129. package/dist/esm/extensions/permissions/read/getRoleMember.js.map +1 -1
  130. package/dist/esm/extensions/permissions/read/getRoleMemberCount.js +1 -0
  131. package/dist/esm/extensions/permissions/read/getRoleMemberCount.js.map +1 -1
  132. package/dist/esm/extensions/permissions/read/hasRole.js +1 -0
  133. package/dist/esm/extensions/permissions/read/hasRole.js.map +1 -1
  134. package/dist/esm/extensions/permissions/write/{grant.js → grantRole.js} +2 -1
  135. package/dist/esm/extensions/permissions/write/grantRole.js.map +1 -0
  136. package/dist/esm/extensions/permissions/write/renounceRole.js +1 -0
  137. package/dist/esm/extensions/permissions/write/renounceRole.js.map +1 -1
  138. package/dist/esm/extensions/permissions/write/revokeRole.js +1 -0
  139. package/dist/esm/extensions/permissions/write/revokeRole.js.map +1 -1
  140. package/dist/esm/extensions/prebuilts/deploy-published.js +39 -13
  141. package/dist/esm/extensions/prebuilts/deploy-published.js.map +1 -1
  142. package/dist/esm/extensions/thirdweb/read/contractType.js +45 -0
  143. package/dist/esm/extensions/thirdweb/read/contractType.js.map +1 -0
  144. package/dist/esm/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.js +30 -0
  145. package/dist/esm/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.js.map +1 -0
  146. package/dist/esm/react/web/hooks/transaction/useSendTransaction.js +6 -5
  147. package/dist/esm/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
  148. package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js +3 -0
  149. package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
  150. package/dist/esm/react/web/ui/ConnectWallet/Details.js +37 -30
  151. package/dist/esm/react/web/ui/ConnectWallet/Details.js.map +1 -1
  152. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +23 -18
  153. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  154. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js +41 -24
  155. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js.map +1 -1
  156. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +12 -2
  157. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
  158. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.js +2 -2
  159. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.js.map +1 -1
  160. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js +17 -12
  161. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js.map +1 -1
  162. package/dist/esm/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js +8 -4
  163. package/dist/esm/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js.map +1 -1
  164. package/dist/esm/stories/ConnectButton/hideButtons.stories.js +71 -0
  165. package/dist/esm/stories/ConnectButton/hideButtons.stories.js.map +1 -0
  166. package/dist/esm/stories/{ConnectButton.stories.js → ConnectButton/themes.stories.js} +4 -5
  167. package/dist/esm/stories/ConnectButton/themes.stories.js.map +1 -0
  168. package/dist/esm/transaction/actions/send-transaction.js +8 -0
  169. package/dist/esm/transaction/actions/send-transaction.js.map +1 -1
  170. package/dist/esm/transaction/actions/zksync/getEip721Domain.js +4 -3
  171. package/dist/esm/transaction/actions/zksync/getEip721Domain.js.map +1 -1
  172. package/dist/esm/transaction/extract-error.js +4 -2
  173. package/dist/esm/transaction/extract-error.js.map +1 -1
  174. package/dist/esm/utils/abi/encodeAbiParameters.js +1 -1
  175. package/dist/esm/utils/abi/encodeAbiParameters.js.map +1 -1
  176. package/dist/esm/utils/any-evm/deploy-metadata.js +9 -2
  177. package/dist/esm/utils/any-evm/deploy-metadata.js.map +1 -1
  178. package/dist/esm/utils/any-evm/zksync/computeDeploymentAddress.js +12 -0
  179. package/dist/esm/utils/any-evm/zksync/computeDeploymentAddress.js.map +1 -0
  180. package/dist/esm/utils/any-evm/zksync/constants.js +40 -0
  181. package/dist/esm/utils/any-evm/zksync/constants.js.map +1 -0
  182. package/dist/esm/utils/any-evm/zksync/create2Address.js +18 -0
  183. package/dist/esm/utils/any-evm/zksync/create2Address.js.map +1 -0
  184. package/dist/esm/utils/any-evm/zksync/isZkSyncChain.js +7 -0
  185. package/dist/esm/utils/any-evm/zksync/isZkSyncChain.js.map +1 -0
  186. package/dist/esm/version.js +1 -1
  187. package/dist/esm/wallets/smart/index.js +2 -2
  188. package/dist/esm/wallets/smart/index.js.map +1 -1
  189. package/dist/esm/wallets/smart/lib/utils.js +0 -6
  190. package/dist/esm/wallets/smart/lib/utils.js.map +1 -1
  191. package/dist/types/contract/deployment/deploy-via-autofactory.d.ts.map +1 -1
  192. package/dist/types/contract/deployment/publisher.d.ts.map +1 -1
  193. package/dist/types/contract/deployment/utils/bootstrap.d.ts +4 -2
  194. package/dist/types/contract/deployment/utils/bootstrap.d.ts.map +1 -1
  195. package/dist/types/contract/deployment/zksync/zkDeployContract.d.ts +12 -0
  196. package/dist/types/contract/deployment/zksync/zkDeployContract.d.ts.map +1 -0
  197. package/dist/types/contract/deployment/zksync/zkDeployCreate2Factory.d.ts +6 -0
  198. package/dist/types/contract/deployment/zksync/zkDeployCreate2Factory.d.ts.map +1 -0
  199. package/dist/types/contract/deployment/zksync/zkDeployDeterministic.d.ts +13 -0
  200. package/dist/types/contract/deployment/zksync/zkDeployDeterministic.d.ts.map +1 -0
  201. package/dist/types/contract/deployment/zksync/zkDeployProxy.d.ts +12 -0
  202. package/dist/types/contract/deployment/zksync/zkDeployProxy.d.ts.map +1 -0
  203. package/dist/types/exports/extensions/erc4337.d.ts +14 -13
  204. package/dist/types/exports/extensions/erc4337.d.ts.map +1 -1
  205. package/dist/types/exports/extensions/permissions.d.ts +8 -8
  206. package/dist/types/exports/extensions/permissions.d.ts.map +1 -1
  207. package/dist/types/exports/extensions/thirdweb.d.ts +1 -0
  208. package/dist/types/exports/extensions/thirdweb.d.ts.map +1 -1
  209. package/dist/types/extensions/erc4337/account/addAdmin.d.ts +13 -0
  210. package/dist/types/extensions/erc4337/account/addAdmin.d.ts.map +1 -1
  211. package/dist/types/extensions/erc4337/account/addSessionKey.d.ts +13 -0
  212. package/dist/types/extensions/erc4337/account/addSessionKey.d.ts.map +1 -1
  213. package/dist/types/extensions/erc4337/account/removeAdmin.d.ts +13 -0
  214. package/dist/types/extensions/erc4337/account/removeAdmin.d.ts.map +1 -1
  215. package/dist/types/extensions/erc4337/account/removeSessionKey.d.ts +13 -0
  216. package/dist/types/extensions/erc4337/account/removeSessionKey.d.ts.map +1 -1
  217. package/dist/types/extensions/permissions/read/getAllMembers.d.ts +13 -0
  218. package/dist/types/extensions/permissions/read/getAllMembers.d.ts.map +1 -1
  219. package/dist/types/extensions/permissions/read/getRoleAdmin.d.ts +1 -0
  220. package/dist/types/extensions/permissions/read/getRoleAdmin.d.ts.map +1 -1
  221. package/dist/types/extensions/permissions/read/getRoleMember.d.ts +1 -0
  222. package/dist/types/extensions/permissions/read/getRoleMember.d.ts.map +1 -1
  223. package/dist/types/extensions/permissions/read/getRoleMemberCount.d.ts +1 -0
  224. package/dist/types/extensions/permissions/read/getRoleMemberCount.d.ts.map +1 -1
  225. package/dist/types/extensions/permissions/read/hasRole.d.ts +1 -0
  226. package/dist/types/extensions/permissions/read/hasRole.d.ts.map +1 -1
  227. package/dist/types/extensions/permissions/write/{grant.d.ts → grantRole.d.ts} +2 -1
  228. package/dist/types/extensions/permissions/write/grantRole.d.ts.map +1 -0
  229. package/dist/types/extensions/permissions/write/renounceRole.d.ts +1 -0
  230. package/dist/types/extensions/permissions/write/renounceRole.d.ts.map +1 -1
  231. package/dist/types/extensions/permissions/write/revokeRole.d.ts +1 -0
  232. package/dist/types/extensions/permissions/write/revokeRole.d.ts.map +1 -1
  233. package/dist/types/extensions/prebuilts/deploy-published.d.ts.map +1 -1
  234. package/dist/types/extensions/thirdweb/read/contractType.d.ts +31 -0
  235. package/dist/types/extensions/thirdweb/read/contractType.d.ts.map +1 -0
  236. package/dist/types/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.d.ts +61 -0
  237. package/dist/types/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.d.ts.map +1 -0
  238. package/dist/types/react/core/hooks/connection/ConnectButtonProps.d.ts +18 -0
  239. package/dist/types/react/core/hooks/connection/ConnectButtonProps.d.ts.map +1 -1
  240. package/dist/types/react/web/hooks/transaction/useSendTransaction.d.ts +6 -5
  241. package/dist/types/react/web/hooks/transaction/useSendTransaction.d.ts.map +1 -1
  242. package/dist/types/react/web/ui/ConnectWallet/Details.d.ts +3 -0
  243. package/dist/types/react/web/ui/ConnectWallet/Details.d.ts.map +1 -1
  244. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.d.ts.map +1 -1
  245. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.d.ts +28 -7
  246. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.d.ts.map +1 -1
  247. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.d.ts +6 -0
  248. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.d.ts.map +1 -1
  249. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.d.ts +0 -1
  250. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.d.ts.map +1 -1
  251. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.d.ts.map +1 -1
  252. package/dist/types/react/web/ui/prebuilt/thirdweb/ClaimButton/index.d.ts.map +1 -1
  253. package/dist/types/react/web/ui/prebuilt/thirdweb/ClaimButton/types.d.ts +8 -5
  254. package/dist/types/react/web/ui/prebuilt/thirdweb/ClaimButton/types.d.ts.map +1 -1
  255. package/dist/types/stories/ConnectButton/hideButtons.stories.d.ts +23 -0
  256. package/dist/types/stories/ConnectButton/hideButtons.stories.d.ts.map +1 -0
  257. package/dist/types/stories/{ConnectButton.stories.d.ts → ConnectButton/themes.stories.d.ts} +3 -4
  258. package/dist/types/stories/ConnectButton/themes.stories.d.ts.map +1 -0
  259. package/dist/types/transaction/actions/send-transaction.d.ts.map +1 -1
  260. package/dist/types/transaction/actions/zksync/getEip721Domain.d.ts.map +1 -1
  261. package/dist/types/transaction/extract-error.d.ts.map +1 -1
  262. package/dist/types/utils/any-evm/deploy-metadata.d.ts.map +1 -1
  263. package/dist/types/utils/any-evm/zksync/computeDeploymentAddress.d.ts +11 -0
  264. package/dist/types/utils/any-evm/zksync/computeDeploymentAddress.d.ts.map +1 -0
  265. package/dist/types/utils/any-evm/zksync/constants.d.ts +29 -0
  266. package/dist/types/utils/any-evm/zksync/constants.d.ts.map +1 -0
  267. package/dist/types/utils/any-evm/zksync/create2Address.d.ts +9 -0
  268. package/dist/types/utils/any-evm/zksync/create2Address.d.ts.map +1 -0
  269. package/dist/types/utils/any-evm/zksync/isZkSyncChain.d.ts +3 -0
  270. package/dist/types/utils/any-evm/zksync/isZkSyncChain.d.ts.map +1 -0
  271. package/dist/types/utils/domains.d.ts +1 -1
  272. package/dist/types/version.d.ts +1 -1
  273. package/dist/types/wallets/smart/index.d.ts.map +1 -1
  274. package/dist/types/wallets/smart/lib/utils.d.ts +0 -2
  275. package/dist/types/wallets/smart/lib/utils.d.ts.map +1 -1
  276. package/package.json +1 -1
  277. package/src/contract/deployment/deploy-via-autofactory.ts +13 -0
  278. package/src/contract/deployment/publisher.ts +5 -0
  279. package/src/contract/deployment/utils/bootstrap.ts +56 -3
  280. package/src/contract/deployment/zksync/zkDeployContract.ts +52 -0
  281. package/src/contract/deployment/zksync/zkDeployCreate2Factory.ts +65 -0
  282. package/src/contract/deployment/zksync/zkDeployDeterministic.ts +106 -0
  283. package/src/contract/deployment/zksync/zkDeployProxy.ts +55 -0
  284. package/src/exports/extensions/erc4337.ts +35 -7
  285. package/src/exports/extensions/permissions.ts +9 -1
  286. package/src/exports/extensions/thirdweb.ts +10 -0
  287. package/src/extensions/erc4337/account/addAdmin.ts +20 -1
  288. package/src/extensions/erc4337/account/addSessionKey.ts +20 -1
  289. package/src/extensions/erc4337/account/removeAdmin.ts +20 -1
  290. package/src/extensions/erc4337/account/removeSessionKey.ts +20 -1
  291. package/src/extensions/permissions/permissions.test.ts +1 -1
  292. package/src/extensions/permissions/read/getAllMembers.ts +30 -2
  293. package/src/extensions/permissions/read/getRoleAdmin.ts +2 -0
  294. package/src/extensions/permissions/read/getRoleMember.ts +2 -0
  295. package/src/extensions/permissions/read/getRoleMemberCount.ts +2 -0
  296. package/src/extensions/permissions/read/hasRole.ts +2 -0
  297. package/src/extensions/permissions/write/{grant.ts → grantRole.ts} +2 -0
  298. package/src/extensions/permissions/write/renounceRole.ts +2 -0
  299. package/src/extensions/permissions/write/revokeRole.ts +2 -0
  300. package/src/extensions/prebuilts/deploy-published.ts +58 -26
  301. package/src/extensions/thirdweb/read/contractType.ts +46 -0
  302. package/src/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.ts +55 -0
  303. package/src/react/core/hooks/connection/ConnectButtonProps.ts +21 -0
  304. package/src/react/web/hooks/transaction/useSendTransaction.tsx +6 -5
  305. package/src/react/web/ui/ConnectWallet/ConnectButton.tsx +3 -0
  306. package/src/react/web/ui/ConnectWallet/Details.tsx +108 -73
  307. package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +37 -29
  308. package/src/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.ts +73 -33
  309. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.tsx +37 -2
  310. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.tsx +5 -10
  311. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.tsx +27 -20
  312. package/src/react/web/ui/prebuilt/thirdweb/ClaimButton/index.tsx +8 -4
  313. package/src/react/web/ui/prebuilt/thirdweb/ClaimButton/types.ts +8 -5
  314. package/src/stories/ConnectButton/hideButtons.stories.tsx +83 -0
  315. package/src/stories/{ConnectButton.stories.ts → ConnectButton/themes.stories.tsx} +3 -4
  316. package/src/transaction/actions/send-transaction.ts +11 -0
  317. package/src/transaction/actions/to-serializable-transaction.test.ts +3 -4
  318. package/src/transaction/actions/zksync/getEip721Domain.ts +4 -2
  319. package/src/transaction/actions/zksync/send-eip712-transaction.test.ts +27 -2
  320. package/src/transaction/extract-error.ts +7 -2
  321. package/src/utils/abi/encode-abi-parameters.test.ts +1 -1
  322. package/src/utils/abi/encodeAbiParameters.ts +1 -1
  323. package/src/utils/any-evm/deploy-metadata.ts +11 -2
  324. package/src/utils/any-evm/zksync/computeDeploymentAddress.ts +24 -0
  325. package/src/utils/any-evm/zksync/constants.ts +49 -0
  326. package/src/utils/any-evm/zksync/create2Address.ts +26 -0
  327. package/src/utils/any-evm/zksync/isZkSyncChain.ts +10 -0
  328. package/src/utils/domains.ts +1 -1
  329. package/src/version.ts +1 -1
  330. package/src/wallets/smart/index.ts +2 -3
  331. package/src/wallets/smart/lib/utils.ts +0 -10
  332. package/dist/cjs/extensions/permissions/write/grant.js.map +0 -1
  333. package/dist/cjs/stories/ConnectButton.stories.js.map +0 -1
  334. package/dist/esm/extensions/permissions/write/grant.js.map +0 -1
  335. package/dist/esm/stories/ConnectButton.stories.js.map +0 -1
  336. package/dist/types/extensions/permissions/write/grant.d.ts.map +0 -1
  337. package/dist/types/stories/ConnectButton.stories.d.ts.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zkDeployDeterministic.js","sourceRoot":"","sources":["../../../../../src/contract/deployment/zksync/zkDeployDeterministic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { encode } from "../../../transaction/actions/encode.js";
2
+ import { twProxyAbi, twProxyBytecode, } from "../../../utils/any-evm/zksync/constants.js";
3
+ import { isContractDeployed } from "../../../utils/bytecode/is-contract-deployed.js";
4
+ import { resolvePromisedValue } from "../../../utils/promise/resolve-promised-value.js";
5
+ import { zkDeployContract } from "./zkDeployContract.js";
6
+ /**
7
+ * @internal
8
+ */
9
+ export async function zkDeployProxy(options) {
10
+ // TODO ensure implementation is deployed
11
+ const implementationAddress = await resolvePromisedValue(options.initializeTransaction.to);
12
+ if (!implementationAddress) {
13
+ throw new Error("initializeTransaction must have a 'to' field set");
14
+ }
15
+ const deployed = await isContractDeployed({
16
+ address: implementationAddress,
17
+ chain: options.chain,
18
+ client: options.client,
19
+ });
20
+ if (!deployed) {
21
+ throw new Error(`Implementation contract at ${implementationAddress} is not deployed`);
22
+ }
23
+ // deploy tw proxy of the implementation
24
+ const proxyAddress = await zkDeployContract({
25
+ client: options.client,
26
+ chain: options.chain,
27
+ account: options.account,
28
+ abi: twProxyAbi,
29
+ bytecode: twProxyBytecode,
30
+ params: [
31
+ implementationAddress,
32
+ await encode(options.initializeTransaction),
33
+ ],
34
+ });
35
+ // return address of proxy
36
+ return proxyAddress;
37
+ }
38
+ //# sourceMappingURL=zkDeployProxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zkDeployProxy.js","sourceRoot":"","sources":["../../../../../src/contract/deployment/zksync/zkDeployProxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wCAAwC,CAAC;AAEhE,OAAO,EACL,UAAU,EACV,eAAe,GAChB,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AAGxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAIC;IAED,yCAAyC;IACzC,MAAM,qBAAqB,GAAG,MAAM,oBAAoB,CACtD,OAAO,CAAC,qBAAqB,CAAC,EAAE,CACjC,CAAC;IACF,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC;QACxC,OAAO,EAAE,qBAAqB;QAC9B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IACH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,8BAA8B,qBAAqB,kBAAkB,CACtE,CAAC;IACJ,CAAC;IACD,wCAAwC;IACxC,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC;QAC1C,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,GAAG,EAAE,UAAU;QACf,QAAQ,EAAE,eAAe;QACzB,MAAM,EAAE;YACN,qBAAqB;YACrB,MAAM,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC;SAC5C;KACF,CAAC,CAAC;IAEH,0BAA0B;IAC1B,OAAO,YAAY,CAAC;AACtB,CAAC"}
@@ -1,23 +1,24 @@
1
1
  // ACCOUNT
2
- export { addAdmin, } from "../../extensions/erc4337/account/addAdmin.js";
2
+ export { isValidateUserOpSupported } from "../../extensions/erc4337/__generated__/IAccount/write/validateUserOp.js";
3
+ export { addAdmin, isAddAdminSupported, } from "../../extensions/erc4337/account/addAdmin.js";
3
4
  export { removeAdmin, } from "../../extensions/erc4337/account/removeAdmin.js";
4
- export { addSessionKey, } from "../../extensions/erc4337/account/addSessionKey.js";
5
- export { removeSessionKey, } from "../../extensions/erc4337/account/removeSessionKey.js";
6
- export { getAllActiveSigners } from "../../extensions/erc4337/__generated__/IAccountPermissions/read/getAllActiveSigners.js";
7
- export { getAllAdmins } from "../../extensions/erc4337/__generated__/IAccountPermissions/read/getAllAdmins.js";
8
- export { getAllSigners } from "../../extensions/erc4337/__generated__/IAccountPermissions/read/getAllSigners.js";
5
+ export { addSessionKey, isAddSessionKeySupported, } from "../../extensions/erc4337/account/addSessionKey.js";
6
+ export { removeSessionKey, isRemoveSessionKeySupported, } from "../../extensions/erc4337/account/removeSessionKey.js";
7
+ export { getAllActiveSigners, isGetAllActiveSignersSupported, } from "../../extensions/erc4337/__generated__/IAccountPermissions/read/getAllActiveSigners.js";
8
+ export { getAllAdmins, isGetAllAdminsSupported, } from "../../extensions/erc4337/__generated__/IAccountPermissions/read/getAllAdmins.js";
9
+ export { getAllSigners, isGetAllSignersSupported, } from "../../extensions/erc4337/__generated__/IAccountPermissions/read/getAllSigners.js";
9
10
  export { getPermissionsForSigner, } from "../../extensions/erc4337/__generated__/IAccountPermissions/read/getPermissionsForSigner.js";
10
- export { isActiveSigner, } from "../../extensions/erc4337/__generated__/IAccountPermissions/read/isActiveSigner.js";
11
- export { isAdmin } from "../../extensions/erc4337/__generated__/IAccountPermissions/read/isAdmin.js";
11
+ export { isActiveSigner, isIsActiveSignerSupported, } from "../../extensions/erc4337/__generated__/IAccountPermissions/read/isActiveSigner.js";
12
+ export { isAdmin, isIsAdminSupported, } from "../../extensions/erc4337/__generated__/IAccountPermissions/read/isAdmin.js";
12
13
  export { adminUpdatedEvent } from "../../extensions/erc4337/__generated__/IAccountPermissions/events/AdminUpdated.js";
13
14
  export { signerPermissionsUpdatedEvent } from "../../extensions/erc4337/__generated__/IAccountPermissions/events/SignerPermissionsUpdated.js";
14
15
  // FACTORY
15
- export { getAllAccounts } from "../../extensions/erc4337/__generated__/IAccountFactory/read/getAllAccounts.js";
16
- export { getAccounts } from "../../extensions/erc4337/__generated__/IAccountFactory/read/getAccounts.js";
17
- export { totalAccounts } from "../../extensions/erc4337/__generated__/IAccountFactory/read/totalAccounts.js";
16
+ export { getAllAccounts, isGetAllAccountsSupported, } from "../../extensions/erc4337/__generated__/IAccountFactory/read/getAllAccounts.js";
17
+ export { getAccounts, isGetAccountsSupported, } from "../../extensions/erc4337/__generated__/IAccountFactory/read/getAccounts.js";
18
+ export { totalAccounts, isTotalAccountsSupported, } from "../../extensions/erc4337/__generated__/IAccountFactory/read/totalAccounts.js";
18
19
  export { isRegistered } from "../../extensions/erc4337/__generated__/IAccountFactory/read/isRegistered.js";
19
- export { getAccountsOfSigner, } from "../../extensions/erc4337/__generated__/IAccountFactory/read/getAccountsOfSigner.js";
20
- export { getAddress as predictAccountAddress, } from "../../extensions/erc4337/__generated__/IAccountFactory/read/getAddress.js";
20
+ export { getAccountsOfSigner, isGetAccountsOfSignerSupported, } from "../../extensions/erc4337/__generated__/IAccountFactory/read/getAccountsOfSigner.js";
21
+ export { getAddress as predictAccountAddress, isGetAddressSupported as isPredictAccountAddressSupported, } from "../../extensions/erc4337/__generated__/IAccountFactory/read/getAddress.js";
21
22
  // ENTRYPOINT
22
23
  export { accountDeployedEvent } from "../../extensions/erc4337/__generated__/IEntryPoint/events/AccountDeployed.js";
23
24
  export { userOperationEventEvent } from "../../extensions/erc4337/__generated__/IEntryPoint/events/UserOperationEvent.js";
@@ -1 +1 @@
1
- {"version":3,"file":"erc4337.js","sourceRoot":"","sources":["../../../../src/exports/extensions/erc4337.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,OAAO,EAEL,QAAQ,GACT,MAAM,8CAA8C,CAAC;AAEtD,OAAO,EAEL,WAAW,GACZ,MAAM,iDAAiD,CAAC;AAEzD,OAAO,EAEL,aAAa,GACd,MAAM,mDAAmD,CAAC;AAE3D,OAAO,EAEL,gBAAgB,GACjB,MAAM,sDAAsD,CAAC;AAE9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wFAAwF,CAAC;AAC7H,OAAO,EAAE,YAAY,EAAE,MAAM,iFAAiF,CAAC;AAC/G,OAAO,EAAE,aAAa,EAAE,MAAM,kFAAkF,CAAC;AACjH,OAAO,EACL,uBAAuB,GAExB,MAAM,4FAA4F,CAAC;AACpG,OAAO,EACL,cAAc,GAEf,MAAM,mFAAmF,CAAC;AAC3F,OAAO,EAAE,OAAO,EAAE,MAAM,4EAA4E,CAAC;AACrG,OAAO,EAAE,iBAAiB,EAAE,MAAM,mFAAmF,CAAC;AACtH,OAAO,EAAE,6BAA6B,EAAE,MAAM,+FAA+F,CAAC;AAE9I,UAAU;AACV,OAAO,EAAE,cAAc,EAAE,MAAM,+EAA+E,CAAC;AAC/G,OAAO,EAAE,WAAW,EAAE,MAAM,4EAA4E,CAAC;AACzG,OAAO,EAAE,aAAa,EAAE,MAAM,8EAA8E,CAAC;AAC7G,OAAO,EAAE,YAAY,EAAE,MAAM,6EAA6E,CAAC;AAC3G,OAAO,EACL,mBAAmB,GAEpB,MAAM,oFAAoF,CAAC;AAC5F,OAAO,EACL,UAAU,IAAI,qBAAqB,GAEpC,MAAM,2EAA2E,CAAC;AAEnF,aAAa;AAEb,OAAO,EAAE,oBAAoB,EAAE,MAAM,8EAA8E,CAAC;AACpH,OAAO,EAAE,uBAAuB,EAAE,MAAM,iFAAiF,CAAC;AAC1H,OAAO,EAAE,8BAA8B,EAAE,MAAM,wFAAwF,CAAC;AACxI,OAAO,EACL,aAAa,GAEd,MAAM,0EAA0E,CAAC;AAClF,OAAO,EACL,gBAAgB,GAEjB,MAAM,8EAA8E,CAAC"}
1
+ {"version":3,"file":"erc4337.js","sourceRoot":"","sources":["../../../../src/exports/extensions/erc4337.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,OAAO,EAAE,yBAAyB,EAAE,MAAM,yEAAyE,CAAC;AACpH,OAAO,EAEL,QAAQ,EACR,mBAAmB,GACpB,MAAM,8CAA8C,CAAC;AAEtD,OAAO,EAEL,WAAW,GACZ,MAAM,iDAAiD,CAAC;AAEzD,OAAO,EAEL,aAAa,EACb,wBAAwB,GACzB,MAAM,mDAAmD,CAAC;AAE3D,OAAO,EAEL,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,sDAAsD,CAAC;AAE9D,OAAO,EACL,mBAAmB,EACnB,8BAA8B,GAC/B,MAAM,wFAAwF,CAAC;AAChG,OAAO,EACL,YAAY,EACZ,uBAAuB,GACxB,MAAM,iFAAiF,CAAC;AACzF,OAAO,EACL,aAAa,EACb,wBAAwB,GACzB,MAAM,kFAAkF,CAAC;AAC1F,OAAO,EACL,uBAAuB,GAExB,MAAM,4FAA4F,CAAC;AACpG,OAAO,EACL,cAAc,EACd,yBAAyB,GAE1B,MAAM,mFAAmF,CAAC;AAC3F,OAAO,EACL,OAAO,EACP,kBAAkB,GACnB,MAAM,4EAA4E,CAAC;AACpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mFAAmF,CAAC;AACtH,OAAO,EAAE,6BAA6B,EAAE,MAAM,+FAA+F,CAAC;AAE9I,UAAU;AACV,OAAO,EACL,cAAc,EACd,yBAAyB,GAC1B,MAAM,+EAA+E,CAAC;AACvF,OAAO,EACL,WAAW,EACX,sBAAsB,GACvB,MAAM,4EAA4E,CAAC;AACpF,OAAO,EACL,aAAa,EACb,wBAAwB,GACzB,MAAM,8EAA8E,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,MAAM,6EAA6E,CAAC;AAC3G,OAAO,EACL,mBAAmB,EAEnB,8BAA8B,GAC/B,MAAM,oFAAoF,CAAC;AAC5F,OAAO,EACL,UAAU,IAAI,qBAAqB,EAEnC,qBAAqB,IAAI,gCAAgC,GAC1D,MAAM,2EAA2E,CAAC;AAEnF,aAAa;AAEb,OAAO,EAAE,oBAAoB,EAAE,MAAM,8EAA8E,CAAC;AACpH,OAAO,EAAE,uBAAuB,EAAE,MAAM,iFAAiF,CAAC;AAC1H,OAAO,EAAE,8BAA8B,EAAE,MAAM,wFAAwF,CAAC;AACxI,OAAO,EACL,aAAa,GAEd,MAAM,0EAA0E,CAAC;AAClF,OAAO,EACL,gBAAgB,GAEjB,MAAM,8EAA8E,CAAC"}
@@ -2,12 +2,12 @@
2
2
  // Permissions
3
3
  // --------------------------------------------------------
4
4
  // READ
5
- export { hasRole, } from "../../extensions/permissions/read/hasRole.js";
6
- export { getRoleAdmin, } from "../../extensions/permissions/read/getRoleAdmin.js";
5
+ export { hasRole, isHasRoleSupported, } from "../../extensions/permissions/read/hasRole.js";
6
+ export { getRoleAdmin, isGetRoleAdminSupported, } from "../../extensions/permissions/read/getRoleAdmin.js";
7
7
  // WRITE
8
- export { grantRole, } from "../../extensions/permissions/write/grant.js";
9
- export { revokeRole, } from "../../extensions/permissions/write/revokeRole.js";
10
- export { renounceRole, } from "../../extensions/permissions/write/renounceRole.js";
8
+ export { grantRole, isGrantRoleSupported, } from "../../extensions/permissions/write/grantRole.js";
9
+ export { revokeRole, isRevokeRoleSupported, } from "../../extensions/permissions/write/revokeRole.js";
10
+ export { renounceRole, isRenounceRoleSupported, } from "../../extensions/permissions/write/renounceRole.js";
11
11
  // EVENTS
12
12
  export { roleGrantedEvent, } from "../../extensions/permissions/__generated__/IPermissions/events/RoleGranted.js";
13
13
  export { roleRevokedEvent, } from "../../extensions/permissions/__generated__/IPermissions/events/RoleRevoked.js";
@@ -16,9 +16,9 @@ export { roleAdminChangedEvent, } from "../../extensions/permissions/__generated
16
16
  // PermissionsEnumerable
17
17
  // --------------------------------------------------------
18
18
  // READ
19
- export { getRoleMember, } from "../../extensions/permissions/read/getRoleMember.js";
20
- export { getRoleMemberCount, } from "../../extensions/permissions/read/getRoleMemberCount.js";
21
- export { getAllRoleMembers, } from "../../extensions/permissions/read/getAllMembers.js";
19
+ export { getRoleMember, isGetRoleMemberSupported, } from "../../extensions/permissions/read/getRoleMember.js";
20
+ export { getRoleMemberCount, isGetRoleMemberCountSupported, } from "../../extensions/permissions/read/getRoleMemberCount.js";
21
+ export { getAllRoleMembers, isGetAllRoleMembersSupported, } from "../../extensions/permissions/read/getAllMembers.js";
22
22
  // --------------------------------------------------------
23
23
  // Utils
24
24
  // --------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../../../src/exports/extensions/permissions.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,cAAc;AACd,2DAA2D;AAE3D,OAAO;AACP,OAAO,EACL,OAAO,GAER,MAAM,8CAA8C,CAAC;AACtD,OAAO,EACL,YAAY,GAEb,MAAM,mDAAmD,CAAC;AAE3D,QAAQ;AACR,OAAO,EACL,SAAS,GAEV,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACL,UAAU,GAEX,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EACL,YAAY,GAEb,MAAM,oDAAoD,CAAC;AAE5D,SAAS;AACT,OAAO,EACL,gBAAgB,GAEjB,MAAM,+EAA+E,CAAC;AACvF,OAAO,EACL,gBAAgB,GAEjB,MAAM,+EAA+E,CAAC;AACvF,OAAO,EACL,qBAAqB,GAEtB,MAAM,oFAAoF,CAAC;AAE5F,2DAA2D;AAC3D,wBAAwB;AACxB,2DAA2D;AAE3D,OAAO;AACP,OAAO,EACL,aAAa,GAEd,MAAM,oDAAoD,CAAC;AAC5D,OAAO,EACL,kBAAkB,GAEnB,MAAM,yDAAyD,CAAC;AACjE,OAAO,EACL,iBAAiB,GAElB,MAAM,oDAAoD,CAAC;AAE5D,2DAA2D;AAC3D,QAAQ;AACR,2DAA2D;AAC3D,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC"}
1
+ {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../../../src/exports/extensions/permissions.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,cAAc;AACd,2DAA2D;AAE3D,OAAO;AACP,OAAO,EACL,OAAO,EAEP,kBAAkB,GACnB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EACL,YAAY,EAEZ,uBAAuB,GACxB,MAAM,mDAAmD,CAAC;AAE3D,QAAQ;AACR,OAAO,EACL,SAAS,EAET,oBAAoB,GACrB,MAAM,iDAAiD,CAAC;AACzD,OAAO,EACL,UAAU,EAEV,qBAAqB,GACtB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EACL,YAAY,EAEZ,uBAAuB,GACxB,MAAM,oDAAoD,CAAC;AAE5D,SAAS;AACT,OAAO,EACL,gBAAgB,GAEjB,MAAM,+EAA+E,CAAC;AACvF,OAAO,EACL,gBAAgB,GAEjB,MAAM,+EAA+E,CAAC;AACvF,OAAO,EACL,qBAAqB,GAEtB,MAAM,oFAAoF,CAAC;AAE5F,2DAA2D;AAC3D,wBAAwB;AACxB,2DAA2D;AAE3D,OAAO;AACP,OAAO,EACL,aAAa,EAEb,wBAAwB,GACzB,MAAM,oDAAoD,CAAC;AAC5D,OAAO,EACL,kBAAkB,EAElB,6BAA6B,GAC9B,MAAM,yDAAyD,CAAC;AACjE,OAAO,EACL,iBAAiB,EAEjB,4BAA4B,GAC7B,MAAM,oDAAoD,CAAC;AAE5D,2DAA2D;AAC3D,QAAQ;AACR,2DAA2D;AAC3D,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC"}
@@ -1,4 +1,9 @@
1
1
  // --------------------------------------------------------
2
+ // Generic
3
+ // --------------------------------------------------------
4
+ // Read
5
+ export { contractType, isContractTypeSupported, } from "../../extensions/thirdweb/read/contractType.js";
6
+ // --------------------------------------------------------
2
7
  // Publisher contract
3
8
  // --------------------------------------------------------
4
9
  // Read
@@ -1 +1 @@
1
- {"version":3,"file":"thirdweb.js","sourceRoot":"","sources":["../../../../src/exports/extensions/thirdweb.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,qBAAqB;AACrB,2DAA2D;AAE3D,OAAO;AACP,OAAO,EACL,sBAAsB,GAEvB,MAAM,2FAA2F,CAAC;AACnG,OAAO,EACL,8BAA8B,GAE/B,MAAM,mGAAmG,CAAC;AAC3G,OAAO,EACL,wBAAwB,GAEzB,MAAM,6FAA6F,CAAC;AACrG,OAAO,EACL,oBAAoB,GAErB,MAAM,yFAAyF,CAAC;AACjG,OAAO,EACL,4BAA4B,GAE7B,MAAM,iGAAiG,CAAC;AAEzG,QAAQ;AACR,OAAO,EACL,eAAe,GAEhB,MAAM,qFAAqF,CAAC;AAC7F,OAAO,EACL,sBAAsB,GAEvB,MAAM,4FAA4F,CAAC;AACpG,OAAO,EACL,iBAAiB,GAElB,MAAM,uFAAuF,CAAC;AAE/F,2DAA2D;AAC3D,sBAAsB;AACtB,2DAA2D;AAE3D,OAAO;AACP,OAAO,EACL,KAAK,GAEN,MAAM,6EAA6E,CAAC;AACrF,OAAO,EACL,MAAM,GAEP,MAAM,8EAA8E,CAAC;AACtF,OAAO,EACL,cAAc,GAEf,MAAM,sFAAsF,CAAC;AAE9F,QAAQ;AACR,OAAO,EACL,GAAG,GAEJ,MAAM,4EAA4E,CAAC;AACpF,OAAO,EACL,MAAM,GAEP,MAAM,+EAA+E,CAAC;AAEvF,2DAA2D;AAC3D,mBAAmB;AACnB,2DAA2D;AAC3D,OAAO,EACL,2BAA2B,GAE5B,MAAM,+FAA+F,CAAC"}
1
+ {"version":3,"file":"thirdweb.js","sourceRoot":"","sources":["../../../../src/exports/extensions/thirdweb.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,UAAU;AACV,2DAA2D;AAE3D,OAAO;AACP,OAAO,EACL,YAAY,EACZ,uBAAuB,GACxB,MAAM,gDAAgD,CAAC;AAExD,2DAA2D;AAC3D,qBAAqB;AACrB,2DAA2D;AAE3D,OAAO;AACP,OAAO,EACL,sBAAsB,GAEvB,MAAM,2FAA2F,CAAC;AACnG,OAAO,EACL,8BAA8B,GAE/B,MAAM,mGAAmG,CAAC;AAC3G,OAAO,EACL,wBAAwB,GAEzB,MAAM,6FAA6F,CAAC;AACrG,OAAO,EACL,oBAAoB,GAErB,MAAM,yFAAyF,CAAC;AACjG,OAAO,EACL,4BAA4B,GAE7B,MAAM,iGAAiG,CAAC;AAEzG,QAAQ;AACR,OAAO,EACL,eAAe,GAEhB,MAAM,qFAAqF,CAAC;AAC7F,OAAO,EACL,sBAAsB,GAEvB,MAAM,4FAA4F,CAAC;AACpG,OAAO,EACL,iBAAiB,GAElB,MAAM,uFAAuF,CAAC;AAE/F,2DAA2D;AAC3D,sBAAsB;AACtB,2DAA2D;AAE3D,OAAO;AACP,OAAO,EACL,KAAK,GAEN,MAAM,6EAA6E,CAAC;AACrF,OAAO,EACL,MAAM,GAEP,MAAM,8EAA8E,CAAC;AACtF,OAAO,EACL,cAAc,GAEf,MAAM,sFAAsF,CAAC;AAE9F,QAAQ;AACR,OAAO,EACL,GAAG,GAEJ,MAAM,4EAA4E,CAAC;AACpF,OAAO,EACL,MAAM,GAEP,MAAM,+EAA+E,CAAC;AAEvF,2DAA2D;AAC3D,mBAAmB;AACnB,2DAA2D;AAC3D,OAAO,EACL,2BAA2B,GAE5B,MAAM,+FAA+F,CAAC"}
@@ -1,4 +1,4 @@
1
- import { setPermissionsForSigner } from "../__generated__/IAccountPermissions/write/setPermissionsForSigner.js";
1
+ import { isSetPermissionsForSignerSupported, setPermissionsForSigner, } from "../__generated__/IAccountPermissions/write/setPermissionsForSigner.js";
2
2
  import { defaultPermissionsForAdmin, signPermissionRequest } from "./common.js";
3
3
  /**
4
4
  * Adds admin permissions for a specified address.
@@ -36,4 +36,19 @@ export function addAdmin(options) {
36
36
  },
37
37
  });
38
38
  }
39
+ /**
40
+ * Checks if the `isAddAdminSupported` method is supported by the given contract.
41
+ * @param availableSelectors An array of 4byte function selectors of the contract. You can get this in various ways, such as using "whatsabi" or if you have the ABI of the contract available you can use it to generate the selectors.
42
+ * @returns A boolean indicating if the `isAddAdminSupported` method is supported.
43
+ * @extension ERC4337
44
+ * @example
45
+ * ```ts
46
+ * import { isAddAdminSupported } from "thirdweb/extensions/erc4337";
47
+ *
48
+ * const supported = isAddAdminSupported(["0x..."]);
49
+ * ```
50
+ */
51
+ export function isAddAdminSupported(availableSelectors) {
52
+ return isSetPermissionsForSignerSupported(availableSelectors);
53
+ }
39
54
  //# sourceMappingURL=addAdmin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"addAdmin.js","sourceRoot":"","sources":["../../../../../src/extensions/erc4337/account/addAdmin.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uEAAuE,CAAC;AAChH,OAAO,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAgBhF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAgD;IACvE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACpD,OAAO,uBAAuB,CAAC;QAC7B,QAAQ;QACR,KAAK,CAAC,WAAW;YACf,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,qBAAqB,CAAC;gBACrD,OAAO;gBACP,QAAQ;gBACR,GAAG,EAAE,MAAM,0BAA0B,CAAC;oBACpC,MAAM,EAAE,YAAY;oBACpB,MAAM,EAAE,WAAW;iBACpB,CAAC;aACH,CAAC,CAAC;YACH,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;QAC5B,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"addAdmin.js","sourceRoot":"","sources":["../../../../../src/extensions/erc4337/account/addAdmin.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,kCAAkC,EAClC,uBAAuB,GACxB,MAAM,uEAAuE,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAgBhF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAgD;IACvE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACpD,OAAO,uBAAuB,CAAC;QAC7B,QAAQ;QACR,KAAK,CAAC,WAAW;YACf,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,qBAAqB,CAAC;gBACrD,OAAO;gBACP,QAAQ;gBACR,GAAG,EAAE,MAAM,0BAA0B,CAAC;oBACpC,MAAM,EAAE,YAAY;oBACpB,MAAM,EAAE,WAAW;iBACpB,CAAC;aACH,CAAC,CAAC;YACH,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;QAC5B,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CAAC,kBAA4B;IAC9D,OAAO,kCAAkC,CAAC,kBAAkB,CAAC,CAAC;AAChE,CAAC"}
@@ -1,4 +1,4 @@
1
- import { setPermissionsForSigner } from "../__generated__/IAccountPermissions/write/setPermissionsForSigner.js";
1
+ import { isSetPermissionsForSignerSupported, setPermissionsForSigner, } from "../__generated__/IAccountPermissions/write/setPermissionsForSigner.js";
2
2
  import { signPermissionRequest, toContractPermissions } from "./common.js";
3
3
  /**
4
4
  * Adds session key permissions for a specified address.
@@ -43,4 +43,19 @@ export function addSessionKey(options) {
43
43
  },
44
44
  });
45
45
  }
46
+ /**
47
+ * Checks if the `isAddSessionKeySupported` method is supported by the given contract.
48
+ * @param availableSelectors An array of 4byte function selectors of the contract. You can get this in various ways, such as using "whatsabi" or if you have the ABI of the contract available you can use it to generate the selectors.
49
+ * @returns A boolean indicating if the `isAddSessionKeySupported` method is supported.
50
+ * @extension ERC4337
51
+ * @example
52
+ * ```ts
53
+ * import { isAddSessionKeySupported } from "thirdweb/extensions/erc4337";
54
+ *
55
+ * const supported = isAddSessionKeySupported(["0x..."]);
56
+ * ```
57
+ */
58
+ export function isAddSessionKeySupported(availableSelectors) {
59
+ return isSetPermissionsForSignerSupported(availableSelectors);
60
+ }
46
61
  //# sourceMappingURL=addSessionKey.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"addSessionKey.js","sourceRoot":"","sources":["../../../../../src/extensions/erc4337/account/addSessionKey.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uEAAuE,CAAC;AAChH,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAqB3E;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,aAAa,CAC3B,OAAqD;IAErD,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IACtE,OAAO,uBAAuB,CAAC;QAC7B,QAAQ;QACR,KAAK,CAAC,WAAW;YACf,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,qBAAqB,CAAC;gBACrD,OAAO;gBACP,QAAQ;gBACR,GAAG,EAAE,MAAM,qBAAqB,CAAC;oBAC/B,MAAM,EAAE,iBAAiB;oBACzB,WAAW;iBACZ,CAAC;aACH,CAAC,CAAC;YACH,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;QAC5B,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"addSessionKey.js","sourceRoot":"","sources":["../../../../../src/extensions/erc4337/account/addSessionKey.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,kCAAkC,EAClC,uBAAuB,GACxB,MAAM,uEAAuE,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAqB3E;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,aAAa,CAC3B,OAAqD;IAErD,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IACtE,OAAO,uBAAuB,CAAC;QAC7B,QAAQ;QACR,KAAK,CAAC,WAAW;YACf,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,qBAAqB,CAAC;gBACrD,OAAO;gBACP,QAAQ;gBACR,GAAG,EAAE,MAAM,qBAAqB,CAAC;oBAC/B,MAAM,EAAE,iBAAiB;oBACzB,WAAW;iBACZ,CAAC;aACH,CAAC,CAAC;YACH,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;QAC5B,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,wBAAwB,CAAC,kBAA4B;IACnE,OAAO,kCAAkC,CAAC,kBAAkB,CAAC,CAAC;AAChE,CAAC"}
@@ -1,4 +1,4 @@
1
- import { setPermissionsForSigner } from "../__generated__/IAccountPermissions/write/setPermissionsForSigner.js";
1
+ import { isSetPermissionsForSignerSupported, setPermissionsForSigner, } from "../__generated__/IAccountPermissions/write/setPermissionsForSigner.js";
2
2
  import { defaultPermissionsForAdmin, signPermissionRequest } from "./common.js";
3
3
  /**
4
4
  * Removes admin permissions for a specified address.
@@ -39,4 +39,19 @@ export function removeAdmin(options) {
39
39
  },
40
40
  });
41
41
  }
42
+ /**
43
+ * Checks if the `isRemoveAdminSupported` method is supported by the given contract.
44
+ * @param availableSelectors An array of 4byte function selectors of the contract. You can get this in various ways, such as using "whatsabi" or if you have the ABI of the contract available you can use it to generate the selectors.
45
+ * @returns A boolean indicating if the `isRemoveAdminSupported` method is supported.
46
+ * @extension ERC4337
47
+ * @example
48
+ * ```ts
49
+ * import { isRemoveAdminSupported } from "thirdweb/extensions/erc4337";
50
+ *
51
+ * const supported = isRemoveAdminSupported(["0x..."]);
52
+ * ```
53
+ */
54
+ export function isRemoveAdminSupported(availableSelectors) {
55
+ return isSetPermissionsForSignerSupported(availableSelectors);
56
+ }
42
57
  //# sourceMappingURL=removeAdmin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"removeAdmin.js","sourceRoot":"","sources":["../../../../../src/extensions/erc4337/account/removeAdmin.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uEAAuE,CAAC;AAChH,OAAO,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAgBhF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,WAAW,CACzB,OAAmD;IAEnD,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACpD,OAAO,uBAAuB,CAAC;QAC7B,QAAQ;QACR,KAAK,CAAC,WAAW;YACf,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,qBAAqB,CAAC;gBACrD,OAAO;gBACP,QAAQ;gBACR,GAAG,EAAE,MAAM,0BAA0B,CAAC;oBACpC,MAAM,EAAE,YAAY;oBACpB,MAAM,EAAE,cAAc;iBACvB,CAAC;aACH,CAAC,CAAC;YACH,OAAO;gBACL,SAAS;gBACT,GAAG;aACJ,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"removeAdmin.js","sourceRoot":"","sources":["../../../../../src/extensions/erc4337/account/removeAdmin.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,kCAAkC,EAClC,uBAAuB,GACxB,MAAM,uEAAuE,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAgBhF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,WAAW,CACzB,OAAmD;IAEnD,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACpD,OAAO,uBAAuB,CAAC;QAC7B,QAAQ;QACR,KAAK,CAAC,WAAW;YACf,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,qBAAqB,CAAC;gBACrD,OAAO;gBACP,QAAQ;gBACR,GAAG,EAAE,MAAM,0BAA0B,CAAC;oBACpC,MAAM,EAAE,YAAY;oBACpB,MAAM,EAAE,cAAc;iBACvB,CAAC;aACH,CAAC,CAAC;YACH,OAAO;gBACL,SAAS;gBACT,GAAG;aACJ,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,sBAAsB,CAAC,kBAA4B;IACjE,OAAO,kCAAkC,CAAC,kBAAkB,CAAC,CAAC;AAChE,CAAC"}
@@ -1,4 +1,4 @@
1
- import { setPermissionsForSigner } from "../__generated__/IAccountPermissions/write/setPermissionsForSigner.js";
1
+ import { isSetPermissionsForSignerSupported, setPermissionsForSigner, } from "../__generated__/IAccountPermissions/write/setPermissionsForSigner.js";
2
2
  import { signPermissionRequest, toContractPermissions } from "./common.js";
3
3
  /**
4
4
  * Removes session key permissions for a specified address.
@@ -41,4 +41,19 @@ export function removeSessionKey(options) {
41
41
  },
42
42
  });
43
43
  }
44
+ /**
45
+ * Checks if the `isRemoveSessionKeySupported` method is supported by the given contract.
46
+ * @param availableSelectors An array of 4byte function selectors of the contract. You can get this in various ways, such as using "whatsabi" or if you have the ABI of the contract available you can use it to generate the selectors.
47
+ * @returns A boolean indicating if the `isRemoveSessionKeySupported` method is supported.
48
+ * @extension ERC4337
49
+ * @example
50
+ * ```ts
51
+ * import { isRemoveSessionKeySupported } from "thirdweb/extensions/erc4337";
52
+ *
53
+ * const supported = isRemoveSessionKeySupported(["0x..."]);
54
+ * ```
55
+ */
56
+ export function isRemoveSessionKeySupported(availableSelectors) {
57
+ return isSetPermissionsForSignerSupported(availableSelectors);
58
+ }
44
59
  //# sourceMappingURL=removeSessionKey.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"removeSessionKey.js","sourceRoot":"","sources":["../../../../../src/extensions/erc4337/account/removeSessionKey.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uEAAuE,CAAC;AAChH,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAgB3E;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAwD;IAExD,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;IACzD,OAAO,uBAAuB,CAAC;QAC7B,QAAQ;QACR,KAAK,CAAC,WAAW;YACf,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,qBAAqB,CAAC;gBACrD,OAAO;gBACP,QAAQ;gBACR,GAAG,EAAE,MAAM,qBAAqB,CAAC;oBAC/B,MAAM,EAAE,iBAAiB;oBACzB,WAAW,EAAE;wBACX,eAAe,EAAE,EAAE;wBACnB,8BAA8B,EAAE,CAAC;wBACjC,wBAAwB,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;wBACrC,sBAAsB,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;qBACpC;iBACF,CAAC;aACH,CAAC,CAAC;YACH,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;QAC5B,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"removeSessionKey.js","sourceRoot":"","sources":["../../../../../src/extensions/erc4337/account/removeSessionKey.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,kCAAkC,EAClC,uBAAuB,GACxB,MAAM,uEAAuE,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAgB3E;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAwD;IAExD,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;IACzD,OAAO,uBAAuB,CAAC;QAC7B,QAAQ;QACR,KAAK,CAAC,WAAW;YACf,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,qBAAqB,CAAC;gBACrD,OAAO;gBACP,QAAQ;gBACR,GAAG,EAAE,MAAM,qBAAqB,CAAC;oBAC/B,MAAM,EAAE,iBAAiB;oBACzB,WAAW,EAAE;wBACX,eAAe,EAAE,EAAE;wBACnB,8BAA8B,EAAE,CAAC;wBACjC,wBAAwB,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;wBACrC,sBAAsB,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;qBACpC;iBACF,CAAC;aACH,CAAC,CAAC;YACH,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;QAC5B,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,2BAA2B,CAAC,kBAA4B;IACtE,OAAO,kCAAkC,CAAC,kBAAkB,CAAC,CAAC;AAChE,CAAC"}
@@ -1,5 +1,5 @@
1
- import { getRoleMember } from "../__generated__/IPermissionsEnumerable/read/getRoleMember.js";
2
- import { getRoleMemberCount } from "../__generated__/IPermissionsEnumerable/read/getRoleMemberCount.js";
1
+ import { getRoleMember, isGetRoleMemberSupported, } from "../__generated__/IPermissionsEnumerable/read/getRoleMember.js";
2
+ import { getRoleMemberCount, isGetRoleMemberCountSupported, } from "../__generated__/IPermissionsEnumerable/read/getRoleMemberCount.js";
3
3
  import { getRoleHash } from "../utils.js";
4
4
  /**
5
5
  * Retrieves all members of a specific role.
@@ -30,4 +30,21 @@ export async function getAllRoleMembers(options) {
30
30
  }
31
31
  return Promise.all(promises);
32
32
  }
33
+ /**
34
+ * Checks if the `getAllRoleMembers` method is supported by the given contract.
35
+ * @param availableSelectors An array of 4byte function selectors of the contract. You can get this in various ways, such as using "whatsabi" or if you have the ABI of the contract available you can use it to generate the selectors.
36
+ * @returns A boolean indicating if the `getAllRoleMembers` method is supported.
37
+ * @extension PERMISSIONS
38
+ * @example
39
+ * ```ts
40
+ * import { isGetAllRoleMembersSupported } from "thirdweb/extensions/permissions";
41
+ *
42
+ * const supported = isGetAllRoleMembersSupported(["0x..."]);
43
+ * ```
44
+ */
45
+ export function isGetAllRoleMembersSupported(availableSelectors) {
46
+ // both need to be supported to get all members
47
+ return (isGetRoleMemberSupported(availableSelectors) &&
48
+ isGetRoleMemberCountSupported(availableSelectors));
49
+ }
33
50
  //# sourceMappingURL=getAllMembers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getAllMembers.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/read/getAllMembers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,+DAA+D,CAAC;AAC9F,OAAO,EAAE,kBAAkB,EAAE,MAAM,oEAAoE,CAAC;AACxG,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAS1D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAwD;IAExD,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3C,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC;QACrC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,QAAQ;KACf,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAsB,EAAE,CAAC;IAEvC,KAAK,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,QAAQ,CAAC,IAAI,CACX,aAAa,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CACxE,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"getAllMembers.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/read/getAllMembers.ts"],"names":[],"mappings":"AACA,OAAO,EACL,aAAa,EACb,wBAAwB,GACzB,MAAM,+DAA+D,CAAC;AACvE,OAAO,EACL,kBAAkB,EAClB,6BAA6B,GAC9B,MAAM,oEAAoE,CAAC;AAC5E,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAS1D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAwD;IAExD,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3C,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC;QACrC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,QAAQ;KACf,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAsB,EAAE,CAAC;IAEvC,KAAK,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,QAAQ,CAAC,IAAI,CACX,aAAa,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CACxE,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,4BAA4B,CAC1C,kBAA4B;IAE5B,+CAA+C;IAC/C,OAAO,CACL,wBAAwB,CAAC,kBAAkB,CAAC;QAC5C,6BAA6B,CAAC,kBAAkB,CAAC,CAClD,CAAC;AACJ,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { getRoleAdmin as generatedGetRoleAdmin } from "../__generated__/IPermissions/read/getRoleAdmin.js";
2
2
  import { getRoleHash } from "../utils.js";
3
+ export { isGetRoleAdminSupported } from "../__generated__/IPermissions/read/getRoleAdmin.js";
3
4
  /**
4
5
  * Gets the admin of a role.
5
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"getRoleAdmin.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/read/getRoleAdmin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,IAAI,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAC3G,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAS1D;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,YAAY,CAC1B,OAAmD;IAEnD,OAAO,qBAAqB,CAAC;QAC3B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;KAChC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"getRoleAdmin.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/read/getRoleAdmin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,IAAI,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAC3G,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oDAAoD,CAAC;AAS7F;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,YAAY,CAC1B,OAAmD;IAEnD,OAAO,qBAAqB,CAAC;QAC3B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;KAChC,CAAC,CAAC;AACL,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { getRoleMember as generatedGetRoleMember } from "../__generated__/IPermissionsEnumerable/read/getRoleMember.js";
2
2
  import { getRoleHash } from "../utils.js";
3
+ export { isGetRoleMemberSupported } from "../__generated__/IPermissionsEnumerable/read/getRoleMember.js";
3
4
  /**
4
5
  * Retrieves a specific member of a specific role.
5
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"getRoleMember.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/read/getRoleMember.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,IAAI,sBAAsB,EAAE,MAAM,+DAA+D,CAAC;AACxH,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAU1D;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,aAAa,CAC3B,OAAoD;IAEpD,OAAO,sBAAsB,CAAC;QAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"getRoleMember.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/read/getRoleMember.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,IAAI,sBAAsB,EAAE,MAAM,+DAA+D,CAAC;AACxH,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+DAA+D,CAAC;AAUzG;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,aAAa,CAC3B,OAAoD;IAEpD,OAAO,sBAAsB,CAAC;QAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC;AACL,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { getRoleMemberCount as generatedGetRoleMemberCount } from "../__generated__/IPermissionsEnumerable/read/getRoleMemberCount.js";
2
2
  import { getRoleHash } from "../utils.js";
3
+ export { isGetRoleMemberCountSupported } from "../__generated__/IPermissionsEnumerable/read/getRoleMemberCount.js";
3
4
  /**
4
5
  * Retrieves the number of members of a specific role.
5
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"getRoleMemberCount.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/read/getRoleMemberCount.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,IAAI,2BAA2B,EAAE,MAAM,oEAAoE,CAAC;AACvI,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAS1D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAyD;IAEzD,OAAO,2BAA2B,CAAC;QACjC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;KAChC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"getRoleMemberCount.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/read/getRoleMemberCount.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,IAAI,2BAA2B,EAAE,MAAM,oEAAoE,CAAC;AACvI,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,6BAA6B,EAAE,MAAM,oEAAoE,CAAC;AASnH;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAyD;IAEzD,OAAO,2BAA2B,CAAC;QACjC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;KAChC,CAAC,CAAC;AACL,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { hasRole as hasRoleGenerated } from "../__generated__/IPermissions/read/hasRole.js";
2
2
  import { getRoleHash } from "../utils.js";
3
+ export { isHasRoleSupported } from "../__generated__/IPermissions/read/hasRole.js";
3
4
  /**
4
5
  * Checks if the target account has the role.
5
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"hasRole.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/read/hasRole.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAU1D;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,OAAO,CACrB,OAA8C;IAE9C,OAAO,gBAAgB,CAAC;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,OAAO,EAAE,OAAO,CAAC,oBAAoB;KACtC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"hasRole.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/read/hasRole.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AAC5F,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AAUnF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,OAAO,CACrB,OAA8C;IAE9C,OAAO,gBAAgB,CAAC;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,OAAO,EAAE,OAAO,CAAC,oBAAoB;KACtC,CAAC,CAAC;AACL,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { grantRole as generatedGrantRole } from "../__generated__/IPermissions/write/grantRole.js";
2
2
  import { getRoleHash } from "../utils.js";
3
+ export { isGrantRoleSupported } from "../__generated__/IPermissions/write/grantRole.js";
3
4
  /**
4
5
  * Grants a role to a target account.
5
6
  *
@@ -27,4 +28,4 @@ export function grantRole(options) {
27
28
  account: options.targetAccountAddress,
28
29
  });
29
30
  }
30
- //# sourceMappingURL=grant.js.map
31
+ //# sourceMappingURL=grantRole.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grantRole.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/write/grantRole.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,IAAI,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AACnG,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AAUxF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,SAAS,CAAC,OAAgD;IACxE,OAAO,kBAAkB,CAAC;QACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,OAAO,EAAE,OAAO,CAAC,oBAAoB;KACtC,CAAC,CAAC;AACL,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { renounceRole as generatedRenounceRole } from "../__generated__/IPermissions/write/renounceRole.js";
2
2
  import { getRoleHash } from "../utils.js";
3
+ export { isRenounceRoleSupported } from "../__generated__/IPermissions/write/renounceRole.js";
3
4
  /**
4
5
  * Lets the target account renounce the role. (The target account must be the sender of the transaction.)
5
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"renounceRole.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/write/renounceRole.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,IAAI,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AAC5G,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAU1D;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,YAAY,CAC1B,OAAmD;IAEnD,OAAO,qBAAqB,CAAC;QAC3B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,OAAO,EAAE,OAAO,CAAC,oBAAoB;KACtC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"renounceRole.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/write/renounceRole.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,IAAI,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AAC5G,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AAU9F;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,YAAY,CAC1B,OAAmD;IAEnD,OAAO,qBAAqB,CAAC;QAC3B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,OAAO,EAAE,OAAO,CAAC,oBAAoB;KACtC,CAAC,CAAC;AACL,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { revokeRole as generatedRevokeRole } from "../__generated__/IPermissions/write/revokeRole.js";
2
2
  import { getRoleHash } from "../utils.js";
3
+ export { isRevokeRoleSupported } from "../__generated__/IPermissions/write/revokeRole.js";
3
4
  /**
4
5
  * Revokes a role from a target account.
5
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"revokeRole.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/write/revokeRole.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,IAAI,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AACtG,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAU1D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,UAAU,CAAC,OAAiD;IAC1E,OAAO,mBAAmB,CAAC;QACzB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,OAAO,EAAE,OAAO,CAAC,oBAAoB;KACtC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"revokeRole.js","sourceRoot":"","sources":["../../../../../src/extensions/permissions/write/revokeRole.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,IAAI,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AACtG,OAAO,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAU1F;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,UAAU,CAAC,OAAiD;IAC1E,OAAO,mBAAmB,CAAC;QACzB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,OAAO,EAAE,OAAO,CAAC,oBAAoB;KACtC,CAAC,CAAC;AACL,CAAC"}
@@ -1,9 +1,11 @@
1
1
  import { getContract } from "../../contract/contract.js";
2
2
  import { fetchPublishedContractMetadata } from "../../contract/deployment/publisher.js";
3
+ import { zkDeployContract } from "../../contract/deployment/zksync/zkDeployContract.js";
3
4
  import { sendAndConfirmTransaction } from "../../transaction/actions/send-and-confirm-transaction.js";
4
5
  import { simulateTransaction } from "../../transaction/actions/simulate.js";
5
6
  import { prepareContractCall } from "../../transaction/prepare-contract-call.js";
6
7
  import { resolveMethod } from "../../transaction/resolve-method.js";
8
+ import { isZkSyncChain } from "../../utils/any-evm/zksync/isZkSyncChain.js";
7
9
  /**
8
10
  * Deploy an instance of a published contract on a given chain
9
11
  * @param options - the deploy options
@@ -27,20 +29,18 @@ export async function deployPublishedContract(options) {
27
29
  const { client, account, chain, contractId, contractParams, publisher, version, implementationConstructorParams, } = options;
28
30
  const { compilerMetadata, extendedMetadata } = await fetchPublishedContractMetadata({
29
31
  client,
30
- contractId,
32
+ contractId: isZkSyncChain(chain) ? `${contractId}_ZkSync` : contractId,
31
33
  publisher,
32
34
  version,
33
35
  });
34
36
  switch (extendedMetadata?.deployType) {
35
37
  case "standard": {
36
- const { deployContract } = await import("../../contract/deployment/deploy-with-abi.js");
37
- return deployContract({
38
+ return directDeploy({
38
39
  account,
39
40
  client,
40
41
  chain,
41
- bytecode: compilerMetadata.bytecode,
42
- constructorAbi: compilerMetadata.abi.find((i) => i.type === "constructor") || [],
43
- constructorParams: contractParams,
42
+ compilerMetadata,
43
+ contractParams,
44
44
  });
45
45
  }
46
46
  case "autoFactory": {
@@ -56,14 +56,20 @@ export async function deployPublishedContract(options) {
56
56
  constructorParams: implementationConstructorParams || [],
57
57
  publisher,
58
58
  });
59
+ const initializeFunction = compilerMetadata.abi.find((i) => i.type === "function" &&
60
+ i.name ===
61
+ (extendedMetadata.factoryDeploymentData
62
+ ?.implementationInitializerFunction || "initialize"));
63
+ if (!initializeFunction) {
64
+ throw new Error(`Could not find initialize function for ${contractId}`);
65
+ }
59
66
  const initializeTransaction = prepareContractCall({
60
67
  contract: getContract({
61
68
  client,
62
69
  chain,
63
70
  address: implementationContract.address,
64
71
  }),
65
- method: resolveMethod(extendedMetadata.factoryDeploymentData
66
- ?.implementationInitializerFunction || "initialize"),
72
+ method: initializeFunction,
67
73
  params: contractParams,
68
74
  });
69
75
  return deployViaAutoFactory({
@@ -107,14 +113,12 @@ export async function deployPublishedContract(options) {
107
113
  }
108
114
  case undefined: {
109
115
  // Default to standard deployment if none was specified
110
- const { deployContract } = await import("../../contract/deployment/deploy-with-abi.js");
111
- return deployContract({
116
+ return directDeploy({
112
117
  account,
113
118
  client,
114
119
  chain,
115
- bytecode: compilerMetadata.bytecode,
116
- constructorAbi: compilerMetadata.abi.find((i) => i.type === "constructor") || [],
117
- constructorParams: contractParams,
120
+ compilerMetadata,
121
+ contractParams,
118
122
  });
119
123
  }
120
124
  default:
@@ -122,4 +126,26 @@ export async function deployPublishedContract(options) {
122
126
  throw new Error(`Unsupported deploy type: ${extendedMetadata?.deployType}`);
123
127
  }
124
128
  }
129
+ async function directDeploy(options) {
130
+ const { account, client, chain, compilerMetadata, contractParams } = options;
131
+ if (isZkSyncChain(chain)) {
132
+ return zkDeployContract({
133
+ account,
134
+ client,
135
+ chain,
136
+ bytecode: compilerMetadata.bytecode,
137
+ abi: compilerMetadata.abi,
138
+ params: contractParams,
139
+ });
140
+ }
141
+ const { deployContract } = await import("../../contract/deployment/deploy-with-abi.js");
142
+ return deployContract({
143
+ account,
144
+ client,
145
+ chain,
146
+ bytecode: compilerMetadata.bytecode,
147
+ constructorAbi: compilerMetadata.abi.find((i) => i.type === "constructor") || [],
148
+ constructorParams: contractParams,
149
+ });
150
+ }
125
151
  //# sourceMappingURL=deploy-published.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deploy-published.js","sourceRoot":"","sources":["../../../../src/extensions/prebuilts/deploy-published.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy-published.js","sourceRoot":"","sources":["../../../../src/extensions/prebuilts/deploy-published.ts"],"names":[],"mappings":"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"}