thirdweb 5.90.1 → 5.90.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/dist/cjs/contract/deployment/zksync/implementations.js +2 -2
  2. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js +91 -4
  3. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js.map +1 -1
  4. package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js +2 -2
  5. package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
  6. package/dist/cjs/utils/any-evm/zksync/isZkSyncChain.js +2 -1
  7. package/dist/cjs/utils/any-evm/zksync/isZkSyncChain.js.map +1 -1
  8. package/dist/cjs/utils/promise/resolve-promised-value.js +1 -0
  9. package/dist/cjs/utils/promise/resolve-promised-value.js.map +1 -1
  10. package/dist/cjs/version.js +1 -1
  11. package/dist/cjs/wallets/smart/lib/bundler.js +1 -0
  12. package/dist/cjs/wallets/smart/lib/bundler.js.map +1 -1
  13. package/dist/cjs/wallets/smart/lib/userop.js +6 -2
  14. package/dist/cjs/wallets/smart/lib/userop.js.map +1 -1
  15. package/dist/esm/contract/deployment/zksync/implementations.js +2 -2
  16. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js +91 -4
  17. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js.map +1 -1
  18. package/dist/esm/react/web/wallets/shared/OTPLoginUI.js +2 -2
  19. package/dist/esm/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
  20. package/dist/esm/utils/any-evm/zksync/isZkSyncChain.js +2 -1
  21. package/dist/esm/utils/any-evm/zksync/isZkSyncChain.js.map +1 -1
  22. package/dist/esm/utils/promise/resolve-promised-value.js +1 -0
  23. package/dist/esm/utils/promise/resolve-promised-value.js.map +1 -1
  24. package/dist/esm/version.js +1 -1
  25. package/dist/esm/wallets/smart/lib/bundler.js +1 -0
  26. package/dist/esm/wallets/smart/lib/bundler.js.map +1 -1
  27. package/dist/esm/wallets/smart/lib/userop.js +6 -2
  28. package/dist/esm/wallets/smart/lib/userop.js.map +1 -1
  29. package/dist/types/auth/core/generate-jwt.d.ts.map +1 -1
  30. package/dist/types/auth/core/generate-login-payload.d.ts.map +1 -1
  31. package/dist/types/auth/core/verify-jwt.d.ts.map +1 -1
  32. package/dist/types/auth/core/verify-login-payload.d.ts.map +1 -1
  33. package/dist/types/extensions/erc721/lazyMinting/helpers/hashDelayedRevealBatch.d.ts.map +1 -1
  34. package/dist/types/extensions/modules/__generated__/BatchMetadataERC1155/module/install.d.ts.map +1 -1
  35. package/dist/types/extensions/modules/__generated__/BatchMetadataERC721/module/install.d.ts.map +1 -1
  36. package/dist/types/extensions/modules/__generated__/ClaimableERC1155/module/install.d.ts.map +1 -1
  37. package/dist/types/extensions/modules/__generated__/ClaimableERC20/module/install.d.ts.map +1 -1
  38. package/dist/types/extensions/modules/__generated__/ClaimableERC721/module/install.d.ts.map +1 -1
  39. package/dist/types/extensions/modules/__generated__/MintableERC1155/module/install.d.ts.map +1 -1
  40. package/dist/types/extensions/modules/__generated__/MintableERC20/module/install.d.ts.map +1 -1
  41. package/dist/types/extensions/modules/__generated__/MintableERC721/module/install.d.ts.map +1 -1
  42. package/dist/types/extensions/modules/__generated__/OpenEditionMetadataERC721/module/install.d.ts.map +1 -1
  43. package/dist/types/extensions/modules/__generated__/RoyaltyERC1155/module/install.d.ts.map +1 -1
  44. package/dist/types/extensions/modules/__generated__/RoyaltyERC721/module/install.d.ts.map +1 -1
  45. package/dist/types/extensions/modules/__generated__/SequentialTokenIdERC1155/module/install.d.ts.map +1 -1
  46. package/dist/types/extensions/modules/__generated__/TransferableERC1155/module/install.d.ts.map +1 -1
  47. package/dist/types/extensions/modules/__generated__/TransferableERC20/module/install.d.ts.map +1 -1
  48. package/dist/types/extensions/modules/__generated__/TransferableERC721/module/install.d.ts.map +1 -1
  49. package/dist/types/react/core/hooks/others/useInvalidateQueries.d.ts.map +1 -1
  50. package/dist/types/react/core/hooks/transaction/transaction-button-utils.d.ts.map +1 -1
  51. package/dist/types/react/core/utils/wait.d.ts.map +1 -1
  52. package/dist/types/react/native/ui/components/Address.d.ts.map +1 -1
  53. package/dist/types/react/native/ui/components/ChainIcon.d.ts.map +1 -1
  54. package/dist/types/react/native/ui/components/RNImage.d.ts.map +1 -1
  55. package/dist/types/react/native/ui/components/WalletImage.d.ts.map +1 -1
  56. package/dist/types/react/native/ui/connect/ErrorView.d.ts.map +1 -1
  57. package/dist/types/react/native/ui/connect/LoadingView.d.ts.map +1 -1
  58. package/dist/types/react/native/ui/connect/ReceiveScreen.d.ts.map +1 -1
  59. package/dist/types/react/native/ui/connect/SendScreen.d.ts.map +1 -1
  60. package/dist/types/react/native/ui/connect/SuccessView.d.ts.map +1 -1
  61. package/dist/types/react/native/ui/connect/TokenListScreen.d.ts.map +1 -1
  62. package/dist/types/react/web/providers/wallet-ui-states-provider.d.ts.map +1 -1
  63. package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectModal.d.ts.map +1 -1
  64. package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectModalContent.d.ts.map +1 -1
  65. package/dist/types/react/web/ui/ConnectWallet/Modal/DeepLinkConnectUI.d.ts.map +1 -1
  66. package/dist/types/react/web/ui/ConnectWallet/Modal/InjectedConnectUI.d.ts.map +1 -1
  67. package/dist/types/react/web/ui/ConnectWallet/icons/ThirdwebTextIcon.d.ts.map +1 -1
  68. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.d.ts +2 -0
  69. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.d.ts.map +1 -1
  70. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/pendingSwapTx.d.ts.map +1 -1
  71. package/dist/types/react/web/ui/components/ChainIcon.d.ts.map +1 -1
  72. package/dist/types/react/web/ui/components/QRCode.d.ts.map +1 -1
  73. package/dist/types/react/web/ui/components/TextDivider.d.ts.map +1 -1
  74. package/dist/types/react/web/wallets/injected/locale/br.d.ts.map +1 -1
  75. package/dist/types/react/web/wallets/injected/locale/de.d.ts.map +1 -1
  76. package/dist/types/react/web/wallets/injected/locale/en.d.ts.map +1 -1
  77. package/dist/types/react/web/wallets/injected/locale/es.d.ts.map +1 -1
  78. package/dist/types/react/web/wallets/injected/locale/fr.d.ts.map +1 -1
  79. package/dist/types/react/web/wallets/injected/locale/ja.d.ts.map +1 -1
  80. package/dist/types/react/web/wallets/injected/locale/kr.d.ts.map +1 -1
  81. package/dist/types/react/web/wallets/injected/locale/tl.d.ts.map +1 -1
  82. package/dist/types/react/web/wallets/injected/locale/vi.d.ts.map +1 -1
  83. package/dist/types/react/web/wallets/shared/ConnectWalletSocialOptions.d.ts.map +1 -1
  84. package/dist/types/transaction/actions/zksync/getEip721Domain.d.ts.map +1 -1
  85. package/dist/types/transaction/resolve-method.d.ts.map +1 -1
  86. package/dist/types/utils/any-evm/zksync/isZkSyncChain.d.ts.map +1 -1
  87. package/dist/types/utils/bigint.d.ts.map +1 -1
  88. package/dist/types/utils/domains.d.ts.map +1 -1
  89. package/dist/types/utils/promise/resolve-promised-value.d.ts.map +1 -1
  90. package/dist/types/version.d.ts +1 -1
  91. package/dist/types/wallets/connection/autoConnectCore.d.ts.map +1 -1
  92. package/dist/types/wallets/in-app/core/authentication/getLoginPath.d.ts.map +1 -1
  93. package/dist/types/wallets/in-app/core/constants/settings.d.ts.map +1 -1
  94. package/dist/types/wallets/in-app/native/helpers/api/fetchers.d.ts.map +1 -1
  95. package/dist/types/wallets/in-app/native/helpers/errors.d.ts.map +1 -1
  96. package/dist/types/wallets/in-app/web/lib/auth/oauth.d.ts.map +1 -1
  97. package/dist/types/wallets/in-app/web/lib/auth/otp.d.ts.map +1 -1
  98. package/dist/types/wallets/manager/index.d.ts.map +1 -1
  99. package/dist/types/wallets/smart/lib/bundler.d.ts.map +1 -1
  100. package/dist/types/wallets/smart/lib/constants.d.ts.map +1 -1
  101. package/dist/types/wallets/smart/lib/packUserOp.d.ts.map +1 -1
  102. package/dist/types/wallets/smart/lib/userop.d.ts.map +1 -1
  103. package/package.json +12 -12
  104. package/src/contract/deployment/zksync/implementations.ts +2 -2
  105. package/src/extensions/erc1155/drop1155.test.ts +0 -59
  106. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.tsx +116 -4
  107. package/src/react/web/wallets/shared/OTPLoginUI.tsx +2 -2
  108. package/src/transaction/actions/gasless/providers/engine.test.ts +6 -10
  109. package/src/transaction/actions/gasless/providers/openzeppelin.test.ts +6 -10
  110. package/src/utils/any-evm/zksync/isZkSyncChain.ts +2 -1
  111. package/src/utils/bytecode/resolveImplementation.test.ts +48 -45
  112. package/src/utils/promise/resolve-promised-value.ts +1 -0
  113. package/src/version.ts +1 -1
  114. package/src/wallets/smart/lib/bundler.ts +1 -0
  115. package/src/wallets/smart/lib/userop.ts +6 -2
  116. package/src/wallets/smart/smart-wallet-integration-v07.test.ts +3 -2
  117. package/src/wallets/smart/smart-wallet-integration.test.ts +1 -0
  118. package/src/wallets/smart/smart-wallet-modular.test.ts +1 -1
