thirdweb 5.64.1 → 5.64.3-nightly-ddec3dadcc260e0d4d0ed2b43c502e0915a14203-20241029000326

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 (119) hide show
  1. package/dist/cjs/auth/core/generate-login-payload.js +1 -1
  2. package/dist/cjs/auth/core/generate-login-payload.js.map +1 -1
  3. package/dist/cjs/extensions/prebuilts/deploy-vote.js +13 -13
  4. package/dist/cjs/extensions/prebuilts/deploy-vote.js.map +1 -1
  5. package/dist/cjs/react/core/hooks/transaction/useSendTransaction.js +19 -1
  6. package/dist/cjs/react/core/hooks/transaction/useSendTransaction.js.map +1 -1
  7. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +27 -78
  8. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  9. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js +27 -13
  10. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js.map +1 -1
  11. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js +50 -19
  12. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js.map +1 -1
  13. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.js +0 -2
  14. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.js.map +1 -1
  15. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js +21 -32
  16. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js.map +1 -1
  17. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.js +138 -0
  18. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.js.map +1 -0
  19. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.js +1 -0
  20. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.js.map +1 -1
  21. package/dist/cjs/react/web/ui/ConnectWallet/screens/formatTokenBalance.js +2 -2
  22. package/dist/cjs/react/web/ui/ConnectWallet/screens/formatTokenBalance.js.map +1 -1
  23. package/dist/cjs/version.js +1 -1
  24. package/dist/cjs/version.js.map +1 -1
  25. package/dist/cjs/wallets/smart/lib/bundler.js +3 -1
  26. package/dist/cjs/wallets/smart/lib/bundler.js.map +1 -1
  27. package/dist/esm/auth/core/generate-login-payload.js +1 -1
  28. package/dist/esm/auth/core/generate-login-payload.js.map +1 -1
  29. package/dist/esm/extensions/prebuilts/deploy-vote.js +13 -13
  30. package/dist/esm/extensions/prebuilts/deploy-vote.js.map +1 -1
  31. package/dist/esm/react/core/hooks/transaction/useSendTransaction.js +19 -1
  32. package/dist/esm/react/core/hooks/transaction/useSendTransaction.js.map +1 -1
  33. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +29 -80
  34. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  35. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js +28 -14
  36. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js.map +1 -1
  37. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js +50 -19
  38. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js.map +1 -1
  39. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.js +0 -2
  40. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.js.map +1 -1
  41. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js +21 -32
  42. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js.map +1 -1
  43. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.js +135 -0
  44. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.js.map +1 -0
  45. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.js +1 -1
  46. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.js.map +1 -1
  47. package/dist/esm/react/web/ui/ConnectWallet/screens/formatTokenBalance.js +2 -2
  48. package/dist/esm/react/web/ui/ConnectWallet/screens/formatTokenBalance.js.map +1 -1
  49. package/dist/esm/version.js +1 -1
  50. package/dist/esm/version.js.map +1 -1
  51. package/dist/esm/wallets/smart/lib/bundler.js +3 -1
  52. package/dist/esm/wallets/smart/lib/bundler.js.map +1 -1
  53. package/dist/types/react/core/hooks/transaction/useSendTransaction.d.ts.map +1 -1
  54. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.d.ts.map +1 -1
  55. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.d.ts +1 -1
  56. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.d.ts.map +1 -1
  57. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.d.ts +12 -8
  58. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.d.ts.map +1 -1
  59. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts +1 -1
  60. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts.map +1 -1
  61. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.d.ts +0 -1
  62. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.d.ts.map +1 -1
  63. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.d.ts +1 -2
  64. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.d.ts.map +1 -1
  65. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.d.ts +30 -0
  66. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.d.ts.map +1 -0
  67. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.d.ts +1 -0
  68. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.d.ts.map +1 -1
  69. package/dist/types/react/web/ui/ConnectWallet/screens/formatTokenBalance.d.ts +1 -1
  70. package/dist/types/react/web/ui/ConnectWallet/screens/formatTokenBalance.d.ts.map +1 -1
  71. package/dist/types/react/web/ui/components/token/TokenSymbol.d.ts +1 -1
  72. package/dist/types/react/web/ui/components/token/TokenSymbol.d.ts.map +1 -1
  73. package/dist/types/version.d.ts +1 -1
  74. package/dist/types/version.d.ts.map +1 -1
  75. package/dist/types/wallets/smart/lib/bundler.d.ts.map +1 -1
  76. package/dist/types/wallets/smart/types.d.ts +1 -1
  77. package/dist/types/wallets/smart/types.d.ts.map +1 -1
  78. package/package.json +11 -11
  79. package/src/auth/core/generate-login-payload.test.ts +1 -1
  80. package/src/auth/core/generate-login-payload.ts +1 -1
  81. package/src/extensions/prebuilts/deploy-vote.test.ts +1 -46
  82. package/src/extensions/prebuilts/deploy-vote.ts +21 -20
  83. package/src/extensions/split/split.test.ts +76 -0
  84. package/src/extensions/unstoppable-domains/read/resolveName.test.ts +20 -17
  85. package/src/extensions/vote/{read/proposalExists.test.ts → vote.test.ts} +21 -52
  86. package/src/react/core/hooks/transaction/useSendTransaction.ts +34 -4
  87. package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +35 -148
  88. package/src/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.tsx +62 -31
  89. package/src/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.tsx +136 -48
  90. package/src/react/web/ui/ConnectWallet/screens/Buy/main/types.ts +1 -1
  91. package/src/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.ts +0 -4
  92. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.tsx +57 -71
  93. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/PaymentSelectionScreen.tsx +251 -0
  94. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.ts +1 -1
  95. package/src/react/web/ui/ConnectWallet/screens/formatTokenBalance.ts +2 -1
  96. package/src/react/web/ui/components/token/TokenSymbol.tsx +2 -2
  97. package/src/version.ts +1 -1
  98. package/src/wallets/smart/lib/bundler.ts +4 -1
  99. package/src/wallets/smart/smart-wallet-dev.test.ts +23 -4
  100. package/src/wallets/smart/smart-wallet-integration.test.ts +11 -8
  101. package/src/wallets/smart/types.ts +1 -1
  102. package/dist/cjs/react/web/ui/ConnectWallet/icons/GenericWalletIcon.js +0 -12
  103. package/dist/cjs/react/web/ui/ConnectWallet/icons/GenericWalletIcon.js.map +0 -1
  104. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js +0 -34
  105. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js.map +0 -1
  106. package/dist/esm/react/web/ui/ConnectWallet/icons/GenericWalletIcon.js +0 -8
  107. package/dist/esm/react/web/ui/ConnectWallet/icons/GenericWalletIcon.js.map +0 -1
  108. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js +0 -31
  109. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js.map +0 -1
  110. package/dist/types/react/web/ui/ConnectWallet/icons/GenericWalletIcon.d.ts +0 -6
  111. package/dist/types/react/web/ui/ConnectWallet/icons/GenericWalletIcon.d.ts.map +0 -1
  112. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.d.ts +0 -14
  113. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.d.ts.map +0 -1
  114. package/src/extensions/prebuilts/deploy-split.test.ts +0 -31
  115. package/src/extensions/split/read/getAllRecipientsAddresses.test.ts +0 -41
  116. package/src/extensions/split/read/getAllRecipientsPercentages.test.ts +0 -50
  117. package/src/extensions/split/read/getRecipientSplitPercentage.test.ts +0 -49
  118. package/src/react/web/ui/ConnectWallet/icons/GenericWalletIcon.tsx +0 -22
  119. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.tsx +0 -83
