thirdweb 5.90.1 → 5.90.3
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/zksync/implementations.js +2 -2
- package/dist/cjs/exports/wallets/smart.js +2 -1
- package/dist/cjs/exports/wallets/smart.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js +91 -4
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js.map +1 -1
- package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js +2 -2
- package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
- package/dist/cjs/utils/any-evm/zksync/isZkSyncChain.js +2 -1
- package/dist/cjs/utils/any-evm/zksync/isZkSyncChain.js.map +1 -1
- package/dist/cjs/utils/promise/resolve-promised-value.js +1 -0
- package/dist/cjs/utils/promise/resolve-promised-value.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/wallets/in-app/core/actions/sign-message.enclave.js +3 -1
- package/dist/cjs/wallets/in-app/core/actions/sign-message.enclave.js.map +1 -1
- package/dist/cjs/wallets/in-app/core/wallet/enclave-wallet.js +4 -2
- package/dist/cjs/wallets/in-app/core/wallet/enclave-wallet.js.map +1 -1
- package/dist/cjs/wallets/smart/lib/bundler.js +1 -0
- package/dist/cjs/wallets/smart/lib/bundler.js.map +1 -1
- package/dist/cjs/wallets/smart/lib/userop.js +53 -16
- package/dist/cjs/wallets/smart/lib/userop.js.map +1 -1
- package/dist/esm/contract/deployment/zksync/implementations.js +2 -2
- package/dist/esm/exports/wallets/smart.js +1 -1
- package/dist/esm/exports/wallets/smart.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js +91 -4
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js.map +1 -1
- package/dist/esm/react/web/wallets/shared/OTPLoginUI.js +2 -2
- package/dist/esm/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
- package/dist/esm/utils/any-evm/zksync/isZkSyncChain.js +2 -1
- package/dist/esm/utils/any-evm/zksync/isZkSyncChain.js.map +1 -1
- package/dist/esm/utils/promise/resolve-promised-value.js +1 -0
- package/dist/esm/utils/promise/resolve-promised-value.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/wallets/in-app/core/actions/sign-message.enclave.js +3 -1
- package/dist/esm/wallets/in-app/core/actions/sign-message.enclave.js.map +1 -1
- package/dist/esm/wallets/in-app/core/wallet/enclave-wallet.js +4 -2
- package/dist/esm/wallets/in-app/core/wallet/enclave-wallet.js.map +1 -1
- package/dist/esm/wallets/smart/lib/bundler.js +1 -0
- package/dist/esm/wallets/smart/lib/bundler.js.map +1 -1
- package/dist/esm/wallets/smart/lib/userop.js +51 -15
- package/dist/esm/wallets/smart/lib/userop.js.map +1 -1
- package/dist/types/auth/core/generate-jwt.d.ts.map +1 -1
- package/dist/types/auth/core/generate-login-payload.d.ts.map +1 -1
- package/dist/types/auth/core/verify-jwt.d.ts.map +1 -1
- package/dist/types/auth/core/verify-login-payload.d.ts.map +1 -1
- package/dist/types/exports/wallets/smart.d.ts +1 -1
- package/dist/types/exports/wallets/smart.d.ts.map +1 -1
- package/dist/types/extensions/erc721/lazyMinting/helpers/hashDelayedRevealBatch.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/BatchMetadataERC1155/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/BatchMetadataERC721/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/ClaimableERC1155/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/ClaimableERC20/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/ClaimableERC721/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/MintableERC1155/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/MintableERC20/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/MintableERC721/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/OpenEditionMetadataERC721/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC1155/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC721/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/SequentialTokenIdERC1155/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/TransferableERC1155/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/TransferableERC20/module/install.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/TransferableERC721/module/install.d.ts.map +1 -1
- package/dist/types/react/core/hooks/others/useInvalidateQueries.d.ts.map +1 -1
- package/dist/types/react/core/hooks/transaction/transaction-button-utils.d.ts.map +1 -1
- package/dist/types/react/core/utils/wait.d.ts.map +1 -1
- package/dist/types/react/native/ui/components/Address.d.ts.map +1 -1
- package/dist/types/react/native/ui/components/ChainIcon.d.ts.map +1 -1
- package/dist/types/react/native/ui/components/RNImage.d.ts.map +1 -1
- package/dist/types/react/native/ui/components/WalletImage.d.ts.map +1 -1
- package/dist/types/react/native/ui/connect/ErrorView.d.ts.map +1 -1
- package/dist/types/react/native/ui/connect/LoadingView.d.ts.map +1 -1
- package/dist/types/react/native/ui/connect/ReceiveScreen.d.ts.map +1 -1
- package/dist/types/react/native/ui/connect/SendScreen.d.ts.map +1 -1
- package/dist/types/react/native/ui/connect/SuccessView.d.ts.map +1 -1
- package/dist/types/react/native/ui/connect/TokenListScreen.d.ts.map +1 -1
- package/dist/types/react/web/providers/wallet-ui-states-provider.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectModal.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectModalContent.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Modal/DeepLinkConnectUI.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Modal/InjectedConnectUI.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/icons/ThirdwebTextIcon.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.d.ts +2 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/pendingSwapTx.d.ts.map +1 -1
- package/dist/types/react/web/ui/components/ChainIcon.d.ts.map +1 -1
- package/dist/types/react/web/ui/components/QRCode.d.ts.map +1 -1
- package/dist/types/react/web/ui/components/TextDivider.d.ts.map +1 -1
- package/dist/types/react/web/wallets/injected/locale/br.d.ts.map +1 -1
- package/dist/types/react/web/wallets/injected/locale/de.d.ts.map +1 -1
- package/dist/types/react/web/wallets/injected/locale/en.d.ts.map +1 -1
- package/dist/types/react/web/wallets/injected/locale/es.d.ts.map +1 -1
- package/dist/types/react/web/wallets/injected/locale/fr.d.ts.map +1 -1
- package/dist/types/react/web/wallets/injected/locale/ja.d.ts.map +1 -1
- package/dist/types/react/web/wallets/injected/locale/kr.d.ts.map +1 -1
- package/dist/types/react/web/wallets/injected/locale/tl.d.ts.map +1 -1
- package/dist/types/react/web/wallets/injected/locale/vi.d.ts.map +1 -1
- package/dist/types/react/web/wallets/shared/ConnectWalletSocialOptions.d.ts.map +1 -1
- package/dist/types/transaction/actions/zksync/getEip721Domain.d.ts.map +1 -1
- package/dist/types/transaction/resolve-method.d.ts.map +1 -1
- package/dist/types/utils/any-evm/zksync/isZkSyncChain.d.ts.map +1 -1
- package/dist/types/utils/bigint.d.ts.map +1 -1
- package/dist/types/utils/domains.d.ts.map +1 -1
- package/dist/types/utils/promise/resolve-promised-value.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/wallets/connection/autoConnectCore.d.ts.map +1 -1
- package/dist/types/wallets/in-app/core/actions/sign-message.enclave.d.ts +3 -1
- package/dist/types/wallets/in-app/core/actions/sign-message.enclave.d.ts.map +1 -1
- package/dist/types/wallets/in-app/core/authentication/getLoginPath.d.ts.map +1 -1
- package/dist/types/wallets/in-app/core/constants/settings.d.ts.map +1 -1
- package/dist/types/wallets/in-app/core/wallet/enclave-wallet.d.ts.map +1 -1
- package/dist/types/wallets/in-app/native/helpers/api/fetchers.d.ts.map +1 -1
- package/dist/types/wallets/in-app/native/helpers/errors.d.ts.map +1 -1
- package/dist/types/wallets/in-app/web/lib/auth/oauth.d.ts.map +1 -1
- package/dist/types/wallets/in-app/web/lib/auth/otp.d.ts.map +1 -1
- package/dist/types/wallets/interfaces/wallet.d.ts +3 -1
- package/dist/types/wallets/interfaces/wallet.d.ts.map +1 -1
- package/dist/types/wallets/manager/index.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/bundler.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/constants.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/packUserOp.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/userop.d.ts +24 -1
- package/dist/types/wallets/smart/lib/userop.d.ts.map +1 -1
- package/package.json +12 -12
- package/src/contract/deployment/zksync/implementations.ts +2 -2
- package/src/exports/wallets/smart.ts +1 -0
- package/src/extensions/erc1155/drop1155.test.ts +0 -59
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.tsx +116 -4
- package/src/react/web/wallets/shared/OTPLoginUI.tsx +2 -2
- package/src/transaction/actions/gasless/providers/engine.test.ts +6 -10
- package/src/transaction/actions/gasless/providers/openzeppelin.test.ts +6 -10
- package/src/utils/any-evm/zksync/isZkSyncChain.ts +2 -1
- package/src/utils/bytecode/resolveImplementation.test.ts +48 -45
- package/src/utils/promise/resolve-promised-value.ts +1 -0
- package/src/version.ts +1 -1
- package/src/wallets/in-app/core/actions/sign-message.enclave.ts +5 -1
- package/src/wallets/in-app/core/wallet/enclave-wallet.ts +4 -2
- package/src/wallets/interfaces/wallet.ts +9 -1
- package/src/wallets/smart/lib/bundler.ts +1 -0
- package/src/wallets/smart/lib/userop.ts +59 -17
- package/src/wallets/smart/smart-wallet-integration-v07.test.ts +3 -2
- package/src/wallets/smart/smart-wallet-integration.test.ts +1 -0
- package/src/wallets/smart/smart-wallet-modular.test.ts +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"otp.d.ts","sourceRoot":"","sources":["../../../../../../../src/wallets/in-app/web/lib/auth/otp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAMtE,OAAO,KAAK,EACV,mCAAmC,EACnC,qBAAqB,EACrB,eAAe,EAChB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,OAAO,
|
1
|
+
{"version":3,"file":"otp.d.ts","sourceRoot":"","sources":["../../../../../../../src/wallets/in-app/web/lib/auth/otp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAMtE,OAAO,KAAK,EACV,mCAAmC,EACnC,qBAAqB,EACrB,eAAe,EAChB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,OAAO,GAAU,MAAM,eAAe,KAAG,OAAO,CAAC,IAAI,CAyCjE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,GACpB,MAAM,qBAAqB,GAAG;IAC5B,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,KACA,OAAO,CAAC,mCAAmC,CA+C7C,CAAC"}
|
@@ -154,8 +154,10 @@ export type Account = {
|
|
154
154
|
* const signature = await account.signMessage({ message: 'hello!' });
|
155
155
|
* ```
|
156
156
|
*/
|
157
|
-
signMessage: ({ message }: {
|
157
|
+
signMessage: ({ message, originalMessage, chainId, }: {
|
158
158
|
message: SignableMessage;
|
159
|
+
originalMessage?: string;
|
160
|
+
chainId?: number;
|
159
161
|
}) => Promise<Hex>;
|
160
162
|
/**
|
161
163
|
* Sign the given typed data and return the signature
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../../src/wallets/interfaces/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,KAAK,KAAK,aAAa,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,oDAAoD,CAAC;AAC5D,OAAO,KAAK,EACV,wBAAwB,EACxB,mBAAmB,EACpB,MAAM,0CAA0C,CAAC;AAClD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAC1F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EACV,gBAAgB,EAChB,0BAA0B,EAC1B,sBAAsB,EACtB,QAAQ,EACT,MAAM,oBAAoB,CAAC;AAE5B,MAAM,MAAM,qBAAqB,GAAG,uBAAuB,GAAG;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,wBAAwB,CAAC;CACnC,CAAC;AAEF,KAAK,yBAAyB,GAAG;IAC/B,cAAc,EAAE,GAAG,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE;QACP,OAAO,EAAE,OAAO,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAC5B,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,MAAM,CAAC,SAAS,SAAS,QAAQ,GAAG,QAAQ,IAAI;IAC1D;;;;;;;;;;OAUG;IACH,EAAE,EAAE,SAAS,CAAC;IAEd;;;;;;;;OAQG;IACH,QAAQ,IAAI,KAAK,GAAG,SAAS,CAAC;IAC9B;;;;;;;;;OASG;IACH,UAAU,IAAI,OAAO,GAAG,SAAS,CAAC;IAElC;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE,0BAA0B,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9E;;;OAGG;IACH,OAAO,CAAC,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtE;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B;;;;;;;OAOG;IACH,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzC;;;;;;;;;;;;;;;;;OAiBG;IACH,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;IAEjD;;;;;;;;;;;OAWG;IACH,SAAS,EAAE,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAIhD;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzC;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,OAAO,GAAG,SAAS,CAAC;CAC7C,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,OAAO,GAAG;IAGpB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;;OAMG;IACH,eAAe,EAAE,CACf,EAAE,EAAE,qBAAqB,KACtB,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACpC;;;;;;OAMG;IACH,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE;
|
1
|
+
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../../src/wallets/interfaces/wallet.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/wallets/manager/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAM7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAExE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAG/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAGnD,MAAM,MAAM,gBAAgB,GACxB,WAAW,GACX,cAAc,GACd,YAAY,GACZ,SAAS,CAAC;AAMd,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC3E,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,YAAY;;;;iCA6CvB,MAAM;+BA+BR,MAAM;oCA8FK,MAAM;sBAhDpB,MAAM,YAAY,qBAAqB;+BAvC5D,MAAM,YACJ,qBAAqB;;;;qCA6Ha,KAAK;;;oCA1JZ,MAAM;2BA8Lf,KAAK,EAAE;EAqCtC;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAU1B;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAS1B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CASvB;AAED;;GAEG;AACH,eAAO,MAAM,2BAA2B,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/wallets/manager/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAM7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAExE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAG/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAGnD,MAAM,MAAM,gBAAgB,GACxB,WAAW,GACX,cAAc,GACd,YAAY,GACZ,SAAS,CAAC;AAMd,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC3E,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,YAAY;;;;iCA6CvB,MAAM;+BA+BR,MAAM;oCA8FK,MAAM;sBAhDpB,MAAM,YAAY,qBAAqB;+BAvC5D,MAAM,YACJ,qBAAqB;;;;qCA6Ha,KAAK;;;oCA1JZ,MAAM;2BA8Lf,KAAK,EAAE;EAqCtC;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAU1B;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAS1B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CASvB;AAED;;GAEG;AACH,eAAO,MAAM,2BAA2B,GACtC,WAAW,MAAM,EACjB,QAAQ,cAAc,EACtB,SAAS,kBAAkB,EAC3B,oBAAoB,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,6BAyB7C,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"bundler.d.ts","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/bundler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAKhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAExE,OAAO,EAAE,KAAK,GAAG,EAAe,MAAM,gCAAgC,CAAC;AAIvE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EAEtB,MAAM,aAAa,CAAC;AAUrB;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;IAC5C,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,GAAG,CAAC,CASf;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE;IACJ,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;IAC5C,OAAO,EAAE,cAAc,CAAC;CACzB,EACD,cAAc,CAAC,EAAE;IACf,CAAC,CAAC,EAAE,MAAM,GAAG;QACX,SAAS,EAAE;YACT,CAAC,CAAC,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAAC;SAC5B,CAAC;KACH,CAAC;CACH,GACA,OAAO,CAAC,gBAAgB,CAAC,CA6B3B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAChD,YAAY,EAAE,mBAAmB,EAAE,CAAC;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,cAAc,CAAC;IACvB,kBAAkB,EAAE,kBAAkB,CAAC;CACxC;;;
|
1
|
+
{"version":3,"file":"bundler.d.ts","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/bundler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAKhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAExE,OAAO,EAAE,KAAK,GAAG,EAAe,MAAM,gCAAgC,CAAC;AAIvE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EAEtB,MAAM,aAAa,CAAC;AAUrB;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;IAC5C,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,GAAG,CAAC,CASf;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE;IACJ,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;IAC5C,OAAO,EAAE,cAAc,CAAC;CACzB,EACD,cAAc,CAAC,EAAE;IACf,CAAC,CAAC,EAAE,MAAM,GAAG;QACX,SAAS,EAAE;YACT,CAAC,CAAC,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAAC;SAC5B,CAAC;KACH,CAAC;CACH,GACA,OAAO,CAAC,gBAAgB,CAAC,CA6B3B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAChD,YAAY,EAAE,mBAAmB,EAAE,CAAC;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,cAAc,CAAC;IACvB,kBAAkB,EAAE,kBAAkB,CAAC;CACxC;;;GA8DA;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAC3C,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,cAAc,CAAC,CAW1B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,cAAc,GAAG;IACrB,UAAU,EAAE,GAAG,CAAC;CACjB,GACA,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CA6BzC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,cAAc,GAAG;IACrB,UAAU,EAAE,GAAG,CAAC;CACjB,GACA,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAU3C;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE;IAC7C,OAAO,EAAE,cAAc,CAAC;IACxB,WAAW,EAAE,uBAAuB,CAAC;CACtC,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAW7B;AAED,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IACjD,OAAO,EAAE,cAAc,CAAC;IACxB,WAAW,EAAE,uBAAuB,CAAC;IACrC,iBAAiB,EAAE,GAAG,CAAC;CACxB,GAAG,OAAO,CAAC;IAAE,eAAe,EAAE,GAAG,CAAA;CAAE,CAAC,CAepC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD,eAAO,MAAM,eAAe,yIAC4G,CAAC;AAEzI,eAAO,MAAM,4BAA4B,+CACK,CAAC;AAC/C,eAAO,MAAM,4BAA4B,+CACK,CAAC;AAE/C,eAAO,MAAM,uBAAuB,+CACU,CAAC;AAC/C,eAAO,MAAM,uBAAuB,+CACU,CAAC;AAE/C,eAAO,MAAM,0BAA0B,SAAS,CAAC;AAEjD,KAAK,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC;AACzD,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,UAAU,EAAE,oBAAoB,CAmBnE,CAAC;AAKF,eAAO,MAAM,wBAAwB,
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD,eAAO,MAAM,eAAe,yIAC4G,CAAC;AAEzI,eAAO,MAAM,4BAA4B,+CACK,CAAC;AAC/C,eAAO,MAAM,4BAA4B,+CACK,CAAC;AAE/C,eAAO,MAAM,uBAAuB,+CACU,CAAC;AAC/C,eAAO,MAAM,uBAAuB,+CACU,CAAC;AAE/C,eAAO,MAAM,0BAA0B,SAAS,CAAC;AAEjD,KAAK,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC;AACzD,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,UAAU,EAAE,oBAAoB,CAmBnE,CAAC;AAKF,eAAO,MAAM,wBAAwB,GAAI,oBAAoB,MAAM,gGAQlE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAAI,OAAO,KAAK,WAMhD,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,SAAS,MAAM,KAAG,MAAM,GAAG,MAS/D,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"packUserOp.d.ts","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/packUserOp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAiDzE,eAAO,MAAM,sBAAsB,
|
1
|
+
{"version":3,"file":"packUserOp.d.ts","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/packUserOp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAiDzE,eAAO,MAAM,sBAAsB,GACjC,eAAe,gBAAgB,KAC9B,mBAYF,CAAC"}
|
@@ -3,7 +3,7 @@ import type { ThirdwebClient } from "../../../client/client.js";
|
|
3
3
|
import { type ThirdwebContract } from "../../../contract/contract.js";
|
4
4
|
import type { PreparedTransaction } from "../../../transaction/prepare-transaction.js";
|
5
5
|
import type { TransactionReceipt } from "../../../transaction/types.js";
|
6
|
-
import type
|
6
|
+
import { type Hex } from "../../../utils/encoding/hex.js";
|
7
7
|
import type { Account } from "../../interfaces/wallet.js";
|
8
8
|
import type { BundlerOptions, SmartWalletOptions, UserOperationV06, UserOperationV07 } from "../types.js";
|
9
9
|
export declare const clearAccountDeploying: (accountContract: ThirdwebContract) => void;
|
@@ -86,6 +86,29 @@ export declare function signUserOp(args: {
|
|
86
86
|
entrypointAddress?: string;
|
87
87
|
adminAccount: Account;
|
88
88
|
}): Promise<UserOperationV06 | UserOperationV07>;
|
89
|
+
/**
|
90
|
+
* Get the hash of a user operation.
|
91
|
+
* @param args - The options for getting the user operation hash
|
92
|
+
* @returns - The user operation hash
|
93
|
+
* @example
|
94
|
+
* ```ts
|
95
|
+
* import { getUserOpHash } from "thirdweb/wallets/smart";
|
96
|
+
*
|
97
|
+
* const userOp = await createUnsignedUserOp(...);
|
98
|
+
* const userOpHash = await getUserOpHash({
|
99
|
+
* client,
|
100
|
+
* userOp,
|
101
|
+
* chain,
|
102
|
+
* });
|
103
|
+
* ```
|
104
|
+
* @walletUtils
|
105
|
+
*/
|
106
|
+
export declare function getUserOpHash(args: {
|
107
|
+
client: ThirdwebClient;
|
108
|
+
userOp: UserOperationV06 | UserOperationV07;
|
109
|
+
chain: Chain;
|
110
|
+
entrypointAddress?: string;
|
111
|
+
}): Promise<Hex>;
|
89
112
|
/**
|
90
113
|
* Create and sign a user operation.
|
91
114
|
* @param options - The options for creating and signing the user operation
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"userop.d.ts","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/userop.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,+BAA+B,CAAC;AAOvC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGxE,OAAO,KAAK,
|
1
|
+
{"version":3,"file":"userop.d.ts","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/userop.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "thirdweb",
|
3
|
-
"version": "5.90.
|
3
|
+
"version": "5.90.3",
|
4
4
|
"repository": {
|
5
5
|
"type": "git",
|
6
6
|
"url": "git+https://github.com/thirdweb-dev/js.git#main"
|
@@ -218,7 +218,7 @@
|
|
218
218
|
"@radix-ui/react-focus-scope": "1.1.2",
|
219
219
|
"@radix-ui/react-icons": "1.3.2",
|
220
220
|
"@radix-ui/react-tooltip": "1.1.8",
|
221
|
-
"@tanstack/react-query": "5.
|
221
|
+
"@tanstack/react-query": "5.67.1",
|
222
222
|
"@walletconnect/ethereum-provider": "2.17.5",
|
223
223
|
"@walletconnect/sign-client": "2.17.5",
|
224
224
|
"abitype": "1.0.8",
|
@@ -305,19 +305,19 @@
|
|
305
305
|
"@aws-sdk/client-lambda": "3.592.0",
|
306
306
|
"@aws-sdk/credential-providers": "3.592.0",
|
307
307
|
"@biomejs/biome": "1.9.4",
|
308
|
-
"@chromatic-com/storybook": "3.2.
|
308
|
+
"@chromatic-com/storybook": "3.2.5",
|
309
309
|
"@codspeed/vitest-plugin": "4.0.0",
|
310
310
|
"@coinbase/wallet-mobile-sdk": "1.1.2",
|
311
311
|
"@mobile-wallet-protocol/client": "0.1.2",
|
312
312
|
"@react-native-async-storage/async-storage": "2.1.1",
|
313
313
|
"@size-limit/preset-big-lib": "11.2.0",
|
314
|
-
"@storybook/addon-essentials": "8.6.
|
315
|
-
"@storybook/addon-interactions": "8.6.
|
316
|
-
"@storybook/addon-links": "8.6.
|
317
|
-
"@storybook/addon-onboarding": "8.6.
|
318
|
-
"@storybook/react": "8.6.
|
319
|
-
"@storybook/react-vite": "8.6.
|
320
|
-
"@storybook/test": "8.6.
|
314
|
+
"@storybook/addon-essentials": "8.6.3",
|
315
|
+
"@storybook/addon-interactions": "8.6.3",
|
316
|
+
"@storybook/addon-links": "8.6.3",
|
317
|
+
"@storybook/addon-onboarding": "8.6.3",
|
318
|
+
"@storybook/react": "8.6.3",
|
319
|
+
"@storybook/react-vite": "8.6.3",
|
320
|
+
"@storybook/test": "8.6.3",
|
321
321
|
"@testing-library/jest-dom": "^6.6.3",
|
322
322
|
"@testing-library/react": "^16.2.0",
|
323
323
|
"@testing-library/user-event": "^14.6.1",
|
@@ -346,10 +346,10 @@
|
|
346
346
|
"rimraf": "6.0.1",
|
347
347
|
"sharp": "^0.33.5",
|
348
348
|
"size-limit": "11.2.0",
|
349
|
-
"storybook": "8.6.
|
349
|
+
"storybook": "8.6.3",
|
350
350
|
"typedoc": "0.27.9",
|
351
351
|
"typedoc-better-json": "0.9.4",
|
352
|
-
"typescript": "5.
|
352
|
+
"typescript": "5.8.2",
|
353
353
|
"vite": "6.2.0",
|
354
354
|
"vitest": "3.0.7"
|
355
355
|
},
|
@@ -6,7 +6,7 @@ export const ZKSYNC_IMPLEMENTATIONS: Record<number, Record<string, string>> = {
|
|
6
6
|
MarketplaceV3: "0x8b0DBCf5b7D01eBB0F24525CE8AB72F16CE4F8C8",
|
7
7
|
},
|
8
8
|
[324]: {
|
9
|
-
MarketplaceV3: "
|
9
|
+
MarketplaceV3: "0x88e7F2bEf0a23073b7Cc2c79D307Dbd9138Fa79c",
|
10
10
|
},
|
11
11
|
[11124]: {
|
12
12
|
MarketplaceV3: "0x2dA4Dd326A6482679547071be21f74685d730504",
|
@@ -18,7 +18,7 @@ export const ZKSYNC_IMPLEMENTATIONS: Record<number, Record<string, string>> = {
|
|
18
18
|
MarketplaceV3: "0x9EB0830B0b10010F2a53383517A7D0B75531Bb1b",
|
19
19
|
},
|
20
20
|
[2741]: {
|
21
|
-
MarketplaceV3: "
|
21
|
+
MarketplaceV3: "0x4b14569c7B79DBe686Ac3Ba5996131E7EDaB7a93",
|
22
22
|
},
|
23
23
|
};
|
24
24
|
|
@@ -17,10 +17,8 @@ import { resolvePromisedValue } from "../../utils/promise/resolve-promised-value
|
|
17
17
|
import { toEther } from "../../utils/units.js";
|
18
18
|
import { generateMerkleTreeInfoERC1155 } from "../airdrop/write/merkleInfoERC1155.js";
|
19
19
|
import { name } from "../common/read/name.js";
|
20
|
-
import { deployERC20Contract } from "../prebuilts/deploy-erc20.js";
|
21
20
|
import { deployERC1155Contract } from "../prebuilts/deploy-erc1155.js";
|
22
21
|
import { balanceOf } from "./__generated__/IERC1155/read/balanceOf.js";
|
23
|
-
import { totalSupply } from "./__generated__/IERC1155/read/totalSupply.js";
|
24
22
|
import { nextTokenIdToMint } from "./__generated__/IERC1155Enumerable/read/nextTokenIdToMint.js";
|
25
23
|
import { canClaim } from "./drops/read/canClaim.js";
|
26
24
|
import { getActiveClaimCondition } from "./drops/read/getActiveClaimCondition.js";
|
@@ -472,63 +470,6 @@ describe.runIf(process.env.TW_SECRET_KEY)(
|
|
472
470
|
expect(isGetNFTsSupported(selectors)).toBe(true);
|
473
471
|
});
|
474
472
|
|
475
|
-
/**
|
476
|
-
* This is to document the behavior where one can claim without paying if the claiming address
|
477
|
-
* is the same as the PrimaryRecipientAddress, because of this Solidity code:
|
478
|
-
* ```solidity
|
479
|
-
* // CurrencyTransferLib.sol
|
480
|
-
* function safeTransferERC20(address _currency, address _from, address _to, uint256 _amount) internal {
|
481
|
-
* if (_from == _to) {
|
482
|
-
* return;
|
483
|
-
* }
|
484
|
-
* ...
|
485
|
-
* }
|
486
|
-
* ```
|
487
|
-
*/
|
488
|
-
it("address that is the same with PrimaryFeeRecipient can claim without paying ERC20", async () => {
|
489
|
-
const tokenAddress = await deployERC20Contract({
|
490
|
-
client: TEST_CLIENT,
|
491
|
-
chain: ANVIL_CHAIN,
|
492
|
-
account: TEST_ACCOUNT_C,
|
493
|
-
type: "TokenERC20",
|
494
|
-
params: {
|
495
|
-
name: "token20",
|
496
|
-
contractURI: TEST_CONTRACT_URI,
|
497
|
-
},
|
498
|
-
});
|
499
|
-
const tokenId = 5n;
|
500
|
-
const setClaimTx = setClaimConditions({
|
501
|
-
contract,
|
502
|
-
tokenId,
|
503
|
-
phases: [
|
504
|
-
{
|
505
|
-
maxClaimableSupply: 100n,
|
506
|
-
maxClaimablePerWallet: 100n,
|
507
|
-
currencyAddress: tokenAddress,
|
508
|
-
price: 1000,
|
509
|
-
startTime: new Date(),
|
510
|
-
},
|
511
|
-
],
|
512
|
-
});
|
513
|
-
await sendAndConfirmTransaction({
|
514
|
-
transaction: setClaimTx,
|
515
|
-
account: TEST_ACCOUNT_C,
|
516
|
-
});
|
517
|
-
|
518
|
-
const transaction = claimTo({
|
519
|
-
contract,
|
520
|
-
tokenId,
|
521
|
-
quantity: 50n,
|
522
|
-
to: TEST_ACCOUNT_C.address,
|
523
|
-
});
|
524
|
-
await sendAndConfirmTransaction({
|
525
|
-
transaction,
|
526
|
-
account: TEST_ACCOUNT_C,
|
527
|
-
});
|
528
|
-
const supplyCount = await totalSupply({ contract, id: tokenId });
|
529
|
-
expect(supplyCount).toBe(50n);
|
530
|
-
});
|
531
|
-
|
532
473
|
it("getActiveClaimCondition should work", async () => {
|
533
474
|
// Create a public allowlist claim phase
|
534
475
|
const snapshot = [
|
@@ -6,12 +6,18 @@ import type { ThirdwebClient } from "../../../../../../../client/client.js";
|
|
6
6
|
import { NATIVE_TOKEN_ADDRESS } from "../../../../../../../constants/addresses.js";
|
7
7
|
import { getContract } from "../../../../../../../contract/contract.js";
|
8
8
|
import { allowance } from "../../../../../../../extensions/erc20/__generated__/IERC20/read/allowance.js";
|
9
|
+
import {
|
10
|
+
type GetCurrencyMetadataResult,
|
11
|
+
getCurrencyMetadata,
|
12
|
+
} from "../../../../../../../extensions/erc20/read/getCurrencyMetadata.js";
|
9
13
|
import { approve } from "../../../../../../../extensions/erc20/write/approve.js";
|
10
14
|
import { transfer } from "../../../../../../../extensions/erc20/write/transfer.js";
|
15
|
+
import type { BuyWithCryptoStatus } from "../../../../../../../pay/buyWithCrypto/getStatus.js";
|
11
16
|
import { getBuyWithCryptoTransfer } from "../../../../../../../pay/buyWithCrypto/getTransfer.js";
|
12
17
|
import { sendAndConfirmTransaction } from "../../../../../../../transaction/actions/send-and-confirm-transaction.js";
|
13
18
|
import { sendTransaction } from "../../../../../../../transaction/actions/send-transaction.js";
|
14
19
|
import { prepareTransaction } from "../../../../../../../transaction/prepare-transaction.js";
|
20
|
+
import type { TransactionReceipt } from "../../../../../../../transaction/types.js";
|
15
21
|
import type { Address } from "../../../../../../../utils/address.js";
|
16
22
|
import { toWei } from "../../../../../../../utils/units.js";
|
17
23
|
import { iconSize } from "../../../../../../core/design-system/index.js";
|
@@ -42,6 +48,7 @@ type TransferConfirmationScreenProps = {
|
|
42
48
|
tokenAmount: string;
|
43
49
|
transactionMode?: boolean;
|
44
50
|
payOptions?: PayUIOptions;
|
51
|
+
onSuccess: ((status: BuyWithCryptoStatus) => void) | undefined;
|
45
52
|
};
|
46
53
|
|
47
54
|
export function TransferConfirmationScreen(
|
@@ -202,10 +209,33 @@ export function TransferConfirmationScreen(
|
|
202
209
|
to: receiverAddress,
|
203
210
|
amount: tokenAmount,
|
204
211
|
});
|
205
|
-
await
|
206
|
-
|
207
|
-
|
208
|
-
|
212
|
+
const [txResult, tokenMetadata] = await Promise.all([
|
213
|
+
sendAndConfirmTransaction({
|
214
|
+
account: props.payer.account,
|
215
|
+
transaction,
|
216
|
+
}),
|
217
|
+
getCurrencyMetadata({
|
218
|
+
contract: getContract({
|
219
|
+
address: isNativeToken(token)
|
220
|
+
? NATIVE_TOKEN_ADDRESS
|
221
|
+
: token.address,
|
222
|
+
chain: chain,
|
223
|
+
client: client,
|
224
|
+
}),
|
225
|
+
}),
|
226
|
+
]);
|
227
|
+
// its the last step before the transaction, so propagate onPurchaseSuccess here
|
228
|
+
props.onSuccess?.(
|
229
|
+
transferBuyWithCryptoQuote({
|
230
|
+
token,
|
231
|
+
chain,
|
232
|
+
tokenMetadata,
|
233
|
+
tokenAmount,
|
234
|
+
fromAddress: payer.account.address,
|
235
|
+
toAddress: receiverAddress,
|
236
|
+
transaction: txResult,
|
237
|
+
}),
|
238
|
+
);
|
209
239
|
// switch to execute step
|
210
240
|
setStep("execute");
|
211
241
|
setStatus({ id: "idle" });
|
@@ -299,3 +329,85 @@ export function TransferConfirmationScreen(
|
|
299
329
|
</Container>
|
300
330
|
);
|
301
331
|
}
|
332
|
+
|
333
|
+
function transferBuyWithCryptoQuote(args: {
|
334
|
+
token: ERC20OrNativeToken;
|
335
|
+
chain: Chain;
|
336
|
+
tokenMetadata: GetCurrencyMetadataResult;
|
337
|
+
tokenAmount: string;
|
338
|
+
fromAddress: string;
|
339
|
+
toAddress: string;
|
340
|
+
transaction: TransactionReceipt;
|
341
|
+
}): BuyWithCryptoStatus {
|
342
|
+
const {
|
343
|
+
token,
|
344
|
+
chain,
|
345
|
+
tokenMetadata,
|
346
|
+
tokenAmount,
|
347
|
+
fromAddress,
|
348
|
+
toAddress,
|
349
|
+
transaction,
|
350
|
+
} = args;
|
351
|
+
return {
|
352
|
+
status: "COMPLETED",
|
353
|
+
subStatus: "SUCCESS",
|
354
|
+
swapType: "TRANSFER",
|
355
|
+
quote: {
|
356
|
+
createdAt: new Date().toISOString(),
|
357
|
+
fromToken: {
|
358
|
+
chainId: chain.id,
|
359
|
+
tokenAddress: isNativeToken(token)
|
360
|
+
? NATIVE_TOKEN_ADDRESS
|
361
|
+
: token.address,
|
362
|
+
decimals: tokenMetadata.decimals,
|
363
|
+
symbol: tokenMetadata.symbol,
|
364
|
+
name: tokenMetadata.name,
|
365
|
+
priceUSDCents: 0,
|
366
|
+
},
|
367
|
+
toToken: {
|
368
|
+
chainId: chain.id,
|
369
|
+
tokenAddress: isNativeToken(token)
|
370
|
+
? NATIVE_TOKEN_ADDRESS
|
371
|
+
: token.address,
|
372
|
+
decimals: tokenMetadata.decimals,
|
373
|
+
symbol: tokenMetadata.symbol,
|
374
|
+
name: tokenMetadata.name,
|
375
|
+
priceUSDCents: 0,
|
376
|
+
},
|
377
|
+
fromAmountWei: toWei(tokenAmount).toString(),
|
378
|
+
fromAmount: tokenAmount,
|
379
|
+
toAmountWei: toWei(tokenAmount).toString(),
|
380
|
+
toAmount: tokenAmount,
|
381
|
+
toAmountMin: tokenAmount,
|
382
|
+
toAmountMinWei: toWei(tokenAmount).toString(),
|
383
|
+
estimated: {
|
384
|
+
feesUSDCents: 0,
|
385
|
+
gasCostUSDCents: 0,
|
386
|
+
slippageBPS: 0,
|
387
|
+
toAmountMinUSDCents: 0,
|
388
|
+
toAmountUSDCents: 0,
|
389
|
+
fromAmountUSDCents: 0,
|
390
|
+
durationSeconds: 0,
|
391
|
+
},
|
392
|
+
},
|
393
|
+
fromAddress,
|
394
|
+
toAddress,
|
395
|
+
source: {
|
396
|
+
transactionHash: transaction.transactionHash,
|
397
|
+
amount: tokenAmount,
|
398
|
+
amountWei: toWei(tokenAmount).toString(),
|
399
|
+
amountUSDCents: 0,
|
400
|
+
completedAt: new Date().toISOString(),
|
401
|
+
token: {
|
402
|
+
chainId: chain.id,
|
403
|
+
tokenAddress: isNativeToken(token)
|
404
|
+
? NATIVE_TOKEN_ADDRESS
|
405
|
+
: token.address,
|
406
|
+
decimals: tokenMetadata.decimals,
|
407
|
+
symbol: tokenMetadata.symbol,
|
408
|
+
name: tokenMetadata.name,
|
409
|
+
priceUSDCents: 0,
|
410
|
+
},
|
411
|
+
},
|
412
|
+
};
|
413
|
+
}
|
@@ -276,7 +276,7 @@ export function OTPLoginUI(props: {
|
|
276
276
|
|
277
277
|
{!isWideModal && <Line />}
|
278
278
|
|
279
|
-
<Container p={isWideModal ? undefined : "lg"}>
|
279
|
+
<Container p={isWideModal ? undefined : "lg"} gap="xs">
|
280
280
|
{accountStatus === "error" && (
|
281
281
|
<Text size="sm" center color="danger">
|
282
282
|
{locale.emailLoginScreen.failedToSendCode}
|
@@ -297,7 +297,7 @@ export function OTPLoginUI(props: {
|
|
297
297
|
</Container>
|
298
298
|
)}
|
299
299
|
|
300
|
-
{accountStatus
|
300
|
+
{accountStatus !== "sending" && (
|
301
301
|
<LinkButton onClick={sendEmailOrSms} type="button">
|
302
302
|
{locale.emailLoginScreen.resendCode}
|
303
303
|
</LinkButton>
|
@@ -74,16 +74,12 @@ describe.runIf(process.env.TW_SECRET_KEY)("prepareengineTransaction", () => {
|
|
74
74
|
const { message, messageType, signature } = result;
|
75
75
|
|
76
76
|
expect(isHex(signature)).toBe(true);
|
77
|
-
expect(message).
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
"to": "${erc20Contract.address}",
|
84
|
-
"value": 0n,
|
85
|
-
}
|
86
|
-
`);
|
77
|
+
expect(message.data).toBe(
|
78
|
+
"0xa9059cbb00000000000000000000000070997970c51812dc3a010c7d01b50e0d17dc79c80000000000000000000000000000000000000000000000056bc75e2d63100000",
|
79
|
+
);
|
80
|
+
expect(message.from).toBe(TEST_ACCOUNT_A.address);
|
81
|
+
expect(message.to).toBe(erc20Contract.address);
|
82
|
+
expect(message.value).toBe(0n);
|
87
83
|
expect(messageType).toMatchInlineSnapshot(`"forward"`);
|
88
84
|
});
|
89
85
|
|
@@ -72,16 +72,12 @@ describe.runIf(process.env.TW_SECRET_KEY)(
|
|
72
72
|
const { message, messageType, signature } = result;
|
73
73
|
|
74
74
|
expect(isHex(signature)).toBe(true);
|
75
|
-
expect(message).
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
"to": "${erc20Contract.address}",
|
82
|
-
"value": 0n,
|
83
|
-
}
|
84
|
-
`);
|
75
|
+
expect(message.from).toBe(TEST_ACCOUNT_A.address);
|
76
|
+
expect(message.to).toBe(erc20Contract.address);
|
77
|
+
expect(message.value).toBe(0n);
|
78
|
+
expect(message.data).toBe(
|
79
|
+
"0xa9059cbb00000000000000000000000070997970c51812dc3a010c7d01b50e0d17dc79c80000000000000000000000000000000000000000000000056bc75e2d63100000",
|
80
|
+
);
|
85
81
|
expect(messageType).toMatchInlineSnapshot(`"forward"`);
|
86
82
|
});
|
87
83
|
},
|
@@ -20,54 +20,57 @@ import { getContract } from "../../contract/contract.js";
|
|
20
20
|
import { deployContract } from "../../contract/deployment/deploy-with-abi.js";
|
21
21
|
import { resolveImplementation } from "./resolveImplementation.js";
|
22
22
|
|
23
|
-
describe(
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
it("should extract implementation address for matic proxy contract", async () => {
|
30
|
-
const resolved = resolveImplementation(POLYGON_USDT_PROXY_CONTRACT);
|
31
|
-
expect((await resolved).address).to.equal(
|
32
|
-
POLYGON_USDT_IMPLEMENTATION.toLowerCase(),
|
33
|
-
);
|
34
|
-
});
|
35
|
-
|
36
|
-
it("should extract implementation address for base USDC proxy contract", async () => {
|
37
|
-
const resolved = resolveImplementation(BASE_USDC_PROXY_CONTRACT);
|
38
|
-
expect((await resolved).address).to.equal(
|
39
|
-
BASE_USDC_IMPLEMENTATION.toLowerCase(),
|
40
|
-
);
|
41
|
-
});
|
42
|
-
|
43
|
-
it("should extract implementation address for ERC1967 proxy contract", async () => {
|
44
|
-
const implementationAddress = await deployContract({
|
45
|
-
client: TEST_CLIENT,
|
46
|
-
chain: ANVIL_CHAIN,
|
47
|
-
account: TEST_ACCOUNT_A,
|
48
|
-
bytecode: DUMMY_BYTECODE,
|
49
|
-
abi: [],
|
23
|
+
describe.runIf(process.env.TW_SECRET_KEY)(
|
24
|
+
"Resolve implementation",
|
25
|
+
async () => {
|
26
|
+
it("should extract implementation address for minimal proxy contract", async () => {
|
27
|
+
const resolved = resolveImplementation(NFT_DROP_CONTRACT);
|
28
|
+
expect((await resolved).address).to.equal(NFT_DROP_IMPLEMENTATION);
|
50
29
|
});
|
51
30
|
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
abi: ERC1967_PROXY_CONSTRUCTOR_ABI as Abi,
|
58
|
-
constructorParams: {
|
59
|
-
logic: implementationAddress,
|
60
|
-
data: "0x",
|
61
|
-
},
|
31
|
+
it("should extract implementation address for matic proxy contract", async () => {
|
32
|
+
const resolved = resolveImplementation(POLYGON_USDT_PROXY_CONTRACT);
|
33
|
+
expect((await resolved).address).to.equal(
|
34
|
+
POLYGON_USDT_IMPLEMENTATION.toLowerCase(),
|
35
|
+
);
|
62
36
|
});
|
63
37
|
|
64
|
-
|
65
|
-
|
66
|
-
address
|
67
|
-
|
38
|
+
it("should extract implementation address for base USDC proxy contract", async () => {
|
39
|
+
const resolved = resolveImplementation(BASE_USDC_PROXY_CONTRACT);
|
40
|
+
expect((await resolved).address).to.equal(
|
41
|
+
BASE_USDC_IMPLEMENTATION.toLowerCase(),
|
42
|
+
);
|
68
43
|
});
|
69
44
|
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
45
|
+
it("should extract implementation address for ERC1967 proxy contract", async () => {
|
46
|
+
const implementationAddress = await deployContract({
|
47
|
+
client: TEST_CLIENT,
|
48
|
+
chain: ANVIL_CHAIN,
|
49
|
+
account: TEST_ACCOUNT_A,
|
50
|
+
bytecode: DUMMY_BYTECODE,
|
51
|
+
abi: [],
|
52
|
+
});
|
53
|
+
|
54
|
+
const proxyAddress = await deployContract({
|
55
|
+
client: TEST_CLIENT,
|
56
|
+
chain: ANVIL_CHAIN,
|
57
|
+
account: TEST_ACCOUNT_A,
|
58
|
+
bytecode: ERC1967_PROXY_BYTECODE,
|
59
|
+
abi: ERC1967_PROXY_CONSTRUCTOR_ABI as Abi,
|
60
|
+
constructorParams: {
|
61
|
+
logic: implementationAddress,
|
62
|
+
data: "0x",
|
63
|
+
},
|
64
|
+
});
|
65
|
+
|
66
|
+
const proxy = getContract({
|
67
|
+
chain: ANVIL_CHAIN,
|
68
|
+
address: proxyAddress,
|
69
|
+
client: TEST_CLIENT,
|
70
|
+
});
|
71
|
+
|
72
|
+
const resolved = await resolveImplementation(proxy);
|
73
|
+
expect(resolved.address).to.equal(implementationAddress);
|
74
|
+
});
|
75
|
+
},
|
76
|
+
);
|
@@ -10,6 +10,7 @@
|
|
10
10
|
export async function resolvePromisedValue<V>(
|
11
11
|
value: V,
|
12
12
|
): Promise<V extends () => Promise<infer R> ? R : V> {
|
13
|
+
// @ts-expect-error - this works fine, but TS doesn't like it since 5.8
|
13
14
|
return typeof value === "function" ? await value() : value;
|
14
15
|
}
|
15
16
|
|
package/src/version.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export const version = "5.90.
|
1
|
+
export const version = "5.90.3";
|