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.
- package/dist/cjs/contract/deployment/deploy-via-autofactory.js +11 -0
- package/dist/cjs/contract/deployment/deploy-via-autofactory.js.map +1 -1
- package/dist/cjs/contract/deployment/publisher.js +3 -0
- package/dist/cjs/contract/deployment/publisher.js.map +1 -1
- package/dist/cjs/contract/deployment/utils/bootstrap.js +41 -1
- package/dist/cjs/contract/deployment/utils/bootstrap.js.map +1 -1
- package/dist/cjs/contract/deployment/zksync/zkDeployContract.js +43 -0
- package/dist/cjs/contract/deployment/zksync/zkDeployContract.js.map +1 -0
- package/dist/cjs/contract/deployment/zksync/zkDeployCreate2Factory.js +55 -0
- package/dist/cjs/contract/deployment/zksync/zkDeployCreate2Factory.js.map +1 -0
- package/dist/cjs/contract/deployment/zksync/zkDeployDeterministic.js +86 -0
- package/dist/cjs/contract/deployment/zksync/zkDeployDeterministic.js.map +1 -0
- package/dist/cjs/contract/deployment/zksync/zkDeployProxy.js +41 -0
- package/dist/cjs/contract/deployment/zksync/zkDeployProxy.js.map +1 -0
- package/dist/cjs/exports/extensions/erc4337.js +16 -1
- package/dist/cjs/exports/extensions/erc4337.js.map +1 -1
- package/dist/cjs/exports/extensions/permissions.js +11 -3
- package/dist/cjs/exports/extensions/permissions.js.map +1 -1
- package/dist/cjs/exports/extensions/thirdweb.js +9 -2
- package/dist/cjs/exports/extensions/thirdweb.js.map +1 -1
- package/dist/cjs/extensions/erc4337/account/addAdmin.js +16 -0
- package/dist/cjs/extensions/erc4337/account/addAdmin.js.map +1 -1
- package/dist/cjs/extensions/erc4337/account/addSessionKey.js +16 -0
- package/dist/cjs/extensions/erc4337/account/addSessionKey.js.map +1 -1
- package/dist/cjs/extensions/erc4337/account/removeAdmin.js +16 -0
- package/dist/cjs/extensions/erc4337/account/removeAdmin.js.map +1 -1
- package/dist/cjs/extensions/erc4337/account/removeSessionKey.js +16 -0
- package/dist/cjs/extensions/erc4337/account/removeSessionKey.js.map +1 -1
- package/dist/cjs/extensions/permissions/read/getAllMembers.js +18 -0
- package/dist/cjs/extensions/permissions/read/getAllMembers.js.map +1 -1
- package/dist/cjs/extensions/permissions/read/getRoleAdmin.js +3 -0
- package/dist/cjs/extensions/permissions/read/getRoleAdmin.js.map +1 -1
- package/dist/cjs/extensions/permissions/read/getRoleMember.js +3 -0
- package/dist/cjs/extensions/permissions/read/getRoleMember.js.map +1 -1
- package/dist/cjs/extensions/permissions/read/getRoleMemberCount.js +3 -0
- package/dist/cjs/extensions/permissions/read/getRoleMemberCount.js.map +1 -1
- package/dist/cjs/extensions/permissions/read/hasRole.js +3 -0
- package/dist/cjs/extensions/permissions/read/hasRole.js.map +1 -1
- package/dist/cjs/extensions/permissions/write/{grant.js → grantRole.js} +4 -1
- package/dist/cjs/extensions/permissions/write/grantRole.js.map +1 -0
- package/dist/cjs/extensions/permissions/write/renounceRole.js +3 -0
- package/dist/cjs/extensions/permissions/write/renounceRole.js.map +1 -1
- package/dist/cjs/extensions/permissions/write/revokeRole.js +3 -0
- package/dist/cjs/extensions/permissions/write/revokeRole.js.map +1 -1
- package/dist/cjs/extensions/prebuilts/deploy-published.js +39 -13
- package/dist/cjs/extensions/prebuilts/deploy-published.js.map +1 -1
- package/dist/cjs/extensions/thirdweb/read/contractType.js +49 -0
- package/dist/cjs/extensions/thirdweb/read/contractType.js.map +1 -0
- package/dist/cjs/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.js +33 -0
- package/dist/cjs/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.js.map +1 -0
- package/dist/cjs/react/web/hooks/transaction/useSendTransaction.js +6 -5
- package/dist/cjs/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js +3 -0
- package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js +37 -30
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +22 -17
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js +44 -25
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +13 -2
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.js +2 -2
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js +16 -11
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js +8 -4
- package/dist/cjs/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js.map +1 -1
- package/dist/cjs/stories/ConnectButton/hideButtons.stories.js +74 -0
- package/dist/cjs/stories/ConnectButton/hideButtons.stories.js.map +1 -0
- package/dist/cjs/stories/{ConnectButton.stories.js → ConnectButton/themes.stories.js} +4 -5
- package/dist/cjs/stories/ConnectButton/themes.stories.js.map +1 -0
- package/dist/cjs/transaction/actions/send-transaction.js +8 -0
- package/dist/cjs/transaction/actions/send-transaction.js.map +1 -1
- package/dist/cjs/transaction/actions/zksync/getEip721Domain.js +4 -3
- package/dist/cjs/transaction/actions/zksync/getEip721Domain.js.map +1 -1
- package/dist/cjs/transaction/extract-error.js +4 -2
- package/dist/cjs/transaction/extract-error.js.map +1 -1
- package/dist/cjs/utils/abi/encodeAbiParameters.js +1 -1
- package/dist/cjs/utils/abi/encodeAbiParameters.js.map +1 -1
- package/dist/cjs/utils/any-evm/deploy-metadata.js +9 -2
- package/dist/cjs/utils/any-evm/deploy-metadata.js.map +1 -1
- package/dist/cjs/utils/any-evm/zksync/computeDeploymentAddress.js +15 -0
- package/dist/cjs/utils/any-evm/zksync/computeDeploymentAddress.js.map +1 -0
- package/dist/cjs/utils/any-evm/zksync/constants.js +43 -0
- package/dist/cjs/utils/any-evm/zksync/constants.js.map +1 -0
- package/dist/cjs/utils/any-evm/zksync/create2Address.js +21 -0
- package/dist/cjs/utils/any-evm/zksync/create2Address.js.map +1 -0
- package/dist/cjs/utils/any-evm/zksync/isZkSyncChain.js +10 -0
- package/dist/cjs/utils/any-evm/zksync/isZkSyncChain.js.map +1 -0
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/wallets/smart/index.js +2 -2
- package/dist/cjs/wallets/smart/index.js.map +1 -1
- package/dist/cjs/wallets/smart/lib/utils.js +0 -7
- package/dist/cjs/wallets/smart/lib/utils.js.map +1 -1
- package/dist/esm/contract/deployment/deploy-via-autofactory.js +11 -0
- package/dist/esm/contract/deployment/deploy-via-autofactory.js.map +1 -1
- package/dist/esm/contract/deployment/publisher.js +3 -0
- package/dist/esm/contract/deployment/publisher.js.map +1 -1
- package/dist/esm/contract/deployment/utils/bootstrap.js +41 -1
- package/dist/esm/contract/deployment/utils/bootstrap.js.map +1 -1
- package/dist/esm/contract/deployment/zksync/zkDeployContract.js +40 -0
- package/dist/esm/contract/deployment/zksync/zkDeployContract.js.map +1 -0
- package/dist/esm/contract/deployment/zksync/zkDeployCreate2Factory.js +52 -0
- package/dist/esm/contract/deployment/zksync/zkDeployCreate2Factory.js.map +1 -0
- package/dist/esm/contract/deployment/zksync/zkDeployDeterministic.js +83 -0
- package/dist/esm/contract/deployment/zksync/zkDeployDeterministic.js.map +1 -0
- package/dist/esm/contract/deployment/zksync/zkDeployProxy.js +38 -0
- package/dist/esm/contract/deployment/zksync/zkDeployProxy.js.map +1 -0
- package/dist/esm/exports/extensions/erc4337.js +14 -13
- package/dist/esm/exports/extensions/erc4337.js.map +1 -1
- package/dist/esm/exports/extensions/permissions.js +8 -8
- package/dist/esm/exports/extensions/permissions.js.map +1 -1
- package/dist/esm/exports/extensions/thirdweb.js +5 -0
- package/dist/esm/exports/extensions/thirdweb.js.map +1 -1
- package/dist/esm/extensions/erc4337/account/addAdmin.js +16 -1
- package/dist/esm/extensions/erc4337/account/addAdmin.js.map +1 -1
- package/dist/esm/extensions/erc4337/account/addSessionKey.js +16 -1
- package/dist/esm/extensions/erc4337/account/addSessionKey.js.map +1 -1
- package/dist/esm/extensions/erc4337/account/removeAdmin.js +16 -1
- package/dist/esm/extensions/erc4337/account/removeAdmin.js.map +1 -1
- package/dist/esm/extensions/erc4337/account/removeSessionKey.js +16 -1
- package/dist/esm/extensions/erc4337/account/removeSessionKey.js.map +1 -1
- package/dist/esm/extensions/permissions/read/getAllMembers.js +19 -2
- package/dist/esm/extensions/permissions/read/getAllMembers.js.map +1 -1
- package/dist/esm/extensions/permissions/read/getRoleAdmin.js +1 -0
- package/dist/esm/extensions/permissions/read/getRoleAdmin.js.map +1 -1
- package/dist/esm/extensions/permissions/read/getRoleMember.js +1 -0
- package/dist/esm/extensions/permissions/read/getRoleMember.js.map +1 -1
- package/dist/esm/extensions/permissions/read/getRoleMemberCount.js +1 -0
- package/dist/esm/extensions/permissions/read/getRoleMemberCount.js.map +1 -1
- package/dist/esm/extensions/permissions/read/hasRole.js +1 -0
- package/dist/esm/extensions/permissions/read/hasRole.js.map +1 -1
- package/dist/esm/extensions/permissions/write/{grant.js → grantRole.js} +2 -1
- package/dist/esm/extensions/permissions/write/grantRole.js.map +1 -0
- package/dist/esm/extensions/permissions/write/renounceRole.js +1 -0
- package/dist/esm/extensions/permissions/write/renounceRole.js.map +1 -1
- package/dist/esm/extensions/permissions/write/revokeRole.js +1 -0
- package/dist/esm/extensions/permissions/write/revokeRole.js.map +1 -1
- package/dist/esm/extensions/prebuilts/deploy-published.js +39 -13
- package/dist/esm/extensions/prebuilts/deploy-published.js.map +1 -1
- package/dist/esm/extensions/thirdweb/read/contractType.js +45 -0
- package/dist/esm/extensions/thirdweb/read/contractType.js.map +1 -0
- package/dist/esm/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.js +30 -0
- package/dist/esm/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.js.map +1 -0
- package/dist/esm/react/web/hooks/transaction/useSendTransaction.js +6 -5
- package/dist/esm/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js +3 -0
- package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Details.js +37 -30
- package/dist/esm/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +23 -18
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js +41 -24
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +12 -2
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.js +2 -2
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js +17 -12
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js.map +1 -1
- package/dist/esm/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js +8 -4
- package/dist/esm/react/web/ui/prebuilt/thirdweb/ClaimButton/index.js.map +1 -1
- package/dist/esm/stories/ConnectButton/hideButtons.stories.js +71 -0
- package/dist/esm/stories/ConnectButton/hideButtons.stories.js.map +1 -0
- package/dist/esm/stories/{ConnectButton.stories.js → ConnectButton/themes.stories.js} +4 -5
- package/dist/esm/stories/ConnectButton/themes.stories.js.map +1 -0
- package/dist/esm/transaction/actions/send-transaction.js +8 -0
- package/dist/esm/transaction/actions/send-transaction.js.map +1 -1
- package/dist/esm/transaction/actions/zksync/getEip721Domain.js +4 -3
- package/dist/esm/transaction/actions/zksync/getEip721Domain.js.map +1 -1
- package/dist/esm/transaction/extract-error.js +4 -2
- package/dist/esm/transaction/extract-error.js.map +1 -1
- package/dist/esm/utils/abi/encodeAbiParameters.js +1 -1
- package/dist/esm/utils/abi/encodeAbiParameters.js.map +1 -1
- package/dist/esm/utils/any-evm/deploy-metadata.js +9 -2
- package/dist/esm/utils/any-evm/deploy-metadata.js.map +1 -1
- package/dist/esm/utils/any-evm/zksync/computeDeploymentAddress.js +12 -0
- package/dist/esm/utils/any-evm/zksync/computeDeploymentAddress.js.map +1 -0
- package/dist/esm/utils/any-evm/zksync/constants.js +40 -0
- package/dist/esm/utils/any-evm/zksync/constants.js.map +1 -0
- package/dist/esm/utils/any-evm/zksync/create2Address.js +18 -0
- package/dist/esm/utils/any-evm/zksync/create2Address.js.map +1 -0
- package/dist/esm/utils/any-evm/zksync/isZkSyncChain.js +7 -0
- package/dist/esm/utils/any-evm/zksync/isZkSyncChain.js.map +1 -0
- package/dist/esm/version.js +1 -1
- package/dist/esm/wallets/smart/index.js +2 -2
- package/dist/esm/wallets/smart/index.js.map +1 -1
- package/dist/esm/wallets/smart/lib/utils.js +0 -6
- package/dist/esm/wallets/smart/lib/utils.js.map +1 -1
- package/dist/types/contract/deployment/deploy-via-autofactory.d.ts.map +1 -1
- package/dist/types/contract/deployment/publisher.d.ts.map +1 -1
- package/dist/types/contract/deployment/utils/bootstrap.d.ts +4 -2
- package/dist/types/contract/deployment/utils/bootstrap.d.ts.map +1 -1
- package/dist/types/contract/deployment/zksync/zkDeployContract.d.ts +12 -0
- package/dist/types/contract/deployment/zksync/zkDeployContract.d.ts.map +1 -0
- package/dist/types/contract/deployment/zksync/zkDeployCreate2Factory.d.ts +6 -0
- package/dist/types/contract/deployment/zksync/zkDeployCreate2Factory.d.ts.map +1 -0
- package/dist/types/contract/deployment/zksync/zkDeployDeterministic.d.ts +13 -0
- package/dist/types/contract/deployment/zksync/zkDeployDeterministic.d.ts.map +1 -0
- package/dist/types/contract/deployment/zksync/zkDeployProxy.d.ts +12 -0
- package/dist/types/contract/deployment/zksync/zkDeployProxy.d.ts.map +1 -0
- package/dist/types/exports/extensions/erc4337.d.ts +14 -13
- package/dist/types/exports/extensions/erc4337.d.ts.map +1 -1
- package/dist/types/exports/extensions/permissions.d.ts +8 -8
- package/dist/types/exports/extensions/permissions.d.ts.map +1 -1
- package/dist/types/exports/extensions/thirdweb.d.ts +1 -0
- package/dist/types/exports/extensions/thirdweb.d.ts.map +1 -1
- package/dist/types/extensions/erc4337/account/addAdmin.d.ts +13 -0
- package/dist/types/extensions/erc4337/account/addAdmin.d.ts.map +1 -1
- package/dist/types/extensions/erc4337/account/addSessionKey.d.ts +13 -0
- package/dist/types/extensions/erc4337/account/addSessionKey.d.ts.map +1 -1
- package/dist/types/extensions/erc4337/account/removeAdmin.d.ts +13 -0
- package/dist/types/extensions/erc4337/account/removeAdmin.d.ts.map +1 -1
- package/dist/types/extensions/erc4337/account/removeSessionKey.d.ts +13 -0
- package/dist/types/extensions/erc4337/account/removeSessionKey.d.ts.map +1 -1
- package/dist/types/extensions/permissions/read/getAllMembers.d.ts +13 -0
- package/dist/types/extensions/permissions/read/getAllMembers.d.ts.map +1 -1
- package/dist/types/extensions/permissions/read/getRoleAdmin.d.ts +1 -0
- package/dist/types/extensions/permissions/read/getRoleAdmin.d.ts.map +1 -1
- package/dist/types/extensions/permissions/read/getRoleMember.d.ts +1 -0
- package/dist/types/extensions/permissions/read/getRoleMember.d.ts.map +1 -1
- package/dist/types/extensions/permissions/read/getRoleMemberCount.d.ts +1 -0
- package/dist/types/extensions/permissions/read/getRoleMemberCount.d.ts.map +1 -1
- package/dist/types/extensions/permissions/read/hasRole.d.ts +1 -0
- package/dist/types/extensions/permissions/read/hasRole.d.ts.map +1 -1
- package/dist/types/extensions/permissions/write/{grant.d.ts → grantRole.d.ts} +2 -1
- package/dist/types/extensions/permissions/write/grantRole.d.ts.map +1 -0
- package/dist/types/extensions/permissions/write/renounceRole.d.ts +1 -0
- package/dist/types/extensions/permissions/write/renounceRole.d.ts.map +1 -1
- package/dist/types/extensions/permissions/write/revokeRole.d.ts +1 -0
- package/dist/types/extensions/permissions/write/revokeRole.d.ts.map +1 -1
- package/dist/types/extensions/prebuilts/deploy-published.d.ts.map +1 -1
- package/dist/types/extensions/thirdweb/read/contractType.d.ts +31 -0
- package/dist/types/extensions/thirdweb/read/contractType.d.ts.map +1 -0
- package/dist/types/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.d.ts +61 -0
- package/dist/types/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.d.ts.map +1 -0
- package/dist/types/react/core/hooks/connection/ConnectButtonProps.d.ts +18 -0
- package/dist/types/react/core/hooks/connection/ConnectButtonProps.d.ts.map +1 -1
- package/dist/types/react/web/hooks/transaction/useSendTransaction.d.ts +6 -5
- package/dist/types/react/web/hooks/transaction/useSendTransaction.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Details.d.ts +3 -0
- package/dist/types/react/web/ui/ConnectWallet/Details.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.d.ts +28 -7
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.d.ts +6 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.d.ts +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/prebuilt/thirdweb/ClaimButton/index.d.ts.map +1 -1
- package/dist/types/react/web/ui/prebuilt/thirdweb/ClaimButton/types.d.ts +8 -5
- package/dist/types/react/web/ui/prebuilt/thirdweb/ClaimButton/types.d.ts.map +1 -1
- package/dist/types/stories/ConnectButton/hideButtons.stories.d.ts +23 -0
- package/dist/types/stories/ConnectButton/hideButtons.stories.d.ts.map +1 -0
- package/dist/types/stories/{ConnectButton.stories.d.ts → ConnectButton/themes.stories.d.ts} +3 -4
- package/dist/types/stories/ConnectButton/themes.stories.d.ts.map +1 -0
- package/dist/types/transaction/actions/send-transaction.d.ts.map +1 -1
- package/dist/types/transaction/actions/zksync/getEip721Domain.d.ts.map +1 -1
- package/dist/types/transaction/extract-error.d.ts.map +1 -1
- package/dist/types/utils/any-evm/deploy-metadata.d.ts.map +1 -1
- package/dist/types/utils/any-evm/zksync/computeDeploymentAddress.d.ts +11 -0
- package/dist/types/utils/any-evm/zksync/computeDeploymentAddress.d.ts.map +1 -0
- package/dist/types/utils/any-evm/zksync/constants.d.ts +29 -0
- package/dist/types/utils/any-evm/zksync/constants.d.ts.map +1 -0
- package/dist/types/utils/any-evm/zksync/create2Address.d.ts +9 -0
- package/dist/types/utils/any-evm/zksync/create2Address.d.ts.map +1 -0
- package/dist/types/utils/any-evm/zksync/isZkSyncChain.d.ts +3 -0
- package/dist/types/utils/any-evm/zksync/isZkSyncChain.d.ts.map +1 -0
- package/dist/types/utils/domains.d.ts +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/wallets/smart/index.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/utils.d.ts +0 -2
- package/dist/types/wallets/smart/lib/utils.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/contract/deployment/deploy-via-autofactory.ts +13 -0
- package/src/contract/deployment/publisher.ts +5 -0
- package/src/contract/deployment/utils/bootstrap.ts +56 -3
- package/src/contract/deployment/zksync/zkDeployContract.ts +52 -0
- package/src/contract/deployment/zksync/zkDeployCreate2Factory.ts +65 -0
- package/src/contract/deployment/zksync/zkDeployDeterministic.ts +106 -0
- package/src/contract/deployment/zksync/zkDeployProxy.ts +55 -0
- package/src/exports/extensions/erc4337.ts +35 -7
- package/src/exports/extensions/permissions.ts +9 -1
- package/src/exports/extensions/thirdweb.ts +10 -0
- package/src/extensions/erc4337/account/addAdmin.ts +20 -1
- package/src/extensions/erc4337/account/addSessionKey.ts +20 -1
- package/src/extensions/erc4337/account/removeAdmin.ts +20 -1
- package/src/extensions/erc4337/account/removeSessionKey.ts +20 -1
- package/src/extensions/permissions/permissions.test.ts +1 -1
- package/src/extensions/permissions/read/getAllMembers.ts +30 -2
- package/src/extensions/permissions/read/getRoleAdmin.ts +2 -0
- package/src/extensions/permissions/read/getRoleMember.ts +2 -0
- package/src/extensions/permissions/read/getRoleMemberCount.ts +2 -0
- package/src/extensions/permissions/read/hasRole.ts +2 -0
- package/src/extensions/permissions/write/{grant.ts → grantRole.ts} +2 -0
- package/src/extensions/permissions/write/renounceRole.ts +2 -0
- package/src/extensions/permissions/write/revokeRole.ts +2 -0
- package/src/extensions/prebuilts/deploy-published.ts +58 -26
- package/src/extensions/thirdweb/read/contractType.ts +46 -0
- package/src/extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.ts +55 -0
- package/src/react/core/hooks/connection/ConnectButtonProps.ts +21 -0
- package/src/react/web/hooks/transaction/useSendTransaction.tsx +6 -5
- package/src/react/web/ui/ConnectWallet/ConnectButton.tsx +3 -0
- package/src/react/web/ui/ConnectWallet/Details.tsx +108 -73
- package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +37 -29
- package/src/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.ts +73 -33
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.tsx +37 -2
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/Fees.tsx +5 -10
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.tsx +27 -20
- package/src/react/web/ui/prebuilt/thirdweb/ClaimButton/index.tsx +8 -4
- package/src/react/web/ui/prebuilt/thirdweb/ClaimButton/types.ts +8 -5
- package/src/stories/ConnectButton/hideButtons.stories.tsx +83 -0
- package/src/stories/{ConnectButton.stories.ts → ConnectButton/themes.stories.tsx} +3 -4
- package/src/transaction/actions/send-transaction.ts +11 -0
- package/src/transaction/actions/to-serializable-transaction.test.ts +3 -4
- package/src/transaction/actions/zksync/getEip721Domain.ts +4 -2
- package/src/transaction/actions/zksync/send-eip712-transaction.test.ts +27 -2
- package/src/transaction/extract-error.ts +7 -2
- package/src/utils/abi/encode-abi-parameters.test.ts +1 -1
- package/src/utils/abi/encodeAbiParameters.ts +1 -1
- package/src/utils/any-evm/deploy-metadata.ts +11 -2
- package/src/utils/any-evm/zksync/computeDeploymentAddress.ts +24 -0
- package/src/utils/any-evm/zksync/constants.ts +49 -0
- package/src/utils/any-evm/zksync/create2Address.ts +26 -0
- package/src/utils/any-evm/zksync/isZkSyncChain.ts +10 -0
- package/src/utils/domains.ts +1 -1
- package/src/version.ts +1 -1
- package/src/wallets/smart/index.ts +2 -3
- package/src/wallets/smart/lib/utils.ts +0 -10
- package/dist/cjs/extensions/permissions/write/grant.js.map +0 -1
- package/dist/cjs/stories/ConnectButton.stories.js.map +0 -1
- package/dist/esm/extensions/permissions/write/grant.js.map +0 -1
- package/dist/esm/stories/ConnectButton.stories.js.map +0 -1
- package/dist/types/extensions/permissions/write/grant.d.ts.map +0 -1
- package/dist/types/stories/ConnectButton.stories.d.ts.map +0 -1
@@ -10,8 +10,10 @@ const rpc_js_1 = require("../../rpc/rpc.js");
|
|
10
10
|
const encode_js_1 = require("../../transaction/actions/encode.js");
|
11
11
|
const send_and_confirm_transaction_js_1 = require("../../transaction/actions/send-and-confirm-transaction.js");
|
12
12
|
const keccak_id_js_1 = require("../../utils/any-evm/keccak-id.js");
|
13
|
+
const isZkSyncChain_js_1 = require("../../utils/any-evm/zksync/isZkSyncChain.js");
|
13
14
|
const hex_js_1 = require("../../utils/encoding/hex.js");
|
14
15
|
const resolve_promised_value_js_1 = require("../../utils/promise/resolve-promised-value.js");
|
16
|
+
const zkDeployProxy_js_1 = require("./zksync/zkDeployProxy.js");
|
15
17
|
/**
|
16
18
|
* @internal
|
17
19
|
*/
|
@@ -45,6 +47,15 @@ function prepareAutoFactoryDeployTransaction(args) {
|
|
45
47
|
*/
|
46
48
|
async function deployViaAutoFactory(options) {
|
47
49
|
const { chain, client, account, cloneFactoryContract, initializeTransaction, } = options;
|
50
|
+
if ((0, isZkSyncChain_js_1.isZkSyncChain)(chain)) {
|
51
|
+
return (0, zkDeployProxy_js_1.zkDeployProxy)({
|
52
|
+
chain,
|
53
|
+
client,
|
54
|
+
account,
|
55
|
+
cloneFactoryContract,
|
56
|
+
initializeTransaction,
|
57
|
+
});
|
58
|
+
}
|
48
59
|
const tx = prepareAutoFactoryDeployTransaction({
|
49
60
|
chain,
|
50
61
|
client,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"deploy-via-autofactory.js","sourceRoot":"","sources":["../../../../src/contract/deployment/deploy-via-autofactory.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"deploy-via-autofactory.js","sourceRoot":"","sources":["../../../../src/contract/deployment/deploy-via-autofactory.ts"],"names":[],"mappings":";;AAsBA,kFAgCC;AAKD,oDA6CC;AAxGD,qEAAmE;AACnE,uHAAsH;AACtH,kJAA4I;AAC5I,6EAAuE;AACvE,6CAAgD;AAChD,mEAA6D;AAC7D,+GAAsG;AAEtG,mEAA4D;AAC5D,kFAA4E;AAC5E,wDAAoD;AACpD,6FAAqF;AAMrF,gEAA0D;AAE1D;;GAEG;AACH,SAAgB,mCAAmC,CACjD,IAIC;IAED,OAAO,IAAA,4DAA2B,EAAC;QACjC,QAAQ,EAAE,IAAI,CAAC,oBAAoB;QACnC,KAAK,CAAC,WAAW;YACf,MAAM,UAAU,GAAG,IAAA,qBAAY,EAAC;gBAC9B,GAAG,IAAI;aACR,CAAC,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAA,oCAAe,EAAC,UAAU,CAAC,CAAC;YACtD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI;gBACpB,CAAC,CAAC,IAAA,uBAAQ,EAAC,IAAI,CAAC,IAAI,CAAC;gBACrB,CAAC,CAAC,IAAA,cAAK,EAAC,WAAW,EAAE;oBACjB,IAAI,EAAE,EAAE;iBACT,CAAC,CAAC;YACP,MAAM,cAAc,GAAG,MAAM,IAAA,gDAAoB,EAC/C,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAC9B,CAAC;YACF,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;YACtE,CAAC;YACD,OAAO;gBACL,IAAI,EAAE,MAAM,IAAA,kBAAM,EAAC,IAAI,CAAC,qBAAqB,CAAC;gBAC9C,cAAc;gBACd,IAAI;aACI,CAAC;QACb,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,oBAAoB,CACxC,OAIC;IAED,MAAM,EACJ,KAAK,EACL,MAAM,EACN,OAAO,EACP,oBAAoB,EACpB,qBAAqB,GACtB,GAAG,OAAO,CAAC;IAEZ,IAAI,IAAA,gCAAa,EAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,IAAA,gCAAa,EAAC;YACnB,KAAK;YACL,MAAM;YACN,OAAO;YACP,oBAAoB;YACpB,qBAAqB;SACtB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,EAAE,GAAG,mCAAmC,CAAC;QAC7C,KAAK;QACL,MAAM;QACN,oBAAoB;QACpB,qBAAqB;KACtB,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,IAAA,2DAAyB,EAAC;QAC9C,WAAW,EAAE,EAAE;QACf,OAAO;KACR,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,IAAA,8BAAc,EAAC;QAClC,MAAM,EAAE,CAAC,IAAA,qCAAkB,GAAE,CAAC;QAC9B,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAC,CAAC;IACH,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CACb,gDAAgD,OAAO,CAAC,eAAe,EAAE,CAC1E,CAAC;IACJ,CAAC;IACD,OAAO,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC;AACrC,CAAC"}
|
@@ -24,6 +24,9 @@ async function fetchPublishedContractMetadata(options) {
|
|
24
24
|
contractId: options.contractId,
|
25
25
|
version: options.version,
|
26
26
|
});
|
27
|
+
if (!publishedContract.publishMetadataUri) {
|
28
|
+
throw new Error(`No published metadata URI found for ${options.contractId}`);
|
29
|
+
}
|
27
30
|
return (0, deploy_metadata_js_1.fetchDeployMetadata)({
|
28
31
|
client: options.client,
|
29
32
|
uri: publishedContract.publishMetadataUri,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"publisher.js","sourceRoot":"","sources":["../../../../src/contract/deployment/publisher.ts"],"names":[],"mappings":";;;AAmBA,
|
1
|
+
{"version":3,"file":"publisher.js","sourceRoot":"","sources":["../../../../src/contract/deployment/publisher.ts"],"names":[],"mappings":"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"}
|
@@ -5,6 +5,11 @@ exports.deployCloneFactory = deployCloneFactory;
|
|
5
5
|
exports.deployImplementation = deployImplementation;
|
6
6
|
exports.getOrDeployInfraContract = getOrDeployInfraContract;
|
7
7
|
const send_and_confirm_transaction_js_1 = require("../../../transaction/actions/send-and-confirm-transaction.js");
|
8
|
+
const isZkSyncChain_js_1 = require("../../../utils/any-evm/zksync/isZkSyncChain.js");
|
9
|
+
const contract_js_1 = require("../../contract.js");
|
10
|
+
const publisher_js_1 = require("../publisher.js");
|
11
|
+
const zkDeployCreate2Factory_js_1 = require("../zksync/zkDeployCreate2Factory.js");
|
12
|
+
const zkDeployDeterministic_js_1 = require("../zksync/zkDeployDeterministic.js");
|
8
13
|
const clone_factory_js_1 = require("./clone-factory.js");
|
9
14
|
const create_2_factory_js_1 = require("./create-2-factory.js");
|
10
15
|
const infra_js_1 = require("./infra.js");
|
@@ -12,7 +17,40 @@ const infra_js_1 = require("./infra.js");
|
|
12
17
|
* @internal
|
13
18
|
*/
|
14
19
|
async function getOrDeployInfraForPublishedContract(args) {
|
15
|
-
const { chain, client, account, contractId, constructorParams, publisher } = args;
|
20
|
+
const { chain, client, account, contractId, constructorParams, publisher, version, } = args;
|
21
|
+
if ((0, isZkSyncChain_js_1.isZkSyncChain)(chain)) {
|
22
|
+
const cloneFactoryContract = await (0, zkDeployCreate2Factory_js_1.zkDeployCreate2Factory)({
|
23
|
+
chain,
|
24
|
+
client,
|
25
|
+
account,
|
26
|
+
});
|
27
|
+
const { compilerMetadata } = await (0, publisher_js_1.fetchPublishedContractMetadata)({
|
28
|
+
client,
|
29
|
+
contractId: `${contractId}_ZkSync`, // different contract id for zkSync
|
30
|
+
publisher,
|
31
|
+
version,
|
32
|
+
});
|
33
|
+
const implementationContract = await (0, zkDeployDeterministic_js_1.zkDeployContractDeterministic)({
|
34
|
+
chain,
|
35
|
+
client,
|
36
|
+
account,
|
37
|
+
abi: compilerMetadata.abi,
|
38
|
+
bytecode: compilerMetadata.bytecode,
|
39
|
+
params: constructorParams,
|
40
|
+
});
|
41
|
+
return {
|
42
|
+
cloneFactoryContract: (0, contract_js_1.getContract)({
|
43
|
+
address: cloneFactoryContract,
|
44
|
+
chain,
|
45
|
+
client,
|
46
|
+
}),
|
47
|
+
implementationContract: (0, contract_js_1.getContract)({
|
48
|
+
address: implementationContract,
|
49
|
+
chain,
|
50
|
+
client,
|
51
|
+
}),
|
52
|
+
};
|
53
|
+
}
|
16
54
|
let [cloneFactoryContract, implementationContract] = await Promise.all([
|
17
55
|
(0, clone_factory_js_1.getDeployedCloneFactoryContract)({
|
18
56
|
chain,
|
@@ -24,6 +62,7 @@ async function getOrDeployInfraForPublishedContract(args) {
|
|
24
62
|
contractId,
|
25
63
|
constructorParams,
|
26
64
|
publisher,
|
65
|
+
version,
|
27
66
|
}),
|
28
67
|
]);
|
29
68
|
if (!implementationContract || !cloneFactoryContract) {
|
@@ -40,6 +79,7 @@ async function getOrDeployInfraForPublishedContract(args) {
|
|
40
79
|
contractId,
|
41
80
|
constructorParams,
|
42
81
|
publisher,
|
82
|
+
version,
|
43
83
|
});
|
44
84
|
}
|
45
85
|
return { cloneFactoryContract, implementationContract };
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../../../../src/contract/deployment/utils/bootstrap.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../../../../src/contract/deployment/utils/bootstrap.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.zkDeployContract = zkDeployContract;
|
4
|
+
const zksync_1 = require("viem/zksync");
|
5
|
+
const parse_logs_js_1 = require("../../../event/actions/parse-logs.js");
|
6
|
+
const ContractDeployed_js_1 = require("../../../extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.js");
|
7
|
+
const send_and_confirm_transaction_js_1 = require("../../../transaction/actions/send-and-confirm-transaction.js");
|
8
|
+
const prepare_transaction_js_1 = require("../../../transaction/prepare-transaction.js");
|
9
|
+
const constants_js_1 = require("../../../utils/any-evm/zksync/constants.js");
|
10
|
+
/**
|
11
|
+
* @internal
|
12
|
+
*/
|
13
|
+
async function zkDeployContract(options) {
|
14
|
+
const data = (0, zksync_1.encodeDeployData)({
|
15
|
+
abi: options.abi,
|
16
|
+
bytecode: options.bytecode,
|
17
|
+
deploymentType: "create",
|
18
|
+
args: options.params,
|
19
|
+
});
|
20
|
+
const receipt = await (0, send_and_confirm_transaction_js_1.sendAndConfirmTransaction)({
|
21
|
+
account: options.account,
|
22
|
+
transaction: (0, prepare_transaction_js_1.prepareTransaction)({
|
23
|
+
chain: options.chain,
|
24
|
+
client: options.client,
|
25
|
+
to: constants_js_1.CONTRACT_DEPLOYER_ADDRESS,
|
26
|
+
data,
|
27
|
+
eip712: {
|
28
|
+
factoryDeps: [options.bytecode],
|
29
|
+
// TODO (zksync): allow passing in a paymaster
|
30
|
+
},
|
31
|
+
}),
|
32
|
+
});
|
33
|
+
const events = (0, parse_logs_js_1.parseEventLogs)({
|
34
|
+
logs: receipt.logs,
|
35
|
+
events: [(0, ContractDeployed_js_1.contractDeployedEvent)()],
|
36
|
+
});
|
37
|
+
const contractAddress = events[0]?.args.contractAddress;
|
38
|
+
if (!contractAddress) {
|
39
|
+
throw new Error("Contract creation failed");
|
40
|
+
}
|
41
|
+
return contractAddress;
|
42
|
+
}
|
43
|
+
//# sourceMappingURL=zkDeployContract.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"zkDeployContract.js","sourceRoot":"","sources":["../../../../../src/contract/deployment/zksync/zkDeployContract.ts"],"names":[],"mappings":";;AAaA,4CAsCC;AAlDD,wCAA+C;AAC/C,wEAAsE;AACtE,8HAA6H;AAC7H,kHAAyG;AACzG,wFAAiF;AACjF,6EAAuF;AAIvF;;GAEG;AACI,KAAK,UAAU,gBAAgB,CACpC,OAIC;IAED,MAAM,IAAI,GAAG,IAAA,yBAAgB,EAAC;QAC5B,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,cAAc,EAAE,QAAQ;QACxB,IAAI,EAAE,OAAO,CAAC,MAAM;KACrB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,IAAA,2DAAyB,EAAC;QAC9C,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,WAAW,EAAE,IAAA,2CAAkB,EAAC;YAC9B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,EAAE,EAAE,wCAAyB;YAC7B,IAAI;YACJ,MAAM,EAAE;gBACN,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAC/B,8CAA8C;aAC/C;SACF,CAAC;KACH,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAA,8BAAc,EAAC;QAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,MAAM,EAAE,CAAC,IAAA,2CAAqB,GAAE,CAAC;KAClC,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC;IACxD,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,eAAe,CAAC;AACzB,CAAC"}
|
@@ -0,0 +1,55 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.zkDeployCreate2Factory = zkDeployCreate2Factory;
|
4
|
+
const abitype_1 = require("abitype");
|
5
|
+
const send_and_confirm_transaction_js_1 = require("../../../transaction/actions/send-and-confirm-transaction.js");
|
6
|
+
const prepare_transaction_js_1 = require("../../../transaction/prepare-transaction.js");
|
7
|
+
const constants_js_1 = require("../../../utils/any-evm/zksync/constants.js");
|
8
|
+
const is_contract_deployed_js_1 = require("../../../utils/bytecode/is-contract-deployed.js");
|
9
|
+
const units_js_1 = require("../../../utils/units.js");
|
10
|
+
const private_key_js_1 = require("../../../wallets/private-key.js");
|
11
|
+
const getWalletBalance_js_1 = require("../../../wallets/utils/getWalletBalance.js");
|
12
|
+
const zkDeployContract_js_1 = require("./zkDeployContract.js");
|
13
|
+
/**
|
14
|
+
* @internal
|
15
|
+
*/
|
16
|
+
async function zkDeployCreate2Factory(options) {
|
17
|
+
const isDeployed = await (0, is_contract_deployed_js_1.isContractDeployed)({
|
18
|
+
address: constants_js_1.ZKSYNC_SINGLETON_FACTORY,
|
19
|
+
chain: options.chain,
|
20
|
+
client: options.client,
|
21
|
+
});
|
22
|
+
if (isDeployed) {
|
23
|
+
return constants_js_1.ZKSYNC_SINGLETON_FACTORY;
|
24
|
+
}
|
25
|
+
const create2Signer = (0, private_key_js_1.privateKeyToAccount)({
|
26
|
+
client: options.client,
|
27
|
+
privateKey: constants_js_1.PUBLISHED_PRIVATE_KEY,
|
28
|
+
});
|
29
|
+
const valueToSend = (0, units_js_1.toWei)("0.01");
|
30
|
+
const balance = await (0, getWalletBalance_js_1.getWalletBalance)({
|
31
|
+
address: create2Signer.address,
|
32
|
+
chain: options.chain,
|
33
|
+
client: options.client,
|
34
|
+
});
|
35
|
+
if (balance.value < valueToSend) {
|
36
|
+
await (0, send_and_confirm_transaction_js_1.sendAndConfirmTransaction)({
|
37
|
+
account: options.account,
|
38
|
+
transaction: (0, prepare_transaction_js_1.prepareTransaction)({
|
39
|
+
chain: options.chain,
|
40
|
+
client: options.client,
|
41
|
+
to: create2Signer.address,
|
42
|
+
value: valueToSend,
|
43
|
+
}),
|
44
|
+
});
|
45
|
+
}
|
46
|
+
await (0, zkDeployContract_js_1.zkDeployContract)({
|
47
|
+
client: options.client,
|
48
|
+
chain: options.chain,
|
49
|
+
account: options.account,
|
50
|
+
abi: (0, abitype_1.parseAbi)(constants_js_1.singletonFactoryAbi),
|
51
|
+
bytecode: constants_js_1.singletonFactoryBytecode,
|
52
|
+
});
|
53
|
+
return constants_js_1.ZKSYNC_SINGLETON_FACTORY;
|
54
|
+
}
|
55
|
+
//# sourceMappingURL=zkDeployCreate2Factory.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"zkDeployCreate2Factory.js","sourceRoot":"","sources":["../../../../../src/contract/deployment/zksync/zkDeployCreate2Factory.ts"],"names":[],"mappings":";;AAmBA,wDA6CC;AAhED,qCAAmC;AACnC,kHAAyG;AACzG,wFAAiF;AACjF,6EAKoD;AACpD,6FAAqF;AAErF,sDAAgD;AAChD,oEAAsE;AACtE,oFAA8E;AAC9E,+DAAyD;AAEzD;;GAEG;AACI,KAAK,UAAU,sBAAsB,CAC1C,OAAiC;IAEjC,MAAM,UAAU,GAAG,MAAM,IAAA,4CAAkB,EAAC;QAC1C,OAAO,EAAE,uCAAwB;QACjC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,uCAAwB,CAAC;IAClC,CAAC;IAED,MAAM,aAAa,GAAG,IAAA,oCAAmB,EAAC;QACxC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,UAAU,EAAE,oCAAqB;KAClC,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,IAAA,gBAAK,EAAC,MAAM,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,MAAM,IAAA,sCAAgB,EAAC;QACrC,OAAO,EAAE,aAAa,CAAC,OAAO;QAC9B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,IAAI,OAAO,CAAC,KAAK,GAAG,WAAW,EAAE,CAAC;QAChC,MAAM,IAAA,2DAAyB,EAAC;YAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,WAAW,EAAE,IAAA,2CAAkB,EAAC;gBAC9B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,EAAE,EAAE,aAAa,CAAC,OAAO;gBACzB,KAAK,EAAE,WAAW;aACnB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED,MAAM,IAAA,sCAAgB,EAAC;QACrB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,GAAG,EAAE,IAAA,kBAAQ,EAAC,kCAAmB,CAAC;QAClC,QAAQ,EAAE,uCAAwB;KACnC,CAAC,CAAC;IAEH,OAAO,uCAAwB,CAAC;AAClC,CAAC"}
|
@@ -0,0 +1,86 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.zkDeployContractDeterministic = zkDeployContractDeterministic;
|
4
|
+
const abitype_1 = require("abitype");
|
5
|
+
const zksync_1 = require("viem/zksync");
|
6
|
+
const send_and_confirm_transaction_js_1 = require("../../../transaction/actions/send-and-confirm-transaction.js");
|
7
|
+
const prepare_contract_call_js_1 = require("../../../transaction/prepare-contract-call.js");
|
8
|
+
const read_contract_js_1 = require("../../../transaction/read-contract.js");
|
9
|
+
const encodeAbiParameters_js_1 = require("../../../utils/abi/encodeAbiParameters.js");
|
10
|
+
const keccak_id_js_1 = require("../../../utils/any-evm/keccak-id.js");
|
11
|
+
const computeDeploymentAddress_js_1 = require("../../../utils/any-evm/zksync/computeDeploymentAddress.js");
|
12
|
+
const constants_js_1 = require("../../../utils/any-evm/zksync/constants.js");
|
13
|
+
const is_contract_deployed_js_1 = require("../../../utils/bytecode/is-contract-deployed.js");
|
14
|
+
const prefix_js_1 = require("../../../utils/bytecode/prefix.js");
|
15
|
+
const hex_js_1 = require("../../../utils/encoding/hex.js");
|
16
|
+
const contract_js_1 = require("../../contract.js");
|
17
|
+
const zkDeployContract_js_1 = require("./zkDeployContract.js");
|
18
|
+
const zkDeployCreate2Factory_js_1 = require("./zkDeployCreate2Factory.js");
|
19
|
+
/**
|
20
|
+
* @internal
|
21
|
+
*/
|
22
|
+
async function zkDeployContractDeterministic(options) {
|
23
|
+
const constructorAbi = options.abi.find((x) => "type" in x && x.type === "constructor") || { inputs: [] };
|
24
|
+
const encodedArgs = (0, encodeAbiParameters_js_1.encodeAbiParameters)(constructorAbi.inputs, options.params || []);
|
25
|
+
const create2FactoryAddress = await (0, zkDeployCreate2Factory_js_1.zkDeployCreate2Factory)({
|
26
|
+
client: options.client,
|
27
|
+
chain: options.chain,
|
28
|
+
account: options.account,
|
29
|
+
});
|
30
|
+
const bytecode = (0, prefix_js_1.ensureBytecodePrefix)(options.bytecode);
|
31
|
+
const bytecodeHash = (0, hex_js_1.uint8ArrayToHex)((0, zksync_1.hashBytecode)(bytecode));
|
32
|
+
const predictedAddress = (0, computeDeploymentAddress_js_1.computeDeploymentAddress)({
|
33
|
+
bytecodeHash,
|
34
|
+
encodedArgs,
|
35
|
+
create2FactoryAddress,
|
36
|
+
salt: options.salt,
|
37
|
+
});
|
38
|
+
const deployed = await (0, is_contract_deployed_js_1.isContractDeployed)({
|
39
|
+
address: predictedAddress,
|
40
|
+
chain: options.chain,
|
41
|
+
client: options.client,
|
42
|
+
});
|
43
|
+
if (!deployed) {
|
44
|
+
// check if bytecodehash is known
|
45
|
+
const knownCodesStorageContract = (0, contract_js_1.getContract)({
|
46
|
+
address: constants_js_1.KNOWN_CODES_STORAGE,
|
47
|
+
chain: options.chain,
|
48
|
+
client: options.client,
|
49
|
+
});
|
50
|
+
const marker = await (0, read_contract_js_1.readContract)({
|
51
|
+
contract: knownCodesStorageContract,
|
52
|
+
method: "function getMarker(bytes32 _hash) view returns (uint256 marker)",
|
53
|
+
params: [bytecodeHash],
|
54
|
+
});
|
55
|
+
// if not known, publish the bytecodehash
|
56
|
+
if (marker !== 1n) {
|
57
|
+
await (0, zkDeployContract_js_1.zkDeployContract)({
|
58
|
+
client: options.client,
|
59
|
+
chain: options.chain,
|
60
|
+
account: options.account,
|
61
|
+
abi: options.abi,
|
62
|
+
bytecode,
|
63
|
+
params: options.params,
|
64
|
+
});
|
65
|
+
}
|
66
|
+
console.log(`deploying contract via create2 factory at: ${predictedAddress}`);
|
67
|
+
// deploy with create2 factory
|
68
|
+
const factory = (0, contract_js_1.getContract)({
|
69
|
+
address: create2FactoryAddress,
|
70
|
+
chain: options.chain,
|
71
|
+
client: options.client,
|
72
|
+
abi: (0, abitype_1.parseAbi)(constants_js_1.singletonFactoryAbi),
|
73
|
+
});
|
74
|
+
const salt = options?.salt ? (0, keccak_id_js_1.keccakId)(options.salt) : (0, keccak_id_js_1.keccakId)("thirdweb");
|
75
|
+
await (0, send_and_confirm_transaction_js_1.sendAndConfirmTransaction)({
|
76
|
+
account: options.account,
|
77
|
+
transaction: (0, prepare_contract_call_js_1.prepareContractCall)({
|
78
|
+
contract: factory,
|
79
|
+
method: "deploy",
|
80
|
+
params: [salt, bytecodeHash, encodedArgs],
|
81
|
+
}),
|
82
|
+
});
|
83
|
+
}
|
84
|
+
return predictedAddress;
|
85
|
+
}
|
86
|
+
//# sourceMappingURL=zkDeployDeterministic.js.map
|
@@ -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,41 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.zkDeployProxy = zkDeployProxy;
|
4
|
+
const encode_js_1 = require("../../../transaction/actions/encode.js");
|
5
|
+
const constants_js_1 = require("../../../utils/any-evm/zksync/constants.js");
|
6
|
+
const is_contract_deployed_js_1 = require("../../../utils/bytecode/is-contract-deployed.js");
|
7
|
+
const resolve_promised_value_js_1 = require("../../../utils/promise/resolve-promised-value.js");
|
8
|
+
const zkDeployContract_js_1 = require("./zkDeployContract.js");
|
9
|
+
/**
|
10
|
+
* @internal
|
11
|
+
*/
|
12
|
+
async function zkDeployProxy(options) {
|
13
|
+
// TODO ensure implementation is deployed
|
14
|
+
const implementationAddress = await (0, resolve_promised_value_js_1.resolvePromisedValue)(options.initializeTransaction.to);
|
15
|
+
if (!implementationAddress) {
|
16
|
+
throw new Error("initializeTransaction must have a 'to' field set");
|
17
|
+
}
|
18
|
+
const deployed = await (0, is_contract_deployed_js_1.isContractDeployed)({
|
19
|
+
address: implementationAddress,
|
20
|
+
chain: options.chain,
|
21
|
+
client: options.client,
|
22
|
+
});
|
23
|
+
if (!deployed) {
|
24
|
+
throw new Error(`Implementation contract at ${implementationAddress} is not deployed`);
|
25
|
+
}
|
26
|
+
// deploy tw proxy of the implementation
|
27
|
+
const proxyAddress = await (0, zkDeployContract_js_1.zkDeployContract)({
|
28
|
+
client: options.client,
|
29
|
+
chain: options.chain,
|
30
|
+
account: options.account,
|
31
|
+
abi: constants_js_1.twProxyAbi,
|
32
|
+
bytecode: constants_js_1.twProxyBytecode,
|
33
|
+
params: [
|
34
|
+
implementationAddress,
|
35
|
+
await (0, encode_js_1.encode)(options.initializeTransaction),
|
36
|
+
],
|
37
|
+
});
|
38
|
+
// return address of proxy
|
39
|
+
return proxyAddress;
|
40
|
+
}
|
41
|
+
//# sourceMappingURL=zkDeployProxy.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"zkDeployProxy.js","sourceRoot":"","sources":["../../../../../src/contract/deployment/zksync/zkDeployProxy.ts"],"names":[],"mappings":";;AAeA,sCAuCC;AAtDD,sEAAgE;AAEhE,6EAGoD;AACpD,6FAAqF;AACrF,gGAAwF;AAGxF,+DAAyD;AAEzD;;GAEG;AACI,KAAK,UAAU,aAAa,CACjC,OAIC;IAED,yCAAyC;IACzC,MAAM,qBAAqB,GAAG,MAAM,IAAA,gDAAoB,EACtD,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,IAAA,4CAAkB,EAAC;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,IAAA,sCAAgB,EAAC;QAC1C,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,GAAG,EAAE,yBAAU;QACf,QAAQ,EAAE,8BAAe;QACzB,MAAM,EAAE;YACN,qBAAqB;YACrB,MAAM,IAAA,kBAAM,EAAC,OAAO,CAAC,qBAAqB,CAAC;SAC5C;KACF,CAAC,CAAC;IAEH,0BAA0B;IAC1B,OAAO,YAAY,CAAC;AACtB,CAAC"}
|
@@ -1,27 +1,37 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.simulateHandleOp = exports.getUserOpHash = exports.userOperationRevertReasonEvent = exports.userOperationEventEvent = exports.accountDeployedEvent = exports.predictAccountAddress = exports.getAccountsOfSigner = exports.isRegistered = exports.totalAccounts = exports.getAccounts = exports.getAllAccounts = exports.signerPermissionsUpdatedEvent = exports.adminUpdatedEvent = exports.isAdmin = exports.isActiveSigner = exports.getPermissionsForSigner = exports.getAllSigners = exports.getAllAdmins = exports.getAllActiveSigners = exports.removeSessionKey = exports.addSessionKey = exports.removeAdmin = exports.addAdmin = void 0;
|
3
|
+
exports.simulateHandleOp = exports.getUserOpHash = exports.userOperationRevertReasonEvent = exports.userOperationEventEvent = exports.accountDeployedEvent = exports.isPredictAccountAddressSupported = exports.predictAccountAddress = exports.isGetAccountsOfSignerSupported = exports.getAccountsOfSigner = exports.isRegistered = exports.isTotalAccountsSupported = exports.totalAccounts = exports.isGetAccountsSupported = exports.getAccounts = exports.isGetAllAccountsSupported = exports.getAllAccounts = exports.signerPermissionsUpdatedEvent = exports.adminUpdatedEvent = exports.isIsAdminSupported = exports.isAdmin = exports.isIsActiveSignerSupported = exports.isActiveSigner = exports.getPermissionsForSigner = exports.isGetAllSignersSupported = exports.getAllSigners = exports.isGetAllAdminsSupported = exports.getAllAdmins = exports.isGetAllActiveSignersSupported = exports.getAllActiveSigners = exports.isRemoveSessionKeySupported = exports.removeSessionKey = exports.isAddSessionKeySupported = exports.addSessionKey = exports.removeAdmin = exports.isAddAdminSupported = exports.addAdmin = exports.isValidateUserOpSupported = void 0;
|
4
4
|
// ACCOUNT
|
5
|
+
var validateUserOp_js_1 = require("../../extensions/erc4337/__generated__/IAccount/write/validateUserOp.js");
|
6
|
+
Object.defineProperty(exports, "isValidateUserOpSupported", { enumerable: true, get: function () { return validateUserOp_js_1.isValidateUserOpSupported; } });
|
5
7
|
var addAdmin_js_1 = require("../../extensions/erc4337/account/addAdmin.js");
|
6
8
|
Object.defineProperty(exports, "addAdmin", { enumerable: true, get: function () { return addAdmin_js_1.addAdmin; } });
|
9
|
+
Object.defineProperty(exports, "isAddAdminSupported", { enumerable: true, get: function () { return addAdmin_js_1.isAddAdminSupported; } });
|
7
10
|
var removeAdmin_js_1 = require("../../extensions/erc4337/account/removeAdmin.js");
|
8
11
|
Object.defineProperty(exports, "removeAdmin", { enumerable: true, get: function () { return removeAdmin_js_1.removeAdmin; } });
|
9
12
|
var addSessionKey_js_1 = require("../../extensions/erc4337/account/addSessionKey.js");
|
10
13
|
Object.defineProperty(exports, "addSessionKey", { enumerable: true, get: function () { return addSessionKey_js_1.addSessionKey; } });
|
14
|
+
Object.defineProperty(exports, "isAddSessionKeySupported", { enumerable: true, get: function () { return addSessionKey_js_1.isAddSessionKeySupported; } });
|
11
15
|
var removeSessionKey_js_1 = require("../../extensions/erc4337/account/removeSessionKey.js");
|
12
16
|
Object.defineProperty(exports, "removeSessionKey", { enumerable: true, get: function () { return removeSessionKey_js_1.removeSessionKey; } });
|
17
|
+
Object.defineProperty(exports, "isRemoveSessionKeySupported", { enumerable: true, get: function () { return removeSessionKey_js_1.isRemoveSessionKeySupported; } });
|
13
18
|
var getAllActiveSigners_js_1 = require("../../extensions/erc4337/__generated__/IAccountPermissions/read/getAllActiveSigners.js");
|
14
19
|
Object.defineProperty(exports, "getAllActiveSigners", { enumerable: true, get: function () { return getAllActiveSigners_js_1.getAllActiveSigners; } });
|
20
|
+
Object.defineProperty(exports, "isGetAllActiveSignersSupported", { enumerable: true, get: function () { return getAllActiveSigners_js_1.isGetAllActiveSignersSupported; } });
|
15
21
|
var getAllAdmins_js_1 = require("../../extensions/erc4337/__generated__/IAccountPermissions/read/getAllAdmins.js");
|
16
22
|
Object.defineProperty(exports, "getAllAdmins", { enumerable: true, get: function () { return getAllAdmins_js_1.getAllAdmins; } });
|
23
|
+
Object.defineProperty(exports, "isGetAllAdminsSupported", { enumerable: true, get: function () { return getAllAdmins_js_1.isGetAllAdminsSupported; } });
|
17
24
|
var getAllSigners_js_1 = require("../../extensions/erc4337/__generated__/IAccountPermissions/read/getAllSigners.js");
|
18
25
|
Object.defineProperty(exports, "getAllSigners", { enumerable: true, get: function () { return getAllSigners_js_1.getAllSigners; } });
|
26
|
+
Object.defineProperty(exports, "isGetAllSignersSupported", { enumerable: true, get: function () { return getAllSigners_js_1.isGetAllSignersSupported; } });
|
19
27
|
var getPermissionsForSigner_js_1 = require("../../extensions/erc4337/__generated__/IAccountPermissions/read/getPermissionsForSigner.js");
|
20
28
|
Object.defineProperty(exports, "getPermissionsForSigner", { enumerable: true, get: function () { return getPermissionsForSigner_js_1.getPermissionsForSigner; } });
|
21
29
|
var isActiveSigner_js_1 = require("../../extensions/erc4337/__generated__/IAccountPermissions/read/isActiveSigner.js");
|
22
30
|
Object.defineProperty(exports, "isActiveSigner", { enumerable: true, get: function () { return isActiveSigner_js_1.isActiveSigner; } });
|
31
|
+
Object.defineProperty(exports, "isIsActiveSignerSupported", { enumerable: true, get: function () { return isActiveSigner_js_1.isIsActiveSignerSupported; } });
|
23
32
|
var isAdmin_js_1 = require("../../extensions/erc4337/__generated__/IAccountPermissions/read/isAdmin.js");
|
24
33
|
Object.defineProperty(exports, "isAdmin", { enumerable: true, get: function () { return isAdmin_js_1.isAdmin; } });
|
34
|
+
Object.defineProperty(exports, "isIsAdminSupported", { enumerable: true, get: function () { return isAdmin_js_1.isIsAdminSupported; } });
|
25
35
|
var AdminUpdated_js_1 = require("../../extensions/erc4337/__generated__/IAccountPermissions/events/AdminUpdated.js");
|
26
36
|
Object.defineProperty(exports, "adminUpdatedEvent", { enumerable: true, get: function () { return AdminUpdated_js_1.adminUpdatedEvent; } });
|
27
37
|
var SignerPermissionsUpdated_js_1 = require("../../extensions/erc4337/__generated__/IAccountPermissions/events/SignerPermissionsUpdated.js");
|
@@ -29,16 +39,21 @@ Object.defineProperty(exports, "signerPermissionsUpdatedEvent", { enumerable: tr
|
|
29
39
|
// FACTORY
|
30
40
|
var getAllAccounts_js_1 = require("../../extensions/erc4337/__generated__/IAccountFactory/read/getAllAccounts.js");
|
31
41
|
Object.defineProperty(exports, "getAllAccounts", { enumerable: true, get: function () { return getAllAccounts_js_1.getAllAccounts; } });
|
42
|
+
Object.defineProperty(exports, "isGetAllAccountsSupported", { enumerable: true, get: function () { return getAllAccounts_js_1.isGetAllAccountsSupported; } });
|
32
43
|
var getAccounts_js_1 = require("../../extensions/erc4337/__generated__/IAccountFactory/read/getAccounts.js");
|
33
44
|
Object.defineProperty(exports, "getAccounts", { enumerable: true, get: function () { return getAccounts_js_1.getAccounts; } });
|
45
|
+
Object.defineProperty(exports, "isGetAccountsSupported", { enumerable: true, get: function () { return getAccounts_js_1.isGetAccountsSupported; } });
|
34
46
|
var totalAccounts_js_1 = require("../../extensions/erc4337/__generated__/IAccountFactory/read/totalAccounts.js");
|
35
47
|
Object.defineProperty(exports, "totalAccounts", { enumerable: true, get: function () { return totalAccounts_js_1.totalAccounts; } });
|
48
|
+
Object.defineProperty(exports, "isTotalAccountsSupported", { enumerable: true, get: function () { return totalAccounts_js_1.isTotalAccountsSupported; } });
|
36
49
|
var isRegistered_js_1 = require("../../extensions/erc4337/__generated__/IAccountFactory/read/isRegistered.js");
|
37
50
|
Object.defineProperty(exports, "isRegistered", { enumerable: true, get: function () { return isRegistered_js_1.isRegistered; } });
|
38
51
|
var getAccountsOfSigner_js_1 = require("../../extensions/erc4337/__generated__/IAccountFactory/read/getAccountsOfSigner.js");
|
39
52
|
Object.defineProperty(exports, "getAccountsOfSigner", { enumerable: true, get: function () { return getAccountsOfSigner_js_1.getAccountsOfSigner; } });
|
53
|
+
Object.defineProperty(exports, "isGetAccountsOfSignerSupported", { enumerable: true, get: function () { return getAccountsOfSigner_js_1.isGetAccountsOfSignerSupported; } });
|
40
54
|
var getAddress_js_1 = require("../../extensions/erc4337/__generated__/IAccountFactory/read/getAddress.js");
|
41
55
|
Object.defineProperty(exports, "predictAccountAddress", { enumerable: true, get: function () { return getAddress_js_1.getAddress; } });
|
56
|
+
Object.defineProperty(exports, "isPredictAccountAddressSupported", { enumerable: true, get: function () { return getAddress_js_1.isGetAddressSupported; } });
|
42
57
|
// ENTRYPOINT
|
43
58
|
var AccountDeployed_js_1 = require("../../extensions/erc4337/__generated__/IEntryPoint/events/AccountDeployed.js");
|
44
59
|
Object.defineProperty(exports, "accountDeployedEvent", { enumerable: true, get: function () { return AccountDeployed_js_1.accountDeployedEvent; } });
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"erc4337.js","sourceRoot":"","sources":["../../../../src/exports/extensions/erc4337.ts"],"names":[],"mappings":";;;AAAA,UAAU;AACV,
|
1
|
+
{"version":3,"file":"erc4337.js","sourceRoot":"","sources":["../../../../src/exports/extensions/erc4337.ts"],"names":[],"mappings":";;;AAAA,UAAU;AACV,6GAAoH;AAA3G,8HAAA,yBAAyB,OAAA;AAClC,4EAIsD;AAFpD,uGAAA,QAAQ,OAAA;AACR,kHAAA,mBAAmB,OAAA;AAGrB,kFAGyD;AADvD,6GAAA,WAAW,OAAA;AAGb,sFAI2D;AAFzD,iHAAA,aAAa,OAAA;AACb,4HAAA,wBAAwB,OAAA;AAG1B,4FAI8D;AAF5D,uHAAA,gBAAgB,OAAA;AAChB,kIAAA,2BAA2B,OAAA;AAG7B,iIAGgG;AAF9F,6HAAA,mBAAmB,OAAA;AACnB,wIAAA,8BAA8B,OAAA;AAEhC,mHAGyF;AAFvF,+GAAA,YAAY,OAAA;AACZ,0HAAA,uBAAuB,OAAA;AAEzB,qHAG0F;AAFxF,iHAAA,aAAa,OAAA;AACb,4HAAA,wBAAwB,OAAA;AAE1B,yIAGoG;AAFlG,qIAAA,uBAAuB,OAAA;AAGzB,uHAI2F;AAHzF,mHAAA,cAAc,OAAA;AACd,8HAAA,yBAAyB,OAAA;AAG3B,yGAGoF;AAFlF,qGAAA,OAAO,OAAA;AACP,gHAAA,kBAAkB,OAAA;AAEpB,qHAAsH;AAA7G,oHAAA,iBAAiB,OAAA;AAC1B,6IAA8I;AAArI,4IAAA,6BAA6B,OAAA;AAEtC,UAAU;AACV,mHAGuF;AAFrF,mHAAA,cAAc,OAAA;AACd,8HAAA,yBAAyB,OAAA;AAE3B,6GAGoF;AAFlF,6GAAA,WAAW,OAAA;AACX,wHAAA,sBAAsB,OAAA;AAExB,iHAGsF;AAFpF,iHAAA,aAAa,OAAA;AACb,4HAAA,wBAAwB,OAAA;AAE1B,+GAA2G;AAAlG,+GAAA,YAAY,OAAA;AACrB,6HAI4F;AAH1F,6HAAA,mBAAmB,OAAA;AAEnB,wIAAA,8BAA8B,OAAA;AAEhC,2GAImF;AAHjF,sHAAA,UAAU,OAAyB;AAEnC,iIAAA,qBAAqB,OAAoC;AAG3D,aAAa;AAEb,mHAAoH;AAA3G,0HAAA,oBAAoB,OAAA;AAC7B,yHAA0H;AAAjH,gIAAA,uBAAuB,OAAA;AAChC,uIAAwI;AAA/H,8IAAA,8BAA8B,OAAA;AACvC,6GAGkF;AAFhF,iHAAA,aAAa,OAAA;AAGf,oHAGsF;AAFpF,uHAAA,gBAAgB,OAAA"}
|
@@ -3,19 +3,24 @@
|
|
3
3
|
// Permissions
|
4
4
|
// --------------------------------------------------------
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.getRoleHash = exports.roleMap = exports.getAllRoleMembers = exports.getRoleMemberCount = exports.getRoleMember = exports.roleAdminChangedEvent = exports.roleRevokedEvent = exports.roleGrantedEvent = exports.renounceRole = exports.revokeRole = exports.grantRole = exports.getRoleAdmin = exports.hasRole = void 0;
|
6
|
+
exports.getRoleHash = exports.roleMap = exports.isGetAllRoleMembersSupported = exports.getAllRoleMembers = exports.isGetRoleMemberCountSupported = exports.getRoleMemberCount = exports.isGetRoleMemberSupported = exports.getRoleMember = exports.roleAdminChangedEvent = exports.roleRevokedEvent = exports.roleGrantedEvent = exports.isRenounceRoleSupported = exports.renounceRole = exports.isRevokeRoleSupported = exports.revokeRole = exports.isGrantRoleSupported = exports.grantRole = exports.isGetRoleAdminSupported = exports.getRoleAdmin = exports.isHasRoleSupported = exports.hasRole = void 0;
|
7
7
|
// READ
|
8
8
|
var hasRole_js_1 = require("../../extensions/permissions/read/hasRole.js");
|
9
9
|
Object.defineProperty(exports, "hasRole", { enumerable: true, get: function () { return hasRole_js_1.hasRole; } });
|
10
|
+
Object.defineProperty(exports, "isHasRoleSupported", { enumerable: true, get: function () { return hasRole_js_1.isHasRoleSupported; } });
|
10
11
|
var getRoleAdmin_js_1 = require("../../extensions/permissions/read/getRoleAdmin.js");
|
11
12
|
Object.defineProperty(exports, "getRoleAdmin", { enumerable: true, get: function () { return getRoleAdmin_js_1.getRoleAdmin; } });
|
13
|
+
Object.defineProperty(exports, "isGetRoleAdminSupported", { enumerable: true, get: function () { return getRoleAdmin_js_1.isGetRoleAdminSupported; } });
|
12
14
|
// WRITE
|
13
|
-
var
|
14
|
-
Object.defineProperty(exports, "grantRole", { enumerable: true, get: function () { return
|
15
|
+
var grantRole_js_1 = require("../../extensions/permissions/write/grantRole.js");
|
16
|
+
Object.defineProperty(exports, "grantRole", { enumerable: true, get: function () { return grantRole_js_1.grantRole; } });
|
17
|
+
Object.defineProperty(exports, "isGrantRoleSupported", { enumerable: true, get: function () { return grantRole_js_1.isGrantRoleSupported; } });
|
15
18
|
var revokeRole_js_1 = require("../../extensions/permissions/write/revokeRole.js");
|
16
19
|
Object.defineProperty(exports, "revokeRole", { enumerable: true, get: function () { return revokeRole_js_1.revokeRole; } });
|
20
|
+
Object.defineProperty(exports, "isRevokeRoleSupported", { enumerable: true, get: function () { return revokeRole_js_1.isRevokeRoleSupported; } });
|
17
21
|
var renounceRole_js_1 = require("../../extensions/permissions/write/renounceRole.js");
|
18
22
|
Object.defineProperty(exports, "renounceRole", { enumerable: true, get: function () { return renounceRole_js_1.renounceRole; } });
|
23
|
+
Object.defineProperty(exports, "isRenounceRoleSupported", { enumerable: true, get: function () { return renounceRole_js_1.isRenounceRoleSupported; } });
|
19
24
|
// EVENTS
|
20
25
|
var RoleGranted_js_1 = require("../../extensions/permissions/__generated__/IPermissions/events/RoleGranted.js");
|
21
26
|
Object.defineProperty(exports, "roleGrantedEvent", { enumerable: true, get: function () { return RoleGranted_js_1.roleGrantedEvent; } });
|
@@ -29,10 +34,13 @@ Object.defineProperty(exports, "roleAdminChangedEvent", { enumerable: true, get:
|
|
29
34
|
// READ
|
30
35
|
var getRoleMember_js_1 = require("../../extensions/permissions/read/getRoleMember.js");
|
31
36
|
Object.defineProperty(exports, "getRoleMember", { enumerable: true, get: function () { return getRoleMember_js_1.getRoleMember; } });
|
37
|
+
Object.defineProperty(exports, "isGetRoleMemberSupported", { enumerable: true, get: function () { return getRoleMember_js_1.isGetRoleMemberSupported; } });
|
32
38
|
var getRoleMemberCount_js_1 = require("../../extensions/permissions/read/getRoleMemberCount.js");
|
33
39
|
Object.defineProperty(exports, "getRoleMemberCount", { enumerable: true, get: function () { return getRoleMemberCount_js_1.getRoleMemberCount; } });
|
40
|
+
Object.defineProperty(exports, "isGetRoleMemberCountSupported", { enumerable: true, get: function () { return getRoleMemberCount_js_1.isGetRoleMemberCountSupported; } });
|
34
41
|
var getAllMembers_js_1 = require("../../extensions/permissions/read/getAllMembers.js");
|
35
42
|
Object.defineProperty(exports, "getAllRoleMembers", { enumerable: true, get: function () { return getAllMembers_js_1.getAllRoleMembers; } });
|
43
|
+
Object.defineProperty(exports, "isGetAllRoleMembersSupported", { enumerable: true, get: function () { return getAllMembers_js_1.isGetAllRoleMembersSupported; } });
|
36
44
|
// --------------------------------------------------------
|
37
45
|
// Utils
|
38
46
|
// --------------------------------------------------------
|
@@ -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,
|
1
|
+
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../../../src/exports/extensions/permissions.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,cAAc;AACd,2DAA2D;;;AAE3D,OAAO;AACP,2EAIsD;AAHpD,qGAAA,OAAO,OAAA;AAEP,gHAAA,kBAAkB,OAAA;AAEpB,qFAI2D;AAHzD,+GAAA,YAAY,OAAA;AAEZ,0HAAA,uBAAuB,OAAA;AAGzB,QAAQ;AACR,gFAIyD;AAHvD,yGAAA,SAAS,OAAA;AAET,oHAAA,oBAAoB,OAAA;AAEtB,kFAI0D;AAHxD,2GAAA,UAAU,OAAA;AAEV,sHAAA,qBAAqB,OAAA;AAEvB,sFAI4D;AAH1D,+GAAA,YAAY,OAAA;AAEZ,0HAAA,uBAAuB,OAAA;AAGzB,SAAS;AACT,gHAGuF;AAFrF,kHAAA,gBAAgB,OAAA;AAGlB,gHAGuF;AAFrF,kHAAA,gBAAgB,OAAA;AAGlB,0HAG4F;AAF1F,4HAAA,qBAAqB,OAAA;AAIvB,2DAA2D;AAC3D,wBAAwB;AACxB,2DAA2D;AAE3D,OAAO;AACP,uFAI4D;AAH1D,iHAAA,aAAa,OAAA;AAEb,4HAAA,wBAAwB,OAAA;AAE1B,iGAIiE;AAH/D,2HAAA,kBAAkB,OAAA;AAElB,sIAAA,6BAA6B,OAAA;AAE/B,uFAI4D;AAH1D,qHAAA,iBAAiB,OAAA;AAEjB,gIAAA,4BAA4B,OAAA;AAG9B,2DAA2D;AAC3D,QAAQ;AACR,2DAA2D;AAC3D,kEAA6E;AAApE,mGAAA,OAAO,OAAA;AAAE,uGAAA,WAAW,OAAA"}
|
@@ -1,9 +1,16 @@
|
|
1
1
|
"use strict";
|
2
2
|
// --------------------------------------------------------
|
3
|
-
//
|
3
|
+
// Generic
|
4
4
|
// --------------------------------------------------------
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.deployProxyByImplementation = exports.remove = exports.add = exports.getMetadataUri = exports.getAll = exports.count = exports.unpublishContract = exports.setPublisherProfileUri = exports.publishContract = exports.getPublishedContractVersions = exports.getPublishedContract = exports.getAllPublishedContracts = exports.getPublishedUriFromCompilerUri = exports.getPublisherProfileUri = void 0;
|
6
|
+
exports.deployProxyByImplementation = exports.remove = exports.add = exports.getMetadataUri = exports.getAll = exports.count = exports.unpublishContract = exports.setPublisherProfileUri = exports.publishContract = exports.getPublishedContractVersions = exports.getPublishedContract = exports.getAllPublishedContracts = exports.getPublishedUriFromCompilerUri = exports.getPublisherProfileUri = exports.isContractTypeSupported = exports.contractType = void 0;
|
7
|
+
// Read
|
8
|
+
var contractType_js_1 = require("../../extensions/thirdweb/read/contractType.js");
|
9
|
+
Object.defineProperty(exports, "contractType", { enumerable: true, get: function () { return contractType_js_1.contractType; } });
|
10
|
+
Object.defineProperty(exports, "isContractTypeSupported", { enumerable: true, get: function () { return contractType_js_1.isContractTypeSupported; } });
|
11
|
+
// --------------------------------------------------------
|
12
|
+
// Publisher contract
|
13
|
+
// --------------------------------------------------------
|
7
14
|
// Read
|
8
15
|
var getPublisherProfileUri_js_1 = require("../../extensions/thirdweb/__generated__/IContractPublisher/read/getPublisherProfileUri.js");
|
9
16
|
Object.defineProperty(exports, "getPublisherProfileUri", { enumerable: true, get: function () { return getPublisherProfileUri_js_1.getPublisherProfileUri; } });
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"thirdweb.js","sourceRoot":"","sources":["../../../../src/exports/extensions/thirdweb.ts"],"names":[],"mappings":";AAAA,2DAA2D;AAC3D,qBAAqB;AACrB,2DAA2D
|
1
|
+
{"version":3,"file":"thirdweb.js","sourceRoot":"","sources":["../../../../src/exports/extensions/thirdweb.ts"],"names":[],"mappings":";AAAA,2DAA2D;AAC3D,UAAU;AACV,2DAA2D;;;AAE3D,OAAO;AACP,kFAGwD;AAFtD,+GAAA,YAAY,OAAA;AACZ,0HAAA,uBAAuB,OAAA;AAGzB,2DAA2D;AAC3D,qBAAqB;AACrB,2DAA2D;AAE3D,OAAO;AACP,uIAGmG;AAFjG,mIAAA,sBAAsB,OAAA;AAGxB,uJAG2G;AAFzG,mJAAA,8BAA8B,OAAA;AAGhC,2IAGqG;AAFnG,uIAAA,wBAAwB,OAAA;AAG1B,mIAGiG;AAF/F,+HAAA,oBAAoB,OAAA;AAGtB,mJAGyG;AAFvG,+IAAA,4BAA4B,OAAA;AAI9B,QAAQ;AACR,0HAG6F;AAF3F,qHAAA,eAAe,OAAA;AAGjB,wIAGoG;AAFlG,mIAAA,sBAAsB,OAAA;AAGxB,8HAG+F;AAF7F,yHAAA,iBAAiB,OAAA;AAInB,2DAA2D;AAC3D,sBAAsB;AACtB,2DAA2D;AAE3D,OAAO;AACP,wGAGqF;AAFnF,iGAAA,KAAK,OAAA;AAGP,0GAGsF;AAFpF,mGAAA,MAAM,OAAA;AAGR,0HAG8F;AAF5F,mHAAA,cAAc,OAAA;AAIhB,QAAQ;AACR,qGAGoF;AAFlF,6FAAA,GAAG,OAAA;AAGL,2GAGuF;AAFrF,mGAAA,MAAM,OAAA;AAIR,2DAA2D;AAC3D,mBAAmB;AACnB,2DAA2D;AAC3D,gJAGuG;AAFrG,6IAAA,2BAA2B,OAAA"}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.addAdmin = addAdmin;
|
4
|
+
exports.isAddAdminSupported = isAddAdminSupported;
|
4
5
|
const setPermissionsForSigner_js_1 = require("../__generated__/IAccountPermissions/write/setPermissionsForSigner.js");
|
5
6
|
const common_js_1 = require("./common.js");
|
6
7
|
/**
|
@@ -39,4 +40,19 @@ function addAdmin(options) {
|
|
39
40
|
},
|
40
41
|
});
|
41
42
|
}
|
43
|
+
/**
|
44
|
+
* Checks if the `isAddAdminSupported` method is supported by the given contract.
|
45
|
+
* @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.
|
46
|
+
* @returns A boolean indicating if the `isAddAdminSupported` method is supported.
|
47
|
+
* @extension ERC4337
|
48
|
+
* @example
|
49
|
+
* ```ts
|
50
|
+
* import { isAddAdminSupported } from "thirdweb/extensions/erc4337";
|
51
|
+
*
|
52
|
+
* const supported = isAddAdminSupported(["0x..."]);
|
53
|
+
* ```
|
54
|
+
*/
|
55
|
+
function isAddAdminSupported(availableSelectors) {
|
56
|
+
return (0, setPermissionsForSigner_js_1.isSetPermissionsForSignerSupported)(availableSelectors);
|
57
|
+
}
|
42
58
|
//# sourceMappingURL=addAdmin.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"addAdmin.js","sourceRoot":"","sources":["../../../../../src/extensions/erc4337/account/addAdmin.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"addAdmin.js","sourceRoot":"","sources":["../../../../../src/extensions/erc4337/account/addAdmin.ts"],"names":[],"mappings":";;AAyCA,4BAgBC;AAcD,kDAEC;AAvED,sHAG+E;AAC/E,2CAAgF;AAgBhF;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,QAAQ,CAAC,OAAgD;IACvE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACpD,OAAO,IAAA,oDAAuB,EAAC;QAC7B,QAAQ;QACR,KAAK,CAAC,WAAW;YACf,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,iCAAqB,EAAC;gBACrD,OAAO;gBACP,QAAQ;gBACR,GAAG,EAAE,MAAM,IAAA,sCAA0B,EAAC;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,SAAgB,mBAAmB,CAAC,kBAA4B;IAC9D,OAAO,IAAA,+DAAkC,EAAC,kBAAkB,CAAC,CAAC;AAChE,CAAC"}
|