@@ -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("Resolve implementation", async () => {
24
- it("should extract implementation address for minimal proxy contract", async () => {
25
- const resolved = resolveImplementation(NFT_DROP_CONTRACT);
26
- expect((await resolved).address).to.equal(NFT_DROP_IMPLEMENTATION);
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
- const proxyAddress = await deployContract({
53
- client: TEST_CLIENT,
54
- chain: ANVIL_CHAIN,
55
- account: TEST_ACCOUNT_A,
56
- bytecode: ERC1967_PROXY_BYTECODE,
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
- const proxy = getContract({
65
- chain: ANVIL_CHAIN,
66
- address: proxyAddress,
67
- client: TEST_CLIENT,
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
- const resolved = await resolveImplementation(proxy);
71
- expect(resolved.address).to.equal(implementationAddress);
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";
1
+ export const version = "5.90.2";
@@ -179,6 +179,7 @@ export async function estimateUserOpGasCost(args: {
179
179
  client: args.client,
180
180
  }),
181
181
  ),
182
+ waitForDeployment: false,
182
183
  });
183
184
 
184
185
  let gasLimit = 0n;
@@ -321,7 +321,9 @@ async function populateUserOp_v0_7(args: {
321
321
  createAccountOverride: overrides?.createAccount,
322
322
  }),
323
323
  );
324
- markAccountDeploying(accountContract);
324
+ if (waitForDeployment) {
325
+ markAccountDeploying(accountContract);
326
+ }
325
327
  }
326
328
 
327
329
  const partialOp: UserOperationV07 = {
@@ -481,7 +483,9 @@ async function populateUserOp_v0_6(args: {
481
483
  accountSalt: overrides?.accountSalt,
482
484
  createAccountOverride: overrides?.createAccount,
483
485
  });
484
- markAccountDeploying(accountContract);
486
+ if (waitForDeployment) {
487
+ markAccountDeploying(accountContract);
488
+ }
485
489
  }
486
490
 
487
491
  const partialOp: UserOperationV06 = {
@@ -49,9 +49,10 @@ const contract = getContract({
49
49
  address: "0xe2cb0eb5147b42095c2FfA6F7ec953bb0bE347D8",
50
50
  });
51
51
 
52
- describe.sequential(
52
+ describe.runIf(process.env.TW_SECRET_KEY).sequential(
53
53
  "SmartWallet 0.7 core tests",
54
54
  {
55
+ retry: 0,
55
56
  timeout: 240_000,
56
57
  },
57
58
  () => {
@@ -200,7 +201,7 @@ describe.sequential(
200
201
  });
201
202
 
202
203
  await expect(tx).rejects.toMatchInlineSnapshot(`
203
- [TransactionError: Error - Not authorized
204
+ [TransactionError: Execution Reverted: {"code":3,"message":"execution reverted: Not authorized"}
204
205
 
205
206
  contract: ${contract.address}
206
207
  chainId: 11155111]
@@ -52,6 +52,7 @@ const factoryAddress = "0x564cf6453a1b0FF8DB603E92EA4BbD410dea45F3"; // pre 712
52
52
  describe.runIf(process.env.TW_SECRET_KEY).sequential(
53
53
  "SmartWallet core tests",
54
54
  {
55
+ retry: 0,
55
56
  timeout: 240_000,
56
57
  },
57
58
  () => {
@@ -28,7 +28,7 @@ const client = TEST_CLIENT;
28
28
  const DEFAULT_FACTORY_ADDRESS = "0xB1846E893CA01c5Dcdaa40371C1e13f2e0Df5717";
29
29
  const DEFAULT_VALIDATOR_ADDRESS = "0x7D3631d823e0De311DC86f580946EeF2eEC81fba";
30
30
 
31
- describe.sequential(
31
+ describe.runIf(process.env.TW_SECRET_KEY).sequential(
32
32
  "SmartWallet modular tests",
33
33
  {
34
34
  retry: 0,