@@ -1,50 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { ANVIL_CHAIN } from "~test/chains.js";
3
- import { TEST_CONTRACT_URI } from "~test/ipfs-uris.js";
4
- import { TEST_CLIENT } from "~test/test-clients.js";
5
- import { TEST_ACCOUNT_C } from "~test/test-wallets.js";
6
- import { getContract } from "../../../contract/contract.js";
7
- import { deploySplitContract } from "../../../extensions/prebuilts/deploy-split.js";
8
- import { getAllRecipientsPercentages } from "./getAllRecipientsPercentages.js";
9
-
10
- const chain = ANVIL_CHAIN;
11
- const client = TEST_CLIENT;
12
-
13
- describe.runIf(process.env.TW_SECRET_KEY)("getAllRecipientsPercentages", () => {
14
- it("should work", async () => {
15
- const payees = [
16
- "0x12345674b599ce99958242b3D3741e7b01841DF3",
17
- "0xA6f11e47dE28B3dB934e945daeb6F538E9019694",
18
- ];
19
- const address = await deploySplitContract({
20
- account: TEST_ACCOUNT_C,
21
- client: TEST_CLIENT,
22
- chain: ANVIL_CHAIN,
23
- params: {
24
- name: "split-contract",
25
- contractURI: TEST_CONTRACT_URI, // just to speed up the test
26
- payees,
27
- shares: [
28
- 5100n, // 51%
29
- 4900n, // 49%
30
- ],
31
- },
32
- });
33
- const contract = getContract({
34
- address,
35
- chain,
36
- client,
37
- });
38
- const result = await getAllRecipientsPercentages({ contract });
39
- expect(result).toStrictEqual([
40
- {
41
- address: "0x12345674b599ce99958242b3D3741e7b01841DF3",
42
- splitPercentage: 51,
43
- },
44
- {
45
- address: "0xA6f11e47dE28B3dB934e945daeb6F538E9019694",
46
- splitPercentage: 49,
47
- },
48
- ]);
49
- });
50
- });
@@ -1,49 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { ANVIL_CHAIN } from "~test/chains.js";
3
- import { TEST_CONTRACT_URI } from "~test/ipfs-uris.js";
4
- import { TEST_CLIENT } from "~test/test-clients.js";
5
- import { TEST_ACCOUNT_C } from "~test/test-wallets.js";
6
- import { getContract } from "../../../contract/contract.js";
7
- import { deploySplitContract } from "../../../extensions/prebuilts/deploy-split.js";
8
- import { getRecipientSplitPercentage } from "./getRecipientSplitPercentage.js";
9
-
10
- const chain = ANVIL_CHAIN;
11
- const client = TEST_CLIENT;
12
- const account = TEST_ACCOUNT_C;
13
-
14
- describe.runIf(process.env.TW_SECRET_KEY)("getRecipientSplitPercentage", () => {
15
- it("should work", async () => {
16
- const payees = [
17
- "0x12345674b599ce99958242b3D3741e7b01841DF3",
18
- "0xA6f11e47dE28B3dB934e945daeb6F538E9019694",
19
- ];
20
- const address = await deploySplitContract({
21
- account,
22
- client: TEST_CLIENT,
23
- chain: ANVIL_CHAIN,
24
- params: {
25
- name: "split-contract",
26
- contractURI: TEST_CONTRACT_URI, // just to speed up the test
27
- payees,
28
- shares: [
29
- 5100n, // 51%
30
- 4900n, // 49%
31
- ],
32
- },
33
- });
34
- const contract = getContract({
35
- address,
36
- chain,
37
- client,
38
- });
39
- const result = await getRecipientSplitPercentage({
40
- contract,
41
- recipientAddress: "0x12345674b599ce99958242b3D3741e7b01841DF3",
42
- });
43
-
44
- expect(result).toStrictEqual({
45
- address: "0x12345674b599ce99958242b3D3741e7b01841DF3",
46
- splitPercentage: 51,
47
- });
48
- });
49
- });
@@ -1,22 +0,0 @@
1
- import type { IconFC } from "./types.js";
2
-
3
- /**
4
- * @internal
5
- */
6
- export const GenericWalletIcon: IconFC = (props) => {
7
- return (
8
- <svg
9
- xmlns="http://www.w3.org/2000/svg"
10
- fill="none"
11
- viewBox="0 0 18 18"
12
- width={props.size}
13
- height={props.size}
14
- role="presentation"
15
- >
16
- <path
17
- fill="currentColor"
18
- d="M15.6 4.6H1.85v-.55l12.1-.968v.968h1.65V2.4c0-1.21-.98-2.059-2.177-1.888L2.378 2.089C1.18 2.26.2 3.39.2 4.6v11a2.2 2.2 0 002.2 2.2h13.2a2.2 2.2 0 002.2-2.2V6.8a2.2 2.2 0 00-2.2-2.2zm-1.65 7.707a1.65 1.65 0 01-.63-3.176 1.65 1.65 0 11.63 3.176z"
19
- />
20
- </svg>
21
- );
22
- };
@@ -1,83 +0,0 @@
1
- import { PlusIcon } from "@radix-ui/react-icons";
2
- import type { ThirdwebClient } from "../../../../../../../client/client.js";
3
- import type { Wallet } from "../../../../../../../wallets/interfaces/wallet.js";
4
- import type { WalletId } from "../../../../../../../wallets/wallet-types.js";
5
- import { useCustomTheme } from "../../../../../../core/design-system/CustomThemeProvider.js";
6
- import {
7
- iconSize,
8
- radius,
9
- spacing,
10
- } from "../../../../../../core/design-system/index.js";
11
- import { useConnectedWallets } from "../../../../../../core/hooks/wallets/useConnectedWallets.js";
12
- import { Spacer } from "../../../../components/Spacer.js";
13
- import { Container } from "../../../../components/basic.js";
14
- import { Button } from "../../../../components/buttons.js";
15
- import { Text } from "../../../../components/text.js";
16
- import { WalletSelectorButton } from "../WalletSelectorButton.js";
17
-
18
- export function WalletSwitcherDrawerContent(props: {
19
- client: ThirdwebClient;
20
- showAllWallets: boolean;
21
- wallets: Wallet[] | undefined;
22
- onSelect: (wallet: Wallet) => void;
23
- onBack: () => void;
24
- onConnect: () => void;
25
- selectedAddress: string;
26
- hiddenWallets?: WalletId[];
27
- }) {
28
- const theme = useCustomTheme();
29
- const connectedWallets = useConnectedWallets();
30
-
31
- // if all wallets are connected and showAll wallets is disabled, hide the connect button
32
- const hideConnectButton =
33
- !props.showAllWallets &&
34
- props.wallets?.every((w) => connectedWallets.includes(w));
35
-
36
- return (
37
- <Container>
38
- <Container flex="column" gap="xs">
39
- {connectedWallets
40
- .filter((w) => !props.hiddenWallets?.includes(w.id))
41
- .map((w) => {
42
- const address = w.getAccount()?.address;
43
- return (
44
- <WalletSelectorButton
45
- key={w.id}
46
- walletId={w.id}
47
- client={props.client}
48
- address={address || ""}
49
- onClick={() => {
50
- props.onSelect(w);
51
- props.onBack();
52
- }}
53
- disableChevron
54
- checked={false}
55
- />
56
- );
57
- })}
58
- {!hideConnectButton && (
59
- <Button
60
- variant="secondary"
61
- fullWidth
62
- onClick={props.onConnect}
63
- gap="xs"
64
- bg="tertiaryBg"
65
- style={{
66
- borderRadius: radius.lg,
67
- border: `1px solid ${theme.colors.borderColor}`,
68
- padding: spacing.sm,
69
- }}
70
- >
71
- <Container flex="row" gap="sm" center="y" expand>
72
- <PlusIcon width={iconSize.md} height={iconSize.md} />
73
- <Text size="sm" color="primaryText">
74
- Add Another Wallet
75
- </Text>
76
- </Container>
77
- </Button>
78
- )}
79
- </Container>
80
- <Spacer y="sm" />
81
- </Container>
82
- );
83
- }