Skip to content

Commit 82e17ec

Browse files
committed
Add any evm support
1 parent 9b30961 commit 82e17ec

File tree

7 files changed

+66
-73
lines changed

7 files changed

+66
-73
lines changed

package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,9 @@
4949
"@chakra-ui/react": "^2.1.0",
5050
"@emotion/react": "^11",
5151
"@emotion/styled": "^11",
52-
"@thirdweb-dev/react": "^3.8.0-dev-8d8b6a1",
53-
"@thirdweb-dev/sdk": "^3.8.0-dev-8d8b6a1",
54-
"@thirdweb-dev/storage": "^1.0.7-nightly-f295ec6",
52+
"@thirdweb-dev/react": "^3.9.2",
53+
"@thirdweb-dev/sdk": "^3.9.2",
54+
"@thirdweb-dev/storage": "^1.0.10",
5555
"color": "^4.2.3",
5656
"ethers": "^5.7.0",
5757
"flat": "^5.0.2",

src/embeds/erc1155.tsx

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -74,19 +74,18 @@ const Erc1155Embed: React.FC<Erc1155EmbedProps> = ({
7474
const urlParams = new URL(window.location.toString()).searchParams;
7575

7676
const App: React.FC = () => {
77-
const chainId = Number(urlParams.get("chainId"));
77+
const chain = JSON.parse(urlParams.get("chain") || "");
7878
const contractAddress = urlParams.get("contract") || "";
79-
const rpcUrl = urlParams.get("rpcUrl") || "";
8079
const tokenId = urlParams.get("tokenId") || "0";
8180
const relayerUrl = urlParams.get("relayUrl") || "";
8281
const biconomyApiKey = urlParams.get("biconomyApiKey") || "";
8382
const biconomyApiId = urlParams.get("biconomyApiId") || "";
8483

85-
const ipfsGateway = parseIpfsGateway(urlParams.get("ipfsGateway") || "");
86-
8784
const colorScheme = urlParams.get("theme") === "dark" ? "dark" : "light";
8885
const primaryColor = urlParams.get("primaryColor") || "purple";
8986

87+
const ipfsGateway = parseIpfsGateway(urlParams.get("ipfsGateway") || "");
88+
9089
const sdkOptions = useGasless(relayerUrl, biconomyApiKey, biconomyApiId);
9190

9291
return (
@@ -101,7 +100,7 @@ const App: React.FC = () => {
101100
/>
102101
<ChakraProvider theme={chakraTheme}>
103102
<ThirdwebProvider
104-
desiredChainId={chainId}
103+
activeChain={chain}
105104
sdkOptions={sdkOptions}
106105
storageInterface={
107106
ipfsGateway
@@ -112,7 +111,6 @@ const App: React.FC = () => {
112111
})
113112
: undefined
114113
}
115-
chainRpc={rpcUrl ? { [chainId]: rpcUrl } : undefined}
116114
>
117115
<Erc1155Embed
118116
contractAddress={contractAddress}

src/embeds/erc20.tsx

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -69,17 +69,17 @@ const Erc20Embed: React.FC<Erc20EmbedProps> = ({
6969
const urlParams = new URL(window.location.toString()).searchParams;
7070

7171
const App: React.FC = () => {
72-
const chainId = Number(urlParams.get("chainId"));
72+
const chain = JSON.parse(urlParams.get("chain") || "");
7373
const contractAddress = urlParams.get("contract") || "";
74-
const rpcUrl = urlParams.get("rpcUrl") || "";
7574
const relayerUrl = urlParams.get("relayUrl") || "";
7675
const biconomyApiKey = urlParams.get("biconomyApiKey") || "";
7776
const biconomyApiId = urlParams.get("biconomyApiId") || "";
7877

79-
const ipfsGateway = parseIpfsGateway(urlParams.get("ipfsGateway") || "");
8078
const colorScheme = urlParams.get("theme") === "dark" ? "dark" : "light";
8179
const primaryColor = urlParams.get("primaryColor") || "purple";
8280

81+
const ipfsGateway = parseIpfsGateway(urlParams.get("ipfsGateway") || "");
82+
8383
const sdkOptions = useGasless(relayerUrl, biconomyApiKey, biconomyApiId);
8484

8585
return (
@@ -94,7 +94,7 @@ const App: React.FC = () => {
9494
/>
9595
<ChakraProvider theme={chakraTheme}>
9696
<ThirdwebProvider
97-
desiredChainId={chainId}
97+
activeChain={chain}
9898
sdkOptions={sdkOptions}
9999
storageInterface={
100100
ipfsGateway
@@ -105,7 +105,6 @@ const App: React.FC = () => {
105105
})
106106
: undefined
107107
}
108-
chainRpc={rpcUrl ? { [chainId]: rpcUrl } : undefined}
109108
>
110109
<Erc20Embed
111110
contractAddress={contractAddress}

src/embeds/erc721.tsx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,8 @@ const Erc721Embed: React.FC<Erc721EmbedProps> = ({
7070
const urlParams = new URL(window.location.toString()).searchParams;
7171

7272
const App: React.FC = () => {
73-
const chainId = Number(urlParams.get("chainId"));
73+
const chain = JSON.parse(urlParams.get("chain") || "");
7474
const contractAddress = urlParams.get("contract") || "";
75-
const rpcUrl = urlParams.get("rpcUrl") || "";
7675
const relayerUrl = urlParams.get("relayUrl") || "";
7776
const biconomyApiKey = urlParams.get("biconomyApiKey") || "";
7877
const biconomyApiId = urlParams.get("biconomyApiId") || "";
@@ -96,7 +95,7 @@ const App: React.FC = () => {
9695
/>
9796
<ChakraProvider theme={chakraTheme}>
9897
<ThirdwebProvider
99-
desiredChainId={chainId}
98+
activeChain={chain}
10099
sdkOptions={sdkOptions}
101100
storageInterface={
102101
ipfsGateway
@@ -107,7 +106,6 @@ const App: React.FC = () => {
107106
})
108107
: undefined
109108
}
110-
chainRpc={rpcUrl ? { [chainId]: rpcUrl } : undefined}
111109
>
112110
<Erc721Embed
113111
contractAddress={contractAddress}

src/embeds/marketplace-v3.tsx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -673,9 +673,8 @@ const MarketplaceV3Embed: React.FC<MarketplaceV3EmbedProps> = ({
673673
const urlParams = new URL(window.location.toString()).searchParams;
674674

675675
const App: React.FC = () => {
676-
const chainId = Number(urlParams.get("chainId"));
676+
const chain = JSON.parse(urlParams.get("chain") || "");
677677
const contractAddress = urlParams.get("contract") || "";
678-
const rpcUrl = urlParams.get("rpcUrl") || "";
679678
const directListingId = urlParams.get("directListingId") || "";
680679
const englishAuctionId = urlParams.get("englishAuctionId") || "";
681680
const relayerUrl = urlParams.get("relayUrl") || "";
@@ -703,7 +702,7 @@ const App: React.FC = () => {
703702
/>
704703
<ChakraProvider theme={chakraTheme}>
705704
<ThirdwebProvider
706-
desiredChainId={chainId}
705+
activeChain={chain}
707706
sdkOptions={sdkOptions}
708707
storageInterface={
709708
ipfsGateway
@@ -714,7 +713,6 @@ const App: React.FC = () => {
714713
})
715714
: undefined
716715
}
717-
chainRpc={rpcUrl ? { [chainId]: rpcUrl } : undefined}
718716
>
719717
<MarketplaceV3Embed
720718
contractAddress={contractAddress}

src/embeds/marketplace.tsx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -648,9 +648,8 @@ const MarketplaceEmbed: React.FC<MarketplaceEmbedProps> = ({
648648
const urlParams = new URL(window.location.toString()).searchParams;
649649

650650
const App: React.FC = () => {
651-
const chainId = Number(urlParams.get("chainId"));
651+
const chain = JSON.parse(urlParams.get("chain") || "");
652652
const contractAddress = urlParams.get("contract") || "";
653-
const rpcUrl = urlParams.get("rpcUrl") || "";
654653
const listingId = urlParams.get("listingId") || "";
655654
const relayerUrl = urlParams.get("relayUrl") || "";
656655
const biconomyApiKey = urlParams.get("biconomyApiKey") || "";
@@ -675,7 +674,7 @@ const App: React.FC = () => {
675674
/>
676675
<ChakraProvider theme={chakraTheme}>
677676
<ThirdwebProvider
678-
desiredChainId={chainId}
677+
activeChain={chain}
679678
sdkOptions={sdkOptions}
680679
storageInterface={
681680
ipfsGateway
@@ -686,7 +685,6 @@ const App: React.FC = () => {
686685
})
687686
: undefined
688687
}
689-
chainRpc={rpcUrl ? { [chainId]: rpcUrl } : undefined}
690688
>
691689
<MarketplaceEmbed
692690
contractAddress={contractAddress}

yarn.lock

Lines changed: 49 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -2610,40 +2610,46 @@
26102610
"@types/use-sync-external-store" "^0.0.3"
26112611
use-sync-external-store "^1.2.0"
26122612

2613-
"@thirdweb-dev/auth@*":
2614-
version "3.0.3"
2615-
resolved "https://registry.yarnpkg.com/@thirdweb-dev/auth/-/auth-3.0.3.tgz#60fd9e20629cdadd0ec6365d95de61a0f715c18c"
2616-
integrity sha512-zTZjOzo6O0kpahzY5ves2q3p53MhenxG0bKgig9iMdQ3XmtKR08unLHgtMPHjgJ1DIsIvyJOKqDn2Nhom+QvKw==
2613+
"@thirdweb-dev/auth@^3.0.6":
2614+
version "3.0.6"
2615+
resolved "https://registry.yarnpkg.com/@thirdweb-dev/auth/-/auth-3.0.6.tgz#c589d68642003c83ee62f33d084c1fb8bc6ffc3d"
2616+
integrity sha512-NMyNK3895smtSxef2GTlpjR0LEZrhKyu3fsgEUhqDsai4rqdbTB8h2GAMNlRLOmnJkmJaRsOjie4JDsNGvQVnw==
26172617
dependencies:
26182618
cookie "^0.5.0"
26192619
uuid "^9.0.0"
26202620
zod "^3.20.2"
26212621

2622-
"@thirdweb-dev/[email protected]":
2623-
version "1.3.0-dev-8d8b6a1"
2624-
resolved "https://registry.yarnpkg.com/@thirdweb-dev/contracts-js/-/contracts-js-1.3.0-dev-8d8b6a1.tgz#b754b0a4002ba727605faec67f5b6adf7a32fde0"
2625-
integrity sha512-m0C8Ef2S/B480epHJo7nARgZIj3smAIi245B2FOIbVpenyXwes2ZUtLs/uy3XjG6rEiWnv+NDG1BLm2hfGqGGA==
2622+
"@thirdweb-dev/chains@^0.1.2":
2623+
version "0.1.2"
2624+
resolved "https://registry.yarnpkg.com/@thirdweb-dev/chains/-/chains-0.1.2.tgz#af256c5a302e3475828f886022fa88e5952b2cf4"
2625+
integrity sha512-eQvfXld/AzIsbvTy5jU001pR1d1SpmlQnHLkWV9mlLPGOLdajPZ9Zoatfs0eI2oMvtoKWTJkschLh170xraP/w==
2626+
2627+
"@thirdweb-dev/contracts-js@^1.3.1":
2628+
version "1.3.1"
2629+
resolved "https://registry.yarnpkg.com/@thirdweb-dev/contracts-js/-/contracts-js-1.3.1.tgz#e1e6a0d0c33fc2a7b87caaf556211238d028e326"
2630+
integrity sha512-iUEEBUN6wfhhiuVtFLNmMYXFGbJGXGOH45lGdbnn6Bsd3/4o/oBupbyciWixcUCzm9pbXhQWqwuMl/UtRhcmwQ==
26262631
dependencies:
2627-
"@thirdweb-dev/contracts" "3.3.3-0"
2632+
"@thirdweb-dev/contracts" "3.4.1"
26282633

2629-
"@thirdweb-dev/contracts@3.3.3-0":
2630-
version "3.3.3-0"
2631-
resolved "https://registry.yarnpkg.com/@thirdweb-dev/contracts/-/contracts-3.3.3-0.tgz#c74f65e22378ca420ff6fe1527e0e8ff4f067bb2"
2632-
integrity sha512-vKA0a728JPH51la8wfaTpOzhCCOV9H9a4Snab3dAfCq4tFuG4PD/CK5ffPuEt3TYFf0/snQp8lrSdHNBAnLHoQ==
2634+
"@thirdweb-dev/contracts@3.4.1":
2635+
version "3.4.1"
2636+
resolved "https://registry.yarnpkg.com/@thirdweb-dev/contracts/-/contracts-3.4.1.tgz#e5a63e705b2f2014fe3fabf3e30209e3c5034348"
2637+
integrity sha512-BURfuFYZhJOmoycDwo8iaKUi+rdjt9vRGFd0vquqNjL2vQdI7dXqdbuJuOepIwGld5gvRNM+WlnVQ8EZgQIjqg==
26332638

2634-
"@thirdweb-dev/react-core@3.8.0-dev-8d8b6a1":
2635-
version "3.8.0-dev-8d8b6a1"
2636-
resolved "https://registry.yarnpkg.com/@thirdweb-dev/react-core/-/react-core-3.8.0-dev-8d8b6a1.tgz#bcd86d3f4c69f6573b36338b4c58c4fdbd507c98"
2637-
integrity sha512-BlZ0kd3BGSZpnye8jEesY0h9nFFrfi4iopCUU2wCQ4En+0fsffGcxNV8VNyPxBNhTRIk+vISqzYRYpMGKAvl0Q==
2639+
"@thirdweb-dev/react-core@^3.9.2":
2640+
version "3.9.2"
2641+
resolved "https://registry.yarnpkg.com/@thirdweb-dev/react-core/-/react-core-3.9.2.tgz#696a3ba4d505f67890650d39126cf3dc2032fd26"
2642+
integrity sha512-A3Z9Wj8ZIFvJWCQ8jCmHDWq1agb5P1clFCSkoTk8JsShYsLuIhd3L9fd5aLIgqITQQCSN7UuNd0qii4/PKNceA==
26382643
dependencies:
26392644
"@tanstack/react-query" "^4.0.10"
2640-
"@thirdweb-dev/auth" "*"
2645+
"@thirdweb-dev/auth" "^3.0.6"
2646+
"@thirdweb-dev/chains" "^0.1.2"
26412647
tiny-invariant "^1.2.0"
26422648

2643-
"@thirdweb-dev/react@^3.8.0-dev-8d8b6a1":
2644-
version "3.8.0-dev-8d8b6a1"
2645-
resolved "https://registry.yarnpkg.com/@thirdweb-dev/react/-/react-3.8.0-dev-8d8b6a1.tgz#8819f9119b6ee4b3fa4b71057a415d917e989aab"
2646-
integrity sha512-wi9UZlxSUujbU5brnOtwqBmx1n+8C1y1xMm8yBzTrFefnWDicAuRzDP/QjY324K0MbIJcVoVjCV9ZHAG5KiqQA==
2649+
"@thirdweb-dev/react@^3.9.2":
2650+
version "3.9.2"
2651+
resolved "https://registry.yarnpkg.com/@thirdweb-dev/react/-/react-3.9.2.tgz#0d22c60a3b7ec8974eb20b1a8de18cca89857e28"
2652+
integrity sha512-MMs5LXCJ24ukBHZG9M5WqkqFejUe9zZP67NPir+Y0BzNSvlc6JYcYUiwrsMZ+rFKVrJb7Lpqbnf3qh9c/NJr6A==
26472653
dependencies:
26482654
"@emotion/react" "^11.10.0"
26492655
"@emotion/styled" "^11.10.0"
@@ -2653,7 +2659,9 @@
26532659
"@safe-global/safe-ethers-adapters" "0.1.0-alpha.13"
26542660
"@safe-global/safe-ethers-lib" "^1.7.0"
26552661
"@tanstack/react-query" "^4.0.10"
2656-
"@thirdweb-dev/react-core" "3.8.0-dev-8d8b6a1"
2662+
"@thirdweb-dev/chains" "^0.1.2"
2663+
"@thirdweb-dev/react-core" "^3.9.2"
2664+
"@thirdweb-dev/wallets" "^0.2.3"
26572665
"@zag-js/menu" "0.3.4"
26582666
"@zag-js/react" "0.3.4"
26592667
buffer "^6.0.3"
@@ -2662,17 +2670,17 @@
26622670
detect-browser "^5.3.0"
26632671
magic-sdk "^10.1.0"
26642672
mime "^3.0.0"
2665-
react-cool-dimensions "^2.0.7"
26662673
tiny-invariant "^1.2.0"
26672674
wagmi "^0.2.28"
26682675

2669-
"@thirdweb-dev/sdk@^3.8.0-dev-8d8b6a1":
2670-
version "3.8.0-dev-8d8b6a1"
2671-
resolved "https://registry.yarnpkg.com/@thirdweb-dev/sdk/-/sdk-3.8.0-dev-8d8b6a1.tgz#658a0af8b96f2d3b0063986cfad099c9de97ef6d"
2672-
integrity sha512-MNXyn33pM0blWUjmtxtx21XeCgqm+OBSw4vdDLpx9dL3HNBDUY32WSjBqG9S1te0hveyiQnby1/8i28JzAJkMg==
2676+
"@thirdweb-dev/sdk@^3.9.2":
2677+
version "3.9.2"
2678+
resolved "https://registry.yarnpkg.com/@thirdweb-dev/sdk/-/sdk-3.9.2.tgz#b0dc38cc742f00f657cd02edda2e936db35c45a1"
2679+
integrity sha512-pqLrf4fJ5Ohr7svovRGpIsiWxHzsay3RiVOXVgpsHqeFiSLINtMjwZMwi0VqqF+xhp607LBobvc3cJJonM6UrA==
26732680
dependencies:
2674-
"@thirdweb-dev/contracts-js" "1.3.0-dev-8d8b6a1"
2675-
"@thirdweb-dev/storage" "1.0.7-dev-8d8b6a1"
2681+
"@thirdweb-dev/chains" "^0.1.2"
2682+
"@thirdweb-dev/contracts-js" "^1.3.1"
2683+
"@thirdweb-dev/storage" "^1.0.10"
26762684
bn.js "^5.2.1"
26772685
bs58 "^5.0.0"
26782686
cross-fetch "^3.1.5"
@@ -2685,23 +2693,22 @@
26852693
yaml "^2.1.1"
26862694
zod "^3.11.6"
26872695

2688-
"@thirdweb-dev/[email protected].7-dev-8d8b6a1":
2689-
version "1.0.7-dev-8d8b6a1"
2690-
resolved "https://registry.yarnpkg.com/@thirdweb-dev/storage/-/storage-1.0.7-dev-8d8b6a1.tgz#8085441cd3350dc43fc2373013f277346a0eaff5"
2691-
integrity sha512-aUP3+gjfXk+SdxAM/ko3otD1jqLW/pZ0nGgQR3YzpW+A9oSHj2iVMfuPVNDDc/c8Fc5NgbUlOtnkdN8UjUrc+Q==
2696+
"@thirdweb-dev/storage@^1.0.10":
2697+
version "1.0.10"
2698+
resolved "https://registry.yarnpkg.com/@thirdweb-dev/storage/-/storage-1.0.10.tgz#e6ed7618d577307d5d1585f06828fa6effceea88"
2699+
integrity sha512-emTFan8ujs4pTkLFchQyV8ktUXzo6f+8y3xuCLdggHyW0bOF+v7mSt0p5fScUf/5sf5+zukRCHyjOh6MSCuMkA==
26922700
dependencies:
26932701
cross-fetch "^3.1.5"
26942702
form-data "^4.0.0"
26952703
uuid "^9.0.0"
26962704

2697-
"@thirdweb-dev/storage@^1.0.7-nightly-f295ec6":
2698-
version "1.0.7-nightly-f295ec6"
2699-
resolved "https://registry.yarnpkg.com/@thirdweb-dev/storage/-/storage-1.0.7-nightly-f295ec6.tgz#435e4941c5d41774cc222f9191cb56433f364bbe"
2700-
integrity sha512-iKKrqhRbEggbTPU2be3/N07TtsQOebb19jkDV/GYv+P1z26RlKEdvObl0YJ9rUurpXvnY4emxjZy3P6YFE2uYA==
2705+
"@thirdweb-dev/wallets@^0.2.3":
2706+
version "0.2.3"
2707+
resolved "https://registry.yarnpkg.com/@thirdweb-dev/wallets/-/wallets-0.2.3.tgz#3d39910c319ad57fe54574cb4aba459cbd4e0366"
2708+
integrity sha512-8jkMvmqYqKymABOLyh4V9MXboot5YLLXVmfYC1gQX33fkJPMyupqI1KrVFEAfvuSBLMlH/mVRywzaNlP0soSHw==
27012709
dependencies:
2702-
cross-fetch "^3.1.5"
2703-
form-data "^4.0.0"
2704-
uuid "^9.0.0"
2710+
eventemitter3 "^5.0.0"
2711+
localforage "^1.10.0"
27052712

27062713
"@trysound/[email protected]":
27072714
version "0.2.0"
@@ -6086,7 +6093,7 @@ [email protected]:
60866093
"@lmdb/lmdb-linux-x64" "2.5.2"
60876094
"@lmdb/lmdb-win32-x64" "2.5.2"
60886095

6089-
localforage@^1.7.4:
6096+
localforage@^1.10.0, localforage@^1.7.4:
60906097
version "1.10.0"
60916098
resolved "https://registry.yarnpkg.com/localforage/-/localforage-1.10.0.tgz#5c465dc5f62b2807c3a84c0c6a1b1b3212781dd4"
60926099
integrity sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg==
@@ -6870,11 +6877,6 @@ react-clientside-effect@^1.2.6:
68706877
dependencies:
68716878
"@babel/runtime" "^7.12.13"
68726879

6873-
react-cool-dimensions@^2.0.7:
6874-
version "2.0.7"
6875-
resolved "https://registry.yarnpkg.com/react-cool-dimensions/-/react-cool-dimensions-2.0.7.tgz#2fe6657608f034cd7c89f149ed14e79cf1cb2d50"
6876-
integrity sha512-z1VwkAAJ5d8QybDRuYIXTE41RxGr5GYsv1bQhbOBE8cMfoZQZpcF0odL64vdgrQVzat2jayedj1GoYi80FWcbA==
6877-
68786880
react-dom@^18.1.0:
68796881
version "18.2.0"
68806882
resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.2.0.tgz#22aaf38708db2674ed9ada224ca4aa708d821e3d"

0 commit comments

Comments
 (